cogsbox-state 0.5.314 → 0.5.316

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,63 +1,63 @@
1
1
  "use client";
2
- import { jsx as mt } from "react/jsx-runtime";
3
- import { useState as X, useRef as Q, useEffect as ot, useLayoutEffect as ct, useMemo as ht, createElement as at, useSyncExternalStore as xt, startTransition as Pt, useCallback as wt } from "react";
4
- import { transformStateFunc as _t, isDeepEqual as H, isFunction as J, getNestedValue as z, getDifferences as vt, debounce as Mt } from "./utility.js";
5
- import { pushFunc as St, updateFn as rt, cutFunc as it, ValidationWrapper as jt, FormControlComponent as Ot } from "./Functions.jsx";
6
- import Rt from "superjson";
7
- import { v4 as yt } from "uuid";
2
+ import { jsx as yt } from "react/jsx-runtime";
3
+ import { useState as tt, useRef as Z, useEffect as it, useLayoutEffect as ut, useMemo as It, createElement as ct, useSyncExternalStore as _t, startTransition as Mt, useCallback as Tt } from "react";
4
+ import { transformStateFunc as Rt, isDeepEqual as q, isFunction as Q, getNestedValue as J, getDifferences as pt, debounce as jt } from "./utility.js";
5
+ import { pushFunc as vt, updateFn as st, cutFunc as dt, ValidationWrapper as Ot, FormControlComponent as Ut } from "./Functions.jsx";
6
+ import Ft from "superjson";
7
+ import { v4 as wt } from "uuid";
8
8
  import "zod";
