@voltro/client 0.9.0 → 0.11.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 +394 -7
- package/dist/index.d.ts +223 -7
- package/dist/index.js +408 -308
- 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
|
+
}, te = (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
|
+
}, ne = (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 = te(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
|
+
}, re = (e, t, n) => {
|
|
76
|
+
if (e.path !== void 0) return ne(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 = te(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 = te(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
|
+
}, ie = 5e3, ae = 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 ?? ie, 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 = re(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
|
+
}, oe = class extends ae {
|
|
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
|
+
}, se = 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
|
+
}, ce = (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
|
+
}, le = e(null), ue = () => {
|
|
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
|
+
}, k = new Proxy(() => ue(), {
|
|
349
|
+
get: (e, t) => k,
|
|
350
350
|
has: () => !0,
|
|
351
|
-
apply: () =>
|
|
352
|
-
}),
|
|
351
|
+
apply: () => ue()
|
|
352
|
+
}), de = {
|
|
353
353
|
runtime: { runPromise: () => Promise.reject(/* @__PURE__ */ Error("Voltro: mutations are not invokable during SSR")) },
|
|
354
|
-
cache: new
|
|
355
|
-
client:
|
|
354
|
+
cache: new oe(),
|
|
355
|
+
client: k,
|
|
356
356
|
descriptors: {},
|
|
357
357
|
inspectBaseUrl: "",
|
|
358
|
-
errorBus: new
|
|
359
|
-
},
|
|
360
|
-
get: () =>
|
|
358
|
+
errorBus: new se()
|
|
359
|
+
}, fe = {
|
|
360
|
+
get: () => de,
|
|
361
361
|
names: []
|
|
362
|
-
},
|
|
363
|
-
|
|
364
|
-
},
|
|
365
|
-
let e = r(
|
|
366
|
-
return e ? (
|
|
367
|
-
|
|
368
|
-
}, 0)),
|
|
369
|
-
},
|
|
362
|
+
}, A = !1, j = !1, M = null, pe = () => {
|
|
363
|
+
A = !1, j = !1, M !== null && (clearTimeout(M), M = null);
|
|
364
|
+
}, me = () => {
|
|
365
|
+
let e = r(le);
|
|
366
|
+
return e ? (j || (j = !0, M !== null && (clearTimeout(M), M = null)), e) : (typeof window < "u" && !A && !j && M === null && process.env.NODE_ENV !== "production" && (M = setTimeout(() => {
|
|
367
|
+
M = null, !(A || j) && (A = !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)), fe);
|
|
369
|
+
}, N = (e) => me().get(e), he = ({ 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(le.Provider, {
|
|
382
382
|
value: n,
|
|
383
383
|
children: t
|
|
384
384
|
});
|
|
385
|
-
},
|
|
385
|
+
}, P = (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,72 +401,172 @@ 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
|
+
}, ge = 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
|
-
function
|
|
412
|
-
let s = i.skip === !0, { runtime: l, cache: u, client: d, descriptors: f } =
|
|
410
|
+
}), _e = () => ge;
|
|
411
|
+
function F(e, t, r = {}, i = {}) {
|
|
412
|
+
let s = i.skip === !0, { runtime: l, cache: u, client: d, descriptors: f } = N(e), p = f[t]?.source, m = o(r);
|
|
413
413
|
m.current = r;
|
|
414
414
|
let h = o(d);
|
|
415
415
|
h.current = d;
|
|
416
|
-
let g = o(() =>
|
|
416
|
+
let g = o(() => P(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, [
|
|
417
417
|
u,
|
|
418
418
|
l,
|
|
419
419
|
p,
|
|
420
420
|
s,
|
|
421
421
|
_
|
|
422
|
-
]), n(() => s ?
|
|
422
|
+
]), n(() => s ? ge : u.peek(_), [
|
|
423
423
|
u,
|
|
424
424
|
s,
|
|
425
425
|
_
|
|
426
|
-
]),
|
|
426
|
+
]), _e), y = v.data !== void 0, b = y && (Array.isArray(v.data) ? v.data.length === 0 : v.data === null), x = {
|
|
427
427
|
revision: v.revision,
|
|
428
428
|
emittedAt: v.emittedAt,
|
|
429
429
|
error: v.error,
|
|
430
430
|
pendingPatches: v.pendingPatches
|
|
431
431
|
};
|
|
432
|
-
return i.fallback === void 0 ?
|
|
432
|
+
return i.fallback === void 0 ? s ? {
|
|
433
|
+
...x,
|
|
434
|
+
data: void 0,
|
|
435
|
+
loading: !1,
|
|
436
|
+
isEmpty: !1,
|
|
437
|
+
idle: !0
|
|
438
|
+
} : y ? {
|
|
433
439
|
...x,
|
|
434
440
|
data: v.data,
|
|
435
441
|
loading: !1,
|
|
436
|
-
isEmpty: b
|
|
442
|
+
isEmpty: b,
|
|
443
|
+
idle: !1
|
|
437
444
|
} : {
|
|
438
445
|
...x,
|
|
439
446
|
data: void 0,
|
|
440
447
|
loading: !0,
|
|
441
|
-
isEmpty: !1
|
|
448
|
+
isEmpty: !1,
|
|
449
|
+
idle: !1
|
|
442
450
|
} : {
|
|
443
451
|
...x,
|
|
444
452
|
data: y ? v.data : i.fallback,
|
|
445
|
-
loading: !y,
|
|
453
|
+
loading: !y && !s,
|
|
454
|
+
idle: s,
|
|
446
455
|
isEmpty: b
|
|
447
456
|
};
|
|
448
457
|
}
|
|
449
458
|
//#endregion
|
|
450
|
-
//#region src/
|
|
451
|
-
var
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
459
|
+
//#region src/sequence.ts
|
|
460
|
+
var ve = () => {
|
|
461
|
+
let e = (t) => ({
|
|
462
|
+
steps: t,
|
|
463
|
+
step: ((n, r, i) => e([...t, {
|
|
464
|
+
name: n,
|
|
465
|
+
run: r,
|
|
466
|
+
undo: i?.undo,
|
|
467
|
+
covers: i?.covers ?? [],
|
|
468
|
+
when: i?.when
|
|
469
|
+
}]))
|
|
470
|
+
});
|
|
471
|
+
return e([]);
|
|
472
|
+
}, ye = async (e, t = {}) => {
|
|
473
|
+
let n = {}, r = [];
|
|
474
|
+
for (let i of e.steps) {
|
|
475
|
+
if (i.when !== void 0 && !i.when(n)) {
|
|
476
|
+
n[i.name] = void 0;
|
|
477
|
+
continue;
|
|
478
|
+
}
|
|
479
|
+
try {
|
|
480
|
+
let e = await i.run(n);
|
|
481
|
+
n[i.name] = e, r.push({
|
|
482
|
+
step: i,
|
|
483
|
+
result: e
|
|
484
|
+
});
|
|
485
|
+
} catch (e) {
|
|
486
|
+
let n = [], a = [], o = [], s = [];
|
|
487
|
+
if (t.compensate !== !1) {
|
|
488
|
+
let e = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Map();
|
|
489
|
+
for (let i = r.length - 1; i >= 0; i--) {
|
|
490
|
+
let c = r[i], l = c.step.name;
|
|
491
|
+
if (t.has(l)) {
|
|
492
|
+
s.push({
|
|
493
|
+
step: l,
|
|
494
|
+
coveredBy: t.get(l)
|
|
495
|
+
});
|
|
496
|
+
continue;
|
|
497
|
+
}
|
|
498
|
+
if (e.has(l)) {
|
|
499
|
+
o.push(l);
|
|
500
|
+
continue;
|
|
501
|
+
}
|
|
502
|
+
if (c.step.undo !== void 0) try {
|
|
503
|
+
await c.step.undo(c.result), n.push(l);
|
|
504
|
+
for (let t of c.step.covers) e.set(t, l);
|
|
505
|
+
} catch (e) {
|
|
506
|
+
a.push({
|
|
507
|
+
step: l,
|
|
508
|
+
error: e
|
|
509
|
+
});
|
|
510
|
+
for (let e of c.step.covers) t.set(e, l);
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
let c = {
|
|
515
|
+
failedStep: i.name,
|
|
516
|
+
compensated: n,
|
|
517
|
+
compensationFailures: a,
|
|
518
|
+
compensationCovered: o,
|
|
519
|
+
compensationUncertain: s
|
|
520
|
+
};
|
|
521
|
+
return t.onError?.(e, c), {
|
|
522
|
+
ok: !1,
|
|
523
|
+
error: e,
|
|
524
|
+
...c
|
|
525
|
+
};
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
return {
|
|
529
|
+
ok: !0,
|
|
530
|
+
data: n
|
|
531
|
+
};
|
|
532
|
+
}, be = (e = {}) => {
|
|
533
|
+
let [t, r] = s(!1), [i, a] = s(void 0), [c, l] = s(void 0), u = o(e);
|
|
534
|
+
return u.current = e, {
|
|
535
|
+
run: n(async (e, t = {}) => {
|
|
536
|
+
r(!0), a(void 0), l(void 0);
|
|
537
|
+
try {
|
|
538
|
+
let n = await ye(e, {
|
|
539
|
+
...u.current,
|
|
540
|
+
...t
|
|
541
|
+
});
|
|
542
|
+
return n.ok || (a(n.error), l(n.failedStep)), n;
|
|
543
|
+
} finally {
|
|
544
|
+
r(!1);
|
|
545
|
+
}
|
|
546
|
+
}, []),
|
|
547
|
+
pending: t,
|
|
548
|
+
error: i,
|
|
549
|
+
failedStep: c
|
|
550
|
+
};
|
|
551
|
+
}, xe = 100, I = [], L = /* @__PURE__ */ new Set(), Se = [], Ce = () => {
|
|
552
|
+
Se = I.slice();
|
|
553
|
+
}, R = () => {
|
|
554
|
+
Ce();
|
|
555
|
+
for (let e of L) try {
|
|
456
556
|
e();
|
|
457
557
|
} catch {}
|
|
458
|
-
},
|
|
558
|
+
}, z = (e) => {
|
|
459
559
|
let t = {
|
|
460
560
|
...e,
|
|
461
561
|
status: "pending",
|
|
462
562
|
startedAt: Date.now()
|
|
463
563
|
};
|
|
464
|
-
|
|
465
|
-
},
|
|
466
|
-
let n =
|
|
564
|
+
I.unshift(t), I.length > xe && (I.length = xe), R();
|
|
565
|
+
}, B = (e, t) => {
|
|
566
|
+
let n = I.findIndex((t) => t.id === e);
|
|
467
567
|
if (n === -1) return;
|
|
468
|
-
let r =
|
|
469
|
-
|
|
568
|
+
let r = I[n], i = Date.now();
|
|
569
|
+
I[n] = t.status === "success" ? {
|
|
470
570
|
...r,
|
|
471
571
|
status: "success",
|
|
472
572
|
output: t.output,
|
|
@@ -478,12 +578,12 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
478
578
|
error: t.error,
|
|
479
579
|
settledAt: i,
|
|
480
580
|
durationMs: i - r.startedAt
|
|
481
|
-
},
|
|
482
|
-
},
|
|
483
|
-
|
|
484
|
-
}),
|
|
485
|
-
|
|
486
|
-
},
|
|
581
|
+
}, R();
|
|
582
|
+
}, we = () => Se, Te = (e) => (L.add(e), () => {
|
|
583
|
+
L.delete(e);
|
|
584
|
+
}), Ee = () => {
|
|
585
|
+
I.length !== 0 && (I.length = 0, R());
|
|
586
|
+
}, De = (e, t) => {
|
|
487
587
|
if (t === void 0 || typeof e != "object" || !e) return e;
|
|
488
588
|
try {
|
|
489
589
|
Object.defineProperty(e, "__voltroTraceId", {
|
|
@@ -493,15 +593,15 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
493
593
|
});
|
|
494
594
|
} catch {}
|
|
495
595
|
return e;
|
|
496
|
-
},
|
|
497
|
-
|
|
498
|
-
},
|
|
596
|
+
}, V, Oe = (e) => {
|
|
597
|
+
V = e;
|
|
598
|
+
}, H = () => V, ke = (e, t, n) => typeof e == "function" ? e(t, n) : e, Ae = 0, je = () => `mut_${++Ae}`, Me = (e, t) => ({
|
|
499
599
|
update: (n, r) => {
|
|
500
600
|
e.update(n, r, t);
|
|
501
601
|
},
|
|
502
602
|
forTag: (n, r) => e.forTag(n, r, t)
|
|
503
|
-
}),
|
|
504
|
-
let { runtime: r, cache: i, client: c, descriptors: l, errorBus: u } =
|
|
603
|
+
}), U = (e, t) => {
|
|
604
|
+
let { runtime: r, cache: i, client: c, descriptors: l, errorBus: u } = N(e), f = l[t], p = f?.targets;
|
|
505
605
|
if (process.env.NODE_ENV !== "production") {
|
|
506
606
|
let n = f?.kind;
|
|
507
607
|
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.`);
|
|
@@ -509,12 +609,12 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
509
609
|
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) => {
|
|
510
610
|
let o = a?.onError !== void 0 || a?.notify?.error !== void 0, s = (e) => {
|
|
511
611
|
a?.onError?.(e, n);
|
|
512
|
-
let t =
|
|
513
|
-
t !== void 0 &&
|
|
612
|
+
let t = ke(a?.notify?.error, e, n);
|
|
613
|
+
t !== void 0 && V?.error(t);
|
|
514
614
|
};
|
|
515
615
|
h(!0), _(void 0);
|
|
516
|
-
let l =
|
|
517
|
-
|
|
616
|
+
let l = je();
|
|
617
|
+
z({
|
|
518
618
|
id: l,
|
|
519
619
|
apiName: e,
|
|
520
620
|
tag: t,
|
|
@@ -522,9 +622,9 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
522
622
|
});
|
|
523
623
|
let f = b.current, m = S.current;
|
|
524
624
|
if (f) try {
|
|
525
|
-
f(
|
|
625
|
+
f(Me(i, l), n);
|
|
526
626
|
} catch (e) {
|
|
527
|
-
if (_(e), h(!1), i.revertByMutation(l),
|
|
627
|
+
if (_(e), h(!1), i.revertByMutation(l), B(l, {
|
|
528
628
|
status: "error",
|
|
529
629
|
error: e
|
|
530
630
|
}), o) return s(e);
|
|
@@ -533,7 +633,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
533
633
|
else !m && p && p.length > 0 && i.autoApply(p, n, l);
|
|
534
634
|
let g;
|
|
535
635
|
try {
|
|
536
|
-
let o =
|
|
636
|
+
let o = P(c, t), s = d.currentSpan.pipe(d.tap((e) => d.sync(() => {
|
|
537
637
|
g = e.traceId, x({
|
|
538
638
|
traceId: e.traceId,
|
|
539
639
|
spanId: e.spanId,
|
|
@@ -545,15 +645,15 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
545
645
|
"voltro.mutationId": l,
|
|
546
646
|
"rpc.tag": t
|
|
547
647
|
} })), u = await r.runPromise(s);
|
|
548
|
-
y(u),
|
|
648
|
+
y(u), B(l, {
|
|
549
649
|
status: "success",
|
|
550
650
|
output: u
|
|
551
651
|
}), i.confirmByMutation(l), a?.onSuccess?.(u, n);
|
|
552
|
-
let f =
|
|
553
|
-
return f !== void 0 &&
|
|
652
|
+
let f = ke(a?.notify?.success, u, n);
|
|
653
|
+
return f !== void 0 && V?.success(f), u;
|
|
554
654
|
} catch (e) {
|
|
555
|
-
let n =
|
|
556
|
-
if (_(n),
|
|
655
|
+
let n = De(e, g);
|
|
656
|
+
if (_(n), B(l, {
|
|
557
657
|
status: "error",
|
|
558
658
|
error: n
|
|
559
659
|
}), i.revertByMutation(l), u.emit({
|
|
@@ -590,7 +690,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
590
690
|
g,
|
|
591
691
|
v
|
|
592
692
|
]);
|
|
593
|
-
},
|
|
693
|
+
}, Ne = (e, t) => {
|
|
594
694
|
if (t === void 0 || typeof e != "object" || !e) return e;
|
|
595
695
|
try {
|
|
596
696
|
Object.defineProperty(e, "__voltroTraceId", {
|
|
@@ -600,8 +700,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
600
700
|
});
|
|
601
701
|
} catch {}
|
|
602
702
|
return e;
|
|
603
|
-
},
|
|
604
|
-
let { runtime: r, client: i, descriptors: o, errorBus: c } =
|
|
703
|
+
}, Pe = (e, t, n) => typeof e == "function" ? e(t, n) : e, Fe = 0, Ie = () => `act_${++Fe}`, W = (e, t) => {
|
|
704
|
+
let { runtime: r, client: i, descriptors: o, errorBus: c } = N(e);
|
|
605
705
|
if (process.env.NODE_ENV !== "production") {
|
|
606
706
|
let n = o[t]?.kind;
|
|
607
707
|
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.`);
|
|
@@ -609,8 +709,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
609
709
|
let [l, u] = s(!1), [f, p] = s(void 0), [m, h] = s(void 0), g = n(async (n, a) => {
|
|
610
710
|
let o = a?.onError !== void 0 || a?.notify?.error !== void 0;
|
|
611
711
|
u(!0), p(void 0);
|
|
612
|
-
let s =
|
|
613
|
-
|
|
712
|
+
let s = Ie();
|
|
713
|
+
z({
|
|
614
714
|
id: s,
|
|
615
715
|
apiName: e,
|
|
616
716
|
tag: t,
|
|
@@ -618,7 +718,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
618
718
|
});
|
|
619
719
|
let l;
|
|
620
720
|
try {
|
|
621
|
-
let o =
|
|
721
|
+
let o = P(i, t), c = d.currentSpan.pipe(d.tap((e) => d.sync(() => {
|
|
622
722
|
l = e.traceId, x({
|
|
623
723
|
traceId: e.traceId,
|
|
624
724
|
spanId: e.spanId,
|
|
@@ -630,15 +730,15 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
630
730
|
"voltro.actionId": s,
|
|
631
731
|
"rpc.tag": t
|
|
632
732
|
} })), u = await r.runPromise(c);
|
|
633
|
-
h(u),
|
|
733
|
+
h(u), B(s, {
|
|
634
734
|
status: "success",
|
|
635
735
|
output: u
|
|
636
736
|
}), a?.onSuccess?.(u, n);
|
|
637
|
-
let f =
|
|
638
|
-
return f !== void 0 &&
|
|
737
|
+
let f = Pe(a?.notify?.success, u, n);
|
|
738
|
+
return f !== void 0 && H()?.success(f), u;
|
|
639
739
|
} catch (e) {
|
|
640
|
-
let r =
|
|
641
|
-
if (p(r),
|
|
740
|
+
let r = Ne(e, l);
|
|
741
|
+
if (p(r), B(s, {
|
|
642
742
|
status: "error",
|
|
643
743
|
error: r
|
|
644
744
|
}), c.emit({
|
|
@@ -648,8 +748,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
648
748
|
...l === void 0 ? {} : { traceId: l }
|
|
649
749
|
}), o) {
|
|
650
750
|
a?.onError?.(r, n);
|
|
651
|
-
let e =
|
|
652
|
-
e !== void 0 &&
|
|
751
|
+
let e = Pe(a?.notify?.error, r, n);
|
|
752
|
+
e !== void 0 && H()?.error(e);
|
|
653
753
|
return;
|
|
654
754
|
}
|
|
655
755
|
throw r;
|
|
@@ -674,7 +774,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
674
774
|
f,
|
|
675
775
|
m
|
|
676
776
|
]);
|
|
677
|
-
},
|
|
777
|
+
}, G = "storage.mintUploadTicket", Le = "storage.mintPresignedUpload", Re = "storage.finalizeUpload", ze = "storage.beginResumableUpload", Be = "storage.beginMultipartUpload", Ve = "storage.signMultipartPart", He = "storage.completeMultipartUpload", Ue = "storage.abortMultipartUpload", We = (e, t, n, r) => new Promise((i, a) => {
|
|
678
778
|
let o = new XMLHttpRequest();
|
|
679
779
|
if (o.open("PUT", e), o.upload.onprogress = (e) => {
|
|
680
780
|
e.lengthComputable && n(e.loaded / e.total);
|
|
@@ -688,7 +788,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
688
788
|
return;
|
|
689
789
|
}
|
|
690
790
|
r.addEventListener("abort", () => o.abort(), { once: !0 }), o.send(t);
|
|
691
|
-
}),
|
|
791
|
+
}), Ge = (e, t, n, r, i, a) => new Promise((o, s) => {
|
|
692
792
|
let c = new XMLHttpRequest();
|
|
693
793
|
if (c.open("POST", e), c.setRequestHeader("content-type", t), c.upload.onprogress = (e) => {
|
|
694
794
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -706,7 +806,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
706
806
|
return;
|
|
707
807
|
}
|
|
708
808
|
i.addEventListener("abort", () => c.abort(), { once: !0 }), c.send(n);
|
|
709
|
-
}),
|
|
809
|
+
}), Ke = (e, t, n, r, i) => new Promise((a, o) => {
|
|
710
810
|
let s = new XMLHttpRequest();
|
|
711
811
|
if (s.open("PUT", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
|
|
712
812
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -717,7 +817,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
717
817
|
return;
|
|
718
818
|
}
|
|
719
819
|
i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
|
|
720
|
-
}),
|
|
820
|
+
}), qe = (e, t, n, r, i) => new Promise((a, o) => {
|
|
721
821
|
let s = new XMLHttpRequest();
|
|
722
822
|
if (s.open("POST", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
|
|
723
823
|
e.lengthComputable && r(e.loaded / e.total);
|
|
@@ -733,8 +833,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
733
833
|
return;
|
|
734
834
|
}
|
|
735
835
|
i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
|
|
736
|
-
}),
|
|
737
|
-
let { runtime: r, client: i, inspectBaseUrl: c, errorBus: l } =
|
|
836
|
+
}), Je = (e, t = {}) => {
|
|
837
|
+
let { runtime: r, client: i, inspectBaseUrl: c, errorBus: l } = N(e), [u, d] = s(0), [f, p] = s("idle"), [m, h] = s(void 0), g = o(null), _ = n(() => {
|
|
738
838
|
d(0), p("idle"), h(void 0);
|
|
739
839
|
}, []), v = n(() => {
|
|
740
840
|
g.current?.abort();
|
|
@@ -754,16 +854,16 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
754
854
|
...e.width === void 0 ? {} : { width: e.width },
|
|
755
855
|
...e.height === void 0 ? {} : { height: e.height }
|
|
756
856
|
}), g = async () => {
|
|
757
|
-
let s = n.mintTag ?? t.mintTag ??
|
|
857
|
+
let s = n.mintTag ?? t.mintTag ?? G, l = P(i, s), u = await r.runPromise(l({
|
|
758
858
|
contentType: c,
|
|
759
859
|
...m,
|
|
760
860
|
...d ? { key: d } : {}
|
|
761
|
-
})), f = await
|
|
861
|
+
})), f = await qe(y(u.uploadUrl), c, e, o, a);
|
|
762
862
|
return h(f);
|
|
763
863
|
}, _ = async () => {
|
|
764
|
-
let s = n.presignMintTag ?? t.presignMintTag ??
|
|
864
|
+
let s = n.presignMintTag ?? t.presignMintTag ?? Le, l = n.finalizeTag ?? t.finalizeTag ?? Re, u;
|
|
765
865
|
try {
|
|
766
|
-
let e =
|
|
866
|
+
let e = P(i, s);
|
|
767
867
|
u = await r.runPromise(e({
|
|
768
868
|
contentType: c,
|
|
769
869
|
...m
|
|
@@ -771,11 +871,11 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
771
871
|
} catch {
|
|
772
872
|
return null;
|
|
773
873
|
}
|
|
774
|
-
await
|
|
775
|
-
let d =
|
|
874
|
+
await Ke(u.uploadUrl, c, e, o, a);
|
|
875
|
+
let d = P(i, l), f = await r.runPromise(d({ finalizeToken: u.finalizeToken }));
|
|
776
876
|
return h(f);
|
|
777
877
|
}, v = async () => {
|
|
778
|
-
let s = n.beginResumableTag ?? t.beginResumableTag ??
|
|
878
|
+
let s = n.beginResumableTag ?? t.beginResumableTag ?? ze, l = P(i, s), u = e.size, d = n.chunkSize ?? t.chunkSize, f = await r.runPromise(l({
|
|
779
879
|
contentType: c,
|
|
780
880
|
size: u,
|
|
781
881
|
...m,
|
|
@@ -786,7 +886,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
786
886
|
for (;;) {
|
|
787
887
|
if (a.aborted) throw new DOMException("upload aborted", "AbortError");
|
|
788
888
|
try {
|
|
789
|
-
let e = await
|
|
889
|
+
let e = await Ge(`${p}?${`token=${encodeURIComponent(f.resumableToken)}&index=${t}${s ? "&final=1" : ""}`}`, c, i, (e) => o((b + e * l) / u), a, s);
|
|
790
890
|
s && (x = e);
|
|
791
891
|
break;
|
|
792
892
|
} catch (e) {
|
|
@@ -798,9 +898,9 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
798
898
|
if (!x) throw Error("resumable upload produced no final reply");
|
|
799
899
|
return h(x);
|
|
800
900
|
}, b = async () => {
|
|
801
|
-
let s = n.multipartBeginTag ?? t.multipartBeginTag ??
|
|
901
|
+
let s = n.multipartBeginTag ?? t.multipartBeginTag ?? Be, u = n.multipartSignTag ?? t.multipartSignTag ?? Ve, d = n.multipartCompleteTag ?? t.multipartCompleteTag ?? He, f = n.multipartAbortTag ?? t.multipartAbortTag ?? Ue, p = e.size, h = n.chunkSize ?? t.chunkSize, g;
|
|
802
902
|
try {
|
|
803
|
-
let e =
|
|
903
|
+
let e = P(i, s);
|
|
804
904
|
g = await r.runPromise(e({
|
|
805
905
|
contentType: c,
|
|
806
906
|
size: p,
|
|
@@ -810,7 +910,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
810
910
|
} catch {
|
|
811
911
|
return null;
|
|
812
912
|
}
|
|
813
|
-
let _ =
|
|
913
|
+
let _ = P(i, u), v = P(i, d), b = P(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;
|
|
814
914
|
try {
|
|
815
915
|
for (let t = 0; t < S; t++) {
|
|
816
916
|
let n = t * x, i = Math.min(p, n + x), s = e.slice(n, i), c = t + 1, l = i - n, u = 0;
|
|
@@ -820,7 +920,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
820
920
|
let { url: e } = await r.runPromise(_({
|
|
821
921
|
multipartToken: g.multipartToken,
|
|
822
922
|
partNumber: c
|
|
823
|
-
})), t = await
|
|
923
|
+
})), t = await We(e, s, (e) => o((T + e * l) / p), a);
|
|
824
924
|
w.push({
|
|
825
925
|
partNumber: c,
|
|
826
926
|
etag: t
|
|
@@ -894,7 +994,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
894
994
|
} catch (e) {
|
|
895
995
|
throw p("error"), h(e), e instanceof DOMException && e.name === "AbortError" || l.emit({
|
|
896
996
|
source: "action",
|
|
897
|
-
tag: n.mintTag ?? t.mintTag ??
|
|
997
|
+
tag: n.mintTag ?? t.mintTag ?? G,
|
|
898
998
|
error: e
|
|
899
999
|
}), e;
|
|
900
1000
|
}
|
|
@@ -920,7 +1020,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
920
1020
|
} catch (e) {
|
|
921
1021
|
throw r.abort(), p("error"), h(e), e instanceof DOMException && e.name === "AbortError" || l.emit({
|
|
922
1022
|
source: "action",
|
|
923
|
-
tag: n.mintTag ?? t.mintTag ??
|
|
1023
|
+
tag: n.mintTag ?? t.mintTag ?? G,
|
|
924
1024
|
error: e
|
|
925
1025
|
}), e;
|
|
926
1026
|
}
|
|
@@ -965,8 +1065,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
965
1065
|
w,
|
|
966
1066
|
T
|
|
967
1067
|
]);
|
|
968
|
-
},
|
|
969
|
-
let t =
|
|
1068
|
+
}, K = async (e) => {
|
|
1069
|
+
let t = P(e.client, e.tag), n = d.currentSpan.pipe(d.tap((t) => d.sync(() => {
|
|
970
1070
|
x({
|
|
971
1071
|
traceId: t.traceId,
|
|
972
1072
|
spanId: t.spanId,
|
|
@@ -978,8 +1078,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
978
1078
|
"rpc.tag": e.tag
|
|
979
1079
|
} }));
|
|
980
1080
|
return e.runtime.runPromise(n);
|
|
981
|
-
},
|
|
982
|
-
let { runtime: r, client: i, descriptors: o } =
|
|
1081
|
+
}, Ye = (e, t) => {
|
|
1082
|
+
let { runtime: r, client: i, descriptors: o } = N(e);
|
|
983
1083
|
if (process.env.NODE_ENV !== "production") {
|
|
984
1084
|
let n = o[t]?.kind;
|
|
985
1085
|
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.`);
|
|
@@ -987,7 +1087,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
987
1087
|
let [c, l] = s(!1), [u, d] = s(void 0), [f, p] = s(void 0), m = n(async (n) => {
|
|
988
1088
|
l(!0), d(void 0);
|
|
989
1089
|
try {
|
|
990
|
-
let a = await
|
|
1090
|
+
let a = await K({
|
|
991
1091
|
apiName: e,
|
|
992
1092
|
runtime: r,
|
|
993
1093
|
client: i,
|
|
@@ -1007,7 +1107,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1007
1107
|
i,
|
|
1008
1108
|
t
|
|
1009
1109
|
]), h = n(async (t) => {
|
|
1010
|
-
await
|
|
1110
|
+
await K({
|
|
1011
1111
|
apiName: e,
|
|
1012
1112
|
runtime: r,
|
|
1013
1113
|
client: i,
|
|
@@ -1020,7 +1120,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1020
1120
|
r,
|
|
1021
1121
|
i
|
|
1022
1122
|
]), g = n(async (t) => {
|
|
1023
|
-
await
|
|
1123
|
+
await K({
|
|
1024
1124
|
apiName: e,
|
|
1025
1125
|
runtime: r,
|
|
1026
1126
|
client: i,
|
|
@@ -1032,7 +1132,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1032
1132
|
e,
|
|
1033
1133
|
r,
|
|
1034
1134
|
i
|
|
1035
|
-
]), _ = n(async (t, n, a) =>
|
|
1135
|
+
]), _ = n(async (t, n, a) => K({
|
|
1036
1136
|
apiName: e,
|
|
1037
1137
|
runtime: r,
|
|
1038
1138
|
client: i,
|
|
@@ -1047,7 +1147,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1047
1147
|
e,
|
|
1048
1148
|
r,
|
|
1049
1149
|
i
|
|
1050
|
-
]), v = n(async (t, n, a, o) =>
|
|
1150
|
+
]), v = n(async (t, n, a, o) => K({
|
|
1051
1151
|
apiName: e,
|
|
1052
1152
|
runtime: r,
|
|
1053
1153
|
client: i,
|
|
@@ -1083,11 +1183,11 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1083
1183
|
u,
|
|
1084
1184
|
f
|
|
1085
1185
|
]);
|
|
1086
|
-
},
|
|
1087
|
-
let { runtime: t, client: r } =
|
|
1186
|
+
}, Xe = (e) => {
|
|
1187
|
+
let { runtime: t, client: r } = N(e), [i, o] = s(!1), [c, l] = s(void 0), [u, d] = s(void 0), f = n(async (n, i, a) => {
|
|
1088
1188
|
o(!0), l(void 0);
|
|
1089
1189
|
try {
|
|
1090
|
-
let o = await
|
|
1190
|
+
let o = await K({
|
|
1091
1191
|
apiName: e,
|
|
1092
1192
|
runtime: t,
|
|
1093
1193
|
client: r,
|
|
@@ -1121,11 +1221,11 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1121
1221
|
c,
|
|
1122
1222
|
u
|
|
1123
1223
|
]);
|
|
1124
|
-
},
|
|
1125
|
-
let { runtime: t, client: r } =
|
|
1224
|
+
}, Ze = (e) => {
|
|
1225
|
+
let { runtime: t, client: r } = N(e), [i, o] = s(!1), [c, l] = s(void 0), [u, d] = s(void 0), f = n(async (n, i, a, s) => {
|
|
1126
1226
|
o(!0), l(void 0);
|
|
1127
1227
|
try {
|
|
1128
|
-
let o = await
|
|
1228
|
+
let o = await K({
|
|
1129
1229
|
apiName: e,
|
|
1130
1230
|
runtime: t,
|
|
1131
1231
|
client: r,
|
|
@@ -1160,96 +1260,96 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1160
1260
|
c,
|
|
1161
1261
|
u
|
|
1162
1262
|
]);
|
|
1163
|
-
},
|
|
1164
|
-
let n =
|
|
1165
|
-
return n.loading ? {
|
|
1263
|
+
}, Qe = (e, t) => {
|
|
1264
|
+
let n = F(e, "__voltro.workflow.run", t ? { id: t } : {}, { skip: t === void 0 });
|
|
1265
|
+
return n.loading || n.idle ? {
|
|
1166
1266
|
...n,
|
|
1167
1267
|
run: void 0
|
|
1168
1268
|
} : {
|
|
1169
1269
|
...n,
|
|
1170
1270
|
run: n.data[0]
|
|
1171
1271
|
};
|
|
1172
|
-
},
|
|
1173
|
-
let r =
|
|
1174
|
-
return r.loading ? {
|
|
1272
|
+
}, $e = (e, t = {}, n = {}) => {
|
|
1273
|
+
let r = F(e, "__voltro.workflow.runs", t, n);
|
|
1274
|
+
return r.loading || r.idle ? {
|
|
1175
1275
|
...r,
|
|
1176
1276
|
runs: []
|
|
1177
1277
|
} : {
|
|
1178
1278
|
...r,
|
|
1179
1279
|
runs: r.data
|
|
1180
1280
|
};
|
|
1181
|
-
},
|
|
1182
|
-
let n =
|
|
1183
|
-
return n.loading ? {
|
|
1281
|
+
}, et = (e, t) => {
|
|
1282
|
+
let n = F(e, "__voltro.workflow.run.steps", t ? { runId: t } : {}, { skip: t === void 0 });
|
|
1283
|
+
return n.loading || n.idle ? {
|
|
1184
1284
|
...n,
|
|
1185
1285
|
steps: []
|
|
1186
1286
|
} : {
|
|
1187
1287
|
...n,
|
|
1188
1288
|
steps: n.data
|
|
1189
1289
|
};
|
|
1190
|
-
},
|
|
1191
|
-
let n =
|
|
1192
|
-
return n.loading ? {
|
|
1290
|
+
}, q = (e, t) => {
|
|
1291
|
+
let n = F(e, "__voltro.workflow.run.events", t ? { runId: t } : {}, { skip: t === void 0 });
|
|
1292
|
+
return n.loading || n.idle ? {
|
|
1193
1293
|
...n,
|
|
1194
1294
|
events: []
|
|
1195
1295
|
} : {
|
|
1196
1296
|
...n,
|
|
1197
1297
|
events: n.data
|
|
1198
1298
|
};
|
|
1199
|
-
},
|
|
1200
|
-
let r =
|
|
1201
|
-
return r.loading ? {
|
|
1299
|
+
}, tt = q, nt = (e, t = {}, n = {}) => {
|
|
1300
|
+
let r = F(e, "__voltro.workflow.domainEvents", t, n);
|
|
1301
|
+
return r.loading || r.idle ? {
|
|
1202
1302
|
...r,
|
|
1203
1303
|
events: []
|
|
1204
1304
|
} : {
|
|
1205
1305
|
...r,
|
|
1206
1306
|
events: r.data
|
|
1207
1307
|
};
|
|
1208
|
-
},
|
|
1209
|
-
let n =
|
|
1210
|
-
return n.loading ? {
|
|
1308
|
+
}, rt = (e, t) => {
|
|
1309
|
+
let n = F(e, "__voltro.workflow.event.deliveries", t ? { eventId: t } : {}, { skip: t === void 0 });
|
|
1310
|
+
return n.loading || n.idle ? {
|
|
1211
1311
|
...n,
|
|
1212
1312
|
deliveries: []
|
|
1213
1313
|
} : {
|
|
1214
1314
|
...n,
|
|
1215
1315
|
deliveries: n.data
|
|
1216
1316
|
};
|
|
1217
|
-
},
|
|
1317
|
+
}, J = (e, t) => {
|
|
1218
1318
|
let n = e.payload;
|
|
1219
1319
|
if (!n || typeof n != "object") return;
|
|
1220
1320
|
let r = n[t];
|
|
1221
1321
|
return typeof r == "string" ? r : void 0;
|
|
1222
|
-
},
|
|
1322
|
+
}, it = (e) => {
|
|
1223
1323
|
let t = e.payload;
|
|
1224
1324
|
if (!t || typeof t != "object") return;
|
|
1225
1325
|
let n = t.updateId;
|
|
1226
1326
|
return typeof n == "string" ? n : void 0;
|
|
1227
|
-
},
|
|
1327
|
+
}, at = (e) => {
|
|
1228
1328
|
let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set();
|
|
1229
1329
|
for (let r of e) if (r.eventType === "signal-received") {
|
|
1230
|
-
let e =
|
|
1330
|
+
let e = J(r, "signalName");
|
|
1231
1331
|
e && t.add(e);
|
|
1232
1332
|
} else if (r.eventType === "update-completed" || r.eventType === "update-failed") {
|
|
1233
|
-
let e =
|
|
1333
|
+
let e = it(r);
|
|
1234
1334
|
e && n.add(e);
|
|
1235
1335
|
}
|
|
1236
1336
|
for (let r = e.length - 1; r >= 0; --r) {
|
|
1237
1337
|
let i = e[r];
|
|
1238
1338
|
if (i.eventType === "signal-awaited") {
|
|
1239
|
-
let e =
|
|
1339
|
+
let e = J(i, "signalName");
|
|
1240
1340
|
if (e && !t.has(e)) return {
|
|
1241
1341
|
name: e,
|
|
1242
1342
|
kind: "signal"
|
|
1243
1343
|
};
|
|
1244
1344
|
} else if (i.eventType === "update-requested") {
|
|
1245
|
-
let e =
|
|
1345
|
+
let e = it(i), t = J(i, "updateName");
|
|
1246
1346
|
if (t && (!e || !n.has(e))) return {
|
|
1247
1347
|
name: t,
|
|
1248
1348
|
kind: "update"
|
|
1249
1349
|
};
|
|
1250
1350
|
}
|
|
1251
1351
|
}
|
|
1252
|
-
},
|
|
1352
|
+
}, ot = (e) => e.find((e) => e.status === "running") || (e.length > 0 ? e[e.length - 1] : void 0), st = (e, t) => {
|
|
1253
1353
|
if (!e || e.status !== "failed") return;
|
|
1254
1354
|
let n = t.find((e) => e.status === "failed");
|
|
1255
1355
|
return {
|
|
@@ -1257,8 +1357,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1257
1357
|
message: e.errorMessage,
|
|
1258
1358
|
step: n?.stepName
|
|
1259
1359
|
};
|
|
1260
|
-
},
|
|
1261
|
-
let r =
|
|
1360
|
+
}, ct = (e, t) => {
|
|
1361
|
+
let r = Qe(e, t), i = et(e, t), o = q(e, t), s = Ye(e, r.run?.tag ?? ""), c = r.run, l = i.steps, u = o.events, d = n(async () => {
|
|
1262
1362
|
if (!c) throw Error("useWorkflowRunState: no run loaded — cannot cancel");
|
|
1263
1363
|
await s.cancel({
|
|
1264
1364
|
workflowName: c.tag,
|
|
@@ -1282,9 +1382,9 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1282
1382
|
status: c?.status,
|
|
1283
1383
|
steps: l,
|
|
1284
1384
|
events: u,
|
|
1285
|
-
currentStep:
|
|
1286
|
-
waitingFor: c?.status === "suspended" ?
|
|
1287
|
-
error:
|
|
1385
|
+
currentStep: ot(l),
|
|
1386
|
+
waitingFor: c?.status === "suspended" ? at(u) : void 0,
|
|
1387
|
+
error: st(c, l),
|
|
1288
1388
|
traceId: c?.traceId,
|
|
1289
1389
|
loading: r.data === void 0,
|
|
1290
1390
|
cancel: d,
|
|
@@ -1301,8 +1401,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1301
1401
|
p,
|
|
1302
1402
|
m
|
|
1303
1403
|
]);
|
|
1304
|
-
},
|
|
1305
|
-
let { runtime: r, client: i } =
|
|
1404
|
+
}, lt = (e, t) => {
|
|
1405
|
+
let { runtime: r, client: i } = N(e), [a, c] = s([]), [u, f] = s("idle"), [m, h] = s(void 0), _ = o(null), v = n(() => {
|
|
1306
1406
|
let e = _.current;
|
|
1307
1407
|
e && (_.current = null, r.runFork(p.interrupt(e)), f((e) => e === "streaming" ? "idle" : e));
|
|
1308
1408
|
}, [r]);
|
|
@@ -1313,7 +1413,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1313
1413
|
start: n((e = {}) => {
|
|
1314
1414
|
let n = _.current;
|
|
1315
1415
|
n && r.runFork(p.interrupt(n)), c([]), h(void 0), f("streaming");
|
|
1316
|
-
let a =
|
|
1416
|
+
let a = P(i, t)(e), o = g.runForEach(a, (e) => d.sync(() => c((t) => [...t, e]))).pipe(d.matchCause({
|
|
1317
1417
|
onSuccess: () => {
|
|
1318
1418
|
f("done");
|
|
1319
1419
|
},
|
|
@@ -1329,7 +1429,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1329
1429
|
]),
|
|
1330
1430
|
cancel: v
|
|
1331
1431
|
};
|
|
1332
|
-
},
|
|
1432
|
+
}, ut = (e, t, n, r) => {
|
|
1333
1433
|
let i = 0, a = !1, o = (e) => d.sync(() => {
|
|
1334
1434
|
e.seq <= i || (i = e.seq, n.onEvent(e.event), r.isTerminal(e.event) && (a = !0));
|
|
1335
1435
|
}), s = (e, t, a) => {
|
|
@@ -1352,15 +1452,15 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1352
1452
|
}));
|
|
1353
1453
|
});
|
|
1354
1454
|
return c(0);
|
|
1355
|
-
},
|
|
1455
|
+
}, dt = (e) => {
|
|
1356
1456
|
let t = e?._tag;
|
|
1357
1457
|
return t === "done" || t === "error";
|
|
1358
|
-
},
|
|
1359
|
-
let { runtime: i, client: a } =
|
|
1458
|
+
}, ft = (e, t, r = {}) => {
|
|
1459
|
+
let { runtime: i, client: a } = N(e), [c, l] = s([]), [u, d] = s("idle"), [f, m] = s(0), [h, g] = s(void 0), _ = o(null), v = {
|
|
1360
1460
|
maxReconnects: r.maxReconnects ?? 6,
|
|
1361
1461
|
backoffMs: r.backoffMs ?? 400,
|
|
1362
1462
|
maxBackoffMs: r.maxBackoffMs ?? 8e3,
|
|
1363
|
-
isTerminal: r.isTerminal ??
|
|
1463
|
+
isTerminal: r.isTerminal ?? dt
|
|
1364
1464
|
}, y = n(() => {
|
|
1365
1465
|
let e = _.current;
|
|
1366
1466
|
e && (_.current = null, i.runFork(p.interrupt(e)), d((e) => e === "streaming" || e === "reconnecting" ? "idle" : e));
|
|
@@ -1373,13 +1473,13 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1373
1473
|
start: n((e = {}) => {
|
|
1374
1474
|
let n = _.current;
|
|
1375
1475
|
n && i.runFork(p.interrupt(n)), l([]), g(void 0), m(0), d("streaming");
|
|
1376
|
-
let r =
|
|
1476
|
+
let r = P(a, t), o = {
|
|
1377
1477
|
onEvent: (e) => l((t) => [...t, e]),
|
|
1378
1478
|
onStatus: d,
|
|
1379
1479
|
onReconnect: () => m((e) => e + 1),
|
|
1380
1480
|
onError: g
|
|
1381
1481
|
};
|
|
1382
|
-
_.current = i.runFork(
|
|
1482
|
+
_.current = i.runFork(ut(r, e, o, v));
|
|
1383
1483
|
}, [
|
|
1384
1484
|
i,
|
|
1385
1485
|
a,
|
|
@@ -1391,13 +1491,13 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1391
1491
|
]),
|
|
1392
1492
|
cancel: y
|
|
1393
1493
|
};
|
|
1394
|
-
},
|
|
1494
|
+
}, pt = (e, t) => e.order - t.order || (e.stepOrder ?? 0) - (t.stepOrder ?? 0), mt = (e) => {
|
|
1395
1495
|
for (let t = e.length - 1; t >= 0; --t) {
|
|
1396
1496
|
let n = e[t];
|
|
1397
1497
|
if (n.role === "user" && n.content) return n.content;
|
|
1398
1498
|
}
|
|
1399
|
-
},
|
|
1400
|
-
let { threadId: i } = r, o =
|
|
1499
|
+
}, ht = (e, t, r) => {
|
|
1500
|
+
let { threadId: i } = r, o = F(e, `${t}.messages`, { threadId: i }), s = W(e, `${t}.send`), c = a(() => [...o.data ?? []].sort(pt), [o.data]), l = n((e, t = {}) => s.run({
|
|
1401
1501
|
threadId: i,
|
|
1402
1502
|
order: o.data?.length ?? 0,
|
|
1403
1503
|
prompt: e,
|
|
@@ -1407,7 +1507,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1407
1507
|
i,
|
|
1408
1508
|
o.data
|
|
1409
1509
|
]), u = n(() => {
|
|
1410
|
-
let e =
|
|
1510
|
+
let e = mt(c);
|
|
1411
1511
|
return e === void 0 ? void 0 : l(e);
|
|
1412
1512
|
}, [c, l]);
|
|
1413
1513
|
return a(() => ({
|
|
@@ -1427,8 +1527,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1427
1527
|
l,
|
|
1428
1528
|
u
|
|
1429
1529
|
]);
|
|
1430
|
-
},
|
|
1431
|
-
let { events: r, status: c, error: l, start: u, cancel: d } =
|
|
1530
|
+
}, gt = (e, t) => {
|
|
1531
|
+
let { events: r, status: c, error: l, start: u, cancel: d } = lt(e, t), [f, p] = s([]), m = o(null), h = a(() => r.filter((e) => e._tag === "token").map((e) => e.text ?? "").join(""), [r]);
|
|
1432
1532
|
return i(() => {
|
|
1433
1533
|
if (c !== "done" || m.current === null) return;
|
|
1434
1534
|
let e = m.current;
|
|
@@ -1454,8 +1554,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1454
1554
|
}, [u]),
|
|
1455
1555
|
cancel: d
|
|
1456
1556
|
};
|
|
1457
|
-
},
|
|
1458
|
-
let r =
|
|
1557
|
+
}, _t = (e, t) => {
|
|
1558
|
+
let r = W(e, t), [i, o] = s(void 0), c = n(async (e) => {
|
|
1459
1559
|
let t = await r.run({ question: e });
|
|
1460
1560
|
return o(t), t;
|
|
1461
1561
|
}, [r]), l = n(() => o(void 0), []);
|
|
@@ -1472,43 +1572,43 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1472
1572
|
r.error,
|
|
1473
1573
|
l
|
|
1474
1574
|
]);
|
|
1475
|
-
},
|
|
1476
|
-
let { cache: t, runtime: r } =
|
|
1575
|
+
}, vt = (e) => {
|
|
1576
|
+
let { cache: t, runtime: r } = N(e);
|
|
1477
1577
|
return n(() => {
|
|
1478
1578
|
t.refreshAll(r);
|
|
1479
1579
|
}, [t, r]);
|
|
1480
|
-
},
|
|
1481
|
-
for (let t of
|
|
1580
|
+
}, Y = /* @__PURE__ */ new Set(), yt = (e) => {
|
|
1581
|
+
for (let t of Y) try {
|
|
1482
1582
|
t(e);
|
|
1483
1583
|
} catch {}
|
|
1484
|
-
},
|
|
1485
|
-
|
|
1486
|
-
}),
|
|
1487
|
-
|
|
1584
|
+
}, bt = (e) => (Y.add(e), () => {
|
|
1585
|
+
Y.delete(e);
|
|
1586
|
+
}), xt = (e, t) => {
|
|
1587
|
+
yt({
|
|
1488
1588
|
error: e,
|
|
1489
1589
|
source: "manual",
|
|
1490
1590
|
...t ? { context: t } : {}
|
|
1491
1591
|
});
|
|
1492
|
-
},
|
|
1493
|
-
let { errorBus: n } =
|
|
1592
|
+
}, St = (e, t) => {
|
|
1593
|
+
let { errorBus: n } = N(e);
|
|
1494
1594
|
i(() => n.on(t), [n, t]);
|
|
1495
|
-
},
|
|
1595
|
+
}, Ct = "#/$defs/", wt = (e) => e.replace(/[_-]+/g, " ").replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/\s+/g, " ").trim().replace(/^./, (e) => e.toUpperCase()), X = (e, t) => {
|
|
1496
1596
|
let n = e;
|
|
1497
1597
|
for (let e = 0; e < 8; e += 1) {
|
|
1498
1598
|
let e = n.$ref;
|
|
1499
|
-
if (typeof e != "string" || !e.startsWith(
|
|
1599
|
+
if (typeof e != "string" || !e.startsWith(Ct)) return n;
|
|
1500
1600
|
let r = t[e.slice(8)];
|
|
1501
1601
|
if (!r || typeof r != "object") return n;
|
|
1502
1602
|
n = r;
|
|
1503
1603
|
}
|
|
1504
1604
|
return n;
|
|
1505
|
-
},
|
|
1605
|
+
}, Tt = (e) => {
|
|
1506
1606
|
if (!e || typeof e != "object") return !1;
|
|
1507
1607
|
let t = e;
|
|
1508
1608
|
if (t.type === "null" || t.const === null) return !0;
|
|
1509
1609
|
let n = t.enum;
|
|
1510
1610
|
return Array.isArray(n) && n.length === 1 && n[0] === null;
|
|
1511
|
-
},
|
|
1611
|
+
}, Et = (e, t) => {
|
|
1512
1612
|
let n = e.type;
|
|
1513
1613
|
if (Array.isArray(n) && n.includes("null")) {
|
|
1514
1614
|
let t = n.filter((e) => e !== "null");
|
|
@@ -1523,9 +1623,9 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1523
1623
|
for (let n of ["anyOf", "oneOf"]) {
|
|
1524
1624
|
let r = e[n];
|
|
1525
1625
|
if (!Array.isArray(r)) continue;
|
|
1526
|
-
let i = r.filter((e) => !
|
|
1626
|
+
let i = r.filter((e) => !Tt(e));
|
|
1527
1627
|
if (i.length !== r.length) return i.length === 1 ? {
|
|
1528
|
-
node:
|
|
1628
|
+
node: X(i[0], t),
|
|
1529
1629
|
nullable: !0
|
|
1530
1630
|
} : {
|
|
1531
1631
|
node: {
|
|
@@ -1539,14 +1639,14 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1539
1639
|
node: e,
|
|
1540
1640
|
nullable: !1
|
|
1541
1641
|
};
|
|
1542
|
-
},
|
|
1642
|
+
}, Dt = (e) => e.map((e) => ({
|
|
1543
1643
|
value: String(e),
|
|
1544
|
-
label:
|
|
1545
|
-
})),
|
|
1644
|
+
label: wt(String(e))
|
|
1645
|
+
})), Ot = (e) => {
|
|
1546
1646
|
let t = e.enum;
|
|
1547
1647
|
if (Array.isArray(t) && t.length > 0) return {
|
|
1548
1648
|
widget: "select",
|
|
1549
|
-
options:
|
|
1649
|
+
options: Dt(t)
|
|
1550
1650
|
};
|
|
1551
1651
|
let n = e.type, r = Array.isArray(n) ? n.find((e) => e !== "null") : n, i = e.format;
|
|
1552
1652
|
switch (r) {
|
|
@@ -1557,38 +1657,38 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1557
1657
|
case "array": return { widget: "multi-select" };
|
|
1558
1658
|
default: return { widget: "custom" };
|
|
1559
1659
|
}
|
|
1560
|
-
},
|
|
1561
|
-
let { node: i, nullable: a } =
|
|
1660
|
+
}, kt = (e, t, n) => Object.entries(e).map(([e, r]) => {
|
|
1661
|
+
let { node: i, nullable: a } = Et(X(r, n), n), o = X(i, n), { widget: s, options: c } = Ot(o);
|
|
1562
1662
|
return {
|
|
1563
1663
|
name: e,
|
|
1564
|
-
label:
|
|
1664
|
+
label: wt(e),
|
|
1565
1665
|
widget: s,
|
|
1566
1666
|
required: t.has(e),
|
|
1567
1667
|
nullable: a,
|
|
1568
1668
|
...c ? { options: c } : {},
|
|
1569
1669
|
jsonSchema: o
|
|
1570
1670
|
};
|
|
1571
|
-
}),
|
|
1671
|
+
}), At = (e) => {
|
|
1572
1672
|
try {
|
|
1573
1673
|
return m.make(e);
|
|
1574
1674
|
} catch {
|
|
1575
1675
|
return;
|
|
1576
1676
|
}
|
|
1577
|
-
},
|
|
1578
|
-
let t =
|
|
1677
|
+
}, Z = (e) => {
|
|
1678
|
+
let t = At(e);
|
|
1579
1679
|
if (t === void 0) return [];
|
|
1580
|
-
let n = t.$defs ?? {}, r =
|
|
1581
|
-
return i ?
|
|
1582
|
-
},
|
|
1583
|
-
let t =
|
|
1680
|
+
let n = t.$defs ?? {}, r = X(t, n), i = r.properties;
|
|
1681
|
+
return i ? kt(i, new Set(Array.isArray(r.required) ? r.required : []), n) : [];
|
|
1682
|
+
}, Q = (e) => {
|
|
1683
|
+
let t = At(e);
|
|
1584
1684
|
if (t === void 0) return [];
|
|
1585
|
-
let n = t.$defs ?? {}, r =
|
|
1685
|
+
let n = t.$defs ?? {}, r = X(t, n);
|
|
1586
1686
|
if (r.type !== "array") return [];
|
|
1587
1687
|
let i = r.items;
|
|
1588
1688
|
if (!i || typeof i != "object") return [];
|
|
1589
|
-
let a =
|
|
1590
|
-
return o ?
|
|
1591
|
-
},
|
|
1689
|
+
let a = X(i, n), o = a.properties;
|
|
1690
|
+
return o ? kt(o, new Set(Array.isArray(a.required) ? a.required : []), n) : [];
|
|
1691
|
+
}, jt = (e, t) => {
|
|
1592
1692
|
let n = h.decodeUnknownEither(e, { errors: "all" })(t);
|
|
1593
1693
|
if (n._tag === "Right") return {
|
|
1594
1694
|
valid: !0,
|
|
@@ -1603,10 +1703,10 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1603
1703
|
valid: !1,
|
|
1604
1704
|
errors: r
|
|
1605
1705
|
};
|
|
1606
|
-
},
|
|
1607
|
-
let i =
|
|
1706
|
+
}, Mt = (e, t, r) => {
|
|
1707
|
+
let i = N(e), c = U(e, t), l = r.schema ?? i.descriptors[t]?.input;
|
|
1608
1708
|
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.`);
|
|
1609
|
-
let u = a(() => l ?
|
|
1709
|
+
let u = a(() => l ? Z(l) : [], [l]), d = o(r.defaults ?? {}), [f, p] = s(d.current), [m, h] = s({}), g = n((e, t) => {
|
|
1610
1710
|
p((n) => ({
|
|
1611
1711
|
...n,
|
|
1612
1712
|
[e]: t
|
|
@@ -1620,7 +1720,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1620
1720
|
p(d.current), h({});
|
|
1621
1721
|
}, []), y = n(async () => {
|
|
1622
1722
|
if (l !== void 0) {
|
|
1623
|
-
let e =
|
|
1723
|
+
let e = jt(l, f);
|
|
1624
1724
|
if (h(e.errors), !e.valid) return;
|
|
1625
1725
|
}
|
|
1626
1726
|
return c.mutate(f);
|
|
@@ -1633,7 +1733,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1633
1733
|
fields: u,
|
|
1634
1734
|
values: f,
|
|
1635
1735
|
errors: m,
|
|
1636
|
-
isValid: a(() => l === void 0 ||
|
|
1736
|
+
isValid: a(() => l === void 0 || jt(l, f).valid, [l, f]),
|
|
1637
1737
|
pending: c.pending,
|
|
1638
1738
|
submitError: c.error,
|
|
1639
1739
|
data: c.data,
|
|
@@ -1642,13 +1742,13 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1642
1742
|
reset: v,
|
|
1643
1743
|
submit: y
|
|
1644
1744
|
};
|
|
1645
|
-
},
|
|
1745
|
+
}, Nt = (e, t, n) => e.map((e) => {
|
|
1646
1746
|
let r = String(e[n] ?? ""), i = e[t];
|
|
1647
1747
|
return {
|
|
1648
1748
|
value: r,
|
|
1649
1749
|
label: i == null ? r : String(i)
|
|
1650
1750
|
};
|
|
1651
|
-
}),
|
|
1751
|
+
}), Pt = (e, t, r = {}) => {
|
|
1652
1752
|
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);
|
|
1653
1753
|
i(() => {
|
|
1654
1754
|
if (d === p) return;
|
|
@@ -1659,7 +1759,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1659
1759
|
p,
|
|
1660
1760
|
o
|
|
1661
1761
|
]);
|
|
1662
|
-
let h = r.skipUntilTerm === !0 && p.trim() === "", g =
|
|
1762
|
+
let h = r.skipUntilTerm === !0 && p.trim() === "", g = F(e, t, a(() => u(p), [u, p]), { skip: h }), _ = a(() => Nt(g.data ?? [], c, l), [
|
|
1663
1763
|
g.data,
|
|
1664
1764
|
c,
|
|
1665
1765
|
l
|
|
@@ -1670,13 +1770,13 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1670
1770
|
term: d,
|
|
1671
1771
|
search: v
|
|
1672
1772
|
};
|
|
1673
|
-
},
|
|
1674
|
-
let i =
|
|
1773
|
+
}, Ft = (e, t) => e === t ? 0 : e == null ? 1 : t == null || e < t ? -1 : 1, It = (e, t, r = {}) => {
|
|
1774
|
+
let i = N(e), [o, c] = s(r.pageSize), l = F(e, t, a(() => o === void 0 ? r.input ?? {} : {
|
|
1675
1775
|
...r.input,
|
|
1676
1776
|
limit: o
|
|
1677
1777
|
}, [r.input, o])), u = i.descriptors[t]?.output, d = n(() => {
|
|
1678
1778
|
r.pageSize !== void 0 && c((e) => (e ?? r.pageSize) + r.pageSize);
|
|
1679
|
-
}, [r.pageSize]), f = a(() => r.columns ?? (u === void 0 ? [] :
|
|
1779
|
+
}, [r.pageSize]), f = a(() => r.columns ?? (u === void 0 ? [] : Q(u)), [r.columns, u]), [p, m] = s(r.initialSort), h = n((e) => {
|
|
1680
1780
|
m((t) => t?.column === e ? {
|
|
1681
1781
|
column: e,
|
|
1682
1782
|
direction: t.direction === "asc" ? "desc" : "asc"
|
|
@@ -1691,7 +1791,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1691
1791
|
let e = l.data ?? [];
|
|
1692
1792
|
if (p === void 0) return e;
|
|
1693
1793
|
let t = p.direction === "asc" ? 1 : -1;
|
|
1694
|
-
return [...e].sort((e, n) =>
|
|
1794
|
+
return [...e].sort((e, n) => Ft(e[p.column], n[p.column]) * t);
|
|
1695
1795
|
}, [l.data, p]),
|
|
1696
1796
|
loading: l.data === void 0,
|
|
1697
1797
|
error: l.error,
|
|
@@ -1700,14 +1800,14 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1700
1800
|
loadMore: d,
|
|
1701
1801
|
hasMore: o !== void 0 && (l.data?.length ?? 0) >= o
|
|
1702
1802
|
};
|
|
1703
|
-
},
|
|
1803
|
+
}, Lt = (e, t, n, r) => {
|
|
1704
1804
|
let i = e.replace(/\/$/, ""), a = new URLSearchParams({
|
|
1705
1805
|
table: t,
|
|
1706
1806
|
id: n
|
|
1707
1807
|
});
|
|
1708
1808
|
return r !== void 0 && a.set("column", r), `${i}/_voltro/inspect/provenance?${a.toString()}`;
|
|
1709
|
-
},
|
|
1710
|
-
let { inspectBaseUrl: a } =
|
|
1809
|
+
}, Rt = Lt, zt = (e, t, n, r) => {
|
|
1810
|
+
let { inspectBaseUrl: a } = N(e), [o, c] = s({
|
|
1711
1811
|
data: void 0,
|
|
1712
1812
|
loading: !0,
|
|
1713
1813
|
error: void 0
|
|
@@ -1719,7 +1819,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1719
1819
|
loading: !0,
|
|
1720
1820
|
error: void 0
|
|
1721
1821
|
});
|
|
1722
|
-
let i =
|
|
1822
|
+
let i = Lt(a ?? "", t, n, r);
|
|
1723
1823
|
return fetch(i).then(async (e) => {
|
|
1724
1824
|
if (!e.ok) throw Error(`provenance fetch failed: HTTP ${e.status}`);
|
|
1725
1825
|
return await e.json();
|
|
@@ -1745,8 +1845,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1745
1845
|
n,
|
|
1746
1846
|
r
|
|
1747
1847
|
]), o;
|
|
1748
|
-
},
|
|
1749
|
-
let { inspectBaseUrl: t } =
|
|
1848
|
+
}, Bt = (e) => `${e.replace(/\/$/, "")}/_voltro/inspect/manifest`, Vt = (e) => {
|
|
1849
|
+
let { inspectBaseUrl: t } = N(e), [n, r] = s({
|
|
1750
1850
|
manifest: void 0,
|
|
1751
1851
|
loading: !0,
|
|
1752
1852
|
error: void 0
|
|
@@ -1757,7 +1857,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1757
1857
|
manifest: void 0,
|
|
1758
1858
|
loading: !0,
|
|
1759
1859
|
error: void 0
|
|
1760
|
-
}), fetch(
|
|
1860
|
+
}), fetch(Bt(t ?? "")).then(async (e) => {
|
|
1761
1861
|
if (!e.ok) throw Error(`manifest fetch failed: HTTP ${e.status}`);
|
|
1762
1862
|
return await e.json();
|
|
1763
1863
|
}).then((t) => {
|
|
@@ -1776,8 +1876,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1776
1876
|
e = !0;
|
|
1777
1877
|
};
|
|
1778
1878
|
}, [e, t]), n;
|
|
1779
|
-
},
|
|
1780
|
-
let n = e.procedures.find((e) => e.kind === "query" &&
|
|
1879
|
+
}, Ht = (e, t) => Array.isArray(e) ? e.includes(t) : e === t, Ut = (e, t, n) => e.targets?.some((e) => e.table === t && e.op === n) ?? !1, Wt = (e) => e.tables.filter((e) => !e.framework).map((t) => {
|
|
1880
|
+
let n = e.procedures.find((e) => e.kind === "query" && Ht(e.source, t.name)), r = e.procedures.find((e) => e.kind === "mutation" && Ut(e, t.name, "insert")), i = e.procedures.find((e) => e.kind === "mutation" && Ut(e, t.name, "update")), a = e.procedures.find((e) => e.kind === "mutation" && Ut(e, t.name, "delete"));
|
|
1781
1881
|
return {
|
|
1782
1882
|
table: t.name,
|
|
1783
1883
|
columns: t.columns,
|
|
@@ -1790,7 +1890,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1790
1890
|
writeScope: `${t.name}:write`,
|
|
1791
1891
|
deleteScope: `${t.name}:delete`
|
|
1792
1892
|
};
|
|
1793
|
-
}),
|
|
1893
|
+
}), Gt = (e) => {
|
|
1794
1894
|
let [t, r] = s([]), [i, o] = s([]), c = n((e) => {
|
|
1795
1895
|
r((t) => [...t, e]), o([]);
|
|
1796
1896
|
}, []), l = n(async () => {
|
|
@@ -1818,8 +1918,8 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1818
1918
|
l,
|
|
1819
1919
|
u
|
|
1820
1920
|
]);
|
|
1821
|
-
},
|
|
1822
|
-
let r = t?.limit, { data: i } =
|
|
1921
|
+
}, Kt = "__voltro.undo.log", qt = "__voltro.undo.apply", Jt = "__voltro.undo.redo", Yt = (e, t) => {
|
|
1922
|
+
let r = t?.limit, { data: i } = F(e, Kt, r === void 0 ? {} : { limit: r }), a = U(e, qt), o = U(e, Jt), s = i ?? [], c = s.find((e) => !e.undone && !e.crossesAction), l = s.find((e) => e.undone), u = n(async (e) => {
|
|
1823
1923
|
await a.mutate({ invocationId: e });
|
|
1824
1924
|
}, [a]), d = n(async (e) => {
|
|
1825
1925
|
await o.mutate({ invocationId: e });
|
|
@@ -1838,13 +1938,13 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1838
1938
|
undoLast: f,
|
|
1839
1939
|
redoLast: p
|
|
1840
1940
|
};
|
|
1841
|
-
},
|
|
1941
|
+
}, Xt = (e, t) => ({
|
|
1842
1942
|
name: e,
|
|
1843
1943
|
map: t
|
|
1844
|
-
}), $ = (e, t) => e === void 0 ? null : typeof e == "string" ? { event: e } : e(t),
|
|
1944
|
+
}), $ = (e, t) => e === void 0 ? null : typeof e == "string" ? { event: e } : e(t), Zt = /* @__PURE__ */ new Set(["onMount", "onUnmount"]), Qt = (e, t, n) => {
|
|
1845
1945
|
let r = { ...t };
|
|
1846
1946
|
for (let [i, a] of Object.entries(e.map)) {
|
|
1847
|
-
if (
|
|
1947
|
+
if (Zt.has(i) || a === void 0) continue;
|
|
1848
1948
|
let e = t[i];
|
|
1849
1949
|
r[i] = (...r) => {
|
|
1850
1950
|
let i = $(a, t);
|
|
@@ -1852,7 +1952,7 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1852
1952
|
};
|
|
1853
1953
|
}
|
|
1854
1954
|
return r;
|
|
1855
|
-
},
|
|
1955
|
+
}, $t = (e, t, n) => {
|
|
1856
1956
|
let r = o({
|
|
1857
1957
|
spec: e,
|
|
1858
1958
|
props: t,
|
|
@@ -1868,45 +1968,45 @@ var _e = 100, L = [], R = /* @__PURE__ */ new Set(), ve = [], ye = () => {
|
|
|
1868
1968
|
let e = r.current, t = $(e.spec.map.onUnmount, e.props);
|
|
1869
1969
|
t !== null && e.sink(t);
|
|
1870
1970
|
};
|
|
1871
|
-
}, []), a(() =>
|
|
1971
|
+
}, []), a(() => Qt(e, t, n), [
|
|
1872
1972
|
e,
|
|
1873
1973
|
t,
|
|
1874
1974
|
n
|
|
1875
1975
|
]);
|
|
1876
|
-
},
|
|
1877
|
-
let n =
|
|
1976
|
+
}, en = (e, t) => {
|
|
1977
|
+
let n = N(e).descriptors[t]?.input;
|
|
1978
|
+
return a(() => n === void 0 ? [] : Z(n), [n]);
|
|
1979
|
+
}, tn = (e, t) => {
|
|
1980
|
+
let n = N(e).descriptors[t]?.output;
|
|
1878
1981
|
return a(() => n === void 0 ? [] : Q(n), [n]);
|
|
1879
|
-
},
|
|
1880
|
-
let n = P(e).descriptors[t]?.output;
|
|
1881
|
-
return a(() => n === void 0 ? [] : Dt(n), [n]);
|
|
1882
|
-
}, $t = (e, t) => {
|
|
1982
|
+
}, nn = (e, t) => {
|
|
1883
1983
|
if (e === t) return !0;
|
|
1884
1984
|
if (e.length !== t.length) return !1;
|
|
1885
1985
|
for (let n = 0; n < e.length; n += 1) if (!Object.is(e[n], t[n])) return !1;
|
|
1886
1986
|
return !0;
|
|
1887
|
-
},
|
|
1888
|
-
let n = o(null), r =
|
|
1889
|
-
return (n.current === null ||
|
|
1987
|
+
}, rn = (e) => Object.keys(e).sort().map((t) => e[t]), an = (e, t) => {
|
|
1988
|
+
let n = o(null), r = rn(e);
|
|
1989
|
+
return (n.current === null || !nn(n.current.key, r)) && (n.current = {
|
|
1890
1990
|
key: r,
|
|
1891
1991
|
value: t(e)
|
|
1892
1992
|
}), n.current.value;
|
|
1893
|
-
},
|
|
1894
|
-
function
|
|
1895
|
-
return t(
|
|
1993
|
+
}, on = "admin:full", sn = (e, t) => e.includes("admin:full") ? !0 : (typeof t == "string" ? [t] : t).every((t) => e.includes(t)), cn = (e, t) => t.length === 0 || e.includes("admin:full") ? !0 : t.some((t) => e.includes(t)), ln = e({ scopes: [] });
|
|
1994
|
+
function un(e) {
|
|
1995
|
+
return t(ln.Provider, { value: { scopes: e.scopes } }, e.children);
|
|
1896
1996
|
}
|
|
1897
|
-
var
|
|
1898
|
-
let i =
|
|
1997
|
+
var dn = () => r(ln), fn = (e) => sn(dn().scopes, e), pn = (e) => cn(dn().scopes, e), mn = (e, t, n, r = {}) => {
|
|
1998
|
+
let i = F(e, t, { ...n }, r);
|
|
1899
1999
|
return a(() => ({
|
|
1900
2000
|
allowed: i.data?.allowed === !0,
|
|
1901
2001
|
pending: i.data === void 0
|
|
1902
2002
|
}), [i.data]);
|
|
1903
|
-
},
|
|
1904
|
-
let i =
|
|
2003
|
+
}, hn = (e, t, n, r = {}) => {
|
|
2004
|
+
let i = F(e, t, { ...n }, r);
|
|
1905
2005
|
return a(() => ({
|
|
1906
2006
|
allowedIds: new Set(i.data?.allowedIds ?? []),
|
|
1907
2007
|
pending: i.data === void 0
|
|
1908
2008
|
}), [i.data]);
|
|
1909
|
-
},
|
|
2009
|
+
}, gn = (e) => {
|
|
1910
2010
|
switch (e) {
|
|
1911
2011
|
case "select":
|
|
1912
2012
|
case "radio":
|
|
@@ -1922,25 +2022,25 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
1922
2022
|
case "switch": return "boolean";
|
|
1923
2023
|
default: return null;
|
|
1924
2024
|
}
|
|
1925
|
-
},
|
|
1926
|
-
let t =
|
|
2025
|
+
}, _n = (e) => Z(e).map((e) => {
|
|
2026
|
+
let t = gn(e.widget);
|
|
1927
2027
|
return t === null ? null : {
|
|
1928
2028
|
name: e.name,
|
|
1929
2029
|
label: e.label,
|
|
1930
2030
|
kind: t,
|
|
1931
2031
|
...e.options ? { options: e.options } : {}
|
|
1932
2032
|
};
|
|
1933
|
-
}).filter((e) => e !== null),
|
|
2033
|
+
}).filter((e) => e !== null), vn = (e) => {
|
|
1934
2034
|
let t = {};
|
|
1935
2035
|
for (let [n, r] of Object.entries(e)) r === void 0 || r === "" || Array.isArray(r) && r.length === 0 || (t[n] = r);
|
|
1936
2036
|
return t;
|
|
1937
|
-
},
|
|
1938
|
-
let i =
|
|
1939
|
-
l((n) =>
|
|
2037
|
+
}, yn = (e, t, r = {}) => {
|
|
2038
|
+
let i = N(e).descriptors[t]?.input, o = a(() => i === void 0 ? [] : _n(i), [i]), [c, l] = s(r.initial ?? {}), u = n((e, t) => {
|
|
2039
|
+
l((n) => vn({
|
|
1940
2040
|
...n,
|
|
1941
2041
|
[e]: t
|
|
1942
2042
|
}));
|
|
1943
|
-
}, []), d = n(() => l({}), []), f =
|
|
2043
|
+
}, []), d = n(() => l({}), []), f = F(e, t, a(() => vn(c), [c]));
|
|
1944
2044
|
return {
|
|
1945
2045
|
filters: o,
|
|
1946
2046
|
values: c,
|
|
@@ -1951,20 +2051,20 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
1951
2051
|
loading: f.data === void 0,
|
|
1952
2052
|
error: f.error
|
|
1953
2053
|
};
|
|
1954
|
-
},
|
|
1955
|
-
let r =
|
|
2054
|
+
}, bn = (e, t, n = {}) => {
|
|
2055
|
+
let r = F(e, t, n), i = r.data;
|
|
1956
2056
|
return {
|
|
1957
2057
|
record: Array.isArray(i) ? i[0] : i,
|
|
1958
2058
|
loading: i === void 0,
|
|
1959
2059
|
error: r.error
|
|
1960
2060
|
};
|
|
1961
|
-
},
|
|
2061
|
+
}, xn = (e, t = 300) => {
|
|
1962
2062
|
let [n, r] = s(e);
|
|
1963
2063
|
return i(() => {
|
|
1964
2064
|
let n = setTimeout(() => r(e), t);
|
|
1965
2065
|
return () => clearTimeout(n);
|
|
1966
2066
|
}, [e, t]), n;
|
|
1967
|
-
},
|
|
2067
|
+
}, Sn = (e) => {
|
|
1968
2068
|
let { value: t, debouncedValue: n, data: r, interpret: i, skipEmpty: a = !0 } = e;
|
|
1969
2069
|
if (a && t.trim() === "") return {
|
|
1970
2070
|
status: "idle",
|
|
@@ -1982,19 +2082,19 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
1982
2082
|
valid: o.valid,
|
|
1983
2083
|
message: o.message
|
|
1984
2084
|
};
|
|
1985
|
-
},
|
|
1986
|
-
let { input: i, interpret: o, debounceMs: s = 300, skipEmpty: c = !0 } = r, l =
|
|
1987
|
-
return
|
|
2085
|
+
}, Cn = (e, t, n, r) => {
|
|
2086
|
+
let { input: i, interpret: o, debounceMs: s = 300, skipEmpty: c = !0 } = r, l = xn(n, s), u = c && l.trim() === "", d = F(e, t, a(() => i ? i(l) : { value: l }, [i, l]), { skip: u });
|
|
2087
|
+
return Sn({
|
|
1988
2088
|
value: n,
|
|
1989
2089
|
debouncedValue: l,
|
|
1990
2090
|
data: u ? null : d.data,
|
|
1991
2091
|
interpret: o,
|
|
1992
2092
|
skipEmpty: c
|
|
1993
2093
|
});
|
|
1994
|
-
},
|
|
2094
|
+
}, wn = (e, t) => ({
|
|
1995
2095
|
name: e,
|
|
1996
2096
|
payload: t
|
|
1997
|
-
}),
|
|
2097
|
+
}), Tn = (e, t) => {
|
|
1998
2098
|
let n = h.decodeUnknownEither(e.payload, { errors: "all" })(t);
|
|
1999
2099
|
if (n._tag === "Right") return {
|
|
2000
2100
|
valid: !0,
|
|
@@ -2006,15 +2106,15 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2006
2106
|
valid: !1,
|
|
2007
2107
|
errors: r
|
|
2008
2108
|
};
|
|
2009
|
-
},
|
|
2109
|
+
}, En = (e) => {
|
|
2010
2110
|
let t = new Map(e.map((e) => [e.name, e]));
|
|
2011
2111
|
return {
|
|
2012
2112
|
names: [...t.keys()].sort(),
|
|
2013
2113
|
get: (e) => t.get(e),
|
|
2014
2114
|
events: e
|
|
2015
2115
|
};
|
|
2016
|
-
},
|
|
2017
|
-
let n =
|
|
2116
|
+
}, Dn = (e, t) => {
|
|
2117
|
+
let n = En(e);
|
|
2018
2118
|
return {
|
|
2019
2119
|
track: (e, r) => {
|
|
2020
2120
|
let i = n.get(e);
|
|
@@ -2023,7 +2123,7 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2023
2123
|
return;
|
|
2024
2124
|
}
|
|
2025
2125
|
if (process.env.NODE_ENV !== "production") {
|
|
2026
|
-
let t =
|
|
2126
|
+
let t = Tn(i, r);
|
|
2027
2127
|
t.valid || console.error(`[@voltro/client] analytics.track('${e}'): payload failed its schema`, t.errors);
|
|
2028
2128
|
}
|
|
2029
2129
|
t({
|
|
@@ -2034,42 +2134,42 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2034
2134
|
names: n.names,
|
|
2035
2135
|
catalog: n
|
|
2036
2136
|
};
|
|
2037
|
-
},
|
|
2038
|
-
let r =
|
|
2137
|
+
}, On = (e, t) => {
|
|
2138
|
+
let r = W(e, t);
|
|
2039
2139
|
return {
|
|
2040
2140
|
preview: n((e) => r.run(e), [r]),
|
|
2041
2141
|
diff: r.lastResult,
|
|
2042
2142
|
pending: r.pending,
|
|
2043
2143
|
error: r.error
|
|
2044
2144
|
};
|
|
2045
|
-
},
|
|
2145
|
+
}, kn = (e, t, n, r) => [...e, {
|
|
2046
2146
|
id: t,
|
|
2047
2147
|
tag: n,
|
|
2048
2148
|
input: r,
|
|
2049
2149
|
status: "pending",
|
|
2050
2150
|
attempts: 0
|
|
2051
|
-
}],
|
|
2151
|
+
}], An = (e, t, n) => e.map((e) => e.id === t ? {
|
|
2052
2152
|
...e,
|
|
2053
2153
|
...n
|
|
2054
|
-
} : e),
|
|
2154
|
+
} : e), jn = (e, t) => An(e, t, { status: "sent" }), Mn = (e, t, n) => e.map((e) => e.id === t ? {
|
|
2055
2155
|
...e,
|
|
2056
2156
|
status: "failed",
|
|
2057
2157
|
error: n,
|
|
2058
2158
|
attempts: e.attempts + 1
|
|
2059
|
-
} : e),
|
|
2159
|
+
} : e), Nn = (e, t, n) => An(e, t, {
|
|
2060
2160
|
status: "conflict",
|
|
2061
2161
|
error: n
|
|
2062
|
-
}),
|
|
2162
|
+
}), Pn = (e) => e.filter((e) => e.status !== "sent"), Fn = (e) => {
|
|
2063
2163
|
let t = [];
|
|
2064
2164
|
for (let n of e) {
|
|
2065
2165
|
if (n.status === "conflict") break;
|
|
2066
2166
|
(n.status === "pending" || n.status === "failed") && t.push(n);
|
|
2067
2167
|
}
|
|
2068
2168
|
return t;
|
|
2069
|
-
},
|
|
2169
|
+
}, In = (e) => {
|
|
2070
2170
|
let t = e;
|
|
2071
2171
|
return t?.conflict === !0 || t?._tag === "UndoBoundaryError" && t?.boundary === "conflict";
|
|
2072
|
-
},
|
|
2172
|
+
}, Ln = (e) => {
|
|
2073
2173
|
let [t, n] = s(e ?? (typeof navigator < "u" ? navigator.onLine : !0));
|
|
2074
2174
|
return i(() => {
|
|
2075
2175
|
if (e !== void 0) {
|
|
@@ -2082,21 +2182,21 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2082
2182
|
window.removeEventListener("online", t), window.removeEventListener("offline", r);
|
|
2083
2183
|
};
|
|
2084
2184
|
}, [e]), t;
|
|
2085
|
-
},
|
|
2086
|
-
let { send: t, isConflict: r =
|
|
2185
|
+
}, Rn = (e) => {
|
|
2186
|
+
let { send: t, isConflict: r = In, idFor: a } = e, [c, l] = s([]), u = Ln(e.online), d = o(c);
|
|
2087
2187
|
d.current = c;
|
|
2088
2188
|
let f = o(0), p = n((e, t) => {
|
|
2089
2189
|
let n = a?.() ?? `obx_${f.current++}_${e}`;
|
|
2090
|
-
l((r) =>
|
|
2190
|
+
l((r) => kn(r, n, e, t));
|
|
2091
2191
|
}, [a]), m = n(async () => {
|
|
2092
|
-
for (let e of
|
|
2093
|
-
await t(e), l((t) =>
|
|
2192
|
+
for (let e of Fn(d.current)) try {
|
|
2193
|
+
await t(e), l((t) => jn(t, e.id));
|
|
2094
2194
|
} catch (t) {
|
|
2095
2195
|
if (r(t)) {
|
|
2096
|
-
l((n) =>
|
|
2196
|
+
l((n) => Nn(n, e.id, t));
|
|
2097
2197
|
break;
|
|
2098
2198
|
}
|
|
2099
|
-
l((n) =>
|
|
2199
|
+
l((n) => Mn(n, e.id, t));
|
|
2100
2200
|
}
|
|
2101
2201
|
}, [t, r]);
|
|
2102
2202
|
return i(() => {
|
|
@@ -2109,7 +2209,7 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2109
2209
|
pending: c.filter((e) => e.status === "pending" || e.status === "failed").length,
|
|
2110
2210
|
conflicts: c.filter((e) => e.status === "conflict")
|
|
2111
2211
|
};
|
|
2112
|
-
},
|
|
2212
|
+
}, zn = (e) => {
|
|
2113
2213
|
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);
|
|
2114
2214
|
return {
|
|
2115
2215
|
startIndex: l,
|
|
@@ -2119,8 +2219,8 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2119
2219
|
topSpacer: l * r,
|
|
2120
2220
|
bottomSpacer: a === void 0 ? 0 : Math.max(0, (a - d) * r)
|
|
2121
2221
|
};
|
|
2122
|
-
},
|
|
2123
|
-
let { rowHeight: i, viewportHeight: o, overscan: c, total: l, input: u } = r, [d, f] = s(0), p = a(() =>
|
|
2222
|
+
}, Bn = (e, t, r) => {
|
|
2223
|
+
let { rowHeight: i, viewportHeight: o, overscan: c, total: l, input: u } = r, [d, f] = s(0), p = a(() => zn({
|
|
2124
2224
|
scrollTop: d,
|
|
2125
2225
|
viewportHeight: o,
|
|
2126
2226
|
rowHeight: i,
|
|
@@ -2132,7 +2232,7 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2132
2232
|
i,
|
|
2133
2233
|
c,
|
|
2134
2234
|
l
|
|
2135
|
-
]), m =
|
|
2235
|
+
]), m = F(e, t, a(() => ({
|
|
2136
2236
|
...u,
|
|
2137
2237
|
offset: p.offset,
|
|
2138
2238
|
limit: p.limit
|
|
@@ -2152,8 +2252,8 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2152
2252
|
loading: m.data === void 0,
|
|
2153
2253
|
error: m.error
|
|
2154
2254
|
};
|
|
2155
|
-
},
|
|
2156
|
-
let { errorBus: t } =
|
|
2255
|
+
}, Vn = () => typeof navigator > "u" || navigator.onLine, Hn = (e) => {
|
|
2256
|
+
let { errorBus: t } = N(e), [r, a] = s(Vn), [c, l] = s(0), [u, d] = s(void 0), f = o(!0);
|
|
2157
2257
|
i(() => (f.current = !0, () => {
|
|
2158
2258
|
f.current = !1;
|
|
2159
2259
|
}), []), i(() => {
|
|
@@ -2179,7 +2279,7 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2179
2279
|
lastFailureAt: u,
|
|
2180
2280
|
reportSuccess: p
|
|
2181
2281
|
};
|
|
2182
|
-
},
|
|
2282
|
+
}, Un = "__voltro.connections.list", Wn = "__voltro.connections.start", Gn = "__voltro.connections.submitToken", Kn = "__voltro.connections.disconnect", qn = {
|
|
2183
2283
|
connectionId: "",
|
|
2184
2284
|
kind: "oauth2",
|
|
2185
2285
|
label: "",
|
|
@@ -2190,14 +2290,14 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2190
2290
|
expiresAt: null,
|
|
2191
2291
|
lastError: null,
|
|
2192
2292
|
connectedAt: null
|
|
2193
|
-
},
|
|
2293
|
+
}, Jn = (e, t) => {
|
|
2194
2294
|
if (t === "redirect") {
|
|
2195
2295
|
globalThis.location.assign(e);
|
|
2196
2296
|
return;
|
|
2197
2297
|
}
|
|
2198
2298
|
globalThis.open(e, "voltro-connect", "width=620,height=760,menubar=no,toolbar=no") === null && globalThis.location.assign(e);
|
|
2199
|
-
},
|
|
2200
|
-
let { data: t } =
|
|
2299
|
+
}, Yn = (e) => {
|
|
2300
|
+
let { data: t } = F(e, Un, {}), r = W(e, Wn), i = U(e, Gn), a = U(e, Kn), o = t ?? [], s = r.pending || i.pending || a.pending, c = n((e) => ({
|
|
2201
2301
|
...e,
|
|
2202
2302
|
connected: e.status === "connected",
|
|
2203
2303
|
needsAttention: e.status === "expired" || e.status === "revoked" || e.status === "error",
|
|
@@ -2205,7 +2305,7 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2205
2305
|
connect: async (t) => {
|
|
2206
2306
|
if (e.kind !== "oauth2") throw Error(`connection "${e.connectionId}" is a personal-access-token connection — call submitToken(token), not connect().`);
|
|
2207
2307
|
let n = t?.redirectTo ?? `${globalThis.location.pathname}${globalThis.location.search}`;
|
|
2208
|
-
|
|
2308
|
+
Jn((await r.run({
|
|
2209
2309
|
connectionId: e.connectionId,
|
|
2210
2310
|
redirectTo: n
|
|
2211
2311
|
})).authorizeUrl, t?.mode);
|
|
@@ -2235,10 +2335,10 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2235
2335
|
get: l,
|
|
2236
2336
|
pending: s
|
|
2237
2337
|
};
|
|
2238
|
-
},
|
|
2239
|
-
let n =
|
|
2338
|
+
}, Xn = (e, t) => {
|
|
2339
|
+
let n = Yn(e), r = n.get(t);
|
|
2240
2340
|
return a(() => r === void 0 ? {
|
|
2241
|
-
...
|
|
2341
|
+
...qn,
|
|
2242
2342
|
connectionId: t,
|
|
2243
2343
|
label: t,
|
|
2244
2344
|
connected: !1,
|
|
@@ -2263,6 +2363,6 @@ var cn = () => r(on), ln = (e) => rn(cn().scopes, e), un = (e) => an(cn().scopes
|
|
|
2263
2363
|
n.loading,
|
|
2264
2364
|
n.pending
|
|
2265
2365
|
]);
|
|
2266
|
-
},
|
|
2366
|
+
}, Zn = "framework-client";
|
|
2267
2367
|
//#endregion
|
|
2268
|
-
export {
|
|
2368
|
+
export { on as ADMIN_SCOPE, Zn as CLIENT_NAME, Un as CONNECTIONS_LIST_TAG, Kn as CONNECTION_DISCONNECT_TAG, Wn as CONNECTION_START_TAG, Gn as CONNECTION_SUBMIT_TOKEN_TAG, le as FrameworkRuntimesContext, he as FrameworkRuntimesProvider, oe as LoadingSubscriptionCache, un as PermissionProvider, se as RpcErrorBus, ae as SubscriptionCache, qt as UNDO_APPLY_TAG, Kt as UNDO_LOG_TAG, Jt as UNDO_REDO_TAG, pe as _resetFrameworkRuntimesWarning, sn as canCall, cn as canCallAny, Ee as clearMutations, Pn as clearSent, zn as computeWindow, Dn as createAnalytics, wn as defineEvent, Xt as defineTracking, Wt as deriveEntityAdmins, kn as enqueueEntry, ce as errorTag, En as eventCatalog, _n as filtersFromSchema, H as getMutationNotifier, we as getMutations, Bt as manifestUrl, Nn as markConflict, Mn as markFailed, jn as markSent, Rt as provenanceUrl, yt as publishClientError, x as publishClientTrace, Fn as replayable, xt as reportClientError, P as resolveByTag, $ as resolveTrackingEvent, ut as resumableConsumeProgram, Nt as rowsToOptions, ye as runSequence, Q as schemaToColumns, Z as schemaToFields, ve as sequence, Oe as setMutationNotifier, B as settleMutation, nn as shallowArrayEqual, rn as sourceValues, k as ssrClientProxy, de as ssrStubHandle, C as stableKey, z as startMutation, bt as subscribeClientErrors, S as subscribeClientTraces, Te as subscribeMutations, W as useAction, gt as useAgent, ht as useAgentChat, lt as useAgentStream, Cn as useAsyncValidation, fn as useCan, pn as useCanAny, Vt as useCapabilityManifest, Xn as useConnection, Hn as useConnectionStatus, Yn as useConnections, _t as useDataCopilot, It as useDataTable, xn as useDebounced, an as useDerived, Mt as useFormBinding, en as useFormSkeleton, N as useFrameworkApi, me as useFrameworkRuntimes, U as useMutation, St as useOnRpcError, Rn as useOutbox, dn as usePermissions, On as usePreview, zt as useProvenance, Pt as useQueryField, yn as useQueryFilters, bn as useRecord, vt as useRefreshSubscriptions, mn as useResourceCan, hn as useResourceCans, ft as useResumableAgentStream, be as useSequence, F as useSubscription, tn as useTableSkeleton, $t as useTracking, Gt as useUndo, Yt as useUndoLog, Je as useUpload, Bn as useWindowedSubscription, Ye as useWorkflow, nt as useWorkflowDomainEvents, rt as useWorkflowEventDeliveries, tt as useWorkflowEvents, Qe as useWorkflowRun, q as useWorkflowRunEvents, ct as useWorkflowRunState, et as useWorkflowRunSteps, $e as useWorkflowRuns, Xe as useWorkflowSignal, Ze as useWorkflowUpdate, Tn as validateEventPayload, jt as validateFields, Sn as validationStatus, Qt as wrapTrackedCallbacks };
|