cogsbox-state 0.5.436 → 0.5.437
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 +83 -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":"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"}
|
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.437",
|
|
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,33 @@ export const createCogsState = <State extends Record<StateKeys, unknown>>(
|
|
|
662
713
|
return { useCogsState, setCogsOptions } as CogsApi<State>;
|
|
663
714
|
};
|
|
664
715
|
|
|
716
|
+
// Then create a simple helper that extracts state from sync schema
|
|
717
|
+
export function createCogsStateFromSync<
|
|
718
|
+
T extends Record<string, any>,
|
|
719
|
+
>(syncSchema: {
|
|
720
|
+
schemas: any;
|
|
721
|
+
notifications: any;
|
|
722
|
+
}): ReturnType<typeof createCogsState<T>> {
|
|
723
|
+
// Extract initial state
|
|
724
|
+
const initialState = {} as T;
|
|
725
|
+
|
|
726
|
+
for (const key in syncSchema.schemas) {
|
|
727
|
+
const entry = syncSchema.schemas[key];
|
|
728
|
+
if (entry.rawSchema) {
|
|
729
|
+
initialState[key as keyof T] = entry.rawSchema;
|
|
730
|
+
} else if (entry.schemas?.defaults) {
|
|
731
|
+
initialState[key as keyof T] = entry.schemas.defaults;
|
|
732
|
+
} else {
|
|
733
|
+
initialState[key as keyof T] = {} as any;
|
|
734
|
+
}
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
return createCogsState(initialState, {
|
|
738
|
+
__fromSyncSchema: true,
|
|
739
|
+
__syncNotifications: syncSchema.notifications,
|
|
740
|
+
}) as any;
|
|
741
|
+
}
|
|
742
|
+
|
|
665
743
|
const {
|
|
666
744
|
getInitialOptions,
|
|
667
745
|
getValidationErrors,
|
|
@@ -2986,7 +3064,7 @@ function createProxyHandler<T>(
|
|
|
2986
3064
|
arrayValues: freshValues || [],
|
|
2987
3065
|
};
|
|
2988
3066
|
}, [cacheKey, updateTrigger]);
|
|
2989
|
-
|
|
3067
|
+
|
|
2990
3068
|
useEffect(() => {
|
|
2991
3069
|
const unsubscribe = getGlobalStore
|
|
2992
3070
|
.getState()
|
|
@@ -3041,7 +3119,7 @@ function createProxyHandler<T>(
|
|
|
3041
3119
|
validIds: validIds,
|
|
3042
3120
|
},
|
|
3043
3121
|
});
|
|
3044
|
-
|
|
3122
|
+
|
|
3045
3123
|
return (
|
|
3046
3124
|
<>
|
|
3047
3125
|
{arrayValues.map((item, localIndex) => {
|
|
@@ -3242,6 +3320,8 @@ function createProxyHandler<T>(
|
|
|
3242
3320
|
getGlobalStore
|
|
3243
3321
|
.getState()
|
|
3244
3322
|
.clearSelectedIndex({ arrayKey: stateKeyPathKey });
|
|
3323
|
+
const parentPath = pathForCut?.slice(0, -1)!;
|
|
3324
|
+
notifySelectionComponents(stateKey, parentPath);
|
|
3245
3325
|
effectiveSetState(currentState, pathForCut!, {
|
|
3246
3326
|
updateType: 'cut',
|
|
3247
3327
|
});
|
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';
|