@effect-app/vue 2.51.18 → 2.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @effect-app/vue
2
2
 
3
+ ## 2.52.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 6f64811: add experimental Command helper
8
+
3
9
  ## 2.51.18
4
10
 
5
11
  ### Patch Changes
@@ -0,0 +1,67 @@
1
+ import { type Runtime } from "effect-app";
2
+ import { type MakeIntlReturn } from "../makeIntl.js";
3
+ import { type UseToast } from "./useWithToast.js";
4
+ export declare const makeExperimental: <Locale extends string, R>(_useIntl: MakeIntlReturn<Locale>["useIntl"], _useToast: UseToast, runtime: Runtime.Runtime<R>) => {
5
+ useConfirm: () => {
6
+ confirm: (message?: string) => import("effect/Effect").Effect<boolean, never, never>;
7
+ confirmOrInterrupt: (message?: string) => import("effect/Effect").Effect<void, never, never>;
8
+ };
9
+ useCommand: () => {
10
+ confirmOrInterrupt: (message?: string | undefined) => import("effect/Effect").Effect<void, never, import("./useCommand.js").CommandContext>;
11
+ withDefaultToast: <A, E>(self: import("effect/Effect").Effect<A, E, import("./useCommand.js").CommandContext>, errorRenderer?: ((e: E) => string | undefined) | undefined) => import("effect/Effect").Effect<A, E, import("./useCommand.js").CommandContext>;
12
+ fn: (actionName: string) => {
13
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>, AEff, Args extends Array<any>>(body: (...args: Args) => Generator<Eff, AEff, never>): import("vue").ComputedRef<((...a: Args) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<AEff, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never>, never>) & {
14
+ action: string;
15
+ result: import("@effect-atom/atom/Result").Result<AEff, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never>;
16
+ waiting: boolean;
17
+ }>;
18
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_1, Args_1 extends Array<any>, A extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_1) => Generator<Eff, AEff_1, never>, a: (_: import("effect/Effect").Effect<AEff_1, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A): import("vue").ComputedRef<((...a: Args_1) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<A>, import("effect/Effect").Effect.Error<A>>, never>) & {
19
+ action: string;
20
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<A>, import("effect/Effect").Effect.Error<A>>;
21
+ waiting: boolean;
22
+ }>;
23
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_2, Args_2 extends Array<any>, A_1, B extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_2) => Generator<Eff, AEff_2, never>, a: (_: import("effect/Effect").Effect<AEff_2, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_1, b: (_: A_1) => B): import("vue").ComputedRef<((...a: Args_2) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<B>, import("effect/Effect").Effect.Error<B>>, never>) & {
24
+ action: string;
25
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<B>, import("effect/Effect").Effect.Error<B>>;
26
+ waiting: boolean;
27
+ }>;
28
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_3, Args_3 extends Array<any>, A_2, B_1, C extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_3) => Generator<Eff, AEff_3, never>, a: (_: import("effect/Effect").Effect<AEff_3, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_2, b: (_: A_2) => B_1, c: (_: B_1) => C): import("vue").ComputedRef<((...a: Args_3) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<C>, import("effect/Effect").Effect.Error<C>>, never>) & {
29
+ action: string;
30
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<C>, import("effect/Effect").Effect.Error<C>>;
31
+ waiting: boolean;
32
+ }>;
33
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_4, Args_4 extends Array<any>, A_3, B_2, C_1, D extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_4) => Generator<Eff, AEff_4, never>, a: (_: import("effect/Effect").Effect<AEff_4, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_3, b: (_: A_3) => B_2, c: (_: B_2) => C_1, d: (_: C_1) => D): import("vue").ComputedRef<((...a: Args_4) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<D>, import("effect/Effect").Effect.Error<D>>, never>) & {
34
+ action: string;
35
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<D>, import("effect/Effect").Effect.Error<D>>;
36
+ waiting: boolean;
37
+ }>;
38
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_5, Args_5 extends Array<any>, A_4, B_3, C_2, D_1, E_1 extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_5) => Generator<Eff, AEff_5, never>, a: (_: import("effect/Effect").Effect<AEff_5, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_2, infer _R>>] ? E_2 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_4, b: (_: A_4) => B_3, c: (_: B_3) => C_2, d: (_: C_2) => D_1, e: (_: D_1) => E_1): import("vue").ComputedRef<((...a: Args_5) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<E_1>, import("effect/Effect").Effect.Error<E_1>>, never>) & {
39
+ action: string;
40
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<E_1>, import("effect/Effect").Effect.Error<E_1>>;
41
+ waiting: boolean;
42
+ }>;
43
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_6, Args_6 extends Array<any>, A_5, B_4, C_3, D_2, E_2, F extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_6) => Generator<Eff, AEff_6, never>, a: (_: import("effect/Effect").Effect<AEff_6, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_3, infer _R>>] ? E_3 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_5, b: (_: A_5) => B_4, c: (_: B_4) => C_3, d: (_: C_3) => D_2, e: (_: D_2) => E_2, f: (_: E_2) => F): import("vue").ComputedRef<((...a: Args_6) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<F>, import("effect/Effect").Effect.Error<F>>, never>) & {
44
+ action: string;
45
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<F>, import("effect/Effect").Effect.Error<F>>;
46
+ waiting: boolean;
47
+ }>;
48
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_7, Args_7 extends Array<any>, A_6, B_5, C_4, D_3, E_3, F_1, G extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_7) => Generator<Eff, AEff_7, never>, a: (_: import("effect/Effect").Effect<AEff_7, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_4, infer _R>>] ? E_4 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_6, b: (_: A_6) => B_5, c: (_: B_5) => C_4, d: (_: C_4) => D_3, e: (_: D_3) => E_3, f: (_: E_3) => F_1, g: (_: F_1) => G): import("vue").ComputedRef<((...a: Args_7) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<G>, import("effect/Effect").Effect.Error<G>>, never>) & {
49
+ action: string;
50
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<G>, import("effect/Effect").Effect.Error<G>>;
51
+ waiting: boolean;
52
+ }>;
53
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_8, Args_8 extends Array<any>, A_7, B_6, C_5, D_4, E_4, F_2, G_1, H extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_8) => Generator<Eff, AEff_8, never>, a: (_: import("effect/Effect").Effect<AEff_8, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_5, infer _R>>] ? E_5 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_7, b: (_: A_7) => B_6, c: (_: B_6) => C_5, d: (_: C_5) => D_4, e: (_: D_4) => E_4, f: (_: E_4) => F_2, g: (_: F_2) => G_1, h: (_: G_1) => H): import("vue").ComputedRef<((...a: Args_8) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<H>, import("effect/Effect").Effect.Error<H>>, never>) & {
54
+ action: string;
55
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<H>, import("effect/Effect").Effect.Error<H>>;
56
+ waiting: boolean;
57
+ }>;
58
+ <Eff extends import("effect/Utils").YieldWrap<import("effect/Effect").Effect<any, any, any>>, AEff_9, Args_9 extends Array<any>, A_8, B_7, C_6, D_5, E_5, F_3, G_2, H_1, I extends import("effect/Effect").Effect<any, any, import("./useCommand.js").CommandContext | R>>(body: (...args: Args_9) => Generator<Eff, AEff_9, never>, a: (_: import("effect/Effect").Effect<AEff_9, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A, infer E_6, infer _R>>] ? E_6 : never, [Eff] extends [never] ? never : [Eff] extends [import("effect/Utils").YieldWrap<import("effect/Effect").Effect<infer _A_1, infer _E, infer R_1>>] ? R_1 : never>) => A_8, b: (_: A_8) => B_7, c: (_: B_7) => C_6, d: (_: C_6) => D_5, e: (_: D_5) => E_5, f: (_: E_5) => F_3, g: (_: F_3) => G_2, h: (_: G_2) => H_1, i: (_: H_1) => I): import("vue").ComputedRef<((...a: Args_9) => import("effect/Fiber").RuntimeFiber<import("effect/Exit").Exit<import("effect/Effect").Effect.Success<I>, import("effect/Effect").Effect.Error<I>>, never>) & {
59
+ action: string;
60
+ result: import("@effect-atom/atom/Result").Result<import("effect/Effect").Effect.Success<I>, import("effect/Effect").Effect.Error<I>>;
61
+ waiting: boolean;
62
+ }>;
63
+ };
64
+ };
65
+ useWithToast: () => <A_9, E_6, Args_10 extends ReadonlyArray<unknown>, R_1>(options: import("./useWithToast.js").ToastOptions<A_9, E_6, Args_10>) => (self: import("effect/Effect").Effect<A_9, E_6, R_1>, ...args: Args_10) => import("effect/Effect").Effect<A_9, E_6, R_1>;
66
+ };
67
+ //# sourceMappingURL=makeExperimental.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"makeExperimental.d.ts","sourceRoot":"","sources":["../../src/experimental/makeExperimental.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAGpD,OAAO,EAAoB,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEnE,eAAO,MAAM,gBAAgB,GAAI,MAAM,SAAS,MAAM,EAAE,CAAC,EAEvD,UAAU,cAAc,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EAC3C,WAAW,QAAQ,EACnB,SAAS,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAiB0D,GAAC,EAAC,GAAE,EAAC,sCAAoC,EAAC,GAAE,EAAE,oEAAsC;CAD1K,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { makeUseCommand } from "./useCommand.js";
2
+ import { makeUseConfirm } from "./useConfirm.js";
3
+ import { makeUseWithToast } from "./useWithToast.js";
4
+ export const makeExperimental = (
5
+ // NOTE: underscores to not collide with auto exports in nuxt apps
6
+ _useIntl, _useToast, runtime) => {
7
+ const _useConfirm = makeUseConfirm(_useIntl);
8
+ const _useWithToast = makeUseWithToast(_useToast);
9
+ const _useCommand = makeUseCommand(_useIntl, _useConfirm, _useWithToast, runtime);
10
+ return {
11
+ useConfirm: _useConfirm,
12
+ useCommand: _useCommand,
13
+ useWithToast: _useWithToast
14
+ };
15
+ };
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUV4cGVyaW1lbnRhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBlcmltZW50YWwvbWFrZUV4cGVyaW1lbnRhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBaUIsTUFBTSxtQkFBbUIsQ0FBQTtBQUVuRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztBQUM5QixrRUFBa0U7QUFDbEUsUUFBMkMsRUFDM0MsU0FBbUIsRUFDbkIsT0FBMkIsRUFDM0IsRUFBRTtJQUNGLE1BQU0sV0FBVyxHQUFHLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUM1QyxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUNqRCxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQ2hDLFFBQVEsRUFDUixXQUFXLEVBQ1gsYUFBYSxFQUNiLE9BQU8sQ0FDUixDQUFBO0lBRUQsT0FBTztRQUNMLFVBQVUsRUFBRSxXQUFXO1FBQ3ZCLFVBQVUsRUFBRSxXQUFXO1FBQ3ZCLFlBQVksRUFBRSxhQUFhO0tBQzVCLENBQUE7QUFDSCxDQUFDLENBQUEifQ==
@@ -0,0 +1,108 @@
1
+ import { type MakeIntlReturn } from "@effect-app/vue";
2
+ import { type Result } from "@effect-atom/atom/Result";
3
+ import { Context, Effect, type Exit, Runtime } from "effect-app";
4
+ import { type RuntimeFiber } from "effect/Fiber";
5
+ import { type YieldWrap } from "effect/Utils";
6
+ import { type ComputedRef } from "vue";
7
+ import { type makeUseConfirm } from "./useConfirm.js";
8
+ import { type makeUseWithToast } from "./useWithToast.js";
9
+ export declare const DefaultIntl: {
10
+ de: {
11
+ "handle.confirmation": string;
12
+ "handle.waiting": string;
13
+ "handle.success": string;
14
+ "handle.with_errors": string;
15
+ "handle.with_warnings": string;
16
+ "handle.error_response": string;
17
+ "handle.response_error": string;
18
+ "handle.request_error": string;
19
+ "handle.unexpected_error2": string;
20
+ };
21
+ en: {
22
+ "handle.confirmation": string;
23
+ "handle.waiting": string;
24
+ "handle.success": string;
25
+ "handle.with_errors": string;
26
+ "handle.with_warnings": string;
27
+ "handle.error_response": string;
28
+ "handle.request_error": string;
29
+ "handle.response_error": string;
30
+ "handle.unexpected_error2": string;
31
+ };
32
+ };
33
+ declare const CommandContext_base: Context.TagClass<CommandContext, "CommandContext", {
34
+ action: string;
35
+ }>;
36
+ export declare class CommandContext extends CommandContext_base {
37
+ }
38
+ export declare const makeUseCommand: <Locale extends string, RT>(_useIntl: MakeIntlReturn<Locale>["useIntl"], _useConfirm: ReturnType<typeof makeUseConfirm>, _useWithToast: ReturnType<typeof makeUseWithToast>, runtime: Runtime.Runtime<RT>) => () => {
39
+ /** Version of confirmOrInterrupt that automatically includes the action name in the default messages */
40
+ confirmOrInterrupt: (message?: string | undefined) => Effect.Effect<void, never, CommandContext>;
41
+ /** Version of withDefaultToast that automatically includes the action name in the default messages and uses intl */
42
+ withDefaultToast: <A_9, E>(self: Effect.Effect<A_9, E, CommandContext>, errorRenderer?: (e: E) => string | undefined) => Effect.Effect<A_9, E, CommandContext>;
43
+ /**
44
+ * Define a Command
45
+ * @param actionName The internal name of the action. will be used as Span. will be used to lookup user facing name via intl. `action.${actionName}`
46
+ * @returns A function that can be called to execute the mutation, like directly in a `@click` handler. Error reporting is built-in.
47
+ * the Effects **only** have access to the `CommandContext` service, which contains the user-facing action name.
48
+ * The function also has the following properties:
49
+ * - action: The user-facing name of the action, as defined in the intl messages. Can be used e.g as Button label.
50
+ * - result: The Result of the mutation
51
+ * - waiting: Whether the mutation is currently in progress. (shorthand for .result.waiting). Can be used e.g as Button loading/disabled state.
52
+ * Reporting status to the user is recommended to use the `withDefaultToast` helper, or render the .result inline
53
+ */
54
+ fn: (actionName: string) => {
55
+ <Eff extends YieldWrap<Effect.Effect<any, any, RT | CommandContext>>, AEff, Args extends Array<any>>(body: (...args: Args) => Generator<Eff, AEff, never>): ComputedRef<((...a: Args) => RuntimeFiber<Exit.Exit<AEff, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never>, never>) & {
56
+ action: string;
57
+ result: Result<AEff, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_1, infer _R>>] ? E_1 : never>;
58
+ waiting: boolean;
59
+ }>;
60
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_1, Args_1 extends Array<any>, A extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_1) => Generator<Eff, AEff_1, never>, a: (_: Effect.Effect<AEff_1, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_2, infer _R_1>>] ? E_2 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E, infer R>>] ? R : never>) => A): ComputedRef<((...a: Args_1) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<A>, Effect.Effect.Error<A>>, never>) & {
61
+ action: string;
62
+ result: Result<Effect.Effect.Success<A>, Effect.Effect.Error<A>>;
63
+ waiting: boolean;
64
+ }>;
65
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_2, Args_2 extends Array<any>, A_1, B extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_2) => Generator<Eff, AEff_2, never>, a: (_: Effect.Effect<AEff_2, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_3, infer _R_2>>] ? E_3 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_1, infer R_1>>] ? R_1 : never>) => A_1, b: (_: A_1) => B): ComputedRef<((...a: Args_2) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<B>, Effect.Effect.Error<B>>, never>) & {
66
+ action: string;
67
+ result: Result<Effect.Effect.Success<B>, Effect.Effect.Error<B>>;
68
+ waiting: boolean;
69
+ }>;
70
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_3, Args_3 extends Array<any>, A_2, B_1, C extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_3) => Generator<Eff, AEff_3, never>, a: (_: Effect.Effect<AEff_3, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_4, infer _R_3>>] ? E_4 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_2, infer R_2>>] ? R_2 : never>) => A_2, b: (_: A_2) => B_1, c: (_: B_1) => C): ComputedRef<((...a: Args_3) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<C>, Effect.Effect.Error<C>>, never>) & {
71
+ action: string;
72
+ result: Result<Effect.Effect.Success<C>, Effect.Effect.Error<C>>;
73
+ waiting: boolean;
74
+ }>;
75
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_4, Args_4 extends Array<any>, A_3, B_2, C_1, D extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_4) => Generator<Eff, AEff_4, never>, a: (_: Effect.Effect<AEff_4, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_5, infer _R_4>>] ? E_5 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_3, infer R_3>>] ? R_3 : never>) => A_3, b: (_: A_3) => B_2, c: (_: B_2) => C_1, d: (_: C_1) => D): ComputedRef<((...a: Args_4) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<D>, Effect.Effect.Error<D>>, never>) & {
76
+ action: string;
77
+ result: Result<Effect.Effect.Success<D>, Effect.Effect.Error<D>>;
78
+ waiting: boolean;
79
+ }>;
80
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_5, Args_5 extends Array<any>, A_4, B_3, C_2, D_1, E_6 extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_5) => Generator<Eff, AEff_5, never>, a: (_: Effect.Effect<AEff_5, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_7, infer _R_5>>] ? E_7 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_4, infer R_4>>] ? R_4 : never>) => A_4, b: (_: A_4) => B_3, c: (_: B_3) => C_2, d: (_: C_2) => D_1, e: (_: D_1) => E_6): ComputedRef<((...a: Args_5) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<E_6>, Effect.Effect.Error<E_6>>, never>) & {
81
+ action: string;
82
+ result: Result<Effect.Effect.Success<E_6>, Effect.Effect.Error<E_6>>;
83
+ waiting: boolean;
84
+ }>;
85
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_6, Args_6 extends Array<any>, A_5, B_4, C_3, D_2, E_8, F extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_6) => Generator<Eff, AEff_6, never>, a: (_: Effect.Effect<AEff_6, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_9, infer _R_6>>] ? E_9 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_5, infer R_5>>] ? R_5 : never>) => A_5, b: (_: A_5) => B_4, c: (_: B_4) => C_3, d: (_: C_3) => D_2, e: (_: D_2) => E_8, f: (_: E_8) => F): ComputedRef<((...a: Args_6) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<F>, Effect.Effect.Error<F>>, never>) & {
86
+ action: string;
87
+ result: Result<Effect.Effect.Success<F>, Effect.Effect.Error<F>>;
88
+ waiting: boolean;
89
+ }>;
90
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_7, Args_7 extends Array<any>, A_6, B_5, C_4, D_3, E_10, F_1, G extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_7) => Generator<Eff, AEff_7, never>, a: (_: Effect.Effect<AEff_7, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_11, infer _R_7>>] ? E_11 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_6, infer R_6>>] ? R_6 : never>) => A_6, b: (_: A_6) => B_5, c: (_: B_5) => C_4, d: (_: C_4) => D_3, e: (_: D_3) => E_10, f: (_: E_10) => F_1, g: (_: F_1) => G): ComputedRef<((...a: Args_7) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<G>, Effect.Effect.Error<G>>, never>) & {
91
+ action: string;
92
+ result: Result<Effect.Effect.Success<G>, Effect.Effect.Error<G>>;
93
+ waiting: boolean;
94
+ }>;
95
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_8, Args_8 extends Array<any>, A_7, B_6, C_5, D_4, E_12, F_2, G_1, H extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_8) => Generator<Eff, AEff_8, never>, a: (_: Effect.Effect<AEff_8, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_13, infer _R_8>>] ? E_13 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_7, infer R_7>>] ? R_7 : never>) => A_7, b: (_: A_7) => B_6, c: (_: B_6) => C_5, d: (_: C_5) => D_4, e: (_: D_4) => E_12, f: (_: E_12) => F_2, g: (_: F_2) => G_1, h: (_: G_1) => H): ComputedRef<((...a: Args_8) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<H>, Effect.Effect.Error<H>>, never>) & {
96
+ action: string;
97
+ result: Result<Effect.Effect.Success<H>, Effect.Effect.Error<H>>;
98
+ waiting: boolean;
99
+ }>;
100
+ <Eff extends YieldWrap<Effect.Effect<any, any, any>>, AEff_9, Args_9 extends Array<any>, A_8, B_7, C_6, D_5, E_14, F_3, G_2, H_1, I extends Effect.Effect<any, any, RT | CommandContext>>(body: (...args: Args_9) => Generator<Eff, AEff_9, never>, a: (_: Effect.Effect<AEff_9, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer E_15, infer _R_9>>] ? E_15 : never, [Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect.Effect<infer _A, infer _E_8, infer R_8>>] ? R_8 : never>) => A_8, b: (_: A_8) => B_7, c: (_: B_7) => C_6, d: (_: C_6) => D_5, e: (_: D_5) => E_14, f: (_: E_14) => F_3, g: (_: F_3) => G_2, h: (_: G_2) => H_1, i: (_: H_1) => I): ComputedRef<((...a: Args_9) => RuntimeFiber<Exit.Exit<Effect.Effect.Success<I>, Effect.Effect.Error<I>>, never>) & {
101
+ action: string;
102
+ result: Result<Effect.Effect.Success<I>, Effect.Effect.Error<I>>;
103
+ waiting: boolean;
104
+ }>;
105
+ };
106
+ };
107
+ export {};
108
+ //# sourceMappingURL=useCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCommand.d.ts","sourceRoot":"","sources":["../../src/experimental/useCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,162 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { asResult, reportRuntimeError } from "@effect-app/vue";
3
+ import { reportMessage } from "@effect-app/vue/errorReporter";
4
+ import { Cause, Context, Effect, flow, Match, Option, Runtime, S } from "effect-app";
5
+ import { SupportedErrors } from "effect-app/client";
6
+ import { OperationFailure, OperationSuccess } from "effect-app/Operations";
7
+ import { computed } from "vue";
8
+ export const DefaultIntl = {
9
+ de: {
10
+ "handle.confirmation": "{action} bestätigen?",
11
+ "handle.waiting": "{action} wird ausgeführt...",
12
+ "handle.success": "{action} erfolgreich",
13
+ "handle.with_errors": "{action} fehlgeschlagen",
14
+ "handle.with_warnings": "{action} erfolgreich, mit Warnungen",
15
+ "handle.error_response": "Die Anfrage war nicht erfolgreich:\n{error}\nWir wurden benachrichtigt und werden das Problem in Kürze beheben.",
16
+ "handle.response_error": "Die Antwort konnte nicht verarbeitet werden:\n{error}",
17
+ "handle.request_error": "Die Anfrage konnte nicht gesendet werden:\n{error}",
18
+ "handle.unexpected_error2": "{action} unerwarteter Fehler, probieren sie es in kurze nochmals."
19
+ },
20
+ en: {
21
+ "handle.confirmation": "Confirm {action}?",
22
+ "handle.waiting": "{action} executing...",
23
+ "handle.success": "{action} Success",
24
+ "handle.with_errors": "{action} Failed",
25
+ "handle.with_warnings": "{action}, with warnings",
26
+ "handle.error_response": "There was an error in processing the response:\n{error}\nWe have been notified and will fix the problem shortly.",
27
+ "handle.request_error": "There was an error in the request:\n{error}",
28
+ "handle.response_error": "The request was not successful:\n{error}",
29
+ "handle.unexpected_error2": "{action} unexpected error, please try again shortly."
30
+ }
31
+ };
32
+ export class CommandContext extends Context.Tag("CommandContext")() {
33
+ }
34
+ export const makeUseCommand = (
35
+ // NOTE: underscores to not collide with auto exports in nuxt apps
36
+ _useIntl, _useConfirm, _useWithToast, runtime) => () => {
37
+ const withToast = _useWithToast();
38
+ const { intl } = _useIntl();
39
+ const { confirmOrInterrupt } = _useConfirm();
40
+ const runFork = Runtime.runFork(runtime);
41
+ return {
42
+ /** Version of confirmOrInterrupt that automatically includes the action name in the default messages */
43
+ confirmOrInterrupt: Effect.fnUntraced(function* (message = undefined) {
44
+ const context = yield* CommandContext;
45
+ yield* confirmOrInterrupt(message
46
+ ?? intl.value.formatMessage({ id: "handle.confirmation" }, { action: context.action }));
47
+ }),
48
+ /** Version of withDefaultToast that automatically includes the action name in the default messages and uses intl */
49
+ withDefaultToast: (self, errorRenderer // undefined falls back to default?
50
+ ) => Effect.gen(function* () {
51
+ const { action } = yield* CommandContext;
52
+ const defaultWarnMessage = intl.value.formatMessage({ id: "handle.with_warnings" }, { action });
53
+ const defaultErrorMessage = intl.value.formatMessage({ id: "handle.with_errors" }, { action });
54
+ function renderError(e) {
55
+ if (errorRenderer) {
56
+ const m = errorRenderer(e);
57
+ if (m) {
58
+ return m;
59
+ }
60
+ }
61
+ if (!S.is(SupportedErrors)(e) && !S.ParseResult.isParseError(e)) {
62
+ if (typeof e === "object" && e !== null) {
63
+ if ("message" in e) {
64
+ return `${e.message}`;
65
+ }
66
+ if ("_tag" in e) {
67
+ return `${e._tag}`;
68
+ }
69
+ }
70
+ return "";
71
+ }
72
+ const e2 = e;
73
+ return Match.value(e2).pipe(Match.tags({
74
+ ParseError: (e) => {
75
+ console.warn(e.toString());
76
+ return intl.value.formatMessage({ id: "validation.failed" });
77
+ }
78
+ }), Match.orElse((e) => `${e.message ?? e._tag ?? e}`));
79
+ }
80
+ return yield* self.pipe(withToast({
81
+ onWaiting: intl.value.formatMessage({ id: "handle.waiting" }, { action }),
82
+ onSuccess: (a) => intl.value.formatMessage({ id: "handle.success" }, { action })
83
+ + (S.is(OperationSuccess)(a) && a.message ? "\n" + a.message : ""),
84
+ onFailure: Option.match({
85
+ onNone: () => intl.value.formatMessage({ id: "handle.unexpected_error2" }, {
86
+ action,
87
+ error: "" // TODO consider again Cause.pretty(cause), // will be reported to Sentry/Otel anyway.. and we shouldn't bother users with error dumps?
88
+ }),
89
+ onSome: (e) => S.is(OperationFailure)(e)
90
+ ? {
91
+ level: "warn",
92
+ message: defaultWarnMessage + e.message ? "\n" + e.message : ""
93
+ }
94
+ : `${defaultErrorMessage}:\n` + renderError(e)
95
+ })
96
+ }));
97
+ }),
98
+ /**
99
+ * Define a Command
100
+ * @param actionName The internal name of the action. will be used as Span. will be used to lookup user facing name via intl. `action.${actionName}`
101
+ * @returns A function that can be called to execute the mutation, like directly in a `@click` handler. Error reporting is built-in.
102
+ * the Effects **only** have access to the `CommandContext` service, which contains the user-facing action name.
103
+ * The function also has the following properties:
104
+ * - action: The user-facing name of the action, as defined in the intl messages. Can be used e.g as Button label.
105
+ * - result: The Result of the mutation
106
+ * - waiting: Whether the mutation is currently in progress. (shorthand for .result.waiting). Can be used e.g as Button loading/disabled state.
107
+ * Reporting status to the user is recommended to use the `withDefaultToast` helper, or render the .result inline
108
+ */
109
+ fn: (actionName) =>
110
+ // TODO constrain/type combinators
111
+ (fn,
112
+ // TODO: combinators can freely take A, E, R and change it to whatever they want, as long as the end result Requires not more than CommandContext | R
113
+ ...combinators) => {
114
+ const action = intl.value.formatMessage({
115
+ id: `action.${actionName}`,
116
+ defaultMessage: actionName
117
+ });
118
+ const context = { action };
119
+ const errorReporter = (self) => self.pipe(Effect.tapErrorCause(Effect.fnUntraced(function* (cause) {
120
+ if (Cause.isInterruptedOnly(cause)) {
121
+ console.info(`Interrupted while trying to ${actionName}`);
122
+ return;
123
+ }
124
+ const fail = Cause.failureOption(cause);
125
+ if (Option.isSome(fail)) {
126
+ // if (fail.value._tag === "SuppressErrors") {
127
+ // console.info(
128
+ // `Suppressed error trying to ${action}`,
129
+ // fail.value,
130
+ // )
131
+ // return
132
+ // }
133
+ const message = `Failure trying to ${actionName}`;
134
+ yield* reportMessage(message, {
135
+ action: actionName,
136
+ error: fail.value
137
+ });
138
+ return;
139
+ }
140
+ const extra = {
141
+ action,
142
+ message: `Unexpected Error trying to ${actionName}`
143
+ };
144
+ yield* reportRuntimeError(cause, extra);
145
+ })));
146
+ // TODO: override span stack set by Effect.fn as it points here instead of to the caller of Command.fn.
147
+ // perhaps copying Effect.fn implementation is better than using it?
148
+ const handler = Effect.fn(actionName)(fn, ...combinators,
149
+ // all must be within the Effect.fn to fit within the Span
150
+ Effect.provideService(CommandContext, context), /* TODO */ ((_) => Effect.annotateCurrentSpan({ action }).pipe(Effect.zipRight(_))), /* TODO */ errorReporter /* TODO */); // (...args: Args) => Effect.Effect<AEff, $WrappedEffectError, R>
151
+ const [result, mut] = asResult(handler);
152
+ return computed(() => Object.assign(flow(mut, runFork
153
+ // (_) => {}
154
+ ), /* make sure always create a new one, or the state won't properly propagate */ {
155
+ action,
156
+ result: result.value,
157
+ waiting: result.value.waiting
158
+ }));
159
+ }
160
+ };
161
+ };
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlQ29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBlcmltZW50YWwvdXNlQ29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFFBQVEsRUFBdUIsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNuRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFFN0QsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFhLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ25ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRzFFLE9BQU8sRUFBRSxRQUFRLEVBQW9CLE1BQU0sS0FBSyxDQUFBO0FBSWhELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUN6QixFQUFFLEVBQUU7UUFDRixxQkFBcUIsRUFBRSxzQkFBc0I7UUFDN0MsZ0JBQWdCLEVBQUUsNkJBQTZCO1FBQy9DLGdCQUFnQixFQUFFLHNCQUFzQjtRQUN4QyxvQkFBb0IsRUFBRSx5QkFBeUI7UUFDL0Msc0JBQXNCLEVBQUUscUNBQXFDO1FBQzdELHVCQUF1QixFQUNyQixpSEFBaUg7UUFDbkgsdUJBQXVCLEVBQUUsdURBQXVEO1FBQ2hGLHNCQUFzQixFQUFFLG9EQUFvRDtRQUM1RSwwQkFBMEIsRUFBRSxtRUFBbUU7S0FDaEc7SUFDRCxFQUFFLEVBQUU7UUFDRixxQkFBcUIsRUFBRSxtQkFBbUI7UUFDMUMsZ0JBQWdCLEVBQUUsdUJBQXVCO1FBQ3pDLGdCQUFnQixFQUFFLGtCQUFrQjtRQUNwQyxvQkFBb0IsRUFBRSxpQkFBaUI7UUFDdkMsc0JBQXNCLEVBQUUs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
@@ -0,0 +1,7 @@
1
+ import { Effect } from "effect-app";
2
+ import { type MakeIntlReturn } from "../makeIntl.js";
3
+ export declare const makeUseConfirm: <Locale extends string>(_useIntl: MakeIntlReturn<Locale>["useIntl"]) => () => {
4
+ confirm: (message?: string) => Effect.Effect<boolean, never, never>;
5
+ confirmOrInterrupt: (message?: string) => Effect.Effect<void, never, never>;
6
+ };
7
+ //# sourceMappingURL=useConfirm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useConfirm.d.ts","sourceRoot":"","sources":["../../src/experimental/useConfirm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,eAAO,MAAM,cAAc,GAAI,MAAM,SAAS,MAAM,EAAE,UAAU,cAAc,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC;;;CAahG,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { Effect } from "effect-app";
2
+ export const makeUseConfirm = (_useIntl) => () => {
3
+ const { intl } = _useIntl();
4
+ const getDefaultMessage = () => intl.value.formatMessage({ id: "confirm.default", defaultMessage: "Sind sie Sicher?" });
5
+ const confirm = (message = getDefaultMessage()) => Effect.sync(() => window.confirm(message));
6
+ const confirmOrInterrupt = (message = getDefaultMessage()) => confirm(message).pipe(Effect.flatMap((result) => (result ? Effect.void : Effect.interrupt)));
7
+ return { confirm, confirmOrInterrupt };
8
+ };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlQ29uZmlybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBlcmltZW50YWwvdXNlQ29uZmlybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBR25DLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUF3QixRQUEyQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7SUFDekcsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLFFBQVEsRUFBRSxDQUFBO0lBQzNCLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxFQUFFLENBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUE7SUFFekYsTUFBTSxPQUFPLEdBQUcsQ0FBQyxPQUFPLEdBQUcsaUJBQWlCLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7SUFFN0YsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE9BQU8sR0FBRyxpQkFBaUIsRUFBRSxFQUFFLEVBQUUsQ0FDM0QsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDbkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUN0RSxDQUFBO0lBRUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxDQUFBO0FBQ3hDLENBQUMsQ0FBQSJ9
@@ -0,0 +1,23 @@
1
+ import { Effect, type Option } from "effect-app";
2
+ export interface ToastOptions<A, E, Args extends ReadonlyArray<unknown>> {
3
+ onWaiting: string | ((...args: Args) => string);
4
+ onSuccess: string | ((a: A, ...args: Args) => string);
5
+ onFailure: string | ((error: Option.Option<E>, ...args: Args) => string | {
6
+ level: "warn" | "error";
7
+ message: string;
8
+ });
9
+ }
10
+ export type ToastId = string | number;
11
+ export type ToastOpts = {
12
+ id?: ToastId;
13
+ timeout?: number;
14
+ };
15
+ export type UseToast = () => {
16
+ error: (message: string, options?: ToastOpts) => ToastId;
17
+ warning: (message: string, options?: ToastOpts) => ToastId;
18
+ success: (message: string, options?: ToastOpts) => ToastId;
19
+ info: (message: string, options?: ToastOpts) => ToastId;
20
+ dismiss: (id: ToastId) => void;
21
+ };
22
+ export declare const makeUseWithToast: (useToast: UseToast) => () => <A, E, Args extends ReadonlyArray<unknown>, R>(options: ToastOptions<A, E, Args>) => (self: Effect.Effect<A, E, R>, ...args: Args) => Effect.Effect<A, E, R>;
23
+ //# sourceMappingURL=useWithToast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWithToast.d.ts","sourceRoot":"","sources":["../../src/experimental/useWithToast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAA;AAEvD,MAAM,WAAW,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,SAAS,aAAa,CAAC,OAAO,CAAC;IACrE,SAAS,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,CAAA;IAC/C,SAAS,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,CAAA;IACrD,SAAS,EACL,MAAM,GACN,CAAC,CACD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACvB,GAAG,IAAI,EAAE,IAAI,KACV,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC9D;AAED,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;AACrC,MAAM,MAAM,SAAS,GAAG;IAAE,EAAE,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1D,MAAM,MAAM,QAAQ,GAAG,MAAM;IAC3B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,KAAK,OAAO,CAAA;IACxD,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,KAAK,OAAO,CAAA;IAC1D,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,KAAK,OAAO,CAAA;IAC1D,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,KAAK,OAAO,CAAA;IACvD,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,IAAI,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,UAAU,QAAQ,YAEzC,CAAC,EAAE,CAAC,EAAE,IAAI,SAAS,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAClD,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,4EAqCpC,CAAA"}
@@ -0,0 +1,31 @@
1
+ import { Cause, Effect } from "effect-app";
2
+ export const makeUseWithToast = (useToast) => () => {
3
+ const toast = useToast();
4
+ return (options) => Effect.fnUntraced(function* (self, ...args) {
5
+ const toastId = toast.info(
6
+ // .loading
7
+ typeof options.onWaiting === "string"
8
+ ? options.onWaiting
9
+ : options.onWaiting(...args));
10
+ return yield* self.pipe(Effect.tap((a) => {
11
+ toast.success(typeof options.onSuccess === "string"
12
+ ? options.onSuccess
13
+ : options.onSuccess(a, ...args), { id: toastId, timeout: 3_000 });
14
+ }), Effect.tapErrorCause((cause) => Effect.sync(() => {
15
+ if (Cause.isInterruptedOnly(cause)) {
16
+ toast.dismiss(toastId);
17
+ return;
18
+ }
19
+ const t = typeof options.onFailure === "string"
20
+ ? options.onFailure
21
+ : options.onFailure(Cause.failureOption(cause), ...args);
22
+ if (typeof t === "object") {
23
+ return t.level === "warn"
24
+ ? toast.warning(t.message, { id: toastId, timeout: 5_000 })
25
+ : toast.error(t.message, { id: toastId, timeout: 5_000 });
26
+ }
27
+ toast.error(t, { id: toastId, timeout: 5_000 });
28
+ })));
29
+ });
30
+ };
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2l0aFRvYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4cGVyaW1lbnRhbC91c2VXaXRoVG9hc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWUsTUFBTSxZQUFZLENBQUE7QUF3QnZELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsUUFBa0IsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO0lBQzNELE1BQU0sS0FBSyxHQUFHLFFBQVEsRUFBRSxDQUFBO0lBQ3hCLE9BQU8sQ0FDTCxPQUFpQyxFQUNqQyxFQUFFLENBQ0YsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBQyxJQUE0QixFQUFFLEdBQUcsSUFBVTtRQUNyRSxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSTtRQUN4QixXQUFXO1FBQ1gsT0FBTyxPQUFPLENBQUMsU0FBUyxLQUFLLFFBQVE7WUFDbkMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ25CLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQy9CLENBQUE7UUFDRCxPQUFPLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ3JCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNmLEtBQUssQ0FBQyxPQUFPLENBQ1gsT0FBTyxPQUFPLENBQUMsU0FBUyxLQUFLLFFBQVE7Z0JBQ25DLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUztnQkFDbkIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQ2pDLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQ2hDLENBQUE7UUFDSCxDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO2dCQUN0QixPQUFNO1lBQ1IsQ0FBQztZQUNELE1BQU0sQ0FBQyxHQUFHLE9BQU8sT0FBTyxDQUFDLFNBQVMsS0FBSyxRQUFRO2dCQUM3QyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVM7Z0JBQ25CLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQTtZQUMxRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUMxQixPQUFPLENBQUMsQ0FBQyxLQUFLLEtBQUssTUFBTTtvQkFDdkIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO29CQUMzRCxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQTtZQUM3RCxDQUFDO1lBQ0QsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFBO1FBQ2pELENBQUMsQ0FBQyxDQUNILENBQ0YsQ0FBQTtJQUNILENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFBIn0=
package/dist/form.d.ts CHANGED
@@ -80,7 +80,7 @@ export declare const translate: Ref<{
80
80
  (this: void, descriptor: import("@formatjs/intl").MessageDescriptor, values?: Record<string, import("intl-messageformat").PrimitiveType | import("intl-messageformat").FormatXMLElementFn<string, string>>, opts?: import("intl-messageformat").Options): string;
81
81
  <T extends unknown, TValue extends T | import("intl-messageformat").FormatXMLElementFn<T>>(this: void, descriptor: import("@formatjs/intl").MessageDescriptor, values?: Record<string, import("intl-messageformat").PrimitiveType | TValue> | undefined, opts?: import("intl-messageformat").Options): string | T | (string | T)[];
82
82
  }>;
83
- export declare const customSchemaErrors: Ref<Map<string | S.AST.AST, (message: string, e: unknown, v: unknown) => string>, Map<string | S.AST.AST, (message: string, e: unknown, v: unknown) => string>>;
83
+ export declare const customSchemaErrors: Ref<Map<string | S.AST.AST, (message: string, e: unknown, v: unknown) => string> & Omit<Map<string | S.AST.AST, (message: string, e: unknown, v: unknown) => string>, keyof Map<any, any>>, Map<string | S.AST.AST, (message: string, e: unknown, v: unknown) => string> | (Map<string | S.AST.AST, (message: string, e: unknown, v: unknown) => string> & Omit<Map<string | S.AST.AST, (message: string, e: unknown, v: unknown) => string>, keyof Map<any, any>>)>;
84
84
  export declare const buildFormFromSchema: <From extends Record<PropertyKey, any>, To extends Record<PropertyKey, any>, C extends Record<PropertyKey, any>, OnSubmitA>(s: Schema<To, From, never> & {
85
85
  new (c: C): any;
86
86
  extend: any;
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"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"}