@voltro/client 0.24.0 → 0.26.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/dist/index.js CHANGED
@@ -1,41 +1,41 @@
1
1
  import { createContext as e, createElement as t, useCallback as n, useContext as r, useDebugValue as i, useEffect as a, useMemo as o, useRef as s, useState as c, useSyncExternalStore as l } from "react";
2
- import { Cause as u, Duration as d, Effect as f, Exit as p, Fiber as m, JSONSchema as h, Schema as g, Stream as _ } from "effect";
3
- import { applyRowPatch as v } from "@voltro/protocol";
4
- import { jsx as y } from "react/jsx-runtime";
5
- import * as b from "@effect/platform/Headers";
6
- import { RpcClient as x } from "@effect/rpc";
7
- import { ArrayFormatter as S } from "effect/ParseResult";
2
+ import { Cause as u, Duration as d, Effect as f, Exit as p, Fiber as m, JSONSchema as h, Schedule as g, Schema as _, Stream as v } from "effect";
3
+ import { applyRowPatch as y } from "@voltro/protocol";
4
+ import { jsx as b } from "react/jsx-runtime";
5
+ import * as x from "@effect/platform/Headers";
6
+ import { RpcClient as S } from "@effect/rpc";
7
+ import { ArrayFormatter as C } from "effect/ParseResult";
8
8
  //#region src/traceBus.ts
