@effect-app/vue 0.130.0 → 0.131.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.
Files changed (54) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/_cjs/_global.cjs +1 -2
  3. package/_cjs/_global.cjs.map +1 -1
  4. package/_cjs/form.cjs +12 -14
  5. package/_cjs/form.cjs.map +1 -1
  6. package/_cjs/hooks.cjs +27 -190
  7. package/_cjs/hooks.cjs.map +1 -1
  8. package/_cjs/internal.cjs +6 -5
  9. package/_cjs/internal.cjs.map +1 -1
  10. package/_cjs/mutate.cjs +105 -0
  11. package/_cjs/mutate.cjs.map +1 -0
  12. package/_cjs/query.cjs +53 -28
  13. package/_cjs/query.cjs.map +1 -1
  14. package/_cjs/routeParams.cjs +9 -12
  15. package/_cjs/routeParams.cjs.map +1 -1
  16. package/_cjs/runtime.cjs +19 -22
  17. package/_cjs/runtime.cjs.map +1 -1
  18. package/_src/_global.ts +1 -10
  19. package/_src/form.ts +9 -12
  20. package/_src/hooks.ts +2 -323
  21. package/_src/internal.ts +9 -4
  22. package/_src/mutate.ts +163 -0
  23. package/_src/query.ts +103 -32
  24. package/_src/routeParams.ts +6 -3
  25. package/_src/runtime.ts +18 -13
  26. package/_src/swrv.bak +196 -0
  27. package/dist/_global.d.ts.map +1 -1
  28. package/dist/_global.js +2 -10
  29. package/dist/form.d.ts.map +1 -1
  30. package/dist/form.js +15 -17
  31. package/dist/hooks.d.ts.map +1 -1
  32. package/dist/hooks.js +3 -195
  33. package/dist/internal.d.ts +5 -4
  34. package/dist/internal.d.ts.map +1 -1
  35. package/dist/internal.js +5 -3
  36. package/dist/mutate.d.ts +43 -0
  37. package/dist/mutate.d.ts.map +1 -0
  38. package/dist/mutate.js +101 -0
  39. package/dist/query.d.ts.map +1 -1
  40. package/dist/query.js +62 -33
  41. package/dist/routeParams.d.ts.map +1 -1
  42. package/dist/routeParams.js +14 -15
  43. package/dist/runtime.d.ts +24 -23
  44. package/dist/runtime.d.ts.map +1 -1
  45. package/dist/runtime.js +27 -24
  46. package/package.json +13 -4
  47. package/tsconfig.json +1 -0
  48. package/tsconfig.json.bak +1 -0
  49. package/dist/_global.d.ts +0 -9
  50. package/dist/form.d.ts +0 -53
  51. package/dist/hooks.d.ts +0 -80
  52. package/dist/index.d.ts +0 -4
  53. package/dist/query.d.ts +0 -12
  54. package/dist/routeParams.d.ts +0 -14
package/dist/hooks.js CHANGED
@@ -1,197 +1,5 @@
1
- import * as tsplus_module_1 from "effect-app/client";
2
- import * as tsplus_module_2 from "effect/Cause";
3
- import * as tsplus_module_3 from "effect/Effect";
4
- import * as tsplus_module_4 from "effect-app/client/QueryResult";
5
- import * as tsplus_module_5 from "effect/Option";
6
- import * as tsplus_module_6 from "@effect-app/core/Function";
7
- import * as tsplus_module_7 from "effect/Exit";
8
- import * as tsplus_module_8 from "effect/Fiber";
9
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
10
- import { Done, Initial, Loading } from "effect-app/client";
11
- import { InterruptedException } from "effect/Cause";
12
- import * as Either from "effect/Either";
13
- import { FiberFailureCauseId, isFiberFailure } from "effect/Runtime";
14
- import * as swrv from "swrv";
15
- import { computed, ref, shallowRef } from "vue";
16
- import { run } from "./internal.js";
17
2
  export { isFailed, isInitializing, isSuccess } from "effect-app/client";
