@xmachines/play-solid 1.0.0-beta.30 → 1.0.0-beta.32

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.
@@ -1,46 +1,46 @@
1
1
  import { createStateStore as e, flattenToPointers as t, getByPath as n } from "../../core/dist/chunk-AFLK3Q4T.js";
2
- import { evaluateVisibility as r, executeAction as i, resolveAction as a, resolveActionParam as o, resolveBindings as s, resolveElementProps as c } from "../../core/dist/index.js";
2
+ import { evaluateVisibility as r, executeAction as i, isDevtoolsActive as a, nextActionDispatchId as o, notifyActionDispatch as s, notifyActionSettle as c, resolveAction as l, resolveActionParam as u, resolveBindings as d, resolveElementProps as f, subscribeDevtoolsActive as p } from "../../core/dist/index.js";
3
3
  import "./chunk-XTSB6FIM.js";
4
4
  import "../../core/dist/store-utils.js";
5
- import { createComponent as l, delegateEvents as u } from "solid-js/web";
6
- import { ErrorBoundary as d, For as f, Show as p, createContext as m, createEffect as h, createMemo as g, createSignal as _, onCleanup as v, useContext as y } from "solid-js";
5
+ import { createComponent as m, delegateEvents as h, effect as g, insert as _, memo as v, setAttribute as y, template as b } from "solid-js/web";
6
+ import { ErrorBoundary as x, For as S, Show as C, createContext as w, createEffect as T, createMemo as E, createSignal as D, onCleanup as O, useContext as k } from "solid-js";
7
7
  //#region ../../node_modules/@json-render/solid/dist/index.mjs
