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