18
- // madness - workaround different import behavior on server and client
19
- const useSWRV = (swrv.default.default ? swrv.default.default : swrv.default);
20
- export const mutate = (swrv.default.mutate ? swrv.default.mutate : swrv.mutate);
21
- function swrToQuery(r) {
22
- if (r.error) {
23
- return r.isValidating
24
- ? tsplus_module_1.Refreshing.fail(r.error, r.data)
25
- : Done.fail(r.error, r.data);
26
- }
27
- if (r.data !== undefined) {
28
- return r.isValidating
29
- ? tsplus_module_1.Refreshing.succeed(r.data)
30
- : Done.succeed(r.data);
31
- }
32
- return r.isValidating ? new Loading() : new Initial();
33
- }
34
- export function useMutate(self) {
35
- const fn = () => run.value(self.handler).then((_) => _.body).catch((_) => {
36
- if (!isFiberFailure(_))
37
- throw _;
38
- const cause = _[FiberFailureCauseId];
39
- throw tsplus_module_2.squash(cause);
40
- });
41
- return () => mutate(self.mapPath, fn);
42
- }
43
- export function useMutateWithArg(self) {
44
- const fn = (arg) => run.value(self.handler(arg)).then((_) => _.body).catch((_) => {
45
- if (!isFiberFailure(_))
46
- throw _;
47
- const cause = _[FiberFailureCauseId];
48
- throw tsplus_module_2.squash(cause);
49
- });
50
- return (arg) => mutate(self.mapPath(arg), fn(arg));
51
- }
52
- export function useSafeQuery(self, // {
53
- // handler: (arg: Arg) => Effect<FetchResponse<A>, E, ApiConfig | HttpClient.Client.Default>
54
- // mapPath: (arg: Arg) => string
55
- // } | {
56
- // handler: Effect<FetchResponse<A>, E, ApiConfig | HttpClient.Client.Default>
57
- // mapPath: string
58
- // },
59
- arg, // Arg | WatchSource<Arg> | swrv.IConfig<A, fetcherFn<A>> | undefined,
60
- config // swrv.IConfig<A, fetcherFn<A>> | undefined
61
- ) {
62
- return tsplus_module_3.isEffect(self.handler)
63
- ? useSafeQuery_(self.mapPath, () => self.handler, arg)
64
- : useSafeQueryWithArg_(self.handler, self.mapPath, arg, config);
65
- }
66
- export function useSafeQueryWithArg_(self, mapPath, arg, config) {
67
- const arr = arg;
68
- const r = typeof arr === "function"
69
- ? {
70
- get value() {
71
- return arr();
72
- }
73
- }
74
- : ref(arg);
75
- return useSafeQuery_(computed(() => mapPath(r.value)), () => self(r.value), config);
76
- }
77
- export function useSafeQuery_(key, self, config) {
78
- // const [result, latestSuccess, execute] = make(self)
79
- // TODO: support with interruption
80
- // const sem = Semaphore.unsafeMake(1)
81
- // const lock = sem.withPermits(1)
82
- // let fib: Fiber.FiberContext<E, FetchResponse<A>> | undefined = undefined
83
- // const execute = self
84
- // const runNew = execute.fork()
85
- // .tap(newFiber =>
86
- // Effect.sync(() => {
87
- // fib = newFiber
88
- // })
89
- // )
90
- // const ex = lock(
91
- // Effect.suspend(() => {
92
- // return fib
93
- // ? Fiber.interrupt(fib).zipRight(runNew)
94
- // : runNew
95
- // })
96
- // ).flatMap(Fiber.await)
97
- // function execWithInterruption() {
98
- // return ex.provide(Layers)
99
- // .runPromise()
100
- // .catch(err => {
101
- // if (!Cause.isInterruptedException(err)) throw err
102
- // return undefined
103
- // })
104
- // }
105
- // const swr = useSWRV<A, E>(key, () => execWithInterruption().then(_ => _?.body as any)) // Effect.runPromise(self.provide(Layers))
106
- const swr = useSWRV(key, () => run
107
- .value(self())
108
- .then((_) => _.body)
109
- .catch((_) => {
110
- if (!isFiberFailure(_))
111
- throw _;
112
- const cause = _[FiberFailureCauseId];
113
- throw tsplus_module_2.squash(cause);
114
- }), config);
115
- const result = computed(() => swrToQuery({ data: swr.data.value, error: swr.error.value, isValidating: swr.isValidating.value })); // ref<QueryResult<E, A>>()
116
- const latestSuccess = computed(() => {
117
- const value = result.value;
118
- return tsplus_module_4.isSuccess(value)
119
- ? Either.isRight(value.current)
120
- ? value.current.right
121
- : tsplus_module_5.isSome(value.previous)
122
- ? value.previous.value
123
- : undefined
124
- : undefined;
125
- });
126
- return tsplus_module_6.tuple(result, latestSuccess, () => swr.mutate(), swr);
127
- }
128
- export function make(self) {
129
- const result = shallowRef(new Initial());
130
- const execute = tsplus_module_3.zipRight(tsplus_module_3.sync(() => {
131
- result.value = tsplus_module_4.isInitializing(result.value)
132
- ? new Loading()
133
- : new tsplus_module_1.Refreshing(result.value);
134
- }), tsplus_module_4.queryResult(self.map((_) => _.body)))
135
- .flatMap((r) => tsplus_module_3.sync(() => result.value = r));
136
- const latestSuccess = computed(() => {
137
- const value = result.value;
138
- return tsplus_module_4.hasValue(value)
139
- ? Either.isRight(value.current)
140
- ? value.current.right
141
- : tsplus_module_5.isSome(value.previous)
142
- ? value.previous.value
143
- : undefined
144
- : undefined;
145
- });
146
- return tsplus_module_6.tuple(result, latestSuccess, execute);
147
- }
148
- /**
149
- * Pass a function that returns an Effect, e.g from a client action, or an Effect
150
- * Returns a tuple with state ref and execution function which reports errors as Toast.
151
- */
152
- export const useMutation = (self) => {
153
- const state = ref({ _tag: "Initial" });
154
- function handleExit(exit) {
155
- return tsplus_module_3.sync(() => {
156
- if (tsplus_module_7.isSuccess(exit)) {
157
- state.value = { _tag: "Success", data: exit.value };
158
- return Either.right(exit.value);
159
- }
160
- const err = tsplus_module_2.failureOption(exit.cause);
161
- if (tsplus_module_5.isSome(err)) {
162
- state.value = { _tag: "Error", error: err.value };
163
- return Either.left(err.value);
164
- }
165
- const died = tsplus_module_2.dieOption(exit.cause);
166
- if (died.value) {
167
- throw died.value;
168
- }
169
- const interrupted = tsplus_module_2.interruptOption(exit.cause);
170
- if (interrupted.value) {
171
- throw new InterruptedException();
172
- }
173
- throw new Error("Invalid state");
174
- });
175
- }
176
- const exec = (fst, snd) => {
177
- let effect;
178
- let abortSignal;
179
- if (tsplus_module_3.isEffect(self.handler)) {
180
- effect = self.handler;
181
- abortSignal = fst;
182
- }
183
- else {
184
- effect = self.handler(fst);
185
- abortSignal = snd;
186
- }
187
- return run.value(tsplus_module_3.fork(tsplus_module_3.exit(tsplus_module_3.zipRight(tsplus_module_3.sync(() => {
188
- state.value = { _tag: "Loading" };
189
- }), effect)).flatMap(handleExit)).flatMap((f) => {
190
- const cancel = () => run.value(tsplus_module_8.interrupt(f));
191
- abortSignal?.addEventListener("abort", () => void cancel().catch(console.error));
192
- return tsplus_module_8.join(f);
193
- }));
194
- };
195
- return tsplus_module_6.tuple(state, exec);
196
- };
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9fc3JjL2hvb2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUNuRCxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEUsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUE7QUFHNUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLE1BQU0sS0FBSyxDQUFBO0FBQy9DLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFbkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFzQnZFLHNFQUFzRTtBQUN0RSxNQUFNLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBMkIsQ0FBQTtBQUN0RyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQTBCLENBQUE7QUFFeEcsU0FBUyxVQUFVLENBQ2pCLENBQXVFO0lBRXZFLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1osT0FBTyxDQUFDLENBQUMsWUFBWTtZQUNuQixDQUFDLENBQUMsZ0JBQUEsVUFBVSxDQUFDLElBQUksQ0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDeEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDdEMsQ0FBQztJQUNELElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN6QixPQUFPLENBQUMsQ0FBQyxZQUFZO1lBQ25CLENBQUMsQ0FBQyxnQkFBQSxVQUFVLENBQUMsT0FBTyxDQUFPLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ2hDLENBQUM7SUFFRCxPQUFPLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxFQUFFLENBQUE7QUFDdkQsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQ3ZCLElBQXNHO0lBRXRHLE1BQU0sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUNkLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ3RELElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQUUsTUFBTSxDQUFDLENBQUE7UUFDL0IsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUE7UUFDcEMsNkJBQU0sS0FBSyxFQUFPO0lBQ3BCLENBQUMsQ0FBQyxDQUFBO0lBQ0osT0FBTyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUN2QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixJQUdDO0lBRUQsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFRLEVBQUUsRUFBRSxDQUN0QixHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUMzRCxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztZQUFFLE1BQU0sQ0FBQyxDQUFBO1FBQy9CLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO1FBQ3BDLDZCQUFNLEtBQUssRUFBTztJQUNwQixDQUFDLENBQUMsQ0FBQTtJQUNKLE9BQU8sQ0FBQyxHQUFRLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO0FBQ3pELENBQUM7QUFtQkQsTUFBTSxVQUFVLFlBQVksQ0FDMUIsSUFBUyxFQUFFLElBQUk7QUFDZiw4RkFBOEY7QUFDOUYsa0NBQWtDO0FBQ2xDLFFBQVE7QUFDUixnRkFBZ0Y7QUFDaEYsb0JBQW9CO0FBQ3BCLEtBQUs7QUFDTCxHQUFTLEVBQUUsc0VBQXNFO0FBQ2pGLE1BQVksQ0FBQyw0Q0FBNEM7O0lBRXpELE9BQU8seUJBQWdCLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDbEMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDO1FBQ3RELENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFBO0FBQ25FLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLElBQXNGLEVBQ3RGLE9BQTZCLEVBQzdCLEdBQTJCLEVBQzNCLE1BQWtEO0lBRWxELE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQTtJQUNmLE1BQU0sQ0FBQyxHQUFtQixPQUFPLEdBQUcsS0FBSyxVQUFVO1FBQ2pELENBQUMsQ0FBQztZQUNBLElBQUksS0FBSztnQkFDUCxPQUFRLEdBQVcsRUFBRSxDQUFBO1lBQ3ZCLENBQUM7U0FDSztRQUNSLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDWixPQUFPLGFBQWEsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUE7QUFDckYsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQzNCLEdBQWlDLEVBQ2pDLElBQThFLEVBQzlFLE1BQWtEO0lBRWxELHNEQUFzRDtJQUV0RCxrQ0FBa0M7SUFDbEMsc0NBQXNDO0lBQ3RDLGtDQUFrQztJQUNsQywyRUFBMkU7SUFDM0UsdUJBQXVCO0lBQ3ZCLGdDQUFnQztJQUNoQyxxQkFBcUI7SUFDckIsMEJBQTBCO0lBQzFCLHVCQUF1QjtJQUN2QixTQUFTO0lBQ1QsTUFBTTtJQUVOLG1CQUFtQjtJQUNuQiwyQkFBMkI7SUFDM0IsaUJBQWlCO0lBQ2pCLGdEQUFnRDtJQUNoRCxpQkFBaUI7SUFDakIsT0FBTztJQUNQLHlCQUF5QjtJQUN6QixvQ0FBb0M7SUFDcEMsOEJBQThCO0lBQzlCLG9CQUFvQjtJQUNwQixzQkFBc0I7SUFDdEIsMERBQTBEO0lBQzFELHlCQUF5QjtJQUN6QixTQUFTO0lBQ1QsSUFBSTtJQUVKLG9JQUFvSTtJQUNwSSxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQU8sR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUNsQyxHQUFHO1NBQ0EsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2IsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ25CLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ1gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7WUFBRSxNQUFNLENBQUMsQ0FBQTtRQUMvQixNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtRQUNwQyw2QkFBTSxLQUFLLEVBQU87SUFDcEIsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDZixNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQzNCLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FDbkcsQ0FBQSxDQUFDLDJCQUEyQjtJQUM3QixNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ2xDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUE7UUFDMUIsT0FBTywwQkFBQSxLQUFLLENBQVk7WUFDdEIsQ0FBQyxDQUFDLEFBbkxJLE1BQU0sU0FtTFYsS0FBSyxDQUFDLE9BQU8sQ0FBVTtnQkFDdkIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSztnQkFDckIsQ0FBQyxDQUFDLHVCQUFBLEtBQUssQ0FBQyxRQUFRLENBQVM7b0JBQ3pCLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUs7b0JBQ3RCLENBQUMsQ0FBQyxTQUFTO1lBQ2IsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtJQUNmLENBQUMsQ0FBQyxDQUFBO0lBRUYsT0FBTyxnQkFBQSxLQUFLLENBQUMsTUFBTSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUE7QUFDOUQsQ0FBQztBQUVELE1BQU0sVUFBVSxJQUFJLENBQVUsSUFBb0M7SUFDaEUsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLElBQUksT0FBTyxFQUF1QixDQUFDLENBQUE7SUFFN0QsTUFBTSxPQUFPLEdBQUcseUJBQUEscUJBQ1IsR0FBRyxFQUFFO1FBQ1QsTUFBTSxDQUFDLEtBQUssR0FBRywrQkFBQSxNQUFNLENBQUMsS0FBSyxDQUFpQjtZQUMxQyxDQUFDLENBQUMsSUFBSSxPQUFPLEVBQUU7WUFDZixDQUFDLENBQUMsb0JBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNsQyxDQUFDLENBQUMsOEJBQ1EsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFlO1NBQy9DLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMscUJBQVksR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBRXRELE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDbEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQTtRQUMxQixPQUFPLHlCQUFBLEtBQUssQ0FBVztZQUNyQixDQUFDLENBQUMsQUE3TUksTUFBTSxTQTZNVixLQUFLLENBQUMsT0FBTyxDQUFVO2dCQUN2QixDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLO2dCQUNyQixDQUFDLENBQUMsdUJBQUEsS0FBSyxDQUFDLFFBQVEsQ0FBUztvQkFDekIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSztvQkFDdEIsQ0FBQyxDQUFDLFNBQVM7WUFDYixDQUFDLENBQUMsU0FBUyxDQUFBO0lBQ2YsQ0FBQyxDQUFDLENBQUE7SUFFRixPQUFPLGdCQUFBLEtBQUssQ0FBQyxNQUFNLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQyxDQUFBO0FBQzlDLENBQUM7QUFzQkQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQWNwQixDQUNGLElBSUMsRUFDRCxFQUFFO0lBQ0YsTUFBTSxLQUFLLEdBQThCLEdBQUcsQ0FBdUIsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQVEsQ0FBQTtJQUU5RixTQUFTLFVBQVUsQ0FBQyxJQUFnQjtRQUNsQyxPQUFPLHFCQUFZLEdBQUcsRUFBRTtZQUN0QixJQUFJLDBCQUFBLElBQUksQ0FBWSxFQUFFLENBQUM7Z0JBQ3JCLEtBQUssQ0FBQyxLQUFLLEdBQUcsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7Z0JBQ25ELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDakMsQ0FBQztZQUVELE1BQU0sR0FBRyxpQ0FBRyxJQUFJLENBQUMsS0FBSyxDQUFjLENBQUE7WUFDcEMsSUFBSSx1QkFBQSxHQUFHLENBQVMsRUFBRSxDQUFDO2dCQUNqQixLQUFLLENBQUMsS0FBSyxHQUFHLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFBO2dCQUNqRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQy9CLENBQUM7WUFFRCxNQUFNLElBQUksNkJBQUcsSUFBSSxDQUFDLEtBQUssQ0FBVSxDQUFBO1lBQ2pDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNmLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQTtZQUNsQixDQUFDO1lBQ0QsTUFBTSxXQUFXLG1DQUFHLElBQUksQ0FBQyxLQUFLLENBQWdCLENBQUE7WUFDOUMsSUFBSSxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3RCLE1BQU0sSUFBSSxvQkFBb0IsRUFBRSxDQUFBO1lBQ2xDLENBQUM7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFBO1FBQ2xDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFHLENBQUMsR0FBcUIsRUFBRSxHQUFpQixFQUFFLEVBQUU7UUFDeEQsSUFBSSxNQUEyRCxDQUFBO1FBQy9ELElBQUksV0FBb0MsQ0FBQTtRQUN4QyxJQUFJLHlCQUFnQixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNsQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQWMsQ0FBQTtZQUM1QixXQUFXLEdBQUcsR0FBOEIsQ0FBQTtRQUM5QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQVEsQ0FBQyxDQUFBO1lBQy9CLFdBQVcsR0FBRyxHQUFHLENBQUE7UUFDbkIsQ0FBQztRQUVELE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FDZCxxQkFBQSxxQkFBQSx5QkFBQSxxQkFDUSxHQUFHLEVBQUU7WUFDVCxLQUFLLENBQUMsS0FBSyxHQUFHLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFBO1FBQ25DLENBQUMsQ0FBQyxFQUNRLE1BQU0sQ0FBQyxFQUVoQixPQUFPLENBQUMsVUFBVSxDQUFDLEVBRW5CLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2IsTUFBTSxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssMkJBQUMsQ0FBQyxFQUFXLENBQUE7WUFDM0MsV0FBVyxFQUFFLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtZQUNoRiw0QkFBTyxDQUFDLEVBQUs7UUFDZixDQUFDLENBQUMsQ0FDTCxDQUFBO0lBQ0gsQ0FBQyxDQUFBO0lBRUQsT0FBTyxnQkFBQSxLQUFLLENBQ1YsS0FBSyxFQUNMLElBQUksQ0FDTCxDQUFBO0FBQ0gsQ0FBQyxDQUFBIn0=
3
+ export * from "./mutate.js";
4
+ export * from "./query.js";
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9fc3JjL2hvb2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN2RSxjQUFjLGFBQWEsQ0FBQTtBQUMzQixjQUFjLFlBQVksQ0FBQSJ9
@@ -1,9 +1,10 @@
1
- import { Effect } from "effect/Effect";
2
- import type { ApiConfig } from "effect-app/client";
3
1
  import type * as HttpClient from "@effect/platform/Http/Client";
