@reffuse/extension-query 0.1.5 #16

Merged
Thilawyn merged 347 commits from next into master 2025-06-01 05:28:47 +02:00
7 changed files with 20 additions and 20 deletions
Showing only changes of commit a5c6b34dfe - Show all commits

View File

@@ -1,5 +1,5 @@
import { AlertDialog, Button, Flex, Text } from "@radix-ui/themes" import { AlertDialog, Button, Flex, Text } from "@radix-ui/themes"
import { ErrorHandler } from "@reffuse/extension-query" import { QueryErrorHandler } from "@reffuse/extension-query"
import { Cause, Console, Context, Effect, Either, flow, Match, Option, Stream } from "effect" import { Cause, Console, Context, Effect, Either, flow, Match, Option, Stream } from "effect"
import { useState } from "react" import { useState } from "react"
import { AppQueryErrorHandler } from "./query" import { AppQueryErrorHandler } from "./query"
@@ -8,7 +8,7 @@ import { R } from "./reffuse"
export function VQueryErrorHandler() { export function VQueryErrorHandler() {
const [failure, setFailure] = useState(Option.none<Cause.Cause< const [failure, setFailure] = useState(Option.none<Cause.Cause<
ErrorHandler.Error<Context.Tag.Service<AppQueryErrorHandler>> QueryErrorHandler.Error<Context.Tag.Service<AppQueryErrorHandler>>
>>()) >>())
R.useFork(() => AppQueryErrorHandler.pipe(Effect.flatMap(handler => R.useFork(() => AppQueryErrorHandler.pipe(Effect.flatMap(handler =>

View File

@@ -6,17 +6,17 @@ import { StrictMode } from "react"
import { createRoot } from "react-dom/client" import { createRoot } from "react-dom/client"
import { ReffuseRuntime } from "reffuse" import { ReffuseRuntime } from "reffuse"
import { AppQueryClient, AppQueryErrorHandler } from "./query" import { AppQueryClient, AppQueryErrorHandler } from "./query"
import { GlobalContext } from "./reffuse" import { RootContext } from "./reffuse"
import { routeTree } from "./routeTree.gen" import { routeTree } from "./routeTree.gen"
const layer = Layer.empty.pipe( const layer = Layer.empty.pipe(
Layer.provideMerge(AppQueryClient.Live),
Layer.provideMerge(AppQueryErrorHandler.Live),
Layer.provideMerge(Clipboard.layer), Layer.provideMerge(Clipboard.layer),
Layer.provideMerge(Geolocation.layer), Layer.provideMerge(Geolocation.layer),
Layer.provideMerge(Permissions.layer), Layer.provideMerge(Permissions.layer),
Layer.provideMerge(FetchHttpClient.layer), Layer.provideMerge(FetchHttpClient.layer),
Layer.provideMerge(AppQueryClient.Live),
Layer.provideMerge(AppQueryErrorHandler.Live),
) )
const router = createRouter({ routeTree }) const router = createRouter({ routeTree })
@@ -31,9 +31,9 @@ declare module "@tanstack/react-router" {
createRoot(document.getElementById("root")!).render( createRoot(document.getElementById("root")!).render(
<StrictMode> <StrictMode>
<ReffuseRuntime.Provider> <ReffuseRuntime.Provider>
<GlobalContext.Provider layer={layer}> <RootContext.Provider layer={layer}>
<RouterProvider router={router} /> <RouterProvider router={router} />
</GlobalContext.Provider> </RootContext.Provider>
</ReffuseRuntime.Provider> </ReffuseRuntime.Provider>
</StrictMode> </StrictMode>
) )

View File

@@ -1,9 +1,9 @@
import { HttpClientError } from "@effect/platform" import { HttpClientError } from "@effect/platform"
import { ErrorHandler, QueryClient } from "@reffuse/extension-query" import { QueryClient, QueryErrorHandler } from "@reffuse/extension-query"
import { Effect } from "effect" import { Effect } from "effect"
export class AppQueryErrorHandler extends ErrorHandler.Service<AppQueryErrorHandler, export class AppQueryErrorHandler extends QueryErrorHandler.Service<AppQueryErrorHandler,
HttpClientError.HttpClientError HttpClientError.HttpClientError
>()( >()(
"AppQueryErrorHandler", "AppQueryErrorHandler",

View File

@@ -1,10 +1,10 @@
import { GlobalReffuse } from "@/reffuse" import { RootReffuse } from "@/reffuse"
import { Reffuse, ReffuseContext } from "reffuse" import { Reffuse, ReffuseContext } from "reffuse"
import { Uuid4Query } from "./services" import { Uuid4Query } from "./services"
export const QueryContext = ReffuseContext.make<Uuid4Query.Uuid4Query>() export const QueryContext = ReffuseContext.make<Uuid4Query.Uuid4Query>()
export const R = new class QueryReffuse extends GlobalReffuse.pipe( export const R = new class QueryReffuse extends RootReffuse.pipe(
Reffuse.withContexts(QueryContext) Reffuse.withContexts(QueryContext)
) {} ) {}

View File

@@ -6,19 +6,19 @@ import { Reffuse, ReffuseContext } from "reffuse"
import { AppQueryClient, AppQueryErrorHandler } from "./query" import { AppQueryClient, AppQueryErrorHandler } from "./query"
export const GlobalContext = ReffuseContext.make< export const RootContext = ReffuseContext.make<
| AppQueryClient
| AppQueryErrorHandler
| Clipboard.Clipboard | Clipboard.Clipboard
| Geolocation.Geolocation | Geolocation.Geolocation
| Permissions.Permissions | Permissions.Permissions
| HttpClient.HttpClient | HttpClient.HttpClient
| AppQueryClient
| AppQueryErrorHandler
>() >()
export class GlobalReffuse extends Reffuse.Reffuse.pipe( export class RootReffuse extends Reffuse.Reffuse.pipe(
Reffuse.withExtension(LazyRefExtension), Reffuse.withExtension(LazyRefExtension),
Reffuse.withExtension(QueryExtension), Reffuse.withExtension(QueryExtension),
Reffuse.withContexts(GlobalContext), Reffuse.withContexts(RootContext),
) {} ) {}
export const R = new GlobalReffuse() export const R = new RootReffuse()

View File

@@ -1,10 +1,10 @@
import { GlobalReffuse } from "@/reffuse" import { RootReffuse } from "@/reffuse"
import { Reffuse, ReffuseContext } from "reffuse" import { Reffuse, ReffuseContext } from "reffuse"
import { TodosState } from "./services" import { TodosState } from "./services"
export const TodosContext = ReffuseContext.make<TodosState.TodosState>() export const TodosContext = ReffuseContext.make<TodosState.TodosState>()
export const R = new class TodosReffuse extends GlobalReffuse.pipe( export const R = new class TodosReffuse extends RootReffuse.pipe(
Reffuse.withContexts(TodosContext) Reffuse.withContexts(TodosContext)
) {} ) {}

View File

@@ -29,7 +29,7 @@ export interface ServiceResult<Self, EH, FallbackA, HandledE> extends Context.Ta
QueryClient<FallbackA, HandledE> QueryClient<FallbackA, HandledE>
> { > {
readonly Live: Layer.Layer< readonly Live: Layer.Layer<
Self | EH extends QueryErrorHandler.DefaultQueryErrorHandler ? EH : never, Self | (EH extends QueryErrorHandler.DefaultQueryErrorHandler ? EH : never),
never, never,
EH extends QueryErrorHandler.DefaultQueryErrorHandler ? never : EH EH extends QueryErrorHandler.DefaultQueryErrorHandler ? never : EH
> >