9
- var C = /* @__PURE__ */ new Set(), w = (e) => {
10
- for (let t of C) try {
9
+ var w = /* @__PURE__ */ new Set(), T = (e) => {
10
+ for (let t of w) try {
11
11
  t(e);
12
12
  } catch {}
13
- }, T = (e) => (C.add(e), () => {
14
- C.delete(e);
15
- }), E = (e) => {
13
+ }, E = (e) => (w.add(e), () => {
14
+ w.delete(e);
15
+ }), D = (e) => {
16
16
  let t = (e) => e == null ? "null" : typeof e == "string" ? JSON.stringify(e) : typeof e == "number" || typeof e == "boolean" ? String(e) : Array.isArray(e) ? `[${e.map(t).join(",")}]` : typeof e == "object" ? `{${Object.keys(e).sort().map((n) => `${JSON.stringify(n)}:${t(e[n])}`).join(",")}}` : String(e);
17
17
  return t(e);
18
- }, ee = Object.freeze({
18
+ }, O = Object.freeze({
19
19
  data: void 0,
20
20
  revision: -1,
21
21
  emittedAt: void 0,
22
22
  error: void 0,
23
23
  pendingPatches: 0
24
- }), te = 5e3, ne = 0, re = () => `patch_${++ne}`, D = (e, t) => {
24
+ }), ee = 5e3, k = 0, te = () => `patch_${++k}`, A = (e, t) => {
25
25
  let n = e;
26
26
  for (let e of t.split(".")) {
27
27
  if (typeof n != "object" || !n) return;
28
28
  n = n[e];
29
29
  }
30
30
  return n;
31
- }, ie = (e, t, n) => {
31
+ }, ne = (e, t, n) => {
32
32
  let r = t.split("."), i = (e) => typeof e == "object" && e && !Array.isArray(e) ? { ...e } : {}, a = i(e), o = a;
33
33
  for (let e = 0; e < r.length - 1; e += 1) o[r[e]] = i(o[r[e]]), o = o[r[e]];
34
34
  return o[r[r.length - 1]] = n, a;
35
- }, ae = (e, t) => {
35
+ }, re = (e, t) => {
36
36
  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];
37
37
  return i.length === 0 ? null : new Set(i);
38
- }, oe = (e, t, n) => {
38
+ }, ie = (e, t, n) => {
39
39
  let r = e.path, i = e.by ?? "id";
40
40
  if (e.op === "insert") {
41
41
  let a = e.shapeItem ?? e.shape, o = a ? {
@@ -48,11 +48,11 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
48
48
  optimistic: !0
49
49
  }, s = e.order ?? "append";
50
50
  return (e) => {
51
- let t = Array.isArray(D(e, r)) ? D(e, r) : [];
52
- return ie(e ?? {}, r, s === "append" ? [...t, o] : [o, ...t]);
51
+ let t = Array.isArray(A(e, r)) ? A(e, r) : [];
52
+ return ne(e ?? {}, r, s === "append" ? [...t, o] : [o, ...t]);
53
53
  };
54
54
  }
55
- let a = ae(e, t);
55
+ let a = re(e, t);
56
56
  if (a === null) return null;
57
57
  if (e.op === "update") {
58
58
  let n = e.shapeItem ?? e.shape, o = n ? (e) => ({
@@ -66,16 +66,16 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
66
66
  optimistic: !0
67
67
  });
68
68
  return (e) => {
69
- let t = Array.isArray(D(e, r)) ? D(e, r) : [];
70
- return ie(e, r, t.map((e) => a.has(e[i]) ? o(e) : e));
69
+ let t = Array.isArray(A(e, r)) ? A(e, r) : [];
70
+ return ne(e, r, t.map((e) => a.has(e[i]) ? o(e) : e));
71
71
  };
72
72
  }
73
73
  return (e) => {
74
- let t = Array.isArray(D(e, r)) ? D(e, r) : [];
75
- return ie(e, r, t.filter((e) => !a.has(e[i])));
74
+ let t = Array.isArray(A(e, r)) ? A(e, r) : [];
75
+ return ne(e, r, t.filter((e) => !a.has(e[i])));
76
76
  };
77
- }, se = (e, t, n) => {
78
- if (e.path !== void 0) return oe(e, t, n);
77
+ }, ae = (e, t, n) => {
78
+ if (e.path !== void 0) return ie(e, t, n);
79
79
  switch (e.op) {
80
80
  case "insert": {
81
81
  let r = e.shape ? {
@@ -93,7 +93,7 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
93
93
  };
94
94
  }
95
95
  case "update": {
96
- let n = ae(e, t);
96
+ let n = re(e, t);
97
97
  if (n === null) return null;
98
98
  let r = e.shape, i = r ? (e) => ({
99
99
  ...r(t, e),
@@ -110,30 +110,30 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
110
110
  });
111
111
  }
112
112
  case "delete": {
113
- let n = ae(e, t);
113
+ let n = re(e, t);
114
114
  return n === null ? null : (e) => (Array.isArray(e) ? e : []).filter((e) => !n.has(e.id));
115
115
  }
116
116
  }
117
- }, ce = 5e3, le = class {
117
+ }, oe = 5e3, se = class {
118
118
  entries = /* @__PURE__ */ new Map();
119
119
  inactiveTtlMs;
120
120
  onChangeHook;
121
121
  errorBus;
122
122
  constructor(e = {}) {
123
- this.inactiveTtlMs = e.inactiveTtlMs ?? ce, this.onChangeHook = e.onChange, this.errorBus = e.errorBus;
123
+ this.inactiveTtlMs = e.inactiveTtlMs ?? oe, this.onChangeHook = e.onChange, this.errorBus = e.errorBus;
124
124
  }
125
125
  subscribe(e, t, n, r, i = {}) {
126
- let a = E(e), o = typeof e[0] == "string" ? e[0] : void 0, s = this.entries.get(a);
126
+ let a = D(e), o = typeof e[0] == "string" ? e[0] : void 0, s = this.entries.get(a);
127
127
  return s && s.evictionTimer !== null && (clearTimeout(s.evictionTimer), s.evictionTimer = null), s ? (s.fiber === null && (s.fetch = t, this.startFiber(s, t, n)), s.source === void 0 && i.source !== void 0 && (s.source = i.source)) : s = this.create(a, o, t, n, i.source), s.subscribers.add(r), {
128
128
  getSnapshot: () => this.getSnapshot(a),
129
129
  unsubscribe: () => this.unsubscribe(a, r)
130
130
  };
131
131
  }
132
132
  update(e, t, n) {
133
- let r = E(e), i = typeof e[0] == "string" ? e[0] : void 0, a = this.entries.get(r);
133
+ let r = D(e), i = typeof e[0] == "string" ? e[0] : void 0, a = this.entries.get(r);
134
134
  a ||= this.createStub(r, i);
135
135
  let o = {
136
- id: re(),
136
+ id: te(),
137
137
  mutationId: n,
138
138
  reducer: t
139
139
  };
@@ -147,7 +147,7 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
147
147
  for (let i of this.entries.values()) {
148
148
  if (i.tag !== e) continue;
149
149
  let a = {
150
- id: `forTag-${++ne}`,
150
+ id: `forTag-${++k}`,
151
151
  mutationId: n,
152
152
  reducer: t
153
153
  };
@@ -164,10 +164,10 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
164
164
  confirmByMutation(e) {
165
165
  let t = !1;
166
166
  for (let n of this.entries.values()) for (let r of n.state.patches) r.mutationId === e && r.confirmed !== !0 && (r.confirmed = !0, t = !0);
167
- t && setTimeout(() => this.revertByMutation(e), te);
167
+ t && setTimeout(() => this.revertByMutation(e), ee);
168
168
  }
169
169
  autoApply(e, t, n) {
170
- let r = `optimistic-${n}-${++ne}`;
170
+ let r = `optimistic-${n}-${++k}`;
171
171
  for (let i of e) for (let e of this.entries.values()) {
172
172
  if (!(Array.isArray(e.source) ? e.source.includes(i.table) : e.source === i.table)) continue;
173
173
  if (i.match !== void 0) {
@@ -180,7 +180,7 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
180
180
  if (!n) continue;
181
181
  }
182
182
  if (e.computed && i.op === "insert" && i.path === void 0) continue;
183
- let a = se(i, t, r);
183
+ let a = ae(i, t, r);
184
184
  if (a === null) continue;
185
185
  let o = {
186
186
  id: `${r}-${e.key}`,
@@ -197,10 +197,10 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
197
197
  n.state.patches = n.state.patches.filter((e) => e.id !== t), n.state.patches.length !== r && this.invalidate(n);
198
198
  }
199
199
  peek(e) {
200
- return this.getSnapshot(E(e));
200
+ return this.getSnapshot(D(e));
201
201
  }
202
202
  getEntry(e) {
203
- return this.entries.get(E(e));
203
+ return this.entries.get(D(e));
204
204
  }
205
205
  size() {
206
206
  return this.entries.size;
@@ -269,18 +269,18 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
269
269
  };
270
270
  }
271
271
  startFiber(e, t, n) {
272
- let r = e.tag ?? e.key, i = t(), a = _.unwrapScoped(f.currentSpan.pipe(f.catchAll(() => f.succeed(void 0)), f.map((t) => (t && (e.traceId = t.traceId, w({
272
+ let r = e.tag ?? e.key, i = t(), a = v.unwrapScoped(f.currentSpan.pipe(f.catchAll(() => f.succeed(void 0)), f.map((t) => (t && (e.traceId = t.traceId, T({
273
273
  traceId: t.traceId,
274
274
  spanId: t.spanId,
275
275
  source: "subscription",
276
276
  tag: r
277
- })), i)))).pipe(_.withSpan(`client.subscription.${r}`, { attributes: { "rpc.tag": r } }));
278
- e.fiber = n.runFork(a.pipe(_.runForEach((t) => f.sync(() => {
277
+ })), i)))).pipe(v.withSpan(`client.subscription.${r}`, { attributes: { "rpc.tag": r } }));
278
+ e.fiber = n.runFork(a.pipe(v.runForEach((t) => f.sync(() => {
279
279
  if (t._tag === "snapshot") e.state.base = t.data, e.state.baseRevision = t.revision, e.state.baseEmittedAt = void 0, e.state.baseError = void 0, t.computed === !0 && (e.computed = !0);
280
280
  else if (t._tag === "error") e.state.baseError = u.fail(t.error), typeof t.revision == "number" && (e.state.baseRevision = t.revision);
281
281
  else {
282
282
  let n = e.state.base;
283
- Array.isArray(n) && (e.state.base = v(n, t.patch)), e.state.baseRevision = t.revision, e.state.baseEmittedAt = t.emittedAt, e.state.baseError = void 0;
283
+ Array.isArray(n) && (e.state.base = y(n, t.patch)), e.state.baseRevision = t.revision, e.state.baseEmittedAt = t.emittedAt, e.state.baseError = void 0;
284
284
  }
285
285
  e.state.patches.some((e) => e.confirmed === !0) && (e.state.patches = e.state.patches.filter((e) => e.confirmed !== !0)), this.invalidate(e);
286
286
  })))), e.fiber.addObserver((t) => {
@@ -302,7 +302,7 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
302
302
  }
303
303
  getSnapshot(e) {
304
304
  let t = this.entries.get(e);
305
- if (!t) return ee;
305
+ if (!t) return O;
306
306
  if (t.state.cachedSnapshot !== null) return t.state.cachedSnapshot;
307
307
  let n = t.state.base;
308
308
  if (n !== void 0 && t.state.patches.length > 0) for (let e of t.state.patches) n = e.reducer(n);
@@ -322,14 +322,14 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
322
322
  t && t.subscribers.size === 0 && (t.fiber && f.runFork(m.interrupt(t.fiber)), this.entries.delete(e));
323
323
  }, this.inactiveTtlMs)));
324
324
  }
325
- }, ue = class extends le {
325
+ }, ce = class extends se {
326
326
  subscribe(e, t, n, r, i = {}) {
327
327
  return {
328
328
  getSnapshot: () => this.peek(e),
329
329
  unsubscribe: () => {}
330
330
  };
331
331
  }
332
- }, de = class {
332
+ }, le = class {
333
333
  #e = /* @__PURE__ */ new Set();
334
334
  on(e) {
335
335
  return this.#e.add(e), () => {
@@ -341,30 +341,30 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
341
341
  t(e);
342
342
  } catch {}
343
343
  }
344
- }, O = e(null), fe = () => {
344
+ }, ue = e(null), de = () => {
345
345
  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");
346
- }, k = new Proxy(() => fe(), {
347
- get: (e, t) => k,
346
+ }, fe = new Proxy(() => de(), {
347
+ get: (e, t) => fe,
348
348
  has: () => !0,
349
- apply: () => fe()
349
+ apply: () => de()
350
350
  }), pe = {
351
351
  runtime: { runPromise: () => Promise.reject(/* @__PURE__ */ Error("Voltro: mutations are not invokable during SSR")) },
352
- cache: new ue(),
353
- client: k,
352
+ cache: new ce(),
353
+ client: fe,
354
354
  descriptors: {},
355
355
  inspectBaseUrl: "",
356
- errorBus: new de()
356
+ errorBus: new le()
357
357
  }, me = {
358
358
  get: () => pe,
359
359
  names: []
360
- }, A = !1, j = !1, M = null, he = () => {
361
- A = !1, j = !1, M !== null && (clearTimeout(M), M = null);
360
+ }, j = !1, M = !1, N = null, he = () => {
361
+ j = !1, M = !1, N !== null && (clearTimeout(N), N = null);
362
362
  }, ge = () => {
363
- let e = r(O);
364
- 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(() => {
365
- 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>."));
363
+ let e = r(ue);
364
+ 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(() => {
365
+ 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>."));
366
366
  }, 0)), me);
367
- }, N = (e) => ge().get(e), _e = ({ apis: e, children: t }) => {
367
+ }, P = (e) => ge().get(e), _e = (e) => typeof e.runtime?.runFork != "function", ve = ({ apis: e, children: t }) => {
368
368
  let n = o(() => ({
369
369
  get: (t) => {
370
370
  let n = e.get(t);
@@ -376,21 +376,21 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
376
376
  },
377
377
  names: Array.from(e.keys())
378
378
  }), [e]);
379
- return /* @__PURE__ */ y(O.Provider, {
379
+ return /* @__PURE__ */ b(ue.Provider, {
380
380
  value: n,
381
381
  children: t
382
382
  });
383
- }, P = (e, t) => {
383
+ }, F = (e, t) => {
384
384
  if (Object.is(e, t)) return !0;
385
385
  if (typeof e != "object" || typeof t != "object" || e === null || t === null || Array.isArray(e) !== Array.isArray(t)) return !1;
386
386
  let n = Object.keys(e), r = Object.keys(t);
387
387
  if (n.length !== r.length) return !1;
388
388
  for (let r of n) if (!Object.prototype.hasOwnProperty.call(t, r) || !Object.is(e[r], t[r])) return !1;
389
389
  return !0;
390
- }, ve = 50, ye = /* @__PURE__ */ new Set(), be = (e, t) => {
391
- ye.has(e) || (ye.add(e), console.warn(t));
392
- }, xe = "\0global", Se = null, Ce = (e, t, n) => {
393
- let r = Se?.() ?? null;
390
+ }, ye = 50, be = /* @__PURE__ */ new Set(), xe = (e, t) => {
391
+ be.has(e) || (be.add(e), console.warn(t));
392
+ }, Se = "\0global", Ce = null, we = (e, t, n) => {
393
+ let r = Ce?.() ?? null;
394
394
  if (r === null) return n;
395
395
  let i = n;
396
396
  for (let n of r.seeds) n.store !== e || n.key !== t || (i = {
@@ -398,9 +398,9 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
398
398
  ...n.value
399
399
  });
400
400
  return i;
401
- }, we = (e, t) => {
401
+ }, Te = (e, t) => {
402
402
  let n = e(), r = /* @__PURE__ */ new Set(), i = 0, a = 0, o, s, c = () => {
403
- if (i >= ve) throw i = 0, Error(`defineStore: notification depth exceeded ${ve} — a subscriber writes a NEW value every time it is notified, so the store can never settle. Look for a listener calling set() with something derived from the current state without converging.`);
403
+ if (i >= ye) throw i = 0, Error(`defineStore: notification depth exceeded ${ye} — a subscriber writes a NEW value every time it is notified, so the store can never settle. Look for a listener calling set() with something derived from the current state without converging.`);
404
404
  i += 1;
405
405
  try {
406
406
  for (let e of [...r]) e();
@@ -421,20 +421,20 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
421
421
  if (typeof i?.then == "function") throw a === 1 && o !== void 0 && (n = o), --a, a === 0 && (o = void 0, s = void 0), Error(`defineStore: batch('${e}') was given an async function. A batch is synchronous — everything after the first await would land outside it. Await the work first, then batch the writes: \`const r = await load(); store.batch('${e}', () => { … })\`.`);
422
422
  if (--a, a > 0) return;
423
423
  let l = o, u = s;
424
- o = void 0, s = void 0, !P(l, n) && (t(l, n, u), c());
424
+ o = void 0, s = void 0, !F(l, n) && (t(l, n, u), c());
425
425
  },
426
426
  set: (e, r) => {
427
427
  let i = typeof e == "function" ? e(n) : {
428
428
  ...n,
429
429
  ...e
430
430
  };
431
- if (P(i, n)) return;
431
+ if (F(i, n)) return;
432
432
  let o = n;
433
433
  n = i, !(a > 0) && (t(o, i, r), c());
434
434
  },
435
435
  reset: () => {
436
436
  let r = e();
437
- if (P(r, n)) return;
437
+ if (F(r, n)) return;
438
438
  let i = n;
439
439
  n = r, !(a > 0) && (t(i, r, "reset"), c());
440
440
  },
@@ -442,47 +442,47 @@ var C = /* @__PURE__ */ new Set(), w = (e) => {
442
442
  r.delete(e);
443
443
  })
444
444
  };
445
- }, Te = 200, F = [], Ee = /* @__PURE__ */ new Set(), De = [], Oe = () => De, ke = (e) => (Ee.add(e), () => {
446
- Ee.delete(e);
447
- }), Ae = () => {
448
- F.length = 0, De = [];
449
- }, je = (e, t) => {
450
- let n = F[e];
445
+ }, Ee = 200, I = [], De = /* @__PURE__ */ new Set(), Oe = [], ke = () => Oe, Ae = (e) => (De.add(e), () => {
446
+ De.delete(e);
447
+ }), je = () => {
448
+ I.length = 0, Oe = [];
449
+ }, Me = (e, t) => {
450
+ let n = I[e];
451
451
  if (n === void 0) return !1;
452
- let r = R.get(n.store);
452
+ let r = z.get(n.store);
453
453
  if (r === void 0) return !1;
454
454
  let i = t === "before" ? n.prev : n.next;
455
- L = !0;
455
+ R = !0;
456
456
  try {
457
457
  r.set(() => i, n.key, `travel:${t}`);
458
458
  } finally {
459
- L = !1;
459
+ R = !1;
460
460
  }
461
461
  return !0;
462
- }, I = !1, L = !1, Me = (e) => {
463
- F.push(e), F.length > Te && F.shift(), De = [...F];
464
- for (let e of [...Ee]) e();
465
- }, R = /* @__PURE__ */ new Map(), z = /* @__PURE__ */ new Map(), Ne = 0, B = !1, V = /* @__PURE__ */ new Map(), Pe = () => (B || (B = !0, queueMicrotask(() => {
466
- Ne += 1, B = !1;
467
- })), Ne), Fe = Ie(((/* @__PURE__ */ Error()).stack ?? "").split("\n")[1] ?? "") ?? "";
468
- function Ie(e) {
462
+ }, L = !1, R = !1, Ne = (e) => {
463
+ I.push(e), I.length > Ee && I.shift(), Oe = [...I];
464
+ for (let e of [...De]) e();
465
+ }, z = /* @__PURE__ */ new Map(), Pe = /* @__PURE__ */ new Map(), Fe = 0, Ie = !1, B = /* @__PURE__ */ new Map(), Le = () => (Ie || (Ie = !0, queueMicrotask(() => {
466
+ Fe += 1, Ie = !1;
467
+ })), Fe), Re = ze(((/* @__PURE__ */ Error()).stack ?? "").split("\n")[1] ?? "") ?? "";
468
+ function ze(e) {
469
469
  let t = e.trim().replace(/^at\s+/, ""), n = /\(([^()]+)\)\s*$/.exec(t)?.[1] ?? t;
470
470
  return n.length > 0 ? n : void 0;
471
471
  }
472
- var Le = () => {
472
+ var Be = () => {
473
473
  let e = (/* @__PURE__ */ Error()).stack;
474
474
  if (typeof e != "string") return "<unknown>";
475
475
  for (let t of e.split("\n").slice(1)) {
476
- let e = Ie(t);
476
+ let e = ze(t);
477
477
  if (e === void 0) continue;
478
478
  let n = e.replace(/:\d+:\d+$/, "");
479
- if (!(Fe !== "" && n === Fe.replace(/:\d+:\d+$/, ""))) return n;
479
+ if (!(Re !== "" && n === Re.replace(/:\d+:\d+$/, ""))) return n;
480
480
  }
481
481
  return "<unknown>";
482
- }, Re = () => [...R.values()], ze = (e, t, r) => {
483
- let a = Le(), o = Pe(), c = R.get(e);
482
+ }, Ve = () => [...z.values()], He = (e, t, r) => {
483
+ let a = Be(), o = Le(), c = z.get(e);
484
484
  if (c !== void 0) {
485
- let t = z.get(e) ?? "<unknown>", n = V.get(e) === o;
485
+ let t = Pe.get(e) ?? "<unknown>", n = B.get(e) === o;
486
486
  if (a !== "<unknown>" && a === t && !n) return c;
487
487
  throw Error(`defineStore: '${e}' is already defined. Store names are the devtools + seed key, so two stores sharing one name would silently share state. Rename one.\n first: ${t}\n second: ${a}`);
488
488
  }
@@ -518,28 +518,28 @@ var Le = () => {
518
518
  t.setItem(u.key, JSON.stringify(n));
519
519
  } catch {}
520
520
  }, m = /* @__PURE__ */ new Map(), h = (n) => {
521
- let r = n ?? xe, i = m.get(r);
521
+ let r = n ?? Se, i = m.get(r);
522
522
  if (i === void 0) {
523
523
  let a = n;
524
- i = we(u !== void 0 && n === void 0 ? () => {
524
+ i = Te(u !== void 0 && n === void 0 ? () => {
525
525
  let e = t();
526
526
  return g = e, {
527
527
  ...e,
528
528
  ...f() ?? {}
529
529
  };
530
530
  } : t, (t, n, r) => {
531
- if (u !== void 0 && a === void 0 && p(n), !I && !L) {
531
+ if (u !== void 0 && a === void 0 && p(n), !L && !R) {
532
532
  let e = v(a);
533
533
  e.steps.length = e.cursor, e.steps.push({
534
534
  prev: t,
535
535
  next: n
536
536
  }), e.steps.length > y && e.steps.shift(), e.cursor = e.steps.length;
537
537
  }
538
- Me({
538
+ Ne({
539
539
  store: e,
540
540
  ...a === void 0 ? {} : { key: a },
541
541
  ...r === void 0 ? {} : { label: r },
542
- ...I || L ? { isUndo: !0 } : {},
542
+ ...L || R ? { isUndo: !0 } : {},
543
543
  prev: t,
544
544
  next: n,
545
545
  at: Date.now()
@@ -548,7 +548,7 @@ var Le = () => {
548
548
  }
549
549
  return i;
550
550
  }, g, _ = /* @__PURE__ */ new Map(), v = (e) => {
551
- let t = e ?? xe, n = _.get(t);
551
+ let t = e ?? Se, n = _.get(t);
552
552
  return n === void 0 && (n = {
553
553
  steps: [],
554
554
  cursor: 0
@@ -580,7 +580,7 @@ var Le = () => {
580
580
  let n = u.current;
581
581
  if (n.has && Object.is(n.state, t)) return n.value;
582
582
  let r = o.current(t), i = c.current, a = n.has && (i ? i(n.value, r) : Object.is(n.value, r));
583
- process.env.NODE_ENV !== "production" && i === void 0 && n.has && !a && typeof r == "object" && r && P(n.value, r) && be(e, `[@voltro/client] ${e}.use(): the selector returns a NEW object each call, so the default identity check never sees it as unchanged and this component re-renders on EVERY store change.\n Pass \`{ equals: shallow }\` (exported from @voltro/client), or select a primitive.`);
583
+ process.env.NODE_ENV !== "production" && i === void 0 && n.has && !a && typeof r == "object" && r && F(n.value, r) && xe(e, `[@voltro/client] ${e}.use(): the selector returns a NEW object each call, so the default identity check never sees it as unchanged and this component re-renders on EVERY store change.\n Pass \`{ equals: shallow }\` (exported from @voltro/client), or select a primitive.`);
584
584
  let s = a ? n.value : r;
585
585
  return u.current = {
586
586
  state: t,
@@ -596,7 +596,7 @@ var Le = () => {
596
596
  a,
597
597
  f,
598
598
  p
599
- ]), n(() => d(a.get()), [a, d]), n(() => d(Ce(e, r?.key, r?.key === void 0 && g !== void 0 ? g : a.get())), [
599
+ ]), n(() => d(a.get()), [a, d]), n(() => d(we(e, r?.key, r?.key === void 0 && g !== void 0 ? g : a.get())), [
600
600
  a,
601
601
  r?.key,
602
602
  d
@@ -614,11 +614,11 @@ var Le = () => {
614
614
  undo: (e) => {
615
615
  let t = v(e);
616
616
  if (t.cursor === 0) return !1;
617
- --t.cursor, I = !0;
617
+ --t.cursor, L = !0;
618
618
  try {
619
619
  h(e).set(() => t.steps[t.cursor].prev, "undo");
620
620
  } finally {
621
- I = !1;
621
+ L = !1;
622
622
  }
623
623
  return !0;
624
624
  },
@@ -626,11 +626,11 @@ var Le = () => {
626
626
  let t = v(e);
627
627
  if (t.cursor >= t.steps.length) return !1;
628
628
  let n = t.steps[t.cursor];
629
- t.cursor += 1, I = !0;
629
+ t.cursor += 1, L = !0;
630
630
  try {
631
631
  h(e).set(() => n.next, "redo");
632
632
  } finally {
633
- I = !1;
633
+ L = !1;
634
634
  }
635
635
  return !0;
636
636
  },
@@ -642,27 +642,27 @@ var Le = () => {
642
642
  release: (e) => {
643
643
  m.delete(e), _.delete(e);
644
644
  },
645
- keys: () => [...m.keys()].filter((e) => e !== xe)
645
+ keys: () => [...m.keys()].filter((e) => e !== Se)
646
646
  };
647
- return R.set(e, w), z.set(e, a), V.set(e, o), w;
648
- }, Be = () => {
649
- R.clear(), z.clear(), V.clear(), ye.clear();
650
- }, Ve = () => ({ seeds: [] }), He = (e) => {
651
- Se = e;
652
- }, Ue = (e, t, n) => {
653
- let r = Se?.() ?? null;
647
+ return z.set(e, w), Pe.set(e, a), B.set(e, o), w;
648
+ }, Ue = () => {
649
+ z.clear(), Pe.clear(), B.clear(), be.clear();
650
+ }, We = () => ({ seeds: [] }), Ge = (e) => {
651
+ Ce = e;
652
+ }, Ke = (e, t, n) => {
653
+ let r = Ce?.() ?? null;
654
654
  if (r === null) throw Error(`seedStore('${e.name}') was called outside a server render. Seeding exists to put a value into the SSR hydration payload; on the client, set the store directly instead. (If this IS server code, the render did not install a seed bag — that is a framework bug.)`);
655
655
  r.seeds.push({
656
656
  store: e.name,
657
657
  ...n?.key === void 0 ? {} : { key: n.key },
658
658
  value: t
659
659
  });
660
- }, We = (e) => {
660
+ }, qe = (e) => {
661
661
  if (e !== void 0) for (let t of e) {
662
- let e = R.get(t.store);
662
+ let e = z.get(t.store);
663
663
  e !== void 0 && e.set(t.value, t.key);
664
664
  }
665
- }, H = (e, t) => {
665
+ }, V = (e, t) => {
666
666
  let n = t.split("."), r = e;
667
667
  for (let e = 0; e < n.length; e++) {
668
668
  let i = n[e];
@@ -681,29 +681,29 @@ var Le = () => {
681
681
  }
682
682
  if (typeof r != "function") throw Error(`@voltro/client: rpc tag ${JSON.stringify(t)} did not resolve to a callable method.`);
683
683
  return r;
684
- }, Ge = Object.freeze({
684
+ }, Je = Object.freeze({
685
685
  data: void 0,
686
686
  revision: -1,
687
687
  emittedAt: void 0,
688
688
  error: void 0,
689
689
  pendingPatches: 0
690
- }), Ke = () => Ge;
691
- function U(e, t, r = {}, i = {}) {
692
- let a = i.skip === !0, { runtime: c, cache: u, client: d, descriptors: f } = N(e), p = f[t]?.source, m = s(r);
690
+ }), Ye = () => Je;
691
+ function H(e, t, r = {}, i = {}) {
692
+ let a = i.skip === !0, { runtime: c, cache: u, client: d, descriptors: f } = P(e), p = f[t]?.source, m = s(r);
693
693
  m.current = r;
694
694
  let h = s(d);
695
695
  h.current = d;
696
- let g = s(() => H(h.current, t)(m.current)), _ = o(() => [t, m.current], [t, o(() => JSON.stringify(Object.entries(r).sort(([e], [t]) => e.localeCompare(t))), [r])]), v = l(n((e) => a ? () => {} : u.subscribe(_, g.current, c, e, p === void 0 ? {} : { source: p }).unsubscribe, [
696
+ let g = s(() => V(h.current, t)(m.current)), _ = o(() => [t, m.current], [t, o(() => JSON.stringify(Object.entries(r).sort(([e], [t]) => e.localeCompare(t))), [r])]), v = l(n((e) => a ? () => {} : u.subscribe(_, g.current, c, e, p === void 0 ? {} : { source: p }).unsubscribe, [
697
697
  u,
698
698
  c,
699
699
  p,
700
700
  a,
701
701
  _
702
- ]), n(() => a ? Ge : u.peek(_), [
702
+ ]), n(() => a ? Je : u.peek(_), [
703
703
  u,
704
704
  a,
705
705
  _
706
- ]), Ke), y = v.data !== void 0, b = y && (Array.isArray(v.data) ? v.data.length === 0 : v.data === null), x = {
706
+ ]), Ye), y = v.data !== void 0, b = y && (Array.isArray(v.data) ? v.data.length === 0 : v.data === null), x = {
707
707
  revision: v.revision,
708
708
  emittedAt: v.emittedAt,
709
709
  error: v.error,
@@ -746,8 +746,92 @@ function U(e, t, r = {}, i = {}) {
746
746
  };
747
747
  }
748
748
  //#endregion
749
+ //#region src/useEvent.ts
750
+ var U = {
751
+ status: "idle",
752
+ missed: 0,
753
+ lastMiss: void 0
754
+ }, Xe = class {
755
+ _tag = "EventStreamClosed";
756
+ };
757
+ function Ze(e, t, r, i = {}) {
758
+ let { skip: o = !1, apiName: l = "app", onMissed: u } = i, d = P(l), { runtime: p, client: m } = d, [h, _] = c(U), y = s(r);
759
+ y.current = r;
760
+ let b = s(u);
761
+ b.current = u;
762
+ let x = s(m);
763
+ x.current = m;
764
+ let S = s(p);
765
+ S.current = p;
766
+ let C = s(/* @__PURE__ */ new Map()), w = t === null ? null : JSON.stringify(Object.entries(t).sort(([e], [t]) => e < t ? -1 : 1)), T = s(t);
767
+ T.current = t;
768
+ let E = s(null);
769
+ E.current !== w && (E.current = w, C.current = /* @__PURE__ */ new Map());
770
+ let D = n((e, t) => {
771
+ e <= 0 || (_((n) => ({
772
+ ...n,
773
+ missed: n.missed + e,
774
+ lastMiss: {
775
+ count: e,
776
+ reason: t
777
+ }
778
+ })), b.current?.({
779
+ count: e,
780
+ reason: t
781
+ }));
782
+ }, []), O = !o && w !== null && !_e(d);
783
+ return a(() => {
784
+ if (!O) {
785
+ _(U);
786
+ return;
787
+ }
788
+ _((e) => ({
789
+ ...e,
790
+ status: "connecting"
791
+ }));
792
+ let t = 0, n = f.sync(() => {
793
+ let t = [...C.current].map(([e, t]) => ({
794
+ origin: e,
795
+ n: t
796
+ }));
797
+ return V(x.current, e.name)({
798
+ key: T.current,
799
+ ...t.length > 0 ? { resume: t } : {}
800
+ });
801
+ }), r = v.unwrap(n).pipe(v.tap(() => f.sync(() => {
802
+ t = 0;
803
+ })), v.concat(v.fail(new Xe())), v.retry(g.exponential("250 millis", 2).pipe(g.either(g.spaced("30 seconds")), g.jittered, g.tapOutput(() => f.sync(() => {
804
+ t += 1, _((e) => ({
805
+ ...e,
806
+ status: "connecting"
807
+ }));
808
+ }))))), i = S.current.runFork(v.runForEach(r, (e) => f.sync(() => {
809
+ if (e._tag === "attached") {
810
+ _((e) => ({
811
+ ...e,
812
+ status: "live"
813
+ }));
814
+ return;
815
+ }
816
+ if (e._tag === "gap") {
817
+ D(e.missed, e.reason);
818
+ return;
819
+ }
820
+ C.current.set(e.origin, Math.max(C.current.get(e.origin) ?? 0, e.n)), y.current(e.payload);
821
+ })));
822
+ return () => {
823
+ S.current.runFork(i.interruptAsFork(i.id()));
824
+ };
825
+ }, [
826
+ O,
827
+ w,
828
+ e.name,
829
+ D
830
+ ]), O ? h : U;
831
+ }
832
+ //#endregion
749
833
  //#region src/sequence.ts
750
- var qe = () => {
834
+ var Qe = () => {
751
835
  let e = (t) => ({
752
836
  steps: t,
753
837
  step: ((n, r, i) => e([...t, {
@@ -759,7 +843,7 @@ var qe = () => {
759
843
  }]))
760
844
  });
761
845
  return e([]);
762
- }, Je = async (e, t = {}) => {
846
+ }, $e = async (e, t = {}) => {
763
847
  let n = {}, r = [];
764
848
  for (let i of e.steps) {
765
849
  if (i.when !== void 0 && !i.when(n)) {
@@ -819,13 +903,13 @@ var qe = () => {
819
903
  ok: !0,
820
904
  data: n
821
905
  };
822
- }, Ye = (e = {}) => {
906
+ }, et = (e = {}) => {
823
907
  let [t, r] = c(!1), [i, a] = c(void 0), [o, l] = c(void 0), u = s(e);
824
908
  return u.current = e, {
825
909
  run: n(async (e, t = {}) => {
826
910
  r(!0), a(void 0), l(void 0);
827
911
  try {
828
- let n = await Je(e, {
912
+ let n = await $e(e, {
829
913
  ...u.current,
830
914
  ...t
831
915
  });
@@ -838,20 +922,20 @@ var qe = () => {
838
922
  error: i,
839
923
  failedStep: o
840
924
  };
841
- }, Xe = 100, W = [], Ze = /* @__PURE__ */ new Set(), Qe = [], $e = () => {
842
- Qe = W.slice();
843
- }, et = () => {
844
- $e();
845
- for (let e of Ze) try {
925
+ }, tt = 100, W = [], nt = /* @__PURE__ */ new Set(), rt = [], it = () => {
926
+ rt = W.slice();
927
+ }, at = () => {
928
+ it();
929
+ for (let e of nt) try {
846
930
  e();
847
931
  } catch {}
848
- }, tt = (e) => {
932
+ }, ot = (e) => {
849
933
  let t = {
850
934
  ...e,
851
935
  status: "pending",
852
936
  startedAt: Date.now()
853
937
  };
854
- W.unshift(t), W.length > Xe && (W.length = Xe), et();
938
+ W.unshift(t), W.length > tt && (W.length = tt), at();
855
939
  }, G = (e, t) => {
856
940
  let n = W.findIndex((t) => t.id === e);
857
941
  if (n === -1) return;
@@ -868,12 +952,12 @@ var qe = () => {
868
952
  error: t.error,
869
953
  settledAt: i,
870
954
  durationMs: i - r.startedAt
871
- }, et();
872
- }, nt = () => Qe, rt = (e) => (Ze.add(e), () => {
873
- Ze.delete(e);
874
- }), it = () => {
875
- W.length !== 0 && (W.length = 0, et());
876
- }, at = (e, t) => {
955
+ }, at();
956
+ }, st = () => rt, ct = (e) => (nt.add(e), () => {
957
+ nt.delete(e);
958
+ }), lt = () => {
959
+ W.length !== 0 && (W.length = 0, at());
960
+ }, ut = (e, t) => {
877
961
  if (t === void 0 || typeof e != "object" || !e) return e;
878
962
  try {
879
963
  Object.defineProperty(e, "__voltroTraceId", {
@@ -883,18 +967,18 @@ var qe = () => {
883
967
  });
884
968
  } catch {}
885
969
  return e;
886
- }, K, ot = (e) => {
970
+ }, K, dt = (e) => {
887
971
  K = e;
888
- }, st = () => K, ct = (e, t, n) => typeof e == "function" ? e(t, n) : e, lt = 0, ut = () => `mut_${++lt}`, dt = 0, ft = () => {
972
+ }, ft = () => K, pt = (e, t, n) => typeof e == "function" ? e(t, n) : e, mt = 0, ht = () => `mut_${++mt}`, gt = 0, _t = () => {
889
973
  let e = typeof crypto < "u" ? crypto : void 0;
890
- return e && typeof e.randomUUID == "function" ? e.randomUUID() : `idem_${Date.now().toString(36)}_${dt += 1}`;
891
- }, pt = (e, t) => e.pipe(f.locallyWith(x.currentHeaders, (e) => b.set(e, "idempotency-key", t))), mt = (e, t) => ({
974
+ return e && typeof e.randomUUID == "function" ? e.randomUUID() : `idem_${Date.now().toString(36)}_${gt += 1}`;
975
+ }, vt = (e, t) => e.pipe(f.locallyWith(S.currentHeaders, (e) => x.set(e, "idempotency-key", t))), yt = (e, t) => ({
892
976
  update: (n, r) => {
893
977
  e.update(n, r, t);
894
978
  },
895
979
  forTag: (n, r) => e.forTag(n, r, t)
896
980
  }), q = (e, t) => {
897
- let { runtime: r, cache: i, client: a, descriptors: l, errorBus: u } = N(e), d = l[t], p = d?.targets;
981
+ let { runtime: r, cache: i, client: a, descriptors: l, errorBus: u } = P(e), d = l[t], p = d?.targets;
898
982
  if (process.env.NODE_ENV !== "production") {
899
983
  let n = d?.kind;
900
984
  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.`);
@@ -902,12 +986,12 @@ var qe = () => {
902
986
  let [m, h] = c(!1), [g, _] = c(void 0), [v, y] = c(void 0), b = s(null), x = s(!1), S = n(async (n, o) => {
903
987
  let s = o?.onError !== void 0 || o?.notify?.error !== void 0, c = (e) => {
904
988
  o?.onError?.(e, n);
905
- let t = ct(o?.notify?.error, e, n);
989
+ let t = pt(o?.notify?.error, e, n);
906
990
  t !== void 0 && K?.error(t);
907
991
  };
908
992
  h(!0), _(void 0);
909
- let l = ut(), d = o?.idempotencyKey ?? ft();
910
- tt({
993
+ let l = ht(), d = o?.idempotencyKey ?? _t();
994
+ ot({
911
995
  id: l,
912
996
  apiName: e,
913
997
  tag: t,
@@ -915,7 +999,7 @@ var qe = () => {
915
999
  });
916
1000
  let m = b.current, g = x.current;
917
1001
  if (m) try {
918
- m(mt(i, l), n);
1002
+ m(yt(i, l), n);
919
1003
  } catch (e) {
920
1004
  if (_(e), h(!1), i.revertByMutation(l), G(l, {
921
1005
  status: "error",
@@ -926,14 +1010,14 @@ var qe = () => {
926
1010
  else !g && p && p.length > 0 && i.autoApply(p, n, l);
927
1011
  let v;
928
1012
  try {
929
- let s = H(a, t), c = f.currentSpan.pipe(f.tap((e) => f.sync(() => {
930
- v = e.traceId, w({
1013
+ let s = V(a, t), c = f.currentSpan.pipe(f.tap((e) => f.sync(() => {
1014
+ v = e.traceId, T({
931
1015
  traceId: e.traceId,
932
1016
  spanId: e.spanId,
933
1017
  source: "mutation",
934
1018
  tag: t
935
1019
  });
936
- })), f.catchAll(() => f.void), f.zipRight(pt(s(n), d))).pipe(f.withSpan(`client.mutation.${t}`, { attributes: {
1020
+ })), f.catchAll(() => f.void), f.zipRight(vt(s(n), d))).pipe(f.withSpan(`client.mutation.${t}`, { attributes: {
937
1021
  "voltro.api": e,
938
1022
  "voltro.mutationId": l,
939
1023
  "rpc.tag": t
@@ -942,10 +1026,10 @@ var qe = () => {
942
1026
  status: "success",
943
1027
  output: u
944
1028
  }), i.confirmByMutation(l), o?.onSuccess?.(u, n);
945
- let p = ct(o?.notify?.success, u, n);
1029
+ let p = pt(o?.notify?.success, u, n);
946
1030
  return p !== void 0 && K?.success(p), u;
947
1031
  } catch (e) {
948
- let n = at(e, v);
1032
+ let n = ut(e, v);
949
1033
  if (_(n), G(l, {
950
1034
  status: "error",
951
1035
  error: n
@@ -983,7 +1067,7 @@ var qe = () => {
983
1067
  g,
984
1068
  v
985
1069
  ]);
986
- }, ht = (e, t) => {
1070
+ }, bt = (e, t) => {
987
1071
  if (t === void 0 || typeof e != "object" || !e) return e;
988
1072
  try {
989
1073
  Object.defineProperty(e, "__voltroTraceId", {
@@ -993,8 +1077,8 @@ var qe = () => {
993
1077
  });
994
1078
  } catch {}
995
1079
  return e;
996
- }, gt = (e, t, n) => typeof e == "function" ? e(t, n) : e, _t = 0, vt = () => `act_${++_t}`, J = (e, t) => {
997
- let { runtime: r, client: i, descriptors: a, errorBus: s } = N(e);
1080
+ }, xt = (e, t, n) => typeof e == "function" ? e(t, n) : e, St = 0, Ct = () => `act_${++St}`, J = (e, t) => {
1081
+ let { runtime: r, client: i, descriptors: a, errorBus: s } = P(e);
998
1082
  if (process.env.NODE_ENV !== "production") {
999
1083
  let n = a[t]?.kind;
1000
1084
  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.`);
@@ -1002,8 +1086,8 @@ var qe = () => {
1002
1086
  let [l, u] = c(!1), [d, p] = c(void 0), [m, h] = c(void 0), g = n(async (n, a) => {
1003
1087
  let o = a?.onError !== void 0 || a?.notify?.error !== void 0;
1004
1088
  u(!0), p(void 0);
1005
- let c = vt(), l = a?.idempotencyKey ?? ft();
1006
- tt({
1089
+ let c = Ct(), l = a?.idempotencyKey ?? _t();
1090
+ ot({
1007
1091
  id: c,
1008
1092
  apiName: e,
1009
1093
  tag: t,
@@ -1011,14 +1095,14 @@ var qe = () => {
1011
1095
  });
1012
1096
  let d;
1013
1097
  try {
1014
- let o = H(i, t), s = f.currentSpan.pipe(f.tap((e) => f.sync(() => {
1015
- d = e.traceId, w({
1098
+ let o = V(i, t), s = f.currentSpan.pipe(f.tap((e) => f.sync(() => {
1099
+ d = e.traceId, T({
1016
1100
  traceId: e.traceId,
1017
1101
  spanId: e.spanId,
1018
1102
  source: "action",
1019
1103
  tag: t
1020
1104
  });
1021
- })), f.catchAll(() => f.void), f.zipRight(pt(o(n), l))).pipe(f.withSpan(`client.action.${t}`, { attributes: {
1105
+ })), f.catchAll(() => f.void), f.zipRight(vt(o(n), l))).pipe(f.withSpan(`client.action.${t}`, { attributes: {
1022
1106
  "voltro.api": e,
1023
1107
  "voltro.actionId": c,
1024
1108
  "rpc.tag": t
@@ -1027,10 +1111,10 @@ var qe = () => {
1027
1111
  status: "success",
1028
1112
  output: u
1029
1113
  }), a?.onSuccess?.(u, n);
1030
- let p = gt(a?.notify?.success, u, n);
1031
- return p !== void 0 && st()?.success(p), u;
1114
+ let p = xt(a?.notify?.success, u, n);
1115
+ return p !== void 0 && ft()?.success(p), u;
1032
1116
  } catch (e) {
1033
- let r = ht(e, d);
1117
+ let r = bt(e, d);
1034
1118
  if (p(r), G(c, {
1035
1119
  status: "error",
1036
1120
  error: r
@@ -1041,8 +1125,8 @@ var qe = () => {
1041
1125
  ...d === void 0 ? {} : { traceId: d }
1042
1126
  }), o) {
1043
1127
  a?.onError?.(r, n);
1044
- let e = gt(a?.notify?.error, r, n);
1045
- e !== void 0 && st()?.error(e);
1128
+ let e = xt(a?.notify?.error, r, n);
1129
+ e !== void 0 && ft()?.error(e);
1046
1130
  return;
1047
1131
  }
1048
1132
  throw r;
@@ -1067,7 +1151,7 @@ var qe = () => {
1067
1151
  d,
1068
1152
  m
1069
1153
  ]);
1070
- }, Y = "storage.mintUploadTicket", yt = "storage.mintPresignedUpload", bt = "storage.finalizeUpload", xt = "storage.beginResumableUpload", St = "storage.beginMultipartUpload", Ct = "storage.signMultipartPart", wt = "storage.completeMultipartUpload", Tt = "storage.abortMultipartUpload", Et = (e, t, n, r) => new Promise((i, a) => {
1154
+ }, wt = "storage.mintUploadTicket", Tt = "storage.mintPresignedUpload", Et = "storage.finalizeUpload", Dt = "storage.beginResumableUpload", Ot = "storage.beginMultipartUpload", kt = "storage.signMultipartPart", At = "storage.completeMultipartUpload", jt = "storage.abortMultipartUpload", Mt = (e, t, n, r) => new Promise((i, a) => {
1071
1155
  let o = new XMLHttpRequest();
1072
1156
  if (o.open("PUT", e), o.upload.onprogress = (e) => {
1073
1157
  e.lengthComputable && n(e.loaded / e.total);
@@ -1081,7 +1165,7 @@ var qe = () => {
1081
1165
  return;
1082
1166
  }
1083
1167
  r.addEventListener("abort", () => o.abort(), { once: !0 }), o.send(t);
1084
- }), Dt = (e, t, n, r, i, a) => new Promise((o, s) => {
1168
+ }), Nt = (e, t, n, r, i, a) => new Promise((o, s) => {
1085
1169
  let c = new XMLHttpRequest();
1086
1170
  if (c.open("POST", e), c.setRequestHeader("content-type", t), c.upload.onprogress = (e) => {
1087
1171
  e.lengthComputable && r(e.loaded / e.total);
@@ -1099,7 +1183,7 @@ var qe = () => {
1099
1183
  return;
1100
1184
  }
1101
1185
  i.addEventListener("abort", () => c.abort(), { once: !0 }), c.send(n);
1102
- }), Ot = (e, t, n, r, i) => new Promise((a, o) => {
1186
+ }), Pt = (e, t, n, r, i) => new Promise((a, o) => {
1103
1187
  let s = new XMLHttpRequest();
1104
1188
  if (s.open("PUT", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
1105
1189
  e.lengthComputable && r(e.loaded / e.total);
@@ -1110,7 +1194,7 @@ var qe = () => {
1110
1194
  return;
1111
1195
  }
1112
1196
  i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
1113
- }), kt = (e, t, n, r, i) => new Promise((a, o) => {
1197
+ }), Ft = (e, t, n, r, i) => new Promise((a, o) => {
1114
1198
  let s = new XMLHttpRequest();
1115
1199
  if (s.open("POST", e), s.setRequestHeader("content-type", t), s.upload.onprogress = (e) => {
1116
1200
  e.lengthComputable && r(e.loaded / e.total);
@@ -1126,8 +1210,8 @@ var qe = () => {
1126
1210
  return;
1127
1211
  }
1128
1212
  i.addEventListener("abort", () => s.abort(), { once: !0 }), s.send(n);
1129
- }), At = (e, t = {}) => {
1130
- let { runtime: r, client: i, inspectBaseUrl: a, errorBus: l } = N(e), [u, d] = c(0), [f, p] = c("idle"), [m, h] = c(void 0), g = s(null), _ = n(() => {
1213
+ }), It = (e, t = {}) => {
1214
+ let { runtime: r, client: i, inspectBaseUrl: a, errorBus: l } = P(e), [u, d] = c(0), [f, p] = c("idle"), [m, h] = c(void 0), g = s(null), _ = n(() => {
1131
1215
  d(0), p("idle"), h(void 0);
1132
1216
  }, []), v = n(() => {
1133
1217
  g.current?.abort();
@@ -1147,16 +1231,16 @@ var qe = () => {
1147
1231
  ...e.width === void 0 ? {} : { width: e.width },
1148
1232
  ...e.height === void 0 ? {} : { height: e.height }
1149
1233
  }), g = async () => {
1150
- let s = n.mintTag ?? t.mintTag ?? Y, l = H(i, s), u = await r.runPromise(l({
1234
+ let s = n.mintTag ?? t.mintTag ?? wt, l = V(i, s), u = await r.runPromise(l({
1151
1235
  contentType: c,
1152
1236
  ...m,
1153
1237
  ...d ? { key: d } : {}
1154
- })), f = await kt(y(u.uploadUrl), c, e, o, a);
1238
+ })), f = await Ft(y(u.uploadUrl), c, e, o, a);
1155
1239
  return h(f);
1156
1240
  }, _ = async () => {
1157
- let s = n.presignMintTag ?? t.presignMintTag ?? yt, l = n.finalizeTag ?? t.finalizeTag ?? bt, u;
1241
+ let s = n.presignMintTag ?? t.presignMintTag ?? Tt, l = n.finalizeTag ?? t.finalizeTag ?? Et, u;
1158
1242
  try {
1159
- let e = H(i, s);
1243
+ let e = V(i, s);
1160
1244
  u = await r.runPromise(e({
1161
1245
  contentType: c,
1162
1246
  ...m
@@ -1164,11 +1248,11 @@ var qe = () => {
1164
1248
  } catch {
1165
1249
  return null;
1166
1250
  }
1167
- await Ot(u.uploadUrl, c, e, o, a);
1168
- let d = H(i, l), f = await r.runPromise(d({ finalizeToken: u.finalizeToken }));
1251
+ await Pt(u.uploadUrl, c, e, o, a);
1252
+ let d = V(i, l), f = await r.runPromise(d({ finalizeToken: u.finalizeToken }));
1169
1253
  return h(f);
1170
1254
  }, v = async () => {
1171
- let s = n.beginResumableTag ?? t.beginResumableTag ?? xt, l = H(i, s), u = e.size, d = n.chunkSize ?? t.chunkSize, f = await r.runPromise(l({
1255
+ let s = n.beginResumableTag ?? t.beginResumableTag ?? Dt, l = V(i, s), u = e.size, d = n.chunkSize ?? t.chunkSize, f = await r.runPromise(l({
1172
1256
  contentType: c,
1173
1257
  size: u,
1174
1258
  ...m,
@@ -1179,7 +1263,7 @@ var qe = () => {
1179
1263
  for (;;) {
1180
1264
  if (a.aborted) throw new DOMException("upload aborted", "AbortError");
1181
1265
  try {
1182
- let e = await Dt(`${p}?${`token=${encodeURIComponent(f.resumableToken)}&index=${t}${s ? "&final=1" : ""}`}`, c, i, (e) => o((b + e * l) / u), a, s);
1266
+ let e = await Nt(`${p}?${`token=${encodeURIComponent(f.resumableToken)}&index=${t}${s ? "&final=1" : ""}`}`, c, i, (e) => o((b + e * l) / u), a, s);
1183
1267
  s && (x = e);
1184
1268
  break;
1185
1269
  } catch (e) {
@@ -1191,9 +1275,9 @@ var qe = () => {
1191
1275
  if (!x) throw Error("resumable upload produced no final reply");
1192
1276
  return h(x);
1193
1277
  }, b = async () => {
1194
- let s = n.multipartBeginTag ?? t.multipartBeginTag ?? St, u = n.multipartSignTag ?? t.multipartSignTag ?? Ct, d = n.multipartCompleteTag ?? t.multipartCompleteTag ?? wt, f = n.multipartAbortTag ?? t.multipartAbortTag ?? Tt, p = e.size, h = n.chunkSize ?? t.chunkSize, g;
1278
+ let s = n.multipartBeginTag ?? t.multipartBeginTag ?? Ot, u = n.multipartSignTag ?? t.multipartSignTag ?? kt, d = n.multipartCompleteTag ?? t.multipartCompleteTag ?? At, f = n.multipartAbortTag ?? t.multipartAbortTag ?? jt, p = e.size, h = n.chunkSize ?? t.chunkSize, g;
1195
1279
  try {
1196
- let e = H(i, s);
1280
+ let e = V(i, s);
1197
1281
  g = await r.runPromise(e({
1198
1282
  contentType: c,
1199
1283
  size: p,
@@ -1203,7 +1287,7 @@ var qe = () => {
1203
1287
  } catch {
1204
1288
  return null;
1205
1289
  }
1206
- let _ = H(i, u), v = H(i, d), b = H(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;
1290
+ let _ = V(i, u), v = V(i, d), b = V(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;
1207
1291
  try {
1208
1292
  for (let t = 0; t < S; t++) {
1209
1293
  let n = t * x, i = Math.min(p, n + x), s = e.slice(n, i), c = t + 1, l = i - n, u = 0;
@@ -1213,7 +1297,7 @@ var qe = () => {
1213
1297
  let { url: e } = await r.runPromise(_({
1214
1298
  multipartToken: g.multipartToken,
1215
1299
  partNumber: c
1216
- })), t = await Et(e, s, (e) => o((T + e * l) / p), a);
1300
+ })), t = await Mt(e, s, (e) => o((T + e * l) / p), a);
1217
1301
  w.push({
1218
1302
  partNumber: c,
1219
1303
  etag: t
@@ -1287,7 +1371,7 @@ var qe = () => {
1287
1371
  } catch (e) {
1288
1372
  throw p("error"), h(e), e instanceof DOMException && e.name === "AbortError" || l.emit({
1289
1373
  source: "action",
1290
- tag: n.mintTag ?? t.mintTag ?? Y,
1374
+ tag: n.mintTag ?? t.mintTag ?? wt,
1291
1375
  error: e
1292
1376
  }), e;
1293
1377
  }
@@ -1313,7 +1397,7 @@ var qe = () => {
1313
1397
  } catch (e) {
1314
1398
  throw r.abort(), p("error"), h(e), e instanceof DOMException && e.name === "AbortError" || l.emit({
1315
1399
  source: "action",
1316
- tag: n.mintTag ?? t.mintTag ?? Y,
1400
+ tag: n.mintTag ?? t.mintTag ?? wt,
1317
1401
  error: e
1318
1402
  }), e;
1319
1403
  }
@@ -1358,9 +1442,9 @@ var qe = () => {
1358
1442
  w,
1359
1443
  T
1360
1444
  ]);
1361
- }, X = async (e) => {
1362
- let t = H(e.client, e.tag), n = f.currentSpan.pipe(f.tap((t) => f.sync(() => {
1363
- w({
1445
+ }, Y = async (e) => {
1446
+ let t = V(e.client, e.tag), n = f.currentSpan.pipe(f.tap((t) => f.sync(() => {
1447
+ T({
1364
1448
  traceId: t.traceId,
1365
1449
  spanId: t.spanId,
1366
1450
  source: "mutation",
@@ -1371,8 +1455,8 @@ var qe = () => {
1371
1455
  "rpc.tag": e.tag
1372
1456
  } }));
1373
1457
  return e.runtime.runPromise(n);
1374
- }, jt = (e, t) => {
1375
- let { runtime: r, client: i, descriptors: a } = N(e);
1458
+ }, Lt = (e, t) => {
1459
+ let { runtime: r, client: i, descriptors: a } = P(e);
1376
1460
  if (process.env.NODE_ENV !== "production") {
1377
1461
  let n = a[t]?.kind;
1378
1462
  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.`);
@@ -1380,7 +1464,7 @@ var qe = () => {
1380
1464
  let [s, l] = c(!1), [u, d] = c(void 0), [f, p] = c(void 0), m = n(async (n) => {
1381
1465
  l(!0), d(void 0);
1382
1466
  try {
1383
- let a = await X({
1467
+ let a = await Y({
1384
1468
  apiName: e,
1385
1469
  runtime: r,
1386
1470
  client: i,
@@ -1400,7 +1484,7 @@ var qe = () => {
1400
1484
  i,
1401
1485
  t
1402
1486
  ]), h = n(async (t) => {
1403
- await X({
1487
+ await Y({
1404
1488
  apiName: e,
1405
1489
  runtime: r,
1406
1490
  client: i,
@@ -1413,7 +1497,7 @@ var qe = () => {
1413
1497
  r,
1414
1498
  i
1415
1499
  ]), g = n(async (t) => {
1416
- await X({
1500
+ await Y({
1417
1501
  apiName: e,
1418
1502
  runtime: r,
1419
1503
  client: i,
@@ -1425,7 +1509,7 @@ var qe = () => {
1425
1509
  e,
1426
1510
  r,
1427
1511
  i
1428
- ]), _ = n(async (t, n, a) => X({
1512
+ ]), _ = n(async (t, n, a) => Y({
1429
1513
  apiName: e,
1430
1514
  runtime: r,
1431
1515
  client: i,
@@ -1440,7 +1524,7 @@ var qe = () => {
1440
1524
  e,
1441
1525
  r,
1442
1526
  i
1443
- ]), v = n(async (t, n, a, o) => X({
1527
+ ]), v = n(async (t, n, a, o) => Y({
1444
1528
  apiName: e,
1445
1529
  runtime: r,
1446
1530
  client: i,
@@ -1476,11 +1560,11 @@ var qe = () => {
1476
1560
  u,
1477
1561
  f
1478
1562
  ]);
1479
- }, Mt = (e) => {
1480
- let { runtime: t, client: r } = N(e), [i, a] = c(!1), [s, l] = c(void 0), [u, d] = c(void 0), f = n(async (n, i, o) => {
1563
+ }, Rt = (e) => {
1564
+ let { runtime: t, client: r } = P(e), [i, a] = c(!1), [s, l] = c(void 0), [u, d] = c(void 0), f = n(async (n, i, o) => {
1481
1565
  a(!0), l(void 0);
1482
1566
  try {
1483
- let a = await X({
1567
+ let a = await Y({
1484
1568
  apiName: e,
1485
1569
  runtime: t,
1486
1570
  client: r,
@@ -1514,11 +1598,11 @@ var qe = () => {
1514
1598
  s,
1515
1599
  u
1516
1600
  ]);
1517
- }, Nt = (e) => {
1518
- let { runtime: t, client: r } = N(e), [i, a] = c(!1), [s, l] = c(void 0), [u, d] = c(void 0), f = n(async (n, i, o, s) => {
1601
+ }, zt = (e) => {
1602
+ let { runtime: t, client: r } = P(e), [i, a] = c(!1), [s, l] = c(void 0), [u, d] = c(void 0), f = n(async (n, i, o, s) => {
1519
1603
  a(!0), l(void 0);
1520
1604
  try {
1521
- let a = await X({
1605
+ let a = await Y({
1522
1606
  apiName: e,
1523
1607
  runtime: t,
1524
1608
  client: r,
@@ -1553,8 +1637,8 @@ var qe = () => {
1553
1637
  s,
1554
1638
  u
1555
1639
  ]);
1556
- }, Pt = (e, t) => {
1557
- let n = U(e, "__voltro.workflow.run", t ? { id: t } : {}, { skip: t === void 0 });
1640
+ }, Bt = (e, t) => {
1641
+ let n = H(e, "__voltro.workflow.run", t ? { id: t } : {}, { skip: t === void 0 });
1558
1642
  return n.loading || n.idle ? {
1559
1643
  ...n,
1560
1644
  run: void 0
@@ -1562,8 +1646,8 @@ var qe = () => {
1562
1646
  ...n,
1563
1647
  run: n.data[0]
1564
1648
  };
1565
- }, Ft = (e, t = {}, n = {}) => {
1566
- let r = U(e, "__voltro.workflow.runs", t, n);
1649
+ }, Vt = (e, t = {}, n = {}) => {
1650
+ let r = H(e, "__voltro.workflow.runs", t, n);
1567
1651
  return r.loading || r.idle ? {
1568
1652
  ...r,
1569
1653
  runs: []
@@ -1571,8 +1655,8 @@ var qe = () => {
1571
1655
  ...r,
1572
1656
  runs: r.data
1573
1657
  };
1574
- }, It = (e, t) => {
1575
- let n = U(e, "__voltro.workflow.run.steps", t ? { runId: t } : {}, { skip: t === void 0 });
1658
+ }, Ht = (e, t) => {
1659
+ let n = H(e, "__voltro.workflow.run.steps", t ? { runId: t } : {}, { skip: t === void 0 });
1576
1660
  return n.loading || n.idle ? {
1577
1661
  ...n,
1578
1662
  steps: []
@@ -1580,8 +1664,8 @@ var qe = () => {
1580
1664
  ...n,
1581
1665
  steps: n.data
1582
1666
  };
1583
- }, Lt = (e, t) => {
1584
- let n = U(e, "__voltro.workflow.run.events", t ? { runId: t } : {}, { skip: t === void 0 });
1667
+ }, Ut = (e, t) => {
1668
+ let n = H(e, "__voltro.workflow.run.events", t ? { runId: t } : {}, { skip: t === void 0 });
1585
1669
  return n.loading || n.idle ? {
1586
1670
  ...n,
1587
1671
  events: []
@@ -1589,8 +1673,8 @@ var qe = () => {
1589
1673
  ...n,
1590
1674
  events: n.data
1591
1675
  };
1592
- }, Rt = Lt, zt = (e, t = {}, n = {}) => {
1593
- let r = U(e, "__voltro.workflow.domainEvents", t, n);
1676
+ }, Wt = Ut, Gt = (e, t = {}, n = {}) => {
1677
+ let r = H(e, "__voltro.workflow.domainEvents", t, n);
1594
1678
  return r.loading || r.idle ? {
1595
1679
  ...r,
1596
1680
  events: []
@@ -1598,8 +1682,8 @@ var qe = () => {
1598
1682
  ...r,
1599
1683
  events: r.data
1600
1684
  };
1601
- }, Bt = (e, t) => {
1602
- let n = U(e, "__voltro.workflow.event.deliveries", t ? { eventId: t } : {}, { skip: t === void 0 });
1685
+ }, Kt = (e, t) => {
1686
+ let n = H(e, "__voltro.workflow.event.deliveries", t ? { eventId: t } : {}, { skip: t === void 0 });
1603
1687
  return n.loading || n.idle ? {
1604
1688
  ...n,
1605
1689
  deliveries: []
@@ -1607,42 +1691,42 @@ var qe = () => {
1607
1691
  ...n,
1608
1692
  deliveries: n.data
1609
1693
  };
1610
- }, Vt = (e, t) => {
1694
+ }, qt = (e, t) => {
1611
1695
  let n = e.payload;
1612
1696
  if (!n || typeof n != "object") return;
1613
1697
  let r = n[t];
1614
1698
  return typeof r == "string" ? r : void 0;
1615
- }, Ht = (e) => {
1699
+ }, Jt = (e) => {
1616
1700
  let t = e.payload;
1617
1701
  if (!t || typeof t != "object") return;
1618
1702
  let n = t.updateId;
1619
1703
  return typeof n == "string" ? n : void 0;
1620
- }, Ut = (e) => {
1704
+ }, Yt = (e) => {
1621
1705
  let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set();
1622
1706
  for (let r of e) if (r.eventType === "signal-received") {
1623
- let e = Vt(r, "signalName");
1707
+ let e = qt(r, "signalName");
1624
1708
  e && t.add(e);
1625
1709
  } else if (r.eventType === "update-completed" || r.eventType === "update-failed") {
1626
- let e = Ht(r);
1710
+ let e = Jt(r);
1627
1711
  e && n.add(e);
1628
1712
  }
1629
1713
  for (let r = e.length - 1; r >= 0; --r) {
1630
1714
  let i = e[r];
1631
1715
  if (i.eventType === "signal-awaited") {
1632
- let e = Vt(i, "signalName");
1716
+ let e = qt(i, "signalName");
1633
1717
  if (e && !t.has(e)) return {
1634
1718
  name: e,
1635
1719
  kind: "signal"
1636
1720
  };
1637
1721
  } else if (i.eventType === "update-requested") {
1638
- let e = Ht(i), t = Vt(i, "updateName");
1722
+ let e = Jt(i), t = qt(i, "updateName");
1639
1723
  if (t && (!e || !n.has(e))) return {
1640
1724
  name: t,
1641
1725
  kind: "update"
1642
1726
  };
1643
1727
  }
1644
1728
  }
1645
- }, Wt = (e) => e.find((e) => e.status === "running") || (e.length > 0 ? e[e.length - 1] : void 0), Gt = (e, t) => {
1729
+ }, Xt = (e) => e.find((e) => e.status === "running") || (e.length > 0 ? e[e.length - 1] : void 0), Zt = (e, t) => {
1646
1730
  if (!e || e.status !== "failed") return;
1647
1731
  let n = t.find((e) => e.status === "failed");
1648
1732
  return {
@@ -1650,8 +1734,8 @@ var qe = () => {
1650
1734
  message: e.errorMessage,
1651
1735
  step: n?.stepName
1652
1736
  };
1653
- }, Kt = (e, t) => {
1654
- let r = Pt(e, t), i = It(e, t), a = Lt(e, t), s = jt(e, r.run?.tag ?? ""), c = r.run, l = i.steps, u = a.events, d = n(async () => {
1737
+ }, Qt = (e, t) => {
1738
+ let r = Bt(e, t), i = Ht(e, t), a = Ut(e, t), s = Lt(e, r.run?.tag ?? ""), c = r.run, l = i.steps, u = a.events, d = n(async () => {
1655
1739
  if (!c) throw Error("useWorkflowRunState: no run loaded — cannot cancel");
1656
1740
  await s.cancel({
1657
1741
  workflowName: c.tag,
@@ -1675,9 +1759,9 @@ var qe = () => {
1675
1759
  status: c?.status,
1676
1760
  steps: l,
1677
1761
  events: u,
1678
- currentStep: Wt(l),
1679
- waitingFor: c?.status === "suspended" ? Ut(u) : void 0,
1680
- error: Gt(c, l),
1762
+ currentStep: Xt(l),
1763
+ waitingFor: c?.status === "suspended" ? Yt(u) : void 0,
1764
+ error: Zt(c, l),
1681
1765
  traceId: c?.traceId,
1682
1766
  loading: r.data === void 0,
1683
1767
  cancel: d,
@@ -1694,8 +1778,8 @@ var qe = () => {
1694
1778
  p,
1695
1779
  m
1696
1780
  ]);
1697
- }, qt = (e, t) => {
1698
- let { runtime: r, client: i } = N(e), [a, o] = c([]), [l, d] = c("idle"), [p, h] = c(void 0), g = s(null), v = n(() => {
1781
+ }, $t = (e, t) => {
1782
+ let { runtime: r, client: i } = P(e), [a, o] = c([]), [l, d] = c("idle"), [p, h] = c(void 0), g = s(null), _ = n(() => {
1699
1783
  let e = g.current;
1700
1784
  e && (g.current = null, r.runFork(m.interrupt(e)), d((e) => e === "streaming" ? "idle" : e));
1701
1785
  }, [r]);
@@ -1706,7 +1790,7 @@ var qe = () => {
1706
1790
  start: n((e = {}) => {
1707
1791
  let n = g.current;
1708
1792
  n && r.runFork(m.interrupt(n)), o([]), h(void 0), d("streaming");
1709
- let a = H(i, t)(e), s = _.runForEach(a, (e) => f.sync(() => o((t) => [...t, e]))).pipe(f.matchCause({
1793
+ let a = V(i, t)(e), s = v.runForEach(a, (e) => f.sync(() => o((t) => [...t, e]))).pipe(f.matchCause({
1710
1794
  onSuccess: () => {
1711
1795
  d("done");
1712
1796
  },
@@ -1720,9 +1804,9 @@ var qe = () => {
1720
1804
  i,
1721
1805
  t
1722
1806
  ]),
1723
- cancel: v
1807
+ cancel: _
1724
1808
  };
1725
- }, Jt = (e, t, n, r) => {
1809
+ }, en = (e, t, n, r) => {
1726
1810
  let i = 0, a = !1, o = (e) => f.sync(() => {
1727
1811
  e.seq <= i || (i = e.seq, n.onEvent(e.event), r.isTerminal(e.event) && (a = !0));
1728
1812
  }), s = (e, t, a) => {
@@ -1739,21 +1823,21 @@ var qe = () => {
1739
1823
  ...t,
1740
1824
  fromSeq: c
1741
1825
  });
1742
- return _.runForEach(l, o).pipe(f.matchCauseEffect({
1826
+ return v.runForEach(l, o).pipe(f.matchCauseEffect({
1743
1827
  onSuccess: () => a ? f.sync(() => n.onStatus("done")) : s(r, c, void 0),
1744
1828
  onFailure: (e) => u.isInterruptedOnly(e) ? f.void : a ? f.sync(() => n.onStatus("done")) : s(r, c, u.squash(e))
1745
1829
  }));
1746
1830
  });
1747
1831
  return c(0);
1748
- }, Yt = (e) => {
1832
+ }, tn = (e) => {
1749
1833
  let t = e?._tag;
1750
1834
  return t === "done" || t === "error";
1751
- }, Xt = (e, t, r = {}) => {
1752
- let { runtime: i, client: a } = N(e), [o, l] = c([]), [u, d] = c("idle"), [f, p] = c(0), [h, g] = c(void 0), _ = s(null), v = {
1835
+ }, nn = (e, t, r = {}) => {
1836
+ let { runtime: i, client: a } = P(e), [o, l] = c([]), [u, d] = c("idle"), [f, p] = c(0), [h, g] = c(void 0), _ = s(null), v = {
1753
1837
  maxReconnects: r.maxReconnects ?? 6,
1754
1838
  backoffMs: r.backoffMs ?? 400,
1755
1839
  maxBackoffMs: r.maxBackoffMs ?? 8e3,
1756
- isTerminal: r.isTerminal ?? Yt
1840
+ isTerminal: r.isTerminal ?? tn
1757
1841
  }, y = n(() => {
1758
1842
  let e = _.current;
1759
1843
  e && (_.current = null, i.runFork(m.interrupt(e)), d((e) => e === "streaming" || e === "reconnecting" ? "idle" : e));
@@ -1766,13 +1850,13 @@ var qe = () => {
1766
1850
  start: n((e = {}) => {
1767
1851
  let n = _.current;
1768
1852
  n && i.runFork(m.interrupt(n)), l([]), g(void 0), p(0), d("streaming");
1769
- let r = H(a, t), o = {
1853
+ let r = V(a, t), o = {
1770
1854
  onEvent: (e) => l((t) => [...t, e]),
1771
1855
  onStatus: d,
1772
1856
  onReconnect: () => p((e) => e + 1),
1773
1857
  onError: g
1774
1858
  };
1775
- _.current = i.runFork(Jt(r, e, o, v));
1859
+ _.current = i.runFork(en(r, e, o, v));
1776
1860
  }, [
1777
1861
  i,
1778
1862
  a,
@@ -1784,13 +1868,13 @@ var qe = () => {
1784
1868
  ]),
1785
1869
  cancel: y
1786
1870
  };
1787
- }, Zt = (e, t) => e.order - t.order || (e.stepOrder ?? 0) - (t.stepOrder ?? 0), Qt = (e) => {
1871
+ }, rn = (e, t) => e.order - t.order || (e.stepOrder ?? 0) - (t.stepOrder ?? 0), an = (e) => {
1788
1872
  for (let t = e.length - 1; t >= 0; --t) {
1789
1873
  let n = e[t];
1790
1874
  if (n.role === "user" && n.content) return n.content;
1791
1875
  }
1792
- }, $t = (e, t, r) => {
1793
- let { threadId: i } = r, a = U(e, `${t}.messages`, { threadId: i }), s = J(e, `${t}.send`), c = o(() => [...a.data ?? []].sort(Zt), [a.data]), l = n((e, t = {}) => s.run({
1876
+ }, on = (e, t, r) => {
1877
+ let { threadId: i } = r, a = H(e, `${t}.messages`, { threadId: i }), s = J(e, `${t}.send`), c = o(() => [...a.data ?? []].sort(rn), [a.data]), l = n((e, t = {}) => s.run({
1794
1878
  threadId: i,
1795
1879
  order: a.data?.length ?? 0,
1796
1880
  prompt: e,
@@ -1800,7 +1884,7 @@ var qe = () => {
1800
1884
  i,
1801
1885
  a.data
1802
1886
  ]), u = n(() => {
1803
- let e = Qt(c);
1887
+ let e = an(c);
1804
1888
  return e === void 0 ? void 0 : l(e);
1805
1889
  }, [c, l]);
1806
1890
  return o(() => ({
@@ -1820,8 +1904,8 @@ var qe = () => {
1820
1904
  l,
1821
1905
  u
1822
1906
  ]);
1823
- }, en = (e, t) => {
1824
- let { events: r, status: i, error: l, start: u, cancel: d } = qt(e, t), [f, p] = c([]), m = s(null), h = o(() => r.filter((e) => e._tag === "token").map((e) => e.text ?? "").join(""), [r]);
1907
+ }, sn = (e, t) => {
1908
+ let { events: r, status: i, error: l, start: u, cancel: d } = $t(e, t), [f, p] = c([]), m = s(null), h = o(() => r.filter((e) => e._tag === "token").map((e) => e.text ?? "").join(""), [r]);
1825
1909
  return a(() => {
1826
1910
  if (i !== "done" || m.current === null) return;
1827
1911
  let e = m.current;
@@ -1847,7 +1931,7 @@ var qe = () => {
1847
1931
  }, [u]),
1848
1932
  cancel: d
1849
1933
  };
1850
- }, tn = (e, t) => {
1934
+ }, cn = (e, t) => {
1851
1935
  let r = J(e, t), [i, a] = c(void 0), s = n(async (e) => {
1852
1936
  let t = await r.run({ question: e });
1853
1937
  return a(t), t;
@@ -1865,43 +1949,43 @@ var qe = () => {
1865
1949
  r.error,
1866
1950
  l
1867
1951
  ]);
1868
- }, nn = (e) => {
1869
- let { cache: t, runtime: r } = N(e);
1952
+ }, ln = (e) => {
1953
+ let { cache: t, runtime: r } = P(e);
1870
1954
  return n(() => {
1871
1955
  t.refreshAll(r);
1872
1956
  }, [t, r]);
1873
- }, rn = /* @__PURE__ */ new Set(), an = (e) => {
1874
- for (let t of rn) try {
1957
+ }, X = /* @__PURE__ */ new Set(), un = (e) => {
1958
+ for (let t of X) try {
1875
1959
  t(e);
1876
1960
  } catch {}
1877
- }, on = (e) => (rn.add(e), () => {
1878
- rn.delete(e);
1879
- }), sn = (e, t) => {
1880
- an({
1961
+ }, dn = (e) => (X.add(e), () => {
1962
+ X.delete(e);
1963
+ }), fn = (e, t) => {
1964
+ un({
1881
1965
  error: e,
1882
1966
  source: "manual",
1883
1967
  ...t ? { context: t } : {}
1884
1968
  });
1885
- }, cn = (e, t) => {
1886
- let { errorBus: n } = N(e);
1969
+ }, pn = (e, t) => {
1970
+ let { errorBus: n } = P(e);
1887
1971
  a(() => n.on(t), [n, t]);
1888
- }, ln = "#/$defs/", un = (e) => e.replace(/[_-]+/g, " ").replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/\s+/g, " ").trim().replace(/^./, (e) => e.toUpperCase()), Z = (e, t) => {
1972
+ }, mn = "#/$defs/", hn = (e) => e.replace(/[_-]+/g, " ").replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/\s+/g, " ").trim().replace(/^./, (e) => e.toUpperCase()), Z = (e, t) => {
1889
1973
  let n = e;
1890
1974
  for (let e = 0; e < 8; e += 1) {
1891
1975
  let e = n.$ref;
1892
- if (typeof e != "string" || !e.startsWith(ln)) return n;
1976
+ if (typeof e != "string" || !e.startsWith(mn)) return n;
1893
1977
  let r = t[e.slice(8)];
1894
1978
  if (!r || typeof r != "object") return n;
1895
1979
  n = r;
1896
1980
  }
1897
1981
  return n;
1898
- }, dn = (e) => {
1982
+ }, gn = (e) => {
1899
1983
  if (!e || typeof e != "object") return !1;
1900
1984
  let t = e;
1901
1985
  if (t.type === "null" || t.const === null) return !0;
1902
1986
  let n = t.enum;
1903
1987
  return Array.isArray(n) && n.length === 1 && n[0] === null;
1904
- }, fn = (e, t) => {
1988
+ }, _n = (e, t) => {
1905
1989
  let n = e.type;
1906
1990
  if (Array.isArray(n) && n.includes("null")) {
1907
1991
  let t = n.filter((e) => e !== "null");
@@ -1916,7 +2000,7 @@ var qe = () => {
1916
2000
  for (let n of ["anyOf", "oneOf"]) {
1917
2001
  let r = e[n];
1918
2002
  if (!Array.isArray(r)) continue;
1919
- let i = r.filter((e) => !dn(e));
2003
+ let i = r.filter((e) => !gn(e));
1920
2004
  if (i.length !== r.length) return i.length === 1 ? {
1921
2005
  node: Z(i[0], t),
1922
2006
  nullable: !0
@@ -1932,14 +2016,14 @@ var qe = () => {
1932
2016
  node: e,
1933
2017
  nullable: !1
1934
2018
  };
1935
- }, pn = (e) => e.map((e) => ({
2019
+ }, vn = (e) => e.map((e) => ({
1936
2020
  value: String(e),
1937
- label: un(String(e))
1938
- })), mn = (e) => {
2021
+ label: hn(String(e))
2022
+ })), yn = (e) => {
1939
2023
  let t = e.enum;
1940
2024
  if (Array.isArray(t) && t.length > 0) return {
1941
2025
  widget: "select",
1942
- options: pn(t)
2026
+ options: vn(t)
1943
2027
  };
1944
2028
  let n = e.type, r = Array.isArray(n) ? n.find((e) => e !== "null") : n, i = e.format;
1945
2029
  switch (r) {
@@ -1950,45 +2034,45 @@ var qe = () => {
1950
2034
  case "array": return { widget: "multi-select" };
1951
2035
  default: return { widget: "custom" };
1952
2036
  }
1953
- }, hn = (e, t, n) => Object.entries(e).map(([e, r]) => {
1954
- let { node: i, nullable: a } = fn(Z(r, n), n), o = Z(i, n), { widget: s, options: c } = mn(o);
2037
+ }, bn = (e, t, n) => Object.entries(e).map(([e, r]) => {
2038
+ let { node: i, nullable: a } = _n(Z(r, n), n), o = Z(i, n), { widget: s, options: c } = yn(o);
1955
2039
  return {
1956
2040
  name: e,
1957
- label: un(e),
2041
+ label: hn(e),
1958
2042
  widget: s,
1959
2043
  required: t.has(e),
1960
2044
  nullable: a,
1961
2045
  ...c ? { options: c } : {},
1962
2046
  jsonSchema: o
1963
2047
  };
1964
- }), gn = (e) => {
2048
+ }), xn = (e) => {
1965
2049
  try {
1966
2050
  return h.make(e);
1967
2051
  } catch {
1968
2052
  return;
1969
2053
  }
1970
2054
  }, Q = (e) => {
1971
- let t = gn(e);
2055
+ let t = xn(e);
1972
2056
  if (t === void 0) return [];
1973
2057
  let n = t.$defs ?? {}, r = Z(t, n), i = r.properties;
1974
- return i ? hn(i, new Set(Array.isArray(r.required) ? r.required : []), n) : [];
1975
- }, _n = (e) => {
1976
- let t = gn(e);
2058
+ return i ? bn(i, new Set(Array.isArray(r.required) ? r.required : []), n) : [];
2059
+ }, Sn = (e) => {
2060
+ let t = xn(e);
1977
2061
  if (t === void 0) return [];
1978
2062
  let n = t.$defs ?? {}, r = Z(t, n);
1979
2063
  if (r.type !== "array") return [];
1980
2064
  let i = r.items;
1981
2065
  if (!i || typeof i != "object") return [];
1982
2066
  let a = Z(i, n), o = a.properties;
1983
- return o ? hn(o, new Set(Array.isArray(a.required) ? a.required : []), n) : [];
1984
- }, vn = (e, t) => {
1985
- let n = g.decodeUnknownEither(e, { errors: "all" })(t);
2067
+ return o ? bn(o, new Set(Array.isArray(a.required) ? a.required : []), n) : [];
2068
+ }, Cn = (e, t) => {
2069
+ let n = _.decodeUnknownEither(e, { errors: "all" })(t);
1986
2070
  if (n._tag === "Right") return {
1987
2071
  valid: !0,
1988
2072
  errors: {}
1989
2073
  };
1990
2074
  let r = {};
1991
- for (let e of S.formatErrorSync(n.left)) {
2075
+ for (let e of C.formatErrorSync(n.left)) {
1992
2076
  let t = e.path.length === 0 ? "" : String(e.path[0]);
1993
2077
  t !== "" && !(t in r) && (r[t] = e.message);
1994
2078
  }
@@ -1996,8 +2080,8 @@ var qe = () => {
1996
2080
  valid: !1,
1997
2081
  errors: r
1998
2082
  };
1999
- }, yn = (e, t, r) => {
2000
- let i = N(e), a = q(e, t), l = r.schema ?? i.descriptors[t]?.input;
2083
+ }, wn = (e, t, r) => {
2084
+ let i = P(e), a = q(e, t), l = r.schema ?? i.descriptors[t]?.input;
2001
2085
  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.`);
2002
2086
  let u = o(() => l ? Q(l) : [], [l]), d = s(r.defaults ?? {}), [f, p] = c(d.current), [m, h] = c({}), g = n((e, t) => {
2003
2087
  p((n) => ({
@@ -2013,7 +2097,7 @@ var qe = () => {
2013
2097
  p(d.current), h({});
2014
2098
  }, []), y = n(async () => {
2015
2099
  if (l !== void 0) {
2016
- let e = vn(l, f);
2100
+ let e = Cn(l, f);
2017
2101
  if (h(e.errors), !e.valid) return;
2018
2102
  }
2019
2103
  return a.mutate(f);
@@ -2026,7 +2110,7 @@ var qe = () => {
2026
2110
  fields: u,
2027
2111
  values: f,
2028
2112
  errors: m,
2029
- isValid: o(() => l === void 0 || vn(l, f).valid, [l, f]),
2113
+ isValid: o(() => l === void 0 || Cn(l, f).valid, [l, f]),
2030
2114
  pending: a.pending,
2031
2115
  submitError: a.error,
2032
2116
  data: a.data,
@@ -2035,13 +2119,13 @@ var qe = () => {
2035
2119
  reset: v,
2036
2120
  submit: y
2037
2121
  };
2038
- }, bn = (e, t, n) => e.map((e) => {
2122
+ }, Tn = (e, t, n) => e.map((e) => {
2039
2123
  let r = String(e[n] ?? ""), i = e[t];
2040
2124
  return {
2041
2125
  value: r,
2042
2126
  label: i == null ? r : String(i)
2043
2127
  };
2044
- }), xn = (e, t, r = {}) => {
2128
+ }), En = (e, t, r = {}) => {
2045
2129
  let i = r.debounceMs ?? 200, s = r.labelField ?? "name", l = r.valueField ?? "id", u = r.input ?? ((e) => ({ q: e })), [d, f] = c(r.initialTerm ?? ""), [p, m] = c(d);
2046
2130
  a(() => {
2047
2131
  if (d === p) return;
@@ -2052,7 +2136,7 @@ var qe = () => {
2052
2136
  p,
2053
2137
  i
2054
2138
  ]);
2055
- let h = r.skipUntilTerm === !0 && p.trim() === "", g = U(e, t, o(() => u(p), [u, p]), { skip: h }), _ = o(() => bn(g.data ?? [], s, l), [
2139
+ let h = r.skipUntilTerm === !0 && p.trim() === "", g = H(e, t, o(() => u(p), [u, p]), { skip: h }), _ = o(() => Tn(g.data ?? [], s, l), [
2056
2140
  g.data,
2057
2141
  s,
2058
2142
  l
@@ -2063,13 +2147,13 @@ var qe = () => {
2063
2147
  term: d,
2064
2148
  search: v
2065
2149
  };
2066
- }, Sn = (e, t) => e === t ? 0 : e == null ? 1 : t == null || e < t ? -1 : 1, Cn = (e, t, r = {}) => {
2067
- let i = N(e), [a, s] = c(r.pageSize), l = U(e, t, o(() => a === void 0 ? r.input ?? {} : {
2150
+ }, Dn = (e, t) => e === t ? 0 : e == null ? 1 : t == null || e < t ? -1 : 1, On = (e, t, r = {}) => {
2151
+ let i = P(e), [a, s] = c(r.pageSize), l = H(e, t, o(() => a === void 0 ? r.input ?? {} : {
2068
2152
  ...r.input,
2069
2153
  limit: a
2070
2154
  }, [r.input, a])), u = i.descriptors[t]?.output, d = n(() => {
2071
2155
  r.pageSize !== void 0 && s((e) => (e ?? r.pageSize) + r.pageSize);
2072
- }, [r.pageSize]), f = o(() => r.columns ?? (u === void 0 ? [] : _n(u)), [r.columns, u]), [p, m] = c(r.initialSort), h = n((e) => {
2156
+ }, [r.pageSize]), f = o(() => r.columns ?? (u === void 0 ? [] : Sn(u)), [r.columns, u]), [p, m] = c(r.initialSort), h = n((e) => {
2073
2157
  m((t) => t?.column === e ? {
2074
2158
  column: e,
2075
2159
  direction: t.direction === "asc" ? "desc" : "asc"
@@ -2084,7 +2168,7 @@ var qe = () => {
2084
2168
  let e = l.data ?? [];
2085
2169
  if (p === void 0) return e;
2086
2170
  let t = p.direction === "asc" ? 1 : -1;
2087
- return [...e].sort((e, n) => Sn(e[p.column], n[p.column]) * t);
2171
+ return [...e].sort((e, n) => Dn(e[p.column], n[p.column]) * t);
2088
2172
  }, [l.data, p]),
2089
2173
  loading: l.data === void 0,
2090
2174
  error: l.error,
@@ -2093,14 +2177,14 @@ var qe = () => {
2093
2177
  loadMore: d,
2094
2178
  hasMore: a !== void 0 && (l.data?.length ?? 0) >= a
2095
2179
  };
2096
- }, wn = (e, t, n, r) => {
2180
+ }, kn = (e, t, n, r) => {
2097
2181
  let i = e.replace(/\/$/, ""), a = new URLSearchParams({
2098
2182
  table: t,
2099
2183
  id: n
2100
2184
  });
2101
2185
  return r !== void 0 && a.set("column", r), `${i}/_voltro/inspect/provenance?${a.toString()}`;
2102
- }, Tn = wn, En = (e, t, n, r) => {
2103
- let { inspectBaseUrl: i } = N(e), [o, s] = c({
2186
+ }, An = kn, jn = (e, t, n, r) => {
2187
+ let { inspectBaseUrl: i } = P(e), [o, s] = c({
2104
2188
  data: void 0,
2105
2189
  loading: !0,
2106
2190
  error: void 0
@@ -2112,7 +2196,7 @@ var qe = () => {
2112
2196
  loading: !0,
2113
2197
  error: void 0
2114
2198
  });
2115
- let a = wn(i ?? "", t, n, r);
2199
+ let a = kn(i ?? "", t, n, r);
2116
2200
  return fetch(a).then(async (e) => {
2117
2201
  if (!e.ok) throw Error(`provenance fetch failed: HTTP ${e.status}`);
2118
2202
  return await e.json();
@@ -2138,8 +2222,8 @@ var qe = () => {
2138
2222
  n,
2139
2223
  r
2140
2224
  ]), o;
2141
- }, Dn = (e) => `${e.replace(/\/$/, "")}/_voltro/inspect/manifest`, On = (e) => {
2142
- let { inspectBaseUrl: t } = N(e), [n, r] = c({
2225
+ }, Mn = (e) => `${e.replace(/\/$/, "")}/_voltro/inspect/manifest`, Nn = (e) => {
2226
+ let { inspectBaseUrl: t } = P(e), [n, r] = c({
2143
2227
  manifest: void 0,
2144
2228
  loading: !0,
2145
2229
  error: void 0
@@ -2150,7 +2234,7 @@ var qe = () => {
2150
2234
  manifest: void 0,
2151
2235
  loading: !0,
2152
2236
  error: void 0
2153
- }), fetch(Dn(t ?? "")).then(async (e) => {
2237
+ }), fetch(Mn(t ?? "")).then(async (e) => {
2154
2238
  if (!e.ok) throw Error(`manifest fetch failed: HTTP ${e.status}`);
2155
2239
  return await e.json();
2156
2240
  }).then((t) => {
@@ -2169,8 +2253,8 @@ var qe = () => {
2169
2253
  e = !0;
2170
2254
  };
2171
2255
  }, [e, t]), n;
2172
- }, kn = (e, t) => Array.isArray(e) ? e.includes(t) : e === t, An = (e, t, n) => e.targets?.some((e) => e.table === t && e.op === n) ?? !1, jn = (e) => e.tables.filter((e) => !e.framework).map((t) => {
2173
- let n = e.procedures.find((e) => e.kind === "query" && kn(e.source, t.name)), r = e.procedures.find((e) => e.kind === "mutation" && An(e, t.name, "insert")), i = e.procedures.find((e) => e.kind === "mutation" && An(e, t.name, "update")), a = e.procedures.find((e) => e.kind === "mutation" && An(e, t.name, "delete"));
2256
+ }, Pn = (e, t) => Array.isArray(e) ? e.includes(t) : e === t, Fn = (e, t, n) => e.targets?.some((e) => e.table === t && e.op === n) ?? !1, In = (e) => e.tables.filter((e) => !e.framework).map((t) => {
2257
+ let n = e.procedures.find((e) => e.kind === "query" && Pn(e.source, t.name)), r = e.procedures.find((e) => e.kind === "mutation" && Fn(e, t.name, "insert")), i = e.procedures.find((e) => e.kind === "mutation" && Fn(e, t.name, "update")), a = e.procedures.find((e) => e.kind === "mutation" && Fn(e, t.name, "delete"));
2174
2258
  return {
2175
2259
  table: t.name,
2176
2260
  columns: t.columns,
@@ -2183,7 +2267,7 @@ var qe = () => {
2183
2267
  writeScope: `${t.name}:write`,
2184
2268
  deleteScope: `${t.name}:delete`
2185
2269
  };
2186
- }), Mn = (e) => {
2270
+ }), Ln = (e) => {
2187
2271
  let [t, r] = c([]), [i, a] = c([]), s = n((e) => {
2188
2272
  r((t) => [...t, e]), a([]);
2189
2273
  }, []), l = n(async () => {
@@ -2211,8 +2295,8 @@ var qe = () => {
2211
2295
  l,
2212
2296
  u
2213
2297
  ]);
2214
- }, Nn = "__voltro.undo.log", Pn = "__voltro.undo.apply", Fn = "__voltro.undo.redo", In = (e, t) => {
2215
- let r = t?.limit, { data: i } = U(e, Nn, r === void 0 ? {} : { limit: r }), a = q(e, Pn), o = q(e, Fn), s = i ?? [], c = s.find((e) => !e.undone && !e.crossesAction), l = s.find((e) => e.undone), u = n(async (e) => {
2298
+ }, Rn = "__voltro.undo.log", zn = "__voltro.undo.apply", Bn = "__voltro.undo.redo", Vn = (e, t) => {
2299
+ let r = t?.limit, { data: i } = H(e, Rn, r === void 0 ? {} : { limit: r }), a = q(e, zn), o = q(e, Bn), s = i ?? [], c = s.find((e) => !e.undone && !e.crossesAction), l = s.find((e) => e.undone), u = n(async (e) => {
2216
2300
  await a.mutate({ invocationId: e });
2217
2301
  }, [a]), d = n(async (e) => {
2218
2302
  await o.mutate({ invocationId: e });
@@ -2231,13 +2315,13 @@ var qe = () => {
2231
2315
  undoLast: f,
2232
2316
  redoLast: p
2233
2317
  };
2234
- }, Ln = (e, t) => ({
2318
+ }, Hn = (e, t) => ({
2235
2319
  name: e,
2236
2320
  map: t
2237
- }), $ = (e, t) => e === void 0 ? null : typeof e == "string" ? { event: e } : e(t), Rn = /* @__PURE__ */ new Set(["onMount", "onUnmount"]), zn = (e, t, n) => {
2321
+ }), $ = (e, t) => e === void 0 ? null : typeof e == "string" ? { event: e } : e(t), Un = /* @__PURE__ */ new Set(["onMount", "onUnmount"]), Wn = (e, t, n) => {
2238
2322
  let r = { ...t };
2239
2323
  for (let [i, a] of Object.entries(e.map)) {
2240
- if (Rn.has(i) || a === void 0) continue;
2324
+ if (Un.has(i) || a === void 0) continue;
2241
2325
  let e = t[i];
2242
2326
  r[i] = (...r) => {
2243
2327
  let i = $(a, t);
@@ -2245,7 +2329,7 @@ var qe = () => {
2245
2329
  };
2246
2330
  }
2247
2331
  return r;
2248
- }, Bn = (e, t, n) => {
2332
+ }, Gn = (e, t, n) => {
2249
2333
  let r = s({
2250
2334
  spec: e,
2251
2335
  props: t,
@@ -2261,45 +2345,45 @@ var qe = () => {
2261
2345
  let e = r.current, t = $(e.spec.map.onUnmount, e.props);
2262
2346
  t !== null && e.sink(t);
2263
2347
  };
2264
- }, []), o(() => zn(e, t, n), [
2348
+ }, []), o(() => Wn(e, t, n), [
2265
2349
  e,
2266
2350
  t,
2267
2351
  n
2268
2352
  ]);
2269
- }, Vn = (e, t) => {
2270
- let n = N(e).descriptors[t]?.input;
2353
+ }, Kn = (e, t) => {
2354
+ let n = P(e).descriptors[t]?.input;
2271
2355
  return o(() => n === void 0 ? [] : Q(n), [n]);
2272
- }, Hn = (e, t) => {
2273
- let n = N(e).descriptors[t]?.output;
2274
- return o(() => n === void 0 ? [] : _n(n), [n]);
2275
- }, Un = (e, t) => {
2356
+ }, qn = (e, t) => {
2357
+ let n = P(e).descriptors[t]?.output;
2358
+ return o(() => n === void 0 ? [] : Sn(n), [n]);
2359
+ }, Jn = (e, t) => {
2276
2360
  if (e === t) return !0;
2277
2361
  if (e.length !== t.length) return !1;
2278
2362
  for (let n = 0; n < e.length; n += 1) if (!Object.is(e[n], t[n])) return !1;
2279
2363
  return !0;
2280
- }, Wn = (e) => Object.keys(e).sort().map((t) => e[t]), Gn = (e, t) => {
2281
- let n = s(null), r = Wn(e);
2282
- return (n.current === null || !Un(n.current.key, r)) && (n.current = {
2364
+ }, Yn = (e) => Object.keys(e).sort().map((t) => e[t]), Xn = (e, t) => {
2365
+ let n = s(null), r = Yn(e);
2366
+ return (n.current === null || !Jn(n.current.key, r)) && (n.current = {
2283
2367
  key: r,
2284
2368
  value: t(e)
2285
2369
  }), n.current.value;
2286
- }, Kn = "admin:full", qn = (e, t) => e.includes("admin:full") ? !0 : (typeof t == "string" ? [t] : t).every((t) => e.includes(t)), Jn = (e, t) => t.length === 0 || e.includes("admin:full") ? !0 : t.some((t) => e.includes(t)), Yn = e({ scopes: [] });
2287
- function Xn(e) {
2288
- return t(Yn.Provider, { value: { scopes: e.scopes } }, e.children);
2370
+ }, Zn = "admin:full", Qn = (e, t) => e.includes("admin:full") ? !0 : (typeof t == "string" ? [t] : t).every((t) => e.includes(t)), $n = (e, t) => t.length === 0 || e.includes("admin:full") ? !0 : t.some((t) => e.includes(t)), er = e({ scopes: [] });
2371
+ function tr(e) {
2372
+ return t(er.Provider, { value: { scopes: e.scopes } }, e.children);
2289
2373
  }
2290
- var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes, e), er = (e, t, n, r = {}) => {
2291
- let i = U(e, t, { ...n }, r);
2374
+ var nr = () => r(er), rr = (e) => Qn(nr().scopes, e), ir = (e) => $n(nr().scopes, e), ar = (e, t, n, r = {}) => {
2375
+ let i = H(e, t, { ...n }, r);
2292
2376
  return o(() => ({
2293
2377
  allowed: i.data?.allowed === !0,
2294
2378
  pending: i.data === void 0
2295
2379
  }), [i.data]);
2296
- }, tr = (e, t, n, r = {}) => {
2297
- let i = U(e, t, { ...n }, r);
2380
+ }, or = (e, t, n, r = {}) => {
2381
+ let i = H(e, t, { ...n }, r);
2298
2382
  return o(() => ({
2299
2383
  allowedIds: new Set(i.data?.allowedIds ?? []),
2300
2384
  pending: i.data === void 0
2301
2385
  }), [i.data]);
2302
- }, nr = (e) => {
2386
+ }, sr = (e) => {
2303
2387
  switch (e) {
2304
2388
  case "select":
2305
2389
  case "radio":
@@ -2315,25 +2399,25 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2315
2399
  case "switch": return "boolean";
2316
2400
  default: return null;
2317
2401
  }
2318
- }, rr = (e) => Q(e).map((e) => {
2319
- let t = nr(e.widget);
2402
+ }, cr = (e) => Q(e).map((e) => {
2403
+ let t = sr(e.widget);
2320
2404
  return t === null ? null : {
2321
2405
  name: e.name,
2322
2406
  label: e.label,
2323
2407
  kind: t,
2324
2408
  ...e.options ? { options: e.options } : {}
2325
2409
  };
2326
- }).filter((e) => e !== null), ir = (e) => {
2410
+ }).filter((e) => e !== null), lr = (e) => {
2327
2411
  let t = {};
2328
2412
  for (let [n, r] of Object.entries(e)) r === void 0 || r === "" || Array.isArray(r) && r.length === 0 || (t[n] = r);
2329
2413
  return t;
2330
- }, ar = (e, t, r = {}) => {
2331
- let i = N(e).descriptors[t]?.input, a = o(() => i === void 0 ? [] : rr(i), [i]), [s, l] = c(r.initial ?? {}), u = n((e, t) => {
2332
- l((n) => ir({
2414
+ }, ur = (e, t, r = {}) => {
2415
+ let i = P(e).descriptors[t]?.input, a = o(() => i === void 0 ? [] : cr(i), [i]), [s, l] = c(r.initial ?? {}), u = n((e, t) => {
2416
+ l((n) => lr({
2333
2417
  ...n,
2334
2418
  [e]: t
2335
2419
  }));
2336
- }, []), d = n(() => l({}), []), f = U(e, t, o(() => ir(s), [s]));
2420
+ }, []), d = n(() => l({}), []), f = H(e, t, o(() => lr(s), [s]));
2337
2421
  return {
2338
2422
  filters: a,
2339
2423
  values: s,
@@ -2344,20 +2428,20 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2344
2428
  loading: f.data === void 0,
2345
2429
  error: f.error
2346
2430
  };
2347
- }, or = (e, t, n = {}) => {
2348
- let r = U(e, t, n), i = r.data;
2431
+ }, dr = (e, t, n = {}) => {
2432
+ let r = H(e, t, n), i = r.data;
2349
2433
  return {
2350
2434
  record: Array.isArray(i) ? i[0] : i,
2351
2435
  loading: i === void 0,
2352
2436
  error: r.error
2353
2437
  };
2354
- }, sr = (e, t = 300) => {
2438
+ }, fr = (e, t = 300) => {
2355
2439
  let [n, r] = c(e);
2356
2440
  return a(() => {
2357
2441
  let n = setTimeout(() => r(e), t);
2358
2442
  return () => clearTimeout(n);
2359
2443
  }, [e, t]), n;
2360
- }, cr = (e) => {
2444
+ }, pr = (e) => {
2361
2445
  let { value: t, debouncedValue: n, data: r, interpret: i, skipEmpty: a = !0 } = e;
2362
2446
  if (a && t.trim() === "") return {
2363
2447
  status: "idle",
@@ -2375,39 +2459,39 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2375
2459
  valid: o.valid,
2376
2460
  message: o.message
2377
2461
  };
2378
- }, lr = (e, t, n, r) => {
2379
- let { input: i, interpret: a, debounceMs: s = 300, skipEmpty: c = !0 } = r, l = sr(n, s), u = c && l.trim() === "", d = U(e, t, o(() => i ? i(l) : { value: l }, [i, l]), { skip: u });
2380
- return cr({
2462
+ }, mr = (e, t, n, r) => {
2463
+ let { input: i, interpret: a, debounceMs: s = 300, skipEmpty: c = !0 } = r, l = fr(n, s), u = c && l.trim() === "", d = H(e, t, o(() => i ? i(l) : { value: l }, [i, l]), { skip: u });
2464
+ return pr({
2381
2465
  value: n,
2382
2466
  debouncedValue: l,
2383
2467
  data: u ? null : d.data,
2384
2468
  interpret: a,
2385
2469
  skipEmpty: c
2386
2470
  });
2387
- }, ur = (e, t) => ({
2471
+ }, hr = (e, t) => ({
2388
2472
  name: e,
2389
2473
  payload: t
2390
- }), dr = (e, t) => {
2391
- let n = g.decodeUnknownEither(e.payload, { errors: "all" })(t);
2474
+ }), gr = (e, t) => {
2475
+ let n = _.decodeUnknownEither(e.payload, { errors: "all" })(t);
2392
2476
  if (n._tag === "Right") return {
2393
2477
  valid: !0,
2394
2478
  errors: {}
2395
2479
  };
2396
2480
  let r = {};
2397
- for (let e of S.formatErrorSync(n.left)) r[e.path.join(".") || "(root)"] = e.message;
2481
+ for (let e of C.formatErrorSync(n.left)) r[e.path.join(".") || "(root)"] = e.message;
2398
2482
  return {
2399
2483
  valid: !1,
2400
2484
  errors: r
2401
2485
  };
2402
- }, fr = (e) => {
2486
+ }, _r = (e) => {
2403
2487
  let t = new Map(e.map((e) => [e.name, e]));
2404
2488
  return {
2405
2489
  names: [...t.keys()].sort(),
2406
2490
  get: (e) => t.get(e),
2407
2491
  events: e
2408
2492
  };
2409
- }, pr = (e, t) => {
2410
- let n = fr(e);
2493
+ }, vr = (e, t) => {
2494
+ let n = _r(e);
2411
2495
  return {
2412
2496
  track: (e, r) => {
2413
2497
  let i = n.get(e);
@@ -2416,7 +2500,7 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2416
2500
  return;
2417
2501
  }
2418
2502
  if (process.env.NODE_ENV !== "production") {
2419
- let t = dr(i, r);
2503
+ let t = gr(i, r);
2420
2504
  t.valid || console.error(`[@voltro/client] analytics.track('${e}'): payload failed its schema`, t.errors);
2421
2505
  }
2422
2506
  t({
@@ -2427,7 +2511,7 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2427
2511
  names: n.names,
2428
2512
  catalog: n
2429
2513
  };
2430
- }, mr = (e, t) => {
2514
+ }, yr = (e, t) => {
2431
2515
  let r = J(e, t);
2432
2516
  return {
2433
2517
  preview: n((e) => r.run(e), [r]),
@@ -2435,34 +2519,34 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2435
2519
  pending: r.pending,
2436
2520
  error: r.error
2437
2521
  };
2438
- }, hr = (e, t, n, r) => [...e, {
2522
+ }, br = (e, t, n, r) => [...e, {
2439
2523
  id: t,
2440
2524
  tag: n,
2441
2525
  input: r,
2442
2526
  status: "pending",
2443
2527
  attempts: 0
2444
- }], gr = (e, t, n) => e.map((e) => e.id === t ? {
2528
+ }], xr = (e, t, n) => e.map((e) => e.id === t ? {
2445
2529
  ...e,
2446
2530
  ...n
2447
- } : e), _r = (e, t) => gr(e, t, { status: "sent" }), vr = (e, t, n) => e.map((e) => e.id === t ? {
2531
+ } : e), Sr = (e, t) => xr(e, t, { status: "sent" }), Cr = (e, t, n) => e.map((e) => e.id === t ? {
2448
2532
  ...e,
2449
2533
  status: "failed",
2450
2534
  error: n,
2451
2535
  attempts: e.attempts + 1
2452
- } : e), yr = (e, t, n) => gr(e, t, {
2536
+ } : e), wr = (e, t, n) => xr(e, t, {
2453
2537
  status: "conflict",
2454
2538
  error: n
2455
- }), br = (e) => e.filter((e) => e.status !== "sent"), xr = (e) => {
2539
+ }), Tr = (e) => e.filter((e) => e.status !== "sent"), Er = (e) => {
2456
2540
  let t = [];
2457
2541
  for (let n of e) {
2458
2542
  if (n.status === "conflict") break;
2459
2543
  (n.status === "pending" || n.status === "failed") && t.push(n);
2460
2544
  }
2461
2545
  return t;
2462
- }, Sr = (e) => {
2546
+ }, Dr = (e) => {
2463
2547
  let t = e;
2464
2548
  return t?.conflict === !0 || t?._tag === "UndoBoundaryError" && t?.boundary === "conflict";
2465
- }, Cr = (e) => {
2549
+ }, Or = (e) => {
2466
2550
  let [t, n] = c(e ?? (typeof navigator < "u" ? navigator.onLine : !0));
2467
2551
  return a(() => {
2468
2552
  if (e !== void 0) {
@@ -2475,21 +2559,21 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2475
2559
  window.removeEventListener("online", t), window.removeEventListener("offline", r);
2476
2560
  };
2477
2561
  }, [e]), t;
2478
- }, wr = (e) => {
2479
- let { send: t, isConflict: r = Sr, idFor: i } = e, [o, l] = c([]), u = Cr(e.online), d = s(o);
2562
+ }, kr = (e) => {
2563
+ let { send: t, isConflict: r = Dr, idFor: i } = e, [o, l] = c([]), u = Or(e.online), d = s(o);
2480
2564
  d.current = o;
2481
2565
  let f = s(0), p = n((e, t) => {
2482
2566
  let n = i?.() ?? `obx_${f.current++}_${e}`;
2483
- l((r) => hr(r, n, e, t));
2567
+ l((r) => br(r, n, e, t));
2484
2568
  }, [i]), m = n(async () => {
2485
- for (let e of xr(d.current)) try {
2486
- await t(e), l((t) => _r(t, e.id));
2569
+ for (let e of Er(d.current)) try {
2570
+ await t(e), l((t) => Sr(t, e.id));
2487
2571
  } catch (t) {
2488
2572
  if (r(t)) {
2489
- l((n) => yr(n, e.id, t));
2573
+ l((n) => wr(n, e.id, t));
2490
2574
  break;
2491
2575
  }
2492
- l((n) => vr(n, e.id, t));
2576
+ l((n) => Cr(n, e.id, t));
2493
2577
  }
2494
2578
  }, [t, r]);
2495
2579
  return a(() => {
@@ -2502,7 +2586,7 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2502
2586
  pending: o.filter((e) => e.status === "pending" || e.status === "failed").length,
2503
2587
  conflicts: o.filter((e) => e.status === "conflict")
2504
2588
  };
2505
- }, Tr = (e) => {
2589
+ }, Ar = (e) => {
2506
2590
  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);
2507
2591
  return {
2508
2592
  startIndex: l,
@@ -2512,8 +2596,8 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2512
2596
  topSpacer: l * r,
2513
2597
  bottomSpacer: a === void 0 ? 0 : Math.max(0, (a - d) * r)
2514
2598
  };
2515
- }, Er = (e, t, r) => {
2516
- let { rowHeight: i, viewportHeight: a, overscan: s, total: l, input: u } = r, [d, f] = c(0), p = o(() => Tr({
2599
+ }, jr = (e, t, r) => {
2600
+ let { rowHeight: i, viewportHeight: a, overscan: s, total: l, input: u } = r, [d, f] = c(0), p = o(() => Ar({
2517
2601
  scrollTop: d,
2518
2602
  viewportHeight: a,
2519
2603
  rowHeight: i,
@@ -2525,7 +2609,7 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2525
2609
  i,
2526
2610
  s,
2527
2611
  l
2528
- ]), m = U(e, t, o(() => ({
2612
+ ]), m = H(e, t, o(() => ({
2529
2613
  ...u,
2530
2614
  offset: p.offset,
2531
2615
  limit: p.limit
@@ -2545,8 +2629,8 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2545
2629
  loading: m.data === void 0,
2546
2630
  error: m.error
2547
2631
  };
2548
- }, Dr = () => typeof navigator > "u" || navigator.onLine, Or = (e) => {
2549
- let { errorBus: t } = N(e), [r, i] = c(Dr), [o, l] = c(0), [u, d] = c(void 0), f = s(!0);
2632
+ }, Mr = () => typeof navigator > "u" || navigator.onLine, Nr = (e) => {
2633
+ let { errorBus: t } = P(e), [r, i] = c(Mr), [o, l] = c(0), [u, d] = c(void 0), f = s(!0);
2550
2634
  a(() => (f.current = !0, () => {
2551
2635
  f.current = !1;
2552
2636
  }), []), a(() => {
@@ -2572,7 +2656,7 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2572
2656
  lastFailureAt: u,
2573
2657
  reportSuccess: p
2574
2658
  };
2575
- }, kr = "__voltro.connections.list", Ar = "__voltro.connections.start", jr = "__voltro.connections.submitToken", Mr = "__voltro.connections.disconnect", Nr = {
2659
+ }, Pr = "__voltro.connections.list", Fr = "__voltro.connections.start", Ir = "__voltro.connections.submitToken", Lr = "__voltro.connections.disconnect", Rr = {
2576
2660
  connectionId: "",
2577
2661
  kind: "oauth2",
2578
2662
  label: "",
@@ -2583,14 +2667,14 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2583
2667
  expiresAt: null,
2584
2668
  lastError: null,
2585
2669
  connectedAt: null
2586
- }, Pr = (e, t) => {
2670
+ }, zr = (e, t) => {
2587
2671
  if (t === "redirect") {
2588
2672
  globalThis.location.assign(e);
2589
2673
  return;
2590
2674
  }
2591
2675
  globalThis.open(e, "voltro-connect", "width=620,height=760,menubar=no,toolbar=no") === null && globalThis.location.assign(e);
2592
- }, Fr = (e) => {
2593
- let { data: t } = U(e, kr, {}), r = J(e, Ar), i = q(e, jr), a = q(e, Mr), o = t ?? [], s = r.pending || i.pending || a.pending, c = n((e) => ({
2676
+ }, Br = (e) => {
2677
+ let { data: t } = H(e, Pr, {}), r = J(e, Fr), i = q(e, Ir), a = q(e, Lr), o = t ?? [], s = r.pending || i.pending || a.pending, c = n((e) => ({
2594
2678
  ...e,
2595
2679
  connected: e.status === "connected",
2596
2680
  needsAttention: e.status === "expired" || e.status === "revoked" || e.status === "error",
@@ -2598,7 +2682,7 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2598
2682
  connect: async (t) => {
2599
2683
  if (e.kind !== "oauth2") throw Error(`connection "${e.connectionId}" is a personal-access-token connection — call submitToken(token), not connect().`);
2600
2684
  let n = t?.redirectTo ?? `${globalThis.location.pathname}${globalThis.location.search}`;
2601
- Pr((await r.run({
2685
+ zr((await r.run({
2602
2686
  connectionId: e.connectionId,
2603
2687
  redirectTo: n
2604
2688
  })).authorizeUrl, t?.mode);
@@ -2628,10 +2712,10 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2628
2712
  get: l,
2629
2713
  pending: s
2630
2714
  };
2631
- }, Ir = (e, t) => {
2632
- let n = Fr(e), r = n.get(t);
2715
+ }, Vr = (e, t) => {
2716
+ let n = Br(e), r = n.get(t);
2633
2717
  return o(() => r === void 0 ? {
2634
- ...Nr,
2718
+ ...Rr,
2635
2719
  connectionId: t,
2636
2720
  label: t,
2637
2721
  connected: !1,
@@ -2656,6 +2740,6 @@ var Zn = () => r(Yn), Qn = (e) => qn(Zn().scopes, e), $n = (e) => Jn(Zn().scopes
2656
2740
  n.loading,
2657
2741
  n.pending
2658
2742
  ]);
2659
- }, Lr = "framework-client";
2743
+ }, Hr = "framework-client";
2660
2744
  //#endregion
2661
- export { Kn as ADMIN_SCOPE, Lr as CLIENT_NAME, kr as CONNECTIONS_LIST_TAG, Mr as CONNECTION_DISCONNECT_TAG, Ar as CONNECTION_START_TAG, jr as CONNECTION_SUBMIT_TOKEN_TAG, O as FrameworkRuntimesContext, _e as FrameworkRuntimesProvider, ue as LoadingSubscriptionCache, Xn as PermissionProvider, de as RpcErrorBus, le as SubscriptionCache, Pn as UNDO_APPLY_TAG, Nn as UNDO_LOG_TAG, Fn as UNDO_REDO_TAG, he as _resetFrameworkRuntimesWarning, We as applyStoreSeeds, qn as canCall, Jn as canCallAny, it as clearMutations, br as clearSent, Ae as clearStoreHistory, Tr as computeWindow, pr as createAnalytics, ur as defineEvent, ze as defineStore, Ln as defineTracking, Re as definedStores, jn as deriveEntityAdmins, hr as enqueueEntry, fr as eventCatalog, rr as filtersFromSchema, ft as freshIdempotencyKey, st as getMutationNotifier, nt as getMutations, Ve as makeStoreSeedBag, Dn as manifestUrl, yr as markConflict, vr as markFailed, _r as markSent, Tn as provenanceUrl, an as publishClientError, w as publishClientTrace, xr as replayable, sn as reportClientError, Be as resetStoreRegistryForTests, H as resolveByTag, $ as resolveTrackingEvent, Jt as resumableConsumeProgram, bn as rowsToOptions, Je as runSequence, _n as schemaToColumns, Q as schemaToFields, Ue as seedStore, qe as sequence, ot as setMutationNotifier, He as setStoreSeedResolver, G as settleMutation, P as shallow, Un as shallowArrayEqual, Wn as sourceValues, k as ssrClientProxy, pe as ssrStubHandle, E as stableKey, tt as startMutation, Oe as storeHistory, on as subscribeClientErrors, T as subscribeClientTraces, rt as subscribeMutations, ke as subscribeStoreHistory, je as travelToStoreState, J as useAction, en as useAgent, $t as useAgentChat, qt as useAgentStream, lr as useAsyncValidation, Qn as useCan, $n as useCanAny, On as useCapabilityManifest, Ir as useConnection, Or as useConnectionStatus, Fr as useConnections, tn as useDataCopilot, Cn as useDataTable, sr as useDebounced, Gn as useDerived, yn as useFormBinding, Vn as useFormSkeleton, N as useFrameworkApi, ge as useFrameworkRuntimes, q as useMutation, cn as useOnRpcError, wr as useOutbox, Zn as usePermissions, mr as usePreview, En as useProvenance, xn as useQueryField, ar as useQueryFilters, or as useRecord, nn as useRefreshSubscriptions, er as useResourceCan, tr as useResourceCans, Xt as useResumableAgentStream, Ye as useSequence, U as useSubscription, Hn as useTableSkeleton, Bn as useTracking, Mn as useUndo, In as useUndoLog, At as useUpload, Er as useWindowedSubscription, jt as useWorkflow, zt as useWorkflowDomainEvents, Bt as useWorkflowEventDeliveries, Rt as useWorkflowEvents, Pt as useWorkflowRun, Lt as useWorkflowRunEvents, Kt as useWorkflowRunState, It as useWorkflowRunSteps, Ft as useWorkflowRuns, Mt as useWorkflowSignal, Nt as useWorkflowUpdate, dr as validateEventPayload, vn as validateFields, cr as validationStatus, pt as withIdempotencyKey, zn as wrapTrackedCallbacks };
2745
+ export { Zn as ADMIN_SCOPE, Hr as CLIENT_NAME, Pr as CONNECTIONS_LIST_TAG, Lr as CONNECTION_DISCONNECT_TAG, Fr as CONNECTION_START_TAG, Ir as CONNECTION_SUBMIT_TOKEN_TAG, ue as FrameworkRuntimesContext, ve as FrameworkRuntimesProvider, ce as LoadingSubscriptionCache, tr as PermissionProvider, le as RpcErrorBus, se as SubscriptionCache, zn as UNDO_APPLY_TAG, Rn as UNDO_LOG_TAG, Bn as UNDO_REDO_TAG, he as _resetFrameworkRuntimesWarning, qe as applyStoreSeeds, Qn as canCall, $n as canCallAny, lt as clearMutations, Tr as clearSent, je as clearStoreHistory, Ar as computeWindow, vr as createAnalytics, hr as defineEvent, He as defineStore, Hn as defineTracking, Ve as definedStores, In as deriveEntityAdmins, br as enqueueEntry, _r as eventCatalog, cr as filtersFromSchema, _t as freshIdempotencyKey, ft as getMutationNotifier, st as getMutations, _e as isUnresolvedApi, We as makeStoreSeedBag, Mn as manifestUrl, wr as markConflict, Cr as markFailed, Sr as markSent, An as provenanceUrl, un as publishClientError, T as publishClientTrace, Er as replayable, fn as reportClientError, Ue as resetStoreRegistryForTests, V as resolveByTag, $ as resolveTrackingEvent, en as resumableConsumeProgram, Tn as rowsToOptions, $e as runSequence, Sn as schemaToColumns, Q as schemaToFields, Ke as seedStore, Qe as sequence, dt as setMutationNotifier, Ge as setStoreSeedResolver, G as settleMutation, F as shallow, Jn as shallowArrayEqual, Yn as sourceValues, fe as ssrClientProxy, pe as ssrStubHandle, D as stableKey, ot as startMutation, ke as storeHistory, dn as subscribeClientErrors, E as subscribeClientTraces, ct as subscribeMutations, Ae as subscribeStoreHistory, Me as travelToStoreState, J as useAction, sn as useAgent, on as useAgentChat, $t as useAgentStream, mr as useAsyncValidation, rr as useCan, ir as useCanAny, Nn as useCapabilityManifest, Vr as useConnection, Nr as useConnectionStatus, Br as useConnections, cn as useDataCopilot, On as useDataTable, fr as useDebounced, Xn as useDerived, Ze as useEvent, wn as useFormBinding, Kn as useFormSkeleton, P as useFrameworkApi, ge as useFrameworkRuntimes, q as useMutation, pn as useOnRpcError, kr as useOutbox, nr as usePermissions, yr as usePreview, jn as useProvenance, En as useQueryField, ur as useQueryFilters, dr as useRecord, ln as useRefreshSubscriptions, ar as useResourceCan, or as useResourceCans, nn as useResumableAgentStream, et as useSequence, H as useSubscription, qn as useTableSkeleton, Gn as useTracking, Ln as useUndo, Vn as useUndoLog, It as useUpload, jr as useWindowedSubscription, Lt as useWorkflow, Gt as useWorkflowDomainEvents, Kt as useWorkflowEventDeliveries, Wt as useWorkflowEvents, Bt as useWorkflowRun, Ut as useWorkflowRunEvents, Qt as useWorkflowRunState, Ht as useWorkflowRunSteps, Vt as useWorkflowRuns, Rt as useWorkflowSignal, zt as useWorkflowUpdate, gr as validateEventPayload, Cn as validateFields, pr as validationStatus, vt as withIdempotencyKey, Wn as wrapTrackedCallbacks };