9
- import { getGlobalStore as o, formRefStore as Tt } from "./store.js";
10
- import { useCogsConfig as bt } from "./CogsStateClient.jsx";
11
- import { applyPatch as Ut } from "fast-json-patch";
12
- import Ft from "react-use-measure";
13
- function Et(t, c) {
14
- const h = o.getState().getInitialOptions, f = o.getState().setInitialStateOptions, I = h(t) || {};
9
+ import { getGlobalStore as o, formRefStore as Et } from "./store.js";
10
+ import { useCogsConfig as Ct } from "./CogsStateClient.jsx";
11
+ import { applyPatch as Dt } from "fast-json-patch";
12
+ import Wt from "react-use-measure";
13
+ function At(t, c) {
14
+ const m = o.getState().getInitialOptions, f = o.getState().setInitialStateOptions, y = m(t) || {};
15
15
  f(t, {
16
- ...I,
16
+ ...y,
17
17
  ...c
18
18
  });
19
19
  }
20
- function At({
20
+ function Vt({
21
21
  stateKey: t,
22
22
  options: c,
23
- initialOptionsPart: h
23
+ initialOptionsPart: m
24
24
  }) {
25
- const f = et(t) || {}, I = h[t] || {}, $ = o.getState().setInitialStateOptions, w = { ...I, ...f };
26
- let p = !1;
25
+ const f = rt(t) || {}, y = m[t] || {}, b = o.getState().setInitialStateOptions, p = { ...y, ...f };
26
+ let I = !1;
27
27
  if (c)
28
28
  for (const a in c)
29
- w.hasOwnProperty(a) ? (a == "localStorage" && c[a] && w[a].key !== c[a]?.key && (p = !0, w[a] = c[a]), a == "initialState" && c[a] && w[a] !== c[a] && // Different references
30
- !H(w[a], c[a]) && (p = !0, w[a] = c[a])) : (p = !0, w[a] = c[a]);
31
- p && $(t, w);
29
+ p.hasOwnProperty(a) ? (a == "localStorage" && c[a] && p[a].key !== c[a]?.key && (I = !0, p[a] = c[a]), a == "initialState" && c[a] && p[a] !== c[a] && // Different references
30
+ !q(p[a], c[a]) && (I = !0, p[a] = c[a])) : (I = !0, p[a] = c[a]);
31
+ I && b(t, p);
32
32
  }
33
- function ie(t, { formElements: c, validation: h }) {
34
- return { initialState: t, formElements: c, validation: h };
33
+ function le(t, { formElements: c, validation: m }) {
34
+ return { initialState: t, formElements: c, validation: m };
35
35
  }
36
- const ce = (t, c) => {
37
- let h = t;
38
- const [f, I] = _t(h);
39
- (Object.keys(I).length > 0 || c && Object.keys(c).length > 0) && Object.keys(I).forEach((p) => {
40
- I[p] = I[p] || {}, I[p].formElements = {
36
+ const de = (t, c) => {
37
+ let m = t;
38
+ const [f, y] = Rt(m);
39
+ (Object.keys(y).length > 0 || c && Object.keys(c).length > 0) && Object.keys(y).forEach((I) => {
40
+ y[I] = y[I] || {}, y[I].formElements = {
41
41
  ...c?.formElements,
42
42
  // Global defaults first
43
43
  ...c?.validation,
44
- ...I[p].formElements || {}
44
+ ...y[I].formElements || {}
45
45
  // State-specific overrides
46
- }, et(p) || o.getState().setInitialStateOptions(p, I[p]);
46
+ }, rt(I) || o.getState().setInitialStateOptions(I, y[I]);
47
47
  }), o.getState().setInitialStates(f), o.getState().setCreatedState(f);
48
- const $ = (p, a) => {
49
- const [y] = X(a?.componentId ?? yt());
50
- At({
51
- stateKey: p,
48
+ const b = (I, a) => {
49
+ const [v] = tt(a?.componentId ?? wt());
50
+ Vt({
51
+ stateKey: I,
52
52
  options: a,
53
- initialOptionsPart: I
53
+ initialOptionsPart: y
54
54
  });
55
- const n = o.getState().cogsStateStore[p] || f[p], m = a?.modifyState ? a.modifyState(n) : n, [L, R] = Bt(
56
- m,
55
+ const n = o.getState().cogsStateStore[I] || f[I], S = a?.modifyState ? a.modifyState(n) : n, [G, O] = Jt(
56
+ S,
57
57
  {
58
- stateKey: p,
58
+ stateKey: I,
59
59
  syncUpdate: a?.syncUpdate,
60
- componentId: y,
60
+ componentId: v,
61
61
  localStorage: a?.localStorage,
62
62
  middleware: a?.middleware,
63
63
  enabledSync: a?.enabledSync,
@@ -68,49 +68,49 @@ const ce = (t, c) => {
68
68
  serverState: a?.serverState
69
69
  }
70
70
  );
71
- return R;
71
+ return O;
72
72
  };
73
- function w(p, a) {
74
- At({ stateKey: p, options: a, initialOptionsPart: I }), a.localStorage && Ht(p, a), gt(p);
73
+ function p(I, a) {
74
+ Vt({ stateKey: I, options: a, initialOptionsPart: y }), a.localStorage && Bt(I, a), mt(I);
75
75
  }
76
- return { useCogsState: $, setCogsOptions: w };
76
+ return { useCogsState: b, setCogsOptions: p };
77
77
  }, {
78
- setUpdaterState: lt,
79
- setState: K,
80
- getInitialOptions: et,
78
+ setUpdaterState: gt,
79
+ setState: et,
80
+ getInitialOptions: rt,
81
81
  getKeyState: Nt,
82
- getValidationErrors: Dt,
83
- setStateLog: Wt,
84
- updateInitialStateGlobal: It,
85
- addValidationError: Lt,
86
- removeValidationError: q,
87
- setServerSyncActions: Gt
88
- } = o.getState(), $t = (t, c, h, f, I) => {
89
- h?.log && console.log(
82
+ getValidationErrors: Lt,
83
+ setStateLog: Gt,
84
+ updateInitialStateGlobal: $t,
85
+ addValidationError: Ht,
86
+ removeValidationError: X,
87
+ setServerSyncActions: zt
88
+ } = o.getState(), kt = (t, c, m, f, y) => {
89
+ m?.log && console.log(
90
90
  "saving to localstorage",
91
91
  c,
92
- h.localStorage?.key,
92
+ m.localStorage?.key,
93
93
  f
94
94
  );
95
- const $ = J(h?.localStorage?.key) ? h.localStorage?.key(t) : h?.localStorage?.key;
96
- if ($ && f) {
97
- const w = `${f}-${c}-${$}`;
98
- let p;
95
+ const b = Q(m?.localStorage?.key) ? m.localStorage?.key(t) : m?.localStorage?.key;
96
+ if (b && f) {
97
+ const p = `${f}-${c}-${b}`;
98
+ let I;
99
99
  try {
100
- p = ut(w)?.lastSyncedWithServer;
100
+ I = St(p)?.lastSyncedWithServer;
101
101
  } catch {
102
102
  }
103
103
  const a = {
104
104
  state: t,
105
105
  lastUpdated: Date.now(),
106
- lastSyncedWithServer: I ?? p
107
- }, y = Rt.serialize(a);
106
+ lastSyncedWithServer: y ?? I
107
+ }, v = Ft.serialize(a);
108
108
  window.localStorage.setItem(
109
- w,
110
- JSON.stringify(y.json)
109
+ p,
110
+ JSON.stringify(v.json)
111
111
  );
112
112
  }
113
- }, ut = (t) => {
113
+ }, St = (t) => {
114
114
  if (!t) return null;
115
115
  try {
116
116
  const c = window.localStorage.getItem(t);
@@ -118,61 +118,61 @@ const ce = (t, c) => {
118
118
  } catch (c) {
119
119
  return console.error("Error loading from localStorage:", c), null;
120
120
  }
121
- }, Ht = (t, c) => {
122
- const h = o.getState().cogsStateStore[t], { sessionId: f } = bt(), I = J(c?.localStorage?.key) ? c.localStorage.key(h) : c?.localStorage?.key;
123
- if (I && f) {
124
- const $ = ut(
125
- `${f}-${t}-${I}`
121
+ }, Bt = (t, c) => {
122
+ const m = o.getState().cogsStateStore[t], { sessionId: f } = Ct(), y = Q(c?.localStorage?.key) ? c.localStorage.key(m) : c?.localStorage?.key;
123
+ if (y && f) {
124
+ const b = St(
125
+ `${f}-${t}-${y}`
126
126
  );
127
- if ($ && $.lastUpdated > ($.lastSyncedWithServer || 0))
128
- return K(t, $.state), gt(t), !0;
127
+ if (b && b.lastUpdated > (b.lastSyncedWithServer || 0))
128
+ return et(t, b.state), mt(t), !0;
129
129
  }
130
130
  return !1;
131
- }, Vt = (t, c, h, f, I, $) => {
132
- const w = {
131
+ }, xt = (t, c, m, f, y, b) => {
132
+ const p = {
133
133
  initialState: c,
134
- updaterState: dt(
134
+ updaterState: ft(
135
135
  t,
136
136
  f,
137
- I,
138
- $
137
+ y,
138
+ b
139
139
  ),
140
- state: h
140
+ state: m
141
141
  };
142
- It(t, w.initialState), lt(t, w.updaterState), K(t, w.state);
143
- }, gt = (t) => {
142
+ $t(t, p.initialState), gt(t, p.updaterState), et(t, p.state);
143
+ }, mt = (t) => {
144
144
  const c = o.getState().stateComponents.get(t);
145
145
  if (!c) return;
146
- const h = /* @__PURE__ */ new Set();
146
+ const m = /* @__PURE__ */ new Set();
147
147
  c.components.forEach((f) => {
148
- (f ? Array.isArray(f.reactiveType) ? f.reactiveType : [f.reactiveType || "component"] : null)?.includes("none") || h.add(() => f.forceUpdate());
148
+ (f ? Array.isArray(f.reactiveType) ? f.reactiveType : [f.reactiveType || "component"] : null)?.includes("none") || m.add(() => f.forceUpdate());
149
149
  }), queueMicrotask(() => {
150
- h.forEach((f) => f());
150
+ m.forEach((f) => f());
151
151
  });
152
- }, le = (t, c) => {
153
- const h = o.getState().stateComponents.get(t);
154
- if (h) {
155
- const f = `${t}////${c}`, I = h.components.get(f);
156
- if ((I ? Array.isArray(I.reactiveType) ? I.reactiveType : [I.reactiveType || "component"] : null)?.includes("none"))
152
+ }, ue = (t, c) => {
153
+ const m = o.getState().stateComponents.get(t);
154
+ if (m) {
155
+ const f = `${t}////${c}`, y = m.components.get(f);
156
+ if ((y ? Array.isArray(y.reactiveType) ? y.reactiveType : [y.reactiveType || "component"] : null)?.includes("none"))
157
157
  return;
158
- I && I.forceUpdate();
158
+ y && y.forceUpdate();
159
159
  }
160
- }, zt = (t, c, h, f) => {
160
+ }, qt = (t, c, m, f) => {
161
161
  switch (t) {
162
162
  case "update":
163
163
  return {
164
- oldValue: z(c, f),
165
- newValue: z(h, f)
164
+ oldValue: J(c, f),
165
+ newValue: J(m, f)
166
166
  };
167
167
  case "insert":
168
168
  return {
169
169
  oldValue: null,
170
170
  // or undefined
171
- newValue: z(h, f)
171
+ newValue: J(m, f)
172
172
  };
173
173
  case "cut":
174
174
  return {
175
- oldValue: z(c, f),
175
+ oldValue: J(c, f),
176
176
  newValue: null
177
177
  // or undefined
178
178
  };
@@ -180,327 +180,327 @@ const ce = (t, c) => {
180
180
  return { oldValue: null, newValue: null };
181
181
  }
182
182
  };
183
- function Bt(t, {
183
+ function Jt(t, {
184
184
  stateKey: c,
185
- serverSync: h,
185
+ serverSync: m,
186
186
  localStorage: f,
187
- formElements: I,
188
- reactiveDeps: $,
189
- reactiveType: w,
190
- componentId: p,
187
+ formElements: y,
188
+ reactiveDeps: b,
189
+ reactiveType: p,
190
+ componentId: I,
191
191
  initialState: a,
192
- syncUpdate: y,
192
+ syncUpdate: v,
193
193
  dependencies: n,
194
- serverState: m
194
+ serverState: S
195
195
  } = {}) {
196
- const [L, R] = X({}), { sessionId: U } = bt();
197
- let G = !c;
198
- const [v] = X(c ?? yt()), l = o.getState().stateLog[v], st = Q(/* @__PURE__ */ new Set()), Y = Q(p ?? yt()), j = Q(
196
+ const [G, O] = tt({}), { sessionId: U } = Ct();
197
+ let H = !c;
198
+ const [h] = tt(c ?? wt()), l = o.getState().stateLog[h], lt = Z(/* @__PURE__ */ new Set()), K = Z(I ?? wt()), R = Z(
199
199
  null
200
200
  );
201
- j.current = et(v) ?? null, ot(() => {
202
- if (y && y.stateKey === v && y.path?.[0]) {
203
- K(v, (r) => ({
201
+ R.current = rt(h) ?? null, it(() => {
202
+ if (v && v.stateKey === h && v.path?.[0]) {
203
+ et(h, (r) => ({
204
204
  ...r,
205
- [y.path[0]]: y.newValue
205
+ [v.path[0]]: v.newValue
206
206
  }));
207
- const e = `${y.stateKey}:${y.path.join(".")}`;
207
+ const e = `${v.stateKey}:${v.path.join(".")}`;
208
208
  o.getState().setSyncInfo(e, {
209
- timeStamp: y.timeStamp,
210
- userId: y.userId
209
+ timeStamp: v.timeStamp,
210
+ userId: v.userId
211
211
  });
212
212
  }
213
- }, [y]), ot(() => {
213
+ }, [v]), it(() => {
214
214
  if (a) {
215
- Et(v, {
215
+ At(h, {
216
216
  initialState: a
217
217
  });
218
- const e = j.current, s = e?.serverState?.id !== void 0 && e?.serverState?.status === "success" && e?.serverState?.data, i = o.getState().initialStateGlobal[v];
219
- if (!(i && !H(i, a) || !i) && !s)
218
+ const e = R.current, s = e?.serverState?.id !== void 0 && e?.serverState?.status === "success" && e?.serverState?.data, i = o.getState().initialStateGlobal[h];
219
+ if (!(i && !q(i, a) || !i) && !s)
220
220
  return;
221
221
  let u = null;
222
- const E = J(e?.localStorage?.key) ? e?.localStorage?.key(a) : e?.localStorage?.key;
223
- E && U && (u = ut(`${U}-${v}-${E}`));
224
- let T = a, A = !1;
225
- const P = s ? Date.now() : 0, N = u?.lastUpdated || 0, V = u?.lastSyncedWithServer || 0;
226
- s && P > N ? (T = e.serverState.data, A = !0) : u && N > V && (T = u.state, e?.localStorage?.onChange && e?.localStorage?.onChange(T)), o.getState().initializeShadowState(v, a), Vt(
227
- v,
222
+ const T = Q(e?.localStorage?.key) ? e?.localStorage?.key(a) : e?.localStorage?.key;
223
+ T && U && (u = St(`${U}-${h}-${T}`));
224
+ let w = a, V = !1;
225
+ const x = s ? Date.now() : 0, C = u?.lastUpdated || 0, P = u?.lastSyncedWithServer || 0;
226
+ s && x > C ? (w = e.serverState.data, V = !0) : u && C > P && (w = u.state, e?.localStorage?.onChange && e?.localStorage?.onChange(w)), o.getState().initializeShadowState(h, a), xt(
227
+ h,
228
228
  a,
229
- T,
230
- nt,
231
- Y.current,
229
+ w,
230
+ ot,
231
+ K.current,
232
232
  U
233
- ), A && E && U && $t(T, v, e, U, Date.now()), gt(v), (Array.isArray(w) ? w : [w || "component"]).includes("none") || R({});
233
+ ), V && T && U && kt(w, h, e, U, Date.now()), mt(h), (Array.isArray(p) ? p : [p || "component"]).includes("none") || O({});
234
234
  }
235
235
  }, [
236
236
  a,
237
- m?.status,
238
- m?.data,
237
+ S?.status,
238
+ S?.data,
239
239
  ...n || []
240
- ]), ct(() => {
241
- G && Et(v, {
242
- serverSync: h,
243
- formElements: I,
240
+ ]), ut(() => {
241
+ H && At(h, {
242
+ serverSync: m,
243
+ formElements: y,
244
244
  initialState: a,
245
245
  localStorage: f,
246
- middleware: j.current?.middleware
246
+ middleware: R.current?.middleware
247
247
  });
248
- const e = `${v}////${Y.current}`, r = o.getState().stateComponents.get(v) || {
248
+ const e = `${h}////${K.current}`, r = o.getState().stateComponents.get(h) || {
249
249
  components: /* @__PURE__ */ new Map()
250
250
  };
251
251
  return r.components.set(e, {
252
- forceUpdate: () => R({}),
252
+ forceUpdate: () => O({}),
253
253
  paths: /* @__PURE__ */ new Set(),
254
254
  deps: [],
255
- depsFunction: $ || void 0,
256
- reactiveType: w ?? ["component", "deps"]
257
- }), o.getState().stateComponents.set(v, r), R({}), () => {
258
- r && (r.components.delete(e), r.components.size === 0 && o.getState().stateComponents.delete(v));
255
+ depsFunction: b || void 0,
256
+ reactiveType: p ?? ["component", "deps"]
257
+ }), o.getState().stateComponents.set(h, r), O({}), () => {
258
+ r && (r.components.delete(e), r.components.size === 0 && o.getState().stateComponents.delete(h));
259
259
  };
260
260
  }, []);
261
- const nt = (e, r, s, i) => {
261
+ const ot = (e, r, s, i) => {
262
262
  if (Array.isArray(r)) {
263
- const u = `${v}-${r.join(".")}`;
264
- st.current.add(u);
263
+ const u = `${h}-${r.join(".")}`;
264
+ lt.current.add(u);
265
265
  }
266
266
  const g = o.getState();
267
- K(v, (u) => {
268
- const E = J(e) ? e(u) : e, T = `${v}-${r.join(".")}`;
269
- if (T) {
270
- let M = !1, b = g.signalDomElements.get(T);
271
- if ((!b || b.size === 0) && (s.updateType === "insert" || s.updateType === "cut")) {
272
- const O = r.slice(0, -1), D = z(E, O);
273
- if (Array.isArray(D)) {
274
- M = !0;
275
- const S = `${v}-${O.join(".")}`;
276
- b = g.signalDomElements.get(S);
267
+ et(h, (u) => {
268
+ const T = Q(e) ? e(u) : e, w = `${h}-${r.join(".")}`;
269
+ if (w) {
270
+ let _ = !1, E = g.signalDomElements.get(w);
271
+ if ((!E || E.size === 0) && (s.updateType === "insert" || s.updateType === "cut")) {
272
+ const M = r.slice(0, -1), W = J(T, M);
273
+ if (Array.isArray(W)) {
274
+ _ = !0;
275
+ const A = `${h}-${M.join(".")}`;
276
+ E = g.signalDomElements.get(A);
277
277
  }
278
278
  }
279
- if (b) {
280
- const O = M ? z(E, r.slice(0, -1)) : z(E, r);
281
- b.forEach(({ parentId: D, position: S, effect: k }) => {
282
- const C = document.querySelector(
283
- `[data-parent-id="${D}"]`
279
+ if (E) {
280
+ const M = _ ? J(T, r.slice(0, -1)) : J(T, r);
281
+ E.forEach(({ parentId: W, position: A, effect: F }) => {
282
+ const j = document.querySelector(
283
+ `[data-parent-id="${W}"]`
284
284
  );
285
- if (C) {
286
- const _ = Array.from(C.childNodes);
287
- if (_[S]) {
288
- const x = k ? new Function("state", `return (${k})(state)`)(O) : O;
289
- _[S].textContent = String(x);
285
+ if (j) {
286
+ const $ = Array.from(j.childNodes);
287
+ if ($[A]) {
288
+ const k = F ? new Function("state", `return (${F})(state)`)(M) : M;
289
+ $[A].textContent = String(k);
290
290
  }
291
291
  }
292
292
  });
293
293
  }
294
294
  }
295
- console.log("shadowState", g.shadowStateStore), s.updateType === "update" && (i || j.current?.validation?.key) && r && q(
296
- (i || j.current?.validation?.key) + "." + r.join(".")
295
+ console.log("shadowState", g.shadowStateStore), s.updateType === "update" && (i || R.current?.validation?.key) && r && X(
296
+ (i || R.current?.validation?.key) + "." + r.join(".")
297
297
  );
298
- const A = r.slice(0, r.length - 1);
299
- s.updateType === "cut" && j.current?.validation?.key && q(
300
- j.current?.validation?.key + "." + A.join(".")
301
- ), s.updateType === "insert" && j.current?.validation?.key && Dt(
302
- j.current?.validation?.key + "." + A.join(".")
303
- ).filter(([b, O]) => {
304
- let D = b?.split(".").length;
305
- if (b == A.join(".") && D == A.length - 1) {
306
- let S = b + "." + A;
307
- q(b), Lt(S, O);
298
+ const V = r.slice(0, r.length - 1);
299
+ s.updateType === "cut" && R.current?.validation?.key && X(
300
+ R.current?.validation?.key + "." + V.join(".")
301
+ ), s.updateType === "insert" && R.current?.validation?.key && Lt(
302
+ R.current?.validation?.key + "." + V.join(".")
303
+ ).filter(([E, M]) => {
304
+ let W = E?.split(".").length;
305
+ if (E == V.join(".") && W == V.length - 1) {
306
+ let A = E + "." + V;
307
+ X(E), Ht(A, M);
308
308
  }
309
309
  });
310
- const P = g.stateComponents.get(v);
311
- if (console.log("stateEntry >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>", P), P) {
312
- const M = vt(u, E), b = new Set(M), O = s.updateType === "update" ? r.join(".") : r.slice(0, -1).join(".") || "";
310
+ const x = g.stateComponents.get(h);
311
+ if (console.log("stateEntry >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>", x), x) {
312
+ const _ = pt(u, T), E = new Set(_), M = s.updateType === "update" ? r.join(".") : r.slice(0, -1).join(".") || "";
313
313
  for (const [
314
- D,
315
- S
316
- ] of P.components.entries()) {
317
- let k = !1;
318
- const C = Array.isArray(S.reactiveType) ? S.reactiveType : [S.reactiveType || "component"];
319
- if (console.log("component", S), !C.includes("none")) {
320
- if (C.includes("all")) {
321
- S.forceUpdate();
314
+ W,
315
+ A
316
+ ] of x.components.entries()) {
317
+ let F = !1;
318
+ const j = Array.isArray(A.reactiveType) ? A.reactiveType : [A.reactiveType || "component"];
319
+ if (console.log("component", A), !j.includes("none")) {
320
+ if (j.includes("all")) {
321
+ A.forceUpdate();
322
322
  continue;
323
323
  }
324
- if (C.includes("component") && ((S.paths.has(O) || S.paths.has("")) && (k = !0), !k))
325
- for (const _ of b) {
326
- let x = _;
324
+ if (j.includes("component") && ((A.paths.has(M) || A.paths.has("")) && (F = !0), !F))
325
+ for (const $ of E) {
326
+ let k = $;
327
327
  for (; ; ) {
328
- if (S.paths.has(x)) {
329
- k = !0;
328
+ if (A.paths.has(k)) {
329
+ F = !0;
330
330
  break;
331
331
  }
332
- const B = x.lastIndexOf(".");
333
- if (B !== -1) {
334
- const Z = x.substring(
332
+ const L = k.lastIndexOf(".");
333
+ if (L !== -1) {
334
+ const z = k.substring(
335
335
  0,
336
- B
336
+ L
337
337
  );
338
338
  if (!isNaN(
339
- Number(x.substring(B + 1))
340
- ) && S.paths.has(Z)) {
341
- k = !0;
339
+ Number(k.substring(L + 1))
340
+ ) && A.paths.has(z)) {
341
+ F = !0;
342
342
  break;
343
343
  }
344
- x = Z;
344
+ k = z;
345
345
  } else
346
- x = "";
347
- if (x === "")
346
+ k = "";
347
+ if (k === "")
348
348
  break;
349
349
  }
350
- if (k) break;
350
+ if (F) break;
351
351
  }
352
- if (!k && C.includes("deps") && S.depsFunction) {
353
- const _ = S.depsFunction(E);
354
- let x = !1;
355
- typeof _ == "boolean" ? _ && (x = !0) : H(S.deps, _) || (S.deps = _, x = !0), x && (k = !0);
352
+ if (!F && j.includes("deps") && A.depsFunction) {
353
+ const $ = A.depsFunction(T);
354
+ let k = !1;
355
+ typeof $ == "boolean" ? $ && (k = !0) : q(A.deps, $) || (A.deps = $, k = !0), k && (F = !0);
356
356
  }
357
- k && S.forceUpdate();
357
+ F && A.forceUpdate();
358
358
  }
359
359
  }
360
360
  }
361
- const N = Date.now();
362
- r = r.map((M, b) => {
363
- const O = r.slice(0, -1), D = z(E, O);
364
- return b === r.length - 1 && ["insert", "cut"].includes(s.updateType) ? (D.length - 1).toString() : M;
361
+ const C = Date.now();
362
+ r = r.map((_, E) => {
363
+ const M = r.slice(0, -1), W = J(T, M);
364
+ return E === r.length - 1 && ["insert", "cut"].includes(s.updateType) ? (W.length - 1).toString() : _;
365
365
  });
366
- const { oldValue: V, newValue: W } = zt(
366
+ const { oldValue: P, newValue: D } = qt(
367
367
  s.updateType,
368
368
  u,
369
- E,
369
+ T,
370
370
  r
371
- ), F = {
372
- timeStamp: N,
373
- stateKey: v,
371
+ ), N = {
372
+ timeStamp: C,
373
+ stateKey: h,
374
374
  path: r,
375
375
  updateType: s.updateType,
376
376
  status: "new",
377
- oldValue: V,
378
- newValue: W
377
+ oldValue: P,
378
+ newValue: D
379
379
  };
380
380
  switch (s.updateType) {
381
381
  case "update":
382
- g.updateShadowAtPath(v, r, E);
382
+ g.updateShadowAtPath(h, r, T);
383
383
  break;
384
384
  case "insert":
385
- const M = r.slice(0, -1);
386
- g.insertShadowArrayElement(v, M, W);
385
+ const _ = r.slice(0, -1);
386
+ g.insertShadowArrayElement(h, _, D);
387
387
  break;
388
388
  case "cut":
389
- const b = r.slice(0, -1), O = parseInt(r[r.length - 1]);
390
- g.removeShadowArrayElement(v, b, O);
389
+ const E = r.slice(0, -1), M = parseInt(r[r.length - 1]);
390
+ g.removeShadowArrayElement(h, E, M);
391
391
  break;
392
392
  }
393
- if (Wt(v, (M) => {
394
- const O = [...M ?? [], F].reduce((D, S) => {
395
- const k = `${S.stateKey}:${JSON.stringify(S.path)}`, C = D.get(k);
396
- return C ? (C.timeStamp = Math.max(C.timeStamp, S.timeStamp), C.newValue = S.newValue, C.oldValue = C.oldValue ?? S.oldValue, C.updateType = S.updateType) : D.set(k, { ...S }), D;
393
+ if (Gt(h, (_) => {
394
+ const M = [..._ ?? [], N].reduce((W, A) => {
395
+ const F = `${A.stateKey}:${JSON.stringify(A.path)}`, j = W.get(F);
396
+ return j ? (j.timeStamp = Math.max(j.timeStamp, A.timeStamp), j.newValue = A.newValue, j.oldValue = j.oldValue ?? A.oldValue, j.updateType = A.updateType) : W.set(F, { ...A }), W;
397
397
  }, /* @__PURE__ */ new Map());
398
- return Array.from(O.values());
399
- }), $t(
400
- E,
401
- v,
402
- j.current,
398
+ return Array.from(M.values());
399
+ }), kt(
400
+ T,
401
+ h,
402
+ R.current,
403
403
  U
404
- ), j.current?.middleware && j.current.middleware({
404
+ ), R.current?.middleware && R.current.middleware({
405
405
  updateLog: l,
406
- update: F
407
- }), j.current?.serverSync) {
408
- const M = g.serverState[v], b = j.current?.serverSync;
409
- Gt(v, {
410
- syncKey: typeof b.syncKey == "string" ? b.syncKey : b.syncKey({ state: E }),
411
- rollBackState: M,
412
- actionTimeStamp: Date.now() + (b.debounce ?? 3e3),
406
+ update: N
407
+ }), R.current?.serverSync) {
408
+ const _ = g.serverState[h], E = R.current?.serverSync;
409
+ zt(h, {
410
+ syncKey: typeof E.syncKey == "string" ? E.syncKey : E.syncKey({ state: T }),
411
+ rollBackState: _,
412
+ actionTimeStamp: Date.now() + (E.debounce ?? 3e3),
413
413
  status: "waiting"
414
414
  });
415
415
  }
416
- return E;
416
+ return T;
417
417
  });
418
418
  };
419
- o.getState().updaterState[v] || (lt(
420
- v,
421
- dt(
422
- v,
423
- nt,
424
- Y.current,
419
+ o.getState().updaterState[h] || (gt(
420
+ h,
421
+ ft(
422
+ h,
423
+ ot,
424
+ K.current,
425
425
  U
426
426
  )
427
- ), o.getState().cogsStateStore[v] || K(v, t), o.getState().initialStateGlobal[v] || It(v, t));
428
- const d = ht(() => dt(
429
- v,
430
- nt,
431
- Y.current,
427
+ ), o.getState().cogsStateStore[h] || et(h, t), o.getState().initialStateGlobal[h] || $t(h, t));
428
+ const d = It(() => ft(
429
+ h,
430
+ ot,
431
+ K.current,
432
432
  U
433
- ), [v, U]);
434
- return [Nt(v), d];
433
+ ), [h, U]);
434
+ return [Nt(h), d];
435
435
  }
436
- function dt(t, c, h, f) {
437
- const I = /* @__PURE__ */ new Map();
438
- let $ = 0;
439
- const w = (y) => {
440
- const n = y.join(".");
441
- for (const [m] of I)
442
- (m === n || m.startsWith(n + ".")) && I.delete(m);
443
- $++;
444
- }, p = {
445
- removeValidation: (y) => {
446
- y?.validationKey && q(y.validationKey);
436
+ function ft(t, c, m, f) {
437
+ const y = /* @__PURE__ */ new Map();
438
+ let b = 0;
439
+ const p = (v) => {
440
+ const n = v.join(".");
441
+ for (const [S] of y)
442
+ (S === n || S.startsWith(n + ".")) && y.delete(S);
443
+ b++;
444
+ }, I = {
445
+ removeValidation: (v) => {
446
+ v?.validationKey && X(v.validationKey);
447
447
  },
448
- revertToInitialState: (y) => {
448
+ revertToInitialState: (v) => {
449
449
  const n = o.getState().getInitialOptions(t)?.validation;
450
- n?.key && q(n?.key), y?.validationKey && q(y.validationKey);
451
- const m = o.getState().initialStateGlobal[t];
452
- o.getState().clearSelectedIndexesForState(t), I.clear(), $++;
453
- const L = a(m, []), R = et(t), U = J(R?.localStorage?.key) ? R?.localStorage?.key(m) : R?.localStorage?.key, G = `${f}-${t}-${U}`;
454
- G && localStorage.removeItem(G), lt(t, L), K(t, m);
455
- const v = o.getState().stateComponents.get(t);
456
- return v && v.components.forEach((l) => {
450
+ n?.key && X(n?.key), v?.validationKey && X(v.validationKey);
451
+ const S = o.getState().initialStateGlobal[t];
452
+ o.getState().clearSelectedIndexesForState(t), y.clear(), b++;
453
+ const G = a(S, []), O = rt(t), U = Q(O?.localStorage?.key) ? O?.localStorage?.key(S) : O?.localStorage?.key, H = `${f}-${t}-${U}`;
454
+ H && localStorage.removeItem(H), gt(t, G), et(t, S);
455
+ const h = o.getState().stateComponents.get(t);
456
+ return h && h.components.forEach((l) => {
457
457
  l.forceUpdate();
458
- }), m;
458
+ }), S;
459
459
  },
460
- updateInitialState: (y) => {
461
- I.clear(), $++;
462
- const n = dt(
460
+ updateInitialState: (v) => {
461
+ y.clear(), b++;
462
+ const n = ft(
463
463
  t,
464
464
  c,
465
- h,
465
+ m,
466
466
  f
467
- ), m = o.getState().initialStateGlobal[t], L = et(t), R = J(L?.localStorage?.key) ? L?.localStorage?.key(m) : L?.localStorage?.key, U = `${f}-${t}-${R}`;
468
- return localStorage.getItem(U) && localStorage.removeItem(U), Pt(() => {
469
- It(t, y), o.getState().initializeShadowState(t, y), lt(t, n), K(t, y);
470
- const G = o.getState().stateComponents.get(t);
471
- G && G.components.forEach((v) => {
472
- v.forceUpdate();
467
+ ), S = o.getState().initialStateGlobal[t], G = rt(t), O = Q(G?.localStorage?.key) ? G?.localStorage?.key(S) : G?.localStorage?.key, U = `${f}-${t}-${O}`;
468
+ return localStorage.getItem(U) && localStorage.removeItem(U), Mt(() => {
469
+ $t(t, v), o.getState().initializeShadowState(t, v), gt(t, n), et(t, v);
470
+ const H = o.getState().stateComponents.get(t);
471
+ H && H.components.forEach((h) => {
472
+ h.forceUpdate();
473
473
  });
474
474
  }), {
475
- fetchId: (G) => n.get()[G]
475
+ fetchId: (H) => n.get()[H]
476
476
  };
477
477
  },
478
478
  _initialState: o.getState().initialStateGlobal[t],
479
479
  _serverState: o.getState().serverState[t],
480
480
  _isLoading: o.getState().isLoadingGlobal[t],
481
481
  _isServerSynced: () => {
482
- const y = o.getState().serverState[t];
483
- return !!(y && H(y, Nt(t)));
482
+ const v = o.getState().serverState[t];
483
+ return !!(v && q(v, Nt(t)));
484
484
  }
485
485
  };
486
- function a(y, n = [], m) {
487
- const L = n.map(String).join(".");
488
- I.get(L);
489
- const R = function() {
486
+ function a(v, n = [], S) {
487
+ const G = n.map(String).join(".");
488
+ y.get(G);
489
+ const O = function() {
490
490
  return o().getNestedState(t, n);
491
491
  };
492
- Object.keys(p).forEach((v) => {
493
- R[v] = p[v];
492
+ Object.keys(I).forEach((h) => {
493
+ O[h] = I[h];
494
494
  });
495
495
  const U = {
496
- apply(v, l, st) {
496
+ apply(h, l, lt) {
497
497
  return console.log(
498
498
  `PROXY APPLY TRAP HIT: stateKey=${t}, path=${n.join(".")}`
499
499
  ), console.trace("Apply trap stack trace"), o().getNestedState(t, n);
500
500
  },
501
- get(v, l) {
502
- m?.validIndices && !Array.isArray(y) && (m = { ...m, validIndices: void 0 });
503
- const st = /* @__PURE__ */ new Set([
501
+ get(h, l) {
502
+ S?.validIndices && !Array.isArray(v) && (S = { ...S, validIndices: void 0 });
503
+ const lt = /* @__PURE__ */ new Set([
504
504
  "insert",
505
505
  "cut",
506
506
  "cutByValue",
@@ -523,8 +523,8 @@ function dt(t, c, h, f) {
523
523
  "_stateKey",
524
524
  "getComponents"
525
525
  ]);
526
- if (l !== "then" && !l.startsWith("$") && l !== "stateMapNoRender" && !st.has(l)) {
527
- const d = `${t}////${h}`, e = o.getState().stateComponents.get(t);
526
+ if (l !== "then" && !l.startsWith("$") && l !== "stateMapNoRender" && !lt.has(l)) {
527
+ const d = `${t}////${m}`, e = o.getState().stateComponents.get(t);
528
528
  if (e) {
529
529
  const r = e.components.get(d);
530
530
  if (r && !r.paths.has("")) {
@@ -540,7 +540,7 @@ function dt(t, c, h, f) {
540
540
  }
541
541
  }
542
542
  if (l === "getDifferences")
543
- return () => vt(
543
+ return () => pt(
544
544
  o.getState().cogsStateStore[t],
545
545
  o.getState().initialStateGlobal[t]
546
546
  );
@@ -554,8 +554,8 @@ function dt(t, c, h, f) {
554
554
  const i = await e.action(r);
555
555
  if (i && !i.success && i.errors && s) {
556
556
  o.getState().removeValidationError(s), i.errors.forEach((u) => {
557
- const E = [s, ...u.path].join(".");
558
- o.getState().addValidationError(E, u.message);
557
+ const T = [s, ...u.path].join(".");
558
+ o.getState().addValidationError(T, u.message);
559
559
  });
560
560
  const g = o.getState().stateComponents.get(t);
561
561
  g && g.components.forEach((u) => {
@@ -568,20 +568,20 @@ function dt(t, c, h, f) {
568
568
  }
569
569
  };
570
570
  if (l === "_status") {
571
- const d = o.getState().getNestedState(t, n), e = o.getState().initialStateGlobal[t], r = z(e, n);
572
- return H(d, r) ? "fresh" : "stale";
571
+ const d = o.getState().getNestedState(t, n), e = o.getState().initialStateGlobal[t], r = J(e, n);
572
+ return q(d, r) ? "fresh" : "stale";
573
573
  }
574
574
  if (l === "getStatus")
575
575
  return function() {
576
576
  const d = o().getNestedState(
577
577
  t,
578
578
  n
579
- ), e = o.getState().initialStateGlobal[t], r = z(e, n);
580
- return H(d, r) ? "fresh" : "stale";
579
+ ), e = o.getState().initialStateGlobal[t], r = J(e, n);
580
+ return q(d, r) ? "fresh" : "stale";
581
581
  };
582
582
  if (l === "removeStorage")
583
583
  return () => {
584
- const d = o.getState().initialStateGlobal[t], e = et(t), r = J(e?.localStorage?.key) ? e?.localStorage?.key(d) : e?.localStorage?.key, s = `${f}-${t}-${r}`;
584
+ const d = o.getState().initialStateGlobal[t], e = rt(t), r = Q(e?.localStorage?.key) ? e?.localStorage?.key(d) : e?.localStorage?.key, s = `${f}-${t}-${r}`;
585
585
  s && localStorage.removeItem(s);
586
586
  };
587
587
  if (l === "showValidationErrors")
@@ -591,10 +591,10 @@ function dt(t, c, h, f) {
591
591
  throw new Error("Validation key not found");
592
592
  return o.getState().getValidationErrors(d.key + "." + n.join("."));
593
593
  };
594
- if (Array.isArray(y)) {
595
- const d = () => m?.validIndices ? y.map((r, s) => ({
594
+ if (Array.isArray(v)) {
595
+ const d = () => S?.validIndices ? v.map((r, s) => ({
596
596
  item: r,
597
- originalIndex: m.validIndices[s]
597
+ originalIndex: S.validIndices[s]
598
598
  })) : o.getState().getNestedState(t, n).map((r, s) => ({
599
599
  item: r,
600
600
  originalIndex: s
@@ -604,9 +604,9 @@ function dt(t, c, h, f) {
604
604
  const e = o.getState().getSelectedIndex(t, n.join("."));
605
605
  if (e !== void 0)
606
606
  return a(
607
- y[e],
607
+ v[e],
608
608
  [...n, e.toString()],
609
- m
609
+ S
610
610
  );
611
611
  };
612
612
  if (l === "clearSelected")
@@ -621,121 +621,140 @@ function dt(t, c, h, f) {
621
621
  itemHeight: r = 50,
622
622
  overscan: s = 5,
623
623
  stickToBottom: i = !1
624
- } = e, g = Q(null), [u, E] = X({
624
+ } = e, g = Z(null), [u, T] = tt({
625
625
  startIndex: 0,
626
626
  endIndex: 10
627
- }), T = Q(i), [A, P] = X(0);
628
- ot(() => o.getState().subscribeToShadowState(t, () => {
629
- P((k) => k + 1);
630
- }), [t]);
631
- const N = o().getNestedState(
627
+ }), w = Z(i), [V, x] = tt(0), C = Z(!1), P = Z(0);
628
+ it(() => {
629
+ let $ = 0;
630
+ return o.getState().subscribeToShadowState(t, () => {
631
+ $++, $ <= 5 && console.log(
632
+ `[VirtualView] Shadow update #${$}`
633
+ ), x((L) => L + 1);
634
+ });
635
+ }, [t]);
636
+ const D = o().getNestedState(
632
637
  t,
633
638
  n
634
- ), V = N.length, { totalHeight: W, positions: F } = ht(() => {
635
- const S = o.getState().getShadowMetadata(t, n) || [];
639
+ ), N = D.length;
640
+ console.log(
641
+ `[VirtualView] Initial setup - totalCount: ${N}, itemHeight: ${r}, stickToBottom: ${i}`
642
+ ), N !== P.current && (console.log(
643
+ `[VirtualView] Array size changed from ${P.current} to ${N}`
644
+ ), C.current = !1, P.current = N);
645
+ const { totalHeight: _, positions: E, allMeasured: M } = It(() => {
646
+ const $ = o.getState().getShadowMetadata(t, n) || [];
636
647
  let k = 0;
637
- const C = [];
638
- for (let _ = 0; _ < V; _++) {
639
- C[_] = k;
640
- const x = S[_]?.virtualizer?.itemHeight;
641
- k += x || r;
648
+ const L = [];
649
+ let z = 0;
650
+ for (let B = 0; B < N; B++) {
651
+ L[B] = k;
652
+ const at = $[B]?.virtualizer?.itemHeight;
653
+ at && z++, k += at || r;
642
654
  }
643
- return { totalHeight: k, positions: C };
655
+ const Y = z === N && N > 0;
656
+ return console.log(
657
+ `[VirtualView] Heights calc - measured: ${z}/${N}, allMeasured: ${Y}, totalHeight: ${k}`
658
+ ), { totalHeight: k, positions: L, allMeasured: Y };
644
659
  }, [
645
- V,
660
+ N,
646
661
  t,
647
662
  n.join("."),
648
663
  r,
649
- A
650
- ]), M = ht(() => {
651
- const S = Math.max(0, u.startIndex), k = Math.min(V, u.endIndex), C = Array.from(
652
- { length: k - S },
653
- (x, B) => S + B
654
- ), _ = C.map((x) => N[x]);
655
- return a(_, n, {
656
- ...m,
657
- validIndices: C
664
+ V
665
+ ]), W = It(() => {
666
+ const $ = Math.max(0, u.startIndex), k = Math.min(N, u.endIndex);
667
+ console.log(
668
+ `[VirtualView] Creating virtual slice - range: ${$}-${k} (${k - $} items)`
669
+ );
670
+ const L = Array.from(
671
+ { length: k - $ },
672
+ (Y, B) => $ + B
673
+ ), z = L.map((Y) => D[Y]);
674
+ return a(z, n, {
675
+ ...S,
676
+ validIndices: L
658
677
  });
659
- }, [u.startIndex, u.endIndex, N, V]);
660
- ct(() => {
661
- const S = g.current;
662
- if (!S) return;
663
- let k;
664
- const C = () => {
665
- if (!S) return;
666
- const { scrollTop: x } = S;
667
- let B = 0, Z = V - 1;
668
- for (; B <= Z; ) {
669
- const ft = Math.floor((B + Z) / 2);
670
- F[ft] < x ? B = ft + 1 : Z = ft - 1;
678
+ }, [u.startIndex, u.endIndex, D, N]);
679
+ ut(() => {
680
+ const $ = g.current;
681
+ if (!$) return;
682
+ const k = () => {
683
+ if (!$) return;
684
+ const { scrollTop: z } = $;
685
+ let Y = 0, B = N - 1;
686
+ for (; Y <= B; ) {
687
+ const ht = Math.floor((Y + B) / 2);
688
+ E[ht] < z ? Y = ht + 1 : B = ht - 1;
671
689
  }
672
- const pt = Math.max(0, Z - s);
673
- let tt = pt;
674
- const Ct = x + S.clientHeight;
675
- for (; tt < V && F[tt] < Ct; )
676
- tt++;
677
- tt = Math.min(V, tt + s), E({ startIndex: pt, endIndex: tt });
678
- }, _ = () => {
679
- T.current = S.scrollHeight - S.scrollTop - S.clientHeight < 1, C();
690
+ const at = Math.max(0, B - s);
691
+ let nt = at;
692
+ const Pt = z + $.clientHeight;
693
+ for (; nt < N && E[nt] < Pt; )
694
+ nt++;
695
+ nt = Math.min(N, nt + s), T({ startIndex: at, endIndex: nt });
696
+ }, L = () => {
697
+ w.current = $.scrollHeight - $.scrollTop - $.clientHeight < 1, k();
680
698
  };
681
- return S.addEventListener("scroll", _, {
699
+ return $.addEventListener("scroll", L, {
682
700
  passive: !0
683
- }), i && (k = setTimeout(() => {
684
- T.current && S.scrollTo({
685
- top: S.scrollHeight,
686
- behavior: "auto"
687
- // ALWAYS 'auto' for an instant, correct jump.
688
- });
689
- }, 50)), C(), () => {
690
- clearTimeout(k), S.removeEventListener("scroll", _);
701
+ }), i && !C.current && N > 0 && (M ? (console.log(
702
+ "[VirtualView] All items measured, scrolling to bottom"
703
+ ), C.current = !0, $.scrollTo({
704
+ top: $.scrollHeight,
705
+ behavior: "auto"
706
+ })) : console.log(
707
+ "[VirtualView] Waiting for all measurements before scroll"
708
+ )), k(), () => {
709
+ $.removeEventListener("scroll", L);
691
710
  };
692
- }, [V, F, i]);
693
- const b = wt(
694
- (S = "smooth") => {
695
- g.current && (T.current = !0, g.current.scrollTo({
711
+ }, [N, E, i, M]);
712
+ const A = Tt(
713
+ ($ = "smooth") => {
714
+ g.current && (w.current = !0, g.current.scrollTo({
696
715
  top: g.current.scrollHeight,
697
- behavior: S
716
+ behavior: $
698
717
  }));
699
718
  },
700
719
  []
701
- ), O = wt(
702
- (S, k = "smooth") => {
703
- g.current && F[S] !== void 0 && (T.current = !1, g.current.scrollTo({
704
- top: F[S],
720
+ ), F = Tt(
721
+ ($, k = "smooth") => {
722
+ g.current && E[$] !== void 0 && (w.current = !1, g.current.scrollTo({
723
+ top: E[$],
705
724
  behavior: k
706
725
  }));
707
726
  },
708
- [F]
709
- ), D = {
727
+ [E]
728
+ ), j = {
710
729
  outer: {
711
730
  ref: g,
712
731
  style: { overflowY: "auto", height: "100%" }
713
732
  },
714
733
  inner: {
715
734
  style: {
716
- height: `${W}px`,
735
+ height: `${_}px`,
717
736
  position: "relative"
718
737
  }
719
738
  },
720
739
  list: {
721
740
  style: {
722
- transform: `translateY(${F[u.startIndex] || 0}px)`
741
+ transform: `translateY(${E[u.startIndex] || 0}px)`
723
742
  }
724
743
  }
725
744
  };
726
745
  return {
727
- virtualState: M,
728
- virtualizerProps: D,
729
- scrollToBottom: b,
730
- scrollToIndex: O
746
+ virtualState: W,
747
+ virtualizerProps: j,
748
+ scrollToBottom: A,
749
+ scrollToIndex: F
731
750
  };
732
751
  };
733
752
  if (l === "stateSort")
734
753
  return (e) => {
735
754
  const s = [...d()].sort(
736
- (u, E) => e(u.item, E.item)
755
+ (u, T) => e(u.item, T.item)
737
756
  ), i = s.map(({ item: u }) => u), g = {
738
- ...m,
757
+ ...S,
739
758
  validIndices: s.map(
740
759
  ({ originalIndex: u }) => u
741
760
  )
@@ -745,9 +764,9 @@ function dt(t, c, h, f) {
745
764
  if (l === "stateFilter")
746
765
  return (e) => {
747
766
  const s = d().filter(
748
- ({ item: u }, E) => e(u, E)
767
+ ({ item: u }, T) => e(u, T)
749
768
  ), i = s.map(({ item: u }) => u), g = {
750
- ...m,
769
+ ...S,
751
770
  validIndices: s.map(
752
771
  ({ originalIndex: u }) => u
753
772
  )
@@ -757,23 +776,23 @@ function dt(t, c, h, f) {
757
776
  if (l === "stateMap")
758
777
  return (e) => {
759
778
  const r = o.getState().getNestedState(t, n);
760
- return Array.isArray(r) ? (m?.validIndices || Array.from({ length: r.length }, (i, g) => g)).map((i, g) => {
761
- const u = r[i], E = [...n, i.toString()], T = a(u, E, m);
762
- return e(u, T, {
779
+ return Array.isArray(r) ? (S?.validIndices || Array.from({ length: r.length }, (i, g) => g)).map((i, g) => {
780
+ const u = r[i], T = [...n, i.toString()], w = a(u, T, S);
781
+ return e(u, w, {
763
782
  register: () => {
764
- const [, P] = X({}), N = `${h}-${n.join(".")}-${i}`;
765
- ct(() => {
766
- const V = `${t}////${N}`, W = o.getState().stateComponents.get(t) || {
783
+ const [, x] = tt({}), C = `${m}-${n.join(".")}-${i}`;
784
+ ut(() => {
785
+ const P = `${t}////${C}`, D = o.getState().stateComponents.get(t) || {
767
786
  components: /* @__PURE__ */ new Map()
768
787
  };
769
- return W.components.set(V, {
770
- forceUpdate: () => P({}),
771
- paths: /* @__PURE__ */ new Set([E.join(".")])
772
- }), o.getState().stateComponents.set(t, W), () => {
773
- const F = o.getState().stateComponents.get(t);
774
- F && F.components.delete(V);
788
+ return D.components.set(P, {
789
+ forceUpdate: () => x({}),
790
+ paths: /* @__PURE__ */ new Set([T.join(".")])
791
+ }), o.getState().stateComponents.set(t, D), () => {
792
+ const N = o.getState().stateComponents.get(t);
793
+ N && N.components.delete(P);
775
794
  };
776
- }, [t, N]);
795
+ }, [t, C]);
777
796
  },
778
797
  index: g,
779
798
  originalIndex: i
@@ -784,20 +803,20 @@ function dt(t, c, h, f) {
784
803
  ), null);
785
804
  };
786
805
  if (l === "stateMapNoRender")
787
- return (e) => y.map((s, i) => {
806
+ return (e) => v.map((s, i) => {
788
807
  let g;
789
- m?.validIndices && m.validIndices[i] !== void 0 ? g = m.validIndices[i] : g = i;
790
- const u = [...n, g.toString()], E = a(s, u, m);
808
+ S?.validIndices && S.validIndices[i] !== void 0 ? g = S.validIndices[i] : g = i;
809
+ const u = [...n, g.toString()], T = a(s, u, S);
791
810
  return e(
792
811
  s,
793
- E,
812
+ T,
794
813
  i,
795
- y,
796
- a(y, n, m)
814
+ v,
815
+ a(v, n, S)
797
816
  );
798
817
  });
799
818
  if (l === "$stateMap")
800
- return (e) => at(qt, {
819
+ return (e) => ct(Yt, {
801
820
  proxy: {
802
821
  _stateKey: t,
803
822
  _path: n,
@@ -809,19 +828,19 @@ function dt(t, c, h, f) {
809
828
  if (l === "stateList")
810
829
  return (e) => {
811
830
  const r = o.getState().getNestedState(t, n);
812
- return Array.isArray(r) ? (m?.validIndices || Array.from({ length: r.length }, (i, g) => g)).map((i, g) => {
813
- const u = r[i], E = [...n, i.toString()], T = a(u, E, m), A = `${h}-${n.join(".")}-${i}`;
814
- return at(Yt, {
831
+ return Array.isArray(r) ? (S?.validIndices || Array.from({ length: r.length }, (i, g) => g)).map((i, g) => {
832
+ const u = r[i], T = [...n, i.toString()], w = a(u, T, S), V = `${m}-${n.join(".")}-${i}`;
833
+ return ct(Xt, {
815
834
  key: i,
816
835
  stateKey: t,
817
- itemComponentId: A,
818
- itemPath: E,
836
+ itemComponentId: V,
837
+ itemPath: T,
819
838
  children: e(
820
839
  u,
821
- T,
840
+ w,
822
841
  g,
823
842
  r,
824
- a(r, n, m)
843
+ a(r, n, S)
825
844
  )
826
845
  });
827
846
  }) : (console.warn(
@@ -830,20 +849,20 @@ function dt(t, c, h, f) {
830
849
  };
831
850
  if (l === "stateFlattenOn")
832
851
  return (e) => {
833
- const r = y;
834
- I.clear(), $++;
852
+ const r = v;
853
+ y.clear(), b++;
835
854
  const s = r.flatMap(
836
855
  (i) => i[e] ?? []
837
856
  );
838
857
  return a(
839
858
  s,
840
859
  [...n, "[*]", e],
841
- m
860
+ S
842
861
  );
843
862
  };
844
863
  if (l === "index")
845
864
  return (e) => {
846
- const r = y[e];
865
+ const r = v[e];
847
866
  return a(r, [...n, e.toString()]);
848
867
  };
849
868
  if (l === "last")
@@ -854,49 +873,49 @@ function dt(t, c, h, f) {
854
873
  return a(s, i);
855
874
  };
856
875
  if (l === "insert")
857
- return (e) => (w(n), St(c, e, n, t), a(
876
+ return (e) => (p(n), vt(c, e, n, t), a(
858
877
  o.getState().getNestedState(t, n),
859
878
  n
860
879
  ));
861
880
  if (l === "uniqueInsert")
862
881
  return (e, r, s) => {
863
- const i = o.getState().getNestedState(t, n), g = J(e) ? e(i) : e;
882
+ const i = o.getState().getNestedState(t, n), g = Q(e) ? e(i) : e;
864
883
  let u = null;
865
- if (!i.some((T) => {
884
+ if (!i.some((w) => {
866
885
  if (r) {
867
- const P = r.every(
868
- (N) => H(T[N], g[N])
886
+ const x = r.every(
887
+ (C) => q(w[C], g[C])
869
888
  );
870
- return P && (u = T), P;
889
+ return x && (u = w), x;
871
890
  }
872
- const A = H(T, g);
873
- return A && (u = T), A;
891
+ const V = q(w, g);
892
+ return V && (u = w), V;
874
893
  }))
875
- w(n), St(c, g, n, t);
894
+ p(n), vt(c, g, n, t);
876
895
  else if (s && u) {
877
- const T = s(u), A = i.map(
878
- (P) => H(P, u) ? T : P
896
+ const w = s(u), V = i.map(
897
+ (x) => q(x, u) ? w : x
879
898
  );
880
- w(n), rt(c, A, n);
899
+ p(n), st(c, V, n);
881
900
  }
882
901
  };
883
902
  if (l === "cut")
884
903
  return (e, r) => {
885
904
  if (!r?.waitForSync)
886
- return w(n), it(c, n, t, e), a(
905
+ return p(n), dt(c, n, t, e), a(
887
906
  o.getState().getNestedState(t, n),
888
907
  n
889
908
  );
890
909
  };
891
910
  if (l === "cutByValue")
892
911
  return (e) => {
893
- for (let r = 0; r < y.length; r++)
894
- y[r] === e && it(c, n, t, r);
912
+ for (let r = 0; r < v.length; r++)
913
+ v[r] === e && dt(c, n, t, r);
895
914
  };
896
915
  if (l === "toggleByValue")
897
916
  return (e) => {
898
- const r = y.findIndex((s) => s === e);
899
- r > -1 ? it(c, n, t, r) : St(c, e, n, t);
917
+ const r = v.findIndex((s) => s === e);
918
+ r > -1 ? dt(c, n, t, r) : vt(c, e, n, t);
900
919
  };
901
920
  if (l === "stateFind")
902
921
  return (e) => {
@@ -905,7 +924,7 @@ function dt(t, c, h, f) {
905
924
  );
906
925
  if (!s) return;
907
926
  const i = [...n, s.originalIndex.toString()];
908
- return a(s.item, i, m);
927
+ return a(s.item, i, S);
909
928
  };
910
929
  if (l === "findWith")
911
930
  return (e, r) => {
@@ -914,36 +933,36 @@ function dt(t, c, h, f) {
914
933
  );
915
934
  if (!i) return;
916
935
  const g = [...n, i.originalIndex.toString()];
917
- return a(i.item, g, m);
936
+ return a(i.item, g, S);
918
937
  };
919
938
  }
920
- const Y = n[n.length - 1];
921
- if (!isNaN(Number(Y))) {
939
+ const K = n[n.length - 1];
940
+ if (!isNaN(Number(K))) {
922
941
  const d = n.slice(0, -1), e = o.getState().getNestedState(t, d);
923
942
  if (Array.isArray(e) && l === "cut")
924
- return () => it(
943
+ return () => dt(
925
944
  c,
926
945
  d,
927
946
  t,
928
- Number(Y)
947
+ Number(K)
929
948
  );
930
949
  }
931
950
  if (l === "get")
932
951
  return () => {
933
- if (m?.validIndices && Array.isArray(y)) {
952
+ if (S?.validIndices && Array.isArray(v)) {
934
953
  const d = o.getState().getNestedState(t, n);
935
- return m.validIndices.map((e) => d[e]);
954
+ return S.validIndices.map((e) => d[e]);
936
955
  }
937
956
  return o.getState().getNestedState(t, n);
938
957
  };
939
958
  if (l === "$derive")
940
- return (d) => kt({
959
+ return (d) => bt({
941
960
  _stateKey: t,
942
961
  _path: n,
943
962
  _effect: d.toString()
944
963
  });
945
964
  if (l === "$get")
946
- return () => kt({
965
+ return () => bt({
947
966
  _stateKey: t,
948
967
  _path: n
949
968
  });
@@ -952,7 +971,7 @@ function dt(t, c, h, f) {
952
971
  return o.getState().getSyncInfo(d);
953
972
  }
954
973
  if (l == "getLocalStorage")
955
- return (d) => ut(f + "-" + t + "-" + d);
974
+ return (d) => St(f + "-" + t + "-" + d);
956
975
  if (l === "_selected") {
957
976
  const d = n.slice(0, -1), e = d.join("."), r = o.getState().getNestedState(t, d);
958
977
  return Array.isArray(r) ? Number(n[n.length - 1]) === o.getState().getSelectedIndex(t, e) : void 0;
@@ -962,7 +981,7 @@ function dt(t, c, h, f) {
962
981
  const e = n.slice(0, -1), r = Number(n[n.length - 1]), s = e.join(".");
963
982
  d ? o.getState().setSelectedIndex(t, s, r) : o.getState().setSelectedIndex(t, s, void 0);
964
983
  const i = o.getState().getNestedState(t, [...e]);
965
- rt(c, i, e), w(e);
984
+ st(c, i, e), p(e);
966
985
  };
967
986
  if (l === "toggleSelected")
968
987
  return () => {
@@ -973,73 +992,73 @@ function dt(t, c, h, f) {
973
992
  s === e ? void 0 : e
974
993
  );
975
994
  const i = o.getState().getNestedState(t, [...d]);
976
- rt(c, i, d), w(d);
995
+ st(c, i, d), p(d);
977
996
  };
978
997
  if (n.length == 0) {
979
998
  if (l === "applyJsonPatch")
980
999
  return (d) => {
981
- const e = o.getState().cogsStateStore[t], s = Ut(e, d).newDocument;
982
- Vt(
1000
+ const e = o.getState().cogsStateStore[t], s = Dt(e, d).newDocument;
1001
+ xt(
983
1002
  t,
984
1003
  o.getState().initialStateGlobal[t],
985
1004
  s,
986
1005
  c,
987
- h,
1006
+ m,
988
1007
  f
989
1008
  );
990
1009
  const i = o.getState().stateComponents.get(t);
991
1010
  if (i) {
992
- const g = vt(e, s), u = new Set(g);
1011
+ const g = pt(e, s), u = new Set(g);
993
1012
  for (const [
994
- E,
995
- T
1013
+ T,
1014
+ w
996
1015
  ] of i.components.entries()) {
997
- let A = !1;
998
- const P = Array.isArray(T.reactiveType) ? T.reactiveType : [T.reactiveType || "component"];
999
- if (!P.includes("none")) {
1000
- if (P.includes("all")) {
1001
- T.forceUpdate();
1016
+ let V = !1;
1017
+ const x = Array.isArray(w.reactiveType) ? w.reactiveType : [w.reactiveType || "component"];
1018
+ if (!x.includes("none")) {
1019
+ if (x.includes("all")) {
1020
+ w.forceUpdate();
1002
1021
  continue;
1003
1022
  }
1004
- if (P.includes("component") && (T.paths.has("") && (A = !0), !A))
1005
- for (const N of u) {
1006
- if (T.paths.has(N)) {
1007
- A = !0;
1023
+ if (x.includes("component") && (w.paths.has("") && (V = !0), !V))
1024
+ for (const C of u) {
1025
+ if (w.paths.has(C)) {
1026
+ V = !0;
1008
1027
  break;
1009
1028
  }
1010
- let V = N.lastIndexOf(".");
1011
- for (; V !== -1; ) {
1012
- const W = N.substring(0, V);
1013
- if (T.paths.has(W)) {
1014
- A = !0;
1029
+ let P = C.lastIndexOf(".");
1030
+ for (; P !== -1; ) {
1031
+ const D = C.substring(0, P);
1032
+ if (w.paths.has(D)) {
1033
+ V = !0;
1015
1034
  break;
1016
1035
  }
1017
- const F = N.substring(
1018
- V + 1
1036
+ const N = C.substring(
1037
+ P + 1
1019
1038
  );
1020
- if (!isNaN(Number(F))) {
1021
- const M = W.lastIndexOf(".");
1022
- if (M !== -1) {
1023
- const b = W.substring(
1039
+ if (!isNaN(Number(N))) {
1040
+ const _ = D.lastIndexOf(".");
1041
+ if (_ !== -1) {
1042
+ const E = D.substring(
1024
1043
  0,
1025
- M
1044
+ _
1026
1045
  );
1027
- if (T.paths.has(b)) {
1028
- A = !0;
1046
+ if (w.paths.has(E)) {
1047
+ V = !0;
1029
1048
  break;
1030
1049
  }
1031
1050
  }
1032
1051
  }
1033
- V = W.lastIndexOf(".");
1052
+ P = D.lastIndexOf(".");
1034
1053
  }
1035
- if (A) break;
1054
+ if (V) break;
1036
1055
  }
1037
- if (!A && P.includes("deps") && T.depsFunction) {
1038
- const N = T.depsFunction(s);
1039
- let V = !1;
1040
- typeof N == "boolean" ? N && (V = !0) : H(T.deps, N) || (T.deps = N, V = !0), V && (A = !0);
1056
+ if (!V && x.includes("deps") && w.depsFunction) {
1057
+ const C = w.depsFunction(s);
1058
+ let P = !1;
1059
+ typeof C == "boolean" ? C && (P = !0) : q(w.deps, C) || (w.deps = C, P = !0), P && (V = !0);
1041
1060
  }
1042
- A && T.forceUpdate();
1061
+ V && w.forceUpdate();
1043
1062
  }
1044
1063
  }
1045
1064
  }
@@ -1051,27 +1070,27 @@ function dt(t, c, h, f) {
1051
1070
  throw new Error("Zod schema not found");
1052
1071
  if (!d?.key)
1053
1072
  throw new Error("Validation key not found");
1054
- q(d.key);
1073
+ X(d.key);
1055
1074
  const r = o.getState().cogsStateStore[t];
1056
1075
  try {
1057
1076
  const s = o.getState().getValidationErrors(d.key);
1058
1077
  s && s.length > 0 && s.forEach(([g]) => {
1059
- g && g.startsWith(d.key) && q(g);
1078
+ g && g.startsWith(d.key) && X(g);
1060
1079
  });
1061
1080
  const i = d.zodSchema.safeParse(r);
1062
1081
  return i.success ? !0 : (i.error.errors.forEach((u) => {
1063
- const E = u.path, T = u.message, A = [d.key, ...E].join(".");
1064
- e(A, T);
1065
- }), gt(t), !1);
1082
+ const T = u.path, w = u.message, V = [d.key, ...T].join(".");
1083
+ e(V, w);
1084
+ }), mt(t), !1);
1066
1085
  } catch (s) {
1067
1086
  return console.error("Zod schema validation failed", s), !1;
1068
1087
  }
1069
1088
  };
1070
- if (l === "_componentId") return h;
1089
+ if (l === "_componentId") return m;
1071
1090
  if (l === "getComponents")
1072
1091
  return () => o().stateComponents.get(t);
1073
1092
  if (l === "getAllFormRefs")
1074
- return () => Tt.getState().getFormRefsByStateKey(t);
1093
+ return () => Et.getState().getFormRefsByStateKey(t);
1075
1094
  if (l === "_initialState")
1076
1095
  return o.getState().initialStateGlobal[t];
1077
1096
  if (l === "_serverState")
@@ -1079,48 +1098,48 @@ function dt(t, c, h, f) {
1079
1098
  if (l === "_isLoading")
1080
1099
  return o.getState().isLoadingGlobal[t];
1081
1100
  if (l === "revertToInitialState")
1082
- return p.revertToInitialState;
1083
- if (l === "updateInitialState") return p.updateInitialState;
1084
- if (l === "removeValidation") return p.removeValidation;
1101
+ return I.revertToInitialState;
1102
+ if (l === "updateInitialState") return I.updateInitialState;
1103
+ if (l === "removeValidation") return I.removeValidation;
1085
1104
  }
1086
1105
  if (l === "getFormRef")
1087
- return () => Tt.getState().getFormRef(t + "." + n.join("."));
1106
+ return () => Et.getState().getFormRef(t + "." + n.join("."));
1088
1107
  if (l === "validationWrapper")
1089
1108
  return ({
1090
1109
  children: d,
1091
1110
  hideMessage: e
1092
- }) => /* @__PURE__ */ mt(
1093
- jt,
1111
+ }) => /* @__PURE__ */ yt(
1112
+ Ot,
1094
1113
  {
1095
1114
  formOpts: e ? { validation: { message: "" } } : void 0,
1096
1115
  path: n,
1097
1116
  validationKey: o.getState().getInitialOptions(t)?.validation?.key || "",
1098
1117
  stateKey: t,
1099
- validIndices: m?.validIndices,
1118
+ validIndices: S?.validIndices,
1100
1119
  children: d
1101
1120
  }
1102
1121
  );
1103
1122
  if (l === "_stateKey") return t;
1104
1123
  if (l === "_path") return n;
1105
- if (l === "_isServerSynced") return p._isServerSynced;
1124
+ if (l === "_isServerSynced") return I._isServerSynced;
1106
1125
  if (l === "update")
1107
1126
  return (d, e) => {
1108
1127
  if (e?.debounce)
1109
- Mt(() => {
1110
- rt(c, d, n, "");
1128
+ jt(() => {
1129
+ st(c, d, n, "");
1111
1130
  const r = o.getState().getNestedState(t, n);
1112
1131
  e?.afterUpdate && e.afterUpdate(r);
1113
1132
  }, e.debounce);
1114
1133
  else {
1115
- rt(c, d, n, "");
1134
+ st(c, d, n, "");
1116
1135
  const r = o.getState().getNestedState(t, n);
1117
1136
  e?.afterUpdate && e.afterUpdate(r);
1118
1137
  }
1119
- w(n);
1138
+ p(n);
1120
1139
  };
1121
1140
  if (l === "formElement")
1122
- return (d, e) => /* @__PURE__ */ mt(
1123
- Ot,
1141
+ return (d, e) => /* @__PURE__ */ yt(
1142
+ Ut,
1124
1143
  {
1125
1144
  setState: c,
1126
1145
  stateKey: t,
@@ -1129,120 +1148,120 @@ function dt(t, c, h, f) {
1129
1148
  formOpts: e
1130
1149
  }
1131
1150
  );
1132
- const j = [...n, l], nt = o.getState().getNestedState(t, j);
1133
- return a(nt, j, m);
1151
+ const R = [...n, l], ot = o.getState().getNestedState(t, R);
1152
+ return a(ot, R, S);
1134
1153
  }
1135
- }, G = new Proxy(R, U);
1136
- return I.set(L, {
1137
- proxy: G,
1138
- stateVersion: $
1139
- }), G;
1154
+ }, H = new Proxy(O, U);
1155
+ return y.set(G, {
1156
+ proxy: H,
1157
+ stateVersion: b
1158
+ }), H;
1140
1159
  }
1141
1160
  return a(
1142
1161
  o.getState().getNestedState(t, [])
1143
1162
  );
1144
1163
  }
1145
- function kt(t) {
1146
- return at(Jt, { proxy: t });
1164
+ function bt(t) {
1165
+ return ct(Zt, { proxy: t });
1147
1166
  }
1148
- function qt({
1167
+ function Yt({
1149
1168
  proxy: t,
1150
1169
  rebuildStateShape: c
1151
1170
  }) {
1152
- const h = o().getNestedState(t._stateKey, t._path);
1153
- return Array.isArray(h) ? c(
1154
- h,
1171
+ const m = o().getNestedState(t._stateKey, t._path);
1172
+ return Array.isArray(m) ? c(
1173
+ m,
1155
1174
  t._path
1156
1175
  ).stateMapNoRender(
1157
- (I, $, w, p, a) => t._mapFn(I, $, w, p, a)
1176
+ (y, b, p, I, a) => t._mapFn(y, b, p, I, a)
1158
1177
  ) : null;
1159
1178
  }
1160
- function Jt({
1179
+ function Zt({
1161
1180
  proxy: t
1162
1181
  }) {
1163
- const c = Q(null), h = `${t._stateKey}-${t._path.join(".")}`;
1164
- return ot(() => {
1182
+ const c = Z(null), m = `${t._stateKey}-${t._path.join(".")}`;
1183
+ return it(() => {
1165
1184
  const f = c.current;
1166
1185
  if (!f || !f.parentElement) return;
1167
- const I = f.parentElement, w = Array.from(I.childNodes).indexOf(f);
1168
- let p = I.getAttribute("data-parent-id");
1169
- p || (p = `parent-${crypto.randomUUID()}`, I.setAttribute("data-parent-id", p));
1170
- const y = {
1186
+ const y = f.parentElement, p = Array.from(y.childNodes).indexOf(f);
1187
+ let I = y.getAttribute("data-parent-id");
1188
+ I || (I = `parent-${crypto.randomUUID()}`, y.setAttribute("data-parent-id", I));
1189
+ const v = {
1171
1190
  instanceId: `instance-${crypto.randomUUID()}`,
1172
- parentId: p,
1173
- position: w,
1191
+ parentId: I,
1192
+ position: p,
1174
1193
  effect: t._effect
1175
1194
  };
1176
- o.getState().addSignalElement(h, y);
1195
+ o.getState().addSignalElement(m, v);
1177
1196
  const n = o.getState().getNestedState(t._stateKey, t._path);
1178
- let m;
1197
+ let S;
1179
1198
  if (t._effect)
1180
1199
  try {
1181
- m = new Function(
1200
+ S = new Function(
1182
1201
  "state",
1183
1202
  `return (${t._effect})(state)`
1184
1203
  )(n);
1185
- } catch (R) {
1186
- console.error("Error evaluating effect function during mount:", R), m = n;
1204
+ } catch (O) {
1205
+ console.error("Error evaluating effect function during mount:", O), S = n;
1187
1206
  }
1188
1207
  else
1189
- m = n;
1190
- m !== null && typeof m == "object" && (m = JSON.stringify(m));
1191
- const L = document.createTextNode(String(m));
1192
- f.replaceWith(L);
1193
- }, [t._stateKey, t._path.join("."), t._effect]), at("span", {
1208
+ S = n;
1209
+ S !== null && typeof S == "object" && (S = JSON.stringify(S));
1210
+ const G = document.createTextNode(String(S));
1211
+ f.replaceWith(G);
1212
+ }, [t._stateKey, t._path.join("."), t._effect]), ct("span", {
1194
1213
  ref: c,
1195
1214
  style: { display: "none" },
1196
- "data-signal-id": h
1215
+ "data-signal-id": m
1197
1216
  });
1198
1217
  }
1199
- function de(t) {
1200
- const c = xt(
1201
- (h) => {
1218
+ function ge(t) {
1219
+ const c = _t(
1220
+ (m) => {
1202
1221
  const f = o.getState().stateComponents.get(t._stateKey) || {
1203
1222
  components: /* @__PURE__ */ new Map()
1204
1223
  };
1205
1224
  return f.components.set(t._stateKey, {
1206
- forceUpdate: h,
1225
+ forceUpdate: m,
1207
1226
  paths: /* @__PURE__ */ new Set([t._path.join(".")])
1208
1227
  }), () => f.components.delete(t._stateKey);
1209
1228
  },
1210
1229
  () => o.getState().getNestedState(t._stateKey, t._path)
1211
1230
  );
1212
- return at("text", {}, String(c));
1231
+ return ct("text", {}, String(c));
1213
1232
  }
1214
- function Yt({
1233
+ function Xt({
1215
1234
  stateKey: t,
1216
1235
  itemComponentId: c,
1217
- itemPath: h,
1236
+ itemPath: m,
1218
1237
  children: f
1219
1238
  }) {
1220
- const [, I] = X({}), [$, w] = Ft(), p = Q(null);
1221
- return ot(() => {
1222
- w.height > 0 && w.height !== p.current && (p.current = w.height, o.getState().setShadowMetadata(t, h, {
1239
+ const [, y] = tt({}), [b, p] = Wt(), I = Z(null);
1240
+ return it(() => {
1241
+ p.height > 0 && p.height !== I.current && (I.current = p.height, o.getState().setShadowMetadata(t, m, {
1223
1242
  virtualizer: {
1224
- itemHeight: w.height
1243
+ itemHeight: p.height
1225
1244
  }
1226
1245
  }));
1227
- }, [w.height, t, h]), ct(() => {
1228
- const a = `${t}////${c}`, y = o.getState().stateComponents.get(t) || {
1246
+ }, [p.height, t, m]), ut(() => {
1247
+ const a = `${t}////${c}`, v = o.getState().stateComponents.get(t) || {
1229
1248
  components: /* @__PURE__ */ new Map()
1230
1249
  };
1231
- return y.components.set(a, {
1232
- forceUpdate: () => I({}),
1233
- paths: /* @__PURE__ */ new Set([h.join(".")])
1234
- }), o.getState().stateComponents.set(t, y), () => {
1250
+ return v.components.set(a, {
1251
+ forceUpdate: () => y({}),
1252
+ paths: /* @__PURE__ */ new Set([m.join(".")])
1253
+ }), o.getState().stateComponents.set(t, v), () => {
1235
1254
  const n = o.getState().stateComponents.get(t);
1236
1255
  n && n.components.delete(a);
1237
1256
  };
1238
- }, [t, c, h.join(".")]), /* @__PURE__ */ mt("div", { ref: $, children: f });
1257
+ }, [t, c, m.join(".")]), /* @__PURE__ */ yt("div", { ref: b, children: f });
1239
1258
  }
1240
1259
  export {
1241
- kt as $cogsSignal,
1242
- de as $cogsSignalStore,
1243
- ie as addStateOptions,
1244
- ce as createCogsState,
1245
- le as notifyComponent,
1246
- Bt as useCogsStateFn
1260
+ bt as $cogsSignal,
1261
+ ge as $cogsSignalStore,
1262
+ le as addStateOptions,
1263
+ de as createCogsState,
1264
+ ue as notifyComponent,
1265
+ Jt as useCogsStateFn
1247
1266
  };
1248
1267
  //# sourceMappingURL=CogsState.jsx.map