@effect-app/vue 2.64.2 → 2.66.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 +21 -0
- package/dist/experimental/commander.d.ts +42 -48
- package/dist/experimental/commander.d.ts.map +1 -1
- package/dist/experimental/commander.js +18 -21
- package/dist/experimental/intl.d.ts +1 -1
- package/dist/experimental/makeUseCommand.d.ts +8 -8
- package/dist/experimental/toast.d.ts +1 -1
- package/dist/experimental/withToast.d.ts +2 -2
- package/dist/experimental/withToast.d.ts.map +1 -1
- package/dist/experimental/withToast.js +2 -13
- package/dist/makeClient.d.ts +11 -11
- package/package.json +3 -3
- package/src/experimental/commander.ts +53 -54
- package/src/experimental/withToast.ts +3 -16
- package/test/dist/stubs.d.ts +8 -8
- package/test/dist/stubs.d.ts.map +1 -1
|
@@ -29,7 +29,7 @@ declare const I18n_base: (abstract new (service: {
|
|
|
29
29
|
trans: (id: string, values?: Record<string, import("intl-messageformat").PrimitiveType | import("intl-messageformat").FormatXMLElementFn<string, string>>) => string;
|
|
30
30
|
readonly formatMessage: (descriptor: import("@formatjs/intl").MessageDescriptor, values?: Record<string, import("intl-messageformat").PrimitiveType | import("intl-messageformat").FormatXMLElementFn<string, string>>, opts?: import("intl-messageformat").Options) => string;
|
|
31
31
|
readonly intl: import("../makeIntl.js").IntlShape<Locale>;
|
|
32
|
-
}) => X) => X extends import("effect/Effect").Effect<infer A, infer E, infer R_2> ? import("effect/Effect").Effect<A, E,
|
|
32
|
+
}) => X) => X extends import("effect/Effect").Effect<infer A, infer E, infer R_2> ? import("effect/Effect").Effect<A, E, R_2 | I18n> : import("effect/Effect").Effect<X, never, I18n>;
|
|
33
33
|
};
|
|
34
34
|
export declare class I18n extends I18n_base {
|
|
35
35
|
}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import { Effect } from "effect-app";
|
|
2
2
|
import { Commander } from "./commander.js";
|
|
3
3
|
export declare const makeUseCommand: <R = never>() => Effect.Effect<{
|
|
4
|
-
alt: <const Id extends string>(id: Id) => <Args extends Array<
|
|
4
|
+
alt: <const Id extends string>(id: Id) => <Args extends Array<unknown>, A, E, R_1 extends import("./commander.js").CommandContext | R>(handler: (...args: Args) => Effect.Effect<A, E, R_1>) => Commander.CommandOut<Args, A, E, R_1, Id>;
|
|
5
5
|
fn: <const Id extends string>(id: Id) => Commander.Gen<R, Id> & Commander.NonGen<R, Id>;
|
|
6
|
-
wrap: <const Id extends string, Args extends Array<
|
|
6
|
+
wrap: <const Id extends string, Args extends Array<unknown>, A_1, E_1, R_2>(mutation: {
|
|
7
7
|
mutate: (...args: Args) => Effect.Effect<A_1, E_1, R_2>;
|
|
8
8
|
name: Id;
|
|
9
9
|
}) => Commander.GenWrap<R, Id, Args, A_1, E_1, R_2> & Commander.NonGenWrap<R, Id, Args, A_1, E_1, R_2>;
|
|
10
|
-
alt2: <const Id extends string, MutArgs extends Array<
|
|
10
|
+
alt2: <const Id extends string, MutArgs extends Array<unknown>, MutA, MutE, MutR>(id: Id | {
|
|
11
11
|
name: Id;
|
|
12
12
|
mutate: (...args: MutArgs) => Effect.Effect<MutA, MutE, MutR>;
|
|
13
|
-
}) => <Args_1 extends Array<
|
|
13
|
+
}) => <Args_1 extends Array<unknown>, A_2, E_2, R_3 extends import("./commander.js").CommandContext | R>(handler: (ctx: Effect.fn.Gen & Effect.fn.NonGen & Commander.CommandContextLocal<Id> & {
|
|
14
14
|
mutate: (...args: MutArgs) => Effect.Effect<MutA, MutE, MutR>;
|
|
15
15
|
}) => (...args: Args_1) => Effect.Effect<A_2, E_2, R_3>) => Commander.CommandOut<Args_1, A_2, E_2, R_3, Id>;
|
|
16
16
|
takeOver: <Args_1 extends any[], A_3, E_3, R_4, const Id extends string>(command: Commander.CommandOut<Args_1, A_3, E_3, R_4, Id>) => (...args: Args_1) => Effect.Effect<A_3, E_3, import("./commander.js").CommandContext | Exclude<Exclude<R_4, import("./commander.js").CommandContext>, import("effect/Tracer").ParentSpan>>;
|
|
17
17
|
confirmOrInterrupt: (message?: string | undefined) => Effect.Effect<void, never, import("./commander.js").CommandContext>;
|
|
18
18
|
confirm: (message?: string | undefined) => Effect.Effect<boolean, never, import("./commander.js").CommandContext>;
|
|
19
|
-
updateAction: <Args_1 extends Array<
|
|
20
|
-
defaultFailureMessageHandler: <E_5, Args_1 extends
|
|
19
|
+
updateAction: <Args_1 extends Array<unknown>>(update: (currentActionId: string, ...args: Args_1) => string) => <A_4, E_4, R_5>(_: Effect.Effect<A_4, E_4, R_5>, ...input: Args_1) => Effect.Effect<A_4, E_4, import("./commander.js").CommandContext | R_5>;
|
|
20
|
+
defaultFailureMessageHandler: <E_5, Args_1 extends Array<unknown>, AME, AMR>(actionMaker: string | ((o: import("effect/Option").Option<E_5>, ...args: Args_1) => string) | ((o: import("effect/Option").Option<E_5>, ...args: Args_1) => Effect.Effect<string, AME, AMR>), errorRenderer?: ((e: E_5, action: string, ...args: Args_1) => string | undefined) | undefined) => (o: import("effect/Option").Option<E_5>, ...args: Args_1) => Effect.Effect<string | {
|
|
21
21
|
level: "warn";
|
|
22
22
|
message: string;
|
|
23
|
-
}
|
|
23
|
+
}, AME, AMR>;
|
|
24
24
|
renderError: <E_5, Args_2 extends readonly any[]>(action: string, errorRenderer?: ((e: E_5, action: string, ...args: Args_2) => string | undefined) | undefined) => (e: E_5, ...args: Args_2) => string;
|
|
25
|
-
withDefaultToast: <A_4, E_5, R_6, Args_3 extends
|
|
25
|
+
withDefaultToast: <A_4, E_5, R_6, Args_3 extends Array<unknown>>(options?: {
|
|
26
26
|
errorRenderer?: (e: E_5, action: string, ...args: Args_3) => string | undefined;
|
|
27
27
|
onWaiting?: string | ((action: string, ...args: Args_3) => string | null | undefined) | null | undefined;
|
|
28
28
|
onSuccess?: string | ((a: A_4, action: string, ...args: Args_3) => string | null | undefined) | null | undefined;
|
|
@@ -77,7 +77,7 @@ declare const Toast_base: (abstract new (service: {
|
|
|
77
77
|
success: (message: string, options?: ToastOptsInternal) => Effect.Effect<ToastId, never, never>;
|
|
78
78
|
warning: (message: string, options?: ToastOptsInternal) => Effect.Effect<ToastId, never, never>;
|
|
79
79
|
dismiss: (toastId: ToastId) => Effect.Effect<void, never, never>;
|
|
80
|
-
}) => X) => X extends Effect.Effect<infer A, infer E, infer R_2> ? Effect.Effect<A, E,
|
|
80
|
+
}) => X) => X extends Effect.Effect<infer A, infer E, infer R_2> ? Effect.Effect<A, E, Toast | R_2> : Effect.Effect<X, never, Toast>;
|
|
81
81
|
};
|
|
82
82
|
export declare class Toast extends Toast_base {
|
|
83
83
|
}
|
|
@@ -13,10 +13,10 @@ export interface ToastOptions<A, E, Args extends ReadonlyArray<unknown>, WaiR, S
|
|
|
13
13
|
}, never, ErrR>);
|
|
14
14
|
}
|
|
15
15
|
declare const WithToast_base: Effect.Service.Class<WithToast, "WithToast", {
|
|
16
|
-
readonly effect: Effect.Effect<(<A, E, Args extends
|
|
16
|
+
readonly effect: Effect.Effect<(<A, E, Args extends Array<unknown>, R, WaiR = never, SucR = never, ErrR = never>(options: ToastOptions<A, E, Args, WaiR, SucR, ErrR>) => (self: Effect.Effect<A, E, R>, ...args: Args) => Effect.Effect<A, E, R | WaiR | SucR | ErrR>), never, Toast>;
|
|
17
17
|
}>;
|
|
18
18
|
export declare class WithToast extends WithToast_base {
|
|
19
|
-
static readonly handle: <A, E, Args extends
|
|
19
|
+
static readonly handle: <A, E, Args extends Array<unknown>, R, WaiR = never, SucR = never, ErrR = never>(options: ToastOptions<A, E, Args, WaiR, SucR, ErrR>) => (self: Effect.Effect<A, E, R>, ...args: Args) => Effect.Effect<A, E, R | WaiR | SucR | ErrR | WithToast>;
|
|
20
20
|
}
|
|
21
21
|
export {};
|
|
22
22
|
//# sourceMappingURL=withToast.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withToast.d.ts","sourceRoot":"","sources":["../../src/experimental/withToast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"withToast.d.ts","sourceRoot":"","sources":["../../src/experimental/withToast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAA;AAEvD,OAAO,EAAkB,KAAK,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,WAAW,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,SAAS,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IACvF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,EACL,MAAM,GACN,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,MAAM,GAAG,IAAI,CAAC,GAClC,IAAI,GACJ,CAAC,CACD,GAAG,IAAI,EAAE,IAAI,KACV,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;IACjD,SAAS,EACL,MAAM,GACN,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,MAAM,GAAG,IAAI,CAAC,GACxC,IAAI,GACJ,CAAC,CACD,CAAC,EAAE,CAAC,EACJ,GAAG,IAAI,EAAE,IAAI,KACV,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;IACjD,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,GACzD,CAAC,CACD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACvB,GAAG,IAAI,EAAE,IAAI,KACV,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;CAC1F;;qCAMW,CAAC,EAAE,CAAC,EAAE,IAAI,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,IAAI,UAAU,IAAI,UAAU,IAAI,mBACnE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;;AAJzD,qBAAa,SAAU,SAAQ,cAkD7B;IACA,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAI,CAAC,EAAE,CAAC,EAAE,IAAI,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EACtG,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,KAClD,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CACb;CAC/F"}
|
|
@@ -1,17 +1,6 @@
|
|
|
1
1
|
import { Cause, Effect } from "effect-app";
|
|
2
|
+
import { wrapEffect } from "effect-app/utils";
|
|
2
3
|
import { CurrentToastId, Toast } from "./toast.js";
|
|
3
|
-
// unifies any input to be an effect.
|
|
4
|
-
const wrapEffect = (m) => {
|
|
5
|
-
if (typeof m === "function") {
|
|
6
|
-
return (...args) => {
|
|
7
|
-
const r = m(...args);
|
|
8
|
-
if (Effect.isEffect(r))
|
|
9
|
-
return r;
|
|
10
|
-
return Effect.succeed(r);
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
return () => Effect.succeed(m);
|
|
14
|
-
};
|
|
15
4
|
// @effect-diagnostics-next-line missingEffectServiceDependency:off
|
|
16
5
|
export class WithToast extends Effect.Service()("WithToast", {
|
|
17
6
|
effect: Effect.gen(function* () {
|
|
@@ -48,4 +37,4 @@ export class WithToast extends Effect.Service()("WithToast", {
|
|
|
48
37
|
}) {
|
|
49
38
|
static handle = (options) => (self, ...args) => this.use((_) => _(options)(self, ...args));
|
|
50
39
|
}
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aFRvYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4cGVyaW1lbnRhbC93aXRoVG9hc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWUsTUFBTSxZQUFZLENBQUE7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBK0JsRCxtRUFBbUU7QUFDbkUsTUFBTSxPQUFPLFNBQVUsU0FBUSxNQUFNLENBQUMsT0FBTyxFQUFhLENBQUMsV0FBVyxFQUFFO0lBQ3RFLE1BQU0sRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUMxQixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUE7UUFDMUIsT0FBTyxDQUNMLE9BQW1ELEVBQ25ELEVBQUUsQ0FDRixNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFDLElBQTRCLEVBQUUsR0FBRyxJQUFVO1lBQ3JFLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFBO1lBRTVDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtZQUN2RCxNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ3hELENBQUMsQ0FBQyx5QkFBeUI7YUFDNUIsQ0FBQTtZQUNELE9BQU8sS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDckIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FB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
|
package/dist/makeClient.d.ts
CHANGED
|
@@ -129,7 +129,7 @@ declare const LegacyMutation_base: Effect.Service.Class<LegacyMutation, "LegacyM
|
|
|
129
129
|
<I_1, E_7, A_12, R_13, Request_12 extends TaggedRequestClassAny, Name_12 extends string, A2_13 = A_12, E2_13 = E_7, R2_13 = R_13>(self: RequestHandlerWithInput<I_1, A_12, E_7, R_13, Request_12, Name_12>, options?: MutationOptions<A_12, E_7, R_13, A2_13, E2_13, R2_13, I_1>): readonly [ComputedRef<Result.Result<A2_13, E2_13>>, (i: I_1) => Effect.Effect<Exit.Exit<A2_13, E2_13>, never, R2_13>];
|
|
130
130
|
<E_8, A_13, R_14, Request_13 extends TaggedRequestClassAny, Name_13 extends string, A2_14 = A_13, E2_14 = E_8, R2_14 = R_14>(self: RequestHandler<A_13, E_8, R_14, Request_13, Name_13>, options?: MutationOptions<A_13, E_8, R_14, A2_14, E2_14, R2_14>): readonly [ComputedRef<Result.Result<A2_14, E2_14>>, Effect.Effect<Exit.Exit<A2_14, E2_14>, never, R2_14>];
|
|
131
131
|
};
|
|
132
|
-
}), never,
|
|
132
|
+
}), never, Toast | I18n>;
|
|
133
133
|
}>;
|
|
134
134
|
export declare class LegacyMutation extends LegacyMutation_base {
|
|
135
135
|
}
|
|
@@ -220,28 +220,28 @@ export declare const makeClient: <RT, RE, RL>(getBaseMrt: () => ManagedRuntime.M
|
|
|
220
220
|
};
|
|
221
221
|
};
|
|
222
222
|
useCommand: () => {
|
|
223
|
-
alt: <const Id extends string>(id: Id) => <Args extends Array<
|
|
224
|
-
fn: <const Id extends string>(id: Id) => Commander.Gen<
|
|
225
|
-
wrap: <const Id extends string, Args extends Array<
|
|
223
|
+
alt: <const Id extends string>(id: Id) => <Args extends Array<unknown>, A_18, E_10, R_14 extends Toast | import("./experimental/commander.js").CommandContext | I18n | RL>(handler: (...args: Args) => Effect.Effect<A_18, E_10, R_14>) => Commander.CommandOut<Args, A_18, E_10, R_14, Id>;
|
|
224
|
+
fn: <const Id extends string>(id: Id) => Commander.Gen<Toast | I18n | RL, Id> & Commander.NonGen<Toast | I18n | RL, Id>;
|
|
225
|
+
wrap: <const Id extends string, Args extends Array<unknown>, A_19, E_11, R_15>(mutation: {
|
|
226
226
|
mutate: (...args: Args) => Effect.Effect<A_19, E_11, R_15>;
|
|
227
227
|
name: Id;
|
|
228
|
-
}) => Commander.GenWrap<
|
|
229
|
-
alt2: <const Id extends string, MutArgs extends Array<
|
|
228
|
+
}) => Commander.GenWrap<Toast | I18n | RL, Id, Args, A_19, E_11, R_15> & Commander.NonGenWrap<Toast | I18n | RL, Id, Args, A_19, E_11, R_15>;
|
|
229
|
+
alt2: <const Id extends string, MutArgs extends Array<unknown>, MutA, MutE, MutR>(id: Id | {
|
|
230
230
|
name: Id;
|
|
231
231
|
mutate: (...args: MutArgs) => Effect.Effect<MutA, MutE, MutR>;
|
|
232
|
-
}) => <Args_1 extends Array<
|
|
232
|
+
}) => <Args_1 extends Array<unknown>, A_20, E_12, R_16 extends Toast | import("./experimental/commander.js").CommandContext | I18n | RL>(handler: (ctx: Effect.fn.Gen & Effect.fn.NonGen & Commander.CommandContextLocal<Id> & {
|
|
233
233
|
mutate: (...args: MutArgs) => Effect.Effect<MutA, MutE, MutR>;
|
|
234
234
|
}) => (...args: Args_1) => Effect.Effect<A_20, E_12, R_16>) => Commander.CommandOut<Args_1, A_20, E_12, R_16, Id>;
|
|
235
235
|
takeOver: <Args_1 extends any[], A_21, E_13, R_17, const Id extends string>(command: Commander.CommandOut<Args_1, A_21, E_13, R_17, Id>) => (...args: Args_1) => Effect.Effect<A_21, E_13, import("./experimental/commander.js").CommandContext | Exclude<Exclude<R_17, import("./experimental/commander.js").CommandContext>, import("effect/Tracer").ParentSpan>>;
|
|
236
236
|
confirmOrInterrupt: (message?: string | undefined) => Effect.Effect<void, never, import("./experimental/commander.js").CommandContext>;
|
|
237
237
|
confirm: (message?: string | undefined) => Effect.Effect<boolean, never, import("./experimental/commander.js").CommandContext>;
|
|
238
|
-
updateAction: <Args_1 extends Array<
|
|
239
|
-
defaultFailureMessageHandler: <E_15, Args_1 extends
|
|
238
|
+
updateAction: <Args_1 extends Array<unknown>>(update: (currentActionId: string, ...args: Args_1) => string) => <A_22, E_14, R_18>(_: Effect.Effect<A_22, E_14, R_18>, ...input: Args_1) => Effect.Effect<A_22, E_14, import("./experimental/commander.js").CommandContext | R_18>;
|
|
239
|
+
defaultFailureMessageHandler: <E_15, Args_1 extends Array<unknown>, AME, AMR>(actionMaker: string | ((o: Option.Option<E_15>, ...args: Args_1) => string) | ((o: Option.Option<E_15>, ...args: Args_1) => Effect.Effect<string, AME, AMR>), errorRenderer?: ((e: E_15, action: string, ...args: Args_1) => string | undefined) | undefined) => (o: Option.Option<E_15>, ...args: Args_1) => Effect.Effect<string | {
|
|
240
240
|
level: "warn";
|
|
241
241
|
message: string;
|
|
242
|
-
}
|
|
242
|
+
}, AME, AMR>;
|
|
243
243
|
renderError: <E_15, Args_2 extends readonly any[]>(action: string, errorRenderer?: ((e: E_15, action: string, ...args: Args_2) => string | undefined) | undefined) => (e: E_15, ...args: Args_2) => string;
|
|
244
|
-
withDefaultToast: <A_22, E_15, R_19, Args_3 extends
|
|
244
|
+
withDefaultToast: <A_22, E_15, R_19, Args_3 extends Array<unknown>>(options?: {
|
|
245
245
|
errorRenderer?: (e: E_15, action: string, ...args: Args_3) => string | undefined;
|
|
246
246
|
onWaiting?: string | ((action: string, ...args: Args_3) => string | null | undefined) | null | undefined;
|
|
247
247
|
onSuccess?: string | ((a: A_22, action: string, ...args: Args_3) => string | null | undefined) | null | undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/vue",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.66.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"homepage": "https://github.com/effect-ts-app/libs/tree/main/packages/vue",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"@tanstack/vue-query": "5.83.1",
|
|
11
11
|
"@vueuse/core": "^13.9.0",
|
|
12
12
|
"query-string": "^9.2.2",
|
|
13
|
-
"effect-app": "3.
|
|
13
|
+
"effect-app": "3.4.0"
|
|
14
14
|
},
|
|
15
15
|
"peerDependencies": {
|
|
16
16
|
"@effect-atom/atom": "^0.1.22",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"typescript": "~5.9.2",
|
|
32
32
|
"vite": "^7.1.4",
|
|
33
33
|
"vitest": "^3.2.4",
|
|
34
|
-
"@effect-app/eslint-shared-config": "0.0.
|
|
34
|
+
"@effect-app/eslint-shared-config": "0.0.13"
|
|
35
35
|
},
|
|
36
36
|
"typesVersions": {
|
|
37
37
|
"*": {
|
|
@@ -5,6 +5,7 @@ import { type Result } from "@effect-atom/atom/Result"
|
|
|
5
5
|
import { Cause, Effect, type Exit, flow, Match, Option, Runtime, S } from "effect-app"
|
|
6
6
|
import { SupportedErrors } from "effect-app/client"
|
|
7
7
|
import { OperationFailure, OperationSuccess } from "effect-app/Operations"
|
|
8
|
+
import { wrapEffect } from "effect-app/utils"
|
|
8
9
|
import { type RuntimeFiber } from "effect/Fiber"
|
|
9
10
|
import { type NoInfer } from "effect/Types"
|
|
10
11
|
import { isGeneratorFunction, type YieldWrap } from "effect/Utils"
|
|
@@ -57,16 +58,6 @@ export const wrapEmit = <A, Event extends string>(
|
|
|
57
58
|
) =>
|
|
58
59
|
(value: A) => new Promise<void>((resolve) => emit(event, value, resolve))
|
|
59
60
|
|
|
60
|
-
/**
|
|
61
|
-
* Shorthand of @see wrapEmit to wrap emit calls for OmegaForm form submission callback
|
|
62
|
-
*/
|
|
63
|
-
export const wrapEmitSubmit = <A>(
|
|
64
|
-
emit: EmitWithCallback<A, "submit">
|
|
65
|
-
) => {
|
|
66
|
-
const submit = wrapEmit(emit, "submit")
|
|
67
|
-
return ({ value }: { value: A }) => submit(value)
|
|
68
|
-
}
|
|
69
|
-
|
|
70
61
|
export declare namespace Commander {
|
|
71
62
|
export interface CommandContextLocal<Id extends string> {
|
|
72
63
|
id: Id
|
|
@@ -79,7 +70,7 @@ export declare namespace Commander {
|
|
|
79
70
|
waiting: boolean
|
|
80
71
|
}
|
|
81
72
|
|
|
82
|
-
export interface CommandOut<Args extends Array<
|
|
73
|
+
export interface CommandOut<Args extends Array<unknown>, A, E, R, Id extends string> extends CommandProps<A, E, Id> {
|
|
83
74
|
new(): {}
|
|
84
75
|
|
|
85
76
|
/** click handlers */
|
|
@@ -101,7 +92,7 @@ export declare namespace Commander {
|
|
|
101
92
|
exec: (...args: Args) => Effect.Effect<Exit.Exit<A, E>, never, Exclude<R, CommandContext>>
|
|
102
93
|
}
|
|
103
94
|
|
|
104
|
-
type CommandOutHelper<Args extends Array<
|
|
95
|
+
type CommandOutHelper<Args extends Array<unknown>, Eff extends Effect.Effect<any, any, any>, Id extends string> =
|
|
105
96
|
CommandOut<
|
|
106
97
|
Args,
|
|
107
98
|
Effect.Effect.Success<Eff>,
|
|
@@ -111,7 +102,7 @@ export declare namespace Commander {
|
|
|
111
102
|
>
|
|
112
103
|
|
|
113
104
|
export type Gen<RT, Id extends string> = {
|
|
114
|
-
<Eff extends YieldWrap<Effect.Effect<any, any, RT | CommandContext>>, AEff, Args extends Array<
|
|
105
|
+
<Eff extends YieldWrap<Effect.Effect<any, any, RT | CommandContext>>, AEff, Args extends Array<unknown>>(
|
|
115
106
|
body: (...args: Args) => Generator<Eff, AEff, never>
|
|
116
107
|
): CommandOut<
|
|
117
108
|
Args,
|
|
@@ -127,7 +118,7 @@ export declare namespace Commander {
|
|
|
127
118
|
<
|
|
128
119
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
129
120
|
AEff,
|
|
130
|
-
Args extends Array<
|
|
121
|
+
Args extends Array<unknown>,
|
|
131
122
|
A extends Effect.Effect<any, any, RT | CommandContext>
|
|
132
123
|
>(
|
|
133
124
|
body: (...args: Args) => Generator<Eff, AEff, never>,
|
|
@@ -147,7 +138,7 @@ export declare namespace Commander {
|
|
|
147
138
|
<
|
|
148
139
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
149
140
|
AEff,
|
|
150
|
-
Args extends Array<
|
|
141
|
+
Args extends Array<unknown>,
|
|
151
142
|
A,
|
|
152
143
|
B extends Effect.Effect<any, any, RT | CommandContext>
|
|
153
144
|
>(
|
|
@@ -169,7 +160,7 @@ export declare namespace Commander {
|
|
|
169
160
|
<
|
|
170
161
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
171
162
|
AEff,
|
|
172
|
-
Args extends Array<
|
|
163
|
+
Args extends Array<unknown>,
|
|
173
164
|
A,
|
|
174
165
|
B,
|
|
175
166
|
C extends Effect.Effect<any, any, RT | CommandContext>
|
|
@@ -193,7 +184,7 @@ export declare namespace Commander {
|
|
|
193
184
|
<
|
|
194
185
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
195
186
|
AEff,
|
|
196
|
-
Args extends Array<
|
|
187
|
+
Args extends Array<unknown>,
|
|
197
188
|
A,
|
|
198
189
|
B,
|
|
199
190
|
C,
|
|
@@ -219,7 +210,7 @@ export declare namespace Commander {
|
|
|
219
210
|
<
|
|
220
211
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
221
212
|
AEff,
|
|
222
|
-
Args extends Array<
|
|
213
|
+
Args extends Array<unknown>,
|
|
223
214
|
A,
|
|
224
215
|
B,
|
|
225
216
|
C,
|
|
@@ -247,7 +238,7 @@ export declare namespace Commander {
|
|
|
247
238
|
<
|
|
248
239
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
249
240
|
AEff,
|
|
250
|
-
Args extends Array<
|
|
241
|
+
Args extends Array<unknown>,
|
|
251
242
|
A,
|
|
252
243
|
B,
|
|
253
244
|
C,
|
|
@@ -277,7 +268,7 @@ export declare namespace Commander {
|
|
|
277
268
|
<
|
|
278
269
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
279
270
|
AEff,
|
|
280
|
-
Args extends Array<
|
|
271
|
+
Args extends Array<unknown>,
|
|
281
272
|
A,
|
|
282
273
|
B,
|
|
283
274
|
C,
|
|
@@ -309,7 +300,7 @@ export declare namespace Commander {
|
|
|
309
300
|
<
|
|
310
301
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
311
302
|
AEff,
|
|
312
|
-
Args extends Array<
|
|
303
|
+
Args extends Array<unknown>,
|
|
313
304
|
A,
|
|
314
305
|
B,
|
|
315
306
|
C,
|
|
@@ -343,7 +334,7 @@ export declare namespace Commander {
|
|
|
343
334
|
<
|
|
344
335
|
Eff extends YieldWrap<Effect.Effect<any, any, any>>,
|
|
345
336
|
AEff,
|
|
346
|
-
Args extends Array<
|
|
337
|
+
Args extends Array<unknown>,
|
|
347
338
|
A,
|
|
348
339
|
B,
|
|
349
340
|
C,
|
|
@@ -379,32 +370,32 @@ export declare namespace Commander {
|
|
|
379
370
|
}
|
|
380
371
|
|
|
381
372
|
export type NonGen<RT, Id extends string> = {
|
|
382
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, Args extends Array<
|
|
373
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, Args extends Array<unknown>>(
|
|
383
374
|
body: (...args: Args) => Eff
|
|
384
375
|
): CommandOutHelper<Args, Eff, Id>
|
|
385
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, Args extends Array<
|
|
376
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, Args extends Array<unknown>>(
|
|
386
377
|
body: (...args: Args) => A,
|
|
387
378
|
a: (_: A, ...args: NoInfer<Args>) => Eff
|
|
388
379
|
): CommandOutHelper<Args, Eff, Id>
|
|
389
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, Args extends Array<
|
|
380
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, Args extends Array<unknown>>(
|
|
390
381
|
body: (...args: Args) => A,
|
|
391
382
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
392
383
|
b: (_: B, ...args: NoInfer<Args>) => Eff
|
|
393
384
|
): CommandOutHelper<Args, Eff, Id>
|
|
394
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, Args extends Array<
|
|
385
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, Args extends Array<unknown>>(
|
|
395
386
|
body: (...args: Args) => A,
|
|
396
387
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
397
388
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
398
389
|
c: (_: C, ...args: NoInfer<Args>) => Eff
|
|
399
390
|
): CommandOutHelper<Args, Eff, Id>
|
|
400
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, Args extends Array<
|
|
391
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, Args extends Array<unknown>>(
|
|
401
392
|
body: (...args: Args) => A,
|
|
402
393
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
403
394
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
404
395
|
c: (_: C, ...args: NoInfer<Args>) => D,
|
|
405
396
|
d: (_: D, ...args: NoInfer<Args>) => Eff
|
|
406
397
|
): CommandOutHelper<Args, Eff, Id>
|
|
407
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, Args extends Array<
|
|
398
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, Args extends Array<unknown>>(
|
|
408
399
|
body: (...args: Args) => A,
|
|
409
400
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
410
401
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
@@ -412,7 +403,7 @@ export declare namespace Commander {
|
|
|
412
403
|
d: (_: D, ...args: NoInfer<Args>) => E,
|
|
413
404
|
e: (_: E, ...args: NoInfer<Args>) => Eff
|
|
414
405
|
): CommandOutHelper<Args, Eff, Id>
|
|
415
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, Args extends Array<
|
|
406
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, Args extends Array<unknown>>(
|
|
416
407
|
body: (...args: Args) => A,
|
|
417
408
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
418
409
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
@@ -421,7 +412,7 @@ export declare namespace Commander {
|
|
|
421
412
|
e: (_: E, ...args: NoInfer<Args>) => F,
|
|
422
413
|
f: (_: F, ...args: NoInfer<Args>) => Eff
|
|
423
414
|
): CommandOutHelper<Args, Eff, Id>
|
|
424
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, G, Args extends Array<
|
|
415
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, G, Args extends Array<unknown>>(
|
|
425
416
|
body: (...args: Args) => A,
|
|
426
417
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
427
418
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
@@ -431,7 +422,7 @@ export declare namespace Commander {
|
|
|
431
422
|
f: (_: F, ...args: NoInfer<Args>) => G,
|
|
432
423
|
g: (_: G, ...args: NoInfer<Args>) => Eff
|
|
433
424
|
): CommandOutHelper<Args, Eff, Id>
|
|
434
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, G, H, Args extends Array<
|
|
425
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, G, H, Args extends Array<unknown>>(
|
|
435
426
|
body: (...args: Args) => A,
|
|
436
427
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
437
428
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
@@ -442,7 +433,7 @@ export declare namespace Commander {
|
|
|
442
433
|
g: (_: G, ...args: NoInfer<Args>) => H,
|
|
443
434
|
h: (_: H, ...args: NoInfer<Args>) => Eff
|
|
444
435
|
): CommandOutHelper<Args, Eff, Id>
|
|
445
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, G, H, I, Args extends Array<
|
|
436
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, A, B, C, D, E, F, G, H, I, Args extends Array<unknown>>(
|
|
446
437
|
body: (...args: Args) => A,
|
|
447
438
|
a: (_: A, ...args: NoInfer<Args>) => B,
|
|
448
439
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
@@ -456,7 +447,7 @@ export declare namespace Commander {
|
|
|
456
447
|
): CommandOutHelper<Args, Eff, Id>
|
|
457
448
|
}
|
|
458
449
|
|
|
459
|
-
export type GenWrap<RT, Id extends string, Args extends Array<
|
|
450
|
+
export type GenWrap<RT, Id extends string, Args extends Array<unknown>, AEff, EEff, REff> = {
|
|
460
451
|
(): CommandOut<
|
|
461
452
|
Args,
|
|
462
453
|
AEff,
|
|
@@ -627,9 +618,9 @@ export declare namespace Commander {
|
|
|
627
618
|
): CommandOutHelper<Args, I, Id>
|
|
628
619
|
}
|
|
629
620
|
|
|
630
|
-
export type NonGenWrap<RT, Id extends string, Args extends Array<
|
|
621
|
+
export type NonGenWrap<RT, Id extends string, Args extends Array<unknown>, AEff, EEff, REff> = {
|
|
631
622
|
(): CommandOutHelper<Args, Effect.Effect<AEff, EEff, REff>, Id>
|
|
632
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, Args extends Array<
|
|
623
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, Args extends Array<unknown>>(
|
|
633
624
|
a: (
|
|
634
625
|
_: Effect.Effect<
|
|
635
626
|
AEff,
|
|
@@ -639,7 +630,7 @@ export declare namespace Commander {
|
|
|
639
630
|
...args: NoInfer<Args>
|
|
640
631
|
) => Eff
|
|
641
632
|
): CommandOutHelper<Args, Eff, Id>
|
|
642
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, Args extends Array<
|
|
633
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, Args extends Array<unknown>>(
|
|
643
634
|
a: (
|
|
644
635
|
_: Effect.Effect<
|
|
645
636
|
AEff,
|
|
@@ -650,7 +641,7 @@ export declare namespace Commander {
|
|
|
650
641
|
) => B,
|
|
651
642
|
b: (_: B, ...args: NoInfer<Args>) => Eff
|
|
652
643
|
): CommandOutHelper<Args, Eff, Id>
|
|
653
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, Args extends Array<
|
|
644
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, Args extends Array<unknown>>(
|
|
654
645
|
a: (
|
|
655
646
|
_: Effect.Effect<
|
|
656
647
|
AEff,
|
|
@@ -662,7 +653,7 @@ export declare namespace Commander {
|
|
|
662
653
|
b: (_: B, ...args: NoInfer<Args>) => C,
|
|
663
654
|
c: (_: C, ...args: NoInfer<Args>) => Eff
|
|
664
655
|
): CommandOutHelper<Args, Eff, Id>
|
|
665
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, Args extends Array<
|
|
656
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, Args extends Array<unknown>>(
|
|
666
657
|
a: (
|
|
667
658
|
_: Effect.Effect<
|
|
668
659
|
AEff,
|
|
@@ -675,7 +666,7 @@ export declare namespace Commander {
|
|
|
675
666
|
c: (_: C, ...args: NoInfer<Args>) => D,
|
|
676
667
|
d: (_: D, ...args: NoInfer<Args>) => Eff
|
|
677
668
|
): CommandOutHelper<Args, Eff, Id>
|
|
678
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, Args extends Array<
|
|
669
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, Args extends Array<unknown>>(
|
|
679
670
|
a: (
|
|
680
671
|
_: Effect.Effect<
|
|
681
672
|
AEff,
|
|
@@ -689,7 +680,7 @@ export declare namespace Commander {
|
|
|
689
680
|
d: (_: D, ...args: NoInfer<Args>) => E,
|
|
690
681
|
e: (_: E, ...args: NoInfer<Args>) => Eff
|
|
691
682
|
): CommandOutHelper<Args, Eff, Id>
|
|
692
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, Args extends Array<
|
|
683
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, Args extends Array<unknown>>(
|
|
693
684
|
a: (
|
|
694
685
|
_: Effect.Effect<
|
|
695
686
|
AEff,
|
|
@@ -704,7 +695,7 @@ export declare namespace Commander {
|
|
|
704
695
|
e: (_: E, ...args: NoInfer<Args>) => F,
|
|
705
696
|
f: (_: F, ...args: NoInfer<Args>) => Eff
|
|
706
697
|
): CommandOutHelper<Args, Eff, Id>
|
|
707
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, G, Args extends Array<
|
|
698
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, G, Args extends Array<unknown>>(
|
|
708
699
|
a: (
|
|
709
700
|
_: Effect.Effect<
|
|
710
701
|
AEff,
|
|
@@ -720,7 +711,7 @@ export declare namespace Commander {
|
|
|
720
711
|
f: (_: F, ...args: NoInfer<Args>) => G,
|
|
721
712
|
g: (_: G, ...args: NoInfer<Args>) => Eff
|
|
722
713
|
): CommandOutHelper<Args, Eff, Id>
|
|
723
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, G, H, Args extends Array<
|
|
714
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, G, H, Args extends Array<unknown>>(
|
|
724
715
|
a: (
|
|
725
716
|
_: Effect.Effect<
|
|
726
717
|
AEff,
|
|
@@ -737,7 +728,7 @@ export declare namespace Commander {
|
|
|
737
728
|
g: (_: G, ...args: NoInfer<Args>) => H,
|
|
738
729
|
h: (_: H, ...args: NoInfer<Args>) => Eff
|
|
739
730
|
): CommandOutHelper<Args, Eff, Id>
|
|
740
|
-
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, G, H, I, Args extends Array<
|
|
731
|
+
<Eff extends Effect.Effect<any, any, RT | CommandContext>, B, C, D, E, F, G, H, I, Args extends Array<unknown>>(
|
|
741
732
|
a: (
|
|
742
733
|
_: Effect.Effect<
|
|
743
734
|
AEff,
|
|
@@ -788,7 +779,7 @@ export class Commander extends Effect.Service<Commander>()("Commander", {
|
|
|
788
779
|
const makeCommand = <RT>(runtime: Runtime.Runtime<RT>) => {
|
|
789
780
|
const runFork = Runtime.runFork(runtime)
|
|
790
781
|
return <const Id extends string>(id: Id, errorDef?: Error) =>
|
|
791
|
-
<Args extends ReadonlyArray<
|
|
782
|
+
<Args extends ReadonlyArray<unknown>, A, E, R extends RT | CommandContext>(
|
|
792
783
|
handler: (...args: Args) => Effect.Effect<A, E, R>
|
|
793
784
|
) => {
|
|
794
785
|
// we capture the definition stack here, so we can append it to later stack traces
|
|
@@ -1063,10 +1054,17 @@ export class Commander extends Effect.Service<Commander>()("Commander", {
|
|
|
1063
1054
|
)
|
|
1064
1055
|
}
|
|
1065
1056
|
|
|
1066
|
-
const defaultFailureMessageHandler =
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1057
|
+
const defaultFailureMessageHandler = <E, Args extends Array<unknown>, AME, AMR>(
|
|
1058
|
+
actionMaker:
|
|
1059
|
+
| string
|
|
1060
|
+
| ((o: Option.Option<E>, ...args: Args) => string)
|
|
1061
|
+
| ((o: Option.Option<E>, ...args: Args) => Effect.Effect<string, AME, AMR>),
|
|
1062
|
+
errorRenderer?: ErrorRenderer<E, Args>
|
|
1063
|
+
) =>
|
|
1064
|
+
Effect.fnUntraced(function*(o: Option.Option<E>, ...args: Args) {
|
|
1065
|
+
const action = yield* wrapEffect(actionMaker)(o, ...args)
|
|
1066
|
+
|
|
1067
|
+
return Option.match(o, {
|
|
1070
1068
|
onNone: () =>
|
|
1071
1069
|
intl.formatMessage(
|
|
1072
1070
|
{ id: "handle.unexpected_error2" },
|
|
@@ -1093,6 +1091,7 @@ export class Commander extends Effect.Service<Commander>()("Commander", {
|
|
|
1093
1091
|
)
|
|
1094
1092
|
}:\n` + renderError(action, errorRenderer)(e, ...args)
|
|
1095
1093
|
})
|
|
1094
|
+
})
|
|
1096
1095
|
|
|
1097
1096
|
return {
|
|
1098
1097
|
/** @experimental */
|
|
@@ -1173,7 +1172,7 @@ export class Commander extends Effect.Service<Commander>()("Commander", {
|
|
|
1173
1172
|
)
|
|
1174
1173
|
}),
|
|
1175
1174
|
updateAction:
|
|
1176
|
-
<Args extends Array<
|
|
1175
|
+
<Args extends Array<unknown>>(update: (currentActionId: string, ...args: Args) => string) =>
|
|
1177
1176
|
<A, E, R>(_: Effect.Effect<A, E, R>, ...input: Args) =>
|
|
1178
1177
|
Effect.updateService(
|
|
1179
1178
|
_,
|
|
@@ -1183,7 +1182,7 @@ export class Commander extends Effect.Service<Commander>()("Commander", {
|
|
|
1183
1182
|
defaultFailureMessageHandler,
|
|
1184
1183
|
renderError,
|
|
1185
1184
|
/** Version of withDefaultToast that automatically includes the action name in the default messages and uses intl */
|
|
1186
|
-
withDefaultToast: <A, E, R, Args extends
|
|
1185
|
+
withDefaultToast: <A, E, R, Args extends Array<unknown>>(
|
|
1187
1186
|
options?: {
|
|
1188
1187
|
errorRenderer?: ErrorRenderer<E, Args>
|
|
1189
1188
|
onWaiting?: null | undefined | string | ((action: string, ...args: Args) => string | null | undefined)
|
|
@@ -1286,9 +1285,9 @@ export class Commander extends Effect.Service<Commander>()("Commander", {
|
|
|
1286
1285
|
}
|
|
1287
1286
|
}) as unknown as <RT>(
|
|
1288
1287
|
runtime: Runtime.Runtime<RT>
|
|
1289
|
-
) => <const Id extends string, MutArgs extends Array<
|
|
1288
|
+
) => <const Id extends string, MutArgs extends Array<unknown>, MutA, MutE, MutR>(
|
|
1290
1289
|
id: Id | { name: Id; mutate: (...args: MutArgs) => Effect.Effect<MutA, MutE, MutR> }
|
|
1291
|
-
) => <Args extends Array<
|
|
1290
|
+
) => <Args extends Array<unknown>, A, E, R extends RT | CommandContext>(
|
|
1292
1291
|
handler: (
|
|
1293
1292
|
ctx: Effect.fn.Gen & Effect.fn.NonGen & Commander.CommandContextLocal<Id> & {
|
|
1294
1293
|
// todo: only if we passed in one
|
|
@@ -1300,14 +1299,14 @@ export class Commander extends Effect.Service<Commander>()("Commander", {
|
|
|
1300
1299
|
/** @experimental */
|
|
1301
1300
|
alt: makeCommand as unknown as <RT>(runtime: Runtime.Runtime<RT>) => <const Id extends string>(
|
|
1302
1301
|
id: Id
|
|
1303
|
-
) => <Args extends Array<
|
|
1302
|
+
) => <Args extends Array<unknown>, A, E, R extends RT | CommandContext>(
|
|
1304
1303
|
handler: (...args: Args) => Effect.Effect<A, E, R>
|
|
1305
1304
|
) => Commander.CommandOut<Args, A, E, R, Id>,
|
|
1306
1305
|
|
|
1307
1306
|
/** @experimental */
|
|
1308
1307
|
wrap: <RT>(runtime: Runtime.Runtime<RT>) => {
|
|
1309
1308
|
const make = makeCommand(runtime)
|
|
1310
|
-
return <const Id extends string, Args extends Array<
|
|
1309
|
+
return <const Id extends string, Args extends Array<unknown>, A, E, R>(
|
|
1311
1310
|
mutation: { mutate: (...args: Args) => Effect.Effect<A, E, R>; name: Id }
|
|
1312
1311
|
): Commander.GenWrap<RT, Id, Args, A, E, R> & Commander.NonGenWrap<RT, Id, Args, A, E, R> =>
|
|
1313
1312
|
(
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Cause, Effect, type Option } from "effect-app"
|
|
2
|
+
import { wrapEffect } from "effect-app/utils"
|
|
2
3
|
import { CurrentToastId, Toast } from "./toast.js"
|
|
3
4
|
|
|
4
5
|
export interface ToastOptions<A, E, Args extends ReadonlyArray<unknown>, WaiR, SucR, ErrR> {
|
|
@@ -30,25 +31,11 @@ export interface ToastOptions<A, E, Args extends ReadonlyArray<unknown>, WaiR, S
|
|
|
30
31
|
) => Effect.Effect<string | { level: "warn" | "error"; message: string }, never, ErrR>)
|
|
31
32
|
}
|
|
32
33
|
|
|
33
|
-
// unifies any input to be an effect.
|
|
34
|
-
const wrapEffect = <I, A, E, R, Args extends Array<any>>(
|
|
35
|
-
m: I | ((...args: Args) => A) | ((...args: Args) => Effect.Effect<A, E, R>)
|
|
36
|
-
) => {
|
|
37
|
-
if (typeof m === "function") {
|
|
38
|
-
return (...args: Args): Effect.Effect<A | I, E, R> => {
|
|
39
|
-
const r = (m as any)(...args)
|
|
40
|
-
if (Effect.isEffect(r)) return r as Effect.Effect<A, E, R>
|
|
41
|
-
return Effect.succeed(r)
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return (): Effect.Effect<A | I, E, R> => Effect.succeed(m)
|
|
45
|
-
}
|
|
46
|
-
|
|
47
34
|
// @effect-diagnostics-next-line missingEffectServiceDependency:off
|
|
48
35
|
export class WithToast extends Effect.Service<WithToast>()("WithToast", {
|
|
49
36
|
effect: Effect.gen(function*() {
|
|
50
37
|
const toast = yield* Toast
|
|
51
|
-
return <A, E, Args extends
|
|
38
|
+
return <A, E, Args extends Array<unknown>, R, WaiR = never, SucR = never, ErrR = never>(
|
|
52
39
|
options: ToastOptions<A, E, Args, WaiR, SucR, ErrR>
|
|
53
40
|
) =>
|
|
54
41
|
Effect.fnUntraced(function*(self: Effect.Effect<A, E, R>, ...args: Args) {
|
|
@@ -96,7 +83,7 @@ export class WithToast extends Effect.Service<WithToast>()("WithToast", {
|
|
|
96
83
|
})
|
|
97
84
|
})
|
|
98
85
|
}) {
|
|
99
|
-
static readonly handle = <A, E, Args extends
|
|
86
|
+
static readonly handle = <A, E, Args extends Array<unknown>, R, WaiR = never, SucR = never, ErrR = never>(
|
|
100
87
|
options: ToastOptions<A, E, Args, WaiR, SucR, ErrR>
|
|
101
88
|
): (self: Effect.Effect<A, E, R>, ...args: Args) => Effect.Effect<A, E, R | WaiR | SucR | ErrR | WithToast> =>
|
|
102
89
|
(self, ...args) => this.use((_) => _<A, E, Args, R, WaiR, SucR, ErrR>(options)(self, ...args))
|