@effect-app/vue 4.0.0-beta.15 → 4.0.0-beta.151

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.
Files changed (86) hide show
  1. package/CHANGELOG.md +958 -0
  2. package/dist/commander.d.ts +370 -0
  3. package/dist/commander.d.ts.map +1 -0
  4. package/dist/commander.js +587 -0
  5. package/dist/confirm.d.ts +19 -0
  6. package/dist/confirm.d.ts.map +1 -0
  7. package/dist/confirm.js +24 -0
  8. package/dist/errorReporter.d.ts +4 -4
  9. package/dist/errorReporter.d.ts.map +1 -1
  10. package/dist/errorReporter.js +12 -18
  11. package/dist/form.d.ts +13 -4
  12. package/dist/form.d.ts.map +1 -1
  13. package/dist/form.js +38 -9
  14. package/dist/index.d.ts +1 -1
  15. package/dist/intl.d.ts +15 -0
  16. package/dist/intl.d.ts.map +1 -0
  17. package/dist/intl.js +9 -0
  18. package/dist/lib.d.ts +1 -1
  19. package/dist/lib.d.ts.map +1 -1
  20. package/dist/makeClient.d.ts +84 -275
  21. package/dist/makeClient.d.ts.map +1 -1
  22. package/dist/makeClient.js +44 -351
  23. package/dist/makeContext.d.ts +1 -1
  24. package/dist/makeContext.d.ts.map +1 -1
  25. package/dist/makeIntl.d.ts +1 -1
  26. package/dist/makeIntl.d.ts.map +1 -1
  27. package/dist/makeUseCommand.d.ts +8 -0
  28. package/dist/makeUseCommand.d.ts.map +1 -0
  29. package/dist/makeUseCommand.js +13 -0
  30. package/dist/mutate.d.ts +2 -2
  31. package/dist/mutate.d.ts.map +1 -1
  32. package/dist/mutate.js +1 -1
  33. package/dist/query.d.ts +11 -15
  34. package/dist/query.d.ts.map +1 -1
  35. package/dist/query.js +24 -24
  36. package/dist/routeParams.d.ts +1 -1
  37. package/dist/runtime.d.ts +5 -2
  38. package/dist/runtime.d.ts.map +1 -1
  39. package/dist/runtime.js +27 -17
  40. package/dist/toast.d.ts +46 -0
  41. package/dist/toast.d.ts.map +1 -0
  42. package/dist/toast.js +32 -0
  43. package/dist/withToast.d.ts +26 -0
  44. package/dist/withToast.d.ts.map +1 -0
  45. package/dist/withToast.js +49 -0
  46. package/package.json +46 -46
  47. package/src/{experimental/commander.ts → commander.ts} +922 -249
  48. package/src/{experimental/confirm.ts → confirm.ts} +10 -14
  49. package/src/errorReporter.ts +60 -72
  50. package/src/form.ts +51 -12
  51. package/src/intl.ts +12 -0
  52. package/src/makeClient.ts +177 -1008
  53. package/src/{experimental/makeUseCommand.ts → makeUseCommand.ts} +3 -3
  54. package/src/query.ts +45 -46
  55. package/src/runtime.ts +39 -18
  56. package/src/{experimental/toast.ts → toast.ts} +11 -25
  57. package/src/{experimental/withToast.ts → withToast.ts} +15 -6
  58. package/test/Mutation.test.ts +130 -10
  59. package/test/dist/form.test.d.ts.map +1 -1
  60. package/test/dist/stubs.d.ts +1053 -118
  61. package/test/dist/stubs.d.ts.map +1 -1
  62. package/test/dist/stubs.js +50 -23
  63. package/test/form-validation-errors.test.ts +23 -19
  64. package/test/form.test.ts +20 -2
  65. package/test/makeClient.test.ts +54 -39
  66. package/test/stubs.ts +61 -26
  67. package/tsconfig.json +0 -1
  68. package/dist/experimental/commander.d.ts +0 -359
  69. package/dist/experimental/commander.d.ts.map +0 -1
  70. package/dist/experimental/commander.js +0 -557
  71. package/dist/experimental/confirm.d.ts +0 -19
  72. package/dist/experimental/confirm.d.ts.map +0 -1
  73. package/dist/experimental/confirm.js +0 -28
  74. package/dist/experimental/intl.d.ts +0 -16
  75. package/dist/experimental/intl.d.ts.map +0 -1
  76. package/dist/experimental/intl.js +0 -5
  77. package/dist/experimental/makeUseCommand.d.ts +0 -8
  78. package/dist/experimental/makeUseCommand.d.ts.map +0 -1
  79. package/dist/experimental/makeUseCommand.js +0 -13
  80. package/dist/experimental/toast.d.ts +0 -47
  81. package/dist/experimental/toast.d.ts.map +0 -1
  82. package/dist/experimental/toast.js +0 -41
  83. package/dist/experimental/withToast.d.ts +0 -25
  84. package/dist/experimental/withToast.d.ts.map +0 -1
  85. package/dist/experimental/withToast.js +0 -45
  86. package/src/experimental/intl.ts +0 -9
