valyrian.js 8.0.13 → 8.1.0

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.
Files changed (60) hide show
  1. package/dist/lib/native-store/index.d.ts +1 -1
  2. package/dist/lib/native-store/index.d.ts.map +1 -1
  3. package/dist/lib/node/index.d.ts +2 -2
  4. package/dist/lib/node/index.d.ts.map +1 -1
  5. package/dist/lib/node/utils/server-storage.d.ts +12 -0
  6. package/dist/lib/node/utils/server-storage.d.ts.map +1 -0
  7. package/dist/lib/node/utils/tree-adapter.d.ts.map +1 -1
  8. package/dist/lib/pulses/index.d.ts +4 -0
  9. package/dist/lib/pulses/index.d.ts.map +1 -1
  10. package/dist/lib/redux-devtools/index.d.ts +15 -0
  11. package/dist/lib/redux-devtools/index.d.ts.map +1 -0
  12. package/dist/lib/request/index.d.ts.map +1 -1
  13. package/dist/lib/translate/index.d.ts +6 -2
  14. package/dist/lib/translate/index.d.ts.map +1 -1
  15. package/dist/native-store/index.js +26 -13
  16. package/dist/native-store/index.js.map +3 -3
  17. package/dist/native-store/index.min.js +1 -1
  18. package/dist/native-store/index.min.js.map +1 -1
  19. package/dist/native-store/index.mjs +26 -13
  20. package/dist/native-store/index.mjs.map +3 -3
  21. package/dist/node/index.js +57 -94
  22. package/dist/node/index.js.map +4 -4
  23. package/dist/node/index.mjs +57 -94
  24. package/dist/node/index.mjs.map +4 -4
  25. package/dist/pulses/index.js +32 -1
  26. package/dist/pulses/index.js.map +2 -2
  27. package/dist/pulses/index.min.js +1 -1
  28. package/dist/pulses/index.min.js.map +1 -1
  29. package/dist/pulses/index.mjs +32 -1
  30. package/dist/pulses/index.mjs.map +2 -2
  31. package/dist/redux-devtools/index.js +81 -0
  32. package/dist/redux-devtools/index.js.map +7 -0
  33. package/dist/redux-devtools/index.min.js +1 -0
  34. package/dist/redux-devtools/index.min.js.map +1 -0
  35. package/dist/redux-devtools/index.mjs +60 -0
  36. package/dist/redux-devtools/index.mjs.map +7 -0
  37. package/dist/request/index.js +20 -7
  38. package/dist/request/index.js.map +2 -2
  39. package/dist/request/index.min.js +1 -1
  40. package/dist/request/index.min.js.map +1 -1
  41. package/dist/request/index.mjs +20 -7
  42. package/dist/request/index.mjs.map +2 -2
  43. package/dist/translate/index.js +36 -26
  44. package/dist/translate/index.js.map +3 -3
  45. package/dist/translate/index.min.js +1 -1
  46. package/dist/translate/index.min.js.map +1 -1
  47. package/dist/translate/index.mjs +36 -26
  48. package/dist/translate/index.mjs.map +3 -3
  49. package/lib/native-store/index.ts +22 -8
  50. package/lib/node/index.ts +4 -4
  51. package/lib/node/utils/server-storage.ts +71 -0
  52. package/lib/node/utils/tree-adapter.ts +25 -1
  53. package/lib/pulses/index.ts +54 -6
  54. package/lib/redux-devtools/index.ts +86 -0
  55. package/lib/request/index.ts +28 -8
  56. package/lib/translate/index.ts +37 -26
  57. package/package.json +14 -14
  58. package/dist/lib/node/utils/session-storage.d.ts +0 -22
  59. package/dist/lib/node/utils/session-storage.d.ts.map +0 -1
  60. package/lib/node/utils/session-storage.ts +0 -120
@@ -10,5 +10,5 @@ export interface NativeStorageInterface {
10
10
  load(): void;
11
11
  clear(): void;
12
12
  }
13
- export declare function createNativeStore<T>(key: string, definition?: Record<string, any>, storageType?: StorageType, reuseIfExist?: boolean): NativeStorageInterface & T;
13
+ export declare function createNativeStore<T>(id: string, definition?: Record<string, any>, storageType?: StorageType, reuseIfExist?: boolean): NativeStorageInterface & T;
14
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/native-store/index.ts"],"names":[],"mappings":"AAGA,oBAAY,WAAW;IAErB,OAAO,YAAY;IAEnB,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE3B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IAEnC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IAEtB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,IAAI,IAAI,CAAC;IACb,KAAK,IAAI,IAAI,CAAC;CACf;AAaD,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,GAAG,EAAE,MAAM,EACX,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EACpC,WAAW,GAAE,WAA+B,EAC5C,YAAY,UAAQ,GACnB,sBAAsB,GAAG,CAAC,CAmE5B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/native-store/index.ts"],"names":[],"mappings":"AAGA,oBAAY,WAAW;IAErB,OAAO,YAAY;IAEnB,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE3B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IAEnC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IAEtB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,IAAI,IAAI,CAAC;IACb,KAAK,IAAI,IAAI,CAAC;CACf;AAaD,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,EAAE,EAAE,MAAM,EACV,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EACpC,WAAW,GAAE,WAA+B,EAC5C,YAAY,UAAQ,GACnB,sBAAsB,GAAG,CAAC,CAiF5B"}
@@ -2,7 +2,7 @@ import { domToHtml, domToHyperscript, htmlToDom, htmlToHyperscript } from "./uti
2
2
  import { icons } from "./utils/icons";
3
3
  import { inline } from "./utils/inline";
4
4
  import { sw } from "./utils/sw";
5
- import { SessionStorage } from "./utils/session-storage";
5
+ import { ServerStorage } from "./utils/server-storage";
6
6
  declare function render(...args: any[]): string;
7
- export { domToHtml, domToHyperscript, htmlToDom, htmlToHyperscript, inline, sw, icons, render, SessionStorage };
7
+ export { domToHtml, domToHyperscript, htmlToDom, htmlToHyperscript, inline, sw, icons, render, ServerStorage };
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI3G,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAOzD,iBAAS,MAAM,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,UAK7B;AAED,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI3G,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAOvD,iBAAS,MAAM,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,UAK7B;AAED,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare class ServerStorage implements Storage {
2
+ get store(): Record<string, string>;
3
+ get length(): number;
4
+ clear(): void;
5
+ getItem(key: string): string | null;
6
+ key(index: number): string | null;
7
+ removeItem(key: string): void;
8
+ setItem(key: string, value: string): void;
9
+ static run(callback: () => void): void;
10
+ toJSON(): Record<string, string>;
11
+ }
12
+ //# sourceMappingURL=server-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-storage.d.ts","sourceRoot":"","sources":["../../../../lib/node/utils/server-storage.ts"],"names":[],"mappings":"AAKA,qBAAa,aAAc,YAAW,OAAO;IAC3C,IAAI,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAElC;IAED,IAAI,MAAM,IAAI,MAAM,CAGnB;IAED,KAAK,IAAI,IAAI;IASb,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAKnC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAKjC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAO7B,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAOzC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,IAAI;IAI/B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAIjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tree-adapter.d.ts","sourceRoot":"","sources":["../../../../lib/node/utils/tree-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree-adapter.d.ts","sourceRoot":"","sources":["../../../../lib/node/utils/tree-adapter.ts"],"names":[],"mappings":"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"}
@@ -11,9 +11,13 @@ type StorePulses<PulsesType extends Pulses<any>> = {
11
11
  };
12
12
  export declare function createPulseStore<StateType extends State, PulsesType extends Pulses<StateType>>(initialState: StateType, pulses: PulsesType): StorePulses<PulsesType> & {
13
13
  state: ProxyState<StateType>;
14
+ on: (event: string, callback: Function) => void;
15
+ off: (event: string, callback: Function) => void;
14
16
  };
15
17
  export declare function createMutableStore<StateType extends State, PulsesType extends Pulses<StateType>>(initialState: StateType, pulses: PulsesType): StorePulses<PulsesType> & {
16
18
  state: ProxyState<StateType>;
19
+ on: (event: string, callback: Function) => void;
20
+ off: (event: string, callback: Function) => void;
17
21
  };
18
22
  export declare function createEffect(effect: Function): void;
19
23
  export declare function createPulse<T>(initialValue: T): [() => T, (newValue: T | ((current: T) => T)) => void, () => void];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/pulses/index.ts"],"names":[],"mappings":"AAIA,KAAK,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEjC,MAAM,MAAM,KAAK,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEnH,MAAM,MAAM,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAAC;AAEzG,KAAK,UAAU,CAAC,SAAS,IAAI,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC;AAIhE,KAAK,WAAW,CAAC,UAAU,SAAS,MAAM,CAAC,GAAG,CAAC,IAAI;KAChD,CAAC,IAAI,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,MAAM,CAAC,GACvF,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,GACpB,KAAK;CACV,CAAC;AAmMF,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,KAAK,EAAE,UAAU,SAAS,MAAM,CAAC,SAAS,CAAC,EAC5F,YAAY,EAAE,SAAS,EACvB,MAAM,EAAE,UAAU,GACjB,WAAW,CAAC,UAAU,CAAC,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAA;CAAE,CAE5D;AAED,wBAAgB,kBAAkB,CAAC,SAAS,SAAS,KAAK,EAAE,UAAU,SAAS,MAAM,CAAC,SAAS,CAAC,EAC9F,YAAY,EAAE,SAAS,EACvB,MAAM,EAAE,UAAU,GACjB,WAAW,CAAC,UAAU,CAAC,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAA;CAAE,CAK5D;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,QAAQ,QAU5C;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,MAAM,IAAI,CAAC,CA4BlH"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/pulses/index.ts"],"names":[],"mappings":"AAIA,KAAK,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEjC,MAAM,MAAM,KAAK,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEnH,MAAM,MAAM,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAAC;AAEzG,KAAK,UAAU,CAAC,SAAS,IAAI,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC;AAIhE,KAAK,WAAW,CAAC,UAAU,SAAS,MAAM,CAAC,GAAG,CAAC,IAAI;KAChD,CAAC,IAAI,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,MAAM,CAAC,GACvF,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,GACpB,KAAK;CACV,CAAC;AA2OF,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,KAAK,EAAE,UAAU,SAAS,MAAM,CAAC,SAAS,CAAC,EAC5F,YAAY,EAAE,SAAS,EACvB,MAAM,EAAE,UAAU,GACjB,WAAW,CAAC,UAAU,CAAC,GAAG;IAC3B,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAC7B,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAChD,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;CAClD,CAEA;AAED,wBAAgB,kBAAkB,CAAC,SAAS,SAAS,KAAK,EAAE,UAAU,SAAS,MAAM,CAAC,SAAS,CAAC,EAC9F,YAAY,EAAE,SAAS,EACvB,MAAM,EAAE,UAAU,GACjB,WAAW,CAAC,UAAU,CAAC,GAAG;IAC3B,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAC7B,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAChD,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;CAClD,CAKA;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,QAAQ,QAU5C;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,MAAM,IAAI,CAAC,CA4BlH"}