4
- import type { Runtime } from "effect/Runtime";
2
+ import type { Effect } from "effect-app";
3
+ import { Runtime } from "effect-app";
4
+ import type { ApiConfig } from "effect-app/client";
5
5
  export declare const run: {
6
6
  value<E, A>(_: Effect<A, E, ApiConfig | HttpClient.Client.Default>): Promise<A>;
7
7
  };
8
- export declare function initRuntime<A>(rt: Runtime<A | ApiConfig | HttpClient.Client.Default>): void;
8
+ export declare function initRuntime<A>(rt: Runtime.Runtime<A | ApiConfig | HttpClient.Client.Default>): void;
9
+ export declare const makeQueryKey: (name: string) => [string, ...string[]];
9
10
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../_src/internal.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE7C,eAAO,MAAM,GAAG;mBACC,OAAO,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,WAAW,MAAM,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;CAGhF,CAAA;AACD,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAIpF"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../_src/internal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAQ,OAAO,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,eAAO,MAAM,GAAG;mBACC,OAAO,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,WAAW,MAAM,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;CAGhF,CAAA;AACD,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAK5F;AAED,eAAO,MAAM,YAAY,SAAU,MAAM,0BACyC,CAAA"}
package/dist/internal.js CHANGED
@@ -1,12 +1,14 @@
1
- import * as tsplus_module_1 from "effect/Runtime";
1
+ import { pipe, Runtime } from "effect-app";
2
2
  export const run = {
3
3
  value(_) {
4
4
  throw new Error("Runtime not initialized, please run `initRuntime` first");
5
5
  }
6
6
  };
