@voltro/client 0.56.0 → 0.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +395 -0
- package/dist/form.js +1 -1
- package/dist/{formData-DtlF8t8h.js → formData-He_L4ozH.js} +8 -5
- package/dist/index.d.ts +175 -5
- package/dist/index.js +1052 -949
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import { C as e, S as t, _ as n, a as r, b as i, c as a, d as o, f as s, g as c, h as l, i as u, l as d, m as f, n as p, o as m, p as h, r as g, s as _, t as v, u as y, v as b, w as x, x as
|
|
2
|
-
import { createContext as
|
|
3
|
-
import { Cause as
|
|
4
|
-
import * as
|
|
5
|
-
import { RpcClient as
|
|
6
|
-
import { applyRowPatch as
|
|
7
|
-
import * as
|
|
8
|
-
import { jsx as
|
|
9
|
-
import { FormApi as
|
|
10
|
-
import { useStore as
|
|
11
|
-
import { ArrayFormatter as
|
|
1
|
+
import { C as e, S as t, _ as n, a as r, b as i, c as a, d as o, f as s, g as c, h as l, i as u, l as d, m as f, n as p, o as m, p as h, r as g, s as _, t as v, u as y, v as b, w as x, x as S, y as ee } from "./formData-He_L4ozH.js";
|
|
2
|
+
import { createContext as C, createElement as w, useCallback as T, useContext as E, useDebugValue as te, useEffect as D, useMemo as O, useRef as k, useState as A, useSyncExternalStore as j } from "react";
|
|
3
|
+
import { Cause as M, Context as ne, Duration as re, Effect as N, Exit as P, Fiber as F, Layer as I, ManagedRuntime as L, Schedule as R, Schema as ie, Stream as z } from "effect";
|
|
4
|
+
import * as ae from "@effect/platform/Headers";
|
|
5
|
+
import { RpcClient as B, RpcSerialization as oe } from "@effect/rpc";
|
|
6
|
+
import { applyRowPatch as se, fieldIssuesOf as ce, pluginTag as le } from "@voltro/protocol";
|
|
7
|
+
import * as V from "@effect/platform/Socket";
|
|
8
|
+
import { jsx as ue } from "react/jsx-runtime";
|
|
9
|
+
import { FormApi as de } from "@tanstack/form-core";
|
|
10
|
+
import { useStore as fe } from "@tanstack/react-store";
|
|
11
|
+
import { ArrayFormatter as pe } from "effect/ParseResult";
|
|
12
12
|
//#region src/traceBus.ts
|
|
13
|
-
var
|
|
14
|
-
for (let t of
|
|
13
|
+
var H = /* @__PURE__ */ new Set(), me = (e) => {
|
|
14
|
+
for (let t of H) try {
|
|
15
15
|
t(e);
|
|
16
16
|
} catch {}
|
|
17
|
-
},
|
|
18
|
-
|
|
19
|
-
}),
|
|
17
|
+
}, he = (e) => (H.add(e), () => {
|
|
18
|
+
H.delete(e);
|
|
19
|
+
}), U = (e) => {
|
|
20
20
|
let t = (e) => e == null ? "null" : typeof e == "string" ? JSON.stringify(e) : typeof e == "number" || typeof e == "boolean" ? String(e) : Array.isArray(e) ? `[${e.map(t).join(",")}]` : typeof e == "object" ? `{${Object.keys(e).sort().map((n) => `${JSON.stringify(n)}:${t(e[n])}`).join(",")}}` : String(e);
|
|
21
21
|
return t(e);
|
|
22
|
-
},
|
|
22
|
+
}, ge = Object.freeze({
|
|
23
23
|
data: void 0,
|
|
24
24
|
revision: -1,
|
|
25
25
|
emittedAt: void 0,
|
|
26
26
|
error: void 0,
|
|
27
27
|
pendingPatches: 0
|
|
28
|
-
}),
|
|
28
|
+
}), _e = 5e3, ve = (e, t, n) => {
|
|
29
29
|
if (e._tag === "error") return !1;
|
|
30
30
|
if (e._tag === "delta") return !0;
|
|
31
31
|
try {
|
|
@@ -33,18 +33,18 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
33
33
|
} catch {
|
|
34
34
|
return !1;
|
|
35
35
|
}
|
|
36
|
-
},
|
|
36
|
+
}, ye = 0, be = () => `patch_${++ye}`, W = (e, t) => {
|
|
37
37
|
let n = e;
|
|
38
38
|
for (let e of t.split(".")) {
|
|
39
39
|
if (typeof n != "object" || !n) return;
|
|
40
40
|
n = n[e];
|
|
41
41
|
}
|
|
42
42
|
return n;
|
|
43
|
-
},
|
|
43
|
+
}, xe = (e, t, n) => {
|
|
44
44
|
let r = t.split("."), i = (e) => typeof e == "object" && e && !Array.isArray(e) ? { ...e } : {}, a = i(e), o = a;
|
|
45
45
|
for (let e = 0; e < r.length - 1; e += 1) o[r[e]] = i(o[r[e]]), o = o[r[e]];
|
|
46
46
|
return o[r[r.length - 1]] = n, a;
|
|
47
|
-
},
|
|
47
|
+
}, Se = (e, t) => {
|
|
48
48
|
let n = e.by ?? "id", r = e.identify ? e.identify(t) : typeof t[n] == "string" ? t[n] : typeof t.id == "string" ? t.id : void 0, i = r === void 0 ? [] : Array.isArray(r) ? r : [r];
|
|
49
49
|
return i.length === 0 ? null : new Set(i);
|
|
50
50
|
}, Ce = (e, t, n) => {
|
|
@@ -60,11 +60,11 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
60
60
|
optimistic: !0
|
|
61
61
|
}, s = e.order ?? "append";
|
|
62
62
|
return (e) => {
|
|
63
|
-
let t = Array.isArray(
|
|
64
|
-
return
|
|
63
|
+
let t = Array.isArray(W(e, r)) ? W(e, r) : [];
|
|
64
|
+
return xe(e ?? {}, r, s === "append" ? [...t, o] : [o, ...t]);
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
|
-
let a =
|
|
67
|
+
let a = Se(e, t);
|
|
68
68
|
if (a === null) return null;
|
|
69
69
|
if (e.op === "update") {
|
|
70
70
|
let n = e.shapeItem ?? e.shape, o = n ? (e) => ({
|
|
@@ -78,18 +78,18 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
78
78
|
optimistic: !0
|
|
79
79
|
});
|
|
80
80
|
return (e) => {
|
|
81
|
-
let t =
|
|
81
|
+
let t = W(e, r);
|
|
82
82
|
if (!Array.isArray(t)) {
|
|
83
83
|
if (typeof t != "object" || !t) return e;
|
|
84
84
|
let n = t;
|
|
85
|
-
return a.has(n[i]) ?
|
|
85
|
+
return a.has(n[i]) ? xe(e, r, o(n)) : e;
|
|
86
86
|
}
|
|
87
|
-
return
|
|
87
|
+
return xe(e, r, t.map((e) => a.has(e[i]) ? o(e) : e));
|
|
88
88
|
};
|
|
89
89
|
}
|
|
90
90
|
return (e) => {
|
|
91
|
-
let t = Array.isArray(
|
|
92
|
-
return
|
|
91
|
+
let t = Array.isArray(W(e, r)) ? W(e, r) : [];
|
|
92
|
+
return xe(e, r, t.filter((e) => !a.has(e[i])));
|
|
93
93
|
};
|
|
94
94
|
}, we = (e, t, n) => {
|
|
95
95
|
if (e.op === "insert") return n;
|
|
@@ -145,7 +145,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
145
145
|
};
|
|
146
146
|
}
|
|
147
147
|
case "update": {
|
|
148
|
-
let n =
|
|
148
|
+
let n = Se(e, t);
|
|
149
149
|
if (n === null) return null;
|
|
150
150
|
let r = e.shape, i = r ? (e) => ({
|
|
151
151
|
...r(t, e),
|
|
@@ -168,7 +168,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
168
168
|
};
|
|
169
169
|
}
|
|
170
170
|
case "delete": {
|
|
171
|
-
let n =
|
|
171
|
+
let n = Se(e, t);
|
|
172
172
|
return n === null ? null : (e) => {
|
|
173
173
|
if (!Array.isArray(e)) {
|
|
174
174
|
let t = e;
|
|
@@ -189,17 +189,17 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
189
189
|
this.inactiveTtlMs = e.inactiveTtlMs ?? De, this.onChangeHook = e.onChange, this.errorBus = e.errorBus, this.mirror = e.mirror, this.mergeCell = e.mergeCell;
|
|
190
190
|
}
|
|
191
191
|
subscribe(e, t, n, r, i = {}) {
|
|
192
|
-
let a =
|
|
192
|
+
let a = U(e), o = typeof e[0] == "string" ? e[0] : void 0, s = this.entries.get(a);
|
|
193
193
|
return s && s.evictionTimer !== null && (clearTimeout(s.evictionTimer), s.evictionTimer = null), s ? (s.fiber === null && (s.fetch = t, s.runtime = n, this.startFiber(s, t, n)), s.source === void 0 && i.source !== void 0 && (s.source = i.source)) : s = this.create(a, o, t, n, i.source), s.subscribers.add(r), {
|
|
194
194
|
getSnapshot: () => this.getSnapshot(a),
|
|
195
195
|
unsubscribe: () => this.unsubscribe(a, r)
|
|
196
196
|
};
|
|
197
197
|
}
|
|
198
198
|
update(e, t, n) {
|
|
199
|
-
let r =
|
|
199
|
+
let r = U(e), i = typeof e[0] == "string" ? e[0] : void 0, a = this.entries.get(r);
|
|
200
200
|
a ||= this.createStub(r, i);
|
|
201
201
|
let o = {
|
|
202
|
-
id:
|
|
202
|
+
id: be(),
|
|
203
203
|
mutationId: n,
|
|
204
204
|
reducer: t
|
|
205
205
|
};
|
|
@@ -213,7 +213,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
213
213
|
for (let i of this.entries.values()) {
|
|
214
214
|
if (i.tag !== e) continue;
|
|
215
215
|
let a = {
|
|
216
|
-
id: `forTag-${++
|
|
216
|
+
id: `forTag-${++ye}`,
|
|
217
217
|
mutationId: n,
|
|
218
218
|
reducer: t
|
|
219
219
|
};
|
|
@@ -230,12 +230,12 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
230
230
|
confirmByMutation(e) {
|
|
231
231
|
let t = !1;
|
|
232
232
|
for (let n of this.entries.values()) for (let r of n.state.patches) r.mutationId === e && r.confirmed !== !0 && (r.confirmed = !0, t = !0);
|
|
233
|
-
t && setTimeout(() => this.resyncUnechoedMutation(e),
|
|
233
|
+
t && setTimeout(() => this.resyncUnechoedMutation(e), _e);
|
|
234
234
|
}
|
|
235
235
|
resyncUnechoedMutation(e) {
|
|
236
236
|
for (let t of this.entries.values()) {
|
|
237
237
|
if (!t.state.patches.some((t) => t.mutationId === e && t.confirmed === !0)) continue;
|
|
238
|
-
let n = t.tag ?? t.key, r = `optimistic patch for ${n} got no superseding server event within ${
|
|
238
|
+
let n = t.tag ?? t.key, r = `optimistic patch for ${n} got no superseding server event within ${_e}ms — the write is confirmed, so the preview is KEPT. Check reactivity for this query's source table.`;
|
|
239
239
|
this.errorBus?.emit({
|
|
240
240
|
source: "subscription",
|
|
241
241
|
tag: n,
|
|
@@ -248,7 +248,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
248
248
|
}
|
|
249
249
|
}
|
|
250
250
|
autoApply(e, t, n) {
|
|
251
|
-
let r = `optimistic-${n}-${++
|
|
251
|
+
let r = `optimistic-${n}-${++ye}`;
|
|
252
252
|
for (let i of e) {
|
|
253
253
|
for (let e of this.entries.values()) {
|
|
254
254
|
if (!(Array.isArray(e.source) ? e.source.includes(i.table) : e.source === i.table)) continue;
|
|
@@ -295,10 +295,10 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
295
295
|
n.state.patches = n.state.patches.filter((e) => e.id !== t), n.state.patches.length !== r && this.invalidate(n);
|
|
296
296
|
}
|
|
297
297
|
peek(e) {
|
|
298
|
-
return this.getSnapshot(
|
|
298
|
+
return this.getSnapshot(U(e));
|
|
299
299
|
}
|
|
300
300
|
getEntry(e) {
|
|
301
|
-
return this.entries.get(
|
|
301
|
+
return this.entries.get(U(e));
|
|
302
302
|
}
|
|
303
303
|
size() {
|
|
304
304
|
return this.entries.size;
|
|
@@ -317,7 +317,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
317
317
|
return e;
|
|
318
318
|
}
|
|
319
319
|
destroy(e) {
|
|
320
|
-
for (let t of this.entries.values()) t.evictionTimer !== null && clearTimeout(t.evictionTimer), t.fiber && e.runFork(
|
|
320
|
+
for (let t of this.entries.values()) t.evictionTimer !== null && clearTimeout(t.evictionTimer), t.fiber && e.runFork(F.interrupt(t.fiber));
|
|
321
321
|
this.entries.clear();
|
|
322
322
|
}
|
|
323
323
|
refreshAll(e) {
|
|
@@ -325,7 +325,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
325
325
|
}
|
|
326
326
|
reissue(e, t, n = !0) {
|
|
327
327
|
if (!e.fetch) return;
|
|
328
|
-
e.fiber && t.runFork(
|
|
328
|
+
e.fiber && t.runFork(F.interrupt(e.fiber)), e.fiber = null;
|
|
329
329
|
let r = e.state.patches, i = e.state.base, a = e.state.baseRevision;
|
|
330
330
|
e.state = this.freshState(), e.state.patches = r, n || (e.state.base = i, e.state.baseRevision = a), this.startFiber(e, e.fetch, t);
|
|
331
331
|
}
|
|
@@ -399,28 +399,31 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
399
399
|
};
|
|
400
400
|
}
|
|
401
401
|
startFiber(e, t, n) {
|
|
402
|
-
let r = e.tag ?? e.key, i = t(), a =
|
|
402
|
+
let r = e.tag ?? e.key, i = t(), a = z.unwrapScoped(N.currentSpan.pipe(N.catchAll(() => N.succeed(void 0)), N.map((t) => (t && (e.traceId = t.traceId, me({
|
|
403
403
|
traceId: t.traceId,
|
|
404
404
|
spanId: t.spanId,
|
|
405
405
|
source: "subscription",
|
|
406
406
|
tag: r
|
|
407
|
-
})), i)))).pipe(
|
|
407
|
+
})), i)))).pipe(z.withSpan(`client.subscription.${r}`, { attributes: { "rpc.tag": r } })), o = e.state.baseRevision >= 0 ? e.state.baseRevision : void 0, s = a.pipe(z.runForEach((t) => N.sync(() => {
|
|
408
408
|
let n = e.state.base;
|
|
409
|
-
if (t._tag === "snapshot") e.state.base = t.data, e.state.baseRevision = t.revision, e.state.baseEmittedAt = void 0, e.state.baseError = void 0,
|
|
410
|
-
|
|
409
|
+
if (t._tag === "snapshot") e.state.base = t.data, e.state.baseRevision = t.revision, e.state.baseEmittedAt = void 0, e.state.baseError = void 0, this.errorBus?.emitSuccess({
|
|
410
|
+
source: "subscription",
|
|
411
|
+
tag: e.tag ?? e.key
|
|
412
|
+
}), t.computed === !0 && (e.computed = !0);
|
|
413
|
+
else if (t._tag === "error") e.state.baseError = M.fail(t.error), typeof t.revision == "number" && (e.state.baseRevision = t.revision);
|
|
411
414
|
else {
|
|
412
415
|
let n = e.state.base;
|
|
413
|
-
Array.isArray(n) && (e.state.base =
|
|
416
|
+
Array.isArray(n) && (e.state.base = se(n, t.patch, this.mergeCell === void 0 ? {} : { mergeCell: this.mergeCell })), e.state.baseRevision = t.revision, e.state.baseEmittedAt = t.emittedAt, e.state.baseError = void 0;
|
|
414
417
|
}
|
|
415
|
-
e.state.patches.some((e) => e.confirmed === !0) &&
|
|
418
|
+
e.state.patches.some((e) => e.confirmed === !0) && ve(t, n, e.state.base) && (e.state.patches = e.state.patches.filter((e) => e.confirmed !== !0)), this.mirror !== void 0 && t._tag !== "error" && this.mirror.save(e.key, {
|
|
416
419
|
tag: e.tag,
|
|
417
420
|
data: e.state.base,
|
|
418
421
|
revision: e.state.baseRevision
|
|
419
422
|
}).catch(() => {}), this.invalidate(e);
|
|
420
423
|
})));
|
|
421
|
-
e.fiber = n.runFork(o === void 0 ? s : s.pipe(
|
|
422
|
-
if (
|
|
423
|
-
let n =
|
|
424
|
+
e.fiber = n.runFork(o === void 0 ? s : s.pipe(N.locallyWith(B.currentHeaders, (e) => ae.set(e, "voltro-resume-from", String(o))))), e.fiber.addObserver((t) => {
|
|
425
|
+
if (P.isFailure(t) && !P.isInterrupted(t) && (e.state.baseRevision === -1 && (e.state.baseError = t.cause, this.invalidate(e)), this.errorBus)) {
|
|
426
|
+
let n = M.squash(t.cause);
|
|
424
427
|
this.errorBus.emit({
|
|
425
428
|
source: "subscription",
|
|
426
429
|
tag: e.tag ?? e.key,
|
|
@@ -437,7 +440,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
437
440
|
}
|
|
438
441
|
getSnapshot(e) {
|
|
439
442
|
let t = this.entries.get(e);
|
|
440
|
-
if (!t) return
|
|
443
|
+
if (!t) return ge;
|
|
441
444
|
if (t.state.cachedSnapshot !== null) return t.state.cachedSnapshot;
|
|
442
445
|
let n = t.state.base;
|
|
443
446
|
if (n !== void 0 && t.state.patches.length > 0) for (let e of t.state.patches) n = e.reducer(n);
|
|
@@ -457,7 +460,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
457
460
|
scheduleEviction(e) {
|
|
458
461
|
e.evictionTimer !== null && clearTimeout(e.evictionTimer), e.evictionTimer = setTimeout(() => {
|
|
459
462
|
let t = this.entries.get(e.key);
|
|
460
|
-
t && t.subscribers.size === 0 && (t.fiber &&
|
|
463
|
+
t && t.subscribers.size === 0 && (t.fiber && N.runFork(F.interrupt(t.fiber)), this.entries.delete(e.key));
|
|
461
464
|
}, this.inactiveTtlMs);
|
|
462
465
|
}
|
|
463
466
|
}, ke = class extends Oe {
|
|
@@ -467,8 +470,21 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
467
470
|
unsubscribe: () => {}
|
|
468
471
|
};
|
|
469
472
|
}
|
|
470
|
-
}, Ae =
|
|
473
|
+
}, Ae = /* @__PURE__ */ new Set(), je = (e) => {
|
|
474
|
+
for (let t of Ae) try {
|
|
475
|
+
t(e);
|
|
476
|
+
} catch {}
|
|
477
|
+
}, Me = (e) => (Ae.add(e), () => {
|
|
478
|
+
Ae.delete(e);
|
|
479
|
+
}), Ne = (e, t) => {
|
|
480
|
+
je({
|
|
481
|
+
error: e,
|
|
482
|
+
source: "manual",
|
|
483
|
+
...t ? { context: t } : {}
|
|
484
|
+
});
|
|
485
|
+
}, Pe = class {
|
|
471
486
|
#e = /* @__PURE__ */ new Set();
|
|
487
|
+
#t = /* @__PURE__ */ new Set();
|
|
472
488
|
on(e) {
|
|
473
489
|
return this.#e.add(e), () => {
|
|
474
490
|
this.#e.delete(e);
|
|
@@ -478,51 +494,69 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
478
494
|
for (let t of this.#e) try {
|
|
479
495
|
t(e);
|
|
480
496
|
} catch {}
|
|
497
|
+
je({
|
|
498
|
+
error: e.error,
|
|
499
|
+
source: `rpc.${e.source}`,
|
|
500
|
+
context: {
|
|
501
|
+
rpcTag: e.tag,
|
|
502
|
+
...e.traceId === void 0 ? {} : { traceId: e.traceId }
|
|
503
|
+
}
|
|
504
|
+
});
|
|
505
|
+
}
|
|
506
|
+
onSuccess(e) {
|
|
507
|
+
return this.#t.add(e), () => {
|
|
508
|
+
this.#t.delete(e);
|
|
509
|
+
};
|
|
481
510
|
}
|
|
482
|
-
|
|
511
|
+
emitSuccess(e) {
|
|
512
|
+
for (let t of this.#t) try {
|
|
513
|
+
t(e);
|
|
514
|
+
} catch {}
|
|
515
|
+
}
|
|
516
|
+
}, Fe = C(null), Ie = () => {
|
|
483
517
|
throw Error("Voltro: rpc / cache calls are not invokable on a not-yet-resolved api — either during SSR, or in the client boot window before the api client resolves");
|
|
484
|
-
},
|
|
485
|
-
get: (e, t) =>
|
|
518
|
+
}, Le = new Proxy(() => Ie(), {
|
|
519
|
+
get: (e, t) => Le,
|
|
486
520
|
has: () => !0,
|
|
487
|
-
apply: () =>
|
|
488
|
-
}),
|
|
489
|
-
|
|
490
|
-
},
|
|
491
|
-
|
|
492
|
-
},
|
|
493
|
-
runtime: { runPromiseExit: () => Promise.resolve(
|
|
521
|
+
apply: () => Ie()
|
|
522
|
+
}), Re = Symbol.for("@voltro/client/ssrDescriptors"), ze = globalThis, Be = ze[Re] ?? (ze[Re] = { byApi: /* @__PURE__ */ new Map() }), Ve = (e, t) => {
|
|
523
|
+
Be.byApi.set(e, t);
|
|
524
|
+
}, He = (e) => Be.byApi.get(e), Ue = () => {
|
|
525
|
+
Be.byApi.clear();
|
|
526
|
+
}, We = {
|
|
527
|
+
runtime: { runPromiseExit: () => Promise.resolve(P.die(/* @__PURE__ */ Error("Voltro: mutations are not invokable during SSR"))) },
|
|
494
528
|
cache: new ke(),
|
|
495
|
-
client:
|
|
529
|
+
client: Le,
|
|
496
530
|
descriptors: {},
|
|
497
531
|
inspectBaseUrl: "",
|
|
498
|
-
errorBus: new
|
|
499
|
-
},
|
|
532
|
+
errorBus: new Pe()
|
|
533
|
+
}, Ge = {
|
|
500
534
|
get: (e) => {
|
|
501
|
-
let t =
|
|
502
|
-
return t === void 0 ?
|
|
503
|
-
...
|
|
535
|
+
let t = He(e);
|
|
536
|
+
return t === void 0 ? We : {
|
|
537
|
+
...We,
|
|
504
538
|
descriptors: t
|
|
505
539
|
};
|
|
506
540
|
},
|
|
507
541
|
names: []
|
|
508
|
-
},
|
|
509
|
-
|
|
510
|
-
},
|
|
511
|
-
let e =
|
|
512
|
-
return e ? (
|
|
513
|
-
G = null, !(
|
|
514
|
-
}, 0)),
|
|
542
|
+
}, Ke = !1, qe = !1, G = null, Je = () => {
|
|
543
|
+
Ke = !1, qe = !1, G !== null && (clearTimeout(G), G = null);
|
|
544
|
+
}, Ye = () => {
|
|
545
|
+
let e = E(Fe);
|
|
546
|
+
return e ? (qe || (qe = !0, G !== null && (clearTimeout(G), G = null)), e) : (typeof window < "u" && !Ke && !qe && G === null && process.env.NODE_ENV !== "production" && (G = setTimeout(() => {
|
|
547
|
+
G = null, !(Ke || qe) && (Ke = !0, console.warn("useFrameworkRuntimes: no <FrameworkRuntimesProvider> in the tree — returning a loading baseline (subscriptions read `undefined`, mutations are no-ops). If this is not an intentional lazy/conditional mount, mount your app via @voltro/web mount() or wrap the subtree in <VoltroRuntimeProvider>."));
|
|
548
|
+
}, 0)), Ge);
|
|
515
549
|
}, K = (e) => {
|
|
516
|
-
let t =
|
|
517
|
-
return
|
|
550
|
+
let t = Ye(), n = t.demand;
|
|
551
|
+
return D(() => {
|
|
518
552
|
n?.(e);
|
|
519
553
|
}, [n, e]), t.get(e);
|
|
520
|
-
},
|
|
554
|
+
}, Xe = (e) => typeof e.runtime?.runFork != "function", Ze = async (e) => {
|
|
521
555
|
let { name: t, wsUrl: n, group: r, headers: i, webSocketConstructor: a } = e;
|
|
522
|
-
class o extends
|
|
523
|
-
let s =
|
|
556
|
+
class o extends ne.Tag(`@voltro/client/AppClient/${t}`)() {}
|
|
557
|
+
let s = I.succeed(V.WebSocketConstructor, (e, t) => a(e, t)), c = B.layerProtocolSocket().pipe(I.provide(oe.layerJson), I.provide(V.layerWebSocket(n)), I.provide(s)), l = typeof i == "function" ? await i() : i, u = I.scoped(o, B.make(r)).pipe(I.provide(c)), d = l ? I.locallyScoped(B.currentHeaders, ae.fromInput(l)) : I.empty, f = L.make(I.merge(u, d));
|
|
524
558
|
try {
|
|
525
|
-
let e = await f.runPromise(o), t = new
|
|
559
|
+
let e = await f.runPromise(o), t = new Pe();
|
|
526
560
|
return {
|
|
527
561
|
runtime: f,
|
|
528
562
|
client: e,
|
|
@@ -532,7 +566,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
532
566
|
} catch (e) {
|
|
533
567
|
throw f.dispose(), e;
|
|
534
568
|
}
|
|
535
|
-
},
|
|
569
|
+
}, Qe = (e) => Math.min(500 * 2 ** Math.min(e - 1, 4), 5e3), $e = () => ({
|
|
536
570
|
resolved: null,
|
|
537
571
|
retryToken: 0,
|
|
538
572
|
failureCount: 0,
|
|
@@ -541,15 +575,15 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
541
575
|
everOpened: !1,
|
|
542
576
|
wedgeStop: null,
|
|
543
577
|
subjectMayHaveChanged: !1
|
|
544
|
-
}),
|
|
578
|
+
}), et = (e) => {
|
|
545
579
|
e.wedgeStop !== null && (e.wedgeStop(), e.wedgeStop = null);
|
|
546
|
-
},
|
|
580
|
+
}, tt = (e) => {
|
|
547
581
|
e.cache.destroy(e.runtime), e.runtime.dispose();
|
|
548
|
-
},
|
|
549
|
-
let t = e.apis, n = e.buildClient, r = e.onChange, i = e.retryDelayMs ??
|
|
582
|
+
}, nt = (e) => {
|
|
583
|
+
let t = e.apis, n = e.buildClient, r = e.onChange, i = e.retryDelayMs ?? Qe, a = e.stableWindowMs ?? 5e3, o = e.scheduler?.setTimeout ?? ((e, t) => setTimeout(e, t)), s = e.scheduler?.clearTimeout ?? ((e) => {
|
|
550
584
|
clearTimeout(e);
|
|
551
585
|
}), c = e.scheduler?.queueMicrotask ?? queueMicrotask, l = e.onReconnecting, u = e.wedgeBackstop, d = /* @__PURE__ */ new Map();
|
|
552
|
-
for (let e of t) d.set(e.name,
|
|
586
|
+
for (let e of t) d.set(e.name, $e());
|
|
553
587
|
let f = !1, p = /* @__PURE__ */ new Set(), m = (e, t) => {
|
|
554
588
|
let n = o(() => {
|
|
555
589
|
p.delete(n), e();
|
|
@@ -575,7 +609,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
575
609
|
if (!t) return;
|
|
576
610
|
let r = t.generation, i = () => {
|
|
577
611
|
if (f || t.generation !== r) return;
|
|
578
|
-
t.everOpened = !0,
|
|
612
|
+
t.everOpened = !0, et(t), t.retryToken++;
|
|
579
613
|
let e = t.failureCount;
|
|
580
614
|
m(() => {
|
|
581
615
|
f || t.failureCount === e && (t.failureCount = 0);
|
|
@@ -586,11 +620,11 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
586
620
|
try {
|
|
587
621
|
let a = await n(e, r, i, o);
|
|
588
622
|
if (f || t.generation !== r) {
|
|
589
|
-
|
|
623
|
+
tt(a);
|
|
590
624
|
return;
|
|
591
625
|
}
|
|
592
626
|
let s = t.resolved;
|
|
593
|
-
s && !t.subjectMayHaveChanged && a.cache.seedStaleFrom(s.cache), t.subjectMayHaveChanged = !1, t.resolved = a, t.reconnectStatusDispose &&= (t.reconnectStatusDispose(), null), h(), s &&
|
|
627
|
+
s && !t.subjectMayHaveChanged && a.cache.seedStaleFrom(s.cache), t.subjectMayHaveChanged = !1, t.resolved = a, t.reconnectStatusDispose &&= (t.reconnectStatusDispose(), null), h(), s && tt(s);
|
|
594
628
|
} catch {
|
|
595
629
|
if (f || t.generation !== r) return;
|
|
596
630
|
g(e);
|
|
@@ -598,7 +632,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
598
632
|
}, v = (e) => {
|
|
599
633
|
if (!f) for (let n of t) {
|
|
600
634
|
let t = d.get(n.name);
|
|
601
|
-
t && (e && (t.subjectMayHaveChanged = !0), t.retryToken += 1, t.generation += 1, t.failureCount = 0,
|
|
635
|
+
t && (e && (t.subjectMayHaveChanged = !0), t.retryToken += 1, t.generation += 1, t.failureCount = 0, et(t), _(n));
|
|
602
636
|
}
|
|
603
637
|
};
|
|
604
638
|
return t.length === 0 ? (r(/* @__PURE__ */ new Map(), !0), {
|
|
@@ -615,7 +649,7 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
615
649
|
f = !0;
|
|
616
650
|
for (let e of p) s(e);
|
|
617
651
|
p.clear();
|
|
618
|
-
for (let [, e] of d) e.resolved &&
|
|
652
|
+
for (let [, e] of d) e.resolved && tt(e.resolved), e.reconnectStatusDispose && e.reconnectStatusDispose(), et(e);
|
|
619
653
|
d.clear();
|
|
620
654
|
}
|
|
621
655
|
},
|
|
@@ -626,8 +660,8 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
626
660
|
v(!1);
|
|
627
661
|
}
|
|
628
662
|
});
|
|
629
|
-
},
|
|
630
|
-
let r =
|
|
663
|
+
}, rt = ({ apis: e, children: t, demand: n }) => {
|
|
664
|
+
let r = O(() => ({
|
|
631
665
|
get: (t) => {
|
|
632
666
|
let n = e.get(t);
|
|
633
667
|
if (!n) {
|
|
@@ -639,45 +673,45 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
639
673
|
names: Array.from(e.keys()),
|
|
640
674
|
...n === void 0 ? {} : { demand: n }
|
|
641
675
|
}), [e]);
|
|
642
|
-
return /* @__PURE__ */
|
|
676
|
+
return /* @__PURE__ */ ue(Fe.Provider, {
|
|
643
677
|
value: r,
|
|
644
678
|
children: t
|
|
645
679
|
});
|
|
646
|
-
},
|
|
647
|
-
let e = globalThis, t = e[
|
|
680
|
+
}, it = Symbol.for("@voltro/client/storeStorageProvider"), at = () => {
|
|
681
|
+
let e = globalThis, t = e[it];
|
|
648
682
|
if (t !== void 0) return t;
|
|
649
683
|
let n = {
|
|
650
684
|
provider: void 0,
|
|
651
685
|
used: !1
|
|
652
686
|
};
|
|
653
|
-
return e[
|
|
654
|
-
},
|
|
687
|
+
return e[it] = n, n;
|
|
688
|
+
}, ot = (e) => {
|
|
655
689
|
if (typeof window > "u") return null;
|
|
656
690
|
try {
|
|
657
691
|
return (e === "session" ? window.sessionStorage : window.localStorage) ?? null;
|
|
658
692
|
} catch {
|
|
659
693
|
return null;
|
|
660
694
|
}
|
|
661
|
-
},
|
|
662
|
-
let t =
|
|
695
|
+
}, st = (e) => {
|
|
696
|
+
let t = at();
|
|
663
697
|
t.used && e !== null && console.warn("[voltro] setStoreStorage() was called after a persisted store had already read. That store booted against the previous backing store and will not be re-read. Install storage before the first render — on React Native, after awaiting hydrate()."), t.provider = e ?? void 0;
|
|
664
|
-
},
|
|
665
|
-
let t =
|
|
666
|
-
return t.used = !0, (t.provider ??
|
|
667
|
-
},
|
|
668
|
-
let e =
|
|
698
|
+
}, ct = (e) => {
|
|
699
|
+
let t = at();
|
|
700
|
+
return t.used = !0, (t.provider ?? ot)(e);
|
|
701
|
+
}, lt = () => {
|
|
702
|
+
let e = at();
|
|
669
703
|
e.provider = void 0, e.used = !1;
|
|
670
|
-
},
|
|
704
|
+
}, ut = (e, t) => {
|
|
671
705
|
if (Object.is(e, t)) return !0;
|
|
672
706
|
if (typeof e != "object" || typeof t != "object" || e === null || t === null || Array.isArray(e) !== Array.isArray(t)) return !1;
|
|
673
707
|
let n = Object.keys(e), r = Object.keys(t);
|
|
674
708
|
if (n.length !== r.length) return !1;
|
|
675
709
|
for (let r of n) if (!Object.prototype.hasOwnProperty.call(t, r) || !Object.is(e[r], t[r])) return !1;
|
|
676
710
|
return !0;
|
|
677
|
-
},
|
|
678
|
-
|
|
679
|
-
},
|
|
680
|
-
let r =
|
|
711
|
+
}, dt = 50, ft = /* @__PURE__ */ new Set(), pt = (e, t) => {
|
|
712
|
+
ft.has(e) || (ft.add(e), console.warn(t));
|
|
713
|
+
}, mt = "\0global", ht = null, gt = (e, t, n) => {
|
|
714
|
+
let r = ht?.() ?? null;
|
|
681
715
|
if (r === null) return n;
|
|
682
716
|
let i = n;
|
|
683
717
|
for (let n of r.seeds) n.store === e && n.key === t && (i = {
|
|
@@ -685,9 +719,9 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
685
719
|
...n.value
|
|
686
720
|
});
|
|
687
721
|
return i;
|
|
688
|
-
},
|
|
722
|
+
}, _t = (e, t) => {
|
|
689
723
|
let n = e(), r = /* @__PURE__ */ new Set(), i = 0, a = 0, o, s, c = () => {
|
|
690
|
-
if (i >=
|
|
724
|
+
if (i >= dt) throw i = 0, Error(`defineStore: notification depth exceeded ${dt} — a subscriber writes a NEW value every time it is notified, so the store can never settle. Look for a listener calling set() with something derived from the current state without converging.`);
|
|
691
725
|
i += 1;
|
|
692
726
|
try {
|
|
693
727
|
for (let e of [...r]) e();
|
|
@@ -708,20 +742,20 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
708
742
|
if (typeof i?.then == "function") throw a === 1 && o !== void 0 && (n = o), --a, a === 0 && (o = void 0, s = void 0), Error(`defineStore: batch('${e}') was given an async function. A batch is synchronous — everything after the first await would land outside it. Await the work first, then batch the writes: \`const r = await load(); store.batch('${e}', () => { … })\`.`);
|
|
709
743
|
if (--a, a > 0) return;
|
|
710
744
|
let l = o, u = s;
|
|
711
|
-
o = void 0, s = void 0, !
|
|
745
|
+
o = void 0, s = void 0, !ut(l, n) && (t(l, n, u), c());
|
|
712
746
|
},
|
|
713
747
|
set: (e, r) => {
|
|
714
748
|
let i = typeof e == "function" ? e(n) : {
|
|
715
749
|
...n,
|
|
716
750
|
...e
|
|
717
751
|
};
|
|
718
|
-
if (
|
|
752
|
+
if (ut(i, n)) return;
|
|
719
753
|
let o = n;
|
|
720
754
|
n = i, !(a > 0) && (t(o, i, r), c());
|
|
721
755
|
},
|
|
722
756
|
reset: () => {
|
|
723
757
|
let r = e();
|
|
724
|
-
if (
|
|
758
|
+
if (ut(r, n)) return;
|
|
725
759
|
let i = n;
|
|
726
760
|
n = r, !(a > 0) && (t(i, r, "reset"), c());
|
|
727
761
|
},
|
|
@@ -729,51 +763,51 @@ var ge = /* @__PURE__ */ new Set(), _e = (e) => {
|
|
|
729
763
|
r.delete(e);
|
|
730
764
|
})
|
|
731
765
|
};
|
|
732
|
-
},
|
|
733
|
-
|
|
734
|
-
}),
|
|
735
|
-
|
|
736
|
-
},
|
|
737
|
-
let n =
|
|
766
|
+
}, vt = 200, yt = [], bt = /* @__PURE__ */ new Set(), xt = [], St = () => xt, Ct = (e) => (bt.add(e), () => {
|
|
767
|
+
bt.delete(e);
|
|
768
|
+
}), wt = () => {
|
|
769
|
+
yt.length = 0, xt = [];
|
|
770
|
+
}, Tt = (e, t) => {
|
|
771
|
+
let n = yt[e];
|
|
738
772
|
if (n === void 0) return !1;
|
|
739
|
-
let r =
|
|
773
|
+
let r = kt.get(n.store);
|
|
740
774
|
if (r === void 0) return !1;
|
|
741
775
|
let i = t === "before" ? n.prev : n.next;
|
|
742
|
-
|
|
776
|
+
Dt = !0;
|
|
743
777
|
try {
|
|
744
778
|
r.set(() => i, n.key, `travel:${t}`);
|
|
745
779
|
} finally {
|
|
746
|
-
|
|
780
|
+
Dt = !1;
|
|
747
781
|
}
|
|
748
782
|
return !0;
|
|
749
|
-
},
|
|
750
|
-
|
|
751
|
-
for (let e of [...
|
|
752
|
-
},
|
|
753
|
-
|
|
754
|
-
})),
|
|
755
|
-
function
|
|
783
|
+
}, Et = !1, Dt = !1, Ot = (e) => {
|
|
784
|
+
yt.push(e), yt.length > vt && yt.shift(), xt = [...yt];
|
|
785
|
+
for (let e of [...bt]) e();
|
|
786
|
+
}, kt = /* @__PURE__ */ new Map(), At = /* @__PURE__ */ new Map(), jt = 0, Mt = !1, Nt = /* @__PURE__ */ new Map(), Pt = () => (Mt || (Mt = !0, queueMicrotask(() => {
|
|
787
|
+
jt += 1, Mt = !1;
|
|
788
|
+
})), jt), Ft = It(((/* @__PURE__ */ Error()).stack ?? "").split("\n")[1] ?? "") ?? "";
|
|
789
|
+
function It(e) {
|
|
756
790
|
let t = e.trim().replace(/^at\s+/, ""), n = /\(([^()]+)\)\s*$/.exec(t)?.[1] ?? t;
|
|
757
791
|
return n.length > 0 ? n : void 0;
|
|
758
792
|
}
|
|
759
|
-
var
|
|
793
|
+
var Lt = () => {
|
|
760
794
|
let e = (/* @__PURE__ */ Error()).stack;
|
|
761
795
|
if (typeof e != "string") return "<unknown>";
|
|
762
796
|
for (let t of e.split("\n").slice(1)) {
|
|
763
|
-
let e =
|
|
797
|
+
let e = It(t);
|
|
764
798
|
if (e === void 0) continue;
|
|
765
799
|
let n = e.replace(/:\d+:\d+$/, "");
|
|
766
|
-
if (
|
|
800
|
+
if (Ft === "" || n !== Ft.replace(/:\d+:\d+$/, "")) return n;
|
|
767
801
|
}
|
|
768
802
|
return "<unknown>";
|
|
769
|
-
},
|
|
770
|
-
let r =
|
|
803
|
+
}, Rt = () => [...kt.values()], zt = (e, t, n) => {
|
|
804
|
+
let r = Lt(), i = Pt(), a = kt.get(e);
|
|
771
805
|
if (a !== void 0) {
|
|
772
|
-
let t =
|
|
806
|
+
let t = At.get(e) ?? "<unknown>", n = Nt.get(e) === i;
|
|
773
807
|
if (r !== "<unknown>" && r === t && !n) return a;
|
|
774
808
|
throw Error(`defineStore: '${e}' is already defined. Store names are the devtools + seed key, so two stores sharing one name would silently share state. Rename one.\n first: ${t}\n second: ${r}`);
|
|
775
809
|
}
|
|
776
|
-
let o = n?.persist, s = () =>
|
|
810
|
+
let o = n?.persist, s = () => ct(o?.storage === "session" ? "session" : "local"), c = () => {
|
|
777
811
|
let e = s();
|
|
778
812
|
if (e === null || o === void 0) return;
|
|
779
813
|
let t;
|
|
@@ -798,28 +832,28 @@ var Nt = () => {
|
|
|
798
832
|
t.setItem(o.key, JSON.stringify(n));
|
|
799
833
|
} catch {}
|
|
800
834
|
}, u = /* @__PURE__ */ new Map(), d = (n) => {
|
|
801
|
-
let r = n ??
|
|
835
|
+
let r = n ?? mt, i = u.get(r);
|
|
802
836
|
if (i === void 0) {
|
|
803
837
|
let a = n;
|
|
804
|
-
i =
|
|
838
|
+
i = _t(o !== void 0 && n === void 0 ? () => {
|
|
805
839
|
let e = t();
|
|
806
840
|
return f = e, {
|
|
807
841
|
...e,
|
|
808
842
|
...c() ?? {}
|
|
809
843
|
};
|
|
810
844
|
} : t, (t, n, r) => {
|
|
811
|
-
if (o !== void 0 && a === void 0 && l(n), !
|
|
845
|
+
if (o !== void 0 && a === void 0 && l(n), !Et && !Dt) {
|
|
812
846
|
let e = m(a);
|
|
813
847
|
e.steps.length = e.cursor, e.steps.push({
|
|
814
848
|
prev: t,
|
|
815
849
|
next: n
|
|
816
850
|
}), e.steps.length > h && e.steps.shift(), e.cursor = e.steps.length;
|
|
817
851
|
}
|
|
818
|
-
|
|
852
|
+
Ot({
|
|
819
853
|
store: e,
|
|
820
854
|
...a === void 0 ? {} : { key: a },
|
|
821
855
|
...r === void 0 ? {} : { label: r },
|
|
822
|
-
...
|
|
856
|
+
...Et || Dt ? { isUndo: !0 } : {},
|
|
823
857
|
prev: t,
|
|
824
858
|
next: n,
|
|
825
859
|
at: Date.now()
|
|
@@ -828,7 +862,7 @@ var Nt = () => {
|
|
|
828
862
|
}
|
|
829
863
|
return i;
|
|
830
864
|
}, f, p = /* @__PURE__ */ new Map(), m = (e) => {
|
|
831
|
-
let t = e ??
|
|
865
|
+
let t = e ?? mt, n = p.get(t);
|
|
832
866
|
return n === void 0 && (n = {
|
|
833
867
|
steps: [],
|
|
834
868
|
cursor: 0
|
|
@@ -848,26 +882,32 @@ var Nt = () => {
|
|
|
848
882
|
}, b = {
|
|
849
883
|
name: e,
|
|
850
884
|
use: (t, n) => {
|
|
851
|
-
let r = d(n?.key), i =
|
|
885
|
+
let r = d(n?.key), i = k(t);
|
|
852
886
|
i.current = t;
|
|
853
|
-
let a =
|
|
887
|
+
let a = k(n?.equals);
|
|
854
888
|
a.current = n?.equals;
|
|
855
|
-
let o =
|
|
889
|
+
let o = k({
|
|
856
890
|
state: void 0,
|
|
857
891
|
value: void 0,
|
|
858
892
|
has: !1
|
|
859
|
-
}), s =
|
|
893
|
+
}), s = T((t) => {
|
|
860
894
|
let n = o.current;
|
|
861
895
|
if (n.has && Object.is(n.state, t)) return n.value;
|
|
862
896
|
let r = i.current(t), s = a.current, c = n.has && (s ? s(n.value, r) : Object.is(n.value, r));
|
|
863
|
-
process.env.NODE_ENV !== "production" && s === void 0 && n.has && !c && typeof r == "object" && r &&
|
|
897
|
+
if (process.env.NODE_ENV !== "production" && s === void 0 && n.has && !c && typeof r == "object" && r && ut(n.value, r)) {
|
|
898
|
+
let t = !0;
|
|
899
|
+
try {
|
|
900
|
+
t = !Object.is(i.current(n.state), n.value);
|
|
901
|
+
} catch {}
|
|
902
|
+
pt(e, t ? `[@voltro/client] ${e}.use(): the selector returns a NEW object each call, so the default identity check never sees it as unchanged and this component re-renders on EVERY store change.\n Pass \`{ equals: shallow }\` (exported from @voltro/client), or select a primitive.` : `[@voltro/client] ${e}.use(): this component re-renders on store changes that do not change what it selects. The selector is stable — it returns the same reference for the same state — and the STORE is writing a new value that is equal one level deep (a fresh \`[]\` or \`{}\`, say).\n Pass \`{ equals: shallow }\` (exported from @voltro/client), or stop writing an equal value.`);
|
|
903
|
+
}
|
|
864
904
|
let l = c ? n.value : r;
|
|
865
905
|
return o.current = {
|
|
866
906
|
state: t,
|
|
867
907
|
value: l,
|
|
868
908
|
has: !0
|
|
869
909
|
}, l;
|
|
870
|
-
}, []), c = n?.key, l = n?.retain === !0, u =
|
|
910
|
+
}, []), c = n?.key, l = n?.retain === !0, u = T((e) => {
|
|
871
911
|
let t = r.subscribe(e);
|
|
872
912
|
return c !== void 0 && !l && v(c), () => {
|
|
873
913
|
t(), c !== void 0 && !l && y(c);
|
|
@@ -876,12 +916,12 @@ var Nt = () => {
|
|
|
876
916
|
r,
|
|
877
917
|
c,
|
|
878
918
|
l
|
|
879
|
-
]), p =
|
|
919
|
+
]), p = T(() => s(r.get()), [r, s]), m = T(() => s(gt(e, n?.key, n?.key === void 0 && f !== void 0 ? f : r.get())), [
|
|
880
920
|
r,
|
|
881
921
|
n?.key,
|
|
882
922
|
s
|
|
883
|
-
]), h =
|
|
884
|
-
return
|
|
923
|
+
]), h = j(u, p, m);
|
|
924
|
+
return te(h), h;
|
|
885
925
|
},
|
|
886
926
|
instance: d,
|
|
887
927
|
get: (e) => d(e).get(),
|
|
@@ -894,11 +934,11 @@ var Nt = () => {
|
|
|
894
934
|
undo: (e) => {
|
|
895
935
|
let t = m(e);
|
|
896
936
|
if (t.cursor === 0) return !1;
|
|
897
|
-
--t.cursor,
|
|
937
|
+
--t.cursor, Et = !0;
|
|
898
938
|
try {
|
|
899
939
|
d(e).set(() => t.steps[t.cursor].prev, "undo");
|
|
900
940
|
} finally {
|
|
901
|
-
|
|
941
|
+
Et = !1;
|
|
902
942
|
}
|
|
903
943
|
return !0;
|
|
904
944
|
},
|
|
@@ -906,11 +946,11 @@ var Nt = () => {
|
|
|
906
946
|
let t = m(e);
|
|
907
947
|
if (t.cursor >= t.steps.length) return !1;
|
|
908
948
|
let n = t.steps[t.cursor];
|
|
909
|
-
t.cursor += 1,
|
|
949
|
+
t.cursor += 1, Et = !0;
|
|
910
950
|
try {
|
|
911
951
|
d(e).set(() => n.next, "redo");
|
|
912
952
|
} finally {
|
|
913
|
-
|
|
953
|
+
Et = !1;
|
|
914
954
|
}
|
|
915
955
|
return !0;
|
|
916
956
|
},
|
|
@@ -922,24 +962,24 @@ var Nt = () => {
|
|
|
922
962
|
release: (e) => {
|
|
923
963
|
u.delete(e), p.delete(e);
|
|
924
964
|
},
|
|
925
|
-
keys: () => [...u.keys()].filter((e) => e !==
|
|
965
|
+
keys: () => [...u.keys()].filter((e) => e !== mt)
|
|
926
966
|
};
|
|
927
|
-
return
|
|
928
|
-
},
|
|
929
|
-
|
|
930
|
-
},
|
|
931
|
-
|
|
932
|
-
},
|
|
933
|
-
let r =
|
|
967
|
+
return kt.set(e, b), At.set(e, r), Nt.set(e, i), b;
|
|
968
|
+
}, Bt = () => {
|
|
969
|
+
kt.clear(), At.clear(), Nt.clear(), ft.clear();
|
|
970
|
+
}, Vt = () => ({ seeds: [] }), Ht = (e) => {
|
|
971
|
+
ht = e;
|
|
972
|
+
}, Ut = (e, t, n) => {
|
|
973
|
+
let r = ht?.() ?? null;
|
|
934
974
|
if (r === null) throw Error(`seedStore('${e.name}') was called outside a server render. Seeding exists to put a value into the SSR hydration payload; on the client, set the store directly instead. (If this IS server code, the render did not install a seed bag — that is a framework bug.)`);
|
|
935
975
|
r.seeds.push({
|
|
936
976
|
store: e.name,
|
|
937
977
|
...n?.key === void 0 ? {} : { key: n.key },
|
|
938
978
|
value: t
|
|
939
979
|
});
|
|
940
|
-
},
|
|
980
|
+
}, Wt = (e) => {
|
|
941
981
|
if (e !== void 0) for (let t of e) {
|
|
942
|
-
let e =
|
|
982
|
+
let e = kt.get(t.store);
|
|
943
983
|
e !== void 0 && e.set(t.value, t.key);
|
|
944
984
|
}
|
|
945
985
|
}, q = (e, t) => {
|
|
@@ -961,35 +1001,35 @@ var Nt = () => {
|
|
|
961
1001
|
}
|
|
962
1002
|
if (typeof r != "function") throw Error(`@voltro/client: rpc tag ${JSON.stringify(t)} did not resolve to a callable method.`);
|
|
963
1003
|
return r;
|
|
964
|
-
},
|
|
1004
|
+
}, Gt = Object.freeze({
|
|
965
1005
|
data: void 0,
|
|
966
1006
|
revision: -1,
|
|
967
1007
|
emittedAt: void 0,
|
|
968
1008
|
error: void 0,
|
|
969
1009
|
pendingPatches: 0
|
|
970
|
-
}),
|
|
1010
|
+
}), Kt = () => Gt;
|
|
971
1011
|
function J(e, t, n = {}, r = {}) {
|
|
972
|
-
let i = r.skip === !0, { runtime: a, cache: o, client: s, descriptors: c } = K(e), l = c[t]?.source, u =
|
|
1012
|
+
let i = r.skip === !0, { runtime: a, cache: o, client: s, descriptors: c } = K(e), l = c[t]?.source, u = k(n);
|
|
973
1013
|
u.current = n;
|
|
974
|
-
let d =
|
|
1014
|
+
let d = k(s);
|
|
975
1015
|
d.current = s;
|
|
976
|
-
let f =
|
|
1016
|
+
let f = O(() => JSON.stringify(Object.entries(n).sort(([e], [t]) => e.localeCompare(t))), [n]), p = O(() => {
|
|
977
1017
|
let e = u.current;
|
|
978
1018
|
return {
|
|
979
1019
|
queryKey: [t, e],
|
|
980
1020
|
fetch: () => q(d.current, t)(e)
|
|
981
1021
|
};
|
|
982
|
-
}, [t, f]), m = p.queryKey, h =
|
|
1022
|
+
}, [t, f]), m = p.queryKey, h = T((e) => i ? () => {} : o.subscribe(p.queryKey, p.fetch, a, e, l === void 0 ? {} : { source: l }).unsubscribe, [
|
|
983
1023
|
o,
|
|
984
1024
|
a,
|
|
985
1025
|
l,
|
|
986
1026
|
i,
|
|
987
1027
|
p
|
|
988
|
-
]), g =
|
|
1028
|
+
]), g = T(() => i ? Gt : o.peek(m), [
|
|
989
1029
|
o,
|
|
990
1030
|
i,
|
|
991
1031
|
m
|
|
992
|
-
]), _ =
|
|
1032
|
+
]), _ = j(h, g, Kt), v = _.data !== void 0, y = v && (Array.isArray(_.data) ? _.data.length === 0 : _.data === null), b = {
|
|
993
1033
|
revision: _.revision,
|
|
994
1034
|
emittedAt: _.emittedAt,
|
|
995
1035
|
error: _.error,
|
|
@@ -1045,30 +1085,35 @@ function J(e, t, n = {}, r = {}) {
|
|
|
1045
1085
|
};
|
|
1046
1086
|
}
|
|
1047
1087
|
//#endregion
|
|
1048
|
-
//#region src/
|
|
1049
|
-
var Y = async (e, t) => {
|
|
1088
|
+
//#region src/awaitResolvedApi.ts
|
|
1089
|
+
var qt = 15e3, Y = async (e, t, n) => {
|
|
1090
|
+
if (!Xe(e.current)) return e.current;
|
|
1091
|
+
let r = Date.now() + qt;
|
|
1092
|
+
for (; Date.now() < r;) if (await new Promise((e) => setTimeout(e, 16)), !Xe(e.current)) return e.current;
|
|
1093
|
+
throw Error(`Voltro: the api "${t}" did not resolve within ${qt}ms, so ${n} was never sent. This is not the boot window — that is waited out. Check that "${t}" is a configured api name and that its client could connect.`);
|
|
1094
|
+
}, X = async (e, t) => {
|
|
1050
1095
|
let n = await e.runPromiseExit(t);
|
|
1051
|
-
if (
|
|
1052
|
-
throw
|
|
1053
|
-
},
|
|
1054
|
-
|
|
1055
|
-
},
|
|
1056
|
-
|
|
1057
|
-
for (let e of
|
|
1096
|
+
if (P.isSuccess(n)) return n.value;
|
|
1097
|
+
throw M.squash(n.cause);
|
|
1098
|
+
}, Jt = 100, Z = [], Yt = /* @__PURE__ */ new Set(), Xt = [], Zt = () => {
|
|
1099
|
+
Xt = Z.slice();
|
|
1100
|
+
}, Qt = () => {
|
|
1101
|
+
Zt();
|
|
1102
|
+
for (let e of Yt) try {
|
|
1058
1103
|
e();
|
|
1059
1104
|
} catch {}
|
|
1060
|
-
},
|
|
1105
|
+
}, $t = (e) => {
|
|
1061
1106
|
let t = {
|
|
1062
1107
|
...e,
|
|
1063
1108
|
status: "pending",
|
|
1064
1109
|
startedAt: Date.now()
|
|
1065
1110
|
};
|
|
1066
|
-
|
|
1067
|
-
},
|
|
1068
|
-
let n =
|
|
1111
|
+
Z.unshift(t), Z.length > Jt && (Z.length = Jt), Qt();
|
|
1112
|
+
}, en = (e, t) => {
|
|
1113
|
+
let n = Z.findIndex((t) => t.id === e);
|
|
1069
1114
|
if (n === -1) return;
|
|
1070
|
-
let r =
|
|
1071
|
-
|
|
1115
|
+
let r = Z[n], i = Date.now();
|
|
1116
|
+
Z[n] = t.status === "success" ? {
|
|
1072
1117
|
...r,
|
|
1073
1118
|
status: "success",
|
|
1074
1119
|
output: t.output,
|
|
@@ -1080,12 +1125,12 @@ var Y = async (e, t) => {
|
|
|
1080
1125
|
error: t.error,
|
|
1081
1126
|
settledAt: i,
|
|
1082
1127
|
durationMs: i - r.startedAt
|
|
1083
|
-
},
|
|
1084
|
-
},
|
|
1085
|
-
|
|
1086
|
-
}),
|
|
1087
|
-
|
|
1088
|
-
},
|
|
1128
|
+
}, Qt();
|
|
1129
|
+
}, tn = () => Xt, nn = (e) => (Yt.add(e), () => {
|
|
1130
|
+
Yt.delete(e);
|
|
1131
|
+
}), rn = () => {
|
|
1132
|
+
Z.length !== 0 && (Z.length = 0, Qt());
|
|
1133
|
+
}, an = (e, t) => {
|
|
1089
1134
|
if (t === void 0 || typeof e != "object" || !e) return e;
|
|
1090
1135
|
try {
|
|
1091
1136
|
Object.defineProperty(e, "__voltroTraceId", {
|
|
@@ -1095,107 +1140,117 @@ var Y = async (e, t) => {
|
|
|
1095
1140
|
});
|
|
1096
1141
|
} catch {}
|
|
1097
1142
|
return e;
|
|
1098
|
-
},
|
|
1099
|
-
|
|
1100
|
-
},
|
|
1143
|
+
}, on, sn = (e) => {
|
|
1144
|
+
on = e;
|
|
1145
|
+
}, cn = () => on, ln = (e, t, n) => typeof e == "function" ? e(t, n) : e, un = 0, dn = () => `mut_${++un}`, fn = 0, pn = () => {
|
|
1101
1146
|
let e = typeof crypto < "u" ? crypto : void 0;
|
|
1102
|
-
return e && typeof e.randomUUID == "function" ? e.randomUUID() : `idem_${Date.now().toString(36)}_${
|
|
1103
|
-
},
|
|
1147
|
+
return e && typeof e.randomUUID == "function" ? e.randomUUID() : `idem_${Date.now().toString(36)}_${fn += 1}`;
|
|
1148
|
+
}, mn = (e, t) => e.pipe(N.locallyWith(B.currentHeaders, (e) => ae.set(e, "idempotency-key", t))), hn = (e, t) => ({
|
|
1104
1149
|
update: (n, r) => {
|
|
1105
1150
|
e.update(n, r, t);
|
|
1106
1151
|
},
|
|
1107
1152
|
forTag: (n, r) => e.forTag(n, r, t)
|
|
1108
|
-
}),
|
|
1109
|
-
let
|
|
1153
|
+
}), Q = (e, t) => {
|
|
1154
|
+
let n = K(e), { descriptors: r, errorBus: i } = n, a = k(n);
|
|
1155
|
+
a.current = n;
|
|
1156
|
+
let o = r[t], s = o?.targets;
|
|
1110
1157
|
if (process.env.NODE_ENV !== "production") {
|
|
1111
|
-
let n =
|
|
1158
|
+
let n = o?.kind;
|
|
1112
1159
|
n !== void 0 && n !== "mutation" && console.error(`[@voltro/client] useMutation('${e}', '${t}') targets a ${n}, not a mutation. Use ${n === "action" ? "useAction" : n === "workflow" ? "useWorkflow" : `the ${n} hook`} instead.`);
|
|
1113
1160
|
}
|
|
1114
|
-
let [
|
|
1115
|
-
let
|
|
1116
|
-
|
|
1117
|
-
let t =
|
|
1118
|
-
t !== void 0 &&
|
|
1161
|
+
let [c, l] = A(!1), [u, d] = A(void 0), [f, p] = A(void 0), m = k(null), h = k(!1), g = T(async (n, r) => {
|
|
1162
|
+
let o = r?.onError !== void 0 || r?.notify?.error !== void 0, c = (e) => {
|
|
1163
|
+
r?.onError?.(e, n);
|
|
1164
|
+
let t = ln(r?.notify?.error, e, n);
|
|
1165
|
+
t !== void 0 && on?.error(t);
|
|
1119
1166
|
};
|
|
1120
|
-
|
|
1121
|
-
let
|
|
1122
|
-
|
|
1123
|
-
|
|
1167
|
+
l(!0), d(void 0);
|
|
1168
|
+
let u, f, g;
|
|
1169
|
+
try {
|
|
1170
|
+
({runtime: u, cache: f, client: g} = await Y(a, e, t));
|
|
1171
|
+
} catch (e) {
|
|
1172
|
+
if (l(!1), d(e), o) return c(e);
|
|
1173
|
+
throw e;
|
|
1174
|
+
}
|
|
1175
|
+
let _ = dn(), v = r?.idempotencyKey ?? pn();
|
|
1176
|
+
$t({
|
|
1177
|
+
id: _,
|
|
1124
1178
|
apiName: e,
|
|
1125
1179
|
tag: t,
|
|
1126
|
-
input:
|
|
1180
|
+
input: n
|
|
1127
1181
|
});
|
|
1128
|
-
let
|
|
1129
|
-
if (
|
|
1130
|
-
|
|
1182
|
+
let y = m.current, b = h.current;
|
|
1183
|
+
if (y) try {
|
|
1184
|
+
y(hn(f, _), n);
|
|
1131
1185
|
} catch (e) {
|
|
1132
|
-
if (
|
|
1186
|
+
if (d(e), l(!1), f.revertByMutation(_), en(_, {
|
|
1133
1187
|
status: "error",
|
|
1134
1188
|
error: e
|
|
1135
|
-
}),
|
|
1189
|
+
}), o) return c(e);
|
|
1136
1190
|
throw e;
|
|
1137
1191
|
}
|
|
1138
|
-
else !
|
|
1139
|
-
let
|
|
1192
|
+
else !b && s && s.length > 0 && f.autoApply(s, n, _);
|
|
1193
|
+
let x;
|
|
1140
1194
|
try {
|
|
1141
|
-
let
|
|
1142
|
-
|
|
1195
|
+
let a = q(g, t), o = N.currentSpan.pipe(N.tap((e) => N.sync(() => {
|
|
1196
|
+
x = e.traceId, me({
|
|
1143
1197
|
traceId: e.traceId,
|
|
1144
1198
|
spanId: e.spanId,
|
|
1145
1199
|
source: "mutation",
|
|
1146
1200
|
tag: t
|
|
1147
1201
|
});
|
|
1148
|
-
})),
|
|
1202
|
+
})), N.catchAll(() => N.void), N.zipRight(mn(a(n), v))).pipe(N.withSpan(`client.mutation.${t}`, { attributes: {
|
|
1149
1203
|
"voltro.api": e,
|
|
1150
|
-
"voltro.mutationId":
|
|
1204
|
+
"voltro.mutationId": _,
|
|
1151
1205
|
"rpc.tag": t
|
|
1152
|
-
} })),
|
|
1153
|
-
|
|
1206
|
+
} })), s = await X(u, o);
|
|
1207
|
+
p(s), en(_, {
|
|
1154
1208
|
status: "success",
|
|
1155
|
-
output:
|
|
1156
|
-
}),
|
|
1157
|
-
|
|
1158
|
-
|
|
1209
|
+
output: s
|
|
1210
|
+
}), i.emitSuccess({
|
|
1211
|
+
source: "mutation",
|
|
1212
|
+
tag: t
|
|
1213
|
+
}), f.confirmByMutation(_), r?.onSuccess?.(s, n);
|
|
1214
|
+
let c = ln(r?.notify?.success, s, n);
|
|
1215
|
+
return c !== void 0 && on?.success(c), s;
|
|
1159
1216
|
} catch (e) {
|
|
1160
|
-
let n =
|
|
1161
|
-
if (
|
|
1217
|
+
let n = an(e, x);
|
|
1218
|
+
if (d(n), en(_, {
|
|
1162
1219
|
status: "error",
|
|
1163
1220
|
error: n
|
|
1164
|
-
}),
|
|
1221
|
+
}), f.revertByMutation(_), i.emit({
|
|
1165
1222
|
source: "mutation",
|
|
1166
1223
|
tag: t,
|
|
1167
1224
|
error: n,
|
|
1168
|
-
...
|
|
1169
|
-
}),
|
|
1225
|
+
...x === void 0 ? {} : { traceId: x }
|
|
1226
|
+
}), o) return c(n);
|
|
1170
1227
|
throw n;
|
|
1171
1228
|
} finally {
|
|
1172
|
-
|
|
1229
|
+
l(!1);
|
|
1173
1230
|
}
|
|
1174
1231
|
}, [
|
|
1175
|
-
n,
|
|
1176
|
-
r,
|
|
1177
|
-
i,
|
|
1178
1232
|
e,
|
|
1179
1233
|
t,
|
|
1180
|
-
|
|
1234
|
+
s,
|
|
1235
|
+
i
|
|
1181
1236
|
]);
|
|
1182
|
-
return
|
|
1237
|
+
return O(() => {
|
|
1183
1238
|
let e = {
|
|
1184
|
-
mutate:
|
|
1185
|
-
pending:
|
|
1186
|
-
error:
|
|
1187
|
-
data:
|
|
1188
|
-
withOptimistic: (t) => (
|
|
1189
|
-
withoutOptimistic: () => (
|
|
1239
|
+
mutate: g,
|
|
1240
|
+
pending: c,
|
|
1241
|
+
error: u,
|
|
1242
|
+
data: f,
|
|
1243
|
+
withOptimistic: (t) => (m.current = t, e),
|
|
1244
|
+
withoutOptimistic: () => (h.current = !0, e)
|
|
1190
1245
|
};
|
|
1191
1246
|
return e;
|
|
1192
1247
|
}, [
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1248
|
+
g,
|
|
1249
|
+
c,
|
|
1250
|
+
u,
|
|
1251
|
+
f
|
|
1197
1252
|
]);
|
|
1198
|
-
},
|
|
1253
|
+
}, gn = (e, t) => {
|
|
1199
1254
|
if (t === void 0 || typeof e != "object" || !e) return e;
|
|
1200
1255
|
try {
|
|
1201
1256
|
Object.defineProperty(e, "__voltroTraceId", {
|
|
@@ -1205,22 +1260,17 @@ var Y = async (e, t) => {
|
|
|
1205
1260
|
});
|
|
1206
1261
|
} catch {}
|
|
1207
1262
|
return e;
|
|
1208
|
-
},
|
|
1209
|
-
|
|
1210
|
-
let r = Date.now() + hn;
|
|
1211
|
-
for (; Date.now() < r;) if (await new Promise((e) => setTimeout(e, 16)), !Ke(e.current)) return e.current;
|
|
1212
|
-
throw Error(`Voltro: the api "${t}" did not resolve within ${hn}ms, so ${n} was never sent. This is not the boot window — that is waited out. Check that "${t}" is a configured api name and that its client could connect.`);
|
|
1213
|
-
}, _n = (e, t) => {
|
|
1214
|
-
let n = K(e), { descriptors: r, errorBus: i } = n, a = O(n);
|
|
1263
|
+
}, _n = (e, t, n) => typeof e == "function" ? e(t, n) : e, vn = 0, yn = () => `act_${++vn}`, bn = (e, t) => {
|
|
1264
|
+
let n = K(e), { descriptors: r, errorBus: i } = n, a = k(n);
|
|
1215
1265
|
if (a.current = n, process.env.NODE_ENV !== "production") {
|
|
1216
1266
|
let n = r[t]?.kind;
|
|
1217
1267
|
n !== void 0 && n !== "action" && console.error(`[@voltro/client] useAction('${e}', '${t}') targets a ${n}, not an action. Use ${n === "mutation" ? "useMutation" : n === "workflow" ? "useWorkflow" : `the ${n} hook`} instead.`);
|
|
1218
1268
|
}
|
|
1219
|
-
let [o, s] =
|
|
1269
|
+
let [o, s] = A(!1), [c, l] = A(void 0), [u, d] = A(void 0), f = T(async (n, r) => {
|
|
1220
1270
|
let o = r?.onError !== void 0 || r?.notify?.error !== void 0;
|
|
1221
1271
|
s(!0), l(void 0);
|
|
1222
|
-
let c =
|
|
1223
|
-
|
|
1272
|
+
let c = yn(), u = r?.idempotencyKey ?? pn();
|
|
1273
|
+
$t({
|
|
1224
1274
|
id: c,
|
|
1225
1275
|
apiName: e,
|
|
1226
1276
|
tag: t,
|
|
@@ -1228,27 +1278,30 @@ var Y = async (e, t) => {
|
|
|
1228
1278
|
});
|
|
1229
1279
|
let f;
|
|
1230
1280
|
try {
|
|
1231
|
-
let { runtime:
|
|
1232
|
-
f = e.traceId,
|
|
1281
|
+
let { runtime: o, client: s } = await Y(a, e, t), l = q(s, t), p = await X(o, N.currentSpan.pipe(N.tap((e) => N.sync(() => {
|
|
1282
|
+
f = e.traceId, me({
|
|
1233
1283
|
traceId: e.traceId,
|
|
1234
1284
|
spanId: e.spanId,
|
|
1235
1285
|
source: "action",
|
|
1236
1286
|
tag: t
|
|
1237
1287
|
});
|
|
1238
|
-
})),
|
|
1288
|
+
})), N.catchAll(() => N.void), N.zipRight(mn(l(n), u))).pipe(N.withSpan(`client.action.${t}`, { attributes: {
|
|
1239
1289
|
"voltro.api": e,
|
|
1240
1290
|
"voltro.actionId": c,
|
|
1241
1291
|
"rpc.tag": t
|
|
1242
1292
|
} })));
|
|
1243
|
-
d(
|
|
1293
|
+
d(p), en(c, {
|
|
1244
1294
|
status: "success",
|
|
1245
|
-
output:
|
|
1246
|
-
}),
|
|
1247
|
-
|
|
1248
|
-
|
|
1295
|
+
output: p
|
|
1296
|
+
}), i.emitSuccess({
|
|
1297
|
+
source: "action",
|
|
1298
|
+
tag: t
|
|
1299
|
+
}), r?.onSuccess?.(p, n);
|
|
1300
|
+
let m = _n(r?.notify?.success, p, n);
|
|
1301
|
+
return m !== void 0 && cn()?.success(m), p;
|
|
1249
1302
|
} catch (e) {
|
|
1250
|
-
let a =
|
|
1251
|
-
if (l(a),
|
|
1303
|
+
let a = gn(e, f);
|
|
1304
|
+
if (l(a), en(c, {
|
|
1252
1305
|
status: "error",
|
|
1253
1306
|
error: a
|
|
1254
1307
|
}), i.emit({
|
|
@@ -1258,8 +1311,8 @@ var Y = async (e, t) => {
|
|
|
1258
1311
|
...f === void 0 ? {} : { traceId: f }
|
|
1259
1312
|
}), o) {
|
|
1260
1313
|
r?.onError?.(a, n);
|
|
1261
|
-
let e =
|
|
1262
|
-
e !== void 0 &&
|
|
1314
|
+
let e = _n(r?.notify?.error, a, n);
|
|
1315
|
+
e !== void 0 && cn()?.error(e);
|
|
1263
1316
|
return;
|
|
1264
1317
|
}
|
|
1265
1318
|
throw a;
|
|
@@ -1271,7 +1324,7 @@ var Y = async (e, t) => {
|
|
|
1271
1324
|
t,
|
|
1272
1325
|
i
|
|
1273
1326
|
]);
|
|
1274
|
-
return
|
|
1327
|
+
return O(() => ({
|
|
1275
1328
|
run: f,
|
|
1276
1329
|
pending: o,
|
|
1277
1330
|
error: c,
|
|
@@ -1282,14 +1335,14 @@ var Y = async (e, t) => {
|
|
|
1282
1335
|
c,
|
|
1283
1336
|
u
|
|
1284
1337
|
]);
|
|
1285
|
-
},
|
|
1338
|
+
}, xn = C(void 0), Sn = (e) => w(xn.Provider, { value: e.messages }, e.children), Cn = () => E(xn), wn = Symbol.for("voltro.client.formEngine"), Tn = C(void 0), En = (e, t) => {
|
|
1286
1339
|
let n = e;
|
|
1287
1340
|
for (let e of t.split(".")) {
|
|
1288
1341
|
if (typeof n != "object" || !n) return;
|
|
1289
1342
|
n = n[e];
|
|
1290
1343
|
}
|
|
1291
1344
|
return n;
|
|
1292
|
-
},
|
|
1345
|
+
}, Dn = (e, t, n) => `vf-${e}-${t}-${n}`.replace(/[^a-zA-Z0-9_-]/g, "-"), On = {
|
|
1293
1346
|
isTouched: !1,
|
|
1294
1347
|
isBlurred: !1,
|
|
1295
1348
|
isDirty: !1,
|
|
@@ -1298,186 +1351,186 @@ var Y = async (e, t) => {
|
|
|
1298
1351
|
isValidating: !1,
|
|
1299
1352
|
errorMap: {},
|
|
1300
1353
|
errorSourceMap: {}
|
|
1301
|
-
},
|
|
1354
|
+
}, kn = (e, t) => {
|
|
1302
1355
|
let n = e.find((e) => e.name === t);
|
|
1303
1356
|
if (n !== void 0) return n;
|
|
1304
1357
|
let r = /^(.+?)\.\d+\.(.+)$/.exec(t);
|
|
1305
1358
|
if (r !== null) return e.find((e) => e.name === r[1] && e.widget === "array")?.item?.find((e) => e.name === r[2]);
|
|
1306
|
-
},
|
|
1307
|
-
let r = K(e), a =
|
|
1308
|
-
process.env.NODE_ENV !== "production" &&
|
|
1309
|
-
let
|
|
1359
|
+
}, An = (e, t, n) => {
|
|
1360
|
+
let r = K(e), a = k(void 0), o = typeof t == "function" ? t(a.current?.state?.values ?? n.defaults ?? {}) : t, s = k(o).current, c = Q(e, o), l = n.schema ?? r.descriptors[o]?.input;
|
|
1361
|
+
process.env.NODE_ENV !== "production" && l === void 0 && console.error(`[@voltro/client] useFormBinding('${e}', '${t}'): no input schema. Pass options.schema, or mount the descriptor so its input reaches the client. Rendering no fields; submit skips client-side validation.`);
|
|
1362
|
+
let u = O(() => l ? x(l) : [], [l]), d = Cn(), f = n.messages ?? d, p = O(() => ({
|
|
1310
1363
|
...n.locale === void 0 ? {} : { locale: n.locale },
|
|
1311
|
-
...
|
|
1312
|
-
}), [n.locale,
|
|
1313
|
-
|
|
1314
|
-
let
|
|
1315
|
-
|
|
1316
|
-
let
|
|
1317
|
-
|
|
1318
|
-
let
|
|
1319
|
-
|
|
1320
|
-
let
|
|
1321
|
-
|
|
1322
|
-
let [
|
|
1323
|
-
let t =
|
|
1364
|
+
...f === void 0 ? {} : { messages: f }
|
|
1365
|
+
}), [n.locale, f]), m = k(n.asyncFields);
|
|
1366
|
+
m.current = n.asyncFields;
|
|
1367
|
+
let h = k(n);
|
|
1368
|
+
h.current = n;
|
|
1369
|
+
let g = k(c);
|
|
1370
|
+
g.current = c;
|
|
1371
|
+
let _ = k(p);
|
|
1372
|
+
_.current = p;
|
|
1373
|
+
let v = k(l);
|
|
1374
|
+
v.current = l;
|
|
1375
|
+
let [y, S] = A(() => n.flash?.errors ?? {}), [C, w] = A(n.flash?.formError), [E, te] = A(void 0), j = k(void 0), M = T((e) => {
|
|
1376
|
+
let t = v.current;
|
|
1324
1377
|
if (t === void 0) return [];
|
|
1325
|
-
let n =
|
|
1378
|
+
let n = h.current, r = e;
|
|
1326
1379
|
if (n.toInput !== void 0) try {
|
|
1327
1380
|
r = n.toInput(e);
|
|
1328
1381
|
} catch {
|
|
1329
1382
|
r = e;
|
|
1330
1383
|
}
|
|
1331
|
-
let a = i(t, r,
|
|
1384
|
+
let a = i(t, r, _.current).issues;
|
|
1332
1385
|
if (n.toInput === void 0) return a;
|
|
1333
1386
|
let o = n.errorPath ?? {};
|
|
1334
1387
|
return a.map((t) => {
|
|
1335
1388
|
let n = o[t.path];
|
|
1336
|
-
return n === void 0 ? (
|
|
1389
|
+
return n === void 0 ? (En(e, t.path) !== void 0 || t.path.includes("."), t) : {
|
|
1337
1390
|
...t,
|
|
1338
1391
|
path: n
|
|
1339
1392
|
};
|
|
1340
1393
|
});
|
|
1341
|
-
}, []), ne =
|
|
1342
|
-
let t = { ...e ?? {} }, n =
|
|
1394
|
+
}, []), ne = T((e) => {
|
|
1395
|
+
let t = { ...e ?? {} }, n = v.current;
|
|
1343
1396
|
if (n !== void 0) for (let e of x(n)) (e.widget === "checkbox" || e.widget === "switch") && !(e.name in t) && (t[e.name] = !1);
|
|
1344
1397
|
return t;
|
|
1345
|
-
}, []), re =
|
|
1346
|
-
if (
|
|
1398
|
+
}, []), re = k(() => Promise.resolve());
|
|
1399
|
+
if (a.current === void 0) {
|
|
1347
1400
|
let e = n.flash, t = e === void 0 ? ne(n.defaults) : {
|
|
1348
1401
|
...ne(n.defaults),
|
|
1349
1402
|
...e.values
|
|
1350
1403
|
};
|
|
1351
|
-
|
|
1404
|
+
a.current = new de({
|
|
1352
1405
|
onSubmit: ({ value: e }) => re.current(e),
|
|
1353
1406
|
defaultValues: t,
|
|
1354
1407
|
validators: { onChange: ({ value: e }) => {
|
|
1355
|
-
let t =
|
|
1408
|
+
let t = M(e);
|
|
1356
1409
|
if (t.length === 0) return;
|
|
1357
1410
|
let n = {};
|
|
1358
|
-
for (let e of t) e.path !== "" && !(e.path in n) && (n[e.path] = b(e,
|
|
1411
|
+
for (let e of t) e.path !== "" && !(e.path in n) && (n[e.path] = b(e, _.current));
|
|
1359
1412
|
return { fields: n };
|
|
1360
1413
|
} }
|
|
1361
1414
|
});
|
|
1362
1415
|
}
|
|
1363
|
-
let
|
|
1364
|
-
|
|
1365
|
-
let
|
|
1366
|
-
|
|
1367
|
-
let
|
|
1368
|
-
if (
|
|
1369
|
-
if (
|
|
1370
|
-
if (
|
|
1371
|
-
let t =
|
|
1372
|
-
return t === void 0 ? !1 :
|
|
1416
|
+
let N = a.current, P = N;
|
|
1417
|
+
D(() => P.mount(), [P]);
|
|
1418
|
+
let F = n.subscribe ?? "all";
|
|
1419
|
+
fe(N.store, (e) => F === "all" ? e : `${e.submissionAttempts}|${String(e.isSubmitting)}|${String(e.isDirty)}|${String(e.isTouched)}`);
|
|
1420
|
+
let I = N.store.state.values, L = N.store.state, R = O(() => M(I), [M, I]), ie = n.isLoading === !0, z = n.validate, ae = z?.onChange ?? "afterTouched", B = z?.onBlur ?? !0, oe = L.submissionAttempts, se = L.fieldMetaBase ?? {}, le = T((e) => {
|
|
1421
|
+
if (ie) return !1;
|
|
1422
|
+
if (oe > 0 || ae === "always") return !0;
|
|
1423
|
+
if (ae === "never") return !1;
|
|
1424
|
+
let t = se[e];
|
|
1425
|
+
return t === void 0 ? !1 : B ? t.isBlurred === !0 : t.isTouched === !0;
|
|
1373
1426
|
}, [
|
|
1427
|
+
oe,
|
|
1374
1428
|
se,
|
|
1375
|
-
|
|
1429
|
+
ie,
|
|
1376
1430
|
ae,
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
let t = g[e];
|
|
1431
|
+
B
|
|
1432
|
+
]), V = T((e) => {
|
|
1433
|
+
let t = y[e];
|
|
1381
1434
|
if (t !== void 0) return t;
|
|
1382
|
-
let n =
|
|
1435
|
+
let n = m.current?.[e];
|
|
1383
1436
|
if (n !== void 0 && n.status === "invalid") return n.message ?? b({
|
|
1384
1437
|
id: "validation.invalid",
|
|
1385
1438
|
fallback: "Invalid value"
|
|
1386
|
-
},
|
|
1387
|
-
if (!
|
|
1388
|
-
let r =
|
|
1389
|
-
return r === void 0 ? void 0 : b(r,
|
|
1439
|
+
}, _.current);
|
|
1440
|
+
if (!le(e)) return;
|
|
1441
|
+
let r = R.find((t) => t.path === e);
|
|
1442
|
+
return r === void 0 ? void 0 : b(r, _.current);
|
|
1390
1443
|
}, [
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
]), ue =
|
|
1395
|
-
let e = {}, t = /* @__PURE__ */ new Set([...
|
|
1396
|
-
for (let [e, n] of Object.entries(
|
|
1444
|
+
y,
|
|
1445
|
+
le,
|
|
1446
|
+
R
|
|
1447
|
+
]), ue = O(() => {
|
|
1448
|
+
let e = {}, t = /* @__PURE__ */ new Set([...R.map((e) => e.path).filter((e) => e !== ""), ...Object.keys(y)]);
|
|
1449
|
+
for (let [e, n] of Object.entries(m.current ?? {})) n.status === "invalid" && t.add(e);
|
|
1397
1450
|
for (let n of t) {
|
|
1398
|
-
let t =
|
|
1451
|
+
let t = V(n);
|
|
1399
1452
|
t !== void 0 && (e[n] = t);
|
|
1400
1453
|
}
|
|
1401
1454
|
return e;
|
|
1402
1455
|
}, [
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
]),
|
|
1407
|
-
|
|
1456
|
+
R,
|
|
1457
|
+
y,
|
|
1458
|
+
V
|
|
1459
|
+
]), pe = T((e) => {
|
|
1460
|
+
S((t) => {
|
|
1408
1461
|
if (!(e in t)) return t;
|
|
1409
1462
|
let n = { ...t };
|
|
1410
1463
|
return delete n[e], n;
|
|
1411
1464
|
});
|
|
1412
|
-
}, []),
|
|
1413
|
-
let
|
|
1465
|
+
}, []), H = T((t) => {
|
|
1466
|
+
let n = kn(u, t), r = P.getFieldMeta(t), i = V(t), a = Dn(e, s, t), o = m.current?.[t], c = [i === void 0 ? void 0 : `${a}-error`, n?.description === void 0 ? void 0 : `${a}-help`].filter((e) => e !== void 0);
|
|
1414
1467
|
return {
|
|
1415
|
-
value:
|
|
1468
|
+
value: P.getFieldValue(t),
|
|
1416
1469
|
setValue: (e) => {
|
|
1417
|
-
|
|
1470
|
+
pe(t), !Object.is(P.getFieldValue(t), e) && P.setFieldValue(t, e);
|
|
1418
1471
|
},
|
|
1419
1472
|
onBlur: () => {
|
|
1420
|
-
|
|
1421
|
-
...
|
|
1473
|
+
P.setFieldMeta(t, (e) => ({
|
|
1474
|
+
...On,
|
|
1422
1475
|
...e ?? {},
|
|
1423
1476
|
isTouched: !0,
|
|
1424
1477
|
isBlurred: !0
|
|
1425
1478
|
}));
|
|
1426
1479
|
},
|
|
1427
|
-
error:
|
|
1428
|
-
serverError:
|
|
1429
|
-
touched:
|
|
1430
|
-
blurred:
|
|
1431
|
-
dirty:
|
|
1432
|
-
required:
|
|
1433
|
-
label:
|
|
1434
|
-
widget:
|
|
1435
|
-
options:
|
|
1436
|
-
description:
|
|
1437
|
-
asyncStatus:
|
|
1480
|
+
error: i,
|
|
1481
|
+
serverError: y[t],
|
|
1482
|
+
touched: r?.isTouched === !0,
|
|
1483
|
+
blurred: r?.isBlurred === !0,
|
|
1484
|
+
dirty: r?.isDirty === !0,
|
|
1485
|
+
required: n?.required === !0,
|
|
1486
|
+
label: n?.label ?? t,
|
|
1487
|
+
widget: n?.widget ?? "text",
|
|
1488
|
+
options: n?.options,
|
|
1489
|
+
description: n?.description,
|
|
1490
|
+
asyncStatus: o?.status ?? "idle",
|
|
1438
1491
|
a11y: {
|
|
1439
|
-
id:
|
|
1440
|
-
"aria-invalid":
|
|
1441
|
-
"aria-required":
|
|
1442
|
-
"aria-describedby":
|
|
1492
|
+
id: a,
|
|
1493
|
+
"aria-invalid": i !== void 0 || void 0,
|
|
1494
|
+
"aria-required": n?.required === !0 || void 0,
|
|
1495
|
+
"aria-describedby": c.length > 0 ? c.join(" ") : void 0
|
|
1443
1496
|
}
|
|
1444
1497
|
};
|
|
1445
1498
|
}, [
|
|
1446
1499
|
e,
|
|
1447
|
-
de,
|
|
1448
|
-
j,
|
|
1449
1500
|
s,
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1501
|
+
pe,
|
|
1502
|
+
P,
|
|
1503
|
+
u,
|
|
1504
|
+
y,
|
|
1505
|
+
V
|
|
1506
|
+
]), me = T((e) => ({
|
|
1507
|
+
items: P.getFieldValue(e) ?? [],
|
|
1455
1508
|
push: (t) => {
|
|
1456
|
-
|
|
1509
|
+
P.pushFieldValue(e, t);
|
|
1457
1510
|
},
|
|
1458
1511
|
insert: (t, n) => {
|
|
1459
|
-
|
|
1512
|
+
P.insertFieldValue(e, t, n);
|
|
1460
1513
|
},
|
|
1461
1514
|
remove: (t) => {
|
|
1462
|
-
|
|
1515
|
+
P.removeFieldValue(e, t);
|
|
1463
1516
|
},
|
|
1464
1517
|
move: (t, n) => {
|
|
1465
|
-
|
|
1518
|
+
P.moveFieldValues(e, t, n);
|
|
1466
1519
|
},
|
|
1467
1520
|
swap: (t, n) => {
|
|
1468
|
-
|
|
1521
|
+
P.swapFieldValues(e, t, n);
|
|
1469
1522
|
},
|
|
1470
|
-
field: (t, n) =>
|
|
1471
|
-
}), [
|
|
1472
|
-
|
|
1473
|
-
}, [
|
|
1474
|
-
for (let [t, n] of Object.entries(e))
|
|
1475
|
-
}, [
|
|
1476
|
-
|
|
1477
|
-
}, [
|
|
1523
|
+
field: (t, n) => H(`${e}.${t}.${n}`)
|
|
1524
|
+
}), [P, H]), he = T((e) => u.filter((t) => t.section === e), [u]), U = T((e, t) => {
|
|
1525
|
+
pe(e), !Object.is(P.getFieldValue(e), t) && P.setFieldValue(e, t);
|
|
1526
|
+
}, [pe, P]), ge = T((e) => {
|
|
1527
|
+
for (let [t, n] of Object.entries(e)) P.setFieldValue(t, n);
|
|
1528
|
+
}, [P]), _e = T((e) => {
|
|
1529
|
+
S({}), w(void 0), te(void 0), j.current = void 0, e === void 0 ? P.reset() : P.reset(ne(e));
|
|
1530
|
+
}, [P, ne]), ve = n.asyncTimeoutMs ?? 5e3, ye = T(async () => {
|
|
1478
1531
|
let e = Date.now();
|
|
1479
1532
|
for (;;) {
|
|
1480
|
-
let t =
|
|
1533
|
+
let t = m.current;
|
|
1481
1534
|
if (t === void 0) return;
|
|
1482
1535
|
let n = Object.entries(t), r = n.filter(([, e]) => e.status === "checking");
|
|
1483
1536
|
if (r.length === 0) {
|
|
@@ -1485,81 +1538,81 @@ var Y = async (e, t) => {
|
|
|
1485
1538
|
return e.length === 0 ? void 0 : Object.fromEntries(e.map(([e, t]) => [e, t.message ?? b({
|
|
1486
1539
|
id: "validation.invalid",
|
|
1487
1540
|
fallback: "Invalid value"
|
|
1488
|
-
},
|
|
1541
|
+
}, _.current)]));
|
|
1489
1542
|
}
|
|
1490
|
-
if (Date.now() - e >
|
|
1543
|
+
if (Date.now() - e > ve) return Object.fromEntries(r.map(([e]) => [e, b({
|
|
1491
1544
|
id: "validation.checking",
|
|
1492
1545
|
fallback: "Still checking…"
|
|
1493
|
-
},
|
|
1546
|
+
}, _.current)]));
|
|
1494
1547
|
await new Promise((e) => setTimeout(e, 50));
|
|
1495
1548
|
}
|
|
1496
|
-
}, [
|
|
1497
|
-
let
|
|
1498
|
-
if (
|
|
1499
|
-
let
|
|
1500
|
-
for (let
|
|
1501
|
-
|
|
1549
|
+
}, [ve]), be = T(() => {
|
|
1550
|
+
let t = globalThis.document;
|
|
1551
|
+
if (t?.getElementById === void 0) return;
|
|
1552
|
+
let n = [...u.map((e) => e.name), ...Object.keys(y).filter((e) => !u.some((t) => t.name === e))];
|
|
1553
|
+
for (let r of n) if (V(r) !== void 0) {
|
|
1554
|
+
t.getElementById(Dn(e, s, r))?.focus?.();
|
|
1502
1555
|
return;
|
|
1503
1556
|
}
|
|
1504
1557
|
}, [
|
|
1505
1558
|
e,
|
|
1506
1559
|
s,
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
]),
|
|
1511
|
-
|
|
1512
|
-
let
|
|
1513
|
-
|
|
1560
|
+
u,
|
|
1561
|
+
y,
|
|
1562
|
+
V
|
|
1563
|
+
]), W = k(be);
|
|
1564
|
+
W.current = be;
|
|
1565
|
+
let xe = T(async () => {
|
|
1566
|
+
w(void 0), S({}), te(void 0), j.current = void 0;
|
|
1514
1567
|
let e, t = !1;
|
|
1515
|
-
if (await
|
|
1568
|
+
if (await P.handleSubmit().catch((n) => {
|
|
1516
1569
|
t = !0, e = n;
|
|
1517
1570
|
}), t) throw e;
|
|
1518
|
-
return
|
|
1519
|
-
|
|
1520
|
-
}),
|
|
1521
|
-
}, [
|
|
1571
|
+
return j.current === void 0 && queueMicrotask(() => {
|
|
1572
|
+
W.current();
|
|
1573
|
+
}), j.current;
|
|
1574
|
+
}, [P]);
|
|
1522
1575
|
re.current = (async (e) => {
|
|
1523
|
-
let t =
|
|
1576
|
+
let t = h.current, n = e, r = n;
|
|
1524
1577
|
if (t.toInput !== void 0) try {
|
|
1525
1578
|
r = t.toInput(n);
|
|
1526
1579
|
} catch (e) {
|
|
1527
|
-
|
|
1580
|
+
w(e instanceof Error ? e.message : String(e));
|
|
1528
1581
|
return;
|
|
1529
1582
|
}
|
|
1530
|
-
if (
|
|
1583
|
+
if (M(n).length > 0) {
|
|
1531
1584
|
queueMicrotask(() => {
|
|
1532
|
-
|
|
1585
|
+
W.current();
|
|
1533
1586
|
});
|
|
1534
1587
|
return;
|
|
1535
1588
|
}
|
|
1536
|
-
let i =
|
|
1589
|
+
let i = v.current;
|
|
1537
1590
|
if (i !== void 0) {
|
|
1538
|
-
let e =
|
|
1591
|
+
let e = ee(i, r);
|
|
1539
1592
|
e.dropped.length > 0 && process.env.NODE_ENV !== "production" && console.warn(`[@voltro/client] useFormBinding: dropped ${e.dropped.length} value(s) the mutation's input does not declare (${e.dropped.join(", ")}). The server refuses undeclared fields, so they are not sent. Map them with \`toInput\` if they belong in the write; ignore this if they are form-only state.`), r = e.input;
|
|
1540
1593
|
}
|
|
1541
|
-
let a = await
|
|
1594
|
+
let a = await ye();
|
|
1542
1595
|
if (a !== void 0) {
|
|
1543
|
-
|
|
1596
|
+
S((e) => ({
|
|
1544
1597
|
...e,
|
|
1545
1598
|
...a
|
|
1546
1599
|
})), queueMicrotask(() => {
|
|
1547
|
-
|
|
1600
|
+
W.current();
|
|
1548
1601
|
});
|
|
1549
1602
|
return;
|
|
1550
1603
|
}
|
|
1551
|
-
let o = (e) =>
|
|
1604
|
+
let o = (e) => g.current.mutate(e);
|
|
1552
1605
|
try {
|
|
1553
1606
|
let e = t.onSubmit === void 0 ? await o(r) : await t.onSubmit({
|
|
1554
1607
|
input: r,
|
|
1555
1608
|
values: n,
|
|
1556
1609
|
mutate: o
|
|
1557
1610
|
});
|
|
1558
|
-
|
|
1611
|
+
j.current = e, t.onSuccess?.(e);
|
|
1559
1612
|
} catch (e) {
|
|
1560
|
-
let t =
|
|
1613
|
+
let t = ce(e);
|
|
1561
1614
|
if (t.length === 0) {
|
|
1562
|
-
|
|
1615
|
+
te(e), h.current.onError?.(e);
|
|
1563
1616
|
return;
|
|
1564
1617
|
}
|
|
1565
1618
|
let n = {};
|
|
@@ -1567,158 +1620,158 @@ var Y = async (e, t) => {
|
|
|
1567
1620
|
id: e.message,
|
|
1568
1621
|
...e.params === void 0 ? {} : { params: e.params },
|
|
1569
1622
|
fallback: e.message
|
|
1570
|
-
},
|
|
1571
|
-
|
|
1623
|
+
}, _.current));
|
|
1624
|
+
S((e) => ({
|
|
1572
1625
|
...e,
|
|
1573
1626
|
...n
|
|
1574
1627
|
})), queueMicrotask(() => {
|
|
1575
|
-
|
|
1628
|
+
W.current();
|
|
1576
1629
|
});
|
|
1577
1630
|
}
|
|
1578
1631
|
});
|
|
1579
|
-
let
|
|
1580
|
-
for (let e of
|
|
1632
|
+
let Se = R.length === 0, Ce = Object.values(m.current ?? {}).some((e) => e.status === "checking"), we = E ?? c.error, Te = we !== void 0 && ce(we).length > 0 ? void 0 : we, Ee = Object.keys(ue).length, De = (() => {
|
|
1633
|
+
for (let e of u) if (ue[e.name] !== void 0) return e.name;
|
|
1581
1634
|
let e = Object.keys(ue);
|
|
1582
1635
|
return e.length > 0 ? e[0] : void 0;
|
|
1583
|
-
})(),
|
|
1584
|
-
isDirty: !
|
|
1585
|
-
isPristine:
|
|
1586
|
-
isTouched:
|
|
1587
|
-
isValid:
|
|
1588
|
-
isValidating:
|
|
1589
|
-
canSubmit:
|
|
1590
|
-
isSubmitting:
|
|
1591
|
-
isSubmitted:
|
|
1592
|
-
isSubmitSuccessful:
|
|
1593
|
-
submissionAttempts:
|
|
1594
|
-
errorCount:
|
|
1595
|
-
firstInvalidPath:
|
|
1596
|
-
pending:
|
|
1597
|
-
isLoading:
|
|
1598
|
-
submitError:
|
|
1599
|
-
data:
|
|
1600
|
-
},
|
|
1601
|
-
fields:
|
|
1602
|
-
values:
|
|
1636
|
+
})(), Oe = {
|
|
1637
|
+
isDirty: !ie && L.isDirty,
|
|
1638
|
+
isPristine: L.isPristine,
|
|
1639
|
+
isTouched: L.isTouched,
|
|
1640
|
+
isValid: Se,
|
|
1641
|
+
isValidating: Ce,
|
|
1642
|
+
canSubmit: Se && !Ce && !L.isSubmitting && !ie,
|
|
1643
|
+
isSubmitting: L.isSubmitting,
|
|
1644
|
+
isSubmitted: L.isSubmitted,
|
|
1645
|
+
isSubmitSuccessful: L.isSubmitSuccessful && j.current !== void 0,
|
|
1646
|
+
submissionAttempts: L.submissionAttempts,
|
|
1647
|
+
errorCount: Ee,
|
|
1648
|
+
firstInvalidPath: De,
|
|
1649
|
+
pending: c.pending,
|
|
1650
|
+
isLoading: ie,
|
|
1651
|
+
submitError: Te,
|
|
1652
|
+
data: c.data
|
|
1653
|
+
}, ke = {
|
|
1654
|
+
fields: u,
|
|
1655
|
+
values: I,
|
|
1603
1656
|
errors: ue,
|
|
1604
|
-
issues:
|
|
1605
|
-
isValid:
|
|
1606
|
-
pending:
|
|
1607
|
-
submitError:
|
|
1608
|
-
formError:
|
|
1609
|
-
data:
|
|
1610
|
-
setValue:
|
|
1611
|
-
setValues:
|
|
1612
|
-
reset:
|
|
1613
|
-
submit:
|
|
1614
|
-
field:
|
|
1615
|
-
array:
|
|
1616
|
-
section:
|
|
1617
|
-
state:
|
|
1618
|
-
focusFirstInvalid:
|
|
1657
|
+
issues: R,
|
|
1658
|
+
isValid: Se,
|
|
1659
|
+
pending: c.pending,
|
|
1660
|
+
submitError: Te,
|
|
1661
|
+
formError: C,
|
|
1662
|
+
data: c.data,
|
|
1663
|
+
setValue: U,
|
|
1664
|
+
setValues: ge,
|
|
1665
|
+
reset: _e,
|
|
1666
|
+
submit: xe,
|
|
1667
|
+
field: H,
|
|
1668
|
+
array: me,
|
|
1669
|
+
section: he,
|
|
1670
|
+
state: Oe,
|
|
1671
|
+
focusFirstInvalid: be
|
|
1619
1672
|
};
|
|
1620
|
-
return Object.defineProperty(
|
|
1673
|
+
return Object.defineProperty(ke, wn, {
|
|
1621
1674
|
value: {
|
|
1622
|
-
store:
|
|
1623
|
-
field:
|
|
1675
|
+
store: N.store,
|
|
1676
|
+
field: H
|
|
1624
1677
|
},
|
|
1625
1678
|
enumerable: !1
|
|
1626
|
-
}),
|
|
1627
|
-
},
|
|
1628
|
-
function
|
|
1629
|
-
let n =
|
|
1679
|
+
}), ke;
|
|
1680
|
+
}, jn = (e) => w(Tn.Provider, { value: e.binding }, e.children), Mn = () => E(Tn);
|
|
1681
|
+
function Nn(e, t) {
|
|
1682
|
+
let n = E(Tn), r = typeof e == "string" ? void 0 : e, i = typeof e == "string" ? e : t, a = r ?? n;
|
|
1630
1683
|
if (a === void 0) throw Error("useFormField(path) found no form binding — mount <FormBindingProvider binding={form}> above this field, or call useFormField(form, path) with the binding in hand.");
|
|
1631
|
-
let o = a[
|
|
1684
|
+
let o = a[wn];
|
|
1632
1685
|
if (o === void 0) throw Error("useFormField: not a useFormBinding result");
|
|
1633
|
-
return
|
|
1686
|
+
return fe(o.store, (e) => {
|
|
1634
1687
|
let t = e.fieldMetaBase[i];
|
|
1635
|
-
return `${JSON.stringify(
|
|
1688
|
+
return `${JSON.stringify(En(e.values, i))}|${t === void 0 ? "" : `${String(t.isTouched)}${String(t.isBlurred)}${JSON.stringify(t.errorMap)}`}|${e.submissionAttempts}`;
|
|
1636
1689
|
}), o.field(i);
|
|
1637
1690
|
}
|
|
1638
1691
|
//#endregion
|
|
1639
1692
|
//#region src/createHooks.ts
|
|
1640
|
-
var
|
|
1641
|
-
useSubscription: (t, n, r) =>
|
|
1642
|
-
useMutation: (t) =>
|
|
1643
|
-
useAction: (t) =>
|
|
1644
|
-
useFormBinding: (t, n) =>
|
|
1645
|
-
}),
|
|
1646
|
-
|
|
1647
|
-
},
|
|
1648
|
-
let i =
|
|
1693
|
+
var Pn = J, Fn = (e) => ({
|
|
1694
|
+
useSubscription: (t, n, r) => Pn(e, t, n, r),
|
|
1695
|
+
useMutation: (t) => Q(e, t),
|
|
1696
|
+
useAction: (t) => bn(e, t),
|
|
1697
|
+
useFormBinding: (t, n) => An(e, t, n ?? {})
|
|
1698
|
+
}), In = () => ({ seeds: [] }), Ln = null, Rn = (e) => {
|
|
1699
|
+
Ln = e;
|
|
1700
|
+
}, zn = /* @__PURE__ */ new Map(), Bn = (e, t) => `${e}\u0000${t}`, Vn = (e, t, n, r) => {
|
|
1701
|
+
let i = Ln?.() ?? null;
|
|
1649
1702
|
if (i === null) throw Error(`seedPreloadedSubscription('${e}', '${t}') was called outside a server render. Preload seeds exist to put a subscription's first value into the SSR hydration payload; on the client the live subscription already provides it. (If this IS server code, the render did not install a seed bag — that is a framework bug.)`);
|
|
1650
1703
|
i.seeds.push({
|
|
1651
1704
|
api: e,
|
|
1652
|
-
key:
|
|
1705
|
+
key: U([t, n]),
|
|
1653
1706
|
value: r
|
|
1654
1707
|
});
|
|
1655
|
-
},
|
|
1656
|
-
let r =
|
|
1708
|
+
}, Hn = (e, t, n) => {
|
|
1709
|
+
let r = Ln?.() ?? null;
|
|
1657
1710
|
r !== null && r.seeds.push({
|
|
1658
1711
|
api: e,
|
|
1659
|
-
key:
|
|
1712
|
+
key: U([t, n]),
|
|
1660
1713
|
value: void 0,
|
|
1661
1714
|
failed: !0
|
|
1662
1715
|
});
|
|
1663
|
-
},
|
|
1664
|
-
if (e !== void 0) for (let t of e)
|
|
1716
|
+
}, Un = (e) => {
|
|
1717
|
+
if (e !== void 0) for (let t of e) zn.set(Bn(t.api, t.key), {
|
|
1665
1718
|
value: t.value,
|
|
1666
1719
|
failed: t.failed === !0
|
|
1667
1720
|
});
|
|
1668
|
-
},
|
|
1669
|
-
let r =
|
|
1721
|
+
}, Wn = (e, t, n) => {
|
|
1722
|
+
let r = U([t, n]), i = Ln?.() ?? null;
|
|
1670
1723
|
if (i !== null) {
|
|
1671
1724
|
for (let t of i.seeds) if (t.api === e && t.key === r) return t.failed === !0 ? void 0 : t.value;
|
|
1672
1725
|
return;
|
|
1673
1726
|
}
|
|
1674
|
-
let a =
|
|
1727
|
+
let a = zn.get(Bn(e, r));
|
|
1675
1728
|
return a === void 0 || a.failed ? void 0 : a.value;
|
|
1676
|
-
},
|
|
1677
|
-
let r =
|
|
1729
|
+
}, Gn = (e, t, n) => {
|
|
1730
|
+
let r = U([t, n]), i = Ln?.() ?? null;
|
|
1678
1731
|
if (i !== null) {
|
|
1679
1732
|
for (let t of i.seeds) if (t.api === e && t.key === r) return t.failed === !0 ? "failed" : "seeded";
|
|
1680
1733
|
return "absent";
|
|
1681
1734
|
}
|
|
1682
|
-
let a =
|
|
1735
|
+
let a = zn.get(Bn(e, r));
|
|
1683
1736
|
return a === void 0 ? "absent" : a.failed ? "failed" : "seeded";
|
|
1684
|
-
},
|
|
1685
|
-
|
|
1737
|
+
}, Kn = () => {
|
|
1738
|
+
zn.clear();
|
|
1686
1739
|
};
|
|
1687
1740
|
//#endregion
|
|
1688
1741
|
//#region src/usePreloadedSubscription.ts
|
|
1689
|
-
function
|
|
1690
|
-
let i =
|
|
1742
|
+
function qn(e, t, n = {}, r = {}) {
|
|
1743
|
+
let i = Wn(e, t, n), a = J(e, t, n, i === void 0 ? r : {
|
|
1691
1744
|
...r,
|
|
1692
1745
|
initialSnapshot: i
|
|
1693
1746
|
});
|
|
1694
|
-
return
|
|
1747
|
+
return Gn(e, t, n) === "failed" ? {
|
|
1695
1748
|
...a,
|
|
1696
1749
|
preloadFailed: !0
|
|
1697
1750
|
} : a;
|
|
1698
1751
|
}
|
|
1699
1752
|
//#endregion
|
|
1700
1753
|
//#region src/useEvent.ts
|
|
1701
|
-
var
|
|
1754
|
+
var Jn = {
|
|
1702
1755
|
status: "idle",
|
|
1703
1756
|
missed: 0,
|
|
1704
1757
|
lastMiss: void 0
|
|
1705
|
-
},
|
|
1758
|
+
}, Yn = class {
|
|
1706
1759
|
_tag = "EventStreamClosed";
|
|
1707
1760
|
};
|
|
1708
|
-
function
|
|
1709
|
-
let { skip: i = !1, apiName: a = "app", onMissed: o } = r, s = K(a), { runtime: c, client: l } = s, [u, d] =
|
|
1761
|
+
function Xn(e, t, n, r = {}) {
|
|
1762
|
+
let { skip: i = !1, apiName: a = "app", onMissed: o } = r, s = K(a), { runtime: c, client: l } = s, [u, d] = A(Jn), f = k(n);
|
|
1710
1763
|
f.current = n;
|
|
1711
|
-
let p =
|
|
1764
|
+
let p = k(o);
|
|
1712
1765
|
p.current = o;
|
|
1713
|
-
let m =
|
|
1766
|
+
let m = k(l);
|
|
1714
1767
|
m.current = l;
|
|
1715
|
-
let h =
|
|
1768
|
+
let h = k(c);
|
|
1716
1769
|
h.current = c;
|
|
1717
|
-
let g =
|
|
1770
|
+
let g = k(/* @__PURE__ */ new Map()), _ = t === null ? null : JSON.stringify(Object.entries(t).sort(([e], [t]) => e < t ? -1 : 1)), v = k(t);
|
|
1718
1771
|
v.current = t;
|
|
1719
|
-
let y =
|
|
1772
|
+
let y = k(null);
|
|
1720
1773
|
y.current !== _ && (y.current = _, g.current = /* @__PURE__ */ new Map());
|
|
1721
|
-
let b =
|
|
1774
|
+
let b = T((e, t) => {
|
|
1722
1775
|
e <= 0 || (d((n) => ({
|
|
1723
1776
|
...n,
|
|
1724
1777
|
missed: n.missed + e,
|
|
@@ -1730,17 +1783,17 @@ function qn(e, t, n, r = {}) {
|
|
|
1730
1783
|
count: e,
|
|
1731
1784
|
reason: t
|
|
1732
1785
|
}));
|
|
1733
|
-
}, []), x = !i && _ !== null && !
|
|
1734
|
-
return
|
|
1786
|
+
}, []), x = !i && _ !== null && !Xe(s);
|
|
1787
|
+
return D(() => {
|
|
1735
1788
|
if (!x) {
|
|
1736
|
-
d(
|
|
1789
|
+
d(Jn);
|
|
1737
1790
|
return;
|
|
1738
1791
|
}
|
|
1739
1792
|
d((e) => ({
|
|
1740
1793
|
...e,
|
|
1741
1794
|
status: "connecting"
|
|
1742
1795
|
}));
|
|
1743
|
-
let t = 0, n =
|
|
1796
|
+
let t = 0, n = N.sync(() => {
|
|
1744
1797
|
let t = [...g.current].map(([e, t]) => ({
|
|
1745
1798
|
origin: e,
|
|
1746
1799
|
n: t
|
|
@@ -1749,14 +1802,14 @@ function qn(e, t, n, r = {}) {
|
|
|
1749
1802
|
key: v.current,
|
|
1750
1803
|
...t.length > 0 ? { resume: t } : {}
|
|
1751
1804
|
});
|
|
1752
|
-
}), r =
|
|
1805
|
+
}), r = z.unwrap(n).pipe(z.tap(() => N.sync(() => {
|
|
1753
1806
|
t = 0;
|
|
1754
|
-
})),
|
|
1807
|
+
})), z.concat(z.fail(new Yn())), z.retry(R.exponential("250 millis", 2).pipe(R.either(R.spaced("30 seconds")), R.jittered, R.tapOutput(() => N.sync(() => {
|
|
1755
1808
|
t += 1, d((e) => ({
|
|
1756
1809
|
...e,
|
|
1757
1810
|
status: "connecting"
|
|
1758
1811
|
}));
|
|
1759
|
-
}))))), i = h.current.runFork(
|
|
1812
|
+
}))))), i = h.current.runFork(z.runForEach(r, (e) => N.sync(() => {
|
|
1760
1813
|
if (e._tag === "attached") {
|
|
1761
1814
|
d((e) => ({
|
|
1762
1815
|
...e,
|
|
@@ -1778,11 +1831,11 @@ function qn(e, t, n, r = {}) {
|
|
|
1778
1831
|
_,
|
|
1779
1832
|
e.name,
|
|
1780
1833
|
b
|
|
1781
|
-
]), x ? u :
|
|
1834
|
+
]), x ? u : Jn;
|
|
1782
1835
|
}
|
|
1783
1836
|
//#endregion
|
|
1784
1837
|
//#region src/sequence.ts
|
|
1785
|
-
var
|
|
1838
|
+
var Zn = () => {
|
|
1786
1839
|
let e = (t) => ({
|
|
1787
1840
|
steps: t,
|
|
1788
1841
|
step: ((n, r, i) => e([...t, {
|
|
@@ -1794,7 +1847,7 @@ var Jn = () => {
|
|
|
1794
1847
|
}]))
|
|
1795
1848
|
});
|
|
1796
1849
|
return e([]);
|
|
1797
|
-
},
|
|
1850
|
+
}, Qn = async (e, t = {}) => {
|
|
1798
1851
|
let n = {}, r = [];
|
|
1799
1852
|
for (let i of e.steps) {
|
|
1800
1853
|
if (i.when !== void 0 && !i.when(n)) {
|
|
@@ -1854,13 +1907,13 @@ var Jn = () => {
|
|
|
1854
1907
|
ok: !0,
|
|
1855
1908
|
data: n
|
|
1856
1909
|
};
|
|
1857
|
-
},
|
|
1858
|
-
let [t, n] =
|
|
1910
|
+
}, $n = (e = {}) => {
|
|
1911
|
+
let [t, n] = A(!1), [r, i] = A(void 0), [a, o] = A(void 0), s = k(e);
|
|
1859
1912
|
return s.current = e, {
|
|
1860
|
-
run:
|
|
1913
|
+
run: T(async (e, t = {}) => {
|
|
1861
1914
|
n(!0), i(void 0), o(void 0);
|
|
1862
1915
|
try {
|
|
1863
|
-
let n = await
|
|
1916
|
+
let n = await Qn(e, {
|
|
1864
1917
|
...s.current,
|
|
1865
1918
|
...t
|
|
1866
1919
|
});
|
|
@@ -1873,7 +1926,7 @@ var Jn = () => {
|
|
|
1873
1926
|
error: r,
|
|
1874
1927
|
failedStep: a
|
|
1875
1928
|
};
|
|
1876
|
-
},
|
|
1929
|
+
}, er = "@voltro/plugin-storage", $ = (e) => le(er, e), tr = (e, t, n, r) => new Promise((i, a) => {
|
|
1877
1930
|
let o = new XMLHttpRequest();
|
|
1878
1931
|
if (o.open("PUT", e), o.upload.onprogress = (e) => {
|
|
1879
1932
|
e.lengthComputable && n(e.loaded / e.total);
|
|
@@ -1887,7 +1940,7 @@ var Jn = () => {
|
|
|
1887
1940
|
return;
|
|
1888
1941
|
}
|
|
1889
1942
|
r.addEventListener("abort", () => o.abort(), { once: !0 }), o.send(t);
|
|
1890
|
-
}),
|
|
1943
|
+
}), nr = (e, t, n, r, i, a) => new Promise((o, s) => {
|
|
1891
1944
|
let c = new XMLHttpRequest();
|
|
1892
1945
|
if (c.open("POST", e), c.setRequestHeader("content-type", t), c.upload.onprogress = (e) => {
|
|
1893
1946
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -1905,7 +1958,7 @@ var Jn = () => {
|
|
|
1905
1958
|
return;
|
|
1906
1959
|
}
|
|
1907
1960
|
i.addEventListener("abort", () => c.abort(), { once: !0 }), c.send(n);
|
|
1908
|
-
}),
|
|
1961
|
+
}), rr = (e, t, n, r, i) => new Promise((a, o) => {
|
|
1909
1962
|
let s = new XMLHttpRequest();
|
|
1910
1963
|
if (s.open("PUT", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
|
|
1911
1964
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -1916,7 +1969,7 @@ var Jn = () => {
|
|
|
1916
1969
|
return;
|
|
1917
1970
|
}
|
|
1918
1971
|
i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
|
|
1919
|
-
}),
|
|
1972
|
+
}), ir = (e, t, n, r, i) => new Promise((a, o) => {
|
|
1920
1973
|
let s = new XMLHttpRequest();
|
|
1921
1974
|
if (s.open("POST", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
|
|
1922
1975
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -1932,142 +1985,143 @@ var Jn = () => {
|
|
|
1932
1985
|
return;
|
|
1933
1986
|
}
|
|
1934
1987
|
i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
|
|
1935
|
-
}),
|
|
1936
|
-
let
|
|
1988
|
+
}), ar = (e, t = {}) => {
|
|
1989
|
+
let n = K(e), { inspectBaseUrl: r, errorBus: i } = n, a = k(n);
|
|
1990
|
+
a.current = n;
|
|
1991
|
+
let [o, s] = A(0), [c, l] = A("idle"), [u, d] = A(void 0), f = k(null), p = T(() => {
|
|
1937
1992
|
s(0), l("idle"), d(void 0);
|
|
1938
|
-
}, []), m =
|
|
1993
|
+
}, []), m = T(() => {
|
|
1939
1994
|
f.current?.abort();
|
|
1940
|
-
}, []), h =
|
|
1941
|
-
let s = Math.max(0,
|
|
1942
|
-
...
|
|
1943
|
-
...
|
|
1944
|
-
...
|
|
1945
|
-
...
|
|
1946
|
-
...
|
|
1947
|
-
},
|
|
1995
|
+
}, []), h = T((e) => /^https?:\/\//.test(e) ? e : `${r}${e}`, [r]), g = T(async (n, r, i, o) => {
|
|
1996
|
+
let { runtime: s, client: c } = await Y(a, e, "storage.upload"), l = Math.max(0, r.retries ?? t.retries ?? 1), u = (n instanceof File, n.type || "application/octet-stream"), d = n instanceof File ? n.name : "blob", f = r.visibility ?? t.visibility, p = r.key ?? t.key, m = r.folder ?? t.folder, g = r.tags ?? t.tags, _ = {
|
|
1997
|
+
...f ? { visibility: f } : {},
|
|
1998
|
+
...m ? { folder: m } : {},
|
|
1999
|
+
...g ? { tags: g } : {},
|
|
2000
|
+
...r.alt ? { alt: r.alt } : {},
|
|
2001
|
+
...r.caption ? { caption: r.caption } : {}
|
|
2002
|
+
}, v = (e) => ({
|
|
1948
2003
|
id: e.id,
|
|
1949
2004
|
url: h(e.url),
|
|
1950
|
-
name:
|
|
2005
|
+
name: d,
|
|
1951
2006
|
mime: e.contentType,
|
|
1952
2007
|
size: e.size,
|
|
1953
2008
|
...e.width === void 0 ? {} : { width: e.width },
|
|
1954
2009
|
...e.height === void 0 ? {} : { height: e.height }
|
|
1955
|
-
}),
|
|
1956
|
-
let
|
|
1957
|
-
contentType:
|
|
1958
|
-
...
|
|
1959
|
-
...
|
|
1960
|
-
})),
|
|
1961
|
-
return
|
|
1962
|
-
},
|
|
1963
|
-
let
|
|
2010
|
+
}), y = async () => {
|
|
2011
|
+
let e = r.mintTag ?? t.mintTag ?? $("mintUploadTicket"), a = q(c, e), l = await X(s, a({
|
|
2012
|
+
contentType: u,
|
|
2013
|
+
..._,
|
|
2014
|
+
...p ? { key: p } : {}
|
|
2015
|
+
})), d = await ir(h(l.uploadUrl), u, n, o, i);
|
|
2016
|
+
return v(d);
|
|
2017
|
+
}, b = async () => {
|
|
2018
|
+
let e = r.presignMintTag ?? t.presignMintTag ?? $("mintPresignedUpload"), a = r.finalizeTag ?? t.finalizeTag ?? $("finalizeUpload"), l;
|
|
1964
2019
|
try {
|
|
1965
|
-
let
|
|
1966
|
-
|
|
1967
|
-
contentType:
|
|
1968
|
-
...
|
|
2020
|
+
let t = q(c, e);
|
|
2021
|
+
l = await X(s, t({
|
|
2022
|
+
contentType: u,
|
|
2023
|
+
..._
|
|
1969
2024
|
}));
|
|
1970
2025
|
} catch {
|
|
1971
2026
|
return null;
|
|
1972
2027
|
}
|
|
1973
|
-
await
|
|
1974
|
-
let d = q(
|
|
1975
|
-
return
|
|
1976
|
-
},
|
|
1977
|
-
let
|
|
1978
|
-
contentType:
|
|
1979
|
-
size:
|
|
1980
|
-
...
|
|
2028
|
+
await rr(l.uploadUrl, u, n, o, i);
|
|
2029
|
+
let d = q(c, a), f = await X(s, d({ finalizeToken: l.finalizeToken }));
|
|
2030
|
+
return v(f);
|
|
2031
|
+
}, x = async () => {
|
|
2032
|
+
let e = r.beginResumableTag ?? t.beginResumableTag ?? $("beginResumableUpload"), a = q(c, e), l = n.size, d = r.chunkSize ?? t.chunkSize, f = await X(s, a({
|
|
2033
|
+
contentType: u,
|
|
2034
|
+
size: l,
|
|
2035
|
+
..._,
|
|
1981
2036
|
...d ? { chunkSize: d } : {}
|
|
1982
|
-
})), p = h(f.uploadUrl),
|
|
1983
|
-
for (let
|
|
1984
|
-
let
|
|
2037
|
+
})), p = h(f.uploadUrl), m = Math.max(1, f.chunkSize), g = Math.max(1, Math.ceil(l / m)), y = Math.max(0, r.retries ?? t.retries ?? 1), b = 0, x = null;
|
|
2038
|
+
for (let e = 0; e < g; e++) {
|
|
2039
|
+
let t = e * m, r = Math.min(l, t + m), a = n.slice(t, r), s = e === g - 1, c = r - t, d = 0;
|
|
1985
2040
|
for (;;) {
|
|
1986
|
-
if (
|
|
2041
|
+
if (i.aborted) throw new DOMException("upload aborted", "AbortError");
|
|
1987
2042
|
try {
|
|
1988
|
-
let
|
|
1989
|
-
s && (x =
|
|
2043
|
+
let t = await nr(`${p}?${`token=${encodeURIComponent(f.resumableToken)}&index=${e}${s ? "&final=1" : ""}`}`, u, a, (e) => o((b + e * c) / l), i, s);
|
|
2044
|
+
s && (x = t);
|
|
1990
2045
|
break;
|
|
1991
2046
|
} catch (e) {
|
|
1992
2047
|
if (e instanceof DOMException && e.name === "AbortError" || d++ >= y) throw e;
|
|
1993
2048
|
}
|
|
1994
2049
|
}
|
|
1995
|
-
b +=
|
|
2050
|
+
b += c, o(b / l);
|
|
1996
2051
|
}
|
|
1997
2052
|
if (!x) throw Error("resumable upload produced no final reply");
|
|
1998
|
-
return
|
|
1999
|
-
},
|
|
2000
|
-
let
|
|
2053
|
+
return v(x);
|
|
2054
|
+
}, S = async () => {
|
|
2055
|
+
let e = r.multipartBeginTag ?? t.multipartBeginTag ?? $("beginMultipartUpload"), a = r.multipartSignTag ?? t.multipartSignTag ?? $("signMultipartPart"), l = r.multipartCompleteTag ?? t.multipartCompleteTag ?? $("completeMultipartUpload"), f = r.multipartAbortTag ?? t.multipartAbortTag ?? $("abortMultipartUpload"), p = n.size, m = r.chunkSize ?? t.chunkSize, g;
|
|
2001
2056
|
try {
|
|
2002
|
-
let
|
|
2003
|
-
|
|
2004
|
-
contentType:
|
|
2057
|
+
let t = q(c, e);
|
|
2058
|
+
g = await X(s, t({
|
|
2059
|
+
contentType: u,
|
|
2005
2060
|
size: p,
|
|
2006
|
-
...
|
|
2007
|
-
...
|
|
2061
|
+
..._,
|
|
2062
|
+
...m ? { partSize: m } : {}
|
|
2008
2063
|
}));
|
|
2009
2064
|
} catch {
|
|
2010
2065
|
return null;
|
|
2011
2066
|
}
|
|
2012
|
-
let v = q(
|
|
2067
|
+
let v = q(c, a), y = q(c, l), b = q(c, f), x = Math.max(1, g.partSize), S = Math.max(1, Math.ceil(p / x)), ee = Math.max(0, r.retries ?? t.retries ?? 1), C = [], w = 0;
|
|
2013
2068
|
try {
|
|
2014
|
-
for (let
|
|
2015
|
-
let
|
|
2069
|
+
for (let e = 0; e < S; e++) {
|
|
2070
|
+
let t = e * x, r = Math.min(p, t + x), a = n.slice(t, r), c = e + 1, l = r - t, u = 0;
|
|
2016
2071
|
for (;;) {
|
|
2017
|
-
if (
|
|
2072
|
+
if (i.aborted) throw new DOMException("upload aborted", "AbortError");
|
|
2018
2073
|
try {
|
|
2019
|
-
let { url: e } = await
|
|
2020
|
-
multipartToken:
|
|
2074
|
+
let { url: e } = await X(s, v({
|
|
2075
|
+
multipartToken: g.multipartToken,
|
|
2021
2076
|
partNumber: c
|
|
2022
|
-
})), t = await
|
|
2023
|
-
|
|
2077
|
+
})), t = await tr(e, a, (e) => o((w + e * l) / p), i);
|
|
2078
|
+
C.push({
|
|
2024
2079
|
partNumber: c,
|
|
2025
2080
|
etag: t
|
|
2026
2081
|
});
|
|
2027
2082
|
break;
|
|
2028
2083
|
} catch (e) {
|
|
2029
|
-
if (e instanceof DOMException && e.name === "AbortError" || u++ >=
|
|
2084
|
+
if (e instanceof DOMException && e.name === "AbortError" || u++ >= ee) throw e;
|
|
2030
2085
|
}
|
|
2031
2086
|
}
|
|
2032
|
-
|
|
2087
|
+
w += l, o(w / p);
|
|
2033
2088
|
}
|
|
2034
|
-
let
|
|
2035
|
-
multipartToken:
|
|
2036
|
-
parts:
|
|
2089
|
+
let e = await X(s, y({
|
|
2090
|
+
multipartToken: g.multipartToken,
|
|
2091
|
+
parts: C
|
|
2037
2092
|
}));
|
|
2038
2093
|
return {
|
|
2039
|
-
id:
|
|
2040
|
-
url: h(
|
|
2041
|
-
name:
|
|
2042
|
-
mime:
|
|
2043
|
-
size:
|
|
2094
|
+
id: e.id,
|
|
2095
|
+
url: h(e.url),
|
|
2096
|
+
name: d,
|
|
2097
|
+
mime: u,
|
|
2098
|
+
size: e.size
|
|
2044
2099
|
};
|
|
2045
2100
|
} catch (e) {
|
|
2046
2101
|
try {
|
|
2047
|
-
await
|
|
2102
|
+
await X(s, b({ multipartToken: g.multipartToken }));
|
|
2048
2103
|
} catch {}
|
|
2049
2104
|
throw e;
|
|
2050
2105
|
}
|
|
2051
2106
|
};
|
|
2052
|
-
if ((
|
|
2053
|
-
if ((
|
|
2054
|
-
let
|
|
2055
|
-
for (let e = 0; e <=
|
|
2056
|
-
if (
|
|
2107
|
+
if ((r.prefer ?? t.prefer) === "multipart") return await S() || await x();
|
|
2108
|
+
if ((r.prefer ?? t.prefer) === "resumable") return await x();
|
|
2109
|
+
let ee = (r.prefer ?? t.prefer) === "presign", C;
|
|
2110
|
+
for (let e = 0; e <= l; e++) {
|
|
2111
|
+
if (i.aborted) throw new DOMException("upload aborted", "AbortError");
|
|
2057
2112
|
try {
|
|
2058
|
-
if (
|
|
2059
|
-
let e = await
|
|
2113
|
+
if (ee) {
|
|
2114
|
+
let e = await b();
|
|
2060
2115
|
if (e) return e;
|
|
2061
2116
|
}
|
|
2062
|
-
return await
|
|
2117
|
+
return await y();
|
|
2063
2118
|
} catch (t) {
|
|
2064
|
-
if (t instanceof DOMException && t.name === "AbortError" || (
|
|
2119
|
+
if (t instanceof DOMException && t.name === "AbortError" || (C = t, e === l)) throw t;
|
|
2065
2120
|
}
|
|
2066
2121
|
}
|
|
2067
|
-
throw
|
|
2122
|
+
throw C;
|
|
2068
2123
|
}, [
|
|
2069
|
-
|
|
2070
|
-
r,
|
|
2124
|
+
e,
|
|
2071
2125
|
h,
|
|
2072
2126
|
t.mintTag,
|
|
2073
2127
|
t.presignMintTag,
|
|
@@ -2084,28 +2138,28 @@ var Jn = () => {
|
|
|
2084
2138
|
t.folder,
|
|
2085
2139
|
t.tags,
|
|
2086
2140
|
t.retries
|
|
2087
|
-
]), _ =
|
|
2141
|
+
]), _ = T(async (e, n = {}) => {
|
|
2088
2142
|
let r = new AbortController();
|
|
2089
2143
|
f.current = r, l("uploading"), d(void 0), s(0);
|
|
2090
2144
|
try {
|
|
2091
2145
|
let t = await g(e, n, r.signal, s);
|
|
2092
2146
|
return s(1), l("success"), t;
|
|
2093
2147
|
} catch (e) {
|
|
2094
|
-
throw l("error"), d(e), e instanceof DOMException && e.name === "AbortError" ||
|
|
2148
|
+
throw l("error"), d(e), e instanceof DOMException && e.name === "AbortError" || i.emit({
|
|
2095
2149
|
source: "action",
|
|
2096
|
-
tag: n.mintTag ?? t.mintTag ??
|
|
2150
|
+
tag: n.mintTag ?? t.mintTag ?? $("mintUploadTicket"),
|
|
2097
2151
|
error: e
|
|
2098
2152
|
}), e;
|
|
2099
2153
|
}
|
|
2100
2154
|
}, [
|
|
2101
2155
|
g,
|
|
2102
|
-
|
|
2156
|
+
i,
|
|
2103
2157
|
t.mintTag
|
|
2104
|
-
]), v =
|
|
2158
|
+
]), v = T(async (e, n = {}) => {
|
|
2105
2159
|
if (e.length === 0) return [];
|
|
2106
2160
|
let r = new AbortController();
|
|
2107
2161
|
f.current = r, l("uploading"), d(void 0), s(0);
|
|
2108
|
-
let
|
|
2162
|
+
let a = Math.max(1, n.concurrency ?? t.concurrency ?? 3), o = Array(e.length), c = Array(e.length).fill(0), u = () => s(c.reduce((e, t) => e + t, 0) / e.length), p = 0, m = async () => {
|
|
2109
2163
|
for (;;) {
|
|
2110
2164
|
let t = p++;
|
|
2111
2165
|
if (t >= e.length) return;
|
|
@@ -2115,33 +2169,33 @@ var Jn = () => {
|
|
|
2115
2169
|
}
|
|
2116
2170
|
};
|
|
2117
2171
|
try {
|
|
2118
|
-
return await Promise.all(Array.from({ length: Math.min(
|
|
2172
|
+
return await Promise.all(Array.from({ length: Math.min(a, e.length) }, () => m())), s(1), l("success"), o;
|
|
2119
2173
|
} catch (e) {
|
|
2120
|
-
throw r.abort(), l("error"), d(e), e instanceof DOMException && e.name === "AbortError" ||
|
|
2174
|
+
throw r.abort(), l("error"), d(e), e instanceof DOMException && e.name === "AbortError" || i.emit({
|
|
2121
2175
|
source: "action",
|
|
2122
|
-
tag: n.mintTag ?? t.mintTag ??
|
|
2176
|
+
tag: n.mintTag ?? t.mintTag ?? $("mintUploadTicket"),
|
|
2123
2177
|
error: e
|
|
2124
2178
|
}), e;
|
|
2125
2179
|
}
|
|
2126
2180
|
}, [
|
|
2127
2181
|
g,
|
|
2128
|
-
|
|
2182
|
+
i,
|
|
2129
2183
|
t.concurrency,
|
|
2130
2184
|
t.mintTag
|
|
2131
|
-
]), y =
|
|
2185
|
+
]), y = T((e, t = {}) => {
|
|
2132
2186
|
e.preventDefault();
|
|
2133
2187
|
let n = e.dataTransfer ? Array.from(e.dataTransfer.files) : [];
|
|
2134
2188
|
return n.length ? v(n, t) : Promise.resolve([]);
|
|
2135
|
-
}, [v]), b =
|
|
2189
|
+
}, [v]), b = T((e, t = {}) => {
|
|
2136
2190
|
let n = e.clipboardData ? Array.from(e.clipboardData.files) : [];
|
|
2137
2191
|
return n.length ? v(n, t) : Promise.resolve([]);
|
|
2138
|
-
}, [v]), x =
|
|
2192
|
+
}, [v]), x = O(() => ({
|
|
2139
2193
|
onDragOver: (e) => e.preventDefault(),
|
|
2140
2194
|
onDrop: (e) => {
|
|
2141
2195
|
y(e);
|
|
2142
2196
|
}
|
|
2143
2197
|
}), [y]);
|
|
2144
|
-
return
|
|
2198
|
+
return O(() => ({
|
|
2145
2199
|
upload: _,
|
|
2146
2200
|
uploadMany: v,
|
|
2147
2201
|
progress: o,
|
|
@@ -2164,49 +2218,89 @@ var Jn = () => {
|
|
|
2164
2218
|
b,
|
|
2165
2219
|
x
|
|
2166
2220
|
]);
|
|
2167
|
-
},
|
|
2168
|
-
let
|
|
2169
|
-
|
|
2221
|
+
}, or = (e, t) => {
|
|
2222
|
+
let n = ar(e), r = bn(e, t.action), [i, a] = A("idle"), [o, s] = A(void 0), [c, l] = A(void 0), u = k(t.extra);
|
|
2223
|
+
u.current = t.extra;
|
|
2224
|
+
let d = T(async (e) => {
|
|
2225
|
+
l(void 0), s(void 0), a("uploading");
|
|
2226
|
+
let t;
|
|
2227
|
+
try {
|
|
2228
|
+
t = await n.upload(e);
|
|
2229
|
+
} catch (e) {
|
|
2230
|
+
throw a("error"), l(e), e;
|
|
2231
|
+
}
|
|
2232
|
+
a("transcribing");
|
|
2233
|
+
try {
|
|
2234
|
+
let e = await r.run({
|
|
2235
|
+
storageRef: t.id,
|
|
2236
|
+
...u.current ?? {}
|
|
2237
|
+
});
|
|
2238
|
+
return s(e), a("done"), e;
|
|
2239
|
+
} catch (e) {
|
|
2240
|
+
throw a("error"), l(e), e;
|
|
2241
|
+
}
|
|
2242
|
+
}, [n, r]), f = T(() => {
|
|
2243
|
+
n.cancel(), a("idle");
|
|
2244
|
+
}, [n]), p = T(() => {
|
|
2245
|
+
n.reset(), a("idle"), s(void 0), l(void 0);
|
|
2246
|
+
}, [n]);
|
|
2247
|
+
return O(() => ({
|
|
2248
|
+
phase: i,
|
|
2249
|
+
progress: i === "uploading" ? n.progress : void 0,
|
|
2250
|
+
result: o,
|
|
2251
|
+
error: c ?? n.error,
|
|
2252
|
+
transcribe: d,
|
|
2253
|
+
cancel: f,
|
|
2254
|
+
reset: p
|
|
2255
|
+
}), [
|
|
2256
|
+
i,
|
|
2257
|
+
n.progress,
|
|
2258
|
+
n.error,
|
|
2259
|
+
o,
|
|
2260
|
+
c,
|
|
2261
|
+
d,
|
|
2262
|
+
f,
|
|
2263
|
+
p
|
|
2264
|
+
]);
|
|
2265
|
+
}, sr = async (e) => {
|
|
2266
|
+
let t = q(e.client, e.tag), n = N.currentSpan.pipe(N.tap((t) => N.sync(() => {
|
|
2267
|
+
me({
|
|
2170
2268
|
traceId: t.traceId,
|
|
2171
2269
|
spanId: t.spanId,
|
|
2172
2270
|
source: "mutation",
|
|
2173
2271
|
tag: e.tag
|
|
2174
2272
|
});
|
|
2175
|
-
})),
|
|
2273
|
+
})), N.catchAll(() => N.void), N.zipRight(t(e.input)), N.withSpan(`${e.spanPrefix}.${e.tag}`, { attributes: {
|
|
2176
2274
|
"voltro.api": e.apiName,
|
|
2177
2275
|
"rpc.tag": e.tag
|
|
2178
2276
|
} }));
|
|
2179
|
-
return
|
|
2180
|
-
},
|
|
2181
|
-
let
|
|
2182
|
-
if (process.env.NODE_ENV !== "production") {
|
|
2183
|
-
let n =
|
|
2277
|
+
return X(e.runtime, n);
|
|
2278
|
+
}, cr = (e, t) => {
|
|
2279
|
+
let n = K(e), { descriptors: r } = n, i = k(n);
|
|
2280
|
+
if (i.current = n, process.env.NODE_ENV !== "production") {
|
|
2281
|
+
let n = r[t]?.kind;
|
|
2184
2282
|
n !== void 0 && n !== "workflow" && console.error(`[@voltro/client] useWorkflow('${e}', '${t}') targets a ${n}, not a workflow. Use ${n === "mutation" ? "useMutation" : n === "action" ? "useAction" : `the ${n} hook`} instead.`);
|
|
2185
2283
|
}
|
|
2186
|
-
let [a, o] =
|
|
2284
|
+
let [a, o] = A(!1), [s, c] = A(void 0), [l, u] = A(void 0), d = T(async (n) => {
|
|
2187
2285
|
o(!0), c(void 0);
|
|
2188
2286
|
try {
|
|
2189
|
-
let a = await
|
|
2287
|
+
let { runtime: r, client: a } = await Y(i, e, t), o = await sr({
|
|
2190
2288
|
apiName: e,
|
|
2191
|
-
runtime:
|
|
2192
|
-
client:
|
|
2289
|
+
runtime: r,
|
|
2290
|
+
client: a,
|
|
2193
2291
|
tag: t,
|
|
2194
|
-
input:
|
|
2292
|
+
input: n,
|
|
2195
2293
|
spanPrefix: "client.workflow.start"
|
|
2196
2294
|
});
|
|
2197
|
-
return u(
|
|
2295
|
+
return u(o), o;
|
|
2198
2296
|
} catch (e) {
|
|
2199
2297
|
throw c(e), e;
|
|
2200
2298
|
} finally {
|
|
2201
2299
|
o(!1);
|
|
2202
2300
|
}
|
|
2203
|
-
}, [
|
|
2204
|
-
e,
|
|
2205
|
-
|
|
2206
|
-
r,
|
|
2207
|
-
t
|
|
2208
|
-
]), f = w(async (t) => {
|
|
2209
|
-
await $({
|
|
2301
|
+
}, [e, t]), f = T(async (t) => {
|
|
2302
|
+
let { runtime: n, client: r } = await Y(i, e, "__voltro.workflow.cancel");
|
|
2303
|
+
await sr({
|
|
2210
2304
|
apiName: e,
|
|
2211
2305
|
runtime: n,
|
|
2212
2306
|
client: r,
|
|
@@ -2214,12 +2308,9 @@ var Jn = () => {
|
|
|
2214
2308
|
input: t,
|
|
2215
2309
|
spanPrefix: "client.workflow.cancel"
|
|
2216
2310
|
});
|
|
2217
|
-
}, [
|
|
2218
|
-
e,
|
|
2219
|
-
|
|
2220
|
-
r
|
|
2221
|
-
]), p = w(async (t) => {
|
|
2222
|
-
await $({
|
|
2311
|
+
}, [e]), p = T(async (t) => {
|
|
2312
|
+
let { runtime: n, client: r } = await Y(i, e, "__voltro.workflow.resume");
|
|
2313
|
+
await sr({
|
|
2223
2314
|
apiName: e,
|
|
2224
2315
|
runtime: n,
|
|
2225
2316
|
client: r,
|
|
@@ -2227,43 +2318,37 @@ var Jn = () => {
|
|
|
2227
2318
|
input: t,
|
|
2228
2319
|
spanPrefix: "client.workflow.resume"
|
|
2229
2320
|
});
|
|
2230
|
-
}, [
|
|
2231
|
-
e,
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
}
|
|
2244
|
-
|
|
2245
|
-
|
|
2246
|
-
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2255
|
-
|
|
2256
|
-
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
}), [
|
|
2262
|
-
e,
|
|
2263
|
-
n,
|
|
2264
|
-
r
|
|
2265
|
-
]);
|
|
2266
|
-
return D(() => ({
|
|
2321
|
+
}, [e]), m = T(async (t, n, r) => {
|
|
2322
|
+
let { runtime: a, client: o } = await Y(i, e, "__voltro.workflow.signal");
|
|
2323
|
+
return sr({
|
|
2324
|
+
apiName: e,
|
|
2325
|
+
runtime: a,
|
|
2326
|
+
client: o,
|
|
2327
|
+
tag: "__voltro.workflow.signal",
|
|
2328
|
+
input: {
|
|
2329
|
+
id: t.id,
|
|
2330
|
+
signalName: n,
|
|
2331
|
+
...r === void 0 ? {} : { payload: r }
|
|
2332
|
+
},
|
|
2333
|
+
spanPrefix: "client.workflow.signal"
|
|
2334
|
+
});
|
|
2335
|
+
}, [e]), h = T(async (t, n, r, a) => {
|
|
2336
|
+
let { runtime: o, client: s } = await Y(i, e, "__voltro.workflow.update");
|
|
2337
|
+
return sr({
|
|
2338
|
+
apiName: e,
|
|
2339
|
+
runtime: o,
|
|
2340
|
+
client: s,
|
|
2341
|
+
tag: "__voltro.workflow.update",
|
|
2342
|
+
input: {
|
|
2343
|
+
id: t.id,
|
|
2344
|
+
updateName: n,
|
|
2345
|
+
...r === void 0 ? {} : { payload: r },
|
|
2346
|
+
...a?.timeoutMs === void 0 ? {} : { timeoutMs: a.timeoutMs }
|
|
2347
|
+
},
|
|
2348
|
+
spanPrefix: "client.workflow.update"
|
|
2349
|
+
});
|
|
2350
|
+
}, [e]);
|
|
2351
|
+
return O(() => ({
|
|
2267
2352
|
start: d,
|
|
2268
2353
|
cancel: f,
|
|
2269
2354
|
resume: p,
|
|
@@ -2282,34 +2367,32 @@ var Jn = () => {
|
|
|
2282
2367
|
s,
|
|
2283
2368
|
l
|
|
2284
2369
|
]);
|
|
2285
|
-
},
|
|
2286
|
-
let
|
|
2370
|
+
}, lr = (e) => {
|
|
2371
|
+
let t = K(e), n = k(t);
|
|
2372
|
+
n.current = t;
|
|
2373
|
+
let [r, i] = A(!1), [a, o] = A(void 0), [s, c] = A(void 0), l = T(async (t, r, a) => {
|
|
2287
2374
|
i(!0), o(void 0);
|
|
2288
2375
|
try {
|
|
2289
|
-
let i = await
|
|
2376
|
+
let { runtime: i, client: o } = await Y(n, e, "__voltro.workflow.signal"), s = await sr({
|
|
2290
2377
|
apiName: e,
|
|
2291
|
-
runtime:
|
|
2292
|
-
client:
|
|
2378
|
+
runtime: i,
|
|
2379
|
+
client: o,
|
|
2293
2380
|
tag: "__voltro.workflow.signal",
|
|
2294
2381
|
input: {
|
|
2295
|
-
id:
|
|
2296
|
-
signalName:
|
|
2297
|
-
...
|
|
2382
|
+
id: t.id,
|
|
2383
|
+
signalName: r,
|
|
2384
|
+
...a === void 0 ? {} : { payload: a }
|
|
2298
2385
|
},
|
|
2299
2386
|
spanPrefix: "client.workflow.signal"
|
|
2300
2387
|
});
|
|
2301
|
-
return c(
|
|
2388
|
+
return c(s), s;
|
|
2302
2389
|
} catch (e) {
|
|
2303
2390
|
throw o(e), e;
|
|
2304
2391
|
} finally {
|
|
2305
2392
|
i(!1);
|
|
2306
2393
|
}
|
|
2307
|
-
}, [
|
|
2308
|
-
|
|
2309
|
-
t,
|
|
2310
|
-
n
|
|
2311
|
-
]);
|
|
2312
|
-
return D(() => ({
|
|
2394
|
+
}, [e]);
|
|
2395
|
+
return O(() => ({
|
|
2313
2396
|
signal: l,
|
|
2314
2397
|
pending: r,
|
|
2315
2398
|
error: a,
|
|
@@ -2320,35 +2403,33 @@ var Jn = () => {
|
|
|
2320
2403
|
a,
|
|
2321
2404
|
s
|
|
2322
2405
|
]);
|
|
2323
|
-
},
|
|
2324
|
-
let
|
|
2406
|
+
}, ur = (e) => {
|
|
2407
|
+
let t = K(e), n = k(t);
|
|
2408
|
+
n.current = t;
|
|
2409
|
+
let [r, i] = A(!1), [a, o] = A(void 0), [s, c] = A(void 0), l = T(async (t, r, a, s) => {
|
|
2325
2410
|
i(!0), o(void 0);
|
|
2326
2411
|
try {
|
|
2327
|
-
let i = await
|
|
2412
|
+
let { runtime: i, client: o } = await Y(n, e, "__voltro.workflow.update"), l = await sr({
|
|
2328
2413
|
apiName: e,
|
|
2329
|
-
runtime:
|
|
2330
|
-
client:
|
|
2414
|
+
runtime: i,
|
|
2415
|
+
client: o,
|
|
2331
2416
|
tag: "__voltro.workflow.update",
|
|
2332
2417
|
input: {
|
|
2333
|
-
id:
|
|
2334
|
-
updateName:
|
|
2335
|
-
...
|
|
2336
|
-
...
|
|
2418
|
+
id: t.id,
|
|
2419
|
+
updateName: r,
|
|
2420
|
+
...a === void 0 ? {} : { payload: a },
|
|
2421
|
+
...s?.timeoutMs === void 0 ? {} : { timeoutMs: s.timeoutMs }
|
|
2337
2422
|
},
|
|
2338
2423
|
spanPrefix: "client.workflow.update"
|
|
2339
2424
|
});
|
|
2340
|
-
return c(
|
|
2425
|
+
return c(l), l;
|
|
2341
2426
|
} catch (e) {
|
|
2342
2427
|
throw o(e), e;
|
|
2343
2428
|
} finally {
|
|
2344
2429
|
i(!1);
|
|
2345
2430
|
}
|
|
2346
|
-
}, [
|
|
2347
|
-
|
|
2348
|
-
t,
|
|
2349
|
-
n
|
|
2350
|
-
]);
|
|
2351
|
-
return D(() => ({
|
|
2431
|
+
}, [e]);
|
|
2432
|
+
return O(() => ({
|
|
2352
2433
|
update: l,
|
|
2353
2434
|
pending: r,
|
|
2354
2435
|
error: a,
|
|
@@ -2359,7 +2440,7 @@ var Jn = () => {
|
|
|
2359
2440
|
a,
|
|
2360
2441
|
s
|
|
2361
2442
|
]);
|
|
2362
|
-
},
|
|
2443
|
+
}, dr = (e, t) => {
|
|
2363
2444
|
let n = J(e, "__voltro.workflow.run", t ? { id: t } : {}, { skip: t === void 0 });
|
|
2364
2445
|
return n.loading || n.idle || n.failed ? {
|
|
2365
2446
|
...n,
|
|
@@ -2368,7 +2449,7 @@ var Jn = () => {
|
|
|
2368
2449
|
...n,
|
|
2369
2450
|
run: n.data[0]
|
|
2370
2451
|
};
|
|
2371
|
-
},
|
|
2452
|
+
}, fr = (e, t = {}, n = {}) => {
|
|
2372
2453
|
let r = J(e, "__voltro.workflow.runs", t, n);
|
|
2373
2454
|
return r.loading || r.idle || r.failed ? {
|
|
2374
2455
|
...r,
|
|
@@ -2377,7 +2458,7 @@ var Jn = () => {
|
|
|
2377
2458
|
...r,
|
|
2378
2459
|
runs: r.data
|
|
2379
2460
|
};
|
|
2380
|
-
},
|
|
2461
|
+
}, pr = (e, t) => {
|
|
2381
2462
|
let n = J(e, "__voltro.workflow.run.steps", t ? { runId: t } : {}, { skip: t === void 0 });
|
|
2382
2463
|
return n.loading || n.idle || n.failed ? {
|
|
2383
2464
|
...n,
|
|
@@ -2386,7 +2467,7 @@ var Jn = () => {
|
|
|
2386
2467
|
...n,
|
|
2387
2468
|
steps: n.data
|
|
2388
2469
|
};
|
|
2389
|
-
},
|
|
2470
|
+
}, mr = (e, t) => {
|
|
2390
2471
|
let n = J(e, "__voltro.workflow.run.events", t ? { runId: t } : {}, { skip: t === void 0 });
|
|
2391
2472
|
return n.loading || n.idle || n.failed ? {
|
|
2392
2473
|
...n,
|
|
@@ -2395,7 +2476,7 @@ var Jn = () => {
|
|
|
2395
2476
|
...n,
|
|
2396
2477
|
events: n.data
|
|
2397
2478
|
};
|
|
2398
|
-
},
|
|
2479
|
+
}, hr = mr, gr = (e, t = {}, n = {}) => {
|
|
2399
2480
|
let r = J(e, "__voltro.workflow.domainEvents", t, n);
|
|
2400
2481
|
return r.loading || r.idle || r.failed ? {
|
|
2401
2482
|
...r,
|
|
@@ -2404,7 +2485,7 @@ var Jn = () => {
|
|
|
2404
2485
|
...r,
|
|
2405
2486
|
events: r.data
|
|
2406
2487
|
};
|
|
2407
|
-
},
|
|
2488
|
+
}, _r = (e, t) => {
|
|
2408
2489
|
let n = J(e, "__voltro.workflow.event.deliveries", t ? { eventId: t } : {}, { skip: t === void 0 });
|
|
2409
2490
|
return n.loading || n.idle || n.failed ? {
|
|
2410
2491
|
...n,
|
|
@@ -2413,42 +2494,42 @@ var Jn = () => {
|
|
|
2413
2494
|
...n,
|
|
2414
2495
|
deliveries: n.data
|
|
2415
2496
|
};
|
|
2416
|
-
},
|
|
2497
|
+
}, vr = (e, t) => {
|
|
2417
2498
|
let n = e.payload;
|
|
2418
2499
|
if (!n || typeof n != "object") return;
|
|
2419
2500
|
let r = n[t];
|
|
2420
2501
|
return typeof r == "string" ? r : void 0;
|
|
2421
|
-
},
|
|
2502
|
+
}, yr = (e) => {
|
|
2422
2503
|
let t = e.payload;
|
|
2423
2504
|
if (!t || typeof t != "object") return;
|
|
2424
2505
|
let n = t.updateId;
|
|
2425
2506
|
return typeof n == "string" ? n : void 0;
|
|
2426
|
-
},
|
|
2507
|
+
}, br = (e) => {
|
|
2427
2508
|
let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set();
|
|
2428
2509
|
for (let r of e) if (r.eventType === "signal-received") {
|
|
2429
|
-
let e =
|
|
2510
|
+
let e = vr(r, "signalName");
|
|
2430
2511
|
e && t.add(e);
|
|
2431
2512
|
} else if (r.eventType === "update-completed" || r.eventType === "update-failed") {
|
|
2432
|
-
let e =
|
|
2513
|
+
let e = yr(r);
|
|
2433
2514
|
e && n.add(e);
|
|
2434
2515
|
}
|
|
2435
2516
|
for (let r = e.length - 1; r >= 0; --r) {
|
|
2436
2517
|
let i = e[r];
|
|
2437
2518
|
if (i.eventType === "signal-awaited") {
|
|
2438
|
-
let e =
|
|
2519
|
+
let e = vr(i, "signalName");
|
|
2439
2520
|
if (e && !t.has(e)) return {
|
|
2440
2521
|
name: e,
|
|
2441
2522
|
kind: "signal"
|
|
2442
2523
|
};
|
|
2443
2524
|
} else if (i.eventType === "update-requested") {
|
|
2444
|
-
let e =
|
|
2525
|
+
let e = yr(i), t = vr(i, "updateName");
|
|
2445
2526
|
if (t && (!e || !n.has(e))) return {
|
|
2446
2527
|
name: t,
|
|
2447
2528
|
kind: "update"
|
|
2448
2529
|
};
|
|
2449
2530
|
}
|
|
2450
2531
|
}
|
|
2451
|
-
},
|
|
2532
|
+
}, xr = (e) => e.find((e) => e.status === "running") || (e.length > 0 ? e[e.length - 1] : void 0), Sr = (e, t) => {
|
|
2452
2533
|
if (!e || e.status !== "failed") return;
|
|
2453
2534
|
let n = t.find((e) => e.status === "failed");
|
|
2454
2535
|
return {
|
|
@@ -2456,34 +2537,34 @@ var Jn = () => {
|
|
|
2456
2537
|
message: e.errorMessage,
|
|
2457
2538
|
step: n?.stepName
|
|
2458
2539
|
};
|
|
2459
|
-
},
|
|
2460
|
-
let n =
|
|
2540
|
+
}, Cr = (e, t) => {
|
|
2541
|
+
let n = dr(e, t), r = pr(e, t), i = mr(e, t), a = cr(e, n.run?.tag ?? ""), o = n.run, s = r.steps, c = i.events, l = T(async () => {
|
|
2461
2542
|
if (!o) throw Error("useWorkflowRunState: no run loaded — cannot cancel");
|
|
2462
2543
|
await a.cancel({
|
|
2463
2544
|
workflowName: o.tag,
|
|
2464
2545
|
executionId: o.executionId
|
|
2465
2546
|
});
|
|
2466
|
-
}, [a, o]), u =
|
|
2547
|
+
}, [a, o]), u = T(async () => {
|
|
2467
2548
|
if (!o) throw Error("useWorkflowRunState: no run loaded — cannot resume");
|
|
2468
2549
|
await a.resume({
|
|
2469
2550
|
workflowName: o.tag,
|
|
2470
2551
|
executionId: o.executionId
|
|
2471
2552
|
});
|
|
2472
|
-
}, [a, o]), d =
|
|
2553
|
+
}, [a, o]), d = T((e, n) => {
|
|
2473
2554
|
if (t === void 0) throw Error("useWorkflowRunState: no run id — cannot signal");
|
|
2474
2555
|
return a.signal({ id: t }, e, n);
|
|
2475
|
-
}, [a, t]), f =
|
|
2556
|
+
}, [a, t]), f = T((e, n, r) => {
|
|
2476
2557
|
if (t === void 0) throw Error("useWorkflowRunState: no run id — cannot update");
|
|
2477
2558
|
return a.update({ id: t }, e, n, r);
|
|
2478
2559
|
}, [a, t]);
|
|
2479
|
-
return
|
|
2560
|
+
return O(() => ({
|
|
2480
2561
|
run: o,
|
|
2481
2562
|
status: o?.status,
|
|
2482
2563
|
steps: s,
|
|
2483
2564
|
events: c,
|
|
2484
|
-
currentStep:
|
|
2485
|
-
waitingFor: o?.status === "suspended" ?
|
|
2486
|
-
error:
|
|
2565
|
+
currentStep: xr(s),
|
|
2566
|
+
waitingFor: o?.status === "suspended" ? br(c) : void 0,
|
|
2567
|
+
error: Sr(o, s),
|
|
2487
2568
|
traceId: o?.traceId,
|
|
2488
2569
|
loading: n.data === void 0,
|
|
2489
2570
|
cancel: l,
|
|
@@ -2500,24 +2581,24 @@ var Jn = () => {
|
|
|
2500
2581
|
d,
|
|
2501
2582
|
f
|
|
2502
2583
|
]);
|
|
2503
|
-
},
|
|
2504
|
-
let { runtime: n, client: r } = K(e), [i, a] =
|
|
2584
|
+
}, wr = (e, t) => {
|
|
2585
|
+
let { runtime: n, client: r } = K(e), [i, a] = A([]), [o, s] = A("idle"), [c, l] = A(void 0), u = k(null), d = T(() => {
|
|
2505
2586
|
let e = u.current;
|
|
2506
|
-
e && (u.current = null, n.runFork(
|
|
2587
|
+
e && (u.current = null, n.runFork(F.interrupt(e)), s((e) => e === "streaming" ? "idle" : e));
|
|
2507
2588
|
}, [n]);
|
|
2508
2589
|
return {
|
|
2509
2590
|
events: i,
|
|
2510
2591
|
status: o,
|
|
2511
2592
|
error: c,
|
|
2512
|
-
start:
|
|
2593
|
+
start: T((e = {}) => {
|
|
2513
2594
|
let i = u.current;
|
|
2514
|
-
i && n.runFork(
|
|
2515
|
-
let o = q(r, t)(e), c =
|
|
2595
|
+
i && n.runFork(F.interrupt(i)), a([]), l(void 0), s("streaming");
|
|
2596
|
+
let o = q(r, t)(e), c = z.runForEach(o, (e) => N.sync(() => a((t) => [...t, e]))).pipe(N.matchCause({
|
|
2516
2597
|
onSuccess: () => {
|
|
2517
2598
|
s("done");
|
|
2518
2599
|
},
|
|
2519
2600
|
onFailure: (e) => {
|
|
2520
|
-
|
|
2601
|
+
M.isInterruptedOnly(e) || (l(M.squash(e)), s("error"));
|
|
2521
2602
|
}
|
|
2522
2603
|
}));
|
|
2523
2604
|
u.current = n.runFork(c);
|
|
@@ -2528,57 +2609,61 @@ var Jn = () => {
|
|
|
2528
2609
|
]),
|
|
2529
2610
|
cancel: d
|
|
2530
2611
|
};
|
|
2531
|
-
},
|
|
2532
|
-
let i = 0, a = !1, o = (e) =>
|
|
2612
|
+
}, Tr = (e, t, n, r) => {
|
|
2613
|
+
let i = 0, a = !1, o = (e) => N.sync(() => {
|
|
2533
2614
|
e.seq <= i || (i = e.seq, n.onEvent(e.event), r.isTerminal(e.event) && (a = !0));
|
|
2534
|
-
}), s = (e
|
|
2535
|
-
|
|
2536
|
-
|
|
2615
|
+
}), s = (e) => {
|
|
2616
|
+
if (typeof e != "object" || !e) return;
|
|
2617
|
+
let t = e.name, n = e.message;
|
|
2618
|
+
if (typeof t == "string" || typeof n == "string") return `${typeof t == "string" ? t : ""}::${typeof n == "string" ? n : ""}`;
|
|
2619
|
+
}, c, l = (e, t, a) => {
|
|
2620
|
+
let o = i > t, l = o ? 0 : e + 1, d = a === void 0 ? void 0 : s(a), f = d !== void 0 && d === c && !o;
|
|
2621
|
+
if (c = o ? void 0 : d, f || l > r.maxReconnects) return N.sync(() => {
|
|
2537
2622
|
n.onError(a ?? /* @__PURE__ */ Error("stream connection lost")), n.onStatus("error");
|
|
2538
2623
|
});
|
|
2539
|
-
let
|
|
2540
|
-
return
|
|
2624
|
+
let p = Math.min(r.maxBackoffMs, r.backoffMs * 2 ** Math.max(0, l - 1));
|
|
2625
|
+
return N.sync(() => {
|
|
2541
2626
|
n.onStatus("reconnecting"), n.onReconnect();
|
|
2542
|
-
}).pipe(
|
|
2543
|
-
},
|
|
2544
|
-
let
|
|
2627
|
+
}).pipe(N.zipRight(N.sleep(re.millis(p))), N.zipRight(N.sync(() => n.onStatus("streaming"))), N.zipRight(u(l)));
|
|
2628
|
+
}, u = (r) => N.suspend(() => {
|
|
2629
|
+
let s = i, c = e({
|
|
2545
2630
|
...t,
|
|
2546
|
-
fromSeq:
|
|
2631
|
+
fromSeq: s
|
|
2547
2632
|
});
|
|
2548
|
-
return
|
|
2549
|
-
onSuccess: () => a ?
|
|
2550
|
-
onFailure: (e) =>
|
|
2633
|
+
return z.runForEach(c, o).pipe(N.matchCauseEffect({
|
|
2634
|
+
onSuccess: () => a ? N.sync(() => n.onStatus("done")) : l(r, s, void 0),
|
|
2635
|
+
onFailure: (e) => M.isInterruptedOnly(e) ? N.void : a ? N.sync(() => n.onStatus("done")) : l(r, s, M.squash(e))
|
|
2551
2636
|
}));
|
|
2552
2637
|
});
|
|
2553
|
-
return
|
|
2554
|
-
},
|
|
2638
|
+
return u(0);
|
|
2639
|
+
}, Er = (e) => {
|
|
2555
2640
|
let t = e?._tag;
|
|
2556
2641
|
return t === "done" || t === "error";
|
|
2557
|
-
},
|
|
2558
|
-
let { runtime: r, client: i } = K(e), [a, o] =
|
|
2642
|
+
}, Dr = (e, t, n = {}) => {
|
|
2643
|
+
let { runtime: r, client: i } = K(e), [a, o] = A([]), [s, c] = A("idle"), [l, u] = A(0), [d, f] = A(void 0), p = k(null), m = {
|
|
2559
2644
|
maxReconnects: n.maxReconnects ?? 6,
|
|
2560
2645
|
backoffMs: n.backoffMs ?? 400,
|
|
2561
2646
|
maxBackoffMs: n.maxBackoffMs ?? 8e3,
|
|
2562
|
-
isTerminal: n.isTerminal ??
|
|
2563
|
-
}, h =
|
|
2647
|
+
isTerminal: n.isTerminal ?? Er
|
|
2648
|
+
}, h = T(() => {
|
|
2564
2649
|
let e = p.current;
|
|
2565
|
-
e && (p.current = null, r.runFork(
|
|
2650
|
+
e && (p.current = null, r.runFork(F.interrupt(e)), c((e) => e === "streaming" || e === "reconnecting" ? "idle" : e));
|
|
2566
2651
|
}, [r]);
|
|
2567
2652
|
return {
|
|
2568
2653
|
events: a,
|
|
2569
2654
|
status: s,
|
|
2570
2655
|
reconnects: l,
|
|
2571
2656
|
error: d,
|
|
2572
|
-
start:
|
|
2657
|
+
start: T((e = {}) => {
|
|
2573
2658
|
let n = p.current;
|
|
2574
|
-
n && r.runFork(
|
|
2659
|
+
n && r.runFork(F.interrupt(n)), o([]), f(void 0), u(0), c("streaming");
|
|
2575
2660
|
let a = q(i, t), s = {
|
|
2576
2661
|
onEvent: (e) => o((t) => [...t, e]),
|
|
2577
2662
|
onStatus: c,
|
|
2578
2663
|
onReconnect: () => u((e) => e + 1),
|
|
2579
2664
|
onError: f
|
|
2580
2665
|
};
|
|
2581
|
-
p.current = r.runFork(
|
|
2666
|
+
p.current = r.runFork(Tr(a, e, s, m));
|
|
2582
2667
|
}, [
|
|
2583
2668
|
r,
|
|
2584
2669
|
i,
|
|
@@ -2590,13 +2675,13 @@ var Jn = () => {
|
|
|
2590
2675
|
]),
|
|
2591
2676
|
cancel: h
|
|
2592
2677
|
};
|
|
2593
|
-
},
|
|
2678
|
+
}, Or = (e, t) => e.order - t.order || (e.stepOrder ?? 0) - (t.stepOrder ?? 0), kr = (e) => {
|
|
2594
2679
|
for (let t = e.length - 1; t >= 0; --t) {
|
|
2595
2680
|
let n = e[t];
|
|
2596
2681
|
if (n.role === "user" && n.content) return n.content;
|
|
2597
2682
|
}
|
|
2598
|
-
},
|
|
2599
|
-
let { threadId: r } = n, i = J(e, `${t}.messages`, { threadId: r }), a =
|
|
2683
|
+
}, Ar = (e, t, n) => {
|
|
2684
|
+
let { threadId: r } = n, i = J(e, `${t}.messages`, { threadId: r }), a = bn(e, `${t}.send`), o = O(() => [...i.data ?? []].sort(Or), [i.data]), s = T((e, t = {}) => a.run({
|
|
2600
2685
|
threadId: r,
|
|
2601
2686
|
order: i.data?.length ?? 0,
|
|
2602
2687
|
prompt: e,
|
|
@@ -2605,11 +2690,11 @@ var Jn = () => {
|
|
|
2605
2690
|
a,
|
|
2606
2691
|
r,
|
|
2607
2692
|
i.data
|
|
2608
|
-
]), c =
|
|
2609
|
-
let e =
|
|
2693
|
+
]), c = T(() => {
|
|
2694
|
+
let e = kr(o);
|
|
2610
2695
|
return e === void 0 ? void 0 : s(e);
|
|
2611
2696
|
}, [o, s]);
|
|
2612
|
-
return
|
|
2697
|
+
return O(() => ({
|
|
2613
2698
|
messages: o,
|
|
2614
2699
|
streaming: o.some((e) => e.streaming),
|
|
2615
2700
|
loading: i.data === void 0,
|
|
@@ -2626,9 +2711,9 @@ var Jn = () => {
|
|
|
2626
2711
|
s,
|
|
2627
2712
|
c
|
|
2628
2713
|
]);
|
|
2629
|
-
},
|
|
2630
|
-
let { events: n, status: r, error: i, start: a, cancel: o } =
|
|
2631
|
-
return
|
|
2714
|
+
}, jr = (e, t) => {
|
|
2715
|
+
let { events: n, status: r, error: i, start: a, cancel: o } = wr(e, t), [s, c] = A([]), l = k(null), u = O(() => n.filter((e) => e._tag === "token").map((e) => e.text ?? "").join(""), [n]);
|
|
2716
|
+
return D(() => {
|
|
2632
2717
|
if (r !== "done" || l.current === null) return;
|
|
2633
2718
|
let e = l.current;
|
|
2634
2719
|
l.current = null, c((t) => [
|
|
@@ -2647,18 +2732,18 @@ var Jn = () => {
|
|
|
2647
2732
|
history: s,
|
|
2648
2733
|
status: r,
|
|
2649
2734
|
error: i,
|
|
2650
|
-
send:
|
|
2735
|
+
send: T((e = {}) => {
|
|
2651
2736
|
let t = e.message;
|
|
2652
2737
|
l.current = typeof t == "string" ? t : "", a(e);
|
|
2653
2738
|
}, [a]),
|
|
2654
2739
|
cancel: o
|
|
2655
2740
|
};
|
|
2656
|
-
},
|
|
2657
|
-
let n =
|
|
2741
|
+
}, Mr = (e, t) => {
|
|
2742
|
+
let n = bn(e, t), [r, i] = A(void 0), a = T(async (e) => {
|
|
2658
2743
|
let t = await n.run({ question: e });
|
|
2659
2744
|
return i(t), t;
|
|
2660
|
-
}, [n]), o =
|
|
2661
|
-
return
|
|
2745
|
+
}, [n]), o = T(() => i(void 0), []);
|
|
2746
|
+
return O(() => ({
|
|
2662
2747
|
ask: a,
|
|
2663
2748
|
answer: r,
|
|
2664
2749
|
pending: n.pending,
|
|
@@ -2671,49 +2756,67 @@ var Jn = () => {
|
|
|
2671
2756
|
n.error,
|
|
2672
2757
|
o
|
|
2673
2758
|
]);
|
|
2674
|
-
},
|
|
2759
|
+
}, Nr = (e) => {
|
|
2675
2760
|
let { cache: t, runtime: n } = K(e);
|
|
2676
|
-
return
|
|
2761
|
+
return T(() => {
|
|
2677
2762
|
t.refreshAll(n);
|
|
2678
2763
|
}, [t, n]);
|
|
2679
|
-
},
|
|
2680
|
-
let r = n.cooldownMs ?? 15e3, i = n.maxConsecutive ?? 3, a = n.now ?? (() => Date.now()), o = -Infinity, s = 0
|
|
2764
|
+
}, Pr = (e) => e?._tag === "Unauthenticated", Fr = (e, t, n = {}) => {
|
|
2765
|
+
let r = n.cooldownMs ?? 15e3, i = n.maxConsecutive ?? 3, a = n.now ?? (() => Date.now()), o = -Infinity, s = 0, c = e.on((e) => {
|
|
2766
|
+
if (!Pr(e.error) || s >= i) return;
|
|
2767
|
+
let n = a();
|
|
2768
|
+
n - o < r || (o = n, s += 1, t());
|
|
2769
|
+
}), l = e.onSuccess(() => {
|
|
2770
|
+
s = 0;
|
|
2771
|
+
});
|
|
2681
2772
|
return {
|
|
2682
|
-
dispose:
|
|
2683
|
-
|
|
2684
|
-
|
|
2685
|
-
n - o < r || (o = n, s += 1, t());
|
|
2686
|
-
}),
|
|
2773
|
+
dispose: () => {
|
|
2774
|
+
c(), l();
|
|
2775
|
+
},
|
|
2687
2776
|
noteSuccess: () => {
|
|
2688
2777
|
s = 0;
|
|
2689
2778
|
}
|
|
2690
2779
|
};
|
|
2691
|
-
}, jr = /* @__PURE__ */ new Set(), Mr = (e) => {
|
|
2692
|
-
for (let t of jr) try {
|
|
2693
|
-
t(e);
|
|
2694
|
-
} catch {}
|
|
2695
|
-
}, Nr = (e) => (jr.add(e), () => {
|
|
2696
|
-
jr.delete(e);
|
|
2697
|
-
}), Pr = (e, t) => {
|
|
2698
|
-
Mr({
|
|
2699
|
-
error: e,
|
|
2700
|
-
source: "manual",
|
|
2701
|
-
...t ? { context: t } : {}
|
|
2702
|
-
});
|
|
2703
|
-
}, Fr = (e, t) => {
|
|
2704
|
-
let { errorBus: n } = K(e);
|
|
2705
|
-
E(() => n.on(t), [n, t]);
|
|
2706
2780
|
}, Ir = (e, t) => {
|
|
2781
|
+
let { errorBus: n } = K(e);
|
|
2782
|
+
D(() => n.on(t), [n, t]);
|
|
2783
|
+
}, Lr = {
|
|
2784
|
+
failed: [],
|
|
2785
|
+
healthy: !0
|
|
2786
|
+
}, Rr = (e) => {
|
|
2787
|
+
let { errorBus: t } = K(e), [n, r] = A(Lr);
|
|
2788
|
+
return D(() => {
|
|
2789
|
+
let e = /* @__PURE__ */ new Map(), n = () => {
|
|
2790
|
+
let t = [...e.values()].sort((e, t) => t.at - e.at);
|
|
2791
|
+
r(t.length === 0 ? Lr : {
|
|
2792
|
+
failed: t,
|
|
2793
|
+
healthy: !1
|
|
2794
|
+
});
|
|
2795
|
+
}, i = t.on((t) => {
|
|
2796
|
+
e.set(t.tag, {
|
|
2797
|
+
tag: t.tag,
|
|
2798
|
+
source: t.source,
|
|
2799
|
+
error: t.error,
|
|
2800
|
+
at: Date.now()
|
|
2801
|
+
}), n();
|
|
2802
|
+
}), a = t.onSuccess((t) => {
|
|
2803
|
+
e.delete(t.tag) && n();
|
|
2804
|
+
});
|
|
2805
|
+
return () => {
|
|
2806
|
+
i(), a();
|
|
2807
|
+
};
|
|
2808
|
+
}, [t]), n;
|
|
2809
|
+
}, zr = (e, t) => {
|
|
2707
2810
|
let n = globalThis, r = Symbol.for(`@voltro/web/context:${e}`), i = n[r];
|
|
2708
2811
|
if (i) return i;
|
|
2709
|
-
let a =
|
|
2812
|
+
let a = C(t);
|
|
2710
2813
|
return n[r] = a, a;
|
|
2711
|
-
},
|
|
2814
|
+
}, Br = zr("serverRequest", null), Vr = () => E(Br), Hr = ({ value: e, children: t }) => /* @__PURE__ */ ue(Br.Provider, {
|
|
2712
2815
|
value: e,
|
|
2713
2816
|
children: t
|
|
2714
|
-
}),
|
|
2715
|
-
let t =
|
|
2716
|
-
return
|
|
2817
|
+
}), Ur = (e) => {
|
|
2818
|
+
let t = Vr();
|
|
2819
|
+
return O(() => {
|
|
2717
2820
|
if (t !== null) return t.formFlash?.formKey === e ? t.formFlash : void 0;
|
|
2718
2821
|
if (typeof document > "u") return;
|
|
2719
2822
|
let n = document.getElementById(v);
|
|
@@ -2724,15 +2827,15 @@ var Jn = () => {
|
|
|
2724
2827
|
return;
|
|
2725
2828
|
}
|
|
2726
2829
|
}, [t, e]);
|
|
2727
|
-
},
|
|
2830
|
+
}, Wr = (e, t, n) => e.map((e) => {
|
|
2728
2831
|
let r = String(e[n] ?? ""), i = e[t];
|
|
2729
2832
|
return {
|
|
2730
2833
|
value: r,
|
|
2731
2834
|
label: i == null ? r : String(i)
|
|
2732
2835
|
};
|
|
2733
|
-
}),
|
|
2734
|
-
let r = n.debounceMs ?? 200, i = n.labelField ?? "name", a = n.valueField ?? "id", o = n.input ?? ((e) => ({ q: e })), [s, c] =
|
|
2735
|
-
|
|
2836
|
+
}), Gr = (e, t, n = {}) => {
|
|
2837
|
+
let r = n.debounceMs ?? 200, i = n.labelField ?? "name", a = n.valueField ?? "id", o = n.input ?? ((e) => ({ q: e })), [s, c] = A(n.initialTerm ?? ""), [l, u] = A(s);
|
|
2838
|
+
D(() => {
|
|
2736
2839
|
if (s === l) return;
|
|
2737
2840
|
let e = setTimeout(() => u(s), r);
|
|
2738
2841
|
return () => clearTimeout(e);
|
|
@@ -2741,24 +2844,24 @@ var Jn = () => {
|
|
|
2741
2844
|
l,
|
|
2742
2845
|
r
|
|
2743
2846
|
]);
|
|
2744
|
-
let d = n.skipUntilTerm === !0 && l.trim() === "", f = J(e, t,
|
|
2847
|
+
let d = n.skipUntilTerm === !0 && l.trim() === "", f = J(e, t, O(() => o(l), [o, l]), { skip: d }), p = O(() => Wr(f.data ?? [], i, a), [
|
|
2745
2848
|
f.data,
|
|
2746
2849
|
i,
|
|
2747
2850
|
a
|
|
2748
|
-
]), m =
|
|
2851
|
+
]), m = T((e) => c(e), []);
|
|
2749
2852
|
return {
|
|
2750
2853
|
options: p,
|
|
2751
2854
|
loading: !d && f.data === void 0,
|
|
2752
2855
|
term: s,
|
|
2753
2856
|
search: m
|
|
2754
2857
|
};
|
|
2755
|
-
},
|
|
2756
|
-
let i = K(t), [a, o] =
|
|
2858
|
+
}, Kr = (e, t) => e === t ? 0 : e == null ? 1 : t == null || e < t ? -1 : 1, qr = (t, n, r = {}) => {
|
|
2859
|
+
let i = K(t), [a, o] = A(r.pageSize), s = J(t, n, O(() => a === void 0 ? r.input ?? {} : {
|
|
2757
2860
|
...r.input,
|
|
2758
2861
|
limit: a
|
|
2759
|
-
}, [r.input, a])), c = i.descriptors[n]?.output, l =
|
|
2862
|
+
}, [r.input, a])), c = i.descriptors[n]?.output, l = T(() => {
|
|
2760
2863
|
r.pageSize !== void 0 && o((e) => (e ?? r.pageSize) + r.pageSize);
|
|
2761
|
-
}, [r.pageSize]), u =
|
|
2864
|
+
}, [r.pageSize]), u = O(() => r.columns ?? (c === void 0 ? [] : e(c)), [r.columns, c]), [d, f] = A(r.initialSort), p = T((e) => {
|
|
2762
2865
|
f((t) => t?.column === e ? {
|
|
2763
2866
|
column: e,
|
|
2764
2867
|
direction: t.direction === "asc" ? "desc" : "asc"
|
|
@@ -2769,11 +2872,11 @@ var Jn = () => {
|
|
|
2769
2872
|
}, []);
|
|
2770
2873
|
return {
|
|
2771
2874
|
columns: u,
|
|
2772
|
-
rows:
|
|
2875
|
+
rows: O(() => {
|
|
2773
2876
|
let e = s.data ?? [];
|
|
2774
2877
|
if (d === void 0) return e;
|
|
2775
2878
|
let t = d.direction === "asc" ? 1 : -1;
|
|
2776
|
-
return [...e].sort((e, n) =>
|
|
2879
|
+
return [...e].sort((e, n) => Kr(e[d.column], n[d.column]) * t);
|
|
2777
2880
|
}, [s.data, d]),
|
|
2778
2881
|
loading: s.data === void 0,
|
|
2779
2882
|
error: s.error,
|
|
@@ -2782,26 +2885,26 @@ var Jn = () => {
|
|
|
2782
2885
|
loadMore: l,
|
|
2783
2886
|
hasMore: a !== void 0 && (s.data?.length ?? 0) >= a
|
|
2784
2887
|
};
|
|
2785
|
-
},
|
|
2888
|
+
}, Jr = (e, t, n, r) => {
|
|
2786
2889
|
let i = e.replace(/\/$/, ""), a = new URLSearchParams({
|
|
2787
2890
|
table: t,
|
|
2788
2891
|
id: n
|
|
2789
2892
|
});
|
|
2790
2893
|
return r !== void 0 && a.set("column", r), `${i}/_voltro/inspect/provenance?${a.toString()}`;
|
|
2791
|
-
},
|
|
2792
|
-
let { inspectBaseUrl: i } = K(e), [a, o] =
|
|
2894
|
+
}, Yr = Jr, Xr = (e, t, n, r) => {
|
|
2895
|
+
let { inspectBaseUrl: i } = K(e), [a, o] = A({
|
|
2793
2896
|
data: void 0,
|
|
2794
2897
|
loading: !0,
|
|
2795
2898
|
error: void 0
|
|
2796
2899
|
});
|
|
2797
|
-
return
|
|
2900
|
+
return D(() => {
|
|
2798
2901
|
let e = !1;
|
|
2799
2902
|
o({
|
|
2800
2903
|
data: void 0,
|
|
2801
2904
|
loading: !0,
|
|
2802
2905
|
error: void 0
|
|
2803
2906
|
});
|
|
2804
|
-
let a =
|
|
2907
|
+
let a = Jr(i ?? "", t, n, r);
|
|
2805
2908
|
return fetch(a).then(async (e) => {
|
|
2806
2909
|
if (!e.ok) throw Error(`provenance fetch failed: HTTP ${e.status}`);
|
|
2807
2910
|
return await e.json();
|
|
@@ -2827,23 +2930,23 @@ var Jn = () => {
|
|
|
2827
2930
|
n,
|
|
2828
2931
|
r
|
|
2829
2932
|
]), a;
|
|
2830
|
-
},
|
|
2831
|
-
function
|
|
2832
|
-
return
|
|
2933
|
+
}, Zr = "admin:full", Qr = (e, t) => e.includes("admin:full") ? !0 : (typeof t == "string" ? [t] : t).every((t) => e.includes(t)), $r = (e, t) => t.length === 0 || e.includes("admin:full") ? !0 : t.some((t) => e.includes(t)), ei = C({ scopes: [] });
|
|
2934
|
+
function ti(e) {
|
|
2935
|
+
return w(ei.Provider, { value: { scopes: e.scopes } }, e.children);
|
|
2833
2936
|
}
|
|
2834
|
-
var
|
|
2835
|
-
let { inspectBaseUrl: t } = K(e), [n, r] =
|
|
2937
|
+
var ni = () => E(ei), ri = (e) => Qr(ni().scopes, e), ii = (e) => $r(ni().scopes, e), ai = (e) => `${e.replace(/\/$/, "")}/_voltro/inspect/manifest`, oi = (e) => {
|
|
2938
|
+
let { inspectBaseUrl: t } = K(e), [n, r] = A({
|
|
2836
2939
|
manifest: void 0,
|
|
2837
2940
|
loading: !0,
|
|
2838
2941
|
error: void 0
|
|
2839
2942
|
});
|
|
2840
|
-
return
|
|
2943
|
+
return D(() => {
|
|
2841
2944
|
let e = !1;
|
|
2842
2945
|
return r({
|
|
2843
2946
|
manifest: void 0,
|
|
2844
2947
|
loading: !0,
|
|
2845
2948
|
error: void 0
|
|
2846
|
-
}), fetch(
|
|
2949
|
+
}), fetch(ai(t ?? "")).then(async (e) => {
|
|
2847
2950
|
if (!e.ok) throw Error(`manifest fetch failed: HTTP ${e.status}`);
|
|
2848
2951
|
return await e.json();
|
|
2849
2952
|
}).then((t) => {
|
|
@@ -2862,7 +2965,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
2862
2965
|
e = !0;
|
|
2863
2966
|
};
|
|
2864
2967
|
}, [e, t]), n;
|
|
2865
|
-
},
|
|
2968
|
+
}, si = (e, t) => t.scope.length === 0 || (t.mode === "any" ? t.scope.some((t) => e.includes(t)) : t.scope.every((t) => e.includes(t))), ci = (e, t) => {
|
|
2866
2969
|
if (e === void 0) return "unknown";
|
|
2867
2970
|
if (t.includes("admin:full") || e.length === 0) return "allowed";
|
|
2868
2971
|
let n = !1;
|
|
@@ -2871,7 +2974,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
2871
2974
|
n = !0;
|
|
2872
2975
|
continue;
|
|
2873
2976
|
}
|
|
2874
|
-
if (!
|
|
2977
|
+
if (!si(t, r)) {
|
|
2875
2978
|
if (r.resourceScoped) {
|
|
2876
2979
|
n = !0;
|
|
2877
2980
|
continue;
|
|
@@ -2880,13 +2983,13 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
2880
2983
|
}
|
|
2881
2984
|
}
|
|
2882
2985
|
return n ? "unknown" : "allowed";
|
|
2883
|
-
},
|
|
2986
|
+
}, li = (e) => (e ?? []).flatMap((e) => e.kind === "scope" ? [...e.scope] : []), ui = (e) => {
|
|
2884
2987
|
for (let t of e ?? []) if (t.kind === "open") return t.reason;
|
|
2885
|
-
},
|
|
2988
|
+
}, di = (e) => ci(e, ni().scopes), fi = (e, t) => Array.isArray(e) ? e.includes(t) : e === t, pi = (e, t, n) => e.targets?.some((e) => e.table === t && e.op === n) ?? !1, mi = (e) => e === void 0 ? {} : {
|
|
2886
2989
|
tag: e.tag,
|
|
2887
2990
|
...e.guards === void 0 ? {} : { guards: e.guards }
|
|
2888
|
-
},
|
|
2889
|
-
let n = e.procedures.find((e) => e.kind === "query" &&
|
|
2991
|
+
}, hi = (e) => e.tables.filter((e) => !e.framework).map((t) => {
|
|
2992
|
+
let n = e.procedures.find((e) => e.kind === "query" && fi(e.source, t.name)), r = e.procedures.find((e) => e.kind === "mutation" && pi(e, t.name, "insert")), i = e.procedures.find((e) => e.kind === "mutation" && pi(e, t.name, "update")), a = e.procedures.find((e) => e.kind === "mutation" && pi(e, t.name, "delete")), o = t.pkColumn ?? (t.columns.some((e) => e.name === "id") ? "id" : void 0);
|
|
2890
2993
|
return {
|
|
2891
2994
|
table: t.name,
|
|
2892
2995
|
columns: t.columns.filter((e) => e.serverOnly !== !0),
|
|
@@ -2895,22 +2998,22 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
2895
2998
|
reactive: t.reactive,
|
|
2896
2999
|
...o === void 0 ? {} : { pkColumn: o },
|
|
2897
3000
|
editable: (t.editable ?? !0) && o !== void 0,
|
|
2898
|
-
list:
|
|
2899
|
-
create:
|
|
2900
|
-
update:
|
|
2901
|
-
delete:
|
|
3001
|
+
list: mi(n),
|
|
3002
|
+
create: mi(r),
|
|
3003
|
+
update: mi(i),
|
|
3004
|
+
delete: mi(a)
|
|
2902
3005
|
};
|
|
2903
|
-
}),
|
|
2904
|
-
let [t, n] =
|
|
3006
|
+
}), gi = (e) => {
|
|
3007
|
+
let [t, n] = A([]), [r, i] = A([]), a = T((e) => {
|
|
2905
3008
|
n((t) => [...t, e]), i([]);
|
|
2906
|
-
}, []), o =
|
|
3009
|
+
}, []), o = T(async () => {
|
|
2907
3010
|
let r = t[t.length - 1];
|
|
2908
3011
|
r !== void 0 && r.blockedBy === void 0 && (await e.onUndo(r.invocationId), n((e) => e.slice(0, -1)), i((e) => [...e, r]));
|
|
2909
|
-
}, [t, e]), s =
|
|
3012
|
+
}, [t, e]), s = T(async () => {
|
|
2910
3013
|
let t = r[r.length - 1];
|
|
2911
3014
|
t !== void 0 && (await e.onRedo(t.invocationId), i((e) => e.slice(0, -1)), n((e) => [...e, t]));
|
|
2912
3015
|
}, [r, e]);
|
|
2913
|
-
return
|
|
3016
|
+
return O(() => {
|
|
2914
3017
|
let e = t[t.length - 1];
|
|
2915
3018
|
return {
|
|
2916
3019
|
record: a,
|
|
@@ -2928,14 +3031,14 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
2928
3031
|
o,
|
|
2929
3032
|
s
|
|
2930
3033
|
]);
|
|
2931
|
-
},
|
|
2932
|
-
let n = t?.limit, { data: r } = J(e,
|
|
3034
|
+
}, _i = "__voltro.undo.log", vi = "__voltro.undo.apply", yi = "__voltro.undo.redo", bi = (e, t) => {
|
|
3035
|
+
let n = t?.limit, { data: r } = J(e, _i, n === void 0 ? {} : { limit: n }), i = Q(e, vi), a = Q(e, yi), o = r ?? [], s = o.find((e) => !e.undone && !e.crossesAction), c = o.find((e) => e.undone), l = T(async (e) => {
|
|
2933
3036
|
await i.mutate({ invocationId: e });
|
|
2934
|
-
}, [i]), u =
|
|
3037
|
+
}, [i]), u = T(async (e) => {
|
|
2935
3038
|
await a.mutate({ invocationId: e });
|
|
2936
|
-
}, [a]), d =
|
|
3039
|
+
}, [a]), d = T(async () => {
|
|
2937
3040
|
s && await l(s.id);
|
|
2938
|
-
}, [s, l]), f =
|
|
3041
|
+
}, [s, l]), f = T(async () => {
|
|
2939
3042
|
c && await u(c.id);
|
|
2940
3043
|
}, [c, u]);
|
|
2941
3044
|
return {
|
|
@@ -2948,22 +3051,22 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
2948
3051
|
undoLast: d,
|
|
2949
3052
|
redoLast: f
|
|
2950
3053
|
};
|
|
2951
|
-
},
|
|
3054
|
+
}, xi = (e, t) => ({
|
|
2952
3055
|
name: e,
|
|
2953
3056
|
map: t
|
|
2954
|
-
}),
|
|
3057
|
+
}), Si = (e, t) => e === void 0 ? null : typeof e == "string" ? { event: e } : e(t), Ci = /* @__PURE__ */ new Set(["onMount", "onUnmount"]), wi = (e, t, n) => {
|
|
2955
3058
|
let r = { ...t };
|
|
2956
3059
|
for (let [i, a] of Object.entries(e.map)) {
|
|
2957
|
-
if (
|
|
3060
|
+
if (Ci.has(i) || a === void 0) continue;
|
|
2958
3061
|
let e = t[i];
|
|
2959
3062
|
r[i] = (...r) => {
|
|
2960
|
-
let i =
|
|
3063
|
+
let i = Si(a, t);
|
|
2961
3064
|
if (i !== null && n(i), typeof e == "function") return e(...r);
|
|
2962
3065
|
};
|
|
2963
3066
|
}
|
|
2964
3067
|
return r;
|
|
2965
|
-
},
|
|
2966
|
-
let r =
|
|
3068
|
+
}, Ti = (e, t, n) => {
|
|
3069
|
+
let r = k({
|
|
2967
3070
|
spec: e,
|
|
2968
3071
|
props: t,
|
|
2969
3072
|
sink: n
|
|
@@ -2972,47 +3075,47 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
2972
3075
|
spec: e,
|
|
2973
3076
|
props: t,
|
|
2974
3077
|
sink: n
|
|
2975
|
-
},
|
|
2976
|
-
let e = r.current, t =
|
|
3078
|
+
}, D(() => {
|
|
3079
|
+
let e = r.current, t = Si(e.spec.map.onMount, e.props);
|
|
2977
3080
|
return t !== null && e.sink(t), () => {
|
|
2978
|
-
let e = r.current, t =
|
|
3081
|
+
let e = r.current, t = Si(e.spec.map.onUnmount, e.props);
|
|
2979
3082
|
t !== null && e.sink(t);
|
|
2980
3083
|
};
|
|
2981
|
-
}, []),
|
|
3084
|
+
}, []), O(() => wi(e, t, n), [
|
|
2982
3085
|
e,
|
|
2983
3086
|
t,
|
|
2984
3087
|
n
|
|
2985
3088
|
]);
|
|
2986
|
-
},
|
|
3089
|
+
}, Ei = (e, t) => {
|
|
2987
3090
|
let n = K(e).descriptors[t]?.input;
|
|
2988
|
-
return
|
|
2989
|
-
},
|
|
3091
|
+
return O(() => n === void 0 ? [] : x(n), [n]);
|
|
3092
|
+
}, Di = (t, n) => {
|
|
2990
3093
|
let r = K(t).descriptors[n]?.output;
|
|
2991
|
-
return
|
|
2992
|
-
},
|
|
3094
|
+
return O(() => r === void 0 ? [] : e(r), [r]);
|
|
3095
|
+
}, Oi = (e, t) => {
|
|
2993
3096
|
if (e === t) return !0;
|
|
2994
3097
|
if (e.length !== t.length) return !1;
|
|
2995
3098
|
for (let n = 0; n < e.length; n += 1) if (!Object.is(e[n], t[n])) return !1;
|
|
2996
3099
|
return !0;
|
|
2997
|
-
},
|
|
2998
|
-
let n =
|
|
2999
|
-
return (n.current === null || !
|
|
3100
|
+
}, ki = (e) => Object.keys(e).sort().map((t) => e[t]), Ai = (e, t) => {
|
|
3101
|
+
let n = k(null), r = ki(e);
|
|
3102
|
+
return (n.current === null || !Oi(n.current.key, r)) && (n.current = {
|
|
3000
3103
|
key: r,
|
|
3001
3104
|
value: t(e)
|
|
3002
3105
|
}), n.current.value;
|
|
3003
|
-
},
|
|
3106
|
+
}, ji = (e, t, n, r = {}) => {
|
|
3004
3107
|
let i = J(e, t, { ...n }, r);
|
|
3005
|
-
return
|
|
3108
|
+
return O(() => ({
|
|
3006
3109
|
allowed: i.data?.allowed === !0,
|
|
3007
3110
|
pending: i.data === void 0
|
|
3008
3111
|
}), [i.data]);
|
|
3009
|
-
},
|
|
3112
|
+
}, Mi = (e, t, n, r = {}) => {
|
|
3010
3113
|
let i = J(e, t, { ...n }, r);
|
|
3011
|
-
return
|
|
3114
|
+
return O(() => ({
|
|
3012
3115
|
allowedIds: new Set(i.data?.allowedIds ?? []),
|
|
3013
3116
|
pending: i.data === void 0
|
|
3014
3117
|
}), [i.data]);
|
|
3015
|
-
},
|
|
3118
|
+
}, Ni = (e) => {
|
|
3016
3119
|
switch (e) {
|
|
3017
3120
|
case "select":
|
|
3018
3121
|
case "radio":
|
|
@@ -3028,26 +3131,26 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3028
3131
|
case "switch": return "boolean";
|
|
3029
3132
|
default: return null;
|
|
3030
3133
|
}
|
|
3031
|
-
},
|
|
3134
|
+
}, Pi = (e) => x(e).map((e) => {
|
|
3032
3135
|
if (e.name.includes(".")) return null;
|
|
3033
|
-
let t =
|
|
3136
|
+
let t = Ni(e.widget);
|
|
3034
3137
|
return t === null ? null : {
|
|
3035
3138
|
name: e.name,
|
|
3036
3139
|
label: e.label,
|
|
3037
3140
|
kind: t,
|
|
3038
3141
|
...e.options ? { options: e.options } : {}
|
|
3039
3142
|
};
|
|
3040
|
-
}).filter((e) => e !== null),
|
|
3143
|
+
}).filter((e) => e !== null), Fi = (e) => {
|
|
3041
3144
|
let t = {};
|
|
3042
3145
|
for (let [n, r] of Object.entries(e)) r === void 0 || r === "" || Array.isArray(r) && r.length === 0 || (t[n] = r);
|
|
3043
3146
|
return t;
|
|
3044
|
-
},
|
|
3045
|
-
let r = K(e).descriptors[t]?.input, i =
|
|
3046
|
-
o((n) =>
|
|
3147
|
+
}, Ii = (e, t, n = {}) => {
|
|
3148
|
+
let r = K(e).descriptors[t]?.input, i = O(() => r === void 0 ? [] : Pi(r), [r]), [a, o] = A(n.initial ?? {}), s = T((e, t) => {
|
|
3149
|
+
o((n) => Fi({
|
|
3047
3150
|
...n,
|
|
3048
3151
|
[e]: t
|
|
3049
3152
|
}));
|
|
3050
|
-
}, []), c =
|
|
3153
|
+
}, []), c = T(() => o({}), []), l = J(e, t, O(() => Fi(a), [a]));
|
|
3051
3154
|
return {
|
|
3052
3155
|
filters: i,
|
|
3053
3156
|
values: a,
|
|
@@ -3058,20 +3161,20 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3058
3161
|
loading: l.data === void 0,
|
|
3059
3162
|
error: l.error
|
|
3060
3163
|
};
|
|
3061
|
-
},
|
|
3164
|
+
}, Li = (e, t, n = {}) => {
|
|
3062
3165
|
let r = J(e, t, n), i = r.data;
|
|
3063
3166
|
return {
|
|
3064
3167
|
record: Array.isArray(i) ? i[0] : i,
|
|
3065
3168
|
loading: i === void 0,
|
|
3066
3169
|
error: r.error
|
|
3067
3170
|
};
|
|
3068
|
-
},
|
|
3069
|
-
let [n, r] =
|
|
3070
|
-
return
|
|
3171
|
+
}, Ri = (e, t = 300) => {
|
|
3172
|
+
let [n, r] = A(e);
|
|
3173
|
+
return D(() => {
|
|
3071
3174
|
let n = setTimeout(() => r(e), t);
|
|
3072
3175
|
return () => clearTimeout(n);
|
|
3073
3176
|
}, [e, t]), n;
|
|
3074
|
-
},
|
|
3177
|
+
}, zi = (e) => {
|
|
3075
3178
|
let { value: t, debouncedValue: n, data: r, interpret: i, skipEmpty: a = !0 } = e;
|
|
3076
3179
|
if (a && t.trim() === "") return {
|
|
3077
3180
|
status: "idle",
|
|
@@ -3089,39 +3192,39 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3089
3192
|
valid: o.valid,
|
|
3090
3193
|
message: o.message
|
|
3091
3194
|
};
|
|
3092
|
-
},
|
|
3093
|
-
let { input: i, interpret: a, debounceMs: o = 300, skipEmpty: s = !0 } = r, c =
|
|
3094
|
-
return
|
|
3195
|
+
}, Bi = (e, t, n, r) => {
|
|
3196
|
+
let { input: i, interpret: a, debounceMs: o = 300, skipEmpty: s = !0 } = r, c = Ri(n, o), l = s && c.trim() === "", u = J(e, t, O(() => i ? i(c) : { value: c }, [i, c]), { skip: l });
|
|
3197
|
+
return zi({
|
|
3095
3198
|
value: n,
|
|
3096
3199
|
debouncedValue: c,
|
|
3097
3200
|
data: l ? null : u.data,
|
|
3098
3201
|
interpret: a,
|
|
3099
3202
|
skipEmpty: s
|
|
3100
3203
|
});
|
|
3101
|
-
},
|
|
3204
|
+
}, Vi = (e, t) => ({
|
|
3102
3205
|
name: e,
|
|
3103
3206
|
payload: t
|
|
3104
|
-
}),
|
|
3105
|
-
let n =
|
|
3207
|
+
}), Hi = (e, t) => {
|
|
3208
|
+
let n = ie.decodeUnknownEither(e.payload, { errors: "all" })(t);
|
|
3106
3209
|
if (n._tag === "Right") return {
|
|
3107
3210
|
valid: !0,
|
|
3108
3211
|
errors: {}
|
|
3109
3212
|
};
|
|
3110
3213
|
let r = {};
|
|
3111
|
-
for (let e of
|
|
3214
|
+
for (let e of pe.formatErrorSync(n.left)) r[e.path.join(".") || "(root)"] = e.message;
|
|
3112
3215
|
return {
|
|
3113
3216
|
valid: !1,
|
|
3114
3217
|
errors: r
|
|
3115
3218
|
};
|
|
3116
|
-
},
|
|
3219
|
+
}, Ui = (e) => {
|
|
3117
3220
|
let t = new Map(e.map((e) => [e.name, e]));
|
|
3118
3221
|
return {
|
|
3119
3222
|
names: [...t.keys()].sort(),
|
|
3120
3223
|
get: (e) => t.get(e),
|
|
3121
3224
|
events: e
|
|
3122
3225
|
};
|
|
3123
|
-
},
|
|
3124
|
-
let n =
|
|
3226
|
+
}, Wi = (e, t) => {
|
|
3227
|
+
let n = Ui(e);
|
|
3125
3228
|
return {
|
|
3126
3229
|
track: (e, r) => {
|
|
3127
3230
|
let i = n.get(e);
|
|
@@ -3130,7 +3233,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3130
3233
|
return;
|
|
3131
3234
|
}
|
|
3132
3235
|
if (process.env.NODE_ENV !== "production") {
|
|
3133
|
-
let t =
|
|
3236
|
+
let t = Hi(i, r);
|
|
3134
3237
|
t.valid || console.error(`[@voltro/client] analytics.track('${e}'): payload failed its schema`, t.errors);
|
|
3135
3238
|
}
|
|
3136
3239
|
t({
|
|
@@ -3141,49 +3244,49 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3141
3244
|
names: n.names,
|
|
3142
3245
|
catalog: n
|
|
3143
3246
|
};
|
|
3144
|
-
},
|
|
3145
|
-
let n =
|
|
3247
|
+
}, Gi = (e, t) => {
|
|
3248
|
+
let n = bn(e, t);
|
|
3146
3249
|
return {
|
|
3147
|
-
preview:
|
|
3250
|
+
preview: T((e) => n.run(e), [n]),
|
|
3148
3251
|
diff: n.lastResult,
|
|
3149
3252
|
pending: n.pending,
|
|
3150
3253
|
error: n.error
|
|
3151
3254
|
};
|
|
3152
|
-
},
|
|
3255
|
+
}, Ki = (e, t, n, r) => [...e, {
|
|
3153
3256
|
id: t,
|
|
3154
3257
|
tag: n,
|
|
3155
3258
|
input: r,
|
|
3156
3259
|
status: "pending",
|
|
3157
3260
|
attempts: 0
|
|
3158
|
-
}],
|
|
3261
|
+
}], qi = (e, t, n) => e.map((e) => e.id === t ? {
|
|
3159
3262
|
...e,
|
|
3160
3263
|
...n
|
|
3161
|
-
} : e),
|
|
3264
|
+
} : e), Ji = (e, t) => qi(e, t, { status: "sent" }), Yi = (e, t, n) => e.map((e) => e.id === t ? {
|
|
3162
3265
|
...e,
|
|
3163
3266
|
status: "failed",
|
|
3164
3267
|
error: n,
|
|
3165
3268
|
attempts: e.attempts + 1
|
|
3166
|
-
} : e),
|
|
3269
|
+
} : e), Xi = (e, t, n) => qi(e, t, {
|
|
3167
3270
|
status: "conflict",
|
|
3168
3271
|
error: n
|
|
3169
|
-
}),
|
|
3272
|
+
}), Zi = (e, t, n) => e.map((e) => e.id === t && e.status === "conflict" ? {
|
|
3170
3273
|
...e,
|
|
3171
3274
|
input: n,
|
|
3172
3275
|
status: "pending",
|
|
3173
3276
|
error: void 0
|
|
3174
|
-
} : e),
|
|
3277
|
+
} : e), Qi = (e) => e.filter((e) => e.status !== "sent"), $i = (e) => {
|
|
3175
3278
|
let t = [];
|
|
3176
3279
|
for (let n of e) {
|
|
3177
3280
|
if (n.status === "conflict") break;
|
|
3178
3281
|
(n.status === "pending" || n.status === "failed") && t.push(n);
|
|
3179
3282
|
}
|
|
3180
3283
|
return t;
|
|
3181
|
-
},
|
|
3284
|
+
}, ea = (e) => {
|
|
3182
3285
|
let t = e;
|
|
3183
3286
|
return t?.conflict === !0 || t?._tag === "UndoBoundaryError" && t?.boundary === "conflict";
|
|
3184
|
-
},
|
|
3185
|
-
let [t, n] =
|
|
3186
|
-
return
|
|
3287
|
+
}, ta = (e) => {
|
|
3288
|
+
let [t, n] = A(e ?? (typeof navigator < "u" ? navigator.onLine : !0));
|
|
3289
|
+
return D(() => {
|
|
3187
3290
|
if (e !== void 0) {
|
|
3188
3291
|
n(e);
|
|
3189
3292
|
return;
|
|
@@ -3194,11 +3297,11 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3194
3297
|
window.removeEventListener("online", t), window.removeEventListener("offline", r);
|
|
3195
3298
|
};
|
|
3196
3299
|
}, [e]), t;
|
|
3197
|
-
},
|
|
3198
|
-
let { send: t, persistence: n, isConflict: r =
|
|
3300
|
+
}, na = (e) => {
|
|
3301
|
+
let { send: t, persistence: n, isConflict: r = ea, idFor: i } = e, [a, o] = A([]), s = ta(e.online), c = k(a);
|
|
3199
3302
|
c.current = a;
|
|
3200
|
-
let l =
|
|
3201
|
-
|
|
3303
|
+
let l = k(0), u = k(Math.random().toString(36).slice(2, 8)), d = k(n === void 0);
|
|
3304
|
+
D(() => {
|
|
3202
3305
|
if (n === void 0 || d.current) return;
|
|
3203
3306
|
let e = !1;
|
|
3204
3307
|
return n.load().then((t) => {
|
|
@@ -3208,28 +3311,28 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3208
3311
|
}), () => {
|
|
3209
3312
|
e = !0;
|
|
3210
3313
|
};
|
|
3211
|
-
}, [n]),
|
|
3212
|
-
n === void 0 || !d.current || n.save(
|
|
3314
|
+
}, [n]), D(() => {
|
|
3315
|
+
n === void 0 || !d.current || n.save(Qi(a)).catch(() => {});
|
|
3213
3316
|
}, [n, a]);
|
|
3214
|
-
let f =
|
|
3317
|
+
let f = T((e, t) => {
|
|
3215
3318
|
let n = i?.() ?? `obx_${u.current}_${l.current++}_${e}`;
|
|
3216
|
-
o((r) =>
|
|
3217
|
-
}, [i]), p =
|
|
3218
|
-
for (let e of
|
|
3219
|
-
await t(e), o((t) =>
|
|
3319
|
+
o((r) => Ki(r, n, e, t));
|
|
3320
|
+
}, [i]), p = T(async () => {
|
|
3321
|
+
for (let e of $i(c.current)) try {
|
|
3322
|
+
await t(e), o((t) => Ji(t, e.id));
|
|
3220
3323
|
} catch (t) {
|
|
3221
3324
|
if (r(t)) {
|
|
3222
|
-
o((n) =>
|
|
3325
|
+
o((n) => Xi(n, e.id, t));
|
|
3223
3326
|
break;
|
|
3224
3327
|
}
|
|
3225
|
-
o((n) =>
|
|
3328
|
+
o((n) => Yi(n, e.id, t));
|
|
3226
3329
|
}
|
|
3227
3330
|
}, [t, r]);
|
|
3228
|
-
|
|
3331
|
+
D(() => {
|
|
3229
3332
|
s && p();
|
|
3230
3333
|
}, [s, p]);
|
|
3231
|
-
let m =
|
|
3232
|
-
let n =
|
|
3334
|
+
let m = T((e, t) => {
|
|
3335
|
+
let n = Zi(c.current, e, t);
|
|
3233
3336
|
c.current = n, o(n), s && p();
|
|
3234
3337
|
}, [s, p]);
|
|
3235
3338
|
return {
|
|
@@ -3241,7 +3344,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3241
3344
|
conflicts: a.filter((e) => e.status === "conflict"),
|
|
3242
3345
|
resolveConflict: m
|
|
3243
3346
|
};
|
|
3244
|
-
},
|
|
3347
|
+
}, ra = (e) => {
|
|
3245
3348
|
let { scrollTop: t, viewportHeight: n, rowHeight: r, overscan: i = 5, total: a } = e, o = r > 0 ? r : 1, s = Math.max(0, Math.floor(t / o)), c = Math.ceil(n / o), l = Math.max(0, s - i), u = s + c + i, d = a === void 0 ? u : Math.min(u, a);
|
|
3246
3349
|
return {
|
|
3247
3350
|
startIndex: l,
|
|
@@ -3251,8 +3354,8 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3251
3354
|
topSpacer: l * r,
|
|
3252
3355
|
bottomSpacer: a === void 0 ? 0 : Math.max(0, (a - d) * r)
|
|
3253
3356
|
};
|
|
3254
|
-
},
|
|
3255
|
-
let { rowHeight: r, viewportHeight: i, overscan: a, total: o, input: s } = n, [c, l] =
|
|
3357
|
+
}, ia = (e, t, n) => {
|
|
3358
|
+
let { rowHeight: r, viewportHeight: i, overscan: a, total: o, input: s } = n, [c, l] = A(0), u = O(() => ra({
|
|
3256
3359
|
scrollTop: c,
|
|
3257
3360
|
viewportHeight: i,
|
|
3258
3361
|
rowHeight: r,
|
|
@@ -3264,7 +3367,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3264
3367
|
r,
|
|
3265
3368
|
a,
|
|
3266
3369
|
o
|
|
3267
|
-
]), d = J(e, t,
|
|
3370
|
+
]), d = J(e, t, O(() => ({
|
|
3268
3371
|
...s,
|
|
3269
3372
|
offset: u.offset,
|
|
3270
3373
|
limit: u.limit
|
|
@@ -3272,7 +3375,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3272
3375
|
s,
|
|
3273
3376
|
u.offset,
|
|
3274
3377
|
u.limit
|
|
3275
|
-
])), f =
|
|
3378
|
+
])), f = T((e) => {
|
|
3276
3379
|
l(e.currentTarget.scrollTop);
|
|
3277
3380
|
}, []);
|
|
3278
3381
|
return {
|
|
@@ -3284,11 +3387,11 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3284
3387
|
loading: d.data === void 0,
|
|
3285
3388
|
error: d.error
|
|
3286
3389
|
};
|
|
3287
|
-
},
|
|
3288
|
-
let { errorBus: t } = K(e), [n, r] =
|
|
3289
|
-
|
|
3390
|
+
}, aa = () => typeof navigator > "u" || navigator.onLine, oa = (e) => {
|
|
3391
|
+
let { errorBus: t } = K(e), [n, r] = A(aa), [i, a] = A(0), [o, s] = A(void 0), c = k(!0);
|
|
3392
|
+
D(() => (c.current = !0, () => {
|
|
3290
3393
|
c.current = !1;
|
|
3291
|
-
}), []),
|
|
3394
|
+
}), []), D(() => {
|
|
3292
3395
|
if (typeof window > "u") return;
|
|
3293
3396
|
let e = () => {
|
|
3294
3397
|
r(!0), a(0);
|
|
@@ -3296,12 +3399,12 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3296
3399
|
return window.addEventListener("online", e), window.addEventListener("offline", t), () => {
|
|
3297
3400
|
window.removeEventListener("online", e), window.removeEventListener("offline", t);
|
|
3298
3401
|
};
|
|
3299
|
-
}, []),
|
|
3402
|
+
}, []), D(() => {
|
|
3300
3403
|
if (t?.on) return t.on(() => {
|
|
3301
3404
|
c.current && (a((e) => e + 1), s(Date.now()));
|
|
3302
3405
|
});
|
|
3303
3406
|
}, [t]);
|
|
3304
|
-
let l =
|
|
3407
|
+
let l = T(() => {
|
|
3305
3408
|
a(0);
|
|
3306
3409
|
}, []);
|
|
3307
3410
|
return {
|
|
@@ -3311,7 +3414,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3311
3414
|
lastFailureAt: o,
|
|
3312
3415
|
reportSuccess: l
|
|
3313
3416
|
};
|
|
3314
|
-
},
|
|
3417
|
+
}, sa = "__voltro.connections.list", ca = "__voltro.connections.start", la = "__voltro.connections.submitToken", ua = "__voltro.connections.disconnect", da = {
|
|
3315
3418
|
connectionId: "",
|
|
3316
3419
|
kind: "oauth2",
|
|
3317
3420
|
label: "",
|
|
@@ -3322,14 +3425,14 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3322
3425
|
expiresAt: null,
|
|
3323
3426
|
lastError: null,
|
|
3324
3427
|
connectedAt: null
|
|
3325
|
-
},
|
|
3428
|
+
}, fa = (e, t) => {
|
|
3326
3429
|
if (t === "redirect") {
|
|
3327
3430
|
globalThis.location.assign(e);
|
|
3328
3431
|
return;
|
|
3329
3432
|
}
|
|
3330
3433
|
globalThis.open(e, "voltro-connect", "width=620,height=760,menubar=no,toolbar=no") === null && globalThis.location.assign(e);
|
|
3331
|
-
},
|
|
3332
|
-
let { data: t } = J(e,
|
|
3434
|
+
}, pa = (e) => {
|
|
3435
|
+
let { data: t } = J(e, sa, {}), n = bn(e, ca), r = Q(e, la), i = Q(e, ua), a = t ?? [], o = n.pending || r.pending || i.pending, s = T((e) => ({
|
|
3333
3436
|
...e,
|
|
3334
3437
|
connected: e.status === "connected",
|
|
3335
3438
|
needsAttention: e.status === "expired" || e.status === "revoked" || e.status === "error",
|
|
@@ -3337,7 +3440,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3337
3440
|
connect: async (t) => {
|
|
3338
3441
|
if (e.kind !== "oauth2") throw Error(`connection "${e.connectionId}" is a personal-access-token connection — call submitToken(token), not connect().`);
|
|
3339
3442
|
let r = t?.redirectTo ?? `${globalThis.location.pathname}${globalThis.location.search}`;
|
|
3340
|
-
|
|
3443
|
+
fa((await n.run({
|
|
3341
3444
|
connectionId: e.connectionId,
|
|
3342
3445
|
redirectTo: r
|
|
3343
3446
|
})).authorizeUrl, t?.mode);
|
|
@@ -3357,7 +3460,7 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3357
3460
|
n,
|
|
3358
3461
|
r,
|
|
3359
3462
|
i
|
|
3360
|
-
]), c =
|
|
3463
|
+
]), c = T((e) => {
|
|
3361
3464
|
let t = a.find((t) => t.connectionId === e);
|
|
3362
3465
|
return t === void 0 ? void 0 : s(t);
|
|
3363
3466
|
}, [a, s]);
|
|
@@ -3367,10 +3470,10 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3367
3470
|
get: c,
|
|
3368
3471
|
pending: o
|
|
3369
3472
|
};
|
|
3370
|
-
},
|
|
3371
|
-
let n =
|
|
3372
|
-
return
|
|
3373
|
-
...
|
|
3473
|
+
}, ma = (e, t) => {
|
|
3474
|
+
let n = pa(e), r = n.get(t);
|
|
3475
|
+
return O(() => r === void 0 ? {
|
|
3476
|
+
...da,
|
|
3374
3477
|
connectionId: t,
|
|
3375
3478
|
label: t,
|
|
3376
3479
|
connected: !1,
|
|
@@ -3395,6 +3498,6 @@ var $r = () => T(Zr), ei = (e) => Yr($r().scopes, e), ti = (e) => Xr($r().scopes
|
|
|
3395
3498
|
n.loading,
|
|
3396
3499
|
n.pending
|
|
3397
3500
|
]);
|
|
3398
|
-
},
|
|
3501
|
+
}, ha = "framework-client";
|
|
3399
3502
|
//#endregion
|
|
3400
|
-
export {
|
|
3503
|
+
export { Zr as ADMIN_SCOPE, ha as CLIENT_NAME, sa as CONNECTIONS_LIST_TAG, ua as CONNECTION_DISCONNECT_TAG, ca as CONNECTION_START_TAG, la as CONNECTION_SUBMIT_TOKEN_TAG, v as FORM_FLASH_SCRIPT_ID, p as FORM_KEY_FIELD, g as FORM_PATH_PREFIX, u as FORM_REDIRECT_FIELD, jn as FormBindingProvider, Fe as FrameworkRuntimesContext, rt as FrameworkRuntimesProvider, ke as LoadingSubscriptionCache, ti as PermissionProvider, _ as RICH_TEXT_MARKS, a as RICH_TEXT_MAX_NODES, d as RichTextDocument, Pe as RpcErrorBus, Br as ServerRequestContext, Hr as ServerRequestProvider, Oe as SubscriptionCache, vi as UNDO_APPLY_TAG, _i as UNDO_LOG_TAG, yi as UNDO_REDO_TAG, Sn as ValidationMessagesProvider, Je as _resetFrameworkRuntimesWarning, Ue as _resetSsrDescriptors, Un as applyPreloadSeeds, Wt as applyStoreSeeds, Ze as buildApiRuntime, Qr as canCall, $r as canCallAny, rn as clearMutations, Qi as clearSent, wt as clearStoreHistory, ra as computeWindow, Wi as createAnalytics, Fn as createHooks, ci as decideAccess, c as decodeFieldIssues, Vi as defineEvent, zt as defineStore, xi as defineTracking, Rt as definedStores, hi as deriveEntityAdmins, n as documentLocale, y as emptyRichTextDocument, Ki as enqueueEntry, Ui as eventCatalog, Pi as filtersFromSchema, r as formActionPath, m as formDataToInput, S as formField, t as formSections, pn as freshIdempotencyKey, cn as getMutationNotifier, tn as getMutations, zr as globalContext, o as isRichTextDocument, s as isSafeHref, Pr as isUnauthenticated, Xe as isUnresolvedApi, In as makePreloadSeedBag, Vt as makeStoreSeedBag, ai as manifestUrl, Xi as markConflict, Yi as markFailed, Ji as markSent, ui as openAccessReason, h as parseRichText, Yr as provenanceUrl, je as publishClientError, me as publishClientTrace, Gn as readPreloadedSeedOutcome, Wn as readPreloadedSnapshot, Ve as registerSsrDescriptors, $i as replayable, Ne as reportClientError, li as requiredScopes, Kn as resetPreloadSeeds, Bt as resetStoreRegistryForTests, lt as resetStoreStorageForTest, q as resolveByTag, Zi as resolveConflictEntry, ct as resolveStoreStorage, Si as resolveTrackingEvent, b as resolveValidationMessage, ee as restrictToSchema, Tr as resumableConsumeProgram, f as richTextToPlainText, Wr as rowsToOptions, Qn as runSequence, e as schemaToColumns, x as schemaToFields, Vn as seedPreloadedSubscription, Hn as seedPreloadedSubscriptionFailure, Ut as seedStore, Zn as sequence, l as serializeRichText, sn as setMutationNotifier, Rn as setPreloadSeedResolver, Ht as setStoreSeedResolver, st as setStoreStorage, en as settleMutation, ut as shallow, Oi as shallowArrayEqual, ki as sourceValues, Le as ssrClientProxy, He as ssrDescriptorsFor, We as ssrStubHandle, U as stableKey, nt as startApiSupervisor, $t as startMutation, St as storeHistory, Me as subscribeClientErrors, he as subscribeClientTraces, nn as subscribeMutations, Ct as subscribeStoreHistory, ve as supersedesConfirmedPatches, Tt as travelToStoreState, di as useAccessDecision, bn as useAction, jr as useAgent, Ar as useAgentChat, wr as useAgentStream, Bi as useAsyncValidation, ri as useCan, ii as useCanAny, oi as useCapabilityManifest, ma as useConnection, oa as useConnectionStatus, pa as useConnections, Mr as useDataCopilot, qr as useDataTable, Ri as useDebounced, Ai as useDerived, Xn as useEvent, An as useFormBinding, Mn as useFormBindingContext, Nn as useFormField, Ur as useFormFlash, Ei as useFormSkeleton, K as useFrameworkApi, Ye as useFrameworkRuntimes, Q as useMutation, Ir as useOnRpcError, na as useOutbox, ni as usePermissions, qn as usePreloadedSubscription, Gi as usePreview, Xr as useProvenance, Gr as useQueryField, Ii as useQueryFilters, Li as useRecord, Nr as useRefreshSubscriptions, ji as useResourceCan, Mi as useResourceCans, Dr as useResumableAgentStream, $n as useSequence, Vr as useServerRequest, J as useSubscription, Rr as useSubscriptionHealth, Di as useTableSkeleton, Ti as useTracking, or as useTranscription, gi as useUndo, bi as useUndoLog, ar as useUpload, Cn as useValidationMessages, ia as useWindowedSubscription, cr as useWorkflow, gr as useWorkflowDomainEvents, _r as useWorkflowEventDeliveries, hr as useWorkflowEvents, dr as useWorkflowRun, mr as useWorkflowRunEvents, Cr as useWorkflowRunState, pr as useWorkflowRunSteps, fr as useWorkflowRuns, lr as useWorkflowSignal, ur as useWorkflowUpdate, Hi as validateEventPayload, i as validateFields, zi as validationStatus, Fr as wireAuthRefresh, mn as withIdempotencyKey, wi as wrapTrackedCallbacks };
|