@@ -1,62 +1,16 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
2
  import { isCancelledError } from "@tanstack/vue-query";
3
3
  import { camelCase } from "change-case";
4
- import { Cause, Data, Effect, Exit, Layer, Match, Option, S, ServiceMap, Struct } from "effect-app";
5
- import { ErrorSilenced } from "effect-app/client/errors";
6
- import { constant, identity, pipe, tuple } from "effect-app/Function";
7
- import { OperationSuccess } from "effect-app/Operations";
8
- import { dropUndefinedT, extendM } from "effect-app/utils";
4
+ import { Effect, Exit, Struct } from "effect-app";
5
+ import { extendM } from "effect-app/utils";
9
6
  import * as AsyncResult from "effect/unstable/reactivity/AsyncResult";
10
- import { computed, onBeforeUnmount, ref, watch } from "vue";
11
- import { reportMessage } from "./errorReporter.js";
12
- import { CommanderStatic } from "./experimental/commander.js";
13
- import { I18n } from "./experimental/intl.js";
14
- import { makeUseCommand } from "./experimental/makeUseCommand.js";
15
- import { Toast } from "./experimental/toast.js";
16
- import { buildFieldInfoFromFieldsRoot } from "./form.js";
17
- import { reportRuntimeError } from "./lib.js";
18
- import { asResult, makeMutation, mutationResultToVue, useMakeMutation } from "./mutate.js";
7
+ import { onBeforeUnmount, ref } from "vue";
8
+ import { CommanderStatic } from "./commander.js";
9
+ import { makeUseCommand } from "./makeUseCommand.js";
10
+ import { makeMutation, useMakeMutation } from "./mutate.js";
19
11
  import { makeQuery } from "./query.js";
12
+ import { makeRunPromise } from "./runtime.js";
20
13
  const mapHandler = (handler, map) => Effect.isEffect(handler) ? map(handler, undefined) : (i) => map(handler(i), i);
21
- /**
22
- * Use this after handling an error yourself, still continueing on the Error track, but the error will not be reported.
23
- */
24
- export class SuppressErrors extends Data.TaggedError("SuppressErrors") {
25
- [ErrorSilenced] = true;
26
- }
27
- export const suppressToast = constant(Effect.succeed(undefined));
28
- /** handles errors as specified and reports defects */
29
- function handleRequest(f, id, action, options) {
30
- const handleEffect = (i) => (self) => self.pipe(Effect.tap(Effect.matchCauseEffect({
31
- onSuccess: (r) => options.onSuccess(r, i),
32
- onFailure: (cause) => Effect.gen(function* () {
33
- if (Cause.hasInterruptsOnly(cause)) {
34
- console.info(`Interrupted while trying to ${action}`);
35
- return;
36
- }
37
- const fail = Cause.findErrorOption(cause);
38
- if (Option.isSome(fail)) {
39
- if (fail.value._tag === "SuppressErrors") {
40
- console.info(`Suppressed error trying to ${action}`, fail.value);
41
- return;
42
- }
43
- const message = `Failure trying to ${action}`;
44
- yield* reportMessage(message, { action, error: fail.value });
45
- yield* options.onFail(fail.value, i);
46
- return;
47
- }
48
- const extra = {
49
- action,
50
- message: `Unexpected Error trying to ${action}`
51
- };
52
- yield* reportRuntimeError(cause, extra);
53
- yield* options.onDefect(cause, i);
54
- })
55
- })), Effect.withSpan(`mutation ${id}`, {}, { captureStackTrace: false }));
56
- return Object.assign(Effect.isEffect(f)
57
- ? pipe(f, handleEffect(void 0))
58
- : (i) => pipe(f(i), handleEffect(i)), { action });
59
- }
60
14
  const _useMutation = makeMutation();