7
7
  export function initRuntime(rt) {
8
+ const runPromise = Runtime.runPromise(rt);
8
9
  run.value = function (self) {
9
- return tsplus_module_1.runPromise(rt)(self);
10
+ return runPromise(self);
10
11
  };
11
12
  }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9fc3JjL2ludGVybmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFJQSxNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUc7SUFDakIsS0FBSyxDQUFPLENBQXNEO1FBQ2hFLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQTtJQUM1RSxDQUFDO0NBQ0YsQ0FBQTtBQUNELE1BQU0sVUFBVSxXQUFXLENBQUksRUFBc0Q7SUFDbkYsR0FBRyxDQUFDLEtBQUssR0FBRyxVQUFlLElBQXlEO1FBQ2xGLE9BQU8sMkJBQUEsRUFBRSxFQUFZLElBQUksQ0FBQyxDQUFBO0lBQzVCLENBQUMsQ0FBQTtBQUNILENBQUMifQ==
13
+ export const makeQueryKey = (name) => pipe(name.split("/"), (split) => split.map((_) => "$" + _)).join("/").split(".");
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9fc3JjL2ludGVybmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRzFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRztJQUNqQixLQUFLLENBQU8sQ0FBc0Q7UUFDaEUsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsQ0FBQyxDQUFBO0lBQzVFLENBQUM7Q0FDRixDQUFBO0FBQ0QsTUFBTSxVQUFVLFdBQVcsQ0FBSSxFQUE4RDtJQUMzRixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQ3pDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsVUFBZSxJQUF5RDtRQUNsRixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN6QixDQUFDLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUEifQ==
@@ -0,0 +1,43 @@
1
+ import type * as HttpClient from "@effect/platform/Http/Client";
2
+ import { Effect } from "effect-app";
3
+ import type { ApiConfig, FetchResponse, QueryResult } from "effect-app/client";
4
+ import * as Either from "effect/Either";
5
+ import type { ComputedRef, Ref } from "vue";
6
+ export type WatchSource<T = any> = Ref<T> | ComputedRef<T> | (() => T);
7
+ export declare function make<R, E, A>(self: Effect<FetchResponse<A>, E, R>): readonly [import("vue").ShallowRef<QueryResult<E, A>>, ComputedRef<A | undefined>, Effect.Effect<QueryResult<E, A>, never, R>];
8
+ export interface MutationInitial {
9
+ readonly _tag: "Initial";
10
+ }
11
+ export interface MutationLoading {
12
+ readonly _tag: "Loading";
13
+ }
14
+ export interface MutationSuccess<A> {
15
+ readonly _tag: "Success";
16
+ readonly data: A;
17
+ }
18
+ export interface MutationError<E> {
19
+ readonly _tag: "Error";
20
+ readonly error: E;
21
+ }
22
+ export type MutationResult<E, A> = MutationInitial | MutationLoading | MutationSuccess<A> | MutationError<E>;
23
+ /**
24
+ * Pass a function that returns an Effect, e.g from a client action, or an Effect
25
+ * Returns a tuple with state ref and execution function which reports errors as Toast.
26
+ */
27
+ export declare const useSafeMutation: {
28
+ <I, E, A>(self: {
29
+ handler: (i: I) => Effect<A, E, ApiConfig | HttpClient.Client.Default>;
30
+ name: string;
31
+ }): readonly [
32
+ Readonly<Ref<MutationResult<E, A>>>,
33
+ (i: I, abortSignal?: AbortSignal) => Promise<Either.Either<E, A>>
34
+ ];
35
+ <E, A>(self: {
36
+ handler: Effect<A, E, ApiConfig | HttpClient.Client.Default>;
37
+ name: string;
38
+ }): readonly [
39
+ Readonly<Ref<MutationResult<E, A>>>,
40
+ (abortSignal?: AbortSignal) => Promise<Either.Either<E, A>>
41
+ ];
42
+ };
43
+ //# sourceMappingURL=mutate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutate.d.ts","sourceRoot":"","sources":["../_src/mutate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAE/D,OAAO,EAAS,MAAM,EAAuB,MAAM,YAAY,CAAA;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE9E,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAI3C,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;AAEtE,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,kIAwBjE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CACzB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB;AAED,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;CAClB;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI,eAAe,GAAG,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;AAE5G;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE;IAC5B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;QAClH,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,CACE,CAAC,EAAE,CAAC,EACJ,WAAW,CAAC,EAAE,WAAW,KACtB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KAClC,CAAA;IACD,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;QACrG,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,CACE,WAAW,CAAC,EAAE,WAAW,KACtB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KAClC,CAAA;CAoFF,CAAA"}
package/dist/mutate.js ADDED
@@ -0,0 +1,101 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { tuple } from "@effect-app/core/Function";
3
+ import { useQueryClient } from "@tanstack/vue-query";
4
+ import { Cause, Effect, Exit, Fiber, Option } from "effect-app";
5
+ import { hasValue, Initial, isInitializing, Loading, queryResult, Refreshing } from "effect-app/client";
6
+ import { InterruptedException } from "effect/Cause";
7
+ import * as Either from "effect/Either";
8
+ import { computed, ref, shallowRef } from "vue";
9
+ import { makeQueryKey, run } from "./internal.js";
10
+ export function make(self) {
11
+ const result = shallowRef(new Initial());
12
+ const execute = Effect
13
+ .sync(() => {
14
+ result.value = isInitializing(result.value)
15
+ ? new Loading()
16
+ : new Refreshing(result.value);
17
+ })
18
+ .andThen(queryResult(self.map((_) => _.body)))
19
+ .flatMap((r) => Effect.sync(() => result.value = r));
20
+ const latestSuccess = computed(() => {
21
+ const value = result.value;
22
+ return hasValue(value)
23
+ ? Either.isRight(value.current)
24
+ ? value.current.right
25
+ : Option.isSome(value.previous)
26
+ ? value.previous.value
27
+ : undefined
28
+ : undefined;
29
+ });
30
+ return tuple(result, latestSuccess, execute);
31
+ }
32
+ /**
33
+ * Pass a function that returns an Effect, e.g from a client action, or an Effect
34
+ * Returns a tuple with state ref and execution function which reports errors as Toast.
35
+ */
36
+ export const useSafeMutation = (self) => {
37
+ const queryClient = useQueryClient();
38
+ const state = ref({ _tag: "Initial" });
39
+ function handleExit(exit) {
40
+ return Effect.sync(() => {
41
+ if (Exit.isSuccess(exit)) {
42
+ state.value = { _tag: "Success", data: exit.value };
43
+ return Either.right(exit.value);
44
+ }
45
+ const err = Cause.failureOption(exit.cause);
46
+ if (Option.isSome(err)) {
47
+ state.value = { _tag: "Error", error: err.value };
48
+ return Either.left(err.value);
49
+ }
50
+ const died = Cause.dieOption(exit.cause);
51
+ if (Option.isSome(died)) {
52
+ throw died.value;
53
+ }
54
+ const interrupted = Cause.interruptOption(exit.cause);
55
+ if (Option.isSome(interrupted)) {
56
+ throw new InterruptedException();
57
+ }
58
+ throw new Error("Invalid state");
59
+ });
60
+ }
61
+ const exec = (fst, snd) => {
62
+ let effect;
63
+ let abortSignal;
64
+ if (Effect.isEffect(self.handler)) {
65
+ effect = self.handler;
66
+ abortSignal = fst;
67
+ }
68
+ else {
69
+ effect = self.handler(fst);
70
+ abortSignal = snd;
71
+ }
72
+ return run.value(Effect
73
+ .sync(() => {
74
+ state.value = { _tag: "Loading" };
75
+ })
76
+ .andThen(effect)
77
+ .tap(() => Effect.suspend(() => {
78
+ const key = makeQueryKey(self.name);
79
+ const ns = key.filter((_) => _.startsWith("$"));
80
+ const nses = [];
81
+ for (let i = 0; i < ns.length; i++) {
82
+ nses.push(ns.slice(0, i + 1).join("/"));
83
+ }
84
+ return Effect.promise(() => queryClient.invalidateQueries({ queryKey: [ns[0]] }));
85
+ // TODO: more efficient invalidation, including args etc
86
+ // return Effect.promise(() => queryClient.invalidateQueries({
87
+ // predicate: (_) => nses.includes(_.queryKey.filter((_) => _.startsWith("$")).join("/"))
88
+ // }))
89
+ }))
90
+ .pipe(Effect.exit)
91
+ .flatMap(handleExit)
92
+ .pipe(Effect.fork)
93
+ .flatMap((f) => {
94
+ const cancel = () => run.value(Fiber.interrupt(f));
95
+ abortSignal?.addEventListener("abort", () => void cancel().catch(console.error));
96
+ return Fiber.join(f);
97
+ }));
98
+ };
99
+ return tuple(state, exec);
100
+ };
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXV0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vX3NyYy9tdXRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUVqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDL0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFdkcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ25ELE9BQU8sS0FBSyxNQUFNLE1BQU0sZUFBZSxDQUFBO0FBRXZDLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLEtBQUssQ0FBQTtBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUlqRCxNQUFNLFVBQVUsSUFBSSxDQUFVLElBQW9DO0lBQ2hFLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxJQUFJLE9BQU8sRUFBdUIsQ0FBQyxDQUFBO0lBRTdELE1BQU0sT0FBTyxHQUFHLE1BQU07U0FDbkIsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNULE1BQU0sQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDekMsQ0FBQyxDQUFDLElBQUksT0FBTyxFQUFFO1lBQ2YsQ0FBQyxDQUFDLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNsQyxDQUFDLENBQUM7U0FDRCxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxH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
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../_src/query.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,MAAM,EAAW,MAAM,YAAY,CAAA;AAE5C,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,KAAK,CAAA;AAGrD,eAAO,MAAM,YAAY;mBAIZ,CAAC,KACH,OACH,cAAc,CAAC,CAAC,EAChB,CAAC,EACD,SAAS,GAAG,WAAW,OAAO,CAC/B;mBACc,CAAC,KAAK,MAAM;;aAGlB,OACP,cAAc,CAAC,CAAC,EAChB,CAAC,EACD,SAAS,GAAG,WAAW,OAAO,CAC/B;aACQ,MAAM;SAEb,CAAC,GAAG,YAAY,CAAC,CAAC,yPA6EzB,CAAA"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../_src/query.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpG,OAAO,EAAS,MAAM,EAA2B,MAAM,YAAY,CAAA;AAEnE,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,KAAK,CAAA;AAGnD,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAC/B,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IACpE,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACb,EACD,OAAO,CAAC,EAAE,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,GACxD,SAAS;IACV,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,WAAW,CAAC,CAAC,GAAG,SAAS,CAAC;IAC1B,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,SAAS,KAAK,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;CACjF,CAAA;AACD,wBAAgB,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EACpC,IAAI,EAAE;IACJ,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IAClF,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAA;IAC7B,IAAI,EAAE,MAAM,CAAA;CACb,EACD,GAAG,EAAE,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,EAC3B,OAAO,CAAC,EAAE,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,GACxD,SAAS;IACV,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,WAAW,CAAC,CAAC,GAAG,SAAS,CAAC;IAC1B,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,SAAS,KAAK,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;CACjF,CAAA;AAsCD,eAAO,MAAM,aAAa;mBAIb,CAAC,KACH,OACH,cAAc,CAAC,CAAC,EAChB,CAAC,EACD,SAAS,GAAG,WAAW,OAAO,CAC/B;mBACc,CAAC,KAAK,MAAM;UACrB,MAAM;;aAGH,OACP,cAAc,CAAC,CAAC,EAChB,CAAC,EACD,SAAS,GAAG,WAAW,OAAO,CAC/B;aACQ,MAAM;UACT,MAAM;SAEV,CAAC,GAAG,YAAY,CAAC,CAAC,YACf,qBAAqB,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,sJA6D7C,CAAA"}
package/dist/query.js CHANGED
@@ -1,17 +1,43 @@
1
- import * as tsplus_module_1 from "effect/Cause";
2
- import * as tsplus_module_2 from "effect-app/client/QueryResult";
3
- import * as tsplus_module_3 from "effect/Either";
4
- import * as tsplus_module_4 from "effect/Option";
5
- /* eslint-disable @typescript-eslint/no-explicit-any */
6
- /* eslint-disable @typescript-eslint/no-unsafe-call */
7
- /* eslint-disable @typescript-eslint/no-unsafe-return */
8
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
9
1
  import { useQuery } from "@tanstack/vue-query";