@@ -0,0 +1,15 @@
1
+ import { FluxStore } from "valyrian.js/flux-store";
2
+ declare global {
3
+ interface Window {
4
+ __REDUX_DEVTOOLS_EXTENSION__: any;
5
+ }
6
+ }
7
+ interface DevToolsOptions {
8
+ name?: string;
9
+ [key: string]: any;
10
+ }
11
+ export declare function connectFluxStore(store: FluxStore, options?: DevToolsOptions): void;
12
+ export declare function connectPulseStore(store: any, options?: DevToolsOptions): void;
13
+ export declare function connectPulse(pulse: any, options?: DevToolsOptions): any;
14
+ export {};
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/redux-devtools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,4BAA4B,EAAE,GAAG,CAAC;KACnC;CACF;AAED,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAUD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,GAAE,eAAoB,QAqB/E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,GAAE,eAAoB,QAe1E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,GAAE,eAAoB,OAuBrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/request/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/request/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,12 @@
1
+ export declare function setStoreStrategy(strategy: {
2
+ get: () => string;
3
+ set: (lang: string) => void;
4
+ }): void;
5
+ export declare function getLang(): string;
6
+ export declare function setLang(newLang: string): void;
1
7
  export declare function t(path: string, params?: Record<string, string>): string;
2
8
  export declare function setTranslations(defaultTranslation: Record<string, any>, newTranslations?: Record<string, Record<string, any>>): void;
3
9
  export declare function getTranslations(): Record<string, Record<string, any>>;
