@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.
@@ -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, I18n | R_2> : import("effect/Effect").Effect<X, never, I18n>;
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<any>, 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>;
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<any>, A_1, E_1, R_2>(mutation: {
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<any>, MutA, MutE, MutR>(id: Id | {
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<any>, A_2, E_2, R_3 extends import("./commander.js").CommandContext | R>(handler: (ctx: Effect.fn.Gen & Effect.fn.NonGen & Commander.CommandContextLocal<Id> & {
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<any>>(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 readonly any[]>(action: string, errorRenderer?: ((e: E_5, action: string, ...args: Args_1) => string | undefined) | undefined) => (o: import("effect/Option").Option<E_5>, ...args: Args_1) => string | {
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 ReadonlyArray<unknown>>(options?: {
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, R_2 | Toast> : Effect.Effect<X, never, Toast>;
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 ReadonlyArray<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>;
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 ReadonlyArray<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>;
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;AACvD,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;;qCAoBW,CAAC,EAAE,CAAC,EAAE,IAAI,SAAS,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,IAAI,UAAU,IAAI,UAAU,IAAI,mBAC3E,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,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAC9G,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
+ {"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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aFRvYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4cGVyaW1lbnRhbC93aXRoVG9hc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWUsTUFBTSxZQUFZLENBQUE7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUE7QUErQmxELHFDQUFxQztBQUNyQyxNQUFNLFVBQVUsR0FBRyxDQUNqQixDQUEyRSxFQUMzRSxFQUFFO0lBQ0YsSUFBSSxPQUFPLENBQUMsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUM1QixPQUFPLENBQUMsR0FBRyxJQUFVLEVBQThCLEVBQUU7WUFDbkQsTUFBTSxDQUFDLEdBQUksQ0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUE7WUFDN0IsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFBRSxPQUFPLENBQTJCLENBQUE7WUFDMUQsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzFCLENBQUMsQ0FBQTtJQUNILENBQUM7SUFDRCxPQUFPLEdBQStCLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQzVELENBQUMsQ0FBQTtBQUVELG1FQUFtRTtBQUNuRSxNQUFNLE9BQU8sU0FBVSxTQUFRLE1BQU0sQ0FBQyxPQUFPLEVBQWEsQ0FBQyxXQUFXLEVBQUU7SUFDdEUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzFCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQTtRQUMxQixPQUFPLENBQ0wsT0FBbUQsRUFDbkQsRUFBRSxDQUNGLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUMsSUFBNEIsRUFBRSxHQUFHLElBQVU7WUFDckUsTUFBTSxXQUFXLEdB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
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aFRvYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4cGVyaW1lbnRhbC93aXRoVG9hc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWUsTUFBTSxZQUFZLENBQUE7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBK0JsRCxtRUFBbUU7QUFDbkUsTUFBTSxPQUFPLFNBQVUsU0FBUSxNQUFNLENBQUMsT0FBTyxFQUFhLENBQUMsV0FBVyxFQUFFO0lBQ3RFLE1BQU0sRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUMxQixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUE7UUFDMUIsT0FBTyxDQUNMLE9BQW1ELEVBQ25ELEVBQUUsQ0FDRixNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFDLElBQTRCLEVBQUUsR0FBRyxJQUFVO1lBQ3JFLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFBO1lBRTVDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtZQUN2RCxNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ3hELENBQUMsQ0FBQyx5QkFBeUI7YUFDNUIsQ0FBQTtZQUNELE9BQU8sS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDckIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FB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
@@ -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, I18n | Toast>;
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<any>, A_18, E_10, R_14 extends I18n | Toast | import("./experimental/commander.js").CommandContext | 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<I18n | Toast | RL, Id> & Commander.NonGen<I18n | Toast | RL, Id>;
225
- wrap: <const Id extends string, Args extends Array<any>, A_19, E_11, R_15>(mutation: {
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<I18n | Toast | RL, Id, Args, A_19, E_11, R_15> & Commander.NonGenWrap<I18n | Toast | RL, Id, Args, A_19, E_11, R_15>;
229
- alt2: <const Id extends string, MutArgs extends Array<any>, MutA, MutE, MutR>(id: Id | {
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<any>, A_20, E_12, R_16 extends I18n | Toast | import("./experimental/commander.js").CommandContext | RL>(handler: (ctx: Effect.fn.Gen & Effect.fn.NonGen & Commander.CommandContextLocal<Id> & {
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<any>>(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 readonly any[]>(action: string, errorRenderer?: ((e: E_15, action: string, ...args: Args_1) => string | undefined) | undefined) => (o: Option.Option<E_15>, ...args: Args_1) => string | {
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 ReadonlyArray<unknown>>(options?: {
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.64.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.3.7"
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.12"
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<any>, A, E, R, Id extends string> extends CommandProps<A, E, Id> {
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<any>, Eff extends Effect.Effect<any, any, any>, Id extends string> =
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<any>>(
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<any>,
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<any>,
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<any>,
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<any>,
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<any>,
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<any>,
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<any>,
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<any>,
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<any>,
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>, AEff, EEff, REff> = {
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<any>, AEff, EEff, REff> = {
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>>(
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<any>, A, E, R extends RT | CommandContext>(
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
- <E, Args extends readonly any[]>(action: string, errorRenderer?: ErrorRenderer<E, Args>) =>
1068
- (o: Option.Option<E>, ...args: Args) =>
1069
- Option.match(o, {
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<any>>(update: (currentActionId: string, ...args: Args) => string) =>
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 ReadonlyArray<unknown>>(
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<any>, MutA, MutE, MutR>(
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<any>, A, E, R extends RT | CommandContext>(
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<any>, A, E, R extends RT | CommandContext>(
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<any>, A, E, R>(
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 ReadonlyArray<unknown>, R, WaiR = never, SucR = never, ErrR = never>(
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 ReadonlyArray<unknown>, R, WaiR = never, SucR = never, ErrR = never>(
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))