10
- import { Effect, Runtime } from "effect-app";
11
- import { Done, Initial, Loading, Refreshing } from "effect-app/client";
2
+ import { Cause, Effect, Either, Option, Runtime } from "effect-app";
3
+ import { Done, Initial, isSuccess, Loading, Refreshing } from "effect-app/client";
12
4
  import { computed, ref } from "vue";
13
- import { run } from "./internal.js";
14
- export const useSafeQuery = (q, arg) => {
5
+ import { makeQueryKey, run } from "./internal.js";
6
+ export function useSafeQuery(self,
7
+ /*
8
+ q:
9
+ | {
10
+ handler: (
11
+ req: I
12
+ ) => Effect<
13
+ FetchResponse<A>,
14
+ E,
15
+ ApiConfig | HttpClient.Default
16
+ >
17
+ mapPath: (req: I) => string
18
+ name: string
19
+ }
20
+ | {
21
+ handler: Effect<
22
+ FetchResponse<A>,
23
+ E,
24
+ ApiConfig | HttpClient.Default
25
+ >
26
+ mapPath: string
27
+ name: string
28
+ },
29
+ */
30
+ argOrOptions, options) {
31
+ return Effect.isEffect(self.handler)
32
+ ? useSafeQuery_(self, undefined, argOrOptions)
33
+ : useSafeQuery_(self, argOrOptions, options);
34
+ }
35
+ // TODO: options
36
+ // declare function useQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: UndefinedInitialQueryOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: QueryClient): UseQueryReturnType<TData, TError>;
37
+ // declare function useQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: DefinedInitialQueryOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: QueryClient): UseQueryDefinedReturnType<TData, TError>;
38
+ // declare function useQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: UseQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>, queryClient?: QueryClient): UseQueryReturnType<TData, TError>;
39
+ export const useSafeQuery_ = (q, arg, options = {} // TODO
40
+ ) => {
15
41
  const arr = arg;
16
42
  const req = !arg
17
43
  ? undefined
@@ -22,9 +48,11 @@ export const useSafeQuery = (q, arg) => {
22
48
  }
23
49
  }
24
50
  : ref(arg);
51
+ const queryKey = makeQueryKey(q.name);
25
52
  const r = useQuery(Effect.isEffect(q.handler)
26
53
  ? {
27
- queryKey: [computed(() => q.mapPath)],
54
+ ...options,
55
+ queryKey,
28
56
  queryFn: () => run
29
57
  .value(q.handler)
30
58
  .then((_) => _.body)
@@ -32,11 +60,12 @@ export const useSafeQuery = (q, arg) => {
32
60
  if (!Runtime.isFiberFailure(_))
33
61
  throw _;
34
62
  const cause = _[Runtime.FiberFailureCauseId];
35
- throw tsplus_module_1.squash(cause);
63
+ throw Cause.squash(cause);
36
64
  })
37
65
  }
38
66
  : {
39
- queryKey: [computed(() => q.mapPath(req.value))],
67
+ ...options,
68
+ queryKey: [...queryKey, req],
40
69
  queryFn: () => run
41
70
  .value(q.handler(req.value))
42
71
  .then((_) => _.body)
@@ -44,22 +73,9 @@ export const useSafeQuery = (q, arg) => {
44
73
  if (!Runtime.isFiberFailure(_))
45
74
  throw _;
46
75
  const cause = _[Runtime.FiberFailureCauseId];
47
- throw tsplus_module_1.squash(cause);
76
+ throw Cause.squash(cause);
48
77
  })
49
78
  });