4
- export declare function setLang(newLang: string): void;
5
- export declare function getLang(): string;
6
10
  export declare class NumberFormatter {
7
11
  #private;
8
12
  get value(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/translate/index.ts"],"names":[],"mappings":"AAMA,wBAAgB,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAoBvE;AAED,wBAAgB,eAAe,CAC7B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACvC,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM,QAe1D;AAED,wBAAgB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAErE;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAiB7C;AAED,wBAAgB,OAAO,IAAI,MAAM,CAEhC;AAED,qBAAa,eAAe;;IAG1B,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,OAAO;IAEA,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,UAAQ;IAK1D,OAAO,CAAC,KAAK;IAYb,MAAM,CAAC,MAAM,SAAI,EAAE,OAAO,GAAE,IAAI,CAAC,mBAAwB,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,eAAe,GAAG,MAAM;IAavG,iBAAiB,CAAC,aAAa,EAAE,MAAM;IAQvC,eAAe,CAAC,aAAa,EAAE,MAAM;IAOrC,gBAAgB,IAAI,MAAM;IAU1B,kBAAkB;IAIlB,MAAM,CAAC,MAAM,CAAC,KAAK,GAAE,MAAM,GAAG,MAAU,EAAE,YAAY,UAAQ,GAAG,eAAe;CAIjF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/translate/index.ts"],"names":[],"mappings":"AAaA,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE;IAAE,GAAG,EAAE,MAAM,MAAM,CAAC;IAAC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,QAE5F;AAED,wBAAgB,OAAO,IAAI,MAAM,CAEhC;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAiB7C;AAED,wBAAgB,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAoBvE;AAED,wBAAgB,eAAe,CAC7B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACvC,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM,QAe1D;AAED,wBAAgB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAErE;AAED,qBAAa,eAAe;;IAG1B,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,OAAO;IAEA,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,UAAQ;IAK1D,OAAO,CAAC,KAAK;IAYb,MAAM,CAAC,MAAM,SAAI,EAAE,OAAO,GAAE,IAAI,CAAC,mBAAwB,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,eAAe,GAAG,MAAM;IAavG,iBAAiB,CAAC,aAAa,EAAE,MAAM;IAQvC,eAAe,CAAC,aAAa,EAAE,MAAM;IAOrC,gBAAgB,IAAI,MAAM;IAU1B,kBAAkB;IAIlB,MAAM,CAAC,MAAM,CAAC,KAAK,GAAE,MAAM,GAAG,MAAU,EAAE,YAAY,UAAQ,GAAG,eAAe;CAIjF"}
@@ -30,7 +30,7 @@ var StorageType = /* @__PURE__ */ ((StorageType2) => {
30
30
  StorageType2["Local"] = "local";
31
31
  return StorageType2;
32
32
  })(StorageType || {});
33
- var ids = /* @__PURE__ */ new Set();
33
+ var stores = /* @__PURE__ */ new Map();
34
34
  function getStorage(storageType) {
35
35
  if (import_valyrian.isNodeJs && typeof localStorage === "undefined") {
36
36
  throw new Error(
@@ -39,36 +39,35 @@ function getStorage(storageType) {
39
39
  }
40
40
  return storageType === "session" /* Session */ ? sessionStorage : localStorage;
41
41
  }
42
- function createNativeStore(key, definition = {}, storageType = "local" /* Local */, reuseIfExist = false) {
42
+ function createNativeStore(id, definition = {}, storageType = "local" /* Local */, reuseIfExist = false) {
43
43
  const nativeStore = getStorage(storageType);
44
- if (ids.has(key)) {
44
+ if (stores.has(id)) {
45
45
  if (reuseIfExist) {
46
- console.warn(`Store with key ${key} already exists and will be reused`);
46
+ console.warn(`Store with key ${id} already exists and will be reused`);
47
+ return stores.get(id);
47
48
  } else {
48
- throw new Error(`Store with key ${key} already exists`);
49
+ throw new Error(`Store with key ${id} already exists`);
49
50
  }
50
51
  }
51
- ids.add(key);
52
- const id = key;
53
52
  const Store = {
54
53
  state: {},
55
- set(key2, value) {
54
+ set(key, value) {
56
55
  try {
57
- this.state[key2] = value;
56
+ this.state[key] = value;
58
57
  nativeStore.setItem(id, JSON.stringify(this.state));
59
58
  } catch (e) {
60
59
  console.error("Error setting item in storage:", e);
61
60
  }
62
61
  },
63
- get(key2) {
62
+ get(key) {
64
63
  if (Object.keys(this.state).length === 0) {
65
64
  this.load();
66
65
  }
67
- return this.state[key2];
66
+ return this.state[key];
68
67
  },
69
- delete(key2) {
68
+ delete(key) {
70
69
  try {
71
- Reflect.deleteProperty(this.state, key2);
70
+ Reflect.deleteProperty(this.state, key);
72
71
  nativeStore.setItem(id, JSON.stringify(this.state));
73
72
  } catch (e) {
74
73
  console.error("Error deleting item in storage:", e);
@@ -98,6 +97,20 @@ function createNativeStore(key, definition = {}, storageType = "local" /* Local
98
97
  },
99
98
  ...definition
100
99
  };
100
+ if (!import_valyrian.isNodeJs && storageType === "local" /* Local */) {
101
+ let storageListener2 = function(e) {
102
+ if (e.key === id) {
103
+ try {
104
+ Store.state = e.newValue === null ? {} : JSON.parse(e.newValue);
105
+ } catch (err) {
106
+ console.error(`Error syncing store ${id} from storage event`, err);
107
+ }
108
+ }
109
+ };
110
+ var storageListener = storageListener2;
111
+ window.addEventListener("storage", storageListener2);
112
+ }
101
113
  Store.load();
114
+ stores.set(id, Store);
102
115
  return Store;
103
116
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../lib/native-store/index.ts"],
4
- "sourcesContent": ["import { isNodeJs } from \"valyrian.js\";\n\n/* eslint-disable no-console */\nexport enum StorageType {\n // eslint-disable-next-line no-unused-vars\n Session = \"session\",\n // eslint-disable-next-line no-unused-vars\n Local = \"local\"\n}\n\nexport interface NativeStorageInterface {\n state: Record<string, any>;\n // eslint-disable-next-line no-unused-vars\n set(key: string, value: any): void;\n // eslint-disable-next-line no-unused-vars\n get(key: string): any;\n // eslint-disable-next-line no-unused-vars\n delete(key: string): void;\n load(): void;\n clear(): void;\n}\n\nconst ids = new Set<string>();\n\nfunction getStorage(storageType: StorageType) {\n if (isNodeJs && typeof localStorage === \"undefined\") {\n throw new Error(\n `localStorage and sessionStorage are not available in Node.js, to use it in your project, you need to \"import \"valyrian.js/node\"`\n );\n }\n return storageType === StorageType.Session ? sessionStorage : localStorage;\n}\n\nexport function createNativeStore<T>(\n key: string,\n definition: Record<string, any> = {},\n storageType: StorageType = StorageType.Local,\n reuseIfExist = false\n): NativeStorageInterface & T {\n const nativeStore = getStorage(storageType);\n\n if (ids.has(key)) {\n if (reuseIfExist) {\n // eslint-disable-next-line no-console\n console.warn(`Store with key ${key} already exists and will be reused`);\n } else {\n throw new Error(`Store with key ${key} already exists`);\n }\n }\n ids.add(key);\n\n const id = key;\n\n const Store: NativeStorageInterface = {\n state: {},\n set(key, value) {\n try {\n this.state[key] = value;\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error setting item in storage:\", e);\n }\n },\n get(key) {\n if (Object.keys(this.state).length === 0) {\n this.load();\n }\n return this.state[key];\n },\n delete(key) {\n try {\n Reflect.deleteProperty(this.state, key);\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error deleting item in storage:\", e);\n }\n },\n load() {\n try {\n const state = nativeStore.getItem(id);\n if (!state) {\n this.state = {};\n nativeStore.setItem(id, JSON.stringify(this.state));\n return;\n }\n this.state = JSON.parse(state);\n } catch (e) {\n console.error(\"Error loading state from storage:\", e);\n this.state = {};\n }\n },\n clear() {\n try {\n this.state = {};\n nativeStore.removeItem(id);\n } catch (e) {\n console.error(\"Error clearing storage:\", e);\n }\n },\n ...definition\n };\n\n Store.load();\n\n return Store as NativeStorageInterface & T;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAyB;AAGlB,IAAK,cAAL,kBAAKA,iBAAL;AAEL,EAAAA,aAAA,aAAU;AAEV,EAAAA,aAAA,WAAQ;AAJE,SAAAA;AAAA,GAAA;AAmBZ,IAAM,MAAM,oBAAI,IAAY;AAE5B,SAAS,WAAW,aAA0B;AAC5C,MAAI,4BAAY,OAAO,iBAAiB,aAAa;AACnD,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,SAAO,gBAAgB,0BAAsB,iBAAiB;AAChE;AAEO,SAAS,kBACd,KACA,aAAkC,CAAC,GACnC,cAA2B,qBAC3B,eAAe,OACa;AAC5B,QAAM,cAAc,WAAW,WAAW;AAE1C,MAAI,IAAI,IAAI,GAAG,GAAG;AAChB,QAAI,cAAc;AAEhB,cAAQ,KAAK,kBAAkB,GAAG,oCAAoC;AAAA,IACxE,OAAO;AACL,YAAM,IAAI,MAAM,kBAAkB,GAAG,iBAAiB;AAAA,IACxD;AAAA,EACF;AACA,MAAI,IAAI,GAAG;AAEX,QAAM,KAAK;AAEX,QAAM,QAAgC;AAAA,IACpC,OAAO,CAAC;AAAA,IACR,IAAIC,MAAK,OAAO;AACd,UAAI;AACF,aAAK,MAAMA,IAAG,IAAI;AAClB,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,kCAAkC,CAAC;AAAA,MACnD;AAAA,IACF;AAAA,IACA,IAAIA,MAAK;AACP,UAAI,OAAO,KAAK,KAAK,KAAK,EAAE,WAAW,GAAG;AACxC,aAAK,KAAK;AAAA,MACZ;AACA,aAAO,KAAK,MAAMA,IAAG;AAAA,IACvB;AAAA,IACA,OAAOA,MAAK;AACV,UAAI;AACF,gBAAQ,eAAe,KAAK,OAAOA,IAAG;AACtC,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,mCAAmC,CAAC;AAAA,MACpD;AAAA,IACF;AAAA,IACA,OAAO;AACL,UAAI;AACF,cAAM,QAAQ,YAAY,QAAQ,EAAE;AACpC,YAAI,CAAC,OAAO;AACV,eAAK,QAAQ,CAAC;AACd,sBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAClD;AAAA,QACF;AACA,aAAK,QAAQ,KAAK,MAAM,KAAK;AAAA,MAC/B,SAAS,GAAG;AACV,gBAAQ,MAAM,qCAAqC,CAAC;AACpD,aAAK,QAAQ,CAAC;AAAA,MAChB;AAAA,IACF;AAAA,IACA,QAAQ;AACN,UAAI;AACF,aAAK,QAAQ,CAAC;AACd,oBAAY,WAAW,EAAE;AAAA,MAC3B,SAAS,GAAG;AACV,gBAAQ,MAAM,2BAA2B,CAAC;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,GAAG;AAAA,EACL;AAEA,QAAM,KAAK;AAEX,SAAO;AACT;",
6
- "names": ["StorageType", "key"]
4
+ "sourcesContent": ["import { isNodeJs } from \"valyrian.js\";\n\n/* eslint-disable no-console */\nexport enum StorageType {\n // eslint-disable-next-line no-unused-vars\n Session = \"session\",\n // eslint-disable-next-line no-unused-vars\n Local = \"local\"\n}\n\nexport interface NativeStorageInterface {\n state: Record<string, any>;\n // eslint-disable-next-line no-unused-vars\n set(key: string, value: any): void;\n // eslint-disable-next-line no-unused-vars\n get(key: string): any;\n // eslint-disable-next-line no-unused-vars\n delete(key: string): void;\n load(): void;\n clear(): void;\n}\n\nconst stores = new Map<string, NativeStorageInterface>();\n\nfunction getStorage(storageType: StorageType) {\n if (isNodeJs && typeof localStorage === \"undefined\") {\n throw new Error(\n `localStorage and sessionStorage are not available in Node.js, to use it in your project, you need to \"import \"valyrian.js/node\"`\n );\n }\n return storageType === StorageType.Session ? sessionStorage : localStorage;\n}\n\nexport function createNativeStore<T>(\n id: string,\n definition: Record<string, any> = {},\n storageType: StorageType = StorageType.Local,\n reuseIfExist = false\n): NativeStorageInterface & T {\n const nativeStore = getStorage(storageType);\n\n if (stores.has(id)) {\n if (reuseIfExist) {\n // eslint-disable-next-line no-console\n console.warn(`Store with key ${id} already exists and will be reused`);\n return stores.get(id) as NativeStorageInterface & T;\n } else {\n throw new Error(`Store with key ${id} already exists`);\n }\n }\n\n const Store: NativeStorageInterface = {\n state: {},\n set(key, value) {\n try {\n this.state[key] = value;\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error setting item in storage:\", e);\n }\n },\n get(key) {\n if (Object.keys(this.state).length === 0) {\n this.load();\n }\n return this.state[key];\n },\n delete(key) {\n try {\n Reflect.deleteProperty(this.state, key);\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error deleting item in storage:\", e);\n }\n },\n load() {\n try {\n const state = nativeStore.getItem(id);\n if (!state) {\n this.state = {};\n nativeStore.setItem(id, JSON.stringify(this.state));\n return;\n }\n this.state = JSON.parse(state);\n } catch (e) {\n console.error(\"Error loading state from storage:\", e);\n this.state = {};\n }\n },\n clear() {\n try {\n this.state = {};\n nativeStore.removeItem(id);\n } catch (e) {\n console.error(\"Error clearing storage:\", e);\n }\n },\n ...definition\n };\n\n if (!isNodeJs && storageType === StorageType.Local) {\n function storageListener(e: StorageEvent) {\n if (e.key === id) {\n try {\n Store.state = e.newValue === null ? {} : JSON.parse(e.newValue);\n } catch (err) {\n console.error(`Error syncing store ${id} from storage event`, err);\n }\n }\n }\n\n window.addEventListener(\"storage\", storageListener);\n }\n\n Store.load();\n\n stores.set(id, Store);\n\n return Store as NativeStorageInterface & T;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAyB;AAGlB,IAAK,cAAL,kBAAKA,iBAAL;AAEL,EAAAA,aAAA,aAAU;AAEV,EAAAA,aAAA,WAAQ;AAJE,SAAAA;AAAA,GAAA;AAmBZ,IAAM,SAAS,oBAAI,IAAoC;AAEvD,SAAS,WAAW,aAA0B;AAC5C,MAAI,4BAAY,OAAO,iBAAiB,aAAa;AACnD,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,SAAO,gBAAgB,0BAAsB,iBAAiB;AAChE;AAEO,SAAS,kBACd,IACA,aAAkC,CAAC,GACnC,cAA2B,qBAC3B,eAAe,OACa;AAC5B,QAAM,cAAc,WAAW,WAAW;AAE1C,MAAI,OAAO,IAAI,EAAE,GAAG;AAClB,QAAI,cAAc;AAEhB,cAAQ,KAAK,kBAAkB,EAAE,oCAAoC;AACrE,aAAO,OAAO,IAAI,EAAE;AAAA,IACtB,OAAO;AACL,YAAM,IAAI,MAAM,kBAAkB,EAAE,iBAAiB;AAAA,IACvD;AAAA,EACF;AAEA,QAAM,QAAgC;AAAA,IACpC,OAAO,CAAC;AAAA,IACR,IAAI,KAAK,OAAO;AACd,UAAI;AACF,aAAK,MAAM,GAAG,IAAI;AAClB,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,kCAAkC,CAAC;AAAA,MACnD;AAAA,IACF;AAAA,IACA,IAAI,KAAK;AACP,UAAI,OAAO,KAAK,KAAK,KAAK,EAAE,WAAW,GAAG;AACxC,aAAK,KAAK;AAAA,MACZ;AACA,aAAO,KAAK,MAAM,GAAG;AAAA,IACvB;AAAA,IACA,OAAO,KAAK;AACV,UAAI;AACF,gBAAQ,eAAe,KAAK,OAAO,GAAG;AACtC,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,mCAAmC,CAAC;AAAA,MACpD;AAAA,IACF;AAAA,IACA,OAAO;AACL,UAAI;AACF,cAAM,QAAQ,YAAY,QAAQ,EAAE;AACpC,YAAI,CAAC,OAAO;AACV,eAAK,QAAQ,CAAC;AACd,sBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAClD;AAAA,QACF;AACA,aAAK,QAAQ,KAAK,MAAM,KAAK;AAAA,MAC/B,SAAS,GAAG;AACV,gBAAQ,MAAM,qCAAqC,CAAC;AACpD,aAAK,QAAQ,CAAC;AAAA,MAChB;AAAA,IACF;AAAA,IACA,QAAQ;AACN,UAAI;AACF,aAAK,QAAQ,CAAC;AACd,oBAAY,WAAW,EAAE;AAAA,MAC3B,SAAS,GAAG;AACV,gBAAQ,MAAM,2BAA2B,CAAC;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,GAAG;AAAA,EACL;AAEA,MAAI,CAAC,4BAAY,gBAAgB,qBAAmB;AAClD,QAASC,mBAAT,SAAyB,GAAiB;AACxC,UAAI,EAAE,QAAQ,IAAI;AAChB,YAAI;AACF,gBAAM,QAAQ,EAAE,aAAa,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,QAAQ;AAAA,QAChE,SAAS,KAAK;AACZ,kBAAQ,MAAM,uBAAuB,EAAE,uBAAuB,GAAG;AAAA,QACnE;AAAA,MACF;AAAA,IACF;AARS,0BAAAA;AAUT,WAAO,iBAAiB,WAAWA,gBAAe;AAAA,EACpD;AAEA,QAAM,KAAK;AAEX,SAAO,IAAI,IAAI,KAAK;AAEpB,SAAO;AACT;",
6
+ "names": ["StorageType", "storageListener"]
7
7
  }
@@ -1 +1 @@
1
- (()=>{"use strict";var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={};((t,r)=>{for(var o in r)e(t,o,{get:r[o],enumerable:!0})})(s,{StorageType:()=>l,createNativeStore:()=>y});var a,i=(a=s,((s,a,i,n)=>{if(a&&"object"==typeof a||"function"==typeof a)for(let l of r(a))o.call(s,l)||l===i||e(s,l,{get:()=>a[l],enumerable:!(n=t(a,l))||n.enumerable});return s})(e({},"__esModule",{value:!0}),a)),n=require("valyrian.js"),l=(e=>(e.Session="session",e.Local="local",e))(l||{}),c=new Set;function y(e,t={},r="local",o=!1){const s=function(e){if(n.isNodeJs&&"undefined"==typeof localStorage)throw new Error('localStorage and sessionStorage are not available in Node.js, to use it in your project, you need to "import "valyrian.js/node"');return"session"===e?sessionStorage:localStorage}(r);if(c.has(e)){if(!o)throw new Error(`Store with key ${e} already exists`);console.warn(`Store with key ${e} already exists and will be reused`)}c.add(e);const a=e,i={state:{},set(e,t){try{this.state[e]=t,s.setItem(a,JSON.stringify(this.state))}catch(e){console.error("Error setting item in storage:",e)}},get(e){return 0===Object.keys(this.state).length&&this.load(),this.state[e]},delete(e){try{Reflect.deleteProperty(this.state,e),s.setItem(a,JSON.stringify(this.state))}catch(e){console.error("Error deleting item in storage:",e)}},load(){try{const e=s.getItem(a);if(!e)return this.state={},void s.setItem(a,JSON.stringify(this.state));this.state=JSON.parse(e)}catch(e){console.error("Error loading state from storage:",e),this.state={}}},clear(){try{this.state={},s.removeItem(a)}catch(e){console.error("Error clearing storage:",e)}},...t};return i.load(),i}"undefined"!=typeof module?module.exports=i:self.ValyrianNativeStore=i})();//# sourceMappingURL=index.min.js.map
1
+ (()=>{"use strict";var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={};((t,r)=>{for(var o in r)e(t,o,{get:r[o],enumerable:!0})})(s,{StorageType:()=>l,createNativeStore:()=>y});var a,n=(a=s,((s,a,n,i)=>{if(a&&"object"==typeof a||"function"==typeof a)for(let l of r(a))o.call(s,l)||l===n||e(s,l,{get:()=>a[l],enumerable:!(i=t(a,l))||i.enumerable});return s})(e({},"__esModule",{value:!0}),a)),i=require("valyrian.js"),l=(e=>(e.Session="session",e.Local="local",e))(l||{}),c=new Map;function y(e,t={},r="local",o=!1){const s=function(e){if(i.isNodeJs&&"undefined"==typeof localStorage)throw new Error('localStorage and sessionStorage are not available in Node.js, to use it in your project, you need to "import "valyrian.js/node"');return"session"===e?sessionStorage:localStorage}(r);if(c.has(e)){if(o)return console.warn(`Store with key ${e} already exists and will be reused`),c.get(e);throw new Error(`Store with key ${e} already exists`)}const a={state:{},set(t,r){try{this.state[t]=r,s.setItem(e,JSON.stringify(this.state))}catch(e){console.error("Error setting item in storage:",e)}},get(e){return 0===Object.keys(this.state).length&&this.load(),this.state[e]},delete(t){try{Reflect.deleteProperty(this.state,t),s.setItem(e,JSON.stringify(this.state))}catch(e){console.error("Error deleting item in storage:",e)}},load(){try{const t=s.getItem(e);if(!t)return this.state={},void s.setItem(e,JSON.stringify(this.state));this.state=JSON.parse(t)}catch(e){console.error("Error loading state from storage:",e),this.state={}}},clear(){try{this.state={},s.removeItem(e)}catch(e){console.error("Error clearing storage:",e)}},...t};if(!i.isNodeJs&&"local"===r){let t=function(t){if(t.key===e)try{a.state=null===t.newValue?{}:JSON.parse(t.newValue)}catch(t){console.error(`Error syncing store ${e} from storage event`,t)}};window.addEventListener("storage",t)}return a.load(),c.set(e,a),a}"undefined"!=typeof module?module.exports=n:self.ValyrianNativeStore=n})();//# sourceMappingURL=index.min.js.map
@@ -1 +1 @@
1
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpbmRleF9leHBvcnRzIiwiX19leHBvcnQiLCJTdG9yYWdlVHlwZSIsImNyZWF0ZU5hdGl2ZVN0b3JlIiwiX19FWFBPUlRTX18iLCJpbXBvcnRfdmFseXJpYW4iLCJyZXF1aXJlIiwiaWRzIiwiU2V0Iiwia2V5IiwiZGVmaW5pdGlvbiIsInN0b3JhZ2VUeXBlIiwicmV1c2VJZkV4aXN0IiwibmF0aXZlU3RvcmUiLCJpc05vZGVKcyIsImxvY2FsU3RvcmFnZSIsIkVycm9yIiwic2Vzc2lvblN0b3JhZ2UiLCJnZXRTdG9yYWdlIiwiaGFzIiwiY29uc29sZSIsIndhcm4iLCJhZGQiLCJpZCIsIlN0b3JlIiwic3RhdGUiLCJzZXQiLCJ2YWx1ZSIsInRoaXMiLCJzZXRJdGVtIiwiSlNPTiIsInN0cmluZ2lmeSIsImUiLCJlcnJvciIsImdldCIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJsb2FkIiwiUmVmbGVjdCIsImRlbGV0ZVByb3BlcnR5IiwiZ2V0SXRlbSIsInBhcnNlIiwiY2xlYXIiLCJyZW1vdmVJdGVtIl0sInNvdXJjZXMiOlsiLi4vLi4vbGliL25hdGl2ZS1zdG9yZS9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc05vZGVKcyB9IGZyb20gXCJ2YWx5cmlhbi5qc1wiO1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5leHBvcnQgZW51bSBTdG9yYWdlVHlwZSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBTZXNzaW9uID0gXCJzZXNzaW9uXCIsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBMb2NhbCA9IFwibG9jYWxcIlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hdGl2ZVN0b3JhZ2VJbnRlcmZhY2Uge1xuICBzdGF0ZTogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQ7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBnZXQoa2V5OiBzdHJpbmcpOiBhbnk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBkZWxldGUoa2V5OiBzdHJpbmcpOiB2b2lkO1xuICBsb2FkKCk6IHZvaWQ7XG4gIGNsZWFyKCk6IHZvaWQ7XG59XG5cbmNvbnN0IGlkcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG5mdW5jdGlvbiBnZXRTdG9yYWdlKHN0b3JhZ2VUeXBlOiBTdG9yYWdlVHlwZSkge1xuICBpZiAoaXNOb2RlSnMgJiYgdHlwZW9mIGxvY2FsU3RvcmFnZSA9PT0gXCJ1bmRlZmluZWRcIikge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBsb2NhbFN0b3JhZ2UgYW5kIHNlc3Npb25TdG9yYWdlIGFyZSBub3QgYXZhaWxhYmxlIGluIE5vZGUuanMsIHRvIHVzZSBpdCBpbiB5b3VyIHByb2plY3QsIHlvdSBuZWVkIHRvIFwiaW1wb3J0IFwidmFseXJpYW4uanMvbm9kZVwiYFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHN0b3JhZ2VUeXBlID09PSBTdG9yYWdlVHlwZS5TZXNzaW9uID8gc2Vzc2lvblN0b3JhZ2UgOiBsb2NhbFN0b3JhZ2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOYXRpdmVTdG9yZTxUPihcbiAga2V5OiBzdHJpbmcsXG4gIGRlZmluaXRpb246IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcbiAgc3RvcmFnZVR5cGU6IFN0b3JhZ2VUeXBlID0gU3RvcmFnZVR5cGUuTG9jYWwsXG4gIHJldXNlSWZFeGlzdCA9IGZhbHNlXG4pOiBOYXRpdmVTdG9yYWdlSW50ZXJmYWNlICYgVCB7XG4gIGNvbnN0IG5hdGl2ZVN0b3JlID0gZ2V0U3RvcmFnZShzdG9yYWdlVHlwZSk7XG5cbiAgaWYgKGlkcy5oYXMoa2V5KSkge1xuICAgIGlmIChyZXVzZUlmRXhpc3QpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oYFN0b3JlIHdpdGgga2V5ICR7a2V5fSBhbHJlYWR5IGV4aXN0cyBhbmQgd2lsbCBiZSByZXVzZWRgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBTdG9yZSB3aXRoIGtleSAke2tleX0gYWxyZWFkeSBleGlzdHNgKTtcbiAgICB9XG4gIH1cbiAgaWRzLmFkZChrZXkpO1xuXG4gIGNvbnN0IGlkID0ga2V5O1xuXG4gIGNvbnN0IFN0b3JlOiBOYXRpdmVTdG9yYWdlSW50ZXJmYWNlID0ge1xuICAgIHN0YXRlOiB7fSxcbiAgICBzZXQoa2V5LCB2YWx1ZSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5zdGF0ZVtrZXldID0gdmFsdWU7XG4gICAgICAgIG5hdGl2ZVN0b3JlLnNldEl0ZW0oaWQsIEpTT04uc3RyaW5naWZ5KHRoaXMuc3RhdGUpKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIHNldHRpbmcgaXRlbSBpbiBzdG9yYWdlOlwiLCBlKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGdldChrZXkpIHtcbiAgICAgIGlmIChPYmplY3Qua2V5cyh0aGlzLnN0YXRlKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5zdGF0ZVtrZXldO1xuICAgIH0sXG4gICAgZGVsZXRlKGtleSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0aGlzLnN0YXRlLCBrZXkpO1xuICAgICAgICBuYXRpdmVTdG9yZS5zZXRJdGVtKGlkLCBKU09OLnN0cmluZ2lmeSh0aGlzLnN0YXRlKSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBkZWxldGluZyBpdGVtIGluIHN0b3JhZ2U6XCIsIGUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgbG9hZCgpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gbmF0aXZlU3RvcmUuZ2V0SXRlbShpZCk7XG4gICAgICAgIGlmICghc3RhdGUpIHtcbiAgICAgICAgICB0aGlzLnN0YXRlID0ge307XG4gICAgICAgICAgbmF0aXZlU3RvcmUuc2V0SXRlbShpZCwgSlNPTi5zdHJpbmdpZnkodGhpcy5zdGF0ZSkpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnN0YXRlID0gSlNPTi5wYXJzZShzdGF0ZSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBsb2FkaW5nIHN0YXRlIGZyb20gc3RvcmFnZTpcIiwgZSk7XG4gICAgICAgIHRoaXMuc3RhdGUgPSB7fTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGNsZWFyKCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5zdGF0ZSA9IHt9O1xuICAgICAgICBuYXRpdmVTdG9yZS5yZW1vdmVJdGVtKGlkKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIGNsZWFyaW5nIHN0b3JhZ2U6XCIsIGUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgLi4uZGVmaW5pdGlvblxuICB9O1xuXG4gIFN0b3JlLmxvYWQoKTtcblxuICByZXR1cm4gU3RvcmUgYXMgTmF0aXZlU3RvcmFnZUludGVyZmFjZSAmIFQ7XG59XG4iXSwibWFwcGluZ3MiOiJnSkFBQUEsRUFBQSxHLHlEQUFBQyxDQUFBRCxFQUFBLENBQUFFLFlBQUEsSUFBQUEsRUFBQUMsa0JBQUEsSUFBQUEsSUFBQSxJLEVBQUFDLEcsRUFBQUosRSwwTUFBQUssRUFBeUJDLFFBQUEsZUFHYkosRUFBTCxDQUFLQSxJQUVWQSxFQUFBLFFBQVUsVUFFVkEsRUFBQSxNQUFRLFFBSkVBLEdBQUwsQ0FBS0EsR0FBQSxJQW1CTkssRUFBTSxJQUFJQyxJQVdULFNBQVNMLEVBQ2RNLEVBQ0FDLEVBQWtDLENBQUMsRUFDbkNDLEVBQTJCLFFBQzNCQyxHQUFlLEdBRWYsTUFBTUMsRUFmUixTQUFvQkYsR0FDbEIsR0FBSU4sRUFBQVMsVUFBb0Msb0JBQWpCQyxhQUNyQixNQUFNLElBQUlDLE1BQ1IsbUlBR0osTUFBdUIsWUFBaEJMLEVBQXNDTSxlQUFpQkYsWUFDaEUsQ0FRc0JHLENBQVdQLEdBRS9CLEdBQUlKLEVBQUlZLElBQUlWLEdBQU0sQ0FDaEIsSUFBSUcsRUFJRixNQUFNLElBQUlJLE1BQU0sa0JBQWtCUCxvQkFGbENXLFFBQVFDLEtBQUssa0JBQWtCWixzQ0FJbkMsQ0FDQUYsRUFBSWUsSUFBSWIsR0FFUixNQUFNYyxFQUFLZCxFQUVMZSxFQUFnQyxDQUNwQ0MsTUFBTyxDQUFDLEVBQ1IsR0FBQUMsQ0FBSWpCLEVBQUtrQixHQUNQLElBQ0VDLEtBQUtILE1BQU1oQixHQUFPa0IsRUFDbEJkLEVBQVlnQixRQUFRTixFQUFJTyxLQUFLQyxVQUFVSCxLQUFLSCxPQUM5QyxPQUFTTyxHQUNQWixRQUFRYSxNQUFNLGlDQUFrQ0QsRUFDbEQsQ0FDRixFQUNBLEdBQUFFLENBQUl6QixHQUlGLE9BSHVDLElBQW5DMEIsT0FBT0MsS0FBS1IsS0FBS0gsT0FBT1ksUUFDMUJULEtBQUtVLE9BRUFWLEtBQUtILE1BQU1oQixFQUNwQixFQUNBLE9BQU9BLEdBQ0wsSUFDRThCLFFBQVFDLGVBQWVaLEtBQUtILE1BQU9oQixHQUNuQ0ksRUFBWWdCLFFBQVFOLEVBQUlPLEtBQUtDLFVBQVVILEtBQUtILE9BQzlDLE9BQVNPLEdBQ1BaLFFBQVFhLE1BQU0sa0NBQW1DRCxFQUNuRCxDQUNGLEVBQ0EsSUFBQU0sR0FDRSxJQUNFLE1BQU1iLEVBQVFaLEVBQVk0QixRQUFRbEIsR0FDbEMsSUFBS0UsRUFHSCxPQUZBRyxLQUFLSCxNQUFRLENBQUMsT0FDZFosRUFBWWdCLFFBQVFOLEVBQUlPLEtBQUtDLFVBQVVILEtBQUtILFFBRzlDRyxLQUFLSCxNQUFRSyxLQUFLWSxNQUFNakIsRUFDMUIsT0FBU08sR0FDUFosUUFBUWEsTUFBTSxvQ0FBcUNELEdBQ25ESixLQUFLSCxNQUFRLENBQUMsQ0FDaEIsQ0FDRixFQUNBLEtBQUFrQixHQUNFLElBQ0VmLEtBQUtILE1BQVEsQ0FBQyxFQUNkWixFQUFZK0IsV0FBV3JCLEVBQ3pCLE9BQVNTLEdBQ1BaLFFBQVFhLE1BQU0sMEJBQTJCRCxFQUMzQyxDQUNGLEtBQ0d0QixHQUtMLE9BRkFjLEVBQU1jLE9BRUNkLENBQ1QsQyJ9
1
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpbmRleF9leHBvcnRzIiwiX19leHBvcnQiLCJTdG9yYWdlVHlwZSIsImNyZWF0ZU5hdGl2ZVN0b3JlIiwiX19FWFBPUlRTX18iLCJpbXBvcnRfdmFseXJpYW4iLCJyZXF1aXJlIiwic3RvcmVzIiwiTWFwIiwiaWQiLCJkZWZpbml0aW9uIiwic3RvcmFnZVR5cGUiLCJyZXVzZUlmRXhpc3QiLCJuYXRpdmVTdG9yZSIsImlzTm9kZUpzIiwibG9jYWxTdG9yYWdlIiwiRXJyb3IiLCJzZXNzaW9uU3RvcmFnZSIsImdldFN0b3JhZ2UiLCJoYXMiLCJjb25zb2xlIiwid2FybiIsImdldCIsIlN0b3JlIiwic3RhdGUiLCJzZXQiLCJrZXkiLCJ2YWx1ZSIsInRoaXMiLCJzZXRJdGVtIiwiSlNPTiIsInN0cmluZ2lmeSIsImUiLCJlcnJvciIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJsb2FkIiwiUmVmbGVjdCIsImRlbGV0ZVByb3BlcnR5IiwiZ2V0SXRlbSIsInBhcnNlIiwiY2xlYXIiLCJyZW1vdmVJdGVtIiwic3RvcmFnZUxpc3RlbmVyIiwibmV3VmFsdWUiLCJlcnIiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIl0sInNvdXJjZXMiOlsiLi4vLi4vbGliL25hdGl2ZS1zdG9yZS9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc05vZGVKcyB9IGZyb20gXCJ2YWx5cmlhbi5qc1wiO1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5leHBvcnQgZW51bSBTdG9yYWdlVHlwZSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBTZXNzaW9uID0gXCJzZXNzaW9uXCIsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBMb2NhbCA9IFwibG9jYWxcIlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hdGl2ZVN0b3JhZ2VJbnRlcmZhY2Uge1xuICBzdGF0ZTogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQ7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBnZXQoa2V5OiBzdHJpbmcpOiBhbnk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBkZWxldGUoa2V5OiBzdHJpbmcpOiB2b2lkO1xuICBsb2FkKCk6IHZvaWQ7XG4gIGNsZWFyKCk6IHZvaWQ7XG59XG5cbmNvbnN0IHN0b3JlcyA9IG5ldyBNYXA8c3RyaW5nLCBOYXRpdmVTdG9yYWdlSW50ZXJmYWNlPigpO1xuXG5mdW5jdGlvbiBnZXRTdG9yYWdlKHN0b3JhZ2VUeXBlOiBTdG9yYWdlVHlwZSkge1xuICBpZiAoaXNOb2RlSnMgJiYgdHlwZW9mIGxvY2FsU3RvcmFnZSA9PT0gXCJ1bmRlZmluZWRcIikge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBsb2NhbFN0b3JhZ2UgYW5kIHNlc3Npb25TdG9yYWdlIGFyZSBub3QgYXZhaWxhYmxlIGluIE5vZGUuanMsIHRvIHVzZSBpdCBpbiB5b3VyIHByb2plY3QsIHlvdSBuZWVkIHRvIFwiaW1wb3J0IFwidmFseXJpYW4uanMvbm9kZVwiYFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHN0b3JhZ2VUeXBlID09PSBTdG9yYWdlVHlwZS5TZXNzaW9uID8gc2Vzc2lvblN0b3JhZ2UgOiBsb2NhbFN0b3JhZ2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOYXRpdmVTdG9yZTxUPihcbiAgaWQ6IHN0cmluZyxcbiAgZGVmaW5pdGlvbjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9LFxuICBzdG9yYWdlVHlwZTogU3RvcmFnZVR5cGUgPSBTdG9yYWdlVHlwZS5Mb2NhbCxcbiAgcmV1c2VJZkV4aXN0ID0gZmFsc2Vcbik6IE5hdGl2ZVN0b3JhZ2VJbnRlcmZhY2UgJiBUIHtcbiAgY29uc3QgbmF0aXZlU3RvcmUgPSBnZXRTdG9yYWdlKHN0b3JhZ2VUeXBlKTtcblxuICBpZiAoc3RvcmVzLmhhcyhpZCkpIHtcbiAgICBpZiAocmV1c2VJZkV4aXN0KSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgY29uc29sZS53YXJuKGBTdG9yZSB3aXRoIGtleSAke2lkfSBhbHJlYWR5IGV4aXN0cyBhbmQgd2lsbCBiZSByZXVzZWRgKTtcbiAgICAgIHJldHVybiBzdG9yZXMuZ2V0KGlkKSBhcyBOYXRpdmVTdG9yYWdlSW50ZXJmYWNlICYgVDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBTdG9yZSB3aXRoIGtleSAke2lkfSBhbHJlYWR5IGV4aXN0c2ApO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IFN0b3JlOiBOYXRpdmVTdG9yYWdlSW50ZXJmYWNlID0ge1xuICAgIHN0YXRlOiB7fSxcbiAgICBzZXQoa2V5LCB2YWx1ZSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5zdGF0ZVtrZXldID0gdmFsdWU7XG4gICAgICAgIG5hdGl2ZVN0b3JlLnNldEl0ZW0oaWQsIEpTT04uc3RyaW5naWZ5KHRoaXMuc3RhdGUpKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIHNldHRpbmcgaXRlbSBpbiBzdG9yYWdlOlwiLCBlKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGdldChrZXkpIHtcbiAgICAgIGlmIChPYmplY3Qua2V5cyh0aGlzLnN0YXRlKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5zdGF0ZVtrZXldO1xuICAgIH0sXG4gICAgZGVsZXRlKGtleSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0aGlzLnN0YXRlLCBrZXkpO1xuICAgICAgICBuYXRpdmVTdG9yZS5zZXRJdGVtKGlkLCBKU09OLnN0cmluZ2lmeSh0aGlzLnN0YXRlKSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBkZWxldGluZyBpdGVtIGluIHN0b3JhZ2U6XCIsIGUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgbG9hZCgpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gbmF0aXZlU3RvcmUuZ2V0SXRlbShpZCk7XG4gICAgICAgIGlmICghc3RhdGUpIHtcbiAgICAgICAgICB0aGlzLnN0YXRlID0ge307XG4gICAgICAgICAgbmF0aXZlU3RvcmUuc2V0SXRlbShpZCwgSlNPTi5zdHJpbmdpZnkodGhpcy5zdGF0ZSkpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnN0YXRlID0gSlNPTi5wYXJzZShzdGF0ZSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBsb2FkaW5nIHN0YXRlIGZyb20gc3RvcmFnZTpcIiwgZSk7XG4gICAgICAgIHRoaXMuc3RhdGUgPSB7fTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGNsZWFyKCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5zdGF0ZSA9IHt9O1xuICAgICAgICBuYXRpdmVTdG9yZS5yZW1vdmVJdGVtKGlkKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIGNsZWFyaW5nIHN0b3JhZ2U6XCIsIGUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgLi4uZGVmaW5pdGlvblxuICB9O1xuXG4gIGlmICghaXNOb2RlSnMgJiYgc3RvcmFnZVR5cGUgPT09IFN0b3JhZ2VUeXBlLkxvY2FsKSB7XG4gICAgZnVuY3Rpb24gc3RvcmFnZUxpc3RlbmVyKGU6IFN0b3JhZ2VFdmVudCkge1xuICAgICAgaWYgKGUua2V5ID09PSBpZCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIFN0b3JlLnN0YXRlID0gZS5uZXdWYWx1ZSA9PT0gbnVsbCA/IHt9IDogSlNPTi5wYXJzZShlLm5ld1ZhbHVlKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihgRXJyb3Igc3luY2luZyBzdG9yZSAke2lkfSBmcm9tIHN0b3JhZ2UgZXZlbnRgLCBlcnIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJzdG9yYWdlXCIsIHN0b3JhZ2VMaXN0ZW5lcik7XG4gIH1cblxuICBTdG9yZS5sb2FkKCk7XG5cbiAgc3RvcmVzLnNldChpZCwgU3RvcmUpO1xuXG4gIHJldHVybiBTdG9yZSBhcyBOYXRpdmVTdG9yYWdlSW50ZXJmYWNlICYgVDtcbn1cbiJdLCJtYXBwaW5ncyI6ImdKQUFBQSxFQUFBLEcseURBQUFDLENBQUFELEVBQUEsQ0FBQUUsWUFBQSxJQUFBQSxFQUFBQyxrQkFBQSxJQUFBQSxJQUFBLEksRUFBQUMsRyxFQUFBSixFLDBNQUFBSyxFQUF5QkMsUUFBQSxlQUdiSixFQUFMLENBQUtBLElBRVZBLEVBQUEsUUFBVSxVQUVWQSxFQUFBLE1BQVEsUUFKRUEsR0FBTCxDQUFLQSxHQUFBLElBbUJOSyxFQUFTLElBQUlDLElBV1osU0FBU0wsRUFDZE0sRUFDQUMsRUFBa0MsQ0FBQyxFQUNuQ0MsRUFBMkIsUUFDM0JDLEdBQWUsR0FFZixNQUFNQyxFQWZSLFNBQW9CRixHQUNsQixHQUFJTixFQUFBUyxVQUFvQyxvQkFBakJDLGFBQ3JCLE1BQU0sSUFBSUMsTUFDUixtSUFHSixNQUF1QixZQUFoQkwsRUFBc0NNLGVBQWlCRixZQUNoRSxDQVFzQkcsQ0FBV1AsR0FFL0IsR0FBSUosRUFBT1ksSUFBSVYsR0FBSyxDQUNsQixHQUFJRyxFQUdGLE9BREFRLFFBQVFDLEtBQUssa0JBQWtCWix1Q0FDeEJGLEVBQU9lLElBQUliLEdBRWxCLE1BQU0sSUFBSU8sTUFBTSxrQkFBa0JQLG1CQUV0QyxDQUVBLE1BQU1jLEVBQWdDLENBQ3BDQyxNQUFPLENBQUMsRUFDUixHQUFBQyxDQUFJQyxFQUFLQyxHQUNQLElBQ0VDLEtBQUtKLE1BQU1FLEdBQU9DLEVBQ2xCZCxFQUFZZ0IsUUFBUXBCLEVBQUlxQixLQUFLQyxVQUFVSCxLQUFLSixPQUM5QyxPQUFTUSxHQUNQWixRQUFRYSxNQUFNLGlDQUFrQ0QsRUFDbEQsQ0FDRixFQUNBLEdBQUFWLENBQUlJLEdBSUYsT0FIdUMsSUFBbkNRLE9BQU9DLEtBQUtQLEtBQUtKLE9BQU9ZLFFBQzFCUixLQUFLUyxPQUVBVCxLQUFLSixNQUFNRSxFQUNwQixFQUNBLE9BQU9BLEdBQ0wsSUFDRVksUUFBUUMsZUFBZVgsS0FBS0osTUFBT0UsR0FDbkNiLEVBQVlnQixRQUFRcEIsRUFBSXFCLEtBQUtDLFVBQVVILEtBQUtKLE9BQzlDLE9BQVNRLEdBQ1BaLFFBQVFhLE1BQU0sa0NBQW1DRCxFQUNuRCxDQUNGLEVBQ0EsSUFBQUssR0FDRSxJQUNFLE1BQU1iLEVBQVFYLEVBQVkyQixRQUFRL0IsR0FDbEMsSUFBS2UsRUFHSCxPQUZBSSxLQUFLSixNQUFRLENBQUMsT0FDZFgsRUFBWWdCLFFBQVFwQixFQUFJcUIsS0FBS0MsVUFBVUgsS0FBS0osUUFHOUNJLEtBQUtKLE1BQVFNLEtBQUtXLE1BQU1qQixFQUMxQixPQUFTUSxHQUNQWixRQUFRYSxNQUFNLG9DQUFxQ0QsR0FDbkRKLEtBQUtKLE1BQVEsQ0FBQyxDQUNoQixDQUNGLEVBQ0EsS0FBQWtCLEdBQ0UsSUFDRWQsS0FBS0osTUFBUSxDQUFDLEVBQ2RYLEVBQVk4QixXQUFXbEMsRUFDekIsT0FBU3VCLEdBQ1BaLFFBQVFhLE1BQU0sMEJBQTJCRCxFQUMzQyxDQUNGLEtBQ0d0QixHQUdMLElBQUtMLEVBQUFTLFVBQTRCLFVBQWhCSCxFQUFtQyxDQUNsRCxJQUFTaUMsRUFBVCxTQUF5QlosR0FDdkIsR0FBSUEsRUFBRU4sTUFBUWpCLEVBQ1osSUFDRWMsRUFBTUMsTUFBdUIsT0FBZlEsRUFBRWEsU0FBb0IsQ0FBQyxFQUFJZixLQUFLVyxNQUFNVCxFQUFFYSxTQUN4RCxPQUFTQyxHQUNQMUIsUUFBUWEsTUFBTSx1QkFBdUJ4Qix1QkFBeUJxQyxFQUNoRSxDQUVKLEVBRUFDLE9BQU9DLGlCQUFpQixVQUFXSixFQUNyQyxDQU1BLE9BSkFyQixFQUFNYyxPQUVOOUIsRUFBT2tCLElBQUloQixFQUFJYyxHQUVSQSxDQUNULEMifQ==
@@ -5,7 +5,7 @@ var StorageType = /* @__PURE__ */ ((StorageType2) => {
5
5
  StorageType2["Local"] = "local";
6
6
  return StorageType2;
7
7
  })(StorageType || {});
8
- var ids = /* @__PURE__ */ new Set();
8
+ var stores = /* @__PURE__ */ new Map();
9
9
  function getStorage(storageType) {
10
10
  if (isNodeJs && typeof localStorage === "undefined") {
11
11
  throw new Error(
@@ -14,36 +14,35 @@ function getStorage(storageType) {
14
14
  }
15
15
  return storageType === "session" /* Session */ ? sessionStorage : localStorage;
16
16
  }
17
- function createNativeStore(key, definition = {}, storageType = "local" /* Local */, reuseIfExist = false) {
17
+ function createNativeStore(id, definition = {}, storageType = "local" /* Local */, reuseIfExist = false) {
18
18
  const nativeStore = getStorage(storageType);
19
- if (ids.has(key)) {
19
+ if (stores.has(id)) {
20
20
  if (reuseIfExist) {
21
- console.warn(`Store with key ${key} already exists and will be reused`);
21
+ console.warn(`Store with key ${id} already exists and will be reused`);
22
+ return stores.get(id);
22
23
  } else {
23
- throw new Error(`Store with key ${key} already exists`);
24
+ throw new Error(`Store with key ${id} already exists`);
24
25
  }
25
26
  }
26
- ids.add(key);
27
- const id = key;
28
27
  const Store = {
29
28
  state: {},
30
- set(key2, value) {
29
+ set(key, value) {
31
30
  try {
32
- this.state[key2] = value;
31
+ this.state[key] = value;
33
32
  nativeStore.setItem(id, JSON.stringify(this.state));
34
33
  } catch (e) {
35
34
  console.error("Error setting item in storage:", e);
36
35
  }
37
36
  },
38
- get(key2) {
37
+ get(key) {
39
38
  if (Object.keys(this.state).length === 0) {
40
39
  this.load();
41
40
  }
42
- return this.state[key2];
41
+ return this.state[key];
43
42
  },
44
- delete(key2) {
43
+ delete(key) {
45
44
  try {
46
- Reflect.deleteProperty(this.state, key2);
45
+ Reflect.deleteProperty(this.state, key);
47
46
  nativeStore.setItem(id, JSON.stringify(this.state));
48
47
  } catch (e) {
49
48
  console.error("Error deleting item in storage:", e);
@@ -73,7 +72,21 @@ function createNativeStore(key, definition = {}, storageType = "local" /* Local
73
72
  },
74
73
  ...definition
75
74
  };
75
+ if (!isNodeJs && storageType === "local" /* Local */) {
76
+ let storageListener2 = function(e) {
77
+ if (e.key === id) {
78
+ try {
79
+ Store.state = e.newValue === null ? {} : JSON.parse(e.newValue);
80
+ } catch (err) {
81
+ console.error(`Error syncing store ${id} from storage event`, err);
82
+ }
83
+ }
84
+ };
85
+ var storageListener = storageListener2;
86
+ window.addEventListener("storage", storageListener2);
87
+ }
76
88
  Store.load();
89
+ stores.set(id, Store);
77
90
  return Store;
78
91
  }
79
92
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../lib/native-store/index.ts"],
4
- "sourcesContent": ["import { isNodeJs } from \"valyrian.js\";\n\n/* eslint-disable no-console */\nexport enum StorageType {\n // eslint-disable-next-line no-unused-vars\n Session = \"session\",\n // eslint-disable-next-line no-unused-vars\n Local = \"local\"\n}\n\nexport interface NativeStorageInterface {\n state: Record<string, any>;\n // eslint-disable-next-line no-unused-vars\n set(key: string, value: any): void;\n // eslint-disable-next-line no-unused-vars\n get(key: string): any;\n // eslint-disable-next-line no-unused-vars\n delete(key: string): void;\n load(): void;\n clear(): void;\n}\n\nconst ids = new Set<string>();\n\nfunction getStorage(storageType: StorageType) {\n if (isNodeJs && typeof localStorage === \"undefined\") {\n throw new Error(\n `localStorage and sessionStorage are not available in Node.js, to use it in your project, you need to \"import \"valyrian.js/node\"`\n );\n }\n return storageType === StorageType.Session ? sessionStorage : localStorage;\n}\n\nexport function createNativeStore<T>(\n key: string,\n definition: Record<string, any> = {},\n storageType: StorageType = StorageType.Local,\n reuseIfExist = false\n): NativeStorageInterface & T {\n const nativeStore = getStorage(storageType);\n\n if (ids.has(key)) {\n if (reuseIfExist) {\n // eslint-disable-next-line no-console\n console.warn(`Store with key ${key} already exists and will be reused`);\n } else {\n throw new Error(`Store with key ${key} already exists`);\n }\n }\n ids.add(key);\n\n const id = key;\n\n const Store: NativeStorageInterface = {\n state: {},\n set(key, value) {\n try {\n this.state[key] = value;\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error setting item in storage:\", e);\n }\n },\n get(key) {\n if (Object.keys(this.state).length === 0) {\n this.load();\n }\n return this.state[key];\n },\n delete(key) {\n try {\n Reflect.deleteProperty(this.state, key);\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error deleting item in storage:\", e);\n }\n },\n load() {\n try {\n const state = nativeStore.getItem(id);\n if (!state) {\n this.state = {};\n nativeStore.setItem(id, JSON.stringify(this.state));\n return;\n }\n this.state = JSON.parse(state);\n } catch (e) {\n console.error(\"Error loading state from storage:\", e);\n this.state = {};\n }\n },\n clear() {\n try {\n this.state = {};\n nativeStore.removeItem(id);\n } catch (e) {\n console.error(\"Error clearing storage:\", e);\n }\n },\n ...definition\n };\n\n Store.load();\n\n return Store as NativeStorageInterface & T;\n}\n"],
5
- "mappings": ";AAAA,SAAS,gBAAgB;AAGlB,IAAK,cAAL,kBAAKA,iBAAL;AAEL,EAAAA,aAAA,aAAU;AAEV,EAAAA,aAAA,WAAQ;AAJE,SAAAA;AAAA,GAAA;AAmBZ,IAAM,MAAM,oBAAI,IAAY;AAE5B,SAAS,WAAW,aAA0B;AAC5C,MAAI,YAAY,OAAO,iBAAiB,aAAa;AACnD,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,SAAO,gBAAgB,0BAAsB,iBAAiB;AAChE;AAEO,SAAS,kBACd,KACA,aAAkC,CAAC,GACnC,cAA2B,qBAC3B,eAAe,OACa;AAC5B,QAAM,cAAc,WAAW,WAAW;AAE1C,MAAI,IAAI,IAAI,GAAG,GAAG;AAChB,QAAI,cAAc;AAEhB,cAAQ,KAAK,kBAAkB,GAAG,oCAAoC;AAAA,IACxE,OAAO;AACL,YAAM,IAAI,MAAM,kBAAkB,GAAG,iBAAiB;AAAA,IACxD;AAAA,EACF;AACA,MAAI,IAAI,GAAG;AAEX,QAAM,KAAK;AAEX,QAAM,QAAgC;AAAA,IACpC,OAAO,CAAC;AAAA,IACR,IAAIC,MAAK,OAAO;AACd,UAAI;AACF,aAAK,MAAMA,IAAG,IAAI;AAClB,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,kCAAkC,CAAC;AAAA,MACnD;AAAA,IACF;AAAA,IACA,IAAIA,MAAK;AACP,UAAI,OAAO,KAAK,KAAK,KAAK,EAAE,WAAW,GAAG;AACxC,aAAK,KAAK;AAAA,MACZ;AACA,aAAO,KAAK,MAAMA,IAAG;AAAA,IACvB;AAAA,IACA,OAAOA,MAAK;AACV,UAAI;AACF,gBAAQ,eAAe,KAAK,OAAOA,IAAG;AACtC,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,mCAAmC,CAAC;AAAA,MACpD;AAAA,IACF;AAAA,IACA,OAAO;AACL,UAAI;AACF,cAAM,QAAQ,YAAY,QAAQ,EAAE;AACpC,YAAI,CAAC,OAAO;AACV,eAAK,QAAQ,CAAC;AACd,sBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAClD;AAAA,QACF;AACA,aAAK,QAAQ,KAAK,MAAM,KAAK;AAAA,MAC/B,SAAS,GAAG;AACV,gBAAQ,MAAM,qCAAqC,CAAC;AACpD,aAAK,QAAQ,CAAC;AAAA,MAChB;AAAA,IACF;AAAA,IACA,QAAQ;AACN,UAAI;AACF,aAAK,QAAQ,CAAC;AACd,oBAAY,WAAW,EAAE;AAAA,MAC3B,SAAS,GAAG;AACV,gBAAQ,MAAM,2BAA2B,CAAC;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,GAAG;AAAA,EACL;AAEA,QAAM,KAAK;AAEX,SAAO;AACT;",
6
- "names": ["StorageType", "key"]
4
+ "sourcesContent": ["import { isNodeJs } from \"valyrian.js\";\n\n/* eslint-disable no-console */\nexport enum StorageType {\n // eslint-disable-next-line no-unused-vars\n Session = \"session\",\n // eslint-disable-next-line no-unused-vars\n Local = \"local\"\n}\n\nexport interface NativeStorageInterface {\n state: Record<string, any>;\n // eslint-disable-next-line no-unused-vars\n set(key: string, value: any): void;\n // eslint-disable-next-line no-unused-vars\n get(key: string): any;\n // eslint-disable-next-line no-unused-vars\n delete(key: string): void;\n load(): void;\n clear(): void;\n}\n\nconst stores = new Map<string, NativeStorageInterface>();\n\nfunction getStorage(storageType: StorageType) {\n if (isNodeJs && typeof localStorage === \"undefined\") {\n throw new Error(\n `localStorage and sessionStorage are not available in Node.js, to use it in your project, you need to \"import \"valyrian.js/node\"`\n );\n }\n return storageType === StorageType.Session ? sessionStorage : localStorage;\n}\n\nexport function createNativeStore<T>(\n id: string,\n definition: Record<string, any> = {},\n storageType: StorageType = StorageType.Local,\n reuseIfExist = false\n): NativeStorageInterface & T {\n const nativeStore = getStorage(storageType);\n\n if (stores.has(id)) {\n if (reuseIfExist) {\n // eslint-disable-next-line no-console\n console.warn(`Store with key ${id} already exists and will be reused`);\n return stores.get(id) as NativeStorageInterface & T;\n } else {\n throw new Error(`Store with key ${id} already exists`);\n }\n }\n\n const Store: NativeStorageInterface = {\n state: {},\n set(key, value) {\n try {\n this.state[key] = value;\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error setting item in storage:\", e);\n }\n },\n get(key) {\n if (Object.keys(this.state).length === 0) {\n this.load();\n }\n return this.state[key];\n },\n delete(key) {\n try {\n Reflect.deleteProperty(this.state, key);\n nativeStore.setItem(id, JSON.stringify(this.state));\n } catch (e) {\n console.error(\"Error deleting item in storage:\", e);\n }\n },\n load() {\n try {\n const state = nativeStore.getItem(id);\n if (!state) {\n this.state = {};\n nativeStore.setItem(id, JSON.stringify(this.state));\n return;\n }\n this.state = JSON.parse(state);\n } catch (e) {\n console.error(\"Error loading state from storage:\", e);\n this.state = {};\n }\n },\n clear() {\n try {\n this.state = {};\n nativeStore.removeItem(id);\n } catch (e) {\n console.error(\"Error clearing storage:\", e);\n }\n },\n ...definition\n };\n\n if (!isNodeJs && storageType === StorageType.Local) {\n function storageListener(e: StorageEvent) {\n if (e.key === id) {\n try {\n Store.state = e.newValue === null ? {} : JSON.parse(e.newValue);\n } catch (err) {\n console.error(`Error syncing store ${id} from storage event`, err);\n }\n }\n }\n\n window.addEventListener(\"storage\", storageListener);\n }\n\n Store.load();\n\n stores.set(id, Store);\n\n return Store as NativeStorageInterface & T;\n}\n"],
5
+ "mappings": ";AAAA,SAAS,gBAAgB;AAGlB,IAAK,cAAL,kBAAKA,iBAAL;AAEL,EAAAA,aAAA,aAAU;AAEV,EAAAA,aAAA,WAAQ;AAJE,SAAAA;AAAA,GAAA;AAmBZ,IAAM,SAAS,oBAAI,IAAoC;AAEvD,SAAS,WAAW,aAA0B;AAC5C,MAAI,YAAY,OAAO,iBAAiB,aAAa;AACnD,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,SAAO,gBAAgB,0BAAsB,iBAAiB;AAChE;AAEO,SAAS,kBACd,IACA,aAAkC,CAAC,GACnC,cAA2B,qBAC3B,eAAe,OACa;AAC5B,QAAM,cAAc,WAAW,WAAW;AAE1C,MAAI,OAAO,IAAI,EAAE,GAAG;AAClB,QAAI,cAAc;AAEhB,cAAQ,KAAK,kBAAkB,EAAE,oCAAoC;AACrE,aAAO,OAAO,IAAI,EAAE;AAAA,IACtB,OAAO;AACL,YAAM,IAAI,MAAM,kBAAkB,EAAE,iBAAiB;AAAA,IACvD;AAAA,EACF;AAEA,QAAM,QAAgC;AAAA,IACpC,OAAO,CAAC;AAAA,IACR,IAAI,KAAK,OAAO;AACd,UAAI;AACF,aAAK,MAAM,GAAG,IAAI;AAClB,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,kCAAkC,CAAC;AAAA,MACnD;AAAA,IACF;AAAA,IACA,IAAI,KAAK;AACP,UAAI,OAAO,KAAK,KAAK,KAAK,EAAE,WAAW,GAAG;AACxC,aAAK,KAAK;AAAA,MACZ;AACA,aAAO,KAAK,MAAM,GAAG;AAAA,IACvB;AAAA,IACA,OAAO,KAAK;AACV,UAAI;AACF,gBAAQ,eAAe,KAAK,OAAO,GAAG;AACtC,oBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAAA,MACpD,SAAS,GAAG;AACV,gBAAQ,MAAM,mCAAmC,CAAC;AAAA,MACpD;AAAA,IACF;AAAA,IACA,OAAO;AACL,UAAI;AACF,cAAM,QAAQ,YAAY,QAAQ,EAAE;AACpC,YAAI,CAAC,OAAO;AACV,eAAK,QAAQ,CAAC;AACd,sBAAY,QAAQ,IAAI,KAAK,UAAU,KAAK,KAAK,CAAC;AAClD;AAAA,QACF;AACA,aAAK,QAAQ,KAAK,MAAM,KAAK;AAAA,MAC/B,SAAS,GAAG;AACV,gBAAQ,MAAM,qCAAqC,CAAC;AACpD,aAAK,QAAQ,CAAC;AAAA,MAChB;AAAA,IACF;AAAA,IACA,QAAQ;AACN,UAAI;AACF,aAAK,QAAQ,CAAC;AACd,oBAAY,WAAW,EAAE;AAAA,MAC3B,SAAS,GAAG;AACV,gBAAQ,MAAM,2BAA2B,CAAC;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,GAAG;AAAA,EACL;AAEA,MAAI,CAAC,YAAY,gBAAgB,qBAAmB;AAClD,QAASC,mBAAT,SAAyB,GAAiB;AACxC,UAAI,EAAE,QAAQ,IAAI;AAChB,YAAI;AACF,gBAAM,QAAQ,EAAE,aAAa,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,QAAQ;AAAA,QAChE,SAAS,KAAK;AACZ,kBAAQ,MAAM,uBAAuB,EAAE,uBAAuB,GAAG;AAAA,QACnE;AAAA,MACF;AAAA,IACF;AARS,0BAAAA;AAUT,WAAO,iBAAiB,WAAWA,gBAAe;AAAA,EACpD;AAEA,QAAM,KAAK;AAEX,SAAO,IAAI,IAAI,KAAK;AAEpB,SAAO;AACT;",
6
+ "names": ["StorageType", "storageListener"]
7
7
  }
@@ -30,7 +30,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  // lib/node/index.ts
31
31
  var index_exports = {};
32
32
  __export(index_exports, {
33
- SessionStorage: () => SessionStorage,
33
+ ServerStorage: () => ServerStorage,
34
34
  domToHtml: () => domToHtml,
35
35
  domToHyperscript: () => domToHyperscript,
36
36
  htmlToDom: () => htmlToDom,
@@ -453,6 +453,23 @@ var Document = class extends Element {
453
453
  return new Text(text);
454
454
  }
455
455
  };
456
+ var ESCAPE_LOOKUP = {
457
+ "&": "&amp;",
458
+ ">": "&gt;",
459
+ "<": "&lt;",
460
+ '"': "&quot;",
461
+ "'": "&#39;"
462
+ };
463
+ var ESCAPE_REGEX = /[&><"']/g;
464
+ function escapeHtml(str) {
465
+ if (typeof str !== "string") {
466
+ return String(str);
467
+ }
468
+ if (ESCAPE_REGEX.test(str) === false) {
469
+ return str;
470
+ }
471
+ return str.replace(ESCAPE_REGEX, (match) => ESCAPE_LOOKUP[match]).replace(/&amp;amp;/g, "&amp;");
472
+ }
456
473
  var selfClosingTags = [
457
474
  "area",
458
475
  "base",
@@ -478,7 +495,8 @@ function domToHtml(dom) {
478
495
  const name = dom.nodeName.toLowerCase();
479
496
  let str = "<" + name;
480
497
  for (let i = 0, l = dom.attributes.length; i < l; i++) {
481
- str += " " + dom.attributes[i].nodeName + '="' + dom.attributes[i].nodeValue + '"';
498
+ const attr = dom.attributes[i];
499
+ str += " " + attr.nodeName + '="' + escapeHtml(attr.nodeValue) + '"';
482
500
  }
483
501
  if (selfClosingTags.indexOf(name) === -1) {
484
502
  str += ">";
@@ -974,115 +992,60 @@ function sw(file, options = {}) {
974
992
  import_fs3.default.writeFileSync(file, contents, "utf8");
975
993
  }
976
994
 
977
- // lib/node/utils/session-storage.ts
978
- var import_fs4 = __toESM(require("fs"));
979
- var import_path2 = __toESM(require("path"));
980
- var SessionStorage = class {
981
- storage;
982
- limit;
983
- persist;
984
- filePath;
985
- directory = ".session-storage";
986
- constructor({ persist = false, filePath = "./sessionData.json" } = {}) {
987
- this.storage = {};
988
- this.limit = 5 * 1024 * 1024;
989
- this.persist = persist;
990
- this.filePath = import_path2.default.resolve(this.directory, filePath);
991
- if (this.persist) {
992
- if (!import_fs4.default.existsSync(this.directory)) {
993
- import_fs4.default.mkdirSync(this.directory, { recursive: true });
994
- }
995
- this.loadFromFile();
996
- }
995
+ // lib/node/utils/server-storage.ts
996
+ var import_node_async_hooks = require("node:async_hooks");
997
+ var storageContext = new import_node_async_hooks.AsyncLocalStorage();
998
+ var globalStore = {};
999
+ var ServerStorage = class {
1000
+ get store() {
1001
+ return storageContext.getStore() || globalStore;
997
1002
  }
998
- // Calculate total size in bytes of stored data
999
- getStorageSize() {
1000
- return new TextEncoder().encode(JSON.stringify(this.storage)).length;
1001
- }
1002
- // Check if storage limit is exceeded
1003
- checkSizeLimit() {
1004
- const size = this.getStorageSize();
1005
- if (size > this.limit) {
1006
- throw new DOMException("Storage limit exceeded", "QuotaExceededError");
1007
- }
1003
+ get length() {
1004
+ const store = this.store;
1005
+ return store ? Object.keys(store).length : 0;
1008
1006
  }
1009
- // Store value under the specified key
1010
- setItem(key, value) {
1011
- if (key === null || key === void 0) {
1012
- throw new TypeError("Failed to execute 'setItem' on 'Storage': 1 argument required, but only 0 present.");
1013
- }
1014
- if (value === null) {
1015
- value = "null";
1016
- } else if (value === void 0) {
1017
- value = "undefined";
1007
+ clear() {
1008
+ const store = this.store;
1009
+ if (store) {
1010
+ for (const key in store) {
1011
+ Reflect.deleteProperty(store, key);
1012
+ }
1018
1013
  }
1019
- this.loadFromFile();
1020
- this.storage[key] = String(value);
1021
- this.checkSizeLimit();
1022
- this.saveToFile();
1023
1014
  }
1024
- // Retrieve value stored under the specified key
1025
1015
  getItem(key) {
1026
- if (key === null || key === void 0) {
1027
- throw new TypeError("Failed to execute 'getItem' on 'Storage': 1 argument required, but only 0 present.");
1028
- }
1029
- this.loadFromFile();
1030
- return this.storage[key] || null;
1016
+ const store = this.store;
1017
+ return store ? store[key] || null : null;
1018
+ }
1019
+ key(index) {
1020
+ const store = this.store;
1021
+ return store ? Object.keys(store)[index] || null : null;
1031
1022
  }
1032
- // Remove the value under the specified key
1033
1023
  removeItem(key) {
1034
- if (key === null || key === void 0) {
1035
- throw new TypeError("Failed to execute 'removeItem' on 'Storage': 1 argument required, but only 0 present.");
1024
+ const store = this.store;
1025
+ if (store) {
1026
+ Reflect.deleteProperty(store, key);
1036
1027
  }
1037
- this.loadFromFile();
1038
- Reflect.deleteProperty(this.storage, key);
1039
- this.saveToFile();
1040
- }
1041
- // Clear all stored values
1042
- clear() {
1043
- this.storage = {};
1044
- this.saveToFile();
1045
- }
1046
- // Return the number of stored items
1047
- get length() {
1048
- return Object.keys(this.storage).length;
1049
1028
  }
1050
- // Return the key at the specified index
1051
- key(index) {
1052
- this.loadFromFile();
1053
- const keys = Object.keys(this.storage);
1054
- return keys[index] || null;
1055
- }
1056
- // Save data to a file (only if persistence is enabled)
1057
- saveToFile() {
1058
- if (this.persist) {
1059
- try {
1060
- import_fs4.default.writeFileSync(this.filePath, JSON.stringify(this.storage), "utf-8");
1061
- } catch (error) {
1062
- throw new Error(`Error saving data to file: ${error.message}`);
1063
- }
1029
+ setItem(key, value) {
1030
+ const store = this.store;
1031
+ if (store) {
1032
+ store[key] = String(value);
1064
1033
  }
1065
1034
  }
1066
- // Load data from a file (only if persistence is enabled)
1067
- loadFromFile() {
1068
- if (this.persist) {
1069
- try {
1070
- if (import_fs4.default.existsSync(this.filePath)) {
1071
- const data = import_fs4.default.readFileSync(this.filePath, "utf-8");
1072
- this.storage = JSON.parse(data || "{}");
1073
- }
1074
- } catch (error) {
1075
- throw new Error(`Error loading data from file: ${error.message}`);
1076
- }
1077
- }
1035
+ static run(callback) {
1036
+ storageContext.run({}, callback);
1037
+ }
1038
+ toJSON() {
1039
+ const store = this.store;
1040
+ return store ? { ...store } : {};
1078
1041
  }
1079
1042
  };
1080
1043
 
1081
1044
  // lib/node/index.ts
1082
1045
  global.FormData = import_form_data.default;
1083
1046
  global.document = document;
1084
- global.sessionStorage = new SessionStorage();
1085
- global.localStorage = new SessionStorage();
1047
+ global.sessionStorage = new ServerStorage();
1048
+ global.localStorage = new ServerStorage();
1086
1049
  function render(...args) {
1087
1050
  const Component = () => args;
1088
1051
  const result = (0, import_valyrian.mount)("div", Component);