61
15
  /**
62
16
  * Pass an Effect or a function that returns an Effect, e.g from a client action
@@ -73,253 +27,6 @@ export const useMutationInt = () => {
73
27
  const _useMutation = useMakeMutation();
74
28
  return (self, options) => Object.assign(mapHandler(_useMutation(self, options), Effect.withSpan(`mutation ${self.id}`, {}, { captureStackTrace: false })), { id: self.id });
75
29
  };
76
- export class LegacyMutationImpl {
77
- getRuntime;
78
- toast;
79
- intl;
80
- constructor(getRuntime, toast, intl) {
81
- this.getRuntime = getRuntime;
82
- this.toast = toast;
83
- this.intl = intl;
84
- }
85
- /**
86
- * Effect results are converted to Exit, so errors are ignored by default.
87
- * you should use the result ref to render errors!
88
- * @deprecated use `Command.fn` and friends instead
89
- */
90
- useSafeMutation = (self, options) => {
91
- const unsafe = _useMutation(self, options);
92
- const mh = options?.mapHandler ?? identity;
93
- const [a, b] = asResult(mapHandler(mapHandler(unsafe, mh), Effect.tapCauseIf(Cause.hasDies, (cause) => reportRuntimeError(cause))));
94
- return [
95
- a,
96
- mapHandler(b, Effect.withSpan(`mutation ${self.id}`, {}, { captureStackTrace: false }))
97
- ];
98
- };
99
- /** handles errors as toasts and reports defects
100
- * @deprecated use `Command.fn` and friends instead
101
- */
102
- useHandleRequestWithToast = () => {
103
- // eslint-disable-next-line @typescript-eslint/no-this-alias
104
- const self = this;
105
- return handleRequestWithToast;
106
- /**
107
- * Pass a function that returns a Promise.
108
- * Returns an execution function which reports errors as Toast.
109
- */
110
- function handleRequestWithToast(f, id, action, options = {}) {
111
- const actionMessage = self.intl.formatMessage({ id: `action.${action}`, defaultMessage: action });
112
- const defaultWarnMessage = self.intl.formatMessage({ id: "handle.with_warnings" }, { action: actionMessage });
113
- const defaultSuccessMessage = self.intl.formatMessage({ id: "handle.success" }, { action: actionMessage });
114
- const defaultErrorMessage = self.intl.formatMessage({ id: "handle.with_errors" }, { action: actionMessage });
115
- return handleRequest(f, id, action, {
116
- onSuccess: Effect.fnUntraced(function* (a, i) {
117
- const message = options.successMessage ? yield* options.successMessage(a, i) : defaultSuccessMessage
118
- + (S.is(OperationSuccess)(a) && a.message
119
- ? "\n" + a.message
120
- : "");
121
- if (message) {
122
- yield* self.toast.success(message);
123
- }
124
- }),
125
- onFail: Effect.fnUntraced(function* (e, i) {
126
- if (!options.failMessage && e._tag === "OperationFailure") {
127
- yield* self.toast.warning(defaultWarnMessage + e.message
128
- ? "\n" + e.message
129
- : "");
130
- return;
131
- }
132
- const message = options.failMessage
133
- ? yield* options.failMessage(e, i)
134
- : `${defaultErrorMessage}:\n` + renderError(e);
135
- if (message) {
136
- yield* self.toast.error(message);
137
- }
138
- }),
139
- onDefect: Effect.fnUntraced(function* (cause, i) {
140
- const message = options.defectMessage
141
- ? yield* options.defectMessage(cause, i)
142
- : self.intl.formatMessage({ id: "handle.unexpected_error" }, {
143
- action: actionMessage,
144
- error: Cause.pretty(cause)
145
- });
146
- if (message) {
147
- yield* self.toast.error(message);
148
- }
149
- })
150
- });
151
- }
152
- function renderError(e) {
153
- return Match.value(e).pipe(Match.tags({
154
- // HttpErrorRequest: e =>
155
- // this.intl.value.formatMessage(
156
- // { id: "handle.request_error" },
157
- // { error: `${e.error}` },
158
- // ),
159
- // HttpErrorResponse: e =>
160
- // e.response.status >= 500 ||
161
- // e.response.body._tag !== "Some" ||
162
- // !e.response.body.value
163
- // ? this.intl.value.formatMessage(
164
- // { id: "handle.error_response" },
165
- // {
166
- // error: `${
167
- // e.response.body._tag === "Some" && e.response.body.value
168
- // ? parseError(e.response.body.value)
169
- // : "Unknown"
170
- // } (${e.response.status})`,
171
- // },
172
- // )
173
- // : this.intl.value.formatMessage(
174
- // { id: "handle.unexpected_error" },
175
- // {
176
- // error:
177
- // JSON.stringify(e.response.body, undefined, 2) +
178
- // "( " +
179
- // e.response.status +
180
- // ")",
181
- // },
182
- // ),
183
- // ResponseError: e =>
184
- // this.intl.value.formatMessage(
185
- // { id: "handle.response_error" },
186
- // { error: `${e.error}` },
187
- // ),
188
- SchemaError: (e) => {
189
- console.warn(e.toString());
190
- return self.intl.formatMessage({ id: "validation.failed" });
191
- }
192
- }), Match.orElse((e) => `${e.message ?? e._tag ?? e}`));
193
- }
194
- };
195
- /**
196
- * Pass a function that returns an Effect, e.g from a client action, give it a name.
197
- * Returns a tuple with raw Result and execution function which reports success and errors as Toast.
198
- * @deprecated use `Command.fn` and friends instead
199
- */
200
- useAndHandleMutationResult = (self, action, options) => {
201
- const handleRequestWithToast = this.useHandleRequestWithToast();
202
- const handler = self.handler;
203
- const unsafe = _useMutation({
204
- ...self,
205
- handler: Effect.isEffect(handler)
206
- ? pipe(Effect.annotateCurrentSpan({ action }), Effect.andThen(handler))
207
- : (...args) => pipe(Effect.annotateCurrentSpan({ action }), Effect.andThen(handler(...args)))
208
- }, options ? dropUndefinedT(options) : undefined);
209
- const mh = options?.mapHandler ?? identity;
210
- // Effect.tapDefect(reportRuntimeError) handled in toast handler,
211
- const [a, b] = asResult(mapHandler(unsafe, mh));
212
- return tuple(a, handleRequestWithToast(b, self.id, action, options));
213
- };
214
- //
215
- /**
216
- * Pass a function that returns an Effect, e.g from a client action, give it a name.
217
- * Returns a tuple with state ref and execution function which reports success and errors as Toast.
218
- *
219
- * @deprecated use `Command.fn` and friends instead
220
- */
221
- useAndHandleMutation = (self, action, options) => {
222
- const [a, b] = this.useAndHandleMutationResult(self, action, options);
223
- return tuple(computed(() => mutationResultToVue(a.value)), b);
224
- };
225
- /** @deprecated use `Command.fn` and friends instead */
226
- makeUseAndHandleMutation = (defaultOptions) => ((self, action, options) => {
227
- return this.useAndHandleMutation(self, action, { ...defaultOptions, ...options });
228
- });
229
- /**
230
- * The same as @see useAndHandleMutation, but does not display any toasts by default.
231
- * Messages for success, error and defect toasts can be provided in the Options.
232
- * @deprecated use `Command.fn` and friends instead
233
- */
234
- useAndHandleMutationSilently = this.makeUseAndHandleMutation({
235
- successMessage: suppressToast,
236
- failMessage: suppressToast,
237
- defectMessage: suppressToast
238
- });
239
- /**
240
- * The same as @see useAndHandleMutation, but does not act on success, error or defect by default.
241
- * Actions for success, error and defect can be provided in the Options.
242
- * @deprecated use `Command.fn` and friends instead
243
- */
244
- useAndHandleMutationCustom = (self, action, options) => {
245
- const unsafe = _useMutation({
246
- ...self,
247
- handler: Effect.isEffect(self.handler)
248
- ? pipe(Effect.annotateCurrentSpan({ action }), Effect.andThen(self.handler))
249
- : (...args) => pipe(Effect.annotateCurrentSpan({ action }), Effect.andThen(self.handler(...args)))
250
- }, options ? dropUndefinedT(options) : undefined);
251
- const mh = options?.mapHandler ?? identity;
252
- const [a, b] = asResult(mapHandler(mapHandler(unsafe, mh), Effect.tapCauseIf(Cause.hasDies, (cause) => reportRuntimeError(cause))));
253
- return tuple(computed(() => mutationResultToVue(a.value)), handleRequest(b, self.id, action, {
254
- onSuccess: suppressToast,
255
- onDefect: suppressToast,
256
- onFail: suppressToast,
257
- ...options
258
- }));
259
- };
260
- /**
261
- * Effect results are converted to Exit, so errors are ignored by default.
262
- * you should use the result ref to render errors!
263
- * @deprecated use `Command.fn` and friends instead
264
- */
265
- useSafeMutationWithState = (self, options) => {
266
- const [a, b] = this.useSafeMutation(self, options);
267
- return tuple(computed(() => mutationResultToVue(a.value)), b);
268
- };
269
- /** @deprecated use OmegaForm */
270
- buildFormFromSchema = (s, state, onSubmit) => {
271
- const fields = buildFieldInfoFromFieldsRoot(s).fields;
272
- const schema = S.Struct(Struct.omit(s.fields, ["_tag"]));
273
- const parse = S.decodeUnknownSync(schema);
274
- const isDirty = ref(false);
275
- const isValid = ref(true);
276
- const isLoading = ref(false);
277
- const runPromise = Effect.runPromiseWith(this.getRuntime());
278
- const submit1 = (onSubmit) => async (e) => {
279
- isLoading.value = true;
280
- try {
281
- const r = await e;
282
- if (!r.valid)
283
- return;
284
- return await runPromise(onSubmit(new s(await runPromise(parse(state.value)))));
285
- }
286
- finally {
287
- isLoading.value = false;
288
- }
289
- };
290
- const submit = submit1(onSubmit);
291
- watch(state, (v) => {
292
- // TODO: do better
293
- isDirty.value = JSON.stringify(v) !== JSON.stringify(state.value);
294
- }, { deep: true });
295
- const submitFromState = Effect.gen(function* () {
296
- return yield* onSubmit(yield* parse(state.value));
297
- });
298
- const submitFromStatePromise = () => runPromise(submitFromState);
299
- return {
300
- fields,
301
- /** optimized for Vuetify v-form submit callback */
302
- submit,
303
- /** optimized for Native form submit callback or general use */
304
- submitFromState,
305
- submitFromStatePromise,
306
- isDirty,
307
- isValid,
308
- isLoading
309
- };
310
- };
311
- }
312
- // @effect-diagnostics-next-line missingEffectServiceDependency:off
313
- export class LegacyMutation extends ServiceMap.Service()("LegacyMutation", {
314
- make: Effect.gen(function* () {
315
- const intl = yield* I18n;
316
- const toast = yield* Toast;
317
- return (getRuntime) => new LegacyMutationImpl(getRuntime, toast, intl);
318
- })
319
- }) {
320
- static DefaultWithoutDependencies = Layer.effect(this, this.make);
321
- static Default = this.DefaultWithoutDependencies;
322
- }
323
30
  export class QueryImpl {
324
31
  getRuntime;
325
32
  constructor(getRuntime) {
@@ -338,7 +45,7 @@ export class QueryImpl {
338
45
  * @deprecated use client helpers instead (.suspense())
339
46
  */
340
47
  useSuspenseQuery = (self) => {
341
- const runPromise = Effect.runPromiseWith(this.getRuntime());
48
+ const runPromise = makeRunPromise(this.getRuntime());
342
49
  const q = this.useQuery(self);
343
50
  return (argOrOptions, options) => {
344
51
  const [resultRef, latestRef, fetch, uqrt] = q(argOrOptions, { ...options, suspense: true } // experimental_prefetchInRender: true }
@@ -379,46 +86,24 @@ export class QueryImpl {
379
86
  };
380
87
  }
381
88
  // somehow mrt.runtimeEffect doesnt work sync, but this workaround works fine? not sure why though as the layers are generally only sync
382
- const managedRuntimeRt = (mrt) => mrt.runSync(Effect.services());
89
+ const managedRuntimeRt = (mrt) => mrt.runSync(Effect.context());
383
90
  export const makeClient = (
384
91
  // global, but only accessible after startup has completed
385
92
  getBaseMrt, clientFor_, rtHooks) => {
386
- const getRt = Effect.services();
387
93
  const getBaseRt = () => managedRuntimeRt(getBaseMrt());
388
94
  const makeCommand = makeUseCommand(rtHooks);
389
- const makeMutation = Effect.gen(function* () {
390
- const mut = yield* LegacyMutation;
391
- return mut(() => getBaseMrt().runSync(getRt));
392
- });
393
95
  let cmd;
394
96
  const useCommand = () => cmd ??= getBaseMrt().runSync(makeCommand);
395
- let mut;
396
- const getMutation = () => mut ??= getBaseMrt().runSync(makeMutation);
397
97
  let m;
398
98
  const useMutation = () => m ??= useMutationInt();
399
- const keys = [
400
- "useSafeMutationWithState",
401
- "useAndHandleMutation",
402
- "useAndHandleMutationResult",
403
- "useAndHandleMutationSilently",
404
- "useAndHandleMutationCustom",
405
- "makeUseAndHandleMutation",
406
- "useHandleRequestWithToast",
407
- "buildFormFromSchema",
408
- "useSafeMutation"
409
- ];
410
- const mutations = keys.reduce((prev, cur) => {
411
- ;
412
- prev[cur] = ((...args) => {
413
- return getMutation()[cur](...args);
414
- });
415
- return prev;
416
- }, {});
417
99
  const query = new QueryImpl(getBaseRt);
418
100
  const useQuery = query.useQuery;
419
101
  const useSuspenseQuery = query.useSuspenseQuery;
420
102
  const mapQuery = (client) => {
421
103
  const queries = Struct.keys(client).reduce((acc, key) => {
104
+ if (client[key].Request.type !== "query") {
105
+ return acc;
106
+ }
422
107
  ;
423
108
  acc[camelCase(key) + "Query"] = Object.assign(useQuery(client[key]), {
424
109
  id: client[key].id
@@ -433,6 +118,9 @@ getBaseMrt, clientFor_, rtHooks) => {
433
118
  const mapRequest = (client) => {
434
119
  const Command = useCommand();
435
120
  const mutations = Struct.keys(client).reduce((acc, key) => {
121
+ if (client[key].Request.type !== "command") {
122
+ return acc;
123
+ }
436
124
  const mut = client[key].handler;
437
125
  const fn = Command.fn(client[key].id);
438
126
  const wrap = Command.wrap({ mutate: Effect.isEffect(mut) ? () => mut : mut, id: client[key].id });
@@ -446,11 +134,12 @@ getBaseMrt, clientFor_, rtHooks) => {
446
134
  const Command = useCommand();
447
135
  const mutation = useMutation();
448
136
  const mutations = Struct.keys(client).reduce((acc, key) => {
137
+ if (client[key].Request.type !== "command") {
138
+ return acc;
139
+ }
449
140
  const mut = mutation(client[key]);
450
- const fn = Command.fn(client[key].id);
451
141
  const wrap = Command.wrap({ mutate: Effect.isEffect(mut) ? () => mut : mut, id: client[key].id });
452
- acc[camelCase(key) + "Mutation"] = Object.assign(mut, fn, // to get the i18n key etc.
453
- { wrap, fn });
142
+ acc[camelCase(key) + "Mutation"] = Object.assign(mut, { wrap });
454
143
  return acc;
455
144
  }, {});
456
145
  return mutations;
@@ -462,24 +151,33 @@ getBaseMrt, clientFor_, rtHooks) => {
462
151
  const mutation = useMutation();
463
152
  const invalidation = queryInvalidation?.(client);
464
153
  const extended = Struct.keys(client).reduce((acc, key) => {
154
+ const requestType = client[key].Request.type;
465
155
  const fn = Command.fn(client[key].id);
466
- const mutate = extendM(mutation(client[key], invalidation?.[key] ? { queryInvalidation: invalidation[key] } : undefined), (mutate) => Object.assign(mutate, fn, // to get the i18n key etc.
467
- {
468
- wrap: Command.wrap({ mutate: Effect.isEffect(mutate) ? () => mutate : mutate, id: client[key].id }),
469
- fn
470
- }));
471
156
  const h_ = client[key].handler;
472
- const h = Effect.isEffect(h_)
157
+ const wrapInput = Effect.isEffect(h_)
473
158
  ? () => h_
474
159
  : (...args) => h_(...args);
475
- acc[key] = Object.assign(h, client[key], fn, // to get the i18n key etc.
476
- {
477
- mutate,
478
- query: useQuery(client[key]),
479
- suspense: useSuspenseQuery(client[key]),
480
- wrap: Command.wrap({ mutate: h, id: client[key].id }),
481
- fn
482
- });
160
+ const request = Effect.isEffect(h_) ? h_ : wrapInput;
161
+ acc[key] = Object.assign(requestType === "query"
162
+ ? {
163
+ ...client[key],
164
+ request,
165
+ query: useQuery(client[key]),
166
+ suspense: useSuspenseQuery(client[key])
167
+ }
168
+ : {
169
+ mutate: extendM(mutation(client[key], invalidation?.[key] ? { queryInvalidation: invalidation[key] } : undefined), (mutate) => Object.assign(mutate, {
170
+ wrap: Command.wrap({
171
+ mutate: Effect.isEffect(mutate) ? () => mutate : mutate,
172
+ id: client[key].id
173
+ })
174
+ })),
175
+ ...client[key],
176
+ ...fn, // to get the i18n key etc.
177
+ request,
178
+ fn,
179
+ wrap: Command.wrap({ mutate: wrapInput, id: client[key].id })
180
+ });
483
181
  return acc;
484
182
  }, {});
485
183
  return Object.assign(extended, { helpers: { ...mapRequest(client), ...mapMutation(client), ...mapQuery(client) } });
@@ -508,10 +206,6 @@ getBaseMrt, clientFor_, rtHooks) => {
508
206
  }, {});
509
207
  return proxy;
510
208
  };
511
- const legacy = {
512
- ...mutations,
513
- ...query
514
- };
515
209
  const Command = {
516
210
  ...{
517
211
  // delay initialisation until first use...
@@ -525,8 +219,7 @@ getBaseMrt, clientFor_, rtHooks) => {
525
219
  return {
526
220
  Command,
527
221
  useCommand,
528
- clientFor,
529
- legacy
222
+ clientFor
530
223
  };
531
224
  };
532
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWtlQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQXVELGdCQUFnQixFQUEwRSxNQUFNLHFCQUFxQixDQUFBO0FBQ25MLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDdkMsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQXVCLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFHeEgsT0FBTyxFQUFFLGFBQWEsRUFBd0IsTUFBTSwwQkFBMEIsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckUsT0FBTyxFQUF5QixnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFFMUQsT0FBTyxLQUFLLFdBQVcsTUFBTSx3Q0FBd0MsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsUUFBUSxFQUFvQixlQUFlLEVBQVksR0FBRyxFQUFFLEtBQUssRUFBb0IsTUFBTSxLQUFLLENBQUE7QUFDekcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ2xELE9BQU8sRUFBa0IsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDN0UsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQzdDLE9BQU8sRUFBMEIsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDekYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQy9DLE9BQU8sRUFB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
225
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWtlQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQXVELGdCQUFnQixFQUEwRSxNQUFNLHFCQUFxQixDQUFBO0FBQ25MLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDdkMsT0FBTyxFQUFnQixNQUFNLEVBQUUsSUFBSSxFQUFtQyxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFHaEcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRTFDLE9BQU8sS0FBSyxXQUFXLE1BQU0sd0NBQXdDLENBQUE7QUFDckUsT0FBTyxFQUFvQixlQUFlLEVBQUUsR0FBRyxFQUFvQixNQUFNLEtBQUssQ0FBQTtBQUM5RSxPQUFPLEVBQWtCLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRWhFLE9BQU8sRUFBMEIsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBNEIsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3JGLE9BQU8sRUFBMkMsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFHN0MsTUFBTSxVQUFVLEdBQUcsQ0FDakIsT0FBb0UsRUFDcEUsR0FBc0UsRUFDdEUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsU0FBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUksRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtBQThMN0YsTUFBTSxZQUFZLEdBQUcsWUFBWSxFQUFFLENBQUE7QUFFbkM7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
@@ -14,4 +14,4 @@ export declare const makeContextCertain: <T>() => {
14
14
  use: () => T & ({} | null);
15
15
  provide: (locale: T) => void;
16
16
  };
17
- //# sourceMappingURL=makeContext.d.ts.map
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNvbnRleHQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWtlQ29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsS0FBSyxZQUFZLEVBQVcsTUFBTSxLQUFLLENBQUE7QUFFeEQsZUFBTyxNQUFNLFdBQVcsRUFBRTtJQUN4QixDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHO1FBQ1gsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFBO1FBQ1osT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxJQUFJLENBQUE7S0FDN0IsQ0FBQTtJQUNELENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRztRQUNaLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxTQUFTLENBQUE7UUFDeEIsT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxJQUFJLENBQUE7S0FDN0IsQ0FBQTtDQU9GLENBQUE7QUFFRCxlQUFPLE1BQU0sYUFBYSxHQUFJLENBQUMsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLG9CQU1wRCxDQUFBO0FBRUQsZUFBTyxNQUFNLGtCQUFrQixHQUFJLENBQUM7SUFHaEMsR0FBRztJQUNILE9BQU8sV0FBVyxDQUFDO0NBRXRCLENBQUEifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"makeContext.d.ts","sourceRoot":"","sources":["../src/makeContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,YAAY,EAAW,MAAM,KAAK,CAAA;AAExD,eAAO,MAAM,WAAW,EAAE;IACxB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG;QACX,GAAG,EAAE,MAAM,CAAC,CAAA;QACZ,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAA;KAC7B,CAAA;IACD,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG;QACZ,GAAG,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;QACxB,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAA;KAC7B,CAAA;CAOF,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,oBAMpD,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,CAAC;;sBAId,CAAC;CAEtB,CAAA"}
1
+ {"version":3,"file":"makeContext.d.ts","sourceRoot":"","sources":["../src/makeContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,YAAY,EAAW,MAAM,KAAK,CAAA;AAExD,eAAO,MAAM,WAAW,EAAE;IACxB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG;QACX,GAAG,EAAE,MAAM,CAAC,CAAA;QACZ,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAA;KAC7B,CAAA;IACD,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG;QACZ,GAAG,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;QACxB,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAA;KAC7B,CAAA;CAOF,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,oBAMpD,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,CAAC;IAGhC,GAAG;IACH,OAAO,WAAW,CAAC;CAEtB,CAAA"}
@@ -18,4 +18,4 @@ export declare const makeIntl: <Locale extends string>(messages: Record<Locale,
18
18
  provide: (locale: Ref<NoInfer<Locale>, NoInfer<Locale>>) => void;
19
19
  };
20
20
  };
21
- //# sourceMappingURL=makeIntl.d.ts.map
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUludGwuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWtlSW50bC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQStCLEtBQUssVUFBVSxFQUFFLEtBQUssY0FBYyxFQUFFLEtBQUssaUJBQWlCLEVBQUUsS0FBSyxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRW5KLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUFFLEtBQUssT0FBTyxJQUFJLHdCQUF3QixFQUFFLEtBQUssYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDMUgsT0FBTyxFQUFFLEtBQUssR0FBRyxFQUFTLE1BQU0sS0FBSyxDQUFBO0FBSXJDLE1BQU0sV0FBVyxjQUFjLENBQUMsTUFBTSxTQUFTLE1BQU0sQ0FBRSxTQUFRLFVBQVUsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQUFHO0FBR3JHLE1BQU0sV0FBVyxTQUFTLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBRSxTQUFRLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDckYsVUFBVSxFQUFFLFVBQVUsQ0FBQTtDQUN2QjtBQUVELGVBQU8sTUFBTSxRQUFRLEdBQUksTUFBTSxTQUFTLE1BQU0sWUFDbEMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLGFBRXJDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7OztvQkF5QnZCLE1BQU0sQ0FBQyxPQUFPLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUMxQixNQUFNLENBQ2IsTUFBTSxFQUNOLGFBQWEsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQ25EO2dDQWdCb0IsQ0FDbkIsVUFBVSxFQUFFLGlCQUFpQixFQUM3QixNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLGFBQWEsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsRUFDM0UsSUFBSSxDQUFDLEVBQUUsd0JBQXdCLEtBQzVCLE1BQU07dUJBSXFCLFNBQVMsQ0FBQyxNQUFNLENBQUM7Ozs7OztDQUt0RCxDQUFBIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"makeIntl.d.ts","sourceRoot":"","sources":["../src/makeIntl.ts"],"names":[],"mappings":"AACA,OAAO,EAA+B,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEnJ,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,OAAO,IAAI,wBAAwB,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC1H,OAAO,EAAE,KAAK,GAAG,EAAS,MAAM,KAAK,CAAA;AAIrC,MAAM,WAAW,cAAc,CAAC,MAAM,SAAS,MAAM,CAAE,SAAQ,UAAU,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;CAAG;AAGrG,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IACrF,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,eAAO,MAAM,QAAQ,GAAI,MAAM,SAAS,MAAM,EAC5C,UAAU,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAEhD,WAAW,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;;;oBAyBvB,MAAM,CAAC,OAAO,QAAQ,EAAE,MAAM,CAAC,WAC1B,MAAM,CACb,MAAM,EACN,aAAa,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CACnD;gCAgBoB,CACnB,UAAU,EAAE,iBAAiB,EAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC3E,IAAI,CAAC,EAAE,wBAAwB,KAC5B,MAAM;uBAIqB,SAAS,CAAC,MAAM,CAAC;;;;;;CAKtD,CAAA"}
1
+ {"version":3,"file":"makeIntl.d.ts","sourceRoot":"","sources":["../src/makeIntl.ts"],"names":[],"mappings":"AACA,OAAO,EAA+B,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEnJ,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,OAAO,IAAI,wBAAwB,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC1H,OAAO,EAAE,KAAK,GAAG,EAAS,MAAM,KAAK,CAAA;AAIrC,MAAM,WAAW,cAAc,CAAC,MAAM,SAAS,MAAM,CAAE,SAAQ,UAAU,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;CAAG;AAGrG,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IACrF,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,eAAO,MAAM,QAAQ,GAAI,MAAM,SAAS,MAAM,YAClC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,aAErC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;;;oBAyBvB,MAAM,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,WAC1B,MAAM,CACb,MAAM,EACN,aAAa,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CACnD;gCAgBoB,CACnB,UAAU,EAAE,iBAAiB,EAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC3E,IAAI,CAAC,EAAE,wBAAwB,KAC5B,MAAM;uBAIqB,SAAS,CAAC,MAAM,CAAC;;;;;;CAKtD,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { Effect, type Layer } from "effect-app";
2
+ import { Commander, type CommanderImpl, CommanderStatic } from "./commander.js";
3
+ type X<X> = X;
4
+ export interface CommanderResolved<RT, RTHooks> extends X<typeof CommanderStatic>, Pick<CommanderImpl<RT, RTHooks>, "fn" | "wrap" | "alt" | "alt2"> {
5
+ }
6
+ export declare const makeUseCommand: <R = never, RTHooks = never>(rtHooks: Layer.Layer<RTHooks, never, R>) => Effect.Effect<CommanderResolved<R, RTHooks>, never, R | Commander>;
7
+ export {};
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZVVzZUNvbW1hbmQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWtlVXNlQ29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFL0UsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtBQUdiLE1BQU0sV0FBVyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUM1QyxTQUFRLENBQUMsQ0FBQyxPQUFPLGVBQWUsQ0FBQyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFLElBQUksR0FBRyxNQUFNLEdBQUcsS0FBSyxHQUFHLE1BQU0sQ0FBQztDQUVwRztBQUVELGVBQU8sTUFBTSxjQUFjLEdBQ2YsQ0FBQyxVQUFVLE9BQU8sd0hBYTdCLENBQUEifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"makeUseCommand.d.ts","sourceRoot":"","sources":["../src/makeUseCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAE/E,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAGb,MAAM,WAAW,iBAAiB,CAAC,EAAE,EAAE,OAAO,CAC5C,SAAQ,CAAC,CAAC,OAAO,eAAe,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;CAEpG;AAED,eAAO,MAAM,cAAc,GACf,CAAC,UAAU,OAAO,wHAa7B,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { Effect } from "effect-app";
2
+ import { Commander, CommanderStatic } from "./commander.js";
3
+ export const makeUseCommand = Effect.fnUntraced(function* (rtHooks) {
4
+ const cmndr = yield* Commander;
5
+ const runtime = yield* Effect.context();
6
+ const comm = cmndr(runtime, rtHooks);
7
+ const command = {
8
+ ...comm,
9
+ ...CommanderStatic
10
+ };
11
+ return command;
12
+ });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZVVzZUNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbWFrZVVzZUNvbW1hbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBYyxNQUFNLFlBQVksQ0FBQTtBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFzQixlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQVUvRSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FDN0MsUUFBUSxDQUFDLEVBQTZCLE9BQXVDO0lBQzNFLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQTtJQUM5QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFLLENBQUE7SUFFMUMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUVwQyxNQUFNLE9BQU8sR0FBa0M7UUFDN0MsR0FBRyxJQUFJO1FBQ1AsR0FBRyxlQUFlO0tBQ25CLENBQUE7SUFFRCxPQUFPLE9BQU8sQ0FBQTtBQUNoQixDQUFDLENBQ0YsQ0FBQSJ9