@voltro/client 0.5.0 → 0.6.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 +48 -1
- package/dist/index.d.ts +187 -42
- package/dist/index.js +440 -313
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -30,10 +30,10 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
30
30
|
let r = t.split("."), i = (e) => typeof e == "object" && e && !Array.isArray(e) ? { ...e } : {}, a = i(e), o = a;
|
|
31
31
|
for (let e = 0; e < r.length - 1; e += 1) o[r[e]] = i(o[r[e]]), o = o[r[e]];
|
|
32
32
|
return o[r[r.length - 1]] = n, a;
|
|
33
|
-
},
|
|
33
|
+
}, k = (e, t) => {
|
|
34
34
|
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];
|
|
35
35
|
return i.length === 0 ? null : new Set(i);
|
|
36
|
-
},
|
|
36
|
+
}, te = (e, t, n) => {
|
|
37
37
|
let r = e.path, i = e.by ?? "id";
|
|
38
38
|
if (e.op === "insert") {
|
|
39
39
|
let a = e.shapeItem ?? e.shape, o = a ? {
|
|
@@ -50,7 +50,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
50
50
|
return O(e ?? {}, r, s === "append" ? [...t, o] : [o, ...t]);
|
|
51
51
|
};
|
|
52
52
|
}
|
|
53
|
-
let a =
|
|
53
|
+
let a = k(e, t);
|
|
54
54
|
if (a === null) return null;
|
|
55
55
|
if (e.op === "update") {
|
|
56
56
|
let n = e.shapeItem ?? e.shape, o = n ? (e) => ({
|
|
@@ -72,8 +72,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
72
72
|
let t = Array.isArray(D(e, r)) ? D(e, r) : [];
|
|
73
73
|
return O(e, r, t.filter((e) => !a.has(e[i])));
|
|
74
74
|
};
|
|
75
|
-
},
|
|
76
|
-
if (e.path !== void 0) return
|
|
75
|
+
}, ne = (e, t, n) => {
|
|
76
|
+
if (e.path !== void 0) return te(e, t, n);
|
|
77
77
|
switch (e.op) {
|
|
78
78
|
case "insert": {
|
|
79
79
|
let r = e.shape ? {
|
|
@@ -91,7 +91,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
91
91
|
};
|
|
92
92
|
}
|
|
93
93
|
case "update": {
|
|
94
|
-
let n =
|
|
94
|
+
let n = k(e, t);
|
|
95
95
|
if (n === null) return null;
|
|
96
96
|
let r = e.shape, i = r ? (e) => ({
|
|
97
97
|
...r(t, e),
|
|
@@ -108,17 +108,17 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
110
|
case "delete": {
|
|
111
|
-
let n =
|
|
111
|
+
let n = k(e, t);
|
|
112
112
|
return n === null ? null : (e) => (Array.isArray(e) ? e : []).filter((e) => !n.has(e.id));
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
|
-
},
|
|
115
|
+
}, re = 5e3, ie = class {
|
|
116
116
|
entries = /* @__PURE__ */ new Map();
|
|
117
117
|
inactiveTtlMs;
|
|
118
118
|
onChangeHook;
|
|
119
119
|
errorBus;
|
|
120
120
|
constructor(e = {}) {
|
|
121
|
-
this.inactiveTtlMs = e.inactiveTtlMs ??
|
|
121
|
+
this.inactiveTtlMs = e.inactiveTtlMs ?? re, this.onChangeHook = e.onChange, this.errorBus = e.errorBus;
|
|
122
122
|
}
|
|
123
123
|
subscribe(e, t, n, r, i = {}) {
|
|
124
124
|
let a = C(e), o = typeof e[0] == "string" ? e[0] : void 0, s = this.entries.get(a);
|
|
@@ -178,7 +178,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
178
178
|
if (!n) continue;
|
|
179
179
|
}
|
|
180
180
|
if (e.computed && i.op === "insert" && i.path === void 0) continue;
|
|
181
|
-
let a =
|
|
181
|
+
let a = ne(i, t, r);
|
|
182
182
|
if (a === null) continue;
|
|
183
183
|
let o = {
|
|
184
184
|
id: `${r}-${e.key}`,
|
|
@@ -320,14 +320,14 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
320
320
|
t && t.subscribers.size === 0 && (t.fiber && d.runFork(p.interrupt(t.fiber)), this.entries.delete(e));
|
|
321
321
|
}, this.inactiveTtlMs)));
|
|
322
322
|
}
|
|
323
|
-
},
|
|
323
|
+
}, ae = class extends ie {
|
|
324
324
|
subscribe(e, t, n, r, i = {}) {
|
|
325
325
|
return {
|
|
326
326
|
getSnapshot: () => this.peek(e),
|
|
327
327
|
unsubscribe: () => {}
|
|
328
328
|
};
|
|
329
329
|
}
|
|
330
|
-
},
|
|
330
|
+
}, oe = class {
|
|
331
331
|
#e = /* @__PURE__ */ new Set();
|
|
332
332
|
on(e) {
|
|
333
333
|
return this.#e.add(e), () => {
|
|
@@ -339,34 +339,34 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
339
339
|
t(e);
|
|
340
340
|
} catch {}
|
|
341
341
|
}
|
|
342
|
-
},
|
|
342
|
+
}, se = (e) => {
|
|
343
343
|
if (typeof e != "object" || !e) return;
|
|
344
344
|
let t = e._tag;
|
|
345
345
|
return typeof t == "string" ? t : void 0;
|
|
346
|
-
},
|
|
346
|
+
}, ce = e(null), le = () => {
|
|
347
347
|
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");
|
|
348
|
-
},
|
|
349
|
-
get: (e, t) =>
|
|
348
|
+
}, A = new Proxy(() => le(), {
|
|
349
|
+
get: (e, t) => A,
|
|
350
350
|
has: () => !0,
|
|
351
|
-
apply: () =>
|
|
352
|
-
}),
|
|
351
|
+
apply: () => le()
|
|
352
|
+
}), ue = {
|
|
353
353
|
runtime: { runPromise: () => Promise.reject(/* @__PURE__ */ Error("Voltro: mutations are not invokable during SSR")) },
|
|
354
|
-
cache: new
|
|
355
|
-
client:
|
|
354
|
+
cache: new ae(),
|
|
355
|
+
client: A,
|
|
356
356
|
descriptors: {},
|
|
357
357
|
inspectBaseUrl: "",
|
|
358
|
-
errorBus: new
|
|
359
|
-
},
|
|
360
|
-
get: () =>
|
|
358
|
+
errorBus: new oe()
|
|
359
|
+
}, de = {
|
|
360
|
+
get: () => ue,
|
|
361
361
|
names: []
|
|
362
|
-
},
|
|
363
|
-
|
|
364
|
-
},
|
|
365
|
-
let e = r(
|
|
366
|
-
return e ? (
|
|
367
|
-
|
|
368
|
-
}, 0)),
|
|
369
|
-
},
|
|
362
|
+
}, j = !1, M = !1, N = null, fe = () => {
|
|
363
|
+
j = !1, M = !1, N !== null && (clearTimeout(N), N = null);
|
|
364
|
+
}, pe = () => {
|
|
365
|
+
let e = r(ce);
|
|
366
|
+
return e ? (M || (M = !0, N !== null && (clearTimeout(N), N = null)), e) : (typeof window < "u" && !j && !M && N === null && process.env.NODE_ENV !== "production" && (N = setTimeout(() => {
|
|
367
|
+
N = null, !(j || M) && (j = !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>."));
|
|
368
|
+
}, 0)), de);
|
|
369
|
+
}, P = (e) => pe().get(e), me = ({ apis: e, children: t }) => {
|
|
370
370
|
let n = a(() => ({
|
|
371
371
|
get: (t) => {
|
|
372
372
|
let n = e.get(t);
|
|
@@ -378,11 +378,11 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
378
378
|
},
|
|
379
379
|
names: Array.from(e.keys())
|
|
380
380
|
}), [e]);
|
|
381
|
-
return /* @__PURE__ */ v(
|
|
381
|
+
return /* @__PURE__ */ v(ce.Provider, {
|
|
382
382
|
value: n,
|
|
383
383
|
children: t
|
|
384
384
|
});
|
|
385
|
-
},
|
|
385
|
+
}, F = (e, t) => {
|
|
386
386
|
let n = t.split("."), r = e;
|
|
387
387
|
for (let e = 0; e < n.length; e++) {
|
|
388
388
|
let i = n[e];
|
|
@@ -401,56 +401,72 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
401
401
|
}
|
|
402
402
|
if (typeof r != "function") throw Error(`@voltro/client: rpc tag ${JSON.stringify(t)} did not resolve to a callable method.`);
|
|
403
403
|
return r;
|
|
404
|
-
},
|
|
404
|
+
}, he = Object.freeze({
|
|
405
405
|
data: void 0,
|
|
406
406
|
revision: -1,
|
|
407
407
|
emittedAt: void 0,
|
|
408
408
|
error: void 0,
|
|
409
409
|
pendingPatches: 0
|
|
410
|
-
}),
|
|
411
|
-
|
|
410
|
+
}), ge = () => he;
|
|
411
|
+
function I(e, t, r = {}, i = {}) {
|
|
412
|
+
let s = i.skip === !0, { runtime: l, cache: u, client: d, descriptors: f } = P(e), p = f[t]?.source, m = o(r);
|
|
412
413
|
m.current = r;
|
|
413
414
|
let h = o(d);
|
|
414
415
|
h.current = d;
|
|
415
|
-
let g = o(() =>
|
|
416
|
+
let g = o(() => F(h.current, t)(m.current)), _ = a(() => [t, m.current], [t, a(() => JSON.stringify(Object.entries(r).sort(([e], [t]) => e.localeCompare(t))), [r])]), v = c(n((e) => s ? () => {} : u.subscribe(_, g.current, l, e, p === void 0 ? {} : { source: p }).unsubscribe, [
|
|
416
417
|
u,
|
|
417
418
|
l,
|
|
418
419
|
p,
|
|
419
420
|
s,
|
|
420
421
|
_
|
|
421
|
-
]), n(() => s ?
|
|
422
|
+
]), n(() => s ? he : u.peek(_), [
|
|
422
423
|
u,
|
|
423
424
|
s,
|
|
424
425
|
_
|
|
425
|
-
]),
|
|
426
|
-
return {
|
|
427
|
-
data: b,
|
|
426
|
+
]), ge), y = v.data !== void 0, b = y && (Array.isArray(v.data) ? v.data.length === 0 : v.data === null), x = {
|
|
428
427
|
revision: v.revision,
|
|
429
428
|
emittedAt: v.emittedAt,
|
|
430
429
|
error: v.error,
|
|
431
|
-
pendingPatches: v.pendingPatches
|
|
432
|
-
|
|
433
|
-
|
|
430
|
+
pendingPatches: v.pendingPatches
|
|
431
|
+
};
|
|
432
|
+
return i.fallback === void 0 ? y ? {
|
|
433
|
+
...x,
|
|
434
|
+
data: v.data,
|
|
435
|
+
loading: !1,
|
|
436
|
+
isEmpty: b
|
|
437
|
+
} : {
|
|
438
|
+
...x,
|
|
439
|
+
data: void 0,
|
|
440
|
+
loading: !0,
|
|
441
|
+
isEmpty: !1
|
|
442
|
+
} : {
|
|
443
|
+
...x,
|
|
444
|
+
data: y ? v.data : i.fallback,
|
|
445
|
+
loading: !y,
|
|
446
|
+
isEmpty: b
|
|
434
447
|
};
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
448
|
+
}
|
|
449
|
+
//#endregion
|
|
450
|
+
//#region src/mutationsBus.ts
|
|
451
|
+
var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
452
|
+
ve = L.slice();
|
|
453
|
+
}, z = () => {
|
|
454
|
+
ye();
|
|
455
|
+
for (let e of R) try {
|
|
440
456
|
e();
|
|
441
457
|
} catch {}
|
|
442
|
-
},
|
|
458
|
+
}, B = (e) => {
|
|
443
459
|
let t = {
|
|
444
460
|
...e,
|
|
445
461
|
status: "pending",
|
|
446
462
|
startedAt: Date.now()
|
|
447
463
|
};
|
|
448
|
-
|
|
449
|
-
},
|
|
450
|
-
let n =
|
|
464
|
+
L.unshift(t), L.length > _e && (L.length = _e), z();
|
|
465
|
+
}, V = (e, t) => {
|
|
466
|
+
let n = L.findIndex((t) => t.id === e);
|
|
451
467
|
if (n === -1) return;
|
|
452
|
-
let r =
|
|
453
|
-
|
|
468
|
+
let r = L[n], i = Date.now();
|
|
469
|
+
L[n] = t.status === "success" ? {
|
|
454
470
|
...r,
|
|
455
471
|
status: "success",
|
|
456
472
|
output: t.output,
|
|
@@ -462,12 +478,12 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
462
478
|
error: t.error,
|
|
463
479
|
settledAt: i,
|
|
464
480
|
durationMs: i - r.startedAt
|
|
465
|
-
},
|
|
466
|
-
},
|
|
467
|
-
|
|
468
|
-
}),
|
|
469
|
-
|
|
470
|
-
},
|
|
481
|
+
}, z();
|
|
482
|
+
}, be = () => ve, xe = (e) => (R.add(e), () => {
|
|
483
|
+
R.delete(e);
|
|
484
|
+
}), Se = () => {
|
|
485
|
+
L.length !== 0 && (L.length = 0, z());
|
|
486
|
+
}, Ce = (e, t) => {
|
|
471
487
|
if (t === void 0 || typeof e != "object" || !e) return e;
|
|
472
488
|
try {
|
|
473
489
|
Object.defineProperty(e, "__voltroTraceId", {
|
|
@@ -477,15 +493,15 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
477
493
|
});
|
|
478
494
|
} catch {}
|
|
479
495
|
return e;
|
|
480
|
-
},
|
|
481
|
-
|
|
482
|
-
},
|
|
496
|
+
}, H, we = (e) => {
|
|
497
|
+
H = e;
|
|
498
|
+
}, U = () => H, Te = (e, t, n) => typeof e == "function" ? e(t, n) : e, Ee = 0, De = () => `mut_${++Ee}`, Oe = (e, t) => ({
|
|
483
499
|
update: (n, r) => {
|
|
484
500
|
e.update(n, r, t);
|
|
485
501
|
},
|
|
486
502
|
forTag: (n, r) => e.forTag(n, r, t)
|
|
487
|
-
}),
|
|
488
|
-
let { runtime: r, cache: i, client: c, descriptors: l, errorBus: u } =
|
|
503
|
+
}), W = (e, t) => {
|
|
504
|
+
let { runtime: r, cache: i, client: c, descriptors: l, errorBus: u } = P(e), f = l[t], p = f?.targets;
|
|
489
505
|
if (process.env.NODE_ENV !== "production") {
|
|
490
506
|
let n = f?.kind;
|
|
491
507
|
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.`);
|
|
@@ -493,12 +509,12 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
493
509
|
let [m, h] = s(!1), [g, _] = s(void 0), [v, y] = s(void 0), b = o(null), S = o(!1), C = n(async (n, a) => {
|
|
494
510
|
let o = a?.onError !== void 0 || a?.notify?.error !== void 0, s = (e) => {
|
|
495
511
|
a?.onError?.(e, n);
|
|
496
|
-
let t =
|
|
497
|
-
t !== void 0 &&
|
|
512
|
+
let t = Te(a?.notify?.error, e, n);
|
|
513
|
+
t !== void 0 && H?.error(t);
|
|
498
514
|
};
|
|
499
515
|
h(!0), _(void 0);
|
|
500
|
-
let l =
|
|
501
|
-
|
|
516
|
+
let l = De();
|
|
517
|
+
B({
|
|
502
518
|
id: l,
|
|
503
519
|
apiName: e,
|
|
504
520
|
tag: t,
|
|
@@ -506,9 +522,9 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
506
522
|
});
|
|
507
523
|
let f = b.current, m = S.current;
|
|
508
524
|
if (f) try {
|
|
509
|
-
f(
|
|
525
|
+
f(Oe(i, l), n);
|
|
510
526
|
} catch (e) {
|
|
511
|
-
if (_(e), h(!1), i.revertByMutation(l),
|
|
527
|
+
if (_(e), h(!1), i.revertByMutation(l), V(l, {
|
|
512
528
|
status: "error",
|
|
513
529
|
error: e
|
|
514
530
|
}), o) return s(e);
|
|
@@ -517,7 +533,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
517
533
|
else !m && p && p.length > 0 && i.autoApply(p, n, l);
|
|
518
534
|
let g;
|
|
519
535
|
try {
|
|
520
|
-
let o =
|
|
536
|
+
let o = F(c, t), s = d.currentSpan.pipe(d.tap((e) => d.sync(() => {
|
|
521
537
|
g = e.traceId, x({
|
|
522
538
|
traceId: e.traceId,
|
|
523
539
|
spanId: e.spanId,
|
|
@@ -529,15 +545,15 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
529
545
|
"voltro.mutationId": l,
|
|
530
546
|
"rpc.tag": t
|
|
531
547
|
} })), u = await r.runPromise(s);
|
|
532
|
-
y(u),
|
|
548
|
+
y(u), V(l, {
|
|
533
549
|
status: "success",
|
|
534
550
|
output: u
|
|
535
551
|
}), i.confirmByMutation(l), a?.onSuccess?.(u, n);
|
|
536
|
-
let f =
|
|
537
|
-
return f !== void 0 &&
|
|
552
|
+
let f = Te(a?.notify?.success, u, n);
|
|
553
|
+
return f !== void 0 && H?.success(f), u;
|
|
538
554
|
} catch (e) {
|
|
539
|
-
let n =
|
|
540
|
-
if (_(n),
|
|
555
|
+
let n = Ce(e, g);
|
|
556
|
+
if (_(n), V(l, {
|
|
541
557
|
status: "error",
|
|
542
558
|
error: n
|
|
543
559
|
}), i.revertByMutation(l), u.emit({
|
|
@@ -574,7 +590,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
574
590
|
g,
|
|
575
591
|
v
|
|
576
592
|
]);
|
|
577
|
-
},
|
|
593
|
+
}, ke = (e, t) => {
|
|
578
594
|
if (t === void 0 || typeof e != "object" || !e) return e;
|
|
579
595
|
try {
|
|
580
596
|
Object.defineProperty(e, "__voltroTraceId", {
|
|
@@ -584,50 +600,59 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
584
600
|
});
|
|
585
601
|
} catch {}
|
|
586
602
|
return e;
|
|
587
|
-
},
|
|
588
|
-
let { runtime: r, client: i, descriptors: o, errorBus: c } =
|
|
603
|
+
}, Ae = (e, t, n) => typeof e == "function" ? e(t, n) : e, je = 0, Me = () => `act_${++je}`, G = (e, t) => {
|
|
604
|
+
let { runtime: r, client: i, descriptors: o, errorBus: c } = P(e);
|
|
589
605
|
if (process.env.NODE_ENV !== "production") {
|
|
590
606
|
let n = o[t]?.kind;
|
|
591
607
|
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.`);
|
|
592
608
|
}
|
|
593
|
-
let [l, u] = s(!1), [f, p] = s(void 0), [m, h] = s(void 0), g = n(async (n) => {
|
|
609
|
+
let [l, u] = s(!1), [f, p] = s(void 0), [m, h] = s(void 0), g = n(async (n, a) => {
|
|
610
|
+
let o = a?.onError !== void 0 || a?.notify?.error !== void 0;
|
|
594
611
|
u(!0), p(void 0);
|
|
595
|
-
let
|
|
596
|
-
|
|
597
|
-
id:
|
|
612
|
+
let s = Me();
|
|
613
|
+
B({
|
|
614
|
+
id: s,
|
|
598
615
|
apiName: e,
|
|
599
616
|
tag: t,
|
|
600
617
|
input: n
|
|
601
618
|
});
|
|
602
|
-
let
|
|
619
|
+
let l;
|
|
603
620
|
try {
|
|
604
|
-
let
|
|
605
|
-
|
|
621
|
+
let o = F(i, t), c = d.currentSpan.pipe(d.tap((e) => d.sync(() => {
|
|
622
|
+
l = e.traceId, x({
|
|
606
623
|
traceId: e.traceId,
|
|
607
624
|
spanId: e.spanId,
|
|
608
625
|
source: "action",
|
|
609
626
|
tag: t
|
|
610
627
|
});
|
|
611
|
-
})), d.catchAll(() => d.void), d.zipRight(
|
|
628
|
+
})), d.catchAll(() => d.void), d.zipRight(o(n))).pipe(d.withSpan(`client.action.${t}`, { attributes: {
|
|
612
629
|
"voltro.api": e,
|
|
613
|
-
"voltro.actionId":
|
|
630
|
+
"voltro.actionId": s,
|
|
614
631
|
"rpc.tag": t
|
|
615
|
-
} })),
|
|
616
|
-
|
|
632
|
+
} })), u = await r.runPromise(c);
|
|
633
|
+
h(u), V(s, {
|
|
617
634
|
status: "success",
|
|
618
|
-
output:
|
|
619
|
-
}),
|
|
635
|
+
output: u
|
|
636
|
+
}), a?.onSuccess?.(u, n);
|
|
637
|
+
let f = Ae(a?.notify?.success, u, n);
|
|
638
|
+
return f !== void 0 && U()?.success(f), u;
|
|
620
639
|
} catch (e) {
|
|
621
|
-
let
|
|
622
|
-
|
|
640
|
+
let r = ke(e, l);
|
|
641
|
+
if (p(r), V(s, {
|
|
623
642
|
status: "error",
|
|
624
|
-
error:
|
|
643
|
+
error: r
|
|
625
644
|
}), c.emit({
|
|
626
645
|
source: "action",
|
|
627
646
|
tag: t,
|
|
628
|
-
error:
|
|
629
|
-
...
|
|
630
|
-
}),
|
|
647
|
+
error: r,
|
|
648
|
+
...l === void 0 ? {} : { traceId: l }
|
|
649
|
+
}), o) {
|
|
650
|
+
a?.onError?.(r, n);
|
|
651
|
+
let e = Ae(a?.notify?.error, r, n);
|
|
652
|
+
e !== void 0 && U()?.error(e);
|
|
653
|
+
return;
|
|
654
|
+
}
|
|
655
|
+
throw r;
|
|
631
656
|
} finally {
|
|
632
657
|
u(!1);
|
|
633
658
|
}
|
|
@@ -649,7 +674,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
649
674
|
f,
|
|
650
675
|
m
|
|
651
676
|
]);
|
|
652
|
-
},
|
|
677
|
+
}, K = "storage.mintUploadTicket", Ne = "storage.mintPresignedUpload", Pe = "storage.finalizeUpload", Fe = "storage.beginResumableUpload", Ie = "storage.beginMultipartUpload", Le = "storage.signMultipartPart", Re = "storage.completeMultipartUpload", ze = "storage.abortMultipartUpload", Be = (e, t, n, r) => new Promise((i, a) => {
|
|
653
678
|
let o = new XMLHttpRequest();
|
|
654
679
|
if (o.open("PUT", e), o.upload.onprogress = (e) => {
|
|
655
680
|
e.lengthComputable && n(e.loaded / e.total);
|
|
@@ -663,7 +688,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
663
688
|
return;
|
|
664
689
|
}
|
|
665
690
|
r.addEventListener("abort", () => o.abort(), { once: !0 }), o.send(t);
|
|
666
|
-
}),
|
|
691
|
+
}), Ve = (e, t, n, r, i, a) => new Promise((o, s) => {
|
|
667
692
|
let c = new XMLHttpRequest();
|
|
668
693
|
if (c.open("POST", e), c.setRequestHeader("content-type", t), c.upload.onprogress = (e) => {
|
|
669
694
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -681,7 +706,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
681
706
|
return;
|
|
682
707
|
}
|
|
683
708
|
i.addEventListener("abort", () => c.abort(), { once: !0 }), c.send(n);
|
|
684
|
-
}),
|
|
709
|
+
}), He = (e, t, n, r, i) => new Promise((a, o) => {
|
|
685
710
|
let s = new XMLHttpRequest();
|
|
686
711
|
if (s.open("PUT", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
|
|
687
712
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -692,7 +717,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
692
717
|
return;
|
|
693
718
|
}
|
|
694
719
|
i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
|
|
695
|
-
}),
|
|
720
|
+
}), Ue = (e, t, n, r, i) => new Promise((a, o) => {
|
|
696
721
|
let s = new XMLHttpRequest();
|
|
697
722
|
if (s.open("POST", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
|
|
698
723
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -708,8 +733,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
708
733
|
return;
|
|
709
734
|
}
|
|
710
735
|
i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
|
|
711
|
-
}),
|
|
712
|
-
let { runtime: r, client: i, inspectBaseUrl: c, errorBus: l } =
|
|
736
|
+
}), We = (e, t = {}) => {
|
|
737
|
+
let { runtime: r, client: i, inspectBaseUrl: c, errorBus: l } = P(e), [u, d] = s(0), [f, p] = s("idle"), [m, h] = s(void 0), g = o(null), _ = n(() => {
|
|
713
738
|
d(0), p("idle"), h(void 0);
|
|
714
739
|
}, []), v = n(() => {
|
|
715
740
|
g.current?.abort();
|
|
@@ -729,16 +754,16 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
729
754
|
...e.width === void 0 ? {} : { width: e.width },
|
|
730
755
|
...e.height === void 0 ? {} : { height: e.height }
|
|
731
756
|
}), g = async () => {
|
|
732
|
-
let s = n.mintTag ?? t.mintTag ??
|
|
757
|
+
let s = n.mintTag ?? t.mintTag ?? K, l = F(i, s), u = await r.runPromise(l({
|
|
733
758
|
contentType: c,
|
|
734
759
|
...m,
|
|
735
760
|
...d ? { key: d } : {}
|
|
736
|
-
})), f = await
|
|
761
|
+
})), f = await Ue(y(u.uploadUrl), c, e, o, a);
|
|
737
762
|
return h(f);
|
|
738
763
|
}, _ = async () => {
|
|
739
|
-
let s = n.presignMintTag ?? t.presignMintTag ??
|
|
764
|
+
let s = n.presignMintTag ?? t.presignMintTag ?? Ne, l = n.finalizeTag ?? t.finalizeTag ?? Pe, u;
|
|
740
765
|
try {
|
|
741
|
-
let e =
|
|
766
|
+
let e = F(i, s);
|
|
742
767
|
u = await r.runPromise(e({
|
|
743
768
|
contentType: c,
|
|
744
769
|
...m
|
|
@@ -746,11 +771,11 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
746
771
|
} catch {
|
|
747
772
|
return null;
|
|
748
773
|
}
|
|
749
|
-
await
|
|
750
|
-
let d =
|
|
774
|
+
await He(u.uploadUrl, c, e, o, a);
|
|
775
|
+
let d = F(i, l), f = await r.runPromise(d({ finalizeToken: u.finalizeToken }));
|
|
751
776
|
return h(f);
|
|
752
777
|
}, v = async () => {
|
|
753
|
-
let s = n.beginResumableTag ?? t.beginResumableTag ??
|
|
778
|
+
let s = n.beginResumableTag ?? t.beginResumableTag ?? Fe, l = F(i, s), u = e.size, d = n.chunkSize ?? t.chunkSize, f = await r.runPromise(l({
|
|
754
779
|
contentType: c,
|
|
755
780
|
size: u,
|
|
756
781
|
...m,
|
|
@@ -761,7 +786,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
761
786
|
for (;;) {
|
|
762
787
|
if (a.aborted) throw new DOMException("upload aborted", "AbortError");
|
|
763
788
|
try {
|
|
764
|
-
let e = await
|
|
789
|
+
let e = await Ve(`${p}?${`token=${encodeURIComponent(f.resumableToken)}&index=${t}${s ? "&final=1" : ""}`}`, c, i, (e) => o((b + e * l) / u), a, s);
|
|
765
790
|
s && (x = e);
|
|
766
791
|
break;
|
|
767
792
|
} catch (e) {
|
|
@@ -773,9 +798,9 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
773
798
|
if (!x) throw Error("resumable upload produced no final reply");
|
|
774
799
|
return h(x);
|
|
775
800
|
}, b = async () => {
|
|
776
|
-
let s = n.multipartBeginTag ?? t.multipartBeginTag ??
|
|
801
|
+
let s = n.multipartBeginTag ?? t.multipartBeginTag ?? Ie, u = n.multipartSignTag ?? t.multipartSignTag ?? Le, d = n.multipartCompleteTag ?? t.multipartCompleteTag ?? Re, f = n.multipartAbortTag ?? t.multipartAbortTag ?? ze, p = e.size, h = n.chunkSize ?? t.chunkSize, g;
|
|
777
802
|
try {
|
|
778
|
-
let e =
|
|
803
|
+
let e = F(i, s);
|
|
779
804
|
g = await r.runPromise(e({
|
|
780
805
|
contentType: c,
|
|
781
806
|
size: p,
|
|
@@ -785,7 +810,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
785
810
|
} catch {
|
|
786
811
|
return null;
|
|
787
812
|
}
|
|
788
|
-
let _ =
|
|
813
|
+
let _ = F(i, u), v = F(i, d), b = F(i, f), x = Math.max(1, g.partSize), S = Math.max(1, Math.ceil(p / x)), C = Math.max(0, n.retries ?? t.retries ?? 1), w = [], T = 0;
|
|
789
814
|
try {
|
|
790
815
|
for (let t = 0; t < S; t++) {
|
|
791
816
|
let n = t * x, i = Math.min(p, n + x), s = e.slice(n, i), c = t + 1, l = i - n, u = 0;
|
|
@@ -795,7 +820,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
795
820
|
let { url: e } = await r.runPromise(_({
|
|
796
821
|
multipartToken: g.multipartToken,
|
|
797
822
|
partNumber: c
|
|
798
|
-
})), t = await
|
|
823
|
+
})), t = await Be(e, s, (e) => o((T + e * l) / p), a);
|
|
799
824
|
w.push({
|
|
800
825
|
partNumber: c,
|
|
801
826
|
etag: t
|
|
@@ -869,7 +894,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
869
894
|
} catch (e) {
|
|
870
895
|
throw p("error"), h(e), e instanceof DOMException && e.name === "AbortError" || l.emit({
|
|
871
896
|
source: "action",
|
|
872
|
-
tag: n.mintTag ?? t.mintTag ??
|
|
897
|
+
tag: n.mintTag ?? t.mintTag ?? K,
|
|
873
898
|
error: e
|
|
874
899
|
}), e;
|
|
875
900
|
}
|
|
@@ -895,7 +920,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
895
920
|
} catch (e) {
|
|
896
921
|
throw r.abort(), p("error"), h(e), e instanceof DOMException && e.name === "AbortError" || l.emit({
|
|
897
922
|
source: "action",
|
|
898
|
-
tag: n.mintTag ?? t.mintTag ??
|
|
923
|
+
tag: n.mintTag ?? t.mintTag ?? K,
|
|
899
924
|
error: e
|
|
900
925
|
}), e;
|
|
901
926
|
}
|
|
@@ -940,8 +965,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
940
965
|
w,
|
|
941
966
|
T
|
|
942
967
|
]);
|
|
943
|
-
},
|
|
944
|
-
let t =
|
|
968
|
+
}, q = async (e) => {
|
|
969
|
+
let t = F(e.client, e.tag), n = d.currentSpan.pipe(d.tap((t) => d.sync(() => {
|
|
945
970
|
x({
|
|
946
971
|
traceId: t.traceId,
|
|
947
972
|
spanId: t.spanId,
|
|
@@ -953,8 +978,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
953
978
|
"rpc.tag": e.tag
|
|
954
979
|
} }));
|
|
955
980
|
return e.runtime.runPromise(n);
|
|
956
|
-
},
|
|
957
|
-
let { runtime: r, client: i, descriptors: o } =
|
|
981
|
+
}, Ge = (e, t) => {
|
|
982
|
+
let { runtime: r, client: i, descriptors: o } = P(e);
|
|
958
983
|
if (process.env.NODE_ENV !== "production") {
|
|
959
984
|
let n = o[t]?.kind;
|
|
960
985
|
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.`);
|
|
@@ -962,7 +987,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
962
987
|
let [c, l] = s(!1), [u, d] = s(void 0), [f, p] = s(void 0), m = n(async (n) => {
|
|
963
988
|
l(!0), d(void 0);
|
|
964
989
|
try {
|
|
965
|
-
let a = await
|
|
990
|
+
let a = await q({
|
|
966
991
|
apiName: e,
|
|
967
992
|
runtime: r,
|
|
968
993
|
client: i,
|
|
@@ -982,7 +1007,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
982
1007
|
i,
|
|
983
1008
|
t
|
|
984
1009
|
]), h = n(async (t) => {
|
|
985
|
-
await
|
|
1010
|
+
await q({
|
|
986
1011
|
apiName: e,
|
|
987
1012
|
runtime: r,
|
|
988
1013
|
client: i,
|
|
@@ -995,7 +1020,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
995
1020
|
r,
|
|
996
1021
|
i
|
|
997
1022
|
]), g = n(async (t) => {
|
|
998
|
-
await
|
|
1023
|
+
await q({
|
|
999
1024
|
apiName: e,
|
|
1000
1025
|
runtime: r,
|
|
1001
1026
|
client: i,
|
|
@@ -1007,7 +1032,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1007
1032
|
e,
|
|
1008
1033
|
r,
|
|
1009
1034
|
i
|
|
1010
|
-
]), _ = n(async (t, n, a) =>
|
|
1035
|
+
]), _ = n(async (t, n, a) => q({
|
|
1011
1036
|
apiName: e,
|
|
1012
1037
|
runtime: r,
|
|
1013
1038
|
client: i,
|
|
@@ -1022,7 +1047,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1022
1047
|
e,
|
|
1023
1048
|
r,
|
|
1024
1049
|
i
|
|
1025
|
-
]), v = n(async (t, n, a, o) =>
|
|
1050
|
+
]), v = n(async (t, n, a, o) => q({
|
|
1026
1051
|
apiName: e,
|
|
1027
1052
|
runtime: r,
|
|
1028
1053
|
client: i,
|
|
@@ -1058,11 +1083,11 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1058
1083
|
u,
|
|
1059
1084
|
f
|
|
1060
1085
|
]);
|
|
1061
|
-
},
|
|
1062
|
-
let { runtime: t, client: r } =
|
|
1086
|
+
}, Ke = (e) => {
|
|
1087
|
+
let { runtime: t, client: r } = P(e), [i, o] = s(!1), [c, l] = s(void 0), [u, d] = s(void 0), f = n(async (n, i, a) => {
|
|
1063
1088
|
o(!0), l(void 0);
|
|
1064
1089
|
try {
|
|
1065
|
-
let o = await
|
|
1090
|
+
let o = await q({
|
|
1066
1091
|
apiName: e,
|
|
1067
1092
|
runtime: t,
|
|
1068
1093
|
client: r,
|
|
@@ -1096,11 +1121,11 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1096
1121
|
c,
|
|
1097
1122
|
u
|
|
1098
1123
|
]);
|
|
1099
|
-
},
|
|
1100
|
-
let { runtime: t, client: r } =
|
|
1124
|
+
}, qe = (e) => {
|
|
1125
|
+
let { runtime: t, client: r } = P(e), [i, o] = s(!1), [c, l] = s(void 0), [u, d] = s(void 0), f = n(async (n, i, a, s) => {
|
|
1101
1126
|
o(!0), l(void 0);
|
|
1102
1127
|
try {
|
|
1103
|
-
let o = await
|
|
1128
|
+
let o = await q({
|
|
1104
1129
|
apiName: e,
|
|
1105
1130
|
runtime: t,
|
|
1106
1131
|
client: r,
|
|
@@ -1135,78 +1160,96 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1135
1160
|
c,
|
|
1136
1161
|
u
|
|
1137
1162
|
]);
|
|
1138
|
-
},
|
|
1139
|
-
let n =
|
|
1140
|
-
return {
|
|
1163
|
+
}, Je = (e, t) => {
|
|
1164
|
+
let n = I(e, "__voltro.workflow.run", t ? { id: t } : {}, { skip: t === void 0 });
|
|
1165
|
+
return n.loading ? {
|
|
1166
|
+
...n,
|
|
1167
|
+
run: void 0
|
|
1168
|
+
} : {
|
|
1141
1169
|
...n,
|
|
1142
|
-
run: n.data
|
|
1170
|
+
run: n.data[0]
|
|
1143
1171
|
};
|
|
1144
|
-
},
|
|
1145
|
-
let r =
|
|
1146
|
-
return {
|
|
1172
|
+
}, Ye = (e, t = {}, n = {}) => {
|
|
1173
|
+
let r = I(e, "__voltro.workflow.runs", t, n);
|
|
1174
|
+
return r.loading ? {
|
|
1147
1175
|
...r,
|
|
1148
|
-
runs:
|
|
1176
|
+
runs: []
|
|
1177
|
+
} : {
|
|
1178
|
+
...r,
|
|
1179
|
+
runs: r.data
|
|
1149
1180
|
};
|
|
1150
|
-
},
|
|
1151
|
-
let n =
|
|
1152
|
-
return {
|
|
1181
|
+
}, Xe = (e, t) => {
|
|
1182
|
+
let n = I(e, "__voltro.workflow.run.steps", t ? { runId: t } : {}, { skip: t === void 0 });
|
|
1183
|
+
return n.loading ? {
|
|
1184
|
+
...n,
|
|
1185
|
+
steps: []
|
|
1186
|
+
} : {
|
|
1153
1187
|
...n,
|
|
1154
|
-
steps: n.data
|
|
1188
|
+
steps: n.data
|
|
1155
1189
|
};
|
|
1156
|
-
},
|
|
1157
|
-
let n =
|
|
1158
|
-
return {
|
|
1190
|
+
}, J = (e, t) => {
|
|
1191
|
+
let n = I(e, "__voltro.workflow.run.events", t ? { runId: t } : {}, { skip: t === void 0 });
|
|
1192
|
+
return n.loading ? {
|
|
1193
|
+
...n,
|
|
1194
|
+
events: []
|
|
1195
|
+
} : {
|
|
1159
1196
|
...n,
|
|
1160
|
-
events: n.data
|
|
1197
|
+
events: n.data
|
|
1161
1198
|
};
|
|
1162
|
-
},
|
|
1163
|
-
let r =
|
|
1164
|
-
return {
|
|
1199
|
+
}, Ze = J, Qe = (e, t = {}, n = {}) => {
|
|
1200
|
+
let r = I(e, "__voltro.workflow.domainEvents", t, n);
|
|
1201
|
+
return r.loading ? {
|
|
1165
1202
|
...r,
|
|
1166
|
-
events:
|
|
1203
|
+
events: []
|
|
1204
|
+
} : {
|
|
1205
|
+
...r,
|
|
1206
|
+
events: r.data
|
|
1167
1207
|
};
|
|
1168
|
-
},
|
|
1169
|
-
let n =
|
|
1170
|
-
return {
|
|
1208
|
+
}, $e = (e, t) => {
|
|
1209
|
+
let n = I(e, "__voltro.workflow.event.deliveries", t ? { eventId: t } : {}, { skip: t === void 0 });
|
|
1210
|
+
return n.loading ? {
|
|
1211
|
+
...n,
|
|
1212
|
+
deliveries: []
|
|
1213
|
+
} : {
|
|
1171
1214
|
...n,
|
|
1172
|
-
deliveries: n.data
|
|
1215
|
+
deliveries: n.data
|
|
1173
1216
|
};
|
|
1174
|
-
},
|
|
1217
|
+
}, Y = (e, t) => {
|
|
1175
1218
|
let n = e.payload;
|
|
1176
1219
|
if (!n || typeof n != "object") return;
|
|
1177
1220
|
let r = n[t];
|
|
1178
1221
|
return typeof r == "string" ? r : void 0;
|
|
1179
|
-
},
|
|
1222
|
+
}, et = (e) => {
|
|
1180
1223
|
let t = e.payload;
|
|
1181
1224
|
if (!t || typeof t != "object") return;
|
|
1182
1225
|
let n = t.updateId;
|
|
1183
1226
|
return typeof n == "string" ? n : void 0;
|
|
1184
|
-
},
|
|
1227
|
+
}, tt = (e) => {
|
|
1185
1228
|
let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set();
|
|
1186
1229
|
for (let r of e) if (r.eventType === "signal-received") {
|
|
1187
|
-
let e =
|
|
1230
|
+
let e = Y(r, "signalName");
|
|
1188
1231
|
e && t.add(e);
|
|
1189
1232
|
} else if (r.eventType === "update-completed" || r.eventType === "update-failed") {
|
|
1190
|
-
let e =
|
|
1233
|
+
let e = et(r);
|
|
1191
1234
|
e && n.add(e);
|
|
1192
1235
|
}
|
|
1193
1236
|
for (let r = e.length - 1; r >= 0; --r) {
|
|
1194
1237
|
let i = e[r];
|
|
1195
1238
|
if (i.eventType === "signal-awaited") {
|
|
1196
|
-
let e =
|
|
1239
|
+
let e = Y(i, "signalName");
|
|
1197
1240
|
if (e && !t.has(e)) return {
|
|
1198
1241
|
name: e,
|
|
1199
1242
|
kind: "signal"
|
|
1200
1243
|
};
|
|
1201
1244
|
} else if (i.eventType === "update-requested") {
|
|
1202
|
-
let e =
|
|
1245
|
+
let e = et(i), t = Y(i, "updateName");
|
|
1203
1246
|
if (t && (!e || !n.has(e))) return {
|
|
1204
1247
|
name: t,
|
|
1205
1248
|
kind: "update"
|
|
1206
1249
|
};
|
|
1207
1250
|
}
|
|
1208
1251
|
}
|
|
1209
|
-
},
|
|
1252
|
+
}, nt = (e) => e.find((e) => e.status === "running") || (e.length > 0 ? e[e.length - 1] : void 0), rt = (e, t) => {
|
|
1210
1253
|
if (!e || e.status !== "failed") return;
|
|
1211
1254
|
let n = t.find((e) => e.status === "failed");
|
|
1212
1255
|
return {
|
|
@@ -1214,8 +1257,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1214
1257
|
message: e.errorMessage,
|
|
1215
1258
|
step: n?.stepName
|
|
1216
1259
|
};
|
|
1217
|
-
},
|
|
1218
|
-
let r =
|
|
1260
|
+
}, it = (e, t) => {
|
|
1261
|
+
let r = Je(e, t), i = Xe(e, t), o = J(e, t), s = Ge(e, r.run?.tag ?? ""), c = r.run, l = i.steps, u = o.events, d = n(async () => {
|
|
1219
1262
|
if (!c) throw Error("useWorkflowRunState: no run loaded — cannot cancel");
|
|
1220
1263
|
await s.cancel({
|
|
1221
1264
|
workflowName: c.tag,
|
|
@@ -1239,9 +1282,9 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1239
1282
|
status: c?.status,
|
|
1240
1283
|
steps: l,
|
|
1241
1284
|
events: u,
|
|
1242
|
-
currentStep:
|
|
1243
|
-
waitingFor: c?.status === "suspended" ?
|
|
1244
|
-
error:
|
|
1285
|
+
currentStep: nt(l),
|
|
1286
|
+
waitingFor: c?.status === "suspended" ? tt(u) : void 0,
|
|
1287
|
+
error: rt(c, l),
|
|
1245
1288
|
traceId: c?.traceId,
|
|
1246
1289
|
loading: r.data === void 0,
|
|
1247
1290
|
cancel: d,
|
|
@@ -1258,8 +1301,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1258
1301
|
p,
|
|
1259
1302
|
m
|
|
1260
1303
|
]);
|
|
1261
|
-
},
|
|
1262
|
-
let { runtime: r, client: i } =
|
|
1304
|
+
}, at = (e, t) => {
|
|
1305
|
+
let { runtime: r, client: i } = P(e), [a, c] = s([]), [u, f] = s("idle"), [m, h] = s(void 0), _ = o(null), v = n(() => {
|
|
1263
1306
|
let e = _.current;
|
|
1264
1307
|
e && (_.current = null, r.runFork(p.interrupt(e)), f((e) => e === "streaming" ? "idle" : e));
|
|
1265
1308
|
}, [r]);
|
|
@@ -1270,7 +1313,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1270
1313
|
start: n((e = {}) => {
|
|
1271
1314
|
let n = _.current;
|
|
1272
1315
|
n && r.runFork(p.interrupt(n)), c([]), h(void 0), f("streaming");
|
|
1273
|
-
let a =
|
|
1316
|
+
let a = F(i, t)(e), o = g.runForEach(a, (e) => d.sync(() => c((t) => [...t, e]))).pipe(d.matchCause({
|
|
1274
1317
|
onSuccess: () => {
|
|
1275
1318
|
f("done");
|
|
1276
1319
|
},
|
|
@@ -1286,7 +1329,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1286
1329
|
]),
|
|
1287
1330
|
cancel: v
|
|
1288
1331
|
};
|
|
1289
|
-
},
|
|
1332
|
+
}, ot = (e, t, n, r) => {
|
|
1290
1333
|
let i = 0, a = !1, o = (e) => d.sync(() => {
|
|
1291
1334
|
e.seq <= i || (i = e.seq, n.onEvent(e.event), r.isTerminal(e.event) && (a = !0));
|
|
1292
1335
|
}), s = (e, t, a) => {
|
|
@@ -1309,15 +1352,15 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1309
1352
|
}));
|
|
1310
1353
|
});
|
|
1311
1354
|
return c(0);
|
|
1312
|
-
},
|
|
1355
|
+
}, st = (e) => {
|
|
1313
1356
|
let t = e?._tag;
|
|
1314
1357
|
return t === "done" || t === "error";
|
|
1315
|
-
},
|
|
1316
|
-
let { runtime: i, client: a } =
|
|
1358
|
+
}, ct = (e, t, r = {}) => {
|
|
1359
|
+
let { runtime: i, client: a } = P(e), [c, l] = s([]), [u, d] = s("idle"), [f, m] = s(0), [h, g] = s(void 0), _ = o(null), v = {
|
|
1317
1360
|
maxReconnects: r.maxReconnects ?? 6,
|
|
1318
1361
|
backoffMs: r.backoffMs ?? 400,
|
|
1319
1362
|
maxBackoffMs: r.maxBackoffMs ?? 8e3,
|
|
1320
|
-
isTerminal: r.isTerminal ??
|
|
1363
|
+
isTerminal: r.isTerminal ?? st
|
|
1321
1364
|
}, y = n(() => {
|
|
1322
1365
|
let e = _.current;
|
|
1323
1366
|
e && (_.current = null, i.runFork(p.interrupt(e)), d((e) => e === "streaming" || e === "reconnecting" ? "idle" : e));
|
|
@@ -1330,13 +1373,13 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1330
1373
|
start: n((e = {}) => {
|
|
1331
1374
|
let n = _.current;
|
|
1332
1375
|
n && i.runFork(p.interrupt(n)), l([]), g(void 0), m(0), d("streaming");
|
|
1333
|
-
let r =
|
|
1376
|
+
let r = F(a, t), o = {
|
|
1334
1377
|
onEvent: (e) => l((t) => [...t, e]),
|
|
1335
1378
|
onStatus: d,
|
|
1336
1379
|
onReconnect: () => m((e) => e + 1),
|
|
1337
1380
|
onError: g
|
|
1338
1381
|
};
|
|
1339
|
-
_.current = i.runFork(
|
|
1382
|
+
_.current = i.runFork(ot(r, e, o, v));
|
|
1340
1383
|
}, [
|
|
1341
1384
|
i,
|
|
1342
1385
|
a,
|
|
@@ -1348,13 +1391,13 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1348
1391
|
]),
|
|
1349
1392
|
cancel: y
|
|
1350
1393
|
};
|
|
1351
|
-
},
|
|
1394
|
+
}, lt = (e, t) => e.order - t.order || (e.stepOrder ?? 0) - (t.stepOrder ?? 0), ut = (e) => {
|
|
1352
1395
|
for (let t = e.length - 1; t >= 0; --t) {
|
|
1353
1396
|
let n = e[t];
|
|
1354
1397
|
if (n.role === "user" && n.content) return n.content;
|
|
1355
1398
|
}
|
|
1356
|
-
},
|
|
1357
|
-
let { threadId: i } = r, o =
|
|
1399
|
+
}, dt = (e, t, r) => {
|
|
1400
|
+
let { threadId: i } = r, o = I(e, `${t}.messages`, { threadId: i }), s = G(e, `${t}.send`), c = a(() => [...o.data ?? []].sort(lt), [o.data]), l = n((e, t = {}) => s.run({
|
|
1358
1401
|
threadId: i,
|
|
1359
1402
|
order: o.data?.length ?? 0,
|
|
1360
1403
|
prompt: e,
|
|
@@ -1364,7 +1407,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1364
1407
|
i,
|
|
1365
1408
|
o.data
|
|
1366
1409
|
]), u = n(() => {
|
|
1367
|
-
let e =
|
|
1410
|
+
let e = ut(c);
|
|
1368
1411
|
return e === void 0 ? void 0 : l(e);
|
|
1369
1412
|
}, [c, l]);
|
|
1370
1413
|
return a(() => ({
|
|
@@ -1384,8 +1427,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1384
1427
|
l,
|
|
1385
1428
|
u
|
|
1386
1429
|
]);
|
|
1387
|
-
},
|
|
1388
|
-
let { events: r, status: c, error: l, start: u, cancel: d } =
|
|
1430
|
+
}, ft = (e, t) => {
|
|
1431
|
+
let { events: r, status: c, error: l, start: u, cancel: d } = at(e, t), [f, p] = s([]), m = o(null), h = a(() => r.filter((e) => e._tag === "token").map((e) => e.text ?? "").join(""), [r]);
|
|
1389
1432
|
return i(() => {
|
|
1390
1433
|
if (c !== "done" || m.current === null) return;
|
|
1391
1434
|
let e = m.current;
|
|
@@ -1411,8 +1454,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1411
1454
|
}, [u]),
|
|
1412
1455
|
cancel: d
|
|
1413
1456
|
};
|
|
1414
|
-
},
|
|
1415
|
-
let r =
|
|
1457
|
+
}, pt = (e, t) => {
|
|
1458
|
+
let r = G(e, t), [i, o] = s(void 0), c = n(async (e) => {
|
|
1416
1459
|
let t = await r.run({ question: e });
|
|
1417
1460
|
return o(t), t;
|
|
1418
1461
|
}, [r]), l = n(() => o(void 0), []);
|
|
@@ -1429,43 +1472,43 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1429
1472
|
r.error,
|
|
1430
1473
|
l
|
|
1431
1474
|
]);
|
|
1432
|
-
},
|
|
1433
|
-
let { cache: t, runtime: r } =
|
|
1475
|
+
}, mt = (e) => {
|
|
1476
|
+
let { cache: t, runtime: r } = P(e);
|
|
1434
1477
|
return n(() => {
|
|
1435
1478
|
t.refreshAll(r);
|
|
1436
1479
|
}, [t, r]);
|
|
1437
|
-
},
|
|
1438
|
-
for (let t of
|
|
1480
|
+
}, X = /* @__PURE__ */ new Set(), ht = (e) => {
|
|
1481
|
+
for (let t of X) try {
|
|
1439
1482
|
t(e);
|
|
1440
1483
|
} catch {}
|
|
1441
|
-
},
|
|
1442
|
-
|
|
1443
|
-
}),
|
|
1444
|
-
|
|
1484
|
+
}, gt = (e) => (X.add(e), () => {
|
|
1485
|
+
X.delete(e);
|
|
1486
|
+
}), _t = (e, t) => {
|
|
1487
|
+
ht({
|
|
1445
1488
|
error: e,
|
|
1446
1489
|
source: "manual",
|
|
1447
1490
|
...t ? { context: t } : {}
|
|
1448
1491
|
});
|
|
1449
|
-
},
|
|
1450
|
-
let { errorBus: n } =
|
|
1492
|
+
}, vt = (e, t) => {
|
|
1493
|
+
let { errorBus: n } = P(e);
|
|
1451
1494
|
i(() => n.on(t), [n, t]);
|
|
1452
|
-
},
|
|
1495
|
+
}, yt = "#/$defs/", bt = (e) => e.replace(/[_-]+/g, " ").replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/\s+/g, " ").trim().replace(/^./, (e) => e.toUpperCase()), Z = (e, t) => {
|
|
1453
1496
|
let n = e;
|
|
1454
1497
|
for (let e = 0; e < 8; e += 1) {
|
|
1455
1498
|
let e = n.$ref;
|
|
1456
|
-
if (typeof e != "string" || !e.startsWith(
|
|
1499
|
+
if (typeof e != "string" || !e.startsWith(yt)) return n;
|
|
1457
1500
|
let r = t[e.slice(8)];
|
|
1458
1501
|
if (!r || typeof r != "object") return n;
|
|
1459
1502
|
n = r;
|
|
1460
1503
|
}
|
|
1461
1504
|
return n;
|
|
1462
|
-
},
|
|
1505
|
+
}, xt = (e) => {
|
|
1463
1506
|
if (!e || typeof e != "object") return !1;
|
|
1464
1507
|
let t = e;
|
|
1465
1508
|
if (t.type === "null" || t.const === null) return !0;
|
|
1466
1509
|
let n = t.enum;
|
|
1467
1510
|
return Array.isArray(n) && n.length === 1 && n[0] === null;
|
|
1468
|
-
},
|
|
1511
|
+
}, St = (e, t) => {
|
|
1469
1512
|
let n = e.type;
|
|
1470
1513
|
if (Array.isArray(n) && n.includes("null")) {
|
|
1471
1514
|
let t = n.filter((e) => e !== "null");
|
|
@@ -1480,9 +1523,9 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1480
1523
|
for (let n of ["anyOf", "oneOf"]) {
|
|
1481
1524
|
let r = e[n];
|
|
1482
1525
|
if (!Array.isArray(r)) continue;
|
|
1483
|
-
let i = r.filter((e) => !
|
|
1526
|
+
let i = r.filter((e) => !xt(e));
|
|
1484
1527
|
if (i.length !== r.length) return i.length === 1 ? {
|
|
1485
|
-
node:
|
|
1528
|
+
node: Z(i[0], t),
|
|
1486
1529
|
nullable: !0
|
|
1487
1530
|
} : {
|
|
1488
1531
|
node: {
|
|
@@ -1496,14 +1539,14 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1496
1539
|
node: e,
|
|
1497
1540
|
nullable: !1
|
|
1498
1541
|
};
|
|
1499
|
-
},
|
|
1542
|
+
}, Ct = (e) => e.map((e) => ({
|
|
1500
1543
|
value: String(e),
|
|
1501
|
-
label:
|
|
1502
|
-
})),
|
|
1544
|
+
label: bt(String(e))
|
|
1545
|
+
})), wt = (e) => {
|
|
1503
1546
|
let t = e.enum;
|
|
1504
1547
|
if (Array.isArray(t) && t.length > 0) return {
|
|
1505
1548
|
widget: "select",
|
|
1506
|
-
options:
|
|
1549
|
+
options: Ct(t)
|
|
1507
1550
|
};
|
|
1508
1551
|
let n = e.type, r = Array.isArray(n) ? n.find((e) => e !== "null") : n, i = e.format;
|
|
1509
1552
|
switch (r) {
|
|
@@ -1514,38 +1557,38 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1514
1557
|
case "array": return { widget: "multi-select" };
|
|
1515
1558
|
default: return { widget: "custom" };
|
|
1516
1559
|
}
|
|
1517
|
-
},
|
|
1518
|
-
let { node: i, nullable: a } =
|
|
1560
|
+
}, Tt = (e, t, n) => Object.entries(e).map(([e, r]) => {
|
|
1561
|
+
let { node: i, nullable: a } = St(Z(r, n), n), o = Z(i, n), { widget: s, options: c } = wt(o);
|
|
1519
1562
|
return {
|
|
1520
1563
|
name: e,
|
|
1521
|
-
label:
|
|
1564
|
+
label: bt(e),
|
|
1522
1565
|
widget: s,
|
|
1523
1566
|
required: t.has(e),
|
|
1524
1567
|
nullable: a,
|
|
1525
1568
|
...c ? { options: c } : {},
|
|
1526
1569
|
jsonSchema: o
|
|
1527
1570
|
};
|
|
1528
|
-
}),
|
|
1571
|
+
}), Et = (e) => {
|
|
1529
1572
|
try {
|
|
1530
1573
|
return m.make(e);
|
|
1531
1574
|
} catch {
|
|
1532
1575
|
return;
|
|
1533
1576
|
}
|
|
1534
|
-
},
|
|
1535
|
-
let t =
|
|
1577
|
+
}, Q = (e) => {
|
|
1578
|
+
let t = Et(e);
|
|
1536
1579
|
if (t === void 0) return [];
|
|
1537
|
-
let n = t.$defs ?? {}, r =
|
|
1538
|
-
return i ?
|
|
1539
|
-
},
|
|
1540
|
-
let t =
|
|
1580
|
+
let n = t.$defs ?? {}, r = Z(t, n), i = r.properties;
|
|
1581
|
+
return i ? Tt(i, new Set(Array.isArray(r.required) ? r.required : []), n) : [];
|
|
1582
|
+
}, Dt = (e) => {
|
|
1583
|
+
let t = Et(e);
|
|
1541
1584
|
if (t === void 0) return [];
|
|
1542
|
-
let n = t.$defs ?? {}, r =
|
|
1585
|
+
let n = t.$defs ?? {}, r = Z(t, n);
|
|
1543
1586
|
if (r.type !== "array") return [];
|
|
1544
1587
|
let i = r.items;
|
|
1545
1588
|
if (!i || typeof i != "object") return [];
|
|
1546
|
-
let a =
|
|
1547
|
-
return o ?
|
|
1548
|
-
},
|
|
1589
|
+
let a = Z(i, n), o = a.properties;
|
|
1590
|
+
return o ? Tt(o, new Set(Array.isArray(a.required) ? a.required : []), n) : [];
|
|
1591
|
+
}, Ot = (e, t) => {
|
|
1549
1592
|
let n = h.decodeUnknownEither(e, { errors: "all" })(t);
|
|
1550
1593
|
if (n._tag === "Right") return {
|
|
1551
1594
|
valid: !0,
|
|
@@ -1560,10 +1603,10 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1560
1603
|
valid: !1,
|
|
1561
1604
|
errors: r
|
|
1562
1605
|
};
|
|
1563
|
-
},
|
|
1564
|
-
let i =
|
|
1606
|
+
}, kt = (e, t, r) => {
|
|
1607
|
+
let i = P(e), c = W(e, t), l = r.schema ?? i.descriptors[t]?.input;
|
|
1565
1608
|
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.`);
|
|
1566
|
-
let u = a(() => l ?
|
|
1609
|
+
let u = a(() => l ? Q(l) : [], [l]), d = o(r.defaults ?? {}), [f, p] = s(d.current), [m, h] = s({}), g = n((e, t) => {
|
|
1567
1610
|
p((n) => ({
|
|
1568
1611
|
...n,
|
|
1569
1612
|
[e]: t
|
|
@@ -1577,7 +1620,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1577
1620
|
p(d.current), h({});
|
|
1578
1621
|
}, []), y = n(async () => {
|
|
1579
1622
|
if (l !== void 0) {
|
|
1580
|
-
let e =
|
|
1623
|
+
let e = Ot(l, f);
|
|
1581
1624
|
if (h(e.errors), !e.valid) return;
|
|
1582
1625
|
}
|
|
1583
1626
|
return c.mutate(f);
|
|
@@ -1590,7 +1633,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1590
1633
|
fields: u,
|
|
1591
1634
|
values: f,
|
|
1592
1635
|
errors: m,
|
|
1593
|
-
isValid: a(() => l === void 0 ||
|
|
1636
|
+
isValid: a(() => l === void 0 || Ot(l, f).valid, [l, f]),
|
|
1594
1637
|
pending: c.pending,
|
|
1595
1638
|
submitError: c.error,
|
|
1596
1639
|
data: c.data,
|
|
@@ -1599,13 +1642,13 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1599
1642
|
reset: v,
|
|
1600
1643
|
submit: y
|
|
1601
1644
|
};
|
|
1602
|
-
},
|
|
1645
|
+
}, At = (e, t, n) => e.map((e) => {
|
|
1603
1646
|
let r = String(e[n] ?? ""), i = e[t];
|
|
1604
1647
|
return {
|
|
1605
1648
|
value: r,
|
|
1606
1649
|
label: i == null ? r : String(i)
|
|
1607
1650
|
};
|
|
1608
|
-
}),
|
|
1651
|
+
}), jt = (e, t, r = {}) => {
|
|
1609
1652
|
let o = r.debounceMs ?? 200, c = r.labelField ?? "name", l = r.valueField ?? "id", u = r.input ?? ((e) => ({ q: e })), [d, f] = s(r.initialTerm ?? ""), [p, m] = s(d);
|
|
1610
1653
|
i(() => {
|
|
1611
1654
|
if (d === p) return;
|
|
@@ -1616,7 +1659,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1616
1659
|
p,
|
|
1617
1660
|
o
|
|
1618
1661
|
]);
|
|
1619
|
-
let h = r.skipUntilTerm === !0 && p.trim() === "", g =
|
|
1662
|
+
let h = r.skipUntilTerm === !0 && p.trim() === "", g = I(e, t, a(() => u(p), [u, p]), { skip: h }), _ = a(() => At(g.data ?? [], c, l), [
|
|
1620
1663
|
g.data,
|
|
1621
1664
|
c,
|
|
1622
1665
|
l
|
|
@@ -1627,13 +1670,13 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1627
1670
|
term: d,
|
|
1628
1671
|
search: v
|
|
1629
1672
|
};
|
|
1630
|
-
},
|
|
1631
|
-
let i =
|
|
1673
|
+
}, Mt = (e, t) => e === t ? 0 : e == null ? 1 : t == null || e < t ? -1 : 1, Nt = (e, t, r = {}) => {
|
|
1674
|
+
let i = P(e), [o, c] = s(r.pageSize), l = I(e, t, a(() => o === void 0 ? r.input ?? {} : {
|
|
1632
1675
|
...r.input,
|
|
1633
1676
|
limit: o
|
|
1634
1677
|
}, [r.input, o])), u = i.descriptors[t]?.output, d = n(() => {
|
|
1635
1678
|
r.pageSize !== void 0 && c((e) => (e ?? r.pageSize) + r.pageSize);
|
|
1636
|
-
}, [r.pageSize]), f = a(() => r.columns ?? (u === void 0 ? [] :
|
|
1679
|
+
}, [r.pageSize]), f = a(() => r.columns ?? (u === void 0 ? [] : Dt(u)), [r.columns, u]), [p, m] = s(r.initialSort), h = n((e) => {
|
|
1637
1680
|
m((t) => t?.column === e ? {
|
|
1638
1681
|
column: e,
|
|
1639
1682
|
direction: t.direction === "asc" ? "desc" : "asc"
|
|
@@ -1648,7 +1691,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1648
1691
|
let e = l.data ?? [];
|
|
1649
1692
|
if (p === void 0) return e;
|
|
1650
1693
|
let t = p.direction === "asc" ? 1 : -1;
|
|
1651
|
-
return [...e].sort((e, n) =>
|
|
1694
|
+
return [...e].sort((e, n) => Mt(e[p.column], n[p.column]) * t);
|
|
1652
1695
|
}, [l.data, p]),
|
|
1653
1696
|
loading: l.data === void 0,
|
|
1654
1697
|
error: l.error,
|
|
@@ -1657,14 +1700,14 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1657
1700
|
loadMore: d,
|
|
1658
1701
|
hasMore: o !== void 0 && (l.data?.length ?? 0) >= o
|
|
1659
1702
|
};
|
|
1660
|
-
},
|
|
1703
|
+
}, Pt = (e, t, n, r) => {
|
|
1661
1704
|
let i = e.replace(/\/$/, ""), a = new URLSearchParams({
|
|
1662
1705
|
table: t,
|
|
1663
1706
|
id: n
|
|
1664
1707
|
});
|
|
1665
1708
|
return r !== void 0 && a.set("column", r), `${i}/_voltro/inspect/provenance?${a.toString()}`;
|
|
1666
|
-
},
|
|
1667
|
-
let { inspectBaseUrl: a } =
|
|
1709
|
+
}, Ft = Pt, It = (e, t, n, r) => {
|
|
1710
|
+
let { inspectBaseUrl: a } = P(e), [o, c] = s({
|
|
1668
1711
|
data: void 0,
|
|
1669
1712
|
loading: !0,
|
|
1670
1713
|
error: void 0
|
|
@@ -1676,7 +1719,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1676
1719
|
loading: !0,
|
|
1677
1720
|
error: void 0
|
|
1678
1721
|
});
|
|
1679
|
-
let i =
|
|
1722
|
+
let i = Pt(a ?? "", t, n, r);
|
|
1680
1723
|
return fetch(i).then(async (e) => {
|
|
1681
1724
|
if (!e.ok) throw Error(`provenance fetch failed: HTTP ${e.status}`);
|
|
1682
1725
|
return await e.json();
|
|
@@ -1702,8 +1745,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1702
1745
|
n,
|
|
1703
1746
|
r
|
|
1704
1747
|
]), o;
|
|
1705
|
-
},
|
|
1706
|
-
let { inspectBaseUrl: t } =
|
|
1748
|
+
}, Lt = (e) => `${e.replace(/\/$/, "")}/_voltro/inspect/manifest`, Rt = (e) => {
|
|
1749
|
+
let { inspectBaseUrl: t } = P(e), [n, r] = s({
|
|
1707
1750
|
manifest: void 0,
|
|
1708
1751
|
loading: !0,
|
|
1709
1752
|
error: void 0
|
|
@@ -1714,7 +1757,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1714
1757
|
manifest: void 0,
|
|
1715
1758
|
loading: !0,
|
|
1716
1759
|
error: void 0
|
|
1717
|
-
}), fetch(
|
|
1760
|
+
}), fetch(Lt(t ?? "")).then(async (e) => {
|
|
1718
1761
|
if (!e.ok) throw Error(`manifest fetch failed: HTTP ${e.status}`);
|
|
1719
1762
|
return await e.json();
|
|
1720
1763
|
}).then((t) => {
|
|
@@ -1733,8 +1776,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1733
1776
|
e = !0;
|
|
1734
1777
|
};
|
|
1735
1778
|
}, [e, t]), n;
|
|
1736
|
-
},
|
|
1737
|
-
let n = e.procedures.find((e) => e.kind === "query" &&
|
|
1779
|
+
}, zt = (e, t) => Array.isArray(e) ? e.includes(t) : e === t, Bt = (e, t, n) => e.targets?.some((e) => e.table === t && e.op === n) ?? !1, Vt = (e) => e.tables.filter((e) => !e.framework).map((t) => {
|
|
1780
|
+
let n = e.procedures.find((e) => e.kind === "query" && zt(e.source, t.name)), r = e.procedures.find((e) => e.kind === "mutation" && Bt(e, t.name, "insert")), i = e.procedures.find((e) => e.kind === "mutation" && Bt(e, t.name, "update")), a = e.procedures.find((e) => e.kind === "mutation" && Bt(e, t.name, "delete"));
|
|
1738
1781
|
return {
|
|
1739
1782
|
table: t.name,
|
|
1740
1783
|
columns: t.columns,
|
|
@@ -1747,7 +1790,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1747
1790
|
writeScope: `${t.name}:write`,
|
|
1748
1791
|
deleteScope: `${t.name}:delete`
|
|
1749
1792
|
};
|
|
1750
|
-
}),
|
|
1793
|
+
}), Ht = (e) => {
|
|
1751
1794
|
let [t, r] = s([]), [i, o] = s([]), c = n((e) => {
|
|
1752
1795
|
r((t) => [...t, e]), o([]);
|
|
1753
1796
|
}, []), l = n(async () => {
|
|
@@ -1775,8 +1818,8 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1775
1818
|
l,
|
|
1776
1819
|
u
|
|
1777
1820
|
]);
|
|
1778
|
-
},
|
|
1779
|
-
let r = t?.limit, { data: i } =
|
|
1821
|
+
}, Ut = "__voltro.undo.log", Wt = "__voltro.undo.apply", Gt = "__voltro.undo.redo", Kt = (e, t) => {
|
|
1822
|
+
let r = t?.limit, { data: i } = I(e, Ut, r === void 0 ? {} : { limit: r }), a = W(e, Wt), o = W(e, Gt), s = i ?? [], c = s.find((e) => !e.undone && !e.crossesAction), l = s.find((e) => e.undone), u = n(async (e) => {
|
|
1780
1823
|
await a.mutate({ invocationId: e });
|
|
1781
1824
|
}, [a]), d = n(async (e) => {
|
|
1782
1825
|
await o.mutate({ invocationId: e });
|
|
@@ -1795,13 +1838,13 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1795
1838
|
undoLast: f,
|
|
1796
1839
|
redoLast: p
|
|
1797
1840
|
};
|
|
1798
|
-
},
|
|
1841
|
+
}, qt = (e, t) => ({
|
|
1799
1842
|
name: e,
|
|
1800
1843
|
map: t
|
|
1801
|
-
}), $ = (e, t) => e === void 0 ? null : typeof e == "string" ? { event: e } : e(t),
|
|
1844
|
+
}), $ = (e, t) => e === void 0 ? null : typeof e == "string" ? { event: e } : e(t), Jt = /* @__PURE__ */ new Set(["onMount", "onUnmount"]), Yt = (e, t, n) => {
|
|
1802
1845
|
let r = { ...t };
|
|
1803
1846
|
for (let [i, a] of Object.entries(e.map)) {
|
|
1804
|
-
if (
|
|
1847
|
+
if (Jt.has(i) || a === void 0) continue;
|
|
1805
1848
|
let e = t[i];
|
|
1806
1849
|
r[i] = (...r) => {
|
|
1807
1850
|
let i = $(a, t);
|
|
@@ -1809,7 +1852,7 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1809
1852
|
};
|
|
1810
1853
|
}
|
|
1811
1854
|
return r;
|
|
1812
|
-
},
|
|
1855
|
+
}, Xt = (e, t, n) => {
|
|
1813
1856
|
let r = o({
|
|
1814
1857
|
spec: e,
|
|
1815
1858
|
props: t,
|
|
@@ -1825,45 +1868,45 @@ var b = /* @__PURE__ */ new Set(), x = (e) => {
|
|
|
1825
1868
|
let e = r.current, t = $(e.spec.map.onUnmount, e.props);
|
|
1826
1869
|
t !== null && e.sink(t);
|
|
1827
1870
|
};
|
|
1828
|
-
}, []), a(() =>
|
|
1871
|
+
}, []), a(() => Yt(e, t, n), [
|
|
1829
1872
|
e,
|
|
1830
1873
|
t,
|
|
1831
1874
|
n
|
|
1832
1875
|
]);
|
|
1833
|
-
}, Xt = (e, t) => {
|
|
1834
|
-
let n = N(e).descriptors[t]?.input;
|
|
1835
|
-
return a(() => n === void 0 ? [] : X(n), [n]);
|
|
1836
1876
|
}, Zt = (e, t) => {
|
|
1837
|
-
let n =
|
|
1838
|
-
return a(() => n === void 0 ? [] :
|
|
1877
|
+
let n = P(e).descriptors[t]?.input;
|
|
1878
|
+
return a(() => n === void 0 ? [] : Q(n), [n]);
|
|
1839
1879
|
}, Qt = (e, t) => {
|
|
1880
|
+
let n = P(e).descriptors[t]?.output;
|
|
1881
|
+
return a(() => n === void 0 ? [] : Dt(n), [n]);
|
|
1882
|
+
}, $t = (e, t) => {
|
|
1840
1883
|
if (e === t) return !0;
|
|
1841
1884
|
if (e.length !== t.length) return !1;
|
|
1842
1885
|
for (let n = 0; n < e.length; n += 1) if (!Object.is(e[n], t[n])) return !1;
|
|
1843
1886
|
return !0;
|
|
1844
|
-
},
|
|
1845
|
-
let n = o(null), r =
|
|
1846
|
-
return (n.current === null ||
|
|
1887
|
+
}, en = (e) => Object.keys(e).sort().map((t) => e[t]), tn = (e, t) => {
|
|
1888
|
+
let n = o(null), r = en(e);
|
|
1889
|
+
return (n.current === null || !$t(n.current.key, r)) && (n.current = {
|
|
1847
1890
|
key: r,
|
|
1848
1891
|
value: t(e)
|
|
1849
1892
|
}), n.current.value;
|
|
1850
|
-
},
|
|
1851
|
-
function
|
|
1852
|
-
return t(
|
|
1893
|
+
}, nn = "admin:full", rn = (e, t) => e.includes("admin:full") ? !0 : (typeof t == "string" ? [t] : t).every((t) => e.includes(t)), an = (e, t) => t.length === 0 || e.includes("admin:full") ? !0 : t.some((t) => e.includes(t)), on = e({ scopes: [] });
|
|
1894
|
+
function sn(e) {
|
|
1895
|
+
return t(on.Provider, { value: { scopes: e.scopes } }, e.children);
|
|
1853
1896
|
}
|
|
1854
|
-
var
|
|
1855
|
-
let i =
|
|
1897
|
+
var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes, e), dn = (e, t, n, r = {}) => {
|
|
1898
|
+
let i = I(e, t, { ...n }, r);
|
|
1856
1899
|
return a(() => ({
|
|
1857
1900
|
allowed: i.data?.allowed === !0,
|
|
1858
1901
|
pending: i.data === void 0
|
|
1859
1902
|
}), [i.data]);
|
|
1860
|
-
},
|
|
1861
|
-
let i =
|
|
1903
|
+
}, fn = (e, t, n, r = {}) => {
|
|
1904
|
+
let i = I(e, t, { ...n }, r);
|
|
1862
1905
|
return a(() => ({
|
|
1863
1906
|
allowedIds: new Set(i.data?.allowedIds ?? []),
|
|
1864
1907
|
pending: i.data === void 0
|
|
1865
1908
|
}), [i.data]);
|
|
1866
|
-
},
|
|
1909
|
+
}, pn = (e) => {
|
|
1867
1910
|
switch (e) {
|
|
1868
1911
|
case "select":
|
|
1869
1912
|
case "radio":
|
|
@@ -1879,25 +1922,25 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
1879
1922
|
case "switch": return "boolean";
|
|
1880
1923
|
default: return null;
|
|
1881
1924
|
}
|
|
1882
|
-
},
|
|
1883
|
-
let t =
|
|
1925
|
+
}, mn = (e) => Q(e).map((e) => {
|
|
1926
|
+
let t = pn(e.widget);
|
|
1884
1927
|
return t === null ? null : {
|
|
1885
1928
|
name: e.name,
|
|
1886
1929
|
label: e.label,
|
|
1887
1930
|
kind: t,
|
|
1888
1931
|
...e.options ? { options: e.options } : {}
|
|
1889
1932
|
};
|
|
1890
|
-
}).filter((e) => e !== null),
|
|
1933
|
+
}).filter((e) => e !== null), hn = (e) => {
|
|
1891
1934
|
let t = {};
|
|
1892
1935
|
for (let [n, r] of Object.entries(e)) r === void 0 || r === "" || Array.isArray(r) && r.length === 0 || (t[n] = r);
|
|
1893
1936
|
return t;
|
|
1894
|
-
},
|
|
1895
|
-
let i =
|
|
1896
|
-
l((n) =>
|
|
1937
|
+
}, gn = (e, t, r = {}) => {
|
|
1938
|
+
let i = P(e).descriptors[t]?.input, o = a(() => i === void 0 ? [] : mn(i), [i]), [c, l] = s(r.initial ?? {}), u = n((e, t) => {
|
|
1939
|
+
l((n) => hn({
|
|
1897
1940
|
...n,
|
|
1898
1941
|
[e]: t
|
|
1899
1942
|
}));
|
|
1900
|
-
}, []), d = n(() => l({}), []), f =
|
|
1943
|
+
}, []), d = n(() => l({}), []), f = I(e, t, a(() => hn(c), [c]));
|
|
1901
1944
|
return {
|
|
1902
1945
|
filters: o,
|
|
1903
1946
|
values: c,
|
|
@@ -1908,20 +1951,20 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
1908
1951
|
loading: f.data === void 0,
|
|
1909
1952
|
error: f.error
|
|
1910
1953
|
};
|
|
1911
|
-
},
|
|
1912
|
-
let r =
|
|
1954
|
+
}, _n = (e, t, n = {}) => {
|
|
1955
|
+
let r = I(e, t, n), i = r.data;
|
|
1913
1956
|
return {
|
|
1914
1957
|
record: Array.isArray(i) ? i[0] : i,
|
|
1915
1958
|
loading: i === void 0,
|
|
1916
1959
|
error: r.error
|
|
1917
1960
|
};
|
|
1918
|
-
},
|
|
1961
|
+
}, vn = (e, t = 300) => {
|
|
1919
1962
|
let [n, r] = s(e);
|
|
1920
1963
|
return i(() => {
|
|
1921
1964
|
let n = setTimeout(() => r(e), t);
|
|
1922
1965
|
return () => clearTimeout(n);
|
|
1923
1966
|
}, [e, t]), n;
|
|
1924
|
-
},
|
|
1967
|
+
}, yn = (e) => {
|
|
1925
1968
|
let { value: t, debouncedValue: n, data: r, interpret: i, skipEmpty: a = !0 } = e;
|
|
1926
1969
|
if (a && t.trim() === "") return {
|
|
1927
1970
|
status: "idle",
|
|
@@ -1939,19 +1982,19 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
1939
1982
|
valid: o.valid,
|
|
1940
1983
|
message: o.message
|
|
1941
1984
|
};
|
|
1942
|
-
},
|
|
1943
|
-
let { input: i, interpret: o, debounceMs: s = 300, skipEmpty: c = !0 } = r, l =
|
|
1944
|
-
return
|
|
1985
|
+
}, bn = (e, t, n, r) => {
|
|
1986
|
+
let { input: i, interpret: o, debounceMs: s = 300, skipEmpty: c = !0 } = r, l = vn(n, s), u = c && l.trim() === "", d = I(e, t, a(() => i ? i(l) : { value: l }, [i, l]), { skip: u });
|
|
1987
|
+
return yn({
|
|
1945
1988
|
value: n,
|
|
1946
1989
|
debouncedValue: l,
|
|
1947
1990
|
data: u ? null : d.data,
|
|
1948
1991
|
interpret: o,
|
|
1949
1992
|
skipEmpty: c
|
|
1950
1993
|
});
|
|
1951
|
-
},
|
|
1994
|
+
}, xn = (e, t) => ({
|
|
1952
1995
|
name: e,
|
|
1953
1996
|
payload: t
|
|
1954
|
-
}),
|
|
1997
|
+
}), Sn = (e, t) => {
|
|
1955
1998
|
let n = h.decodeUnknownEither(e.payload, { errors: "all" })(t);
|
|
1956
1999
|
if (n._tag === "Right") return {
|
|
1957
2000
|
valid: !0,
|
|
@@ -1963,15 +2006,15 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
1963
2006
|
valid: !1,
|
|
1964
2007
|
errors: r
|
|
1965
2008
|
};
|
|
1966
|
-
},
|
|
2009
|
+
}, Cn = (e) => {
|
|
1967
2010
|
let t = new Map(e.map((e) => [e.name, e]));
|
|
1968
2011
|
return {
|
|
1969
2012
|
names: [...t.keys()].sort(),
|
|
1970
2013
|
get: (e) => t.get(e),
|
|
1971
2014
|
events: e
|
|
1972
2015
|
};
|
|
1973
|
-
},
|
|
1974
|
-
let n =
|
|
2016
|
+
}, wn = (e, t) => {
|
|
2017
|
+
let n = Cn(e);
|
|
1975
2018
|
return {
|
|
1976
2019
|
track: (e, r) => {
|
|
1977
2020
|
let i = n.get(e);
|
|
@@ -1980,7 +2023,7 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
1980
2023
|
return;
|
|
1981
2024
|
}
|
|
1982
2025
|
if (process.env.NODE_ENV !== "production") {
|
|
1983
|
-
let t =
|
|
2026
|
+
let t = Sn(i, r);
|
|
1984
2027
|
t.valid || console.error(`[@voltro/client] analytics.track('${e}'): payload failed its schema`, t.errors);
|
|
1985
2028
|
}
|
|
1986
2029
|
t({
|
|
@@ -1991,42 +2034,42 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
1991
2034
|
names: n.names,
|
|
1992
2035
|
catalog: n
|
|
1993
2036
|
};
|
|
1994
|
-
},
|
|
1995
|
-
let r =
|
|
2037
|
+
}, Tn = (e, t) => {
|
|
2038
|
+
let r = G(e, t);
|
|
1996
2039
|
return {
|
|
1997
2040
|
preview: n((e) => r.run(e), [r]),
|
|
1998
2041
|
diff: r.lastResult,
|
|
1999
2042
|
pending: r.pending,
|
|
2000
2043
|
error: r.error
|
|
2001
2044
|
};
|
|
2002
|
-
},
|
|
2045
|
+
}, En = (e, t, n, r) => [...e, {
|
|
2003
2046
|
id: t,
|
|
2004
2047
|
tag: n,
|
|
2005
2048
|
input: r,
|
|
2006
2049
|
status: "pending",
|
|
2007
2050
|
attempts: 0
|
|
2008
|
-
}],
|
|
2051
|
+
}], Dn = (e, t, n) => e.map((e) => e.id === t ? {
|
|
2009
2052
|
...e,
|
|
2010
2053
|
...n
|
|
2011
|
-
} : e),
|
|
2054
|
+
} : e), On = (e, t) => Dn(e, t, { status: "sent" }), kn = (e, t, n) => e.map((e) => e.id === t ? {
|
|
2012
2055
|
...e,
|
|
2013
2056
|
status: "failed",
|
|
2014
2057
|
error: n,
|
|
2015
2058
|
attempts: e.attempts + 1
|
|
2016
|
-
} : e),
|
|
2059
|
+
} : e), An = (e, t, n) => Dn(e, t, {
|
|
2017
2060
|
status: "conflict",
|
|
2018
2061
|
error: n
|
|
2019
|
-
}),
|
|
2062
|
+
}), jn = (e) => e.filter((e) => e.status !== "sent"), Mn = (e) => {
|
|
2020
2063
|
let t = [];
|
|
2021
2064
|
for (let n of e) {
|
|
2022
2065
|
if (n.status === "conflict") break;
|
|
2023
2066
|
(n.status === "pending" || n.status === "failed") && t.push(n);
|
|
2024
2067
|
}
|
|
2025
2068
|
return t;
|
|
2026
|
-
},
|
|
2069
|
+
}, Nn = (e) => {
|
|
2027
2070
|
let t = e;
|
|
2028
2071
|
return t?.conflict === !0 || t?._tag === "UndoBoundaryError" && t?.boundary === "conflict";
|
|
2029
|
-
},
|
|
2072
|
+
}, Pn = (e) => {
|
|
2030
2073
|
let [t, n] = s(e ?? (typeof navigator < "u" ? navigator.onLine : !0));
|
|
2031
2074
|
return i(() => {
|
|
2032
2075
|
if (e !== void 0) {
|
|
@@ -2039,21 +2082,21 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
2039
2082
|
window.removeEventListener("online", t), window.removeEventListener("offline", r);
|
|
2040
2083
|
};
|
|
2041
2084
|
}, [e]), t;
|
|
2042
|
-
},
|
|
2043
|
-
let { send: t, isConflict: r =
|
|
2085
|
+
}, Fn = (e) => {
|
|
2086
|
+
let { send: t, isConflict: r = Nn, idFor: a } = e, [c, l] = s([]), u = Pn(e.online), d = o(c);
|
|
2044
2087
|
d.current = c;
|
|
2045
2088
|
let f = o(0), p = n((e, t) => {
|
|
2046
2089
|
let n = a?.() ?? `obx_${f.current++}_${e}`;
|
|
2047
|
-
l((r) =>
|
|
2090
|
+
l((r) => En(r, n, e, t));
|
|
2048
2091
|
}, [a]), m = n(async () => {
|
|
2049
|
-
for (let e of
|
|
2050
|
-
await t(e), l((t) =>
|
|
2092
|
+
for (let e of Mn(d.current)) try {
|
|
2093
|
+
await t(e), l((t) => On(t, e.id));
|
|
2051
2094
|
} catch (t) {
|
|
2052
2095
|
if (r(t)) {
|
|
2053
|
-
l((n) =>
|
|
2096
|
+
l((n) => An(n, e.id, t));
|
|
2054
2097
|
break;
|
|
2055
2098
|
}
|
|
2056
|
-
l((n) =>
|
|
2099
|
+
l((n) => kn(n, e.id, t));
|
|
2057
2100
|
}
|
|
2058
2101
|
}, [t, r]);
|
|
2059
2102
|
return i(() => {
|
|
@@ -2066,7 +2109,7 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
2066
2109
|
pending: c.filter((e) => e.status === "pending" || e.status === "failed").length,
|
|
2067
2110
|
conflicts: c.filter((e) => e.status === "conflict")
|
|
2068
2111
|
};
|
|
2069
|
-
},
|
|
2112
|
+
}, In = (e) => {
|
|
2070
2113
|
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);
|
|
2071
2114
|
return {
|
|
2072
2115
|
startIndex: l,
|
|
@@ -2076,8 +2119,8 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
2076
2119
|
topSpacer: l * r,
|
|
2077
2120
|
bottomSpacer: a === void 0 ? 0 : Math.max(0, (a - d) * r)
|
|
2078
2121
|
};
|
|
2079
|
-
},
|
|
2080
|
-
let { rowHeight: i, viewportHeight: o, overscan: c, total: l, input: u } = r, [d, f] = s(0), p = a(() =>
|
|
2122
|
+
}, Ln = (e, t, r) => {
|
|
2123
|
+
let { rowHeight: i, viewportHeight: o, overscan: c, total: l, input: u } = r, [d, f] = s(0), p = a(() => In({
|
|
2081
2124
|
scrollTop: d,
|
|
2082
2125
|
viewportHeight: o,
|
|
2083
2126
|
rowHeight: i,
|
|
@@ -2089,7 +2132,7 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
2089
2132
|
i,
|
|
2090
2133
|
c,
|
|
2091
2134
|
l
|
|
2092
|
-
]), m =
|
|
2135
|
+
]), m = I(e, t, a(() => ({
|
|
2093
2136
|
...u,
|
|
2094
2137
|
offset: p.offset,
|
|
2095
2138
|
limit: p.limit
|
|
@@ -2109,8 +2152,8 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
2109
2152
|
loading: m.data === void 0,
|
|
2110
2153
|
error: m.error
|
|
2111
2154
|
};
|
|
2112
|
-
},
|
|
2113
|
-
let { errorBus: t } =
|
|
2155
|
+
}, Rn = () => typeof navigator > "u" || navigator.onLine, zn = (e) => {
|
|
2156
|
+
let { errorBus: t } = P(e), [r, a] = s(Rn), [c, l] = s(0), [u, d] = s(void 0), f = o(!0);
|
|
2114
2157
|
i(() => (f.current = !0, () => {
|
|
2115
2158
|
f.current = !1;
|
|
2116
2159
|
}), []), i(() => {
|
|
@@ -2136,6 +2179,90 @@ var sn = () => r(an), cn = (e) => nn(sn().scopes, e), ln = (e) => rn(sn().scopes
|
|
|
2136
2179
|
lastFailureAt: u,
|
|
2137
2180
|
reportSuccess: p
|
|
2138
2181
|
};
|
|
2139
|
-
},
|
|
2182
|
+
}, Bn = "__voltro.connections.list", Vn = "__voltro.connections.start", Hn = "__voltro.connections.submitToken", Un = "__voltro.connections.disconnect", Wn = {
|
|
2183
|
+
connectionId: "",
|
|
2184
|
+
kind: "oauth2",
|
|
2185
|
+
label: "",
|
|
2186
|
+
status: "disconnected",
|
|
2187
|
+
accountId: null,
|
|
2188
|
+
accountLabel: null,
|
|
2189
|
+
scopes: [],
|
|
2190
|
+
expiresAt: null,
|
|
2191
|
+
lastError: null,
|
|
2192
|
+
connectedAt: null
|
|
2193
|
+
}, Gn = (e, t) => {
|
|
2194
|
+
if (t === "redirect") {
|
|
2195
|
+
globalThis.location.assign(e);
|
|
2196
|
+
return;
|
|
2197
|
+
}
|
|
2198
|
+
globalThis.open(e, "voltro-connect", "width=620,height=760,menubar=no,toolbar=no") === null && globalThis.location.assign(e);
|
|
2199
|
+
}, Kn = (e) => {
|
|
2200
|
+
let { data: t } = I(e, Bn, {}), r = G(e, Vn), i = W(e, Hn), a = W(e, Un), o = t ?? [], s = r.pending || i.pending || a.pending, c = n((e) => ({
|
|
2201
|
+
...e,
|
|
2202
|
+
connected: e.status === "connected",
|
|
2203
|
+
needsAttention: e.status === "expired" || e.status === "revoked" || e.status === "error",
|
|
2204
|
+
pending: s,
|
|
2205
|
+
connect: async (t) => {
|
|
2206
|
+
if (e.kind !== "oauth2") throw Error(`connection "${e.connectionId}" is a personal-access-token connection — call submitToken(token), not connect().`);
|
|
2207
|
+
let n = t?.redirectTo ?? `${globalThis.location.pathname}${globalThis.location.search}`;
|
|
2208
|
+
Gn((await r.run({
|
|
2209
|
+
connectionId: e.connectionId,
|
|
2210
|
+
redirectTo: n
|
|
2211
|
+
})).authorizeUrl, t?.mode);
|
|
2212
|
+
},
|
|
2213
|
+
submitToken: async (t) => {
|
|
2214
|
+
if (e.kind !== "pat") throw Error(`connection "${e.connectionId}" uses OAuth — call connect(), not submitToken().`);
|
|
2215
|
+
await i.mutate({
|
|
2216
|
+
connectionId: e.connectionId,
|
|
2217
|
+
token: t
|
|
2218
|
+
});
|
|
2219
|
+
},
|
|
2220
|
+
disconnect: async () => {
|
|
2221
|
+
await a.mutate({ connectionId: e.connectionId });
|
|
2222
|
+
}
|
|
2223
|
+
}), [
|
|
2224
|
+
s,
|
|
2225
|
+
r,
|
|
2226
|
+
i,
|
|
2227
|
+
a
|
|
2228
|
+
]), l = n((e) => {
|
|
2229
|
+
let t = o.find((t) => t.connectionId === e);
|
|
2230
|
+
return t === void 0 ? void 0 : c(t);
|
|
2231
|
+
}, [o, c]);
|
|
2232
|
+
return {
|
|
2233
|
+
connections: o,
|
|
2234
|
+
loading: t === void 0,
|
|
2235
|
+
get: l,
|
|
2236
|
+
pending: s
|
|
2237
|
+
};
|
|
2238
|
+
}, qn = (e, t) => {
|
|
2239
|
+
let n = Kn(e), r = n.get(t);
|
|
2240
|
+
return a(() => r === void 0 ? {
|
|
2241
|
+
...Wn,
|
|
2242
|
+
connectionId: t,
|
|
2243
|
+
label: t,
|
|
2244
|
+
connected: !1,
|
|
2245
|
+
needsAttention: !1,
|
|
2246
|
+
pending: n.pending,
|
|
2247
|
+
loading: n.loading,
|
|
2248
|
+
connect: async () => {
|
|
2249
|
+
throw Error(`connection "${t}" is not declared by this app.`);
|
|
2250
|
+
},
|
|
2251
|
+
submitToken: async () => {
|
|
2252
|
+
throw Error(`connection "${t}" is not declared by this app.`);
|
|
2253
|
+
},
|
|
2254
|
+
disconnect: async () => {
|
|
2255
|
+
throw Error(`connection "${t}" is not declared by this app.`);
|
|
2256
|
+
}
|
|
2257
|
+
} : {
|
|
2258
|
+
...r,
|
|
2259
|
+
loading: n.loading
|
|
2260
|
+
}, [
|
|
2261
|
+
r,
|
|
2262
|
+
t,
|
|
2263
|
+
n.loading,
|
|
2264
|
+
n.pending
|
|
2265
|
+
]);
|
|
2266
|
+
}, Jn = "framework-client";
|
|
2140
2267
|
//#endregion
|
|
2141
|
-
export {
|
|
2268
|
+
export { nn as ADMIN_SCOPE, Jn as CLIENT_NAME, Bn as CONNECTIONS_LIST_TAG, Un as CONNECTION_DISCONNECT_TAG, Vn as CONNECTION_START_TAG, Hn as CONNECTION_SUBMIT_TOKEN_TAG, ce as FrameworkRuntimesContext, me as FrameworkRuntimesProvider, ae as LoadingSubscriptionCache, sn as PermissionProvider, oe as RpcErrorBus, ie as SubscriptionCache, Wt as UNDO_APPLY_TAG, Ut as UNDO_LOG_TAG, Gt as UNDO_REDO_TAG, fe as _resetFrameworkRuntimesWarning, rn as canCall, an as canCallAny, Se as clearMutations, jn as clearSent, In as computeWindow, wn as createAnalytics, xn as defineEvent, qt as defineTracking, Vt as deriveEntityAdmins, En as enqueueEntry, se as errorTag, Cn as eventCatalog, mn as filtersFromSchema, U as getMutationNotifier, be as getMutations, Lt as manifestUrl, An as markConflict, kn as markFailed, On as markSent, Ft as provenanceUrl, ht as publishClientError, x as publishClientTrace, Mn as replayable, _t as reportClientError, F as resolveByTag, $ as resolveTrackingEvent, ot as resumableConsumeProgram, At as rowsToOptions, Dt as schemaToColumns, Q as schemaToFields, we as setMutationNotifier, V as settleMutation, $t as shallowArrayEqual, en as sourceValues, A as ssrClientProxy, ue as ssrStubHandle, C as stableKey, B as startMutation, gt as subscribeClientErrors, S as subscribeClientTraces, xe as subscribeMutations, G as useAction, ft as useAgent, dt as useAgentChat, at as useAgentStream, bn as useAsyncValidation, ln as useCan, un as useCanAny, Rt as useCapabilityManifest, qn as useConnection, zn as useConnectionStatus, Kn as useConnections, pt as useDataCopilot, Nt as useDataTable, vn as useDebounced, tn as useDerived, kt as useFormBinding, Zt as useFormSkeleton, P as useFrameworkApi, pe as useFrameworkRuntimes, W as useMutation, vt as useOnRpcError, Fn as useOutbox, cn as usePermissions, Tn as usePreview, It as useProvenance, jt as useQueryField, gn as useQueryFilters, _n as useRecord, mt as useRefreshSubscriptions, dn as useResourceCan, fn as useResourceCans, ct as useResumableAgentStream, I as useSubscription, Qt as useTableSkeleton, Xt as useTracking, Ht as useUndo, Kt as useUndoLog, We as useUpload, Ln as useWindowedSubscription, Ge as useWorkflow, Qe as useWorkflowDomainEvents, $e as useWorkflowEventDeliveries, Ze as useWorkflowEvents, Je as useWorkflowRun, J as useWorkflowRunEvents, it as useWorkflowRunState, Xe as useWorkflowRunSteps, Ye as useWorkflowRuns, Ke as useWorkflowSignal, qe as useWorkflowUpdate, Sn as validateEventPayload, Ot as validateFields, yn as validationStatus, Yt as wrapTrackedCallbacks };
|