50
- function swrToQuery(r) {
51
- if (r.error) {
52
- return r.isValidating
53
- ? Refreshing.fail(r.error, r.data)
54
- : Done.fail(r.error, r.data);
55
- }
56
- if (r.data !== undefined) {
57
- return r.isValidating
58
- ? Refreshing.succeed(r.data)
59
- : Done.succeed(r.data);
60
- }
61
- return r.isValidating ? new Loading() : new Initial();
62
- }
63
79
  const result = computed(() => swrToQuery({
64
80
  error: r.error.value,
65
81
  data: r.data.value,
@@ -67,14 +83,27 @@ export const useSafeQuery = (q, arg) => {
67
83
  }));
68
84
  const latestSuccess = computed(() => {
69
85
  const value = result.value;
70
- return tsplus_module_2.isSuccess(value)
71
- ? tsplus_module_3.isRight(value.current)
86
+ return isSuccess(value)
87
+ ? Either.isRight(value.current)
72
88
  ? value.current.right
73
- : tsplus_module_4.isSome(value.previous)
89
+ : Option.isSome(value.previous)
74
90
  ? value.previous.value
75
91
  : undefined
76
92
  : undefined;
77
93
  });
78
94
  return [result, latestSuccess, r.refetch];
79
95
  };
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9fc3JjL3F1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSx1REFBdUQ7QUFDdkQsc0RBQXNEO0FBQ3RELHdEQUF3RDtBQUN4RCw0REFBNEQ7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzVDLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUV0RSxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBb0IsTUFBTSxLQUFLLENBQUE7QUFDckQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUVuQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FDMUIsQ0FrQkcsRUFDSCxHQUF3QixFQUN4QixFQUFFO0lBQ0YsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFBO0lBQ2YsTUFBTSxHQUFHLEdBQWlCLENBQUMsR0FBRztRQUM1QixDQUFDLENBQUMsU0FBUztRQUNYLENBQUMsQ0FBQyxPQUFPLEdBQUcsS0FBSyxVQUFVO1lBQzNCLENBQUMsQ0FBRTtnQkFDRCxJQUFJLEtBQUs7b0JBQ1AsT0FBUSxHQUFXLEVBQUUsQ0FBQTtnQkFDdkIsQ0FBQzthQUNNO1lBQ1QsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNaLE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FDaEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ3hCLENBQUMsQ0FBQztZQUNBLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUNa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
96
+ function swrToQuery(r) {
97
+ if (r.error) {
98
+ return r.isValidating
99
+ ? Refreshing.fail(r.error, r.data)
100
+ : Done.fail(r.error, r.data);
101
+ }
102
+ if (r.data !== undefined) {
103
+ return r.isValidating
104
+ ? Refreshing.succeed(r.data)
105
+ : Done.succeed(r.data);
106
+ }
107
+ return r.isValidating ? new Loading() : new Initial();
108
+ }
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9fc3JjL3F1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNuRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR2pGLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sS0FBSyxDQUFBO0FBRW5DLE9BQU8sRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBMkJqRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixJQUFTO0FBQ1Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFzQkU7QUFDRixZQUFrQixFQUNsQixPQUFhO0lBRWIsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDbEMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLFlBQVksQ0FBQztRQUM5QyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDaEQsQ0FBQztBQUVELGdCQUFnQjtBQUNoQixzUkFBc1I7QUFDdFIsMlJBQTJSO0FBQzNSLHVSQUF1UjtBQUN2UixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FDM0IsQ0FvQkcsRUFDSCxHQUF3QixFQUN4QixVQUErQyxFQUFFLENBQUMsT0FBTztFQUN6RCxFQUFFO0lBQ0YsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFBO0lBQ2YsTUFBTSxHQUFHLEdBQWlCLENBQUMsR0FBRztRQUM1QixDQUFDLENBQUMsU0FBUztR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
@@ -1 +1 @@
1
- {"version":3,"file":"routeParams.d.ts","sourceRoot":"","sources":["../_src/routeParams.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,6BAM/D;AAED,eAAO,MAAM,cAAc,gFAA2C,CAAA;AAEtE,eAAO,MAAM,QAAQ,YAAa,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,+JAMzD,CAAA;AAED,eAAO,MAAM,eAAe,YAAa,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,+JAMhE,CAAA;AAED,wBAAgB,sBAAsB,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,EACxF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,CAAC,EAAE,GAAG,GACL;KACA,CAAC,IAAI,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5C,CAYA;AAED,wBAAgB,gBAAgB,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,EAClF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,CAAC,EAAE,GAAG,GACL;KACA,CAAC,IAAI,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACpC,CAYA"}
1
+ {"version":3,"file":"routeParams.d.ts","sourceRoot":"","sources":["../_src/routeParams.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,6BAM/D;AAED,eAAO,MAAM,cAAc,+DAA2C,CAAA;AAEtE,eAAO,MAAM,QAAQ,YAAa,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,sGAMzD,CAAA;AAED,eAAO,MAAM,eAAe,YAAa,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,sGAMhE,CAAA;AAED,wBAAgB,sBAAsB,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,EACxF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,CAAC,EAAE,GAAG,GACL;KACA,CAAC,IAAI,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5C,CAYA;AAED,wBAAgB,gBAAgB,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,EAClF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,CAAC,EAAE,GAAG,GACL;KACA,CAAC,IAAI,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACpC,CAYA"}