8
- var b = m(null);
9
- function x(e, n) {
8
+ var A = w(null);
9
+ function j(e, n) {
10
10
  return e ? null : Object.keys(n).length === 0 ? {} : t(n);
11
11
  }
12
- function S(r) {
12
+ function M(r) {
13
13
  let i;
14
14
  r.store || (i = e(r.initialState ?? {}));
15
15
  let a = () => r.store ?? i, o = r.store ? "controlled" : "uncontrolled", s = !1;
16
- typeof globalThis < "u" && globalThis.process?.env?.NODE_ENV !== "production" && h(() => {
16
+ typeof globalThis < "u" && globalThis.process?.env?.NODE_ENV !== "production" && T(() => {
17
17
  let e = r.store ? "controlled" : "uncontrolled";
18
18
  e !== o && !s && (s = !0, console.warn(`StateProvider: switching from ${o} to ${e} mode is not supported.`));
19
19
  });
20
- let c = r.initialState, u = x(!!r.store, r.initialState ?? {});
21
- h(() => {
20
+ let c = r.initialState, l = j(!!r.store, r.initialState ?? {});
21
+ T(() => {
22
22
  if (r.store) return;
23
23
  let e = r.initialState ?? {};
24
24
  if (e === c) return;
25
25
  c = e;
26
- let n = e && Object.keys(e).length > 0 ? t(e) : {}, i = u ?? {}, o = /* @__PURE__ */ new Set([...Object.keys(i), ...Object.keys(n)]), s = {};
26
+ let n = e && Object.keys(e).length > 0 ? t(e) : {}, i = l ?? {}, o = /* @__PURE__ */ new Set([...Object.keys(i), ...Object.keys(n)]), s = {};
27
27
  for (let e of o) i[e] !== n[e] && (s[e] = e in n ? n[e] : void 0);
28
- u = n, Object.keys(s).length > 0 && a().update(s);
28
+ l = n, Object.keys(s).length > 0 && a().update(s);
29
29
  });
30
- let [d, f] = _(a().getSnapshot(), { equals: !1 }), p = /* @__PURE__ */ new Set(), m = (e) => (p.add(e), () => {
31
- p.delete(e);
32
- }), g = (e) => {
33
- for (let t of p) t(e);
30
+ let [u, d] = D(a().getSnapshot(), { equals: !1 }), f = /* @__PURE__ */ new Set(), p = (e) => (f.add(e), () => {
31
+ f.delete(e);
32
+ }), h = (e) => {
33
+ for (let t of f) t(e);
34
34
  };
35
- h(() => {
35
+ T(() => {
36
36
  let e = a();
37
- f(e.getSnapshot()), v(e.subscribe(() => {
38
- f(e.getSnapshot());
37
+ d(e.getSnapshot()), O(e.subscribe(() => {
38
+ d(e.getSnapshot());
39
39
  }));
40
40
  });
41
- let y = {
41
+ let g = {
42
42
  get state() {
43
- return d();
43
+ return u();
44
44
  },
45
45
  get: (e) => a().get(e),
46
46
  set: (e, t) => {
@@ -50,7 +50,7 @@ function S(r) {
50
50
  path: e,
51
51
  value: t
52
52
  }];
53
- g(n), !r.store && i.getSnapshot() !== o && r.onStateChange?.(n);
53
+ h(n), !r.store && i.getSnapshot() !== o && r.onStateChange?.(n);
54
54
  }
55
55
  },
56
56
  update: (e) => {
@@ -61,217 +61,234 @@ function S(r) {
61
61
  path: t,
62
62
  value: r
63
63
  });
64
- o.length > 0 && (g(o), !r.store && t.getSnapshot() !== i && r.onStateChange?.(o));
64
+ o.length > 0 && (h(o), !r.store && t.getSnapshot() !== i && r.onStateChange?.(o));
65
65
  },
66
66
  getSnapshot: () => a().getSnapshot(),
67
- subscribeChanges: m
67
+ subscribeChanges: p
68
68
  };
69
- return l(b.Provider, {
70
- value: y,
69
+ return m(A.Provider, {
70
+ value: g,
71
71
  get children() {
72
72
  return r.children;
73
73
  }
74
74
  });
75
75
  }
76
- function C() {
77
- let e = y(b);
76
+ function N() {
77
+ let e = k(A);
78
78
  if (!e) throw Error("useStateStore must be used within a StateProvider");
79
79
  return e;
80
80
  }
81
- function w(e) {
82
- let t = C();
83
- return [g(() => n(t.state, e)), (n) => t.set(e, n)];
84
- }
85
- var T = m(null);
86
- function E(e) {
87
- let t = C(), n = { get stateModel() {
81
+ var P = w(null);
82
+ function F(e) {
83
+ let t = N(), n = { get stateModel() {
88
84
  return t.state;
89
85
  } }, i = {
90
86
  isVisible: (e) => r(e, n),
91
87
  ctx: n
92
88
  };
93
- return l(T.Provider, {
89
+ return m(P.Provider, {
94
90
  value: i,
95
91
  get children() {
96
92
  return e.children;
97
93
  }
98
94
  });
99
95
  }
100
- function D() {
101
- let e = y(T);
96
+ function I() {
97
+ let e = k(P);
102
98
  if (!e) throw Error("useVisibility must be used within a VisibilityProvider");
103
99
  return e;
104
100
  }
105
- var O = m(null);
106
- function k() {
107
- return y(O);
101
+ var L = w(null);
102
+ function R() {
103
+ return k(L);
108
104
  }
109
- var A = 0;
110
- function j() {
111
- return A += 1, `${Date.now()}-${A}`;
105
+ var z = 0;
106
+ function B() {
107
+ return z += 1, `${Date.now()}-${z}`;
112
108
  }
113
- function M(e, t) {
109
+ function V(e, t) {
114
110
  if (e == null) return e;
115
- if (e === "$id") return j();
111
+ if (e === "$id") return B();
116
112
  if (typeof e == "object" && !Array.isArray(e)) {
117
113
  let n = e, r = Object.keys(n);
118
114
  if (r.length === 1 && typeof n.$state == "string") return t(n.$state);
119
- if (r.length === 1 && "$id" in n) return j();
115
+ if (r.length === 1 && "$id" in n) return B();
120
116
  }
121
- if (Array.isArray(e)) return e.map((e) => M(e, t));
117
+ if (Array.isArray(e)) return e.map((e) => V(e, t));
122
118
  if (typeof e == "object") {
123
119
  let n = {};
124
- for (let [r, i] of Object.entries(e)) n[r] = M(i, t);
120
+ for (let [r, i] of Object.entries(e)) n[r] = V(i, t);
125
121
  return n;
126
122
  }
127
123
  return e;
128
124
  }
129
- var N = m(null);
130
- function P(e) {
131
- let { get: t, set: n, getSnapshot: r } = C(), o = k(), [s, c] = _(e.handlers ?? {}), [u, d] = _(/* @__PURE__ */ new Set()), [f, p] = _(null), m = (e, t) => {
132
- c((n) => ({
125
+ var H = w(null);
126
+ function U(e) {
127
+ let { get: t, set: n, getSnapshot: r } = N(), a = R(), [u, d] = D(e.handlers ?? {}), [f, p] = D(/* @__PURE__ */ new Set()), [h, g] = D(null), _ = (e, t) => {
128
+ d((n) => ({
133
129
  ...n,
134
130
  [e]: t
135
131
  }));
136
- }, h = async (c) => {
137
- let l = a(c, r());
138
- if (l.action === "setState" && l.params) {
139
- let e = l.params.statePath, t = l.params.value;
140
- e && n(e, t);
141
- return;
142
- }
143
- if (l.action === "pushState" && l.params) {
144
- let e = l.params.statePath, r = l.params.value;
145
- if (e) {
146
- let i = M(r, t);
147
- n(e, [...t(e) ?? [], i]);
148
- let a = l.params.clearStatePath;
149
- a && n(a, "");
132
+ }, v = async (d) => {
133
+ let f = l(d, r()), m = o(), h = Date.now();
134
+ s({
135
+ id: m,
136
+ name: f.action,
137
+ params: f.params,
138
+ at: h
139
+ });
140
+ let _ = !0, y;
141
+ try {
142
+ if (f.action === "setState" && f.params) {
143
+ let e = f.params.statePath, t = f.params.value;
144
+ e && n(e, t);
145
+ return;
150
146
  }
151
- return;
152
- }
153
- if (l.action === "removeState" && l.params) {
154
- let e = l.params.statePath, r = l.params.index;
155
- e !== void 0 && r !== void 0 && n(e, (t(e) ?? []).filter((e, t) => t !== r));
156
- return;
157
- }
158
- if (l.action === "push" && l.params) {
159
- let e = l.params.screen;
160
- if (e) {
161
- let r = t("/currentScreen"), i = t("/navStack") ?? [];
162
- r ? n("/navStack", [...i, r]) : n("/navStack", [...i, ""]), n("/currentScreen", e);
147
+ if (f.action === "pushState" && f.params) {
148
+ let e = f.params.statePath, r = f.params.value;
149
+ if (e) {
150
+ let i = V(r, t);
151
+ n(e, [...t(e) ?? [], i]);
152
+ let a = f.params.clearStatePath;
153
+ a && n(a, "");
154
+ }
155
+ return;
163
156
  }
164
- return;
165
- }
166
- if (l.action === "pop") {
167
- let e = t("/navStack") ?? [];
168
- if (e.length > 0) {
169
- let t = e[e.length - 1];
170
- n("/navStack", e.slice(0, -1)), t ? n("/currentScreen", t) : n("/currentScreen", void 0);
157
+ if (f.action === "removeState" && f.params) {
158
+ let e = f.params.statePath, r = f.params.index;
159
+ e !== void 0 && r !== void 0 && n(e, (t(e) ?? []).filter((e, t) => t !== r));
160
+ return;
171
161
  }
172
- return;
173
- }
174
- if (l.action === "validateForm") {
175
- let e = o?.validateAll;
176
- if (!e) {
177
- console.warn("validateForm action was dispatched but no ValidationProvider is connected. Ensure ValidationProvider is rendered inside the provider tree.");
162
+ if (f.action === "push" && f.params) {
163
+ let e = f.params.screen;
164
+ if (e) {
165
+ let r = t("/currentScreen"), i = t("/navStack") ?? [];
166
+ r ? n("/navStack", [...i, r]) : n("/navStack", [...i, ""]), n("/currentScreen", e);
167
+ }
178
168
  return;
179
169
  }
180
- let t = e(), r = {};
181
- for (let [e, t] of Object.entries(o.fieldStates)) t.result && !t.result.valid && (r[e] = t.result.errors);
182
- n(l.params?.statePath || "/formValidation", {
183
- valid: t,
184
- errors: r
185
- });
186
- return;
187
- }
188
- let u = s()[l.action];
189
- if (!u) {
190
- console.warn(`No handler registered for action: ${l.action}`);
191
- return;
192
- }
193
- if (l.confirm) return new Promise((e, t) => {
194
- p({
195
- action: l,
196
- handler: u,
197
- resolve: () => {
198
- p(null), e();
199
- },
200
- reject: () => {
201
- p(null), t(/* @__PURE__ */ Error("Action cancelled"));
170
+ if (f.action === "pop") {
171
+ let e = t("/navStack") ?? [];
172
+ if (e.length > 0) {
173
+ let t = e[e.length - 1];
174
+ n("/navStack", e.slice(0, -1)), t ? n("/currentScreen", t) : n("/currentScreen", void 0);
175
+ }
176
+ return;
177
+ }
178
+ if (f.action === "validateForm") {
179
+ let e = a?.validateAll;
180
+ if (!e) {
181
+ console.warn("validateForm action was dispatched but no ValidationProvider is connected. Ensure ValidationProvider is rendered inside the provider tree.");
182
+ return;
183
+ }
184
+ let t = e(), r = {};
185
+ for (let [e, t] of Object.entries(a.fieldStates)) t.result && !t.result.valid && (r[e] = t.result.errors);
186
+ n(f.params?.statePath || "/formValidation", {
187
+ valid: t,
188
+ errors: r
189
+ });
190
+ return;
191
+ }
192
+ let r = u()[f.action];
193
+ if (!r) {
194
+ console.warn(`No handler registered for action: ${f.action}`);
195
+ return;
196
+ }
197
+ if (f.confirm) return new Promise((e, t) => {
198
+ g({
199
+ action: f,
200
+ handler: r,
201
+ resolve: () => {
202
+ g(null), e();
203
+ },
204
+ reject: () => {
205
+ g(null), t(/* @__PURE__ */ Error("Action cancelled"));
206
+ }
207
+ });
208
+ }).then(async () => {
209
+ p((e) => new Set(e).add(f.action));
210
+ try {
211
+ await i({
212
+ action: f,
213
+ handler: r,
214
+ setState: n,
215
+ navigate: e.navigate,
216
+ executeAction: async (e) => {
217
+ await v({ action: e });
218
+ }
219
+ });
220
+ } finally {
221
+ p((e) => {
222
+ let t = new Set(e);
223
+ return t.delete(f.action), t;
224
+ });
202
225
  }
203
226
  });
204
- }).then(async () => {
205
- d((e) => new Set(e).add(l.action));
227
+ p((e) => new Set(e).add(f.action));
206
228
  try {
207
229
  await i({
208
- action: l,
209
- handler: u,
230
+ action: f,
231
+ handler: r,
210
232
  setState: n,
211
233
  navigate: e.navigate,
212
234
  executeAction: async (e) => {
213
- await h({ action: e });
235
+ await v({ action: e });
214
236
  }
215
237
  });
216
238
  } finally {
217
- d((e) => {
239
+ p((e) => {
218
240
  let t = new Set(e);
219
- return t.delete(l.action), t;
241
+ return t.delete(f.action), t;
220
242
  });
221
243
  }
222
- });
223
- d((e) => new Set(e).add(l.action));
224
- try {
225
- await i({
226
- action: l,
227
- handler: u,
228
- setState: n,
229
- navigate: e.navigate,
230
- executeAction: async (e) => {
231
- await h({ action: e });
232
- }
233
- });
244
+ } catch (e) {
245
+ throw _ = !1, y = e, e;
234
246
  } finally {
235
- d((e) => {
236
- let t = new Set(e);
237
- return t.delete(l.action), t;
247
+ let e = Date.now();
248
+ c({
249
+ id: m,
250
+ name: f.action,
251
+ ok: _,
252
+ at: e,
253
+ durationMs: e - h,
254
+ error: y
238
255
  });
239
256
  }
240
- }, g = {
257
+ }, y = {
241
258
  get handlers() {
242
- return s();
259
+ return u();
243
260
  },
244
261
  get loadingActions() {
245
- return u();
262
+ return f();
246
263
  },
247
264
  get pendingConfirmation() {
248
- return f();
265
+ return h();
249
266
  },
250
- execute: h,
267
+ execute: v,
251
268
  confirm: () => {
252
- f()?.resolve();
269
+ h()?.resolve();
253
270
  },
254
271
  cancel: () => {
255
- f()?.reject();
272
+ h()?.reject();
256
273
  },
257
- registerHandler: m
274
+ registerHandler: _
258
275
  };
259
- return l(N.Provider, {
260
- value: g,
276
+ return m(H.Provider, {
277
+ value: y,
261
278
  get children() {
262
279
  return e.children;
263
280
  }
264
281
  });
265
282
  }
266
- function F() {
267
- let e = y(N);
283
+ function W() {
284
+ let e = k(H);
268
285
  if (!e) throw Error("useActions must be used within an ActionProvider");
269
286
  return e;
270
287
  }
271
- u(["click"]);
272
- var I = m(null);
273
- function L(e) {
274
- return l(I.Provider, {
288
+ h(["click"]);
289
+ var G = w(null);
290
+ function K(e) {
291
+ return m(G.Provider, {
275
292
  get value() {
276
293
  return {
277
294
  item: e.item,
@@ -284,15 +301,19 @@ function L(e) {
284
301
  }
285
302
  });
286
303
  }
287
- function R() {
288
- return y(I);
304
+ function q() {
305
+ return k(G);
306
+ }
307
+ var J = /* @__PURE__ */ b("<span style=display:contents>"), Y = {}, X = w(Y);
308
+ function Z() {
309
+ return k(X) ?? Y;
289
310
  }
290
- var z = {}, B = m(z);
291
- function V() {
292
- return y(B) ?? z;
311
+ function Q() {
312
+ let [e, t] = D(a());
313
+ return O(p(() => t(a()))), e;
293
314
  }
294
- function H(e) {
295
- let t = R(), { ctx: n } = D(), { execute: i } = F(), a = C(), u = () => a.getSnapshot(), f = V(), m = g(() => {
315
+ function $(e) {
316
+ let t = q(), { ctx: n } = I(), { execute: i } = W(), a = N(), o = () => a.getSnapshot(), s = Z(), c = E(() => {
296
317
  let e = t?.item, r = t?.index, i = t?.basePath;
297
318
  return {
298
319
  get stateModel() {
@@ -301,9 +322,9 @@ function H(e) {
301
322
  ...e === void 0 ? {} : { repeatItem: e },
302
323
  ...r === void 0 ? {} : { repeatIndex: r },
303
324
  ...i === void 0 ? {} : { repeatBasePath: i },
304
- functions: f
325
+ functions: s
305
326
  };
306
- }), _ = g(() => e.element.visible === void 0 ? !0 : r(e.element.visible, m())), y = async (t) => {
327
+ }), l = E(() => e.element.visible === void 0 ? !0 : r(e.element.visible, c())), p = async (t) => {
307
328
  let n = e.element.on?.[t];
308
329
  if (!n) return;
309
330
  let r = Array.isArray(n) ? n : [n];
@@ -313,19 +334,19 @@ function H(e) {
313
334
  continue;
314
335
  }
315
336
  let t = {
316
- ...m(),
317
- stateModel: u()
337
+ ...c(),
338
+ stateModel: o()
318
339
  }, n = {};
319
- for (let [r, i] of Object.entries(e.params)) n[r] = o(i, t);
340
+ for (let [r, i] of Object.entries(e.params)) n[r] = u(i, t);
320
341
  await i({
321
342
  ...e,
322
343
  params: n
323
344
  });
324
345
  }
325
- }, b = (t) => {
346
+ }, h = (t) => {
326
347
  let n = e.element.on?.[t];
327
348
  return n ? {
328
- emit: () => y(t),
349
+ emit: () => p(t),
329
350
  shouldPreventDefault: (Array.isArray(n) ? n : [n]).some((e) => e.preventDefault),
330
351
  bound: !0
331
352
  } : {
@@ -334,7 +355,7 @@ function H(e) {
334
355
  bound: !1
335
356
  };
336
357
  };
337
- h(() => {
358
+ T(() => {
338
359
  let t = e.element.watch;
339
360
  if (!t) return;
340
361
  let n = Object.keys(t);
@@ -353,10 +374,10 @@ function H(e) {
353
374
  continue;
354
375
  }
355
376
  let t = {
356
- ...m(),
357
- stateModel: u()
377
+ ...c(),
378
+ stateModel: o()
358
379
  }, n = {};
359
- for (let [r, i] of Object.entries(e.params)) n[r] = o(i, t);
380
+ for (let [r, i] of Object.entries(e.params)) n[r] = u(i, t);
360
381
  await i({
361
382
  ...e,
362
383
  params: n
@@ -365,31 +386,34 @@ function H(e) {
365
386
  }
366
387
  })().catch(console.error);
367
388
  });
368
- v(() => {
389
+ O(() => {
369
390
  r();
370
391
  });
371
392
  });
372
- let x = g(() => {
393
+ let g = E(() => {
373
394
  let t = e.element.props;
374
- return s(t, m());
375
- }), S = g(() => {
376
- let t = e.element.props, n = c(t, m());
395
+ return d(t, c());
396
+ }), _ = E(() => {
397
+ let t = e.element.props, n = f(t, c());
377
398
  return n === e.element.props ? e.element : {
378
399
  ...e.element,
379
400
  props: n
380
401
  };
381
402
  });
382
- return l(p, {
403
+ return m(C, {
383
404
  get when() {
384
- return _();
405
+ return l();
385
406
  },
386
407
  get children() {
387
- return l(d, {
408
+ return m(x, {
388
409
  fallback: (t) => (console.error(`[json-render] Rendering error in <${e.element.type}>:`, t), null),
389
410
  get children() {
390
- return l(U, {
411
+ return m(ee, {
391
412
  get resolvedElement() {
392
- return S();
413
+ return _();
414
+ },
415
+ get elementKey() {
416
+ return e.elementKey;
393
417
  },
394
418
  get spec() {
395
419
  return e.spec;
@@ -403,10 +427,10 @@ function H(e) {
403
427
  get fallback() {
404
428
  return e.fallback;
405
429
  },
406
- emit: y,
407
- on: b,
430
+ emit: p,
431
+ on: h,
408
432
  get bindings() {
409
- return x();
433
+ return g();
410
434
  }
411
435
  });
412
436
  }
@@ -414,17 +438,17 @@ function H(e) {
414
438
  }
415
439
  });
416
440
  }
417
- function U(e) {
418
- let t = () => e.registry[e.resolvedElement.type] ?? e.fallback;
419
- return l(p, {
441
+ function ee(e) {
442
+ let t = Q(), n = () => e.registry[e.resolvedElement.type] ?? e.fallback;
443
+ return m(C, {
420
444
  get when() {
421
- return t();
445
+ return n();
422
446
  },
423
447
  get fallback() {
424
448
  return console.warn(`No renderer for component type: ${e.resolvedElement.type}`), null;
425
449
  },
426
- children: (t) => {
427
- let n = t(), r = () => e.resolvedElement.repeat ? l(W, {
450
+ children: (n) => {
451
+ let r = n(), i = () => e.resolvedElement.repeat ? m(te, {
428
452
  get element() {
429
453
  return e.resolvedElement;
430
454
  },
@@ -440,23 +464,24 @@ function U(e) {
440
464
  get fallback() {
441
465
  return e.fallback;
442
466
  }
443
- }) : l(f, {
467
+ }) : m(S, {
444
468
  get each() {
445
469
  return e.resolvedElement.children ?? [];
446
470
  },
447
471
  children: (t) => {
448
472
  let n = () => e.spec.elements[t];
449
- return l(p, {
473
+ return m(C, {
450
474
  get when() {
451
475
  return n();
452
476
  },
453
477
  get fallback() {
454
478
  return e.loading || console.warn(`[json-render] Missing element "${t}" referenced as child of "${e.resolvedElement.type}". This element will not render.`), null;
455
479
  },
456
- children: (t) => l(H, {
480
+ children: (n) => m($, {
457
481
  get element() {
458
- return t();
482
+ return n();
459
483
  },
484
+ elementKey: t,
460
485
  get spec() {
461
486
  return e.spec;
462
487
  },
@@ -472,8 +497,7 @@ function U(e) {
472
497
  })
473
498
  });
474
499
  }
475
- });
476
- return l(n, {
500
+ }), a = m(r, {
477
501
  get element() {
478
502
  return e.resolvedElement;
479
503
  },
@@ -490,19 +514,29 @@ function U(e) {
490
514
  return e.loading;
491
515
  },
492
516
  get children() {
493
- return r();
517
+ return i();
518
+ }
519
+ });
520
+ return m(C, {
521
+ get when() {
522
+ return v(() => !!t())() && e.elementKey;
523
+ },
524
+ fallback: a,
525
+ get children() {
526
+ var t = J();
527
+ return _(t, a), g(() => y(t, "data-jr-key", e.elementKey)), t;
494
528
  }
495
529
  });
496
530
  }
497
531
  });
498
532
  }
499
- function W(e) {
500
- let t = C(), r = () => e.element.repeat, i = () => r().statePath, a = () => n(t.state, i()) ?? [];
501
- return l(f, {
533
+ function te(e) {
534
+ let t = N(), r = () => e.element.repeat, i = () => r().statePath, a = () => n(t.state, i()) ?? [];
535
+ return m(S, {
502
536
  get each() {
503
537
  return a();
504
538
  },
505
- children: (t, n) => l(L, {
539
+ children: (t, n) => m(K, {
506
540
  item: t,
507
541
  get index() {
508
542
  return n();
@@ -511,20 +545,20 @@ function W(e) {
511
545
  return `${i()}/${n()}`;
512
546
  },
513
547
  get children() {
514
- return l(f, {
548
+ return m(S, {
515
549
  get each() {
516
550
  return e.element.children ?? [];
517
551
  },
518
552
  children: (t) => {
519
553
  let n = () => e.spec.elements[t];
520
- return l(p, {
554
+ return m(C, {
521
555
  get when() {
522
556
  return n();
523
557
  },
524
558
  get fallback() {
525
559
  return e.loading || console.warn(`[json-render] Missing element "${t}" referenced as child of "${e.element.type}" (repeat). This element will not render.`), null;
526
560
  },
527
- children: (t) => l(H, {
561
+ children: (t) => m($, {
528
562
  get element() {
529
563
  return t();
530
564
  },
@@ -548,19 +582,22 @@ function W(e) {
548
582
  })
549
583
  });
550
584
  }
551
- function G(e) {
552
- let t = g(() => {
585
+ function ne(e) {
586
+ let t = E(() => {
553
587
  let t = e.spec;
554
588
  if (!(!t || !t.root)) return t.elements[t.root];
555
589
  });
556
- return l(p, {
590
+ return m(C, {
557
591
  get when() {
558
592
  return t();
559
593
  },
560
- children: (t) => l(H, {
594
+ children: (t) => m($, {
561
595
  get element() {
562
596
  return t();
563
597
  },
598
+ get elementKey() {
599
+ return e.spec.root;
600
+ },
564
601
  get spec() {
565
602
  return e.spec;
566
603
  },
@@ -576,7 +613,7 @@ function G(e) {
576
613
  })
577
614
  });
578
615
  }
579
- function K(e, t) {
616
+ function re(e, t) {
580
617
  let n = {};
581
618
  if (t.components) for (let [e, r] of Object.entries(t.components)) n[e] = (e) => r({
582
619
  get props() {
@@ -611,7 +648,13 @@ function K(e, t) {
611
648
  }
612
649
  };
613
650
  }
651
+ function ie(e, t) {
652
+ let { set: n } = N();
653
+ return [e, (e) => {
654
+ t && n(t, e);
655
+ }];
656
+ }
614
657
  //#endregion
615
- export { P as ActionProvider, G as Renderer, S as StateProvider, E as VisibilityProvider, K as defineRegistry, w as useStateBinding };
658
+ export { U as ActionProvider, ne as Renderer, M as StateProvider, F as VisibilityProvider, re as defineRegistry, ie as useBoundProp, N as useStateStore };
616
659
 
617
660
  //# sourceMappingURL=index.js.map