cogsbox-state 0.5.436 → 0.5.438
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.d.ts +7 -0
- package/dist/CogsState.d.ts.map +1 -0
- package/dist/CogsState.jsx +524 -509
- package/dist/CogsState.jsx.map +1 -1
- package/dist/CogsStateClient.d.ts +1 -0
- package/dist/CogsStateClient.d.ts.map +1 -0
- package/dist/Functions.d.ts +1 -0
- package/dist/Functions.d.ts.map +1 -0
- package/dist/TRPCValidationLink.d.ts +1 -0
- package/dist/TRPCValidationLink.d.ts.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +24 -20
- package/dist/index.js.map +1 -1
- package/dist/store.d.ts +1 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/utility.d.ts +1 -0
- package/dist/utility.d.ts.map +1 -0
- package/package.json +2 -3
- package/src/CogsState.tsx +82 -3
- package/src/index.ts +5 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CogsStateClient.d.ts","sourceRoot":"","sources":["../src/CogsStateClient.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAC;AACzD,KAAK,UAAU,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACzC,eAAO,MAAM,MAAM,EAAE,UAEpB,CAAC;AAIF,eAAO,MAAM,aAAa,kBAAgC,CAAC;AAE3D,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,2CAMA"}
|
package/dist/Functions.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Functions.d.ts","sourceRoot":"","sources":["../src/Functions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AACF,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,QAAQ,GACT,EAAE,sBAAsB,2CA6BxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TRPCValidationLink.d.ts","sourceRoot":"","sources":["../src/TRPCValidationLink.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAK7C,eAAO,MAAM,yBAAyB,GACpC,OAAO,SAAS,SAAS,EACzB,aAAa;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,WAGgC,QAAQ,CAAC,OAAO,CAuDhD,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,30 +1,34 @@
|
|
|
1
|
-
import { $cogsSignal as r, addStateOptions as o, createCogsState as n,
|
|
2
|
-
import { CogsStateClient as
|
|
3
|
-
import { debounce as
|
|
4
|
-
import { useCogsTrpcValidationLink as
|
|
1
|
+
import { $cogsSignal as r, addStateOptions as o, createCogsState as n, createCogsStateFromSync as s, notifyComponent as a, useCogsStateFn as f } from "./CogsState.jsx";
|
|
2
|
+
import { CogsStateClient as i, config as c, useCogsConfig as p } from "./CogsStateClient.jsx";
|
|
3
|
+
import { debounce as S, deepMerge as m, deleteNestedProperty as u, getArrayLengthDifferences as y, getArrayLengthDifferencesArray as C, getDifferences as l, getDifferencesArray as x, getNestedValue as A, isArray as D, isDeepEqual as F, isFunction as b, isObject as L, transformStateFunc as N, updateNestedProperty as h } from "./utility.js";
|
|
4
|
+
import { useCogsTrpcValidationLink as P } from "./TRPCValidationLink.js";
|
|
5
|
+
import { formRefStore as j, getGlobalStore as k } from "./store.js";
|
|
5
6
|
export {
|
|
6
7
|
r as $cogsSignal,
|
|
7
|
-
|
|
8
|
+
i as CogsStateClient,
|
|
8
9
|
o as addStateOptions,
|
|
9
|
-
|
|
10
|
+
c as config,
|
|
10
11
|
n as createCogsState,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
s as createCogsStateFromSync,
|
|
13
|
+
S as debounce,
|
|
14
|
+
m as deepMerge,
|
|
15
|
+
u as deleteNestedProperty,
|
|
16
|
+
j as formRefStore,
|
|
17
|
+
y as getArrayLengthDifferences,
|
|
18
|
+
C as getArrayLengthDifferencesArray,
|
|
19
|
+
l as getDifferences,
|
|
20
|
+
x as getDifferencesArray,
|
|
21
|
+
k as getGlobalStore,
|
|
18
22
|
A as getNestedValue,
|
|
19
23
|
D as isArray,
|
|
20
|
-
|
|
21
|
-
|
|
24
|
+
F as isDeepEqual,
|
|
25
|
+
b as isFunction,
|
|
22
26
|
L as isObject,
|
|
23
|
-
|
|
27
|
+
a as notifyComponent,
|
|
24
28
|
N as transformStateFunc,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
+
h as updateNestedProperty,
|
|
30
|
+
p as useCogsConfig,
|
|
31
|
+
f as useCogsStateFn,
|
|
32
|
+
P as useCogsTrpcValidationLink
|
|
29
33
|
};
|
|
30
34
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|
package/dist/store.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EAEd,QAAQ,EACR,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAKF,KAAK,UAAU,GAAG,GAAG,CAAC;AAEtB,MAAM,MAAM,QAAQ,GAAG;IACrB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACjE,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAC7D,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpC,qBAAqB,EAAE,CACrB,QAAQ,EAAE,MAAM,KACb,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;CACxC,CAAC;AAEF,eAAO,MAAM,YAAY,gFAiCtB,CAAC;AACJ,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,CAAC,EAAE,GAAG,CACd,MAAM,EACN;QACE,WAAW,EAAE,MAAM,IAAI,CAAC;QACxB,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC;QAC5C,YAAY,EAAE,cAAc,EAAE,GAAG,cAAc,CAAC;KACjD,CACF,CAAC;CACH,CAAC;AACF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,cAAc,CAAC;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,GAAG,CAAC;IAEtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,WAAW,CAAC,EAAE;QACZ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;KAC7B,CAAC;IACF,QAAQ,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,YAAY,CAAC,EAAE,KAAK,CAAC;QAEnB,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,GAAG,EAAE,CAAC;KACb,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,GAAG,CAAC;QACX,KAAK,EAAE,CACL,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,MAAM,EAEb,WAAW,EAAE,GAAG,KACb,SAAS,CAAC;QACf,YAAY,EAAE,cAAc,GAAG,IAAI,CAAC;QACpC,iBAAiB,EAAE,GAAG,CAAC;KACxB,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,GAAG,CACnB,MAAM,EACN;QACE,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;YAAC,EAAE,EAAE,QAAQ,CAAA;SAAE,CAAC,CAAC;KAC9D,CACF,CAAC;IACF,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,GAAG,CACX,MAAM,EACN;QACE,MAAM,EAAE,GAAG,EAAE,CAAC;QACd,UAAU,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;KACnC,CACF,CAAC;CACH,GAAG,cAAc,CAAC;AAEnB,MAAM,MAAM,gBAAgB,GACxB,UAAU,GACV,OAAO,GACP,YAAY,GACZ,cAAc,GACd,mBAAmB,GACnB,oBAAoB,GACpB,SAAS,GACT,QAAQ,GACR,aAAa,CAAC;AAElB,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,GAAG,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AACrC,MAAM,MAAM,eAAe,GAAG;IAE5B,iBAAiB,EAAE,CACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,GAAG,KACd,IAAI,CAAC;IACV,mBAAmB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE,gBAAgB,EAAE,CAChB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EAAE,EACxB,eAAe,EAAE,MAAM,KACpB,IAAI,CAAC;IACV,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC9C,WAAW,EAAE,CACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,KACzB,IAAI,CAAC;IAEV,qBAAqB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,IAAI,CAAC;IAChE,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IACzE,wBAAwB,EAAE,CACxB,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,GAAG,KACT,IAAI,CAAC;IACV,wBAAwB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACrE,cAAc,EAAE,CACd,GAAG,EAAE,MAAM,EAEX,aAAa,CAAC,EAAE,MAAM,EAAE,KACrB,GAAG,CAAC;IAET,iBAAiB,EAAE,CACjB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,KACX,cAAc,GAAG,SAAS,CAAC;IAChC,iBAAiB,EAAE,CACjB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,KACjC,IAAI,CAAC;IACV,iBAAiB,EAAE,CACjB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,KACX,IAAI,CAAC;IAEV,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC;IAC3D,eAAe,EAAE,CACf,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,KAC9B,MAAM,IAAI,CAAC;IAChB,qBAAqB,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IAEpE,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IACzE,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,kBAAkB,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACjE,4BAA4B,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAIzD,mBAAmB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAA;KAAE,CAAC;IAEpD,kBAAkB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;KAAE,CAAC;IAElD,wBAAwB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,KAAK,IAAI,CAAC;IAEtE,iBAAiB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,WAAW,GAAG,SAAS,CAAC;IAC5D,sBAAsB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAGlE,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IAChD,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAI9C,kBAAkB,EAAE,GAAG,CACrB,MAAM,EACN;QACE,IAAI,EAAE,GAAG,CAAC;QACV,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;QACxC,SAAS,EAAE,MAAM,CAAC;KACnB,CACF,CAAC;IAEF,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,IAAI,CAAC;IAE9D,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;KAAE,CAAC;IAChD,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErC,WAAW,EAAE,CACX,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,KAC7D,IAAI,CAAC;IACV,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvD,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC;CAC/C,CAAC;AA0BF,eAAO,MAAM,cAAc,8EAqqBxB,CAAC"}
|
package/dist/utility.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utility.d.ts","sourceRoot":"","sources":["../src/utility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE1E,eAAO,MAAM,QAAQ,GAAI,MAAM,GAAG,KAAG,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAI9D,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEhD,eAAO,MAAM,UAAU,GAAI,YAAY,SAAS,OAAO,EACrD,KAAK,GAAG,KACP,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,KAAK,YAAyC,CAAC;AAE5E,eAAO,MAAM,OAAO,GAAI,MAAM,GAAG,KAAG,IAAI,IAAI,KAAK,CAAC,GAAG,CAEpD,CAAC;AACF,eAAO,MAAM,WAAW,GACtB,UAAU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,UAAU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,OAAM;IAAE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;CAAO,EAC/B,cAAa,MAAM,EAAO,KACzB,OAqDF,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,GAAG,GACV,GAAG,CAqCL;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,CA4CpE;AACD,wBAAgB,cAAc,CAAC,YAAY,SAAS,OAAO,EACzD,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,EAAE,MAAM,OA6DjB;AAED,KAAK,eAAe,GAAG,MAAM,EAAE,CAAC;AAEhC,wBAAgB,cAAc,CAC5B,IAAI,EAAE,GAAG,EACT,IAAI,EAAE,GAAG,EACT,WAAW,GAAE,MAAW,GACvB,eAAe,CAqEjB;AACD,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG,CAgBvD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,cASvD;AACD,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,GAAG,EACT,IAAI,EAAE,GAAG,EACT,WAAW,GAAE,MAAW,GACvB,MAAM,EAAE,CAkCV;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,cASlE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,SAAS,OAAO,EAAE,YAAY,EAAE,KAAK,GA4BxB,CACjD,oBAAoB,CAAC,KAAK,CAAC,EAC3B,aAAa,CACd,CACF;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACxD,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC7B,IAAI,EAAE,MAAM,GACX,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAmB5B;AACD,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG;IACrE,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cogsbox-state",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.438",
|
|
4
4
|
"description": "React state management library with form controls and server sync",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -24,8 +24,7 @@
|
|
|
24
24
|
"scripts": {
|
|
25
25
|
"build": "rimraf dist && vite build && npm pack && node scripts/rename-pack.cjs",
|
|
26
26
|
"lint": "eslint src --ext ts,tsx",
|
|
27
|
-
"format": "prettier --write \"src/**/*.{ts,tsx}\""
|
|
28
|
-
"dev": "vite src/examples"
|
|
27
|
+
"format": "prettier --write \"src/**/*.{ts,tsx}\""
|
|
29
28
|
},
|
|
30
29
|
"dependencies": {
|
|
31
30
|
"@tsndr/cloudflare-worker-jwt": "^3.1.3",
|
package/src/CogsState.tsx
CHANGED
|
@@ -553,18 +553,69 @@ type CogsApi<T extends Record<string, any>> = {
|
|
|
553
553
|
useCogsState: UseCogsStateHook<T>;
|
|
554
554
|
setCogsOptions: SetCogsOptionsFunc<T>;
|
|
555
555
|
};
|
|
556
|
+
|
|
557
|
+
type ExtractStateFromSyncSchema<T> = T extends {
|
|
558
|
+
schemas: infer S;
|
|
559
|
+
notifications: any;
|
|
560
|
+
}
|
|
561
|
+
? S extends Record<string, any>
|
|
562
|
+
? {
|
|
563
|
+
[K in keyof S]: S[K] extends { rawSchema: infer R }
|
|
564
|
+
? R
|
|
565
|
+
: S[K] extends { schemas: { defaults: infer D } }
|
|
566
|
+
? D
|
|
567
|
+
: never;
|
|
568
|
+
}
|
|
569
|
+
: never
|
|
570
|
+
: never;
|
|
571
|
+
|
|
572
|
+
// Type to extract just the sync schema structure
|
|
573
|
+
type SyncSchemaStructure<T = any> = {
|
|
574
|
+
schemas: Record<
|
|
575
|
+
string,
|
|
576
|
+
{
|
|
577
|
+
rawSchema?: any;
|
|
578
|
+
schemas?: {
|
|
579
|
+
sql?: any;
|
|
580
|
+
client?: any;
|
|
581
|
+
validation?: any;
|
|
582
|
+
defaults?: any;
|
|
583
|
+
};
|
|
584
|
+
api?: {
|
|
585
|
+
initialData?: string;
|
|
586
|
+
update?: string;
|
|
587
|
+
};
|
|
588
|
+
validate?: (data: unknown, ctx: any) => any;
|
|
589
|
+
validateClient?: (data: unknown) => any;
|
|
590
|
+
serializable?: any;
|
|
591
|
+
}
|
|
592
|
+
>;
|
|
593
|
+
notifications: Record<string, (state: any, context: any) => any>;
|
|
594
|
+
};
|
|
556
595
|
export const createCogsState = <State extends Record<StateKeys, unknown>>(
|
|
557
596
|
initialState: State,
|
|
558
597
|
opt?: {
|
|
559
598
|
formElements?: FormsElementsType<State>;
|
|
560
599
|
validation?: ValidationOptionsType;
|
|
600
|
+
// Add this flag to indicate it's from sync schema
|
|
601
|
+
__fromSyncSchema?: boolean;
|
|
602
|
+
__syncNotifications?: Record<string, Function>;
|
|
561
603
|
}
|
|
562
604
|
) => {
|
|
605
|
+
// Keep ALL your existing code exactly the same
|
|
563
606
|
let newInitialState = initialState;
|
|
564
607
|
|
|
565
608
|
const [statePart, initialOptionsPart] =
|
|
566
609
|
transformStateFunc<State>(newInitialState);
|
|
567
610
|
|
|
611
|
+
// Only addition - store notifications if provided
|
|
612
|
+
if (opt?.__fromSyncSchema && opt?.__syncNotifications) {
|
|
613
|
+
getGlobalStore
|
|
614
|
+
.getState()
|
|
615
|
+
.setInitialStateOptions('__notifications', opt.__syncNotifications);
|
|
616
|
+
}
|
|
617
|
+
// ... rest of your existing createCogsState code unchanged ...
|
|
618
|
+
|
|
568
619
|
Object.keys(statePart).forEach((key) => {
|
|
569
620
|
let existingOptions = initialOptionsPart[key] || {};
|
|
570
621
|
|
|
@@ -615,6 +666,7 @@ export const createCogsState = <State extends Record<StateKeys, unknown>>(
|
|
|
615
666
|
stateKey: StateKey,
|
|
616
667
|
options?: Prettify<OptionsType<(typeof statePart)[StateKey]>>
|
|
617
668
|
) => {
|
|
669
|
+
// ... your existing useCogsState implementation ...
|
|
618
670
|
const [componentId] = useState(options?.componentId ?? uuidv4());
|
|
619
671
|
setOptions({
|
|
620
672
|
stateKey,
|
|
@@ -635,7 +687,6 @@ export const createCogsState = <State extends Record<StateKeys, unknown>>(
|
|
|
635
687
|
componentId,
|
|
636
688
|
localStorage: options?.localStorage,
|
|
637
689
|
middleware: options?.middleware,
|
|
638
|
-
|
|
639
690
|
reactiveType: options?.reactiveType,
|
|
640
691
|
reactiveDeps: options?.reactiveDeps,
|
|
641
692
|
defaultState: options?.defaultState as any,
|
|
@@ -662,6 +713,32 @@ export const createCogsState = <State extends Record<StateKeys, unknown>>(
|
|
|
662
713
|
return { useCogsState, setCogsOptions } as CogsApi<State>;
|
|
663
714
|
};
|
|
664
715
|
|
|
716
|
+
export function createCogsStateFromSync<
|
|
717
|
+
T extends Record<string, any>,
|
|
718
|
+
>(syncSchema: {
|
|
719
|
+
schemas: any;
|
|
720
|
+
notifications: any;
|
|
721
|
+
}): ReturnType<typeof createCogsState<T>> {
|
|
722
|
+
// Extract initial state
|
|
723
|
+
const initialState = {} as T;
|
|
724
|
+
|
|
725
|
+
for (const key in syncSchema.schemas) {
|
|
726
|
+
const entry = syncSchema.schemas[key];
|
|
727
|
+
if (entry.rawSchema) {
|
|
728
|
+
initialState[key as keyof T] = entry.rawSchema;
|
|
729
|
+
} else if (entry.schemas?.defaults) {
|
|
730
|
+
initialState[key as keyof T] = entry.schemas.defaults;
|
|
731
|
+
} else {
|
|
732
|
+
initialState[key as keyof T] = {} as any;
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
|
|
736
|
+
return createCogsState(initialState, {
|
|
737
|
+
__fromSyncSchema: true,
|
|
738
|
+
__syncNotifications: syncSchema.notifications,
|
|
739
|
+
}) as any;
|
|
740
|
+
}
|
|
741
|
+
|
|
665
742
|
const {
|
|
666
743
|
getInitialOptions,
|
|
667
744
|
getValidationErrors,
|
|
@@ -2986,7 +3063,7 @@ function createProxyHandler<T>(
|
|
|
2986
3063
|
arrayValues: freshValues || [],
|
|
2987
3064
|
};
|
|
2988
3065
|
}, [cacheKey, updateTrigger]);
|
|
2989
|
-
|
|
3066
|
+
|
|
2990
3067
|
useEffect(() => {
|
|
2991
3068
|
const unsubscribe = getGlobalStore
|
|
2992
3069
|
.getState()
|
|
@@ -3041,7 +3118,7 @@ function createProxyHandler<T>(
|
|
|
3041
3118
|
validIds: validIds,
|
|
3042
3119
|
},
|
|
3043
3120
|
});
|
|
3044
|
-
|
|
3121
|
+
|
|
3045
3122
|
return (
|
|
3046
3123
|
<>
|
|
3047
3124
|
{arrayValues.map((item, localIndex) => {
|
|
@@ -3242,6 +3319,8 @@ function createProxyHandler<T>(
|
|
|
3242
3319
|
getGlobalStore
|
|
3243
3320
|
.getState()
|
|
3244
3321
|
.clearSelectedIndex({ arrayKey: stateKeyPathKey });
|
|
3322
|
+
const parentPath = pathForCut?.slice(0, -1)!;
|
|
3323
|
+
notifySelectionComponents(stateKey, parentPath);
|
|
3245
3324
|
effectiveSetState(currentState, pathForCut!, {
|
|
3246
3325
|
updateType: 'cut',
|
|
3247
3326
|
});
|
package/src/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
4
|
-
export * from
|
|
1
|
+
export * from './CogsState.js';
|
|
2
|
+
export * from './CogsStateClient.js';
|
|
3
|
+
export * from './utility.js';
|
|
4
|
+
export * from './TRPCValidationLink.js';
|
|
5
|
+
export * from './store.js';
|