@storesjs/stores 0.9.0 → 0.11.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 (139) hide show
  1. package/README.md +55 -29
  2. package/dist/createBaseStore.d.ts +8 -8
  3. package/dist/createDerivedStore.d.ts +9 -17
  4. package/dist/createQueryStore.d.ts +11 -16
  5. package/dist/createVirtualStore.d.ts +1 -2
  6. package/dist/env.native.d.ts +0 -2
  7. package/dist/env.web.d.ts +0 -1
  8. package/dist/hooks/useListen.d.ts +2 -2
  9. package/dist/index.d.ts +1 -16
  10. package/dist/index.shared.d.ts +14 -0
  11. package/dist/index.vanilla.d.ts +2 -0
  12. package/dist/internal/baseStore.d.ts +2 -0
  13. package/dist/{config.d.ts → internal/config.d.ts} +5 -11
  14. package/dist/{utils → internal}/createStoreActions.d.ts +4 -5
  15. package/dist/{derivedStore → internal/derivedStore}/deriveProxy.d.ts +2 -2
  16. package/dist/{derivedStore → internal/derivedStore}/pathFinder.d.ts +1 -2
  17. package/dist/internal/derivedStore.d.ts +2 -0
  18. package/dist/{errors.d.ts → internal/errors.d.ts} +0 -4
  19. package/dist/{logger.d.ts → internal/logger.d.ts} +0 -2
  20. package/dist/internal/middleware/createHydrationGate.d.ts +20 -0
  21. package/dist/internal/queryStore/queryParams.d.ts +18 -0
  22. package/dist/internal/queryStore/queryStoreDefaults.d.ts +8 -0
  23. package/dist/internal/queryStore.d.ts +2 -0
  24. package/dist/internal/runtime.d.ts +12 -0
  25. package/dist/internal/storage/storageCreators.d.ts +12 -0
  26. package/dist/{utils → internal}/storeUtils.d.ts +3 -21
  27. package/dist/internal/sync/browserSyncEngine.d.ts +3 -0
  28. package/dist/internal/sync/noopSyncEngine.d.ts +3 -0
  29. package/dist/internal/sync/syncEnhancer.d.ts +26 -0
  30. package/dist/{sync → internal/sync}/syncUtils.d.ts +1 -1
  31. package/dist/internal/types/internalSubscribeTypes.d.ts +16 -0
  32. package/dist/internal/utils/persistUtils.d.ts +9 -0
  33. package/dist/internal/virtualStore.d.ts +2 -0
  34. package/dist/native/index.js +1 -1
  35. package/dist/native/index.mjs +1 -1
  36. package/dist/queryStore/classes/SubscriptionManager.d.ts +3 -31
  37. package/dist/queryStore/queryKey.d.ts +10 -0
  38. package/dist/queryStore/queryParam.d.ts +37 -0
  39. package/dist/queryStore/types.d.ts +12 -53
  40. package/dist/store/attachStoreHook.react.d.ts +5 -0
  41. package/dist/store/attachStoreHook.vanilla.d.ts +6 -0
  42. package/dist/store/batchStoreNotifications.native.d.ts +3 -0
  43. package/dist/store/batchStoreNotifications.web.d.ts +2 -0
  44. package/dist/store/cascadeScheduler.d.ts +38 -0
  45. package/dist/store/createStore.d.ts +6 -0
  46. package/dist/store/persist.d.ts +14 -0
  47. package/dist/store/stateUpdate.d.ts +10 -0
  48. package/dist/store/types.d.ts +108 -0
  49. package/dist/types/setState.d.ts +22 -0
  50. package/dist/types/subscribe.d.ts +27 -0
  51. package/dist/types/useStoreCallSignatures.d.ts +2 -0
  52. package/dist/types/useStoreCallSignatures.react.d.ts +6 -0
  53. package/dist/types/useStoreCallSignatures.vanilla.d.ts +2 -0
  54. package/dist/types/utils.d.ts +4 -0
  55. package/dist/types.d.ts +46 -94
  56. package/dist/utils/createMicrotaskScheduler.d.ts +2 -1
  57. package/dist/utils/time.d.ts +0 -7
  58. package/dist/vanilla/createBaseStore.d.ts +35 -0
  59. package/dist/vanilla/createDerivedStore.d.ts +62 -0
  60. package/dist/vanilla/createQueryStore.d.ts +110 -0
  61. package/dist/vanilla/createVirtualStore.d.ts +39 -0
  62. package/dist/vanilla/env.web.d.ts +6 -0
  63. package/dist/vanilla/index.d.ts +1 -0
  64. package/dist/vanilla/index.js +1 -0
  65. package/dist/vanilla/index.mjs +1 -0
  66. package/dist/vanilla/index.shared.d.ts +13 -0
  67. package/dist/vanilla/index.vanilla.d.ts +1 -0
  68. package/dist/vanilla/internal/baseStore.d.ts +1 -0
  69. package/dist/vanilla/internal/config.d.ts +63 -0
  70. package/dist/vanilla/internal/createStoreActions.d.ts +23 -0
  71. package/dist/vanilla/internal/derivedStore/deriveProxy.d.ts +14 -0
  72. package/dist/vanilla/internal/derivedStore/pathFinder.d.ts +25 -0
  73. package/dist/vanilla/internal/derivedStore.d.ts +1 -0
  74. package/dist/vanilla/internal/errors.d.ts +9 -0
  75. package/dist/vanilla/internal/logger.d.ts +9 -0
  76. package/dist/{middleware → vanilla/internal/middleware}/createHydrationGate.d.ts +1 -2
  77. package/dist/vanilla/internal/queryStore/queryParams.d.ts +17 -0
  78. package/dist/{queryStore → vanilla/internal/queryStore}/queryStoreDefaults.d.ts +1 -2
  79. package/dist/vanilla/internal/queryStore.d.ts +1 -0
  80. package/dist/vanilla/internal/runtime.d.ts +11 -0
  81. package/dist/vanilla/internal/storage/storageCreators.d.ts +11 -0
  82. package/dist/vanilla/internal/storeUtils.d.ts +45 -0
  83. package/dist/vanilla/internal/sync/browserSyncEngine.d.ts +2 -0
  84. package/dist/vanilla/internal/sync/noopSyncEngine.d.ts +2 -0
  85. package/dist/{sync → vanilla/internal/sync}/syncEnhancer.d.ts +2 -3
  86. package/dist/vanilla/internal/types/internalSubscribeTypes.d.ts +15 -0
  87. package/dist/{utils → vanilla/internal/utils}/persistUtils.d.ts +1 -2
  88. package/dist/vanilla/internal/virtualStore.d.ts +1 -0
  89. package/dist/vanilla/queryStore/classes/SubscriptionManager.d.ts +38 -0
  90. package/dist/vanilla/queryStore/queryKey.d.ts +9 -0
  91. package/dist/vanilla/queryStore/queryParam.d.ts +36 -0
  92. package/dist/vanilla/queryStore/types.d.ts +360 -0
  93. package/dist/vanilla/storage/storageTypes.d.ts +12 -0
  94. package/dist/vanilla/store/attachStoreHook.d.ts +5 -0
  95. package/dist/vanilla/store/attachStoreHook.vanilla.d.ts +5 -0
  96. package/dist/vanilla/store/batchStoreNotifications.web.d.ts +1 -0
  97. package/dist/{derivedStore → vanilla/store}/cascadeScheduler.d.ts +12 -6
  98. package/dist/vanilla/store/createStore.d.ts +5 -0
  99. package/dist/vanilla/store/persist.d.ts +13 -0
  100. package/dist/vanilla/store/stateUpdate.d.ts +9 -0
  101. package/dist/vanilla/store/types.d.ts +107 -0
  102. package/dist/vanilla/storesStorage.web.d.ts +2 -0
  103. package/dist/vanilla/sync/types.d.ts +114 -0
  104. package/dist/vanilla/types/functions.d.ts +23 -0
  105. package/dist/vanilla/types/objects.d.ts +10 -0
  106. package/dist/vanilla/types/setState.d.ts +21 -0
  107. package/dist/vanilla/types/subscribe.d.ts +26 -0
  108. package/dist/vanilla/types/useStoreCallSignatures.d.ts +1 -0
  109. package/dist/vanilla/types/useStoreCallSignatures.vanilla.d.ts +1 -0
  110. package/dist/vanilla/types/utils.d.ts +12 -0
  111. package/dist/vanilla/types.d.ts +287 -0
  112. package/dist/vanilla/utils/core.d.ts +25 -0
  113. package/dist/vanilla/utils/createAsyncMicrotaskScheduler.d.ts +34 -0
  114. package/dist/vanilla/utils/createMicrotaskScheduler.d.ts +28 -0
  115. package/dist/vanilla/utils/debounce.d.ts +21 -0
  116. package/dist/vanilla/utils/equality.d.ts +37 -0
  117. package/dist/vanilla/utils/hydrationCoordinator.d.ts +12 -0
  118. package/dist/vanilla/utils/promiseUtils.d.ts +1 -0
  119. package/dist/vanilla/utils/serialization.d.ts +13 -0
  120. package/dist/vanilla/utils/stringUtils.d.ts +6 -0
  121. package/dist/vanilla/utils/time.d.ts +36 -0
  122. package/dist/web/chrome.js +1 -1
  123. package/dist/web/chrome.mjs +1 -1
  124. package/dist/web/chunk-FENSEQ3V.mjs +1 -0
  125. package/dist/web/chunk-FPYZVFBM.mjs +1 -0
  126. package/dist/web/chunk-PLDNKWGX.mjs +1 -0
  127. package/dist/web/index.js +1 -1
  128. package/dist/web/index.mjs +1 -1
  129. package/dist/web/internal/runtime.js +1 -0
  130. package/dist/web/internal/runtime.mjs +1 -0
  131. package/package.json +13 -11
  132. package/dist/createStoreWithEqualityFn.d.ts +0 -5
  133. package/dist/hooks/compareHooks.d.ts +0 -50
  134. package/dist/queryStore/signalTypes.d.ts +0 -13
  135. package/dist/signal.d.ts +0 -11
  136. package/dist/storage/storageCreators.d.ts +0 -22
  137. package/dist/sync/browserSyncEngine.d.ts +0 -3
  138. package/dist/sync/noopSyncEngine.d.ts +0 -3
  139. package/dist/web/chunk-3U5A7HQV.mjs +0 -1
@@ -1,17 +1,6 @@
1
- import { StoreApi } from 'zustand';
2
- import { QueryStore, QueryStoreState } from '../queryStore/types';
3
- import { BaseStore, InferStoreState, PersistedStore, SetStateArgs } from '../types';
4
- export declare const StoreTags: Readonly<{
5
- QueryStore: symbol;
6
- VirtualStore: symbol;
7
- }>;
8
- type StoreTag = (typeof StoreTags)[keyof typeof StoreTags];
9
- export declare function assignStoreTag<S>(store: BaseStore<S>, tag: StoreTag): BaseStore<S>;
10
- /**
11
- * Helper that applies a `setState` update to the provided state.
12
- * Handles the `setState` discriminated union types internally.
13
- */
14
- export declare function applyStateUpdate<S>(state: S, ...setArgs: SetStateArgs<S>): S;
1
+ import type { QueryStore, QueryStoreState } from '../queryStore/types';
2
+ import type { StoreApi } from '../store/types';
3
+ import type { BaseStore, InferStoreState, PersistedStore } from '../types';
15
4
  /**
16
5
  * Calls the appropriate reset or destroy method on the store, if available.
17
6
  * Handles both `DerivedStore` and `QueryStore`.
@@ -27,12 +16,6 @@ export declare function destroyStores(stores: Partial<Record<string, BaseStore<u
27
16
  * Returns the name of the store, either from the `persist` options or the store itself.
28
17
  */
29
18
  export declare function getStoreName(store: BaseStore<unknown>): string;
30
- /**
31
- * Checks if a store has a `destroy` method.
32
- */
33
- export declare function hasDestroy<T extends StoreApi<unknown>>(store: T): store is T & {
34
- destroy: () => void;
35
- };
36
19
  /**
37
20
  * Checks if a store is a `DerivedStore` and reveals its internal `getSnapshot` method.
38
21
  */
@@ -60,5 +43,4 @@ export declare function isPersistedStore<T extends BaseStore<unknown> | Persiste
60
43
  * Checks if a store is a virtual store.
61
44
  */
62
45
  export declare function isVirtualStore<T extends BaseStore<unknown> | StoreApi<unknown>>(store: T): store is T & BaseStore<InferStoreState<T>>;
63
- export {};
64
46
  //# sourceMappingURL=storeUtils.d.ts.map
@@ -0,0 +1,3 @@
1
+ import { SyncEngine } from '../../sync/types';
2
+ export declare function createBrowserSyncEngine(): SyncEngine;
3
+ //# sourceMappingURL=browserSyncEngine.d.ts.map
@@ -0,0 +1,3 @@
1
+ import { SyncEngine } from '../../sync/types';
2
+ export declare function createNoopSyncEngine(): SyncEngine;
3
+ //# sourceMappingURL=noopSyncEngine.d.ts.map
@@ -0,0 +1,26 @@
1
+ import { NormalizedSyncConfig } from '../../sync/types';
2
+ import { StateCreator } from '../../types';
3
+ export type SyncContext = {
4
+ isAsync: boolean;
5
+ clearFieldTimestamps: (snapshot: Record<string, number> | undefined) => void;
6
+ getFieldTimestampSnapshot: () => Record<string, number> | undefined;
7
+ getIsApplyingRemote: () => boolean;
8
+ getSessionId: () => string | undefined;
9
+ getTimestamp: () => number | undefined;
10
+ mergeFieldTimestamps: (fields: Record<string, number>) => void;
11
+ onHydrationComplete: (() => void) | undefined;
12
+ onHydrationFlushEnd: (() => void) | undefined;
13
+ setIsApplyingRemote: (value: boolean) => void;
14
+ setSessionId: (sessionId: string) => void;
15
+ setTimestamp: (timestamp: number) => void;
16
+ setWithoutPersist: (<_T extends (..._: unknown[]) => void | Promise<void>, Args extends unknown[]>(..._: Args) => void | Promise<void>) | undefined;
17
+ };
18
+ export declare function createSyncedStateCreator<T extends Record<string, unknown>>(stateCreator: StateCreator<T>, config: NormalizedSyncConfig<T>, isAsync: boolean): {
19
+ stateCreator: StateCreator<T>;
20
+ syncContext: SyncContext;
21
+ };
22
+ /**
23
+ * Readable indices for `FieldMetadata` tuples.
24
+ */
25
+ export declare const TIMESTAMP: 0, SESSION_ID: 1;
26
+ //# sourceMappingURL=syncEnhancer.d.ts.map
@@ -1,4 +1,4 @@
1
- import { FieldMetadata } from './types';
1
+ import { FieldMetadata } from '../../sync/types';
2
2
  /**
3
3
  * Helper to create `FieldMetadata` tuples.
4
4
  */
@@ -0,0 +1,16 @@
1
+ import type { Listener, ListenerArgs, Selector, SubscribeOptions } from '../../types/subscribe';
2
+ export type InternalSubscribeOptions<Selected> = SubscribeOptions<Selected> & {
3
+ isCascadeParticipant?: boolean;
4
+ };
5
+ export type InternalSelectorArgs<S, Selected> = [
6
+ selector: Selector<S, Selected>,
7
+ listener: Listener<Selected>,
8
+ options?: InternalSubscribeOptions<Selected>
9
+ ];
10
+ export type InternalSubscribeArgs<S, Selected = unknown> = ListenerArgs<S> | InternalSelectorArgs<S, Selected>;
11
+ export type InternalUnsubscribeFn = (skipAbortFetch?: boolean) => void;
12
+ export type InternalSubscribeOverloads<S> = {
13
+ (...args: ListenerArgs<S>): InternalUnsubscribeFn;
14
+ <Selected>(...args: InternalSelectorArgs<S, Selected>): InternalUnsubscribeFn;
15
+ };
16
+ //# sourceMappingURL=internalSubscribeTypes.d.ts.map
@@ -0,0 +1,9 @@
1
+ import type { StorageValue } from '../../storage/storageTypes';
2
+ /**
3
+ * Default partialize function if none is provided. It omits top-level store
4
+ * methods and keeps all other state.
5
+ */
6
+ export declare function omitStoreMethods<S, PersistedState extends Partial<S> = Partial<S>>(state: S): PersistedState;
7
+ export declare function defaultSerializeState<PersistedState>(storageValue: StorageValue<PersistedState>, shouldUseReplacer: boolean): string;
8
+ export declare function defaultDeserializeState<PersistedState>(serializedState: string, shouldUseReviver: boolean): StorageValue<PersistedState>;
9
+ //# sourceMappingURL=persistUtils.d.ts.map
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=virtualStore.d.ts.map
@@ -1 +1 @@
1
- var e=require("react-native"),t=require("zustand/middleware"),n=require("zustand/vanilla"),r=require("react"),o=(e=>"undefined"!=typeof require?require:"undefined"!=typeof Proxy?new Proxy(e,{get:(e,t)=>("undefined"!=typeof require?require:e)[t]}):e)(function(e){if("undefined"!=typeof require)return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),i="ios"===e.Platform.OS;e.Platform.OS;var s="development"===process.env.NODE_ENV,c="test"===process.env.NODE_ENV;function a(e){let t;function n(){if(t)return t;try{const n=function(e){const{createMMKV:t,MMKV:n}=o("react-native-mmkv");if("function"==typeof t)return t({id:e});if("function"==typeof n)return new n({id:e});throw new Error("[stores]: react-native-mmkv module does not export MMKV/createMMKV.")}(e);let r;if("function"==typeof n.delete?r=n.delete.bind(n):"function"==typeof n.remove&&(r=n.remove.bind(n)),"function"!=typeof r)throw new Error("[stores]: Storage instance does not conform to expected interface");const i={clearAll:n.clearAll.bind(n),contains:n.contains.bind(n),delete:r,get:n.getString.bind(n),getAllKeys:n.getAllKeys.bind(n),set:n.set.bind(n)};t=i}catch(e){throw new Error("[stores] react-native-mmkv could not be loaded.\n\nPersisted stores require a storage backend. Either:\n - Install MMKV (the default): yarn add react-native-mmkv\n - Or provide a custom adapter via configureStores()\n"+(e instanceof Error?`\n${e.message}`:""))}return function(e){if(!e||"function"!=typeof e.get||"function"!=typeof e.set||"function"!=typeof e.delete||"function"!=typeof e.clearAll)throw new Error("[stores]: Storage instance does not conform to expected interface")}(t),t}return{clearAll:()=>n().clearAll(),contains:e=>n().contains(e),delete:e=>n().delete(e),get:e=>n().get(e),getAllKeys:()=>n().getAllKeys(),set:(e,t)=>n().set(e,t)}}var u={debug:(e,t)=>{s&&console.debug(e,t)},error:(e,t)=>{s&&!c&&console.error(e,t)},info:(e,t)=>{s&&console.info(e,t)},warn:(e,t)=>{s&&console.warn(e,t)}},l=class extends Error{constructor(e,t){super(e),this.name="StoresError",void 0!==t&&Object.defineProperty(this,"cause",{configurable:!0,value:t,writable:!0})}};function f(e){return e instanceof Error?e:new Error(String(e))}var d=Object.prototype.hasOwnProperty;function y(e,t){return d.call(e,t)}function p(e){if("object"!=typeof e||null===e)return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function h(e){return e}function g(){}Object.freeze(Object.create(null));var b,m,S,v=class{destroy(){}publish(){}},w=class{constructor(){this.sessionId="noop"}register(e){return new v}},q=!1;function O(){return S??(S=F(void 0))}function j(){q=!0}function F(e){return{storage:e?.storage??a(e?.storageKeyPrefix??"stores:"),syncEngine:e?.syncEngine??(b||(b=new w),b)}}var _=Symbol("empty selection"),A=Object.is;function C(e,t,n,o,i=A){const s=r.useRef(null);let c=e,a=t,u=n;if(o){let r=s.current;null===r&&(r=function(e,t,n,r,o){const i={committedEqualityFn:o,committedSelector:r,committedSource:e,committedValue:_,equalityFn:o,getSelectedServerSnapshot:()=>function(e){return T(e,(e.getServerStoreSnapshot??e.getStoreSnapshot)())}(i),getSelectedSnapshot:()=>I(i),getServerStoreSnapshot:n,getStoreSnapshot:t,latestSnapshot:_,latestSource:_,selector:r,selectedSource:e,selectedSubscribe:()=>g,source:e,value:_,valueEqualityFn:o,valueSelector:r,valueSnapshot:_};return i.selectedSubscribe=k(i,e),i}(e,t,n,o,i),s.current=r),function(e,t,n,r,o,i){e.source===t&&e.getStoreSnapshot===n||(e.latestSnapshot=_),e.source=t,e.getStoreSnapshot=n,e.getServerStoreSnapshot=r,e.selector=o,e.equalityFn=i,e.selectedSource!==t&&(e.selectedSource=t,e.selectedSubscribe=k(e,t))}(r,e,t,n,o,i),c=r.selectedSubscribe,a=r.getSelectedSnapshot,u=void 0===n?void 0:r.getSelectedServerSnapshot}const l=r.useSyncExternalStore(c,a,u);return r.useDebugValue(l),l}function k(e,t){return n=>(function(e){e.committedEqualityFn=e.equalityFn,e.committedSelector=e.selector,e.committedSource=e.source,e.committedValue=e.value===_?I(e):e.value}(e),t(r=>{e.latestSnapshot=r,e.latestSource=t;const o=e.committedValue;if(o===_||e.committedSource!==t)return void n();const i=e.committedSelector,s=e.committedEqualityFn;if(e.selector===i&&e.equalityFn===s){const t=i(r);if(s===A?A(o,t):s(o,t))return;return e.committedValue=t,e.value=t,e.valueEqualityFn=s,e.valueSelector=i,e.valueSnapshot=r,void n()}if(e.source!==t)return void n();const c=e.value;if(c===_)return;const a=e.selector(r),u=e.equalityFn(c,a);e.committedEqualityFn=e.equalityFn,e.committedSelector=e.selector,e.committedValue=E(e,r,u?c:a),u||n()}))}function I(e){const t=function(e){if(e.latestSource===e.source&&e.latestSnapshot!==_)return e.latestSnapshot;const t=e.getStoreSnapshot();return e.latestSnapshot=t,e.latestSource=e.source,t}(e);return T(e,t)}function T(e,t){const n=e.value;if(n!==_&&A(e.valueSnapshot,t)&&e.valueSelector===e.selector&&e.valueEqualityFn===e.equalityFn)return n;const r=e.selector(t);if(n!==_&&(e.equalityFn===A?A(n,r):e.equalityFn(n,r)))return E(e,t,n);const o=e.committedValue;return o!==_&&o!==n&&e.committedSource===e.source&&(e.equalityFn===A?A(o,r):e.equalityFn(o,r))?E(e,t,o):E(e,t,r)}function E(e,t,n){return e.value=n,e.valueEqualityFn=e.equalityFn,e.valueSelector=e.selector,e.valueSnapshot=t,n}function x(e,t){return(e,t)=>function(e,t){const r=n.createStore(e);return Object.assign(function(e,n){return C(r.subscribe,r.getState,r.getInitialState,e,n??t)},r)}(e,t)}function D(){let e,t,n=!1;return{complete:function(){!n&&e&&(n=!0,e(),e=void 0,t=void 0)},isHydrated:function(){return n},fail:function(r){!n&&t&&(n=!0,t(r),t=void 0,e=void 0)},promise:new Promise((n,r)=>{e=n,t=r})}}var M=Math.max,z=Math.min;function K(e,t=0,n={}){let r,o,i,s,c,a,u=0,l=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function y(t){const n=r,i=o;return r=o=void 0,u=t,s=n?e.apply(i,n):e.apply(i),s}function p(e){const n=e-(a??0);return void 0===a||n>=t||n<0||f&&void 0!==i&&e-u>=i}function h(){const e=P();if(p(e))return g(e);c=setTimeout(h,function(e){const n=t-(e-(a??0));return f&&void 0!==i?z(n,i-(e-u)):n}(e))}function g(e){return c=void 0,d&&r?y(e):(r=o=void 0,s)}function b(...e){const n=P(),i=p(n);if(r=e,o=this,a=n,i){if(void 0===c)return function(e){return u=e,c=setTimeout(h,t),l?y(e):s}(a);if(f)return clearTimeout(c),c=setTimeout(h,t),y(a)}return void 0===c&&(c=setTimeout(h,t)),s}return t=R(t)||0,function(e){const t=typeof e;return null!==e&&("object"===t||"function"===t)}(n)&&(l=!!n.leading,f="maxWait"in n,i=f?M(R(n.maxWait)||0,t):void 0,d="trailing"in n?!!n.trailing:d),b.cancel=function(){void 0!==c&&clearTimeout(c),u=0,r=a=o=c=void 0},b.flush=function(){return void 0===c?s:g(P())},b}function P(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}function R(e){if("number"==typeof e)return e;if("symbol"==typeof e||void 0===e)return NaN;if("object"==typeof e&&null!==e){const t="function"==typeof e.valueOf?e.valueOf():e;e="object"==typeof t?t+"":t}return"string"!=typeof e?0===e?e:+e:(e=e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),/^0b[01]+$/i.test(e)?parseInt(e.slice(2),2):/^0o[0-7]+$/i.test(e)?parseInt(e.slice(2),8):/^[-+]0x[0-9a-f]+$/i.test(e)?NaN:+e)}function $(e,t){return t instanceof Map?{__type:"Map",entries:Array.from(t.entries())}:t instanceof Set?{__type:"Set",values:Array.from(t)}:t}function L(e,t){return function(e){return"object"==typeof e&&null!==e&&"__type"in e&&"Map"===e.__type}(t)?new Map(t.entries):function(e){return"object"==typeof e&&null!==e&&"__type"in e&&"Set"===e.__type}(t)?new Set(t.values):t}function V(e){if(!p(e))return e;const t={__proto__:null},n=Object.keys(e);for(let r=0;r<n.length;r++){const o=n[r],i=e[o];"function"!=typeof i&&(t[o]=i)}return t}var N={ms:e=>e,seconds:e=>1e3*e,minutes:e=>6e4*e,hours:e=>36e5*e,days:e=>864e5*e,weeks:e=>6048e5*e,infinity:1/0,zero:0},W=c?0:N.seconds(i?3:5);function U(e){return t=>{if("string"!=typeof t)throw new l("[createBaseStore]: Received non-string serialized state without a custom deserializer. Provide a deserializer on the store or storage adapter.");return function(e,t){try{return JSON.parse(e,t?L:void 0)}catch(e){throw u.error(new l("[createBaseStore]: Failed to deserialize persisted store data",e)),e}}(t,e)}}function H(e){return t=>function(e,t){try{return JSON.stringify(e,t?$:void 0)}catch(e){throw u.error(new l("[createBaseStore]: Failed to serialize store data",e)),e}}(t,e)}var Q=Object.freeze({shouldClear:!1});function B(e,t,n){if(!t||!e)return Q;const r=e.getFieldTimestampSnapshot();return function(e,t){const n=e.getSessionId(),r=e.getTimestamp();void 0!==n&&void 0!==r&&(t.syncMetadata={origin:n,timestamp:r})}(e,n),n.syncMetadata?r&&Object.keys(r).length>0?(n.syncMetadata.fields=r,{fieldSnapshot:r,shouldClear:!0}):(delete n.syncMetadata.fields,{fieldSnapshot:r,shouldClear:!1}):{fieldSnapshot:r,shouldClear:!1}}function J(e,t){e&&t.shouldClear&&t.fieldSnapshot&&Object.keys(t.fieldSnapshot).length&&e.clearFieldTimestamps(t.fieldSnapshot)}function G(e){return!!e&&!!e.getIsApplyingRemote()}var X=Object.freeze({QueryStore:Symbol("queryStore"),VirtualStore:Symbol("virtualStore")});function Y(e,...t){if(!0===t[1])return oe(t[0])?t[0](e):t[0];const n=oe(t[0])?t[0](e):t[0];return function(e){return Array.isArray(e)}(e)?n:{...e,...n}}function Z(e,t){te(e)?e.getState().reset(t?.clearQueryCache):function(e){return"destroy"in e}(e)&&e.destroy()}function ee(e){return"getSnapshot"in e}function te(e){return X.QueryStore in e}function ne(e){return!(!("persist"in e)||!e.persist)&&"string"==typeof e.persist.getOptions().name}function re(e){return X.VirtualStore in e}function oe(e){return"function"==typeof e}var[ie,se]=[0,1];function ce(e,t,n){if(!e)return!0;const r=e[ie],o=e[se];return!(t<r)&&(t>r||n>o)}function ae(e,t){return Object.prototype.hasOwnProperty.call(t,e)}function ue(e,t){if(!s)return!0;if(null===e||null===t)return e===t;const n=typeof e;return n===typeof t&&("object"!==n||Object.prototype.toString.call(e)===Object.prototype.toString.call(t))}function le(e){if(null===e)return"null";const t=typeof e;return"object"===t?Object.prototype.toString.call(e):t}function fe(e,n){j();const r=void 0!==n&&"string"==typeof n.storageKey,o=r?n.storageKey:void 0,i=n?.sync?function(e,t){if(!e)return null;if(!0===e){if(!t)throw new l("[createBaseStore]: sync: true requires a storageKey to inherit the key from");return{key:t}}if("string"==typeof e)return{key:e};const n=e,r=n.key??t;if(!r)throw new l("[createBaseStore]: sync requires either a key in the config or a storageKey to inherit from");return{...n,key:r}}(n.sync,o):void 0,s=r?n.storage??O().storage:void 0,c=i?function(e,t,n){const r=t.engine??O().syncEngine,o=function(e){let t,n,r,o=!1;return{isAsync:e,clearFieldTimestamps:function(e){if(e&&r){for(const t of Object.entries(e)){const e=t[0],n=t[1];r[e]===n&&delete r[e]}Object.keys(r).length||(r=void 0)}},getFieldTimestampSnapshot:function(){if(r)return{...r}},getIsApplyingRemote:()=>o,getSessionId:()=>t,getTimestamp:()=>n,mergeFieldTimestamps:function(e){if(r)for(const t of Object.entries(e)){const e=t[0],n=t[1],o=r[e];(void 0===o||n>o)&&(r[e]=n)}else r={...e}},onHydrationComplete:void 0,onHydrationFlushEnd:void 0,setIsApplyingRemote:e=>o=e,setSessionId:e=>t=e,setTimestamp:e=>n=e,setWithoutPersist:void 0}}(n);return{stateCreator:(i,s,c)=>{const a=new Map,f=[],d=[];let y=null,p=!1,h=!1,g=0,b=null,m=[],S=Promise.resolve(),v=!n;function w(e,t){if(o?.setSessionId&&o?.setTimestamp&&r.sessionId&&(o.setSessionId(r.sessionId),o.setTimestamp(e),o.mergeFieldTimestamps&&t.length>0)){const n={__proto__:null};for(const r of t)n[String(r)]=e;o.mergeFieldTimestamps(n)}}function q(e,t){if(p||!b)return t?i(e,t):i(e);const n=function(){const e=Date.now(),t=e>g?e:g+1;return g=t,t}();let o=[],s={__proto__:null};const c=r=>{const i=Y(r,e,t);for(const e of m)Object.is(i[e],r[e])||(o.push(e),s[e]=i[e]);return o.length&&w(n,o),i},u=t?i(c,!0):i(c);function l(){o.length&&function(e){const t=r.sessionId;for(const n of e.keys)a.set(n,[e.timestamp,t]);y&&h?y.publish?.({replace:e.replace,sessionId:t,timestamp:e.timestamp,values:e.values}):d.push(e)}({keys:o,replace:t??!1,values:s,timestamp:n})}return(f=u)&&"object"==typeof f&&"then"in f&&"function"==typeof f.then?u.finally(l):(l(),u);var f}const O=c.setState;c.setState=q;const j=e(q,s,c);if(m=t.fields??function(e){const t=[];for(const n of Object.entries(e)){if("function"==typeof n[1])continue;const e=n[0];t.push(e)}return t}(j),!m.length)return j;async function F(e){g=Math.max(g,e.timestamp);const n={__proto__:null},r=s(),i=e.timestamp;let c;if(e.replace)for(const t of m)ae(t,e.values)||ce(a.get(t),i,e.sessionId)&&(c??(c=[])).push(t);for(const o of m){if(!ae(o,e.values))continue;if(!b?.has(o))continue;if(!ce(a.get(o),i,e.sessionId))continue;const s=t.merge?.[o];if(s){const t=e.values[o],c=r[o];if(void 0!==t){const f=s(t,c,r,e.values),d=void 0!==c?c:t;if(!ue(f,d))return void u.error(new l(`[sync] Merge function for field "${String(o)}" returned ${le(f)} but expected ${le(d)}`));n[o]=f,a.set(o,[i,e.sessionId])}}else n[o]=e.values[o],a.set(o,[i,e.sessionId])}if(Object.keys(n).length>0||c?.length){p=!0,o&&o.setIsApplyingRemote(!0);try{if(e.replace){const e={...r};let t=!1;if(c?.length){t=!0;for(const t of c)delete e[t],a.delete(t)}for(const r in n){if(!Object.prototype.hasOwnProperty.call(n,r))continue;const o=n[r];void 0!==o&&(Object.is(e[r],o)||(t=!0),e[r]=o)}if(!t)return;await(o.setWithoutPersist??O)(e,!0)}else await(o.setWithoutPersist??O)(n)}finally{p=!1,o&&o.setIsApplyingRemote(!1)}}}function _(e){n?S=S.then(()=>F(e)):F(e)}if(b=new Set(m),y=r.register({apply:e=>{v?_(e):f.push(e)},fields:m,getState:s,key:t.key}),y?.onFirstSubscribe||y?.onLastUnsubscribe){let e=0;const t=c.subscribe;c.subscribe=(...n)=>{e||y.onFirstSubscribe?.(),e+=1;const r=1===n.length?t(n[0]):t(n[0],n[1],n[2]);return()=>{r(),e-=1,e||queueMicrotask(()=>{e||y.onLastUnsubscribe?.()})}}}function A(){h=!0,function(){if(y&&d.length){for(const e of d){const t=r.sessionId;for(const n of e.keys)a.set(n,[e.timestamp,t]);w(e.timestamp,e.keys),y.publish?.({replace:e.replace,sessionId:t,timestamp:e.timestamp,values:e.values})}d.length=0}}()}function C(){v=!0,function(){if(!f.length)return;const e=f.slice();f.length=0;for(const t of e)_(t)}()}return n?(o.onHydrationComplete=A,o.onHydrationFlushEnd=C):y.onHydrated?(y.onHydrated(A),C()):(A(),C()),j},syncContext:o}}(e,i,s?.async??!1):void 0,a=c?.stateCreator??e;if(!r)return x()(t.subscribeWithSelector(a),Object.is);const d=s?.async?function(e){let t,n,r,o=!1;return{hydrationPromise:()=>o?t?.promise??n??(n=Promise.resolve()):(t||(t=D()),t.promise),stateCreator:(n,i,s)=>{let c;return r=()=>{if(c?.length){for(const e of c)e[1]?s.setState(e[0],e[1]):s.setState(e[0]);c=void 0}},e((...e)=>o?!0===e[1]?n(e[0],e[1]):n(e[0]):(t||(t=D()),c||(c=[]),c.push(e),t.promise),i,s)},wrapOnRehydrateStorage:(e,n)=>i=>{const s=e?.(i);return(e,i)=>{o=!0,n?.onHydrationComplete?.(),r&&r(),n?.onHydrationFlushEnd?.(),i?t?.fail(f(i)):t?.complete(),s?.(e,i)}}}}(a):null,y=function(e,t,n){const r=t??e.storage??O().storage,o=(e.sync?void 0:e.persistThrottleMs??W)||void 0,i=e.version??0,s=r.async?function(e,t,n,r){const o=!(t.deserializer||t.serializer||e.deserializer||e.serializer),i="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),s=t.partialize??V,c=t.deserializer??e.deserializer??U(o),a=t.serializer??e.serializer??H(o);async function f(t,n){try{if(G(r))return;n.state,n.state=s(n.state);const o=B(r,i,n),c=a(n);try{await e.set(t,c),J(r,o)}catch(e){u.error(new l("[createBaseStore]: Failed to persist store data",e))}}catch(e){u.error(new l("[createBaseStore]: Failed to serialize persisted store data",e))}}const d=void 0!==n?K(f,n,{leading:!1,maxWait:n,trailing:!0}):function(e){let t,n=null;return function(...r){return t=r,n||(n=new Promise(r=>{queueMicrotask(async()=>{try{await e(...t)}finally{n=null,r()}})})),n}}(f);return{getItem:async t=>{const n=await e.get(t);return void 0===n?null:c(n)},setItem:async(e,t)=>{if(!r?.getIsApplyingRemote())return await d(e,t)},removeItem:async t=>{try{await e.delete(t)}catch(e){u.error(new l("[createBaseStore]: Failed to delete persisted store data",e))}}}}(r,e,o,n):function(e,t,n,r){const o=!(t.deserializer||t.serializer||e.deserializer||e.serializer),i="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),s=t.partialize??V,c=t.deserializer??e.deserializer??U(o),a=t.serializer??e.serializer??H(o);function f(t,n){try{if(G(r))return;n.state,n.state=s(n.state);const o=B(r,i,n),c=a(n);try{e.set(t,c),J(r,o)}catch(e){u.error(new l("[createBaseStore]: Failed to persist store data",e))}}catch(e){u.error(new l("[createBaseStore]: Failed to persist store data",e))}}const d=void 0!==n?K(f,n,{leading:!1,maxWait:n,trailing:!0}):f;return{getItem:t=>{const n=e.get(t);return void 0===n?null:c(n)},setItem:(e,t)=>{r?.getIsApplyingRemote()||d(e,t)},removeItem:t=>{try{e.delete(t)}catch(e){u.error(new l("[createBaseStore]: Failed to delete persisted store data",e))}}}}(r,e,o,n);return{persistStorage:s,version:i}}(n,s,c?.syncContext),p=d?d.wrapOnRehydrateStorage(n.onRehydrateStorage,c?.syncContext):n.onRehydrateStorage,h=d?(e,t,n)=>(c&&(c.syncContext.setWithoutPersist=n.setState),d.stateCreator(e,t,n)):a,g=x()(t.subscribeWithSelector(t.persist(h,function(e,t,n){const r={name:e.storageKey,onRehydrateStorage:n,storage:t.persistStorage,version:t.version};return void 0!==e.merge&&(r.merge=e.merge),void 0!==e.migrate&&(r.migrate=e.migrate),r}(n,y,p))),Object.is);return d?Object.assign(g,{persist:Object.assign(g.persist,{hydrationPromise:d.hydrationPromise})}):g}var de=!1,ye=!1,pe=new Map,he=new Map,ge=new Map,be=null,me=1/0;function Se(){return de}function ve(){return be}function we(){de||(de=!0,ye||(ye=!0,queueMicrotask(()=>{ye=!1,e.unstable_batchedUpdates(()=>{for(;he.size>0;){const e=me,t=ge.get(e);if(t){ge.delete(e);for(const e of t)he.delete(e);be=e;for(const e of t)e();if(be=null,ge.size>0){me=1/0;for(const e of ge.keys())e<me&&(me=e)}else me=1/0}else{me=1/0;for(const e of ge.keys())e<me&&(me=e)}}for(;pe.size>0;){const e=Array.from(pe.values());pe.clear();for(const t of e)t()}}),de=!1,be=null,he.clear(),ge.clear(),me=1/0})))}function qe(e,t){de&&pe.set(e,t)}var Oe=Symbol("stores.deriveProxy.unwrap");function je(e,t,n){const r=t.get(e);if(void 0!==r)return r;const o=function(e,t,n,r=[]){return e&&"object"==typeof e?Fe(e,r,t,n,new WeakSet,new WeakMap):(n(t,r,!0),e)}(ee(e)?e.getSnapshot():e.getState(),e,n);return t.set(e,o),o}function Fe(e,t,n,r,o,i){return new Proxy(e,{get(s,c,a){if(c===Oe)return r(n,t,!0),s;if(o.has(s))return Reflect.get(s,c,a);if("__proto__"===c||"symbol"==typeof c)return c===Symbol.iterator&&(r(n,t,!0),o.add(s)),Reflect.get(s,c,a);const u=Reflect.get(s,c,s),l=String(c),f=t.concat(l);if("function"==typeof u)return Object.prototype.hasOwnProperty.call(s,c)?function(...e){return r(n,f,!0,{method:l,args:e.length?e:void 0}),Reflect.apply(u,s,e)}:(r(n,t,!0),u.bind(e));const d=!!u&&"object"==typeof u;return r(n,f,!d),d?(i.has(u)||i.set(u,Fe(u,f,n,r,o,i)),i.get(u)):u},getOwnPropertyDescriptor:(e,i)=>(r(n,t,!0),o.add(e),Reflect.getOwnPropertyDescriptor(e,i)),has:(e,o)=>(r(n,t,!0),Reflect.has(e,o)),ownKeys:e=>(r(n,t,!0),o.add(e),Reflect.ownKeys(e))})}function _e(e,t){if(!e||"object"!=typeof e)return e;const n=function(e){const t=Reflect.get(e,Oe);return t&&"object"==typeof t?t:void 0}(e);return n||(Array.isArray(e)?function(e,t){const n=Ce(e,t);if(n)for(let t=0;t<e.length;t++)Ae(e,String(t),n)}(e,t):p(e)&&function(e,t){const n=Ce(e,t);if(n)for(const t of Reflect.ownKeys(e))Ae(e,t,n)}(e,t),e)}function Ae(e,t,n){const r=Reflect.getOwnPropertyDescriptor(e,t);if(!r||!("value"in r))return;const o=_e(r.value,n);o!==r.value&&(r.value=o,Reflect.defineProperty(e,t,r))}function Ce(e,t){const n=t??new WeakSet;return n.has(e)?null:(n.add(e),n)}function ke(e,t,n="s"){return 1===t?e:`${e}${n}`}var Ie=Object.freeze([]);function Te(){const e=new Map;return{buildProxySubscriptions(t,n,r,o){const i=new Set;for(const t of e)xe(t[1],t[0],[],0,i,r);!1!==o?.(i)&&function(e,t,n){for(const n of e){const e=n.invocation?Me(n.path,n.invocation):De(n.path);t(n.store,e,n.path)}n&&function(e){const t=e.size;console.log(`[📡 ${t} ${ke("Proxy Subscription",t)} 📡]:`,JSON.stringify(Array.from(e).map(e=>{const t="name"in(n=e.store)&&"string"==typeof n.name?n.name:"store";var n;const r=e.path.join(".");if(!e.invocation)return r?`$(${t}).${r}`:`$(${t})`;const o=e.invocation.args?.length??0;return`$(${t}).${r}${o?`(${o}_${ke("arg",o)})`:"()"}`}),null,2))}(e)}(i,t,n)},reset(){e.clear()},trackPath(t,n,r,o){let i=e.get(t);i||(i={__proto__:null},e.set(t,i)),Ee(i,n,0,r,o)}}}function Ee(e,t,n,r,o){if(n===t.length)return r&&(e.isLeaf=!0),void(o&&(e.invocation=o));e.children||(e.children={__proto__:null});const i=t[n];let s=e.children?.[i];s||(s={__proto__:null},e.children[i]=s),Ee(s,t,n+1,r,o)}function xe(e,t,n,r,o,i=2){const s=e.children;if(!s)return void o.add({store:t,path:n,invocation:e.invocation,isLeaf:e.isLeaf??!1});const c=Object.keys(s),a=c.length;if(0!==a)if(e.isLeaf||r>=i&&a>1){o.add({store:t,path:n,invocation:e.invocation,isLeaf:e.isLeaf??!1});for(const e of c){const c=s[e];c.invocation&&xe(c,t,[...n,e],r+1,o,i)}}else if(r<i&&a>1&&!e.isLeaf)for(const e of c)xe(s[e],t,[...n,e],r+1,o,i);else{if(1===a){const e=c[0];return void xe(s[e],t,[...n,e],r+1,o,i)}o.add({store:t,path:n,invocation:e.invocation,isLeaf:e.isLeaf??!1})}else o.add({store:t,path:n,invocation:e.invocation,isLeaf:e.isLeaf??!1})}function De(e){return t=>ze(t,e)}function Me(e,t){const n=e.slice(0,-1);return e=>{const r=ze(e,n),o=r&&"object"==typeof r?Reflect.get(r,t.method):void 0;return"function"==typeof o?Reflect.apply(o,r,t.args??Ie):void 0}}function ze(e,t){let n=e;for(const e of t){if(!n||"object"!=typeof n)return n;n=Reflect.get(n,e)}return n}function Ke(e,t=Object.is){return n=function(e,t=Object.is){const{debounceOptions:n,debugMode:r,equalityFn:o,keepAlive:i,lockDependencies:c}="function"==typeof(l=t)?{debounceOptions:void 0,debugMode:!1,equalityFn:l,keepAlive:!1,lockDependencies:!1}:{debounceOptions:l.debounce,debugMode:(s&&l.debugMode)??!1,equalityFn:l.equalityFn??Object.is,keepAlive:l.keepAlive??!1,lockDependencies:l.lockDependencies??!1},a=String($e+=1),u=new Set;var l;i&&u.add(Le);const f=new Set;let d,y,p=Pe,g=!1,b=!0,m=!0,S=0,v=!1,w=null,q=Pe;function O(e,t,n){return m&&u.size?t?(f.add(e.subscribe(t,D,n?{equalityFn:n,isDerivedStore:!0}:Re)),t(ee(e)?e.getSnapshot():e.getState())):(d||(d=new WeakMap),y||(y=Te()),je(e,d,y.trackPath)):(t??h)(ee(e)?e.getSnapshot():e.getState())}function j(e){for(const t of f)t(e);f.clear()}let F=!0;function _(){if(!b&&Ve(p))return p;b=!1,m&&j(!0);const t=p,n=Ve(t);p=function(t){F=!0;const n=p,i=e(t),s=y?_e(i):i;return Ve(n)&&o(n,s)?(r&&console.log("[🥷 Derive Complete 🥷]: No change detected"),F=!1,n):s}(O);const i=r&&(!n||"verbose"===r&&m);if(i){n?"verbose"===r&&console.log("[🌀 Rebuilding Subscriptions 🌀]: Created…"):console.log("[🌀 Initial Derive Complete 🌀]: Created…");const e=f.size;console.log(`[🎯 ${e} ${ke("Selector Subscription",e)} 🎯]`)}return y&&m&&(y.buildProxySubscriptions((e,t)=>{f.add(e.subscribe(t,D,Re))},i),d=void 0,y.reset(),c&&(y=void 0)),F&&n&&function(e,t){const n=function(){const e=u.has(Le)?u.size-1:u.size;return S>0&&S<e}(),o=!S||n,i=n||null!==ve()||Se()&&o;n&&we(),r&&console.log(`[📻 Derive Complete 📻]: Notifying ${u.size} ${ke("watcher",u.size)}`);for(const t of u){if("function"==typeof t||!t.isDerivedWatcher)continue;const n=t.selector(e);if(!t.equalityFn(t.currentSlice,n)){const e=t.currentSlice;t.currentSlice=n,t.listener(n,e)}}i?v||(v=!0,Ve(q)||(q=t),qe(a,C)):A(e,t)}(p,t),c&&(m=!1),p}function A(e,t){for(const n of u)if("function"==typeof n)n(e,t);else if(!n.isDerivedWatcher){const t=n.selector(e);if(!n.equalityFn(n.currentSlice,t)){const e=n.currentSlice;n.currentSlice=t,n.listener(t,e)}}}function C(){if(!u.size)return;if(b&&!S&&_(),!Ve(p))return;const e=Ve(q)?q:p;A(p,e),v=!1,q=Pe}const k=n?K(T,"number"==typeof n?n:n.delay,"number"==typeof n?{leading:!1,maxWait:n,trailing:!0}:n):void 0,I=k??(()=>{g||(g=!0,queueMicrotask(T))});function T(){g=!1,u.size?b&&_():z()}function E(e){e||k&&b?queueMicrotask(()=>{u.size||z()}):z()}function x(){T(),w=null}function D(){if(!b){if(b=!0,!k){if(S){we();const e=ve(),t=null===e?0:e+1;if(null!==w&&t<=w)return;return w=t,void function(e,t){if(!de)return;const n=t<0?0:0|t,r=he.get(e);if(void 0===r){he.set(e,n);let t=ge.get(n);return t||(t=new Set,ge.set(n,t)),t.add(e),void(n<me&&(me=n))}if(n>r){const t=ge.get(r);if(t&&(t.delete(e),0===t.size&&(ge.delete(r),r===me))){me=1/0;for(const e of ge.keys())e<me&&(me=e)}he.set(e,n);let o=ge.get(n);o||(o=new Set,ge.set(n,o)),o.add(e),n<me&&(me=n)}}(x,t)}if(Se())return void(v||(v=!0,Ve(p)&&(q=p),qe(a,C)))}w=null,I()}}function M(){return b||!Ve(p)?u.size>0?_():e(O):p}function z(e=!0){i&&e||(k?.cancel(),j(),u.clear(),S=0,y=void 0,d=void 0,m=!0,g=!1,b=!0,p=Pe,v=!1,q=Pe,w=null)}return{destroy:()=>z(!1),flushUpdates:function(){u.size&&(k?k.flush():b&&_())},getSnapshot:function(){if(!Ve(p)){u.add(Le);const e=_();return u.delete(Le),e}return g&&T(),p},getState:M,subscribe:function(...e){if(1===e.length){const t=e[0];return u.add(t),1!==u.size||Ve(p)||M(),()=>{u.delete(t),u.size||E(!1)}}const[t,n,r]=e,o=r?.equalityFn??Object.is,i=r?.isDerivedStore??!1,s={currentSlice:void 0,equalityFn:o,isDerivedWatcher:i,listener:n,selector:t};return u.add(s),s.currentSlice=t(M()),i&&(S+=1),r?.fireImmediately&&n(s.currentSlice,s.currentSlice),()=>{u.delete(s),i&&(S-=1),u.size||E(i)}},getInitialState:()=>{throw new Error("[createDerivedStore]: getInitialState() is not available on derived stores.")},setState:()=>{throw new Error("[createDerivedStore]: setState() is not available on derived stores.")}}}(e,t),Object.assign(function(e=h,t){return C(n.subscribe,n.getSnapshot,void 0,e,t)},n);var n}var Pe=Symbol(),Re=Object.freeze({equalityFn:Object.is,isDerivedStore:!0}),$e=0;function Le(){}function Ve(e){return e!==Pe}var Ne,We=class{constructor({disableAutoRefetching:e,initialEnabled:t}){this.count=0,this.enabled=!1,this.lastSubscriptionTime=null,this.fetchThrottleMs=null,this.onSubscribe=null,this.onLastUnsubscribe=null,this.enabled=t,e&&(this.fetchThrottleMs=N.seconds(5))}init({onSubscribe:e,onLastUnsubscribe:t}){this.onSubscribe=e,this.onLastUnsubscribe=t}get(){return{enabled:this.enabled,lastSubscriptionTime:this.lastSubscriptionTime,subscriptionCount:this.count}}setEnabled(e){this.enabled=e}subscribe(){const e=0===this.count,t=null!==this.fetchThrottleMs&&null!==this.lastSubscriptionTime&&!e&&Date.now()-this.lastSubscriptionTime<=this.fetchThrottleMs;return this.onSubscribe?.(this.enabled,e,t),this.count+=1,this.lastSubscriptionTime=Date.now(),e=>{const t=1===this.count;this.count=Math.max(this.count-1,0),t&&(this.onLastUnsubscribe?.(e),this.lastSubscriptionTime=null)}}};function Ue(e,t){const n=t?.baseDelay??N.seconds(5),r=t?.maxDelay??N.minutes(5);return Math.min(n*Math.pow(2,e),r)}var He={Error:"error",Idle:"idle",Loading:"loading",Success:"success"};function Qe(e,t){const n=Object.prototype.hasOwnProperty;function r(e,t){for(const n of e.keys())if(Qe(n,t))return n}let o,i,s;if(e===t)return!0;if(e&&t&&(o=e.constructor)===t.constructor){if(o===Date)return e.getTime()===t.getTime();if(o===RegExp)return e.toString()===t.toString();if(o===Array){if((i=e.length)===t.length)for(;i--&&Qe(e[i],t[i]););return-1===i}if(o===Set){if(e.size!==t.size)return!1;for(let n of e){if(s=n,s&&"object"==typeof s&&(s=r(t,s),!s))return!1;if(!t.has(s))return!1}return!0}if(o===Map){if(e.size!==t.size)return!1;for(let n of e){if(s=n[0],s&&"object"==typeof s&&(s=r(t,s),!s))return!1;if(!Qe(n[1],t.get(s)))return!1}return!0}if(o===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(o===DataView){if((i=e.byteLength)===t.byteLength)for(;i--&&e.getInt8(i)===t.getInt8(i););return-1===i}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){const n=e,r=t;if((i=n.byteLength)===r.byteLength)for(;i--&&n[i]===r[i];);return-1===i}if(!o||"object"==typeof e){i=0;for(const r in e){if(n.call(e,r)&&++i&&!n.call(t,r))return!1;if(!(r in t)||!Qe(e[r],t[r]))return!1}return Object.keys(t).length===i}}return e!=e&&t!=t}var Be=new WeakMap,Je=new WeakMap;function Ge(e,t=Xe,n=Qe){return function(e,t,n){let r=Je.get(e);r||(r=new Map,Je.set(e,r));let o=r.get(t);o||(o=new Map,r.set(t,o));const i=o.get(n);if(i)return i;const[s,c,a]=Ze(e,t,n),u=new Map,l=e=>new Proxy({__proto__:null},{get(t,n){if("value"===n){let t=c();const n=e.split(".");for(const e of n)e&&(t=t[e]);return t}const r="string"==typeof n?n:n.toString(),o=e?`${e}.${r}`:r,i=u.get(o);if(i)return i;const a=l(o);return Be.set(a,s),u.set(o,a),a},set(t,n,r){const o=e.split(".");return""===o[0]&&o.shift(),a(o,r),!0}}),f=l("");return s(()=>{}),Be.set(f,s),o.set(n,f),f}(e,t,n)}var Xe=e=>e,Ye=(e,t,n)=>{if(!t.length)return n;const[r,...o]=t,i=e[r],s=Ye(i,o,n);if(Qe(i,s))return e;const c=Array.isArray(e)?e.slice():{...e};return c[r]=s,c},Ze=(e,t,n)=>{const r=new Set,o=ee(e);let i,s=t(o?e.getSnapshot():e.getState());return[c=>(r.size||(i=e.subscribe(t,e=>{s=e,r.forEach(e=>e())},{equalityFn:n,isDerivedStore:o})),r.add(c),()=>{r.delete(c),!r.size&&i&&(i(),i=void 0)}),()=>(r.size||(s=t(e.getState())),s),(n,r)=>{if(t!==Xe)throw new Error("Cannot set a value with a selector");e.setState(e=>Ye(e,n,r),!0)}]};function et(e){return Be.get(e)}var tt={error:!0,lastFetchedAt:!0,queryCache:!0,queryKey:!0,status:!0,enabled:!1,fetch:!1,getCacheEntry:!1,getData:!1,getStatus:!1,isDataExpired:!1,isStale:!1,reset:!1},nt=Object.freeze({force:!0}),rt=Object.freeze({once:!0}),ot=Object.freeze({updateQueryKey:!0});function it(e){return JSON.stringify(st(e))}function st(e){return"object"!=typeof e||null===e?e:Object.keys(e).sort().reduce((t,n)=>{const r=e[n];return t[n]=p(r)?st(r):r,t},{__proto__:null})}function ct(e,t,n,r){return r?ut(r,n)?r:{...at(e,t),...r}:at(e,t)}function at(e,t){const n=Object.assign({__proto__:null},t?.params);for(const t in e?.params){const r=e.params[t];r&&(n[t]=r.value)}return n}function ut(e,t){if(!e)return!1;for(const n of t)if(!(n in e))return!1;return!0}function lt(e){return"function"==typeof e}function ft(e){return!lt(e)}function dt(e,t){return n=>{const r={...n},o={__proto__:null};for(const e in r)y(r,e)&&e in tt&&(tt[e]&&(o[e]=r[e]),delete r[e]);return{...t?t(r):V(r),...yt(e,null,o)}}}function yt(e,t,n){if(!n.queryCache)return n;const r=Date.now(),o=t??(e&&n.queryKey||null),i={__proto__:null};let s=!1;for(const e in n.queryCache){if(!y(n.queryCache,e))continue;const c=n.queryCache[e];c&&(r-(c.lastFetchedAt??c.errorInfo.lastFailedAt)<c.cacheTime||e===o)?!t&&c.errorInfo&&c.errorInfo.retryCount>0?(i[e]={...c,errorInfo:{...c.errorInfo,retryCount:0}},s=!0):i[e]=c:s=!0}return s?{...n,queryCache:i}:n}function pt(){return Object.create(null)}function ht(e,t,n){return new l(`[createQueryStore: ${e}]: ${t} failed`,n)}function gt(e){return function(t,n){return n?e().setState(t,n):e().setState(t)}}var bt=Symbol(),mt=Object.freeze({debugMode:!1,enabled:!0,equalityFn:Object.is,fireImmediately:!1}),St=Object.freeze({fireImmediately:!1,forceResubscribe:!1});function vt(e,t,n=St){if(t.current.isActive){if(!n?.forceResubscribe)return;t.current.unsubscribe()}t.current.options.debugMode&&console.log("[📡 useListen 📡] Attaching listener"),t.current.isActive=!0,t.current.resubscribe=(n=St)=>vt(e,t,n);const r=e.subscribe(e=>t.current.selector(e),(e,n)=>t.current.react(e,n,()=>{r(),t.current.isActive=!1}),n.fireImmediately?{...t.current.options,fireImmediately:!0}:t.current.options);t.current.unsubscribe=()=>{t.current.isActive&&(r(),t.current.isActive=!1)}}function wt(e){return"function"==typeof e?{equalityFn:e}:e??mt}var qt=Symbol();function Ot(e,t){return function(...n){const r=e.getState()[t];if("function"==typeof r)return r(...n);throw new Error(`[createVirtualStoreAction]: Method ${String(t)} is not a function`)}}function jt(e,t){return"function"==typeof e[t]}exports.QueryStatuses=He,exports.StoresError=l,exports.applyStateUpdate=Y,exports.configureStores=function(e){var t;s&&function(){if(q)throw new Error("[stores]: configureStores() called after first store creation. Call it earlier before creating any stores.")}(),e.logger&&(t=e.logger,u=t),m??(m=function(e){return e?.queryStoreDefaults?{queryStoreDefaults:e.queryStoreDefaults}:void 0}(e)),S??(S=F(e))},exports.createBaseStore=fe,exports.createDerivedStore=Ke,exports.createQueryStore=function(e,t,n){j();const r="function"==typeof t?t:pt,o="object"==typeof t?t:n,i=o&&"storageKey"in o?o:void 0,a=Ne??(Ne=function(){const e={abortInterruptedFetches:!0,cacheTime:N.days(7),debugMode:!1,disableAutoRefetching:!1,keepPreviousData:!1,maxRetries:5,minStaleTime:!1,paramChangeThrottle:!1,retryDelay:Ue,staleTime:N.minutes(2),suppressStaleTimeWarning:!1},t=function(){if(m)return m}()?.queryStoreDefaults;return t?{...e,...t}:e}()),d=a.minStaleTime,{fetcher:p,onError:h,onFetched:g,setData:b,transform:S,abortInterruptedFetches:v=a.abortInterruptedFetches,cacheTime:w=a.cacheTime,debugMode:q=a.debugMode,disableAutoRefetching:O=a.disableAutoRefetching,disableCache:F=!1,enabled:_=!0,keepPreviousData:A=a.keepPreviousData,maxRetries:C=a.maxRetries,paramChangeThrottle:k=a.paramChangeThrottle,params:I,retryDelay:T=a.retryDelay,staleTime:E=a.staleTime,suppressStaleTimeWarning:x=a.suppressStaleTimeWarning}=e;let D="function"==typeof E?a.staleTime:E;s&&!1!==d&&!O&&!x&&D<d&&console.warn(`[createQueryStore${i?.storageKey?`: ${i.storageKey}`:""}] ❌ Stale times under ${d/1e3} seconds are not recommended. Provided staleTime: ${D/1e3} seconds`);const M=new Error("[createQueryStore: AbortError] Fetch interrupted"),z="function"==typeof w,P=s&&q,R=e.params?Object.keys(e.params):[];let $=null,L=null,V=null,W=[],U=!1,H=!1,Q=null,B=null,J=null,G=null,Y=null;const Z={enabled:"function"!=typeof _&&_,error:null,lastFetchedAt:null,queryCache:{},queryKey:"",status:He.Idle},ee=new We({disableAutoRefetching:O,initialEnabled:Z.enabled});function te(){Q&&(B=null,Q.abort(),Q=null)}function ne(t,n,o){const s=o.setState;function c(e){const t="function"==typeof e;if(t||void 0!==e.enabled){let n;const r=s(r=>{const o=t?e(r):e,i=void 0!==o.enabled?o.enabled:r.enabled;return i!==r.enabled&&(n=()=>function(e,t){e!==t&&Y!==t&&(Y=t,ee.setEnabled(t),t?queueMicrotask(()=>d.fetch(void 0,ot)):(J||v)&&(v&&te(),J&&(clearTimeout(J),J=null)))}(r.enabled,i)),o});return n?.(),r}return s(e)}function a(e,t){if(O||t?.skipStoreUpdates)return;if(D<=0||D===1/0)return;J&&(clearTimeout(J),J=null);const r=it(e),o=n(),i=(F?G===r&&o.lastFetchedAt:o.queryCache[r]?.lastFetchedAt)||null,s=i?D-(Date.now()-i):D;J=setTimeout(()=>{const t=ee.get();t.enabled&&t.subscriptionCount>0&&d.fetch(e,nt,!0)},s)}o.setState=c,ee.init({onSubscribe:(r,o,i)=>{if(L||$||!I&&"function"!=typeof e.enabled&&"function"!=typeof e.staleTime){if(r)if(o){const e=at($,L),r=it(e),o=n();o.queryKey!==r&&t({queryKey:r}),o.isStale()?d.fetch(e,void 0,!0):a(e,void 0)}else O&&!i&&d.fetch(void 0,void 0,!0)}else U=!0},onLastUnsubscribe:e=>{J&&(clearTimeout(J),J=null),v&&!e&&te()}});const d={...r(c,n,o),...Z,async fetch(e,r,o=!1){const s=ee.get();if(!r?.force&&!r?.skipStoreUpdates&&!s.enabled)return null;const y=n(),m=y.error,q=y.queryKey,O=y.status===He.Loading,j=ct($,L,R,e),_=it(j);if(O&&B?.promise&&B.key===_)return P&&console.log("[🔄 Using Active Fetch 🔄] for params:",JSON.stringify(j)),B.promise;const k=r?.staleTime??D,I=!!r?.skipStoreUpdates,E="boolean"==typeof r?.updateQueryKey?r.updateQueryKey:!!o&&A,x=(o||q===_||E)&&!I;if(v&&x&&te(),!r?.force){const e=y.lastFetchedAt,n=y.queryCache[_],o=n?.lastFetchedAt,i=n?.errorInfo,c=i&&i.retryCount>=C,u=(F?G===_&&e:o)||null;if(u&&!(Date.now()-u>=k)&&(!i||c||I))return x&&!J&&s.subscriptionCount>0&&0!==D&&D!==1/0&&a(j,r),E&&t(e=>e.queryKey!==_?{queryKey:_}:e),P&&console.log("[💾 Returning Cached Data 💾] for params:",JSON.stringify(j)),n?.data??null}x&&(J&&(clearTimeout(J),J=null),!m&&O||t({error:null,status:He.Loading}),B={key:_});const K=r?.cacheTime??(z?w(j):w);async function V(){const s=i?.storageKey||_;try{P&&(o||!e||ut(e,R)?console.log("[🔄 Fetching 🔄] for params:",JSON.stringify(j)):console.log("[🔄 Fetching with Partial Params 🔄]\n","- Provided params:",`${JSON.stringify(e)}\n`,"- Filled in params:",`${JSON.stringify(Object.fromEntries(Object.keys(j).filter(t=>!(t in e)).map(e=>[e,j[e]])))}`));const n=await(v&&x?async function(e){const t=new AbortController;Q=t;try{return await new Promise((n,r)=>{t.signal.addEventListener("abort",()=>r(M),rt),Promise.resolve(p(e,t)).then(n,r)})}finally{Q===t&&(Q=null)}}(j):p(j,null)),i=Date.now();let l;P&&console.log("[✅ Fetch Successful ✅] for params:",JSON.stringify(j));try{l=function(e,t,n){return n?n(e,t):e}(n,j,S)}catch(e){throw ht(s,"transform",e)}if(I)return P&&console.log("[🥷 Successful Parallel Fetch 🥷] for params:",JSON.stringify(j)),"withCache"===r.skipStoreUpdates&&t(e=>{if(!b)return F?e:{queryCache:{...e.queryCache,[_]:{cacheTime:K,data:l,errorInfo:null,lastFetchedAt:i}}};let t=e;const n=t.queryCache[_];try{b({data:l,params:j,queryKey:_,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}})}catch(e){throw ht(s,"setData",e)}return!F&&Object.is(n,t.queryCache[_])&&(t={...t,queryCache:{...t.queryCache,[_]:{cacheTime:K,data:null,errorInfo:null,lastFetchedAt:i}}}),t}),l;if((b?c:t)(e=>{let t={...e,error:null,lastFetchedAt:i,queryKey:E?_:e.queryKey,status:He.Success};if(b||F){if(b){P&&console.log("[💾 Setting Data 💾] for params:",JSON.stringify(j));const e=t.queryCache[_];try{b({data:l,params:j,queryKey:_,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}})}catch(e){throw ht(s,"setData",e)}!F&&Object.is(e,t.queryCache[_])&&(t.queryCache={...t.queryCache,[_]:{cacheTime:K,data:null,errorInfo:null,lastFetchedAt:i}})}}else P&&console.log("[💾 Setting Cache 💾] for params:",JSON.stringify(j),"| Has previous data?:",!!t.queryCache[_]?.data),t.queryCache={...t.queryCache,[_]:{cacheTime:K,data:l,errorInfo:null,lastFetchedAt:i}};return F||w===1/0?t:yt(A,_,t)}),x&&(G=_,a(j,r)),g)try{g({data:l,fetch:d.fetch,params:j,set:c})}catch(e){u.error(ht(s,"onFetched callback",e))}return l??null}catch(i){if(i===M)return P&&console.log("[❌ Fetch Aborted ❌] for params:",JSON.stringify(j)),null;const c=!o&&!0===r?.throwOnError,a=f(i);if(a instanceof l&&u.error(a),!x){if(c)throw a;return null}const y=F?void 0:n().queryCache[_],p=y?.errorInfo?.retryCount??0,g=p+1;try{h?.(a,p)}catch(e){u.error(ht(s,"onError callback",e))}if(p<C){if(ee.get().subscriptionCount>0){const t="function"==typeof T?T(g,a):T;t!==1/0&&(J&&clearTimeout(J),J=setTimeout(()=>{const t=ee.get();t.enabled&&t.subscriptionCount>0&&d.fetch(e,nt,!0)},t))}t(e=>({error:a,queryCache:{...e.queryCache,[_]:{cacheTime:y?.cacheTime??K,data:y?.data??null,lastFetchedAt:y?.lastFetchedAt??null,errorInfo:{error:a,lastFailedAt:Date.now(),retryCount:g}}},queryKey:E?_:e.queryKey,status:He.Error}))}else t(e=>({error:a,queryCache:{...e.queryCache,[_]:{cacheTime:y?.cacheTime??K,data:y?.data??null,lastFetchedAt:y?.lastFetchedAt??null,errorInfo:{error:a,lastFailedAt:Date.now(),retryCount:C}}},queryKey:E?_:e.queryKey,status:He.Error}));if(c)throw a;return null}finally{x&&(B=null)}}return x?(B={key:_,promise:V()}).promise:V()},getCacheEntry(e){if(F)return null;const t=n(),r=e?"string"==typeof e?e:it(ct($,L,R,e)):t.queryKey;return t.queryCache[r]??null},getData(e){if(F)return null;const t=n().getCacheEntry(e);return t&&null!==t.data?A?t.data:t.lastFetchedAt&&Date.now()-t.lastFetchedAt>=t.cacheTime?null:t.data:null},getStatus:function(e){const t=n(),r=t.status;switch(e){case"isIdle":return r===He.Idle;case"isLoading":return r===He.Loading;case"isError":case"isInitialLoad":case"isSuccess":case void 0:{const n=t.queryKey,o=t.queryCache[n],i=F?r===He.Error:"number"==typeof o?.errorInfo?.lastFailedAt;if("isError"===e)return i;const s=null!==((F?G===n&&t.lastFetchedAt:o?.lastFetchedAt)||null),c=!s&&!i&&t.enabled;if("isInitialLoad"===e)return c;const a=s&&!i;return"isSuccess"===e?a:{isError:i,isIdle:r===He.Idle,isLoading:r===He.Loading,isInitialLoad:c,isSuccess:a}}}},isDataExpired(e){const t=n(),r=t.queryCache[t.queryKey],o=t.queryKey,i=t.lastFetchedAt,s=(F?G===o&&i:r?.lastFetchedAt)||null;if(!s)return!0;const c=e??r?.cacheTime;return void 0===c||Date.now()-s>=c},isStale(e){const t=n(),r=t.queryKey,o=(F?G===r&&t.lastFetchedAt:t.queryCache[r]?.lastFetchedAt)||null;if(!o)return!0;const i=e??D;return Date.now()-o>=i},reset(e=!1){for(const e of W)e();W=[],$=null,L=null,V=null,te(),J&&(clearTimeout(J),J=null),B=null,G=null,e&&t(Z)}},y=o.subscribe;return o.subscribe=(...e)=>{const t=H?()=>{}:ee.subscribe(),n=1===e.length?y(e[0]):y(e[0],e[1],e[2]);return e=>{t(e),n()}},d}const re=i?.storageKey?fe(ne,(oe=i,void 0===(ie={partialize:dt(A,i.partialize)})?Object.assign({__proto__:null},oe):Object.assign({__proto__:null},oe,ie))):o&&!("storageKey"in o)?fe(ne,o):fe(ne);var oe,ie;const se=re.getState(),ce=se.error,ae=se.enabled,ue=se.queryKey,le=se.fetch;let de;if(ue&&!ce&&(G=ue),H=!0,I||"function"==typeof e.enabled){const{directValues:e,enabledAttachVal:t,enabledDirectValue:n,attachVals:r}=function(e,t,n){const r={__proto__:null},o={__proto__:null},i={__proto__:null};for(const e in t){if(!y(t,e))continue;const s=t[e];if(lt(s)){const t=s(Ge,n);r[e]=t,i[e]=t.value}else ft(s)&&(o[e]=s,i[e]=s)}let s,c=null,a=null;if(lt(e)){const t=e(Ge,n);s=t.value,c=t}else s=e,a=e;return{attachVals:r,directValues:o,enabledAttachVal:c,enabledDirectValue:a,resolvedEnabled:s,resolvedParams:i}}(_,I,re);$={enabled:t,params:r},L={enabled:n,params:e}}"function"==typeof e.staleTime&&(V=e.staleTime(Ge,re),D=V.value);const ye=Object.freeze({updateQueryKey:A}),pe=function(){let e,t=!1;return function(...n){e=n,t||(t=!0,queueMicrotask(()=>{t=!1,(e=>{le(e??at($,L),ye)})(...e)}))}}();function he(){let e;if(!A){e=at($,L);const t=it(e);re.setState({queryKey:t})}pe(e)}const ge=c||!k?he:K(he,"number"==typeof k?k:k.delay,"number"==typeof k?{leading:!1,maxWait:k,trailing:!0}:k);for(const e in $?.params){const t=$.params[e];if(!t)continue;const n=et(t);if(P&&console.log("[🌀 Param Subscription 🌀] Subscribed to param:",e),n){let r=t.value;const o=n(()=>{const n=t.value;Qe(r,n)||(P&&console.log("[🌀 Param Change 🌀] -",e,"- [Old]:",`${r?.toString()},`,"[New]:",n?.toString()),r=n,ge())});W.push(o)}}if(V){const e=et(V);if(e){const t=V;let n=t.value;P&&console.log("[🌀 StaleTime Subscription 🌀] Initial value:",n);const r=e(()=>{const e=t.value;e!==n&&(P&&console.log("[🌀 StaleTime Change 🌀] - [Old]:",`${n},`,"[New]:",e),n=e,D=e,le())});W.push(r)}}if($?.enabled){const e=$.enabled,t=et(e);if(t){let n=e.value;ae!==n&&((de??(de={})).enabled=n),n&&ee.setEnabled(n),P&&console.log("[🌀 Enabled Subscription 🌀] Initial value:",n);const r=t(()=>{const t=e.value;t!==n&&(P&&console.log("[🌀 Enabled Change 🌀] - [Old]:",`${n},`,"[New]:",t),n=t,re.setState({enabled:t}))});W.push(r)}}else ae!==Z.enabled&&((de??(de={})).enabled=Z.enabled);const be=it(at($,L));return be!==ue&&((de??(de={})).queryKey=be),de&&re.setState(de),H=!1,U&&queueMicrotask(ge),me=re,Se=X.QueryStore,Object.assign(me,{[Se]:!0});var me,Se},exports.createStoreActions=function(e,t){const n=function(e){const t=e.getState(),n={__proto__:null},r=n;if(s&&("object"!=typeof t||null===t))throw new Error("[createStoreActions]: State is not an object");if(re(e))for(const n in t)jt(t,n)&&(r[n]=Ot(e,n));else for(const e in t)jt(t,e)&&(r[e]=t[e]);return n}(e);return t?Object.assign(n,t):n},exports.createVirtualStore=function(e,t,n){const r="function"==typeof t,o=r?t:void 0,i=r?n:t,s=new Set,c=Ke(e,{debugMode:i?.debugMode??!1,equalityFn:function(e,t){const n=Object.is(e,t);return n||(function(e,t){for(const n of s){n.unsubscribe();const r=n.args;if(1===r.length){const o=r[0],i=e.getState(),s=t.getState(),c=t.subscribe(o);n.unsubscribe=c,Object.is(s,i)||o(s,i);continue}const o=r[0],i=r[1];let s=r[2];s?.fireImmediately&&(s={...s,fireImmediately:!1});const c=o(e.getState()),a=o(t.getState()),u=t.subscribe(o,i,s);n.unsubscribe=u,(s?.equalityFn??Object.is)(c,a)||i(a,c)}}(e,t),Z(e)),n},keepAlive:!0,lockDependencies:i?.lockDependencies??!0});return Object.assign(function(e,t){const n=c();return e?n(e,t):n()},{[X.VirtualStore]:!0,destroy:c.destroy,getInitialState:()=>c.getState().getInitialState(),getState:()=>c.getState().getState(),persist:(a=c.getState,{clearStorage:()=>a().persist?.clearStorage(),getOptions:()=>a().persist?.getOptions()??{},hasHydrated:()=>a().persist?.hasHydrated()??!0,hydrationPromise:()=>a().persist?.hydrationPromise?.()??Promise.resolve(),onFinishHydration:e=>a().persist?.onFinishHydration(e)??g,onHydrate:e=>a().persist?.onHydrate(e)??g,rehydrate:()=>a().persist?.rehydrate(),setOptions:e=>a().persist?.setOptions(e)}),setState:gt(c.getState),subscribe:function(...e){const t={args:e,unsubscribe:1===e.length?c.getState().subscribe(e[0]):c.getState().subscribe(e[0],e[1],e[2])};return s.add(t),()=>{t.unsubscribe(),s.delete(t)}}},o?.(c.getState));var a},exports.deepEqual=function e(t,n){if("object"!=typeof t||null==t||"object"!=typeof n||null==n)return t===n;if(Object.is(t,n))return!0;const r=Object.keys(t);if(r.length!==Object.keys(n).length)return!1;for(const o of r)if(!(o in n)||!e(t[o],n[o]))return!1;return!0},exports.defaultRetryDelay=Ue,exports.destroyStore=Z,exports.destroyStores=function(e,t){for(const n of Array.isArray(e)?e:Object.values(e))n&&!t?.skipDestroy?.(n)&&Z(n,t)},exports.getQueryKey=it,exports.getStoreName=function(e){return ne(e)?e.persist.getOptions().name??e.name:e.name},exports.hasGetSnapshot=ee,exports.identity=h,exports.isDerivedStore=function(e){return"flushUpdates"in e},exports.isPersistedStore=ne,exports.isQueryStore=te,exports.isVirtualStore=re,exports.nullObject=function(){return{__proto__:null}},exports.parseQueryKey=function(e){return JSON.parse(e)},exports.replacer=$,exports.reviver=L,exports.shallowEqual=function(e,t){if("object"!=typeof e||null==e||"object"!=typeof t||null==t)return e===t;if(Object.is(e,t))return!0;const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.is(e[r],t[r]))return!1;return!0},exports.time=N,exports.useListen=function(e,t,n,o=mt){const i=function(){const e=r.useRef(bt);return e.current===bt&&(e.current=function(e,t,n){return{selector:e,react:t,isActive:!1,options:wt(n),resubscribe:()=>{},unsubscribe:()=>{}}}(t,n,o)),e}(),s=function(e){return"function"==typeof e?mt.enabled:e?.enabled??mt.enabled}(o);return i.current.react=n,i.current.selector=t,function(e,t){"function"==typeof t?e.current.options.equalityFn=t:t&&(e.current.options=t??mt)}(i,o),r.useLayoutEffect(()=>{if(s)return vt(e,i),()=>function(e){e.current.options.debugMode&&console.log("[🗑️ useListen 🗑️] Detaching listener"),e.current.resubscribe=()=>{},e.current.unsubscribe(),e.current.unsubscribe=()=>{},e.current.isActive=!1}(i)},[s,e]),i},exports.useStableValue=function(e){const t=r.useRef(qt);return t.current===qt&&(t.current=e()),t.current};
1
+ var e=require("react"),t=require("react-native"),n=(e=>"undefined"!=typeof require?require:"undefined"!=typeof Proxy?new Proxy(e,{get:(e,t)=>("undefined"!=typeof require?require:e)[t]}):e)(function(e){if("undefined"!=typeof require)return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),r="ios"===t.Platform.OS;t.Platform.OS;var o="development"===process.env.NODE_ENV,i="test"===process.env.NODE_ENV;function s(e){return e}function c(){return{__proto__:null}}function a(){}Object.freeze(Object.create(null));var u=Symbol("empty selection"),l=Object.is;function f(e,t){return n=>(function(e){e.committedEqualityFn=e.equalityFn,e.committedSelector=e.selector,e.committedSource=e.source,e.committedValue=e.value===u?d(e):e.value}(e),t(r=>{e.latestSnapshot=r,e.latestSource=t;const o=e.committedValue;if(o===u||e.committedSource!==t)return void n();const i=e.committedSelector,s=e.committedEqualityFn;if(e.selector===i&&e.equalityFn===s){const t=i(r);if(s===l?l(o,t):s(o,t))return;return e.committedValue=t,e.value=t,e.valueEqualityFn=s,e.valueSelector=i,e.valueSnapshot=r,void n()}if(e.source!==t)return void n();const c=e.value;if(c===u)return;const a=e.selector(r),f=e.equalityFn(c,a);e.committedEqualityFn=e.equalityFn,e.committedSelector=e.selector,e.committedValue=p(e,r,f?c:a),f||n()}))}function d(e){const t=function(e){if(e.latestSource===e.source&&e.latestSnapshot!==u)return e.latestSnapshot;const t=e.getStoreSnapshot();return e.latestSnapshot=t,e.latestSource=e.source,t}(e);return y(e,t)}function y(e,t){const n=e.value;if(n!==u&&l(e.valueSnapshot,t)&&e.valueSelector===e.selector&&e.valueEqualityFn===e.equalityFn)return n;const r=e.selector(t);if(n!==u&&(e.equalityFn===l?l(n,r):e.equalityFn(n,r)))return p(e,t,n);const o=e.committedValue;return o!==u&&o!==n&&e.committedSource===e.source&&(e.equalityFn===l?l(o,r):e.equalityFn(o,r))?p(e,t,o):p(e,t,r)}function p(e,t,n){return e.value=n,e.valueEqualityFn=e.equalityFn,e.valueSelector=e.selector,e.valueSnapshot=t,n}function h(t,n,r,o){return Object.assign(function(i,s){return function(t,n,r,o,i=l){const s=e.useRef(null);let c=t,p=n,h=r;if(o){let e=s.current;null===e&&(e=function(e,t,n,r,o){const i={committedEqualityFn:o,committedSelector:r,committedSource:e,committedValue:u,equalityFn:o,getSelectedServerSnapshot:()=>function(e){return y(e,(e.getServerStoreSnapshot??e.getStoreSnapshot)())}(i),getSelectedSnapshot:()=>d(i),getServerStoreSnapshot:n,getStoreSnapshot:t,latestSnapshot:u,latestSource:u,selector:r,selectedSource:e,selectedSubscribe:()=>a,source:e,value:u,valueEqualityFn:o,valueSelector:r,valueSnapshot:u};return i.selectedSubscribe=f(i,e),i}(t,n,r,o,i),s.current=e),function(e,t,n,r,o,i){e.source===t&&e.getStoreSnapshot===n||(e.latestSnapshot=u),e.source=t,e.getStoreSnapshot=n,e.getServerStoreSnapshot=r,e.selector=o,e.equalityFn=i,e.selectedSource!==t&&(e.selectedSource=t,e.selectedSubscribe=f(e,t))}(e,t,n,r,o,i),c=e.selectedSubscribe,p=e.getSelectedSnapshot,h=void 0===r?void 0:e.getSelectedServerSnapshot}const g=e.useSyncExternalStore(c,p,h);return e.useDebugValue(g),g}(t.subscribe,n,r,i,s??o)},t)}function g(e){let t;function r(){if(t)return t;try{const r=function(e){const{createMMKV:t,MMKV:r}=n("react-native-mmkv");if("function"==typeof t)return t({id:e});if("function"==typeof r)return new r({id:e});throw new Error("[stores]: react-native-mmkv module does not export MMKV/createMMKV.")}(e);let o;if("function"==typeof r.delete?o=r.delete.bind(r):"function"==typeof r.remove&&(o=r.remove.bind(r)),"function"!=typeof o)throw new Error("[stores]: Storage instance does not conform to expected interface");const i={clearAll:r.clearAll.bind(r),contains:r.contains.bind(r),delete:o,get:r.getString.bind(r),getAllKeys:r.getAllKeys.bind(r),set:r.set.bind(r)};t=i}catch(e){throw new Error("[stores] react-native-mmkv could not be loaded.\n\nPersisted stores require a storage backend. Either:\n - Install MMKV (the default): yarn add react-native-mmkv\n - Or provide a custom adapter via configureStores()\n"+(e instanceof Error?`\n${e.message}`:""))}return function(e){if(!e||"function"!=typeof e.get||"function"!=typeof e.set||"function"!=typeof e.delete||"function"!=typeof e.clearAll)throw new Error("[stores]: Storage instance does not conform to expected interface")}(t),t}return{clearAll:()=>r().clearAll(),contains:e=>r().contains(e),delete:e=>r().delete(e),get:e=>r().get(e),getAllKeys:()=>r().getAllKeys(),set:(e,t)=>r().set(e,t)}}var b={debug:(e,t)=>{o&&console.debug(e,t)},error:(e,t)=>{o&&!i&&console.error(e,t)},info:(e,t)=>{o&&console.info(e,t)},warn:(e,t)=>{o&&console.warn(e,t)}},m=Object.prototype.hasOwnProperty;function S(e,t){return m.call(e,t)}function v(e){if("object"!=typeof e||null===e)return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function w(e){return null!==e&&"object"==typeof e&&!Array.isArray(e)}var O=class extends Error{constructor(e,t){super(e),this.name="StoresError",void 0!==t&&Object.defineProperty(this,"cause",{configurable:!0,value:t,writable:!0})}};function q(e){return e instanceof Error?e:new Error(String(e))}var j,F,_,k=class{destroy(){}publish(){}},A=class{constructor(){this.sessionId="noop"}register(e){return new k}},I=!1;function C(){return _??(_=z(void 0))}function x(){I=!0}function z(e){return{storage:e?.storage??g(e?.storageKeyPrefix??"stores:"),syncEngine:e?.syncEngine??(j||(j=new A),j)}}var E,T={Error:"error",Idle:"idle",Loading:"loading",Success:"success"},P={ms:e=>e,seconds:e=>1e3*e,minutes:e=>6e4*e,hours:e=>36e5*e,days:e=>864e5*e,weeks:e=>6048e5*e,infinity:1/0,zero:0};function M(e,t){const n=t?.baseDelay??P.seconds(5),r=t?.maxDelay??P.minutes(5);return Math.min(n*Math.pow(2,e),r)}function D(e,t){return!0===t[1]?e(t[0],!0):e(t[0])}function K(e,t,n){if(!0===n)return R(t)?t(e):t;const r=R(t)?t(e):t;return Object.is(r,e)?e:w(e)&&w(r)?{...e,...r}:r}function R(e){return"function"==typeof e}function $(e,t){return t instanceof Map?{__type:"Map",entries:Array.from(t.entries())}:t instanceof Set?{__type:"Set",values:Array.from(t)}:t}function L(e,t){return function(e){return"object"==typeof e&&null!==e&&"__type"in e&&"Map"===e.__type}(t)?new Map(t.entries):function(e){return"object"==typeof e&&null!==e&&"__type"in e&&"Set"===e.__type}(t)?new Set(t.values):t}var N=Object.freeze({QueryStore:Symbol("queryStore"),VirtualStore:Symbol("virtualStore")});function V(e,t){W(e)?e.getState().reset(t?.clearQueryCache):function(e){return"destroy"in e}(e)&&e.destroy()}function H(e){return"getSnapshot"in e}function W(e){return N.QueryStore in e}function U(e){return!(!("persist"in e)||!e.persist)&&"string"==typeof e.persist.getOptions().name}function J(e){return N.VirtualStore in e}function B(e,t){return function(...n){const r=e.getState()[t];if("function"==typeof r)return r(...n);throw new Error(`[createVirtualStoreAction]: Method ${String(t)} is not a function`)}}function Q(e,t){return"function"==typeof e[t]}function G(e,t){const n=Object.prototype.hasOwnProperty;function r(e,t){for(const n of e.keys())if(G(n,t))return n}let o,i,s;if(e===t)return!0;if(e&&t&&(o=e.constructor)===t.constructor){if(o===Date)return e.getTime()===t.getTime();if(o===RegExp)return e.toString()===t.toString();if(o===Array){if((i=e.length)===t.length)for(;i--&&G(e[i],t[i]););return-1===i}if(o===Set){if(e.size!==t.size)return!1;for(let n of e){if(s=n,s&&"object"==typeof s&&(s=r(t,s),!s))return!1;if(!t.has(s))return!1}return!0}if(o===Map){if(e.size!==t.size)return!1;for(let n of e){if(s=n[0],s&&"object"==typeof s&&(s=r(t,s),!s))return!1;if(!G(n[1],t.get(s)))return!1}return!0}if(o===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(o===DataView){if((i=e.byteLength)===t.byteLength)for(;i--&&e.getInt8(i)===t.getInt8(i););return-1===i}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){const n=e,r=t;if((i=n.byteLength)===r.byteLength)for(;i--&&n[i]===r[i];);return-1===i}if(!o||"object"==typeof e){i=0;for(const r in e){if(n.call(e,r)&&++i&&!n.call(t,r))return!1;if(!(r in t)||!G(e[r],t[r]))return!1}return Object.keys(t).length===i}}return e!=e&&t!=t}var X=t.unstable_batchedUpdates,Y=!1,Z=!1,ee=!1,te=new Set,ne=new Map,re=new Map,oe=null,ie=1/0;function se(){return Y}function ce(){return oe}function ae(){Y||(Y=!0,ee||(ee=!0,queueMicrotask(()=>{ee=!1,ue()})))}function ue(){if(Y)if(Z)fe();else{Z=!0;try{X(fe)}finally{pe()}}}function le(e){Y&&te.add(e)}function fe(){for(;ne.size>0||te.size>0;)de(),ye()}function de(){for(;ne.size>0;){const e=ie,t=re.get(e);if(t){re.delete(e);for(const e of t)ne.delete(e);oe=e;for(const e of t)e();oe=null,ie=1/0;for(const e of re.keys())e<ie&&(ie=e)}else{ie=1/0;for(const e of re.keys())e<ie&&(ie=e)}}}function ye(){for(const e of te)te.delete(e),e()}function pe(){Y=!1,Z=!1,oe=null,te.clear(),ne.clear(),re.clear(),ie=1/0}function he(e){let t;const n=new Set;let r;function o(...e){const o=K(t,...e);if(Object.is(o,t))return;const i=t;if(t=o,r)for(const e of r)e(t,i);n.size&&ue();for(const e of n)e(t,i)}function i(){return t}const s={getInitialState:function(){return c},getState:i,setState:o,subscribe:function(...e){return 1===e.length?a(e[0]):function(e,n,o){const i=o?.equalityFn??Object.is,s=o?.isCascadeParticipant??!1;let c=e(t);function u(t){const r=e(t);if(i(c,r))return;const o=c;c=r,s&&ae(),n(r,o)}return o?.fireImmediately&&n(c,c),s?function(e){return(r??(r=new Set)).add(e),()=>{r?.delete(e),0===r?.size&&(r=void 0)}}(u):a(u)}(e[0],e[1],e[2])}},c=t=e(o,i,s);return s;function a(e){return n.add(e),()=>{n.delete(e)}}}function ge(e){return!!e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then}function be(e){return{...e,merge:e.merge??me,skipHydration:e.skipHydration??!1}}function me(e,t){return void 0===e?t:{...t,...e}}function Se(){let e,t,n=!1;return{complete:function(){!n&&e&&(n=!0,e(),e=void 0,t=void 0)},isHydrated:function(){return n},fail:function(r){!n&&t&&(n=!0,t(r),t=void 0,e=void 0)},promise:new Promise((n,r)=>{e=n,t=r})}}var ve=Math.max,we=Math.min;function Oe(e,t=0,n={}){let r,o,i,s,c,a,u=0,l=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function y(t){const n=r,i=o;return r=o=void 0,u=t,s=n?e.apply(i,n):e.apply(i),s}function p(e){const n=e-(a??0);return void 0===a||n>=t||n<0||f&&void 0!==i&&e-u>=i}function h(){const e=qe();if(p(e))return g(e);c=setTimeout(h,function(e){const n=t-(e-(a??0));return f&&void 0!==i?we(n,i-(e-u)):n}(e))}function g(e){return c=void 0,d&&r?y(e):(r=o=void 0,s)}function b(...e){const n=qe(),i=p(n);if(r=e,o=this,a=n,i){if(void 0===c)return function(e){return u=e,c=setTimeout(h,t),l?y(e):s}(a);if(f)return clearTimeout(c),c=setTimeout(h,t),y(a)}return void 0===c&&(c=setTimeout(h,t)),s}return t=je(t)||0,function(e){const t=typeof e;return null!==e&&("object"===t||"function"===t)}(n)&&(l=!!n.leading,f="maxWait"in n,i=f?ve(je(n.maxWait)||0,t):void 0,d="trailing"in n?!!n.trailing:d),b.cancel=function(){void 0!==c&&clearTimeout(c),u=0,r=a=o=c=void 0},b.flush=function(){return void 0===c?s:g(qe())},b}function qe(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}function je(e){if("number"==typeof e)return e;if("symbol"==typeof e||void 0===e)return NaN;if("object"==typeof e&&null!==e){const t="function"==typeof e.valueOf?e.valueOf():e;e="object"==typeof t?t+"":t}return"string"!=typeof e?0===e?e:+e:(e=e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),/^0b[01]+$/i.test(e)?parseInt(e.slice(2),2):/^0o[0-7]+$/i.test(e)?parseInt(e.slice(2),8):/^[-+]0x[0-9a-f]+$/i.test(e)?NaN:+e)}function Fe(e){if(!v(e))return e;const t={__proto__:null},n=Object.keys(e);for(let r=0;r<n.length;r++){const o=n[r],i=e[o];"function"!=typeof i&&(t[o]=i)}return t}var _e=i?0:P.seconds(r?3:5);function ke(e,t,n,r){const o=!(t.deserializer||t.serializer||e.deserializer||e.serializer),i="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),s=t.partialize??Fe,c=t.deserializer??e.deserializer??Ie(o),a=t.serializer??e.serializer??Ce(o);function u(t,n,o){try{if(Te(r))return;const c={state:s(n),version:o},u=ze(r,i,c),l=a(c);try{e.set(t,l),Ee(r,u)}catch(e){b.error(new O("[createBaseStore]: Failed to persist store data",e))}}catch(e){b.error(new O("[createBaseStore]: Failed to persist store data",e))}}const l=void 0!==n?Oe(u,n,{leading:!1,maxWait:n,trailing:!0}):u;return{getItem:t=>{const n=e.get(t);return void 0===n?null:c(n)},setItem:(e,t,n)=>{r?.getIsApplyingRemote()||l(e,t,n)},removeItem:t=>{try{e.delete(t)}catch(e){b.error(new O("[createBaseStore]: Failed to delete persisted store data",e))}}}}function Ae(e,t,n,r){const o=!(t.deserializer||t.serializer||e.deserializer||e.serializer),i="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),s=t.partialize??Fe,c=t.deserializer??e.deserializer??Ie(o),a=t.serializer??e.serializer??Ce(o);async function u(t,n,o){try{if(Te(r))return;const c={state:s(n),version:o},u=ze(r,i,c),l=a(c);try{await e.set(t,l),Ee(r,u)}catch(e){b.error(new O("[createBaseStore]: Failed to persist store data",e))}}catch(e){b.error(new O("[createBaseStore]: Failed to serialize persisted store data",e))}}const l=void 0!==n?Oe(u,n,{leading:!1,maxWait:n,trailing:!0}):function(e){let t,n=null;return function(...r){return t=r,n||(n=new Promise(r=>{queueMicrotask(async()=>{try{await e(...t)}finally{n=null,r()}})})),n}}(u);return{getItem:async t=>{const n=await e.get(t);return void 0===n?null:c(n)},setItem:async(e,t,n)=>{if(!r?.getIsApplyingRemote())return await l(e,t,n)},removeItem:async t=>{try{await e.delete(t)}catch(e){b.error(new O("[createBaseStore]: Failed to delete persisted store data",e))}}}}function Ie(e){return t=>{if("string"!=typeof t)throw new O("[createBaseStore]: Received non-string serialized state without a custom deserializer. Provide a deserializer on the store or storage adapter.");return function(e,t){try{return JSON.parse(e,t?L:void 0)}catch(e){throw b.error(new O("[createBaseStore]: Failed to deserialize persisted store data",e)),e}}(t,e)}}function Ce(e){return t=>function(e,t){try{return JSON.stringify(e,t?$:void 0)}catch(e){throw b.error(new O("[createBaseStore]: Failed to serialize store data",e)),e}}(t,e)}var xe=Object.freeze({shouldClear:!1});function ze(e,t,n){if(!t||!e)return xe;const r=e.getFieldTimestampSnapshot();return function(e,t){const n=e.getSessionId(),r=e.getTimestamp();void 0!==n&&void 0!==r&&(t.syncMetadata={origin:n,timestamp:r})}(e,n),n.syncMetadata?r&&Object.keys(r).length>0?(n.syncMetadata.fields=r,{fieldSnapshot:r,shouldClear:!0}):(delete n.syncMetadata.fields,{fieldSnapshot:r,shouldClear:!1}):{fieldSnapshot:r,shouldClear:!1}}function Ee(e,t){e&&t.shouldClear&&t.fieldSnapshot&&Object.keys(t.fieldSnapshot).length&&e.clearFieldTimestamps(t.fieldSnapshot)}function Te(e){return!!e&&!!e.getIsApplyingRemote()}var[Pe,Me]=[0,1];function De(e,t,n){if(!e)return!0;const r=e[Pe],o=e[Me];return!(t<r)&&(t>r||n>o)}function Ke(e,t){return Object.prototype.hasOwnProperty.call(t,e)}function Re(e,t){if(!o)return!0;if(null===e||null===t)return e===t;const n=typeof e;return n===typeof t&&("object"!==n||Object.prototype.toString.call(e)===Object.prototype.toString.call(t))}function $e(e){if(null===e)return"null";const t=typeof e;return"object"===t?Object.prototype.toString.call(e):t}function Le(e,t){if(x(),!t)return he(e);const n=t.storageKey,r="string"==typeof n,o=r?t.storage??C().storage:void 0,i=function(e,t){if(!e)return null;const n="object"==typeof e,r=n?e.key??t:!0===e?t:e;if(!r)throw new O("[createBaseStore]: sync requires a key to be specified either directly or via storageKey");return n?{...e,key:r}:{key:r}}(t.sync,n),s=i?function(e,t,n){const r=t.engine??C().syncEngine,o=function(e){let t,n,r,o=!1;return{isAsync:e,clearFieldTimestamps:function(e){if(e&&r){for(const t of Object.entries(e)){const e=t[0],n=t[1];r[e]===n&&delete r[e]}Object.keys(r).length||(r=void 0)}},getFieldTimestampSnapshot:function(){if(r)return{...r}},getIsApplyingRemote:()=>o,getSessionId:()=>t,getTimestamp:()=>n,mergeFieldTimestamps:function(e){if(r)for(const t of Object.entries(e)){const e=t[0],n=t[1],o=r[e];(void 0===o||n>o)&&(r[e]=n)}else r={...e}},onHydrationComplete:void 0,onHydrationFlushEnd:void 0,setIsApplyingRemote:e=>o=e,setSessionId:e=>t=e,setTimestamp:e=>n=e,setWithoutPersist:void 0}}(n);return{stateCreator:(i,s,c)=>{const a=new Map,u=[],l=[];let f=null,d=!1,y=!1,p=0,h=null,g=[],m=Promise.resolve(),S=!n;function v(e,t){if(o?.setSessionId&&o?.setTimestamp&&r.sessionId&&(o.setSessionId(r.sessionId),o.setTimestamp(e),o.mergeFieldTimestamps&&t.length>0)){const n={__proto__:null};for(const r of t)n[String(r)]=e;o.mergeFieldTimestamps(n)}}function w(e,t){if(d||!h)return t?i(e,t):i(e);const n=function(){const e=Date.now(),t=e>p?e:p+1;return p=t,t}();let o=[],s={__proto__:null};const c=r=>{const i=K(r,e,t);for(const e of g)Object.is(i[e],r[e])||(o.push(e),s[e]=i[e]);return o.length&&v(n,o),i},u=t?i(c,!0):i(c);function b(){o.length&&function(e){const t=r.sessionId;for(const n of e.keys)a.set(n,[e.timestamp,t]);f&&y?f.publish?.({replace:e.replace,sessionId:t,timestamp:e.timestamp,values:e.values}):l.push(e)}({keys:o,replace:t??!1,values:s,timestamp:n})}return ge(u)?u.finally(b):(b(),u)}const q=c.setState;c.setState=w;const j=e(w,s,c);if(g=t.fields??function(e){const t=[];for(const n of Object.entries(e)){if("function"==typeof n[1])continue;const e=n[0];t.push(e)}return t}(j),!g.length)return j;async function F(e){p=Math.max(p,e.timestamp);const n={__proto__:null},r=s(),i=e.timestamp;let c;if(e.replace)for(const t of g)Ke(t,e.values)||De(a.get(t),i,e.sessionId)&&(c??(c=[])).push(t);for(const o of g){if(!Ke(o,e.values))continue;if(!h?.has(o))continue;if(!De(a.get(o),i,e.sessionId))continue;const s=t.merge?.[o];if(s){const t=e.values[o],c=r[o];if(void 0!==t){const u=s(t,c,r,e.values),l=void 0!==c?c:t;if(!Re(u,l))return void b.error(new O(`[sync] Merge function for field "${String(o)}" returned ${$e(u)} but expected ${$e(l)}`));n[o]=u,a.set(o,[i,e.sessionId])}}else n[o]=e.values[o],a.set(o,[i,e.sessionId])}if(Object.keys(n).length>0||c?.length){d=!0,o&&o.setIsApplyingRemote(!0);try{if(e.replace){const e={...r};let t=!1;if(c?.length){t=!0;for(const t of c)delete e[t],a.delete(t)}for(const r in n){if(!Object.prototype.hasOwnProperty.call(n,r))continue;const o=n[r];void 0!==o&&(Object.is(e[r],o)||(t=!0),e[r]=o)}if(!t)return;await(o.setWithoutPersist??q)(e,!0)}else await(o.setWithoutPersist??q)(n)}finally{d=!1,o&&o.setIsApplyingRemote(!1)}}}function _(e){n?m=m.then(()=>F(e)):F(e)}if(h=new Set(g),f=r.register({apply:e=>{S?_(e):u.push(e)},fields:g,getState:s,key:t.key}),f?.onFirstSubscribe||f?.onLastUnsubscribe){let e=0;const t=c.subscribe;c.subscribe=(...n)=>{e||f.onFirstSubscribe?.(),e+=1;const r=1===n.length?t(n[0]):t(n[0],n[1],n[2]);return()=>{r(),e-=1,e||queueMicrotask(()=>{e||f.onLastUnsubscribe?.()})}}}function k(){y=!0,function(){if(f&&l.length){for(const e of l){const t=r.sessionId;for(const n of e.keys)a.set(n,[e.timestamp,t]);v(e.timestamp,e.keys),f.publish?.({replace:e.replace,sessionId:t,timestamp:e.timestamp,values:e.values})}l.length=0}}()}function A(){S=!0,function(){if(!u.length)return;const e=u.slice();u.length=0;for(const t of e)_(t)}()}return n?(o.onHydrationComplete=k,o.onHydrationFlushEnd=A):f.onHydrated?(f.onHydrated(k),A()):(k(),A()),j},syncContext:o}}(e,i,o?.async??!1):void 0,c=s?.stateCreator??e;if(!r)return he(c);const a=function(e,t,n){const r=t??e.storage??C().storage,o=(e.sync?void 0:e.persistThrottleMs??_e)||void 0,i=e.version??0;return r.async?{async:!0,persistStorage:Ae(r,e,o,n),version:i}:{async:!1,persistStorage:ke(r,e,o,n),version:i}}(t,o,s?.syncContext),u=a.async?function(e){let t,n,r,o=!1;return{hydrationPromise:()=>o?t?.promise??n??(n=Promise.resolve()):(t||(t=Se()),t.promise),stateCreator:(n,i,s)=>{let c;return r=()=>{if(c?.length){for(const e of c)D(s.setState,e);c=void 0}},e(function(...e){return o?D(n,e):(t||(t=Se()),c||(c=[]),c.push(e),t.promise)},i,s)},wrapOnRehydrateStorage:(e,n)=>i=>{const s=e?.(i);return(e,i)=>{o=!0,n?.onHydrationComplete?.(),r&&r(),n?.onHydrationFlushEnd?.(),i?t?.fail(q(i)):t?.complete(),s?.(e,i)}}}}(c):void 0,l=u?u.wrapOnRehydrateStorage(t.onRehydrateStorage,s?.syncContext):t.onRehydrateStorage,f=he(function(e,t){return(n,r,o)=>{let i,s,c,a=be(t),u=!1,l=0;function f(){return a.storage.setItem(a.name,r(),a.version)}const d=o.setState;o.setState=function(...e){return D(d,e),f()};const y=e(function(...e){return D(n,e),f()},r,o);function p(){const e=function(){const e=++l;return u=!1,s?.forEach(e=>e(r()??y)),e}(),t=a.onRehydrateStorage?.(r()??y);try{const n=a.storage.getItem(a.name);return ge(n)?n.then(n=>h(e,n,t)).catch(n=>m(e,t,n)):h(e,n,t)}catch(n){m(e,t,n)}}return o.getInitialState=()=>y,Object.assign(o,{persist:{clearStorage:()=>{a.storage.removeItem(a.name)},getOptions:()=>a,hasHydrated:()=>u,onFinishHydration:e=>(c??(c=new Set),c.add(e),()=>{c?.delete(e),0===c?.size&&(c=void 0)}),onHydrate:e=>(s??(s=new Set),s.add(e),()=>{s?.delete(e),0===s?.size&&(s=void 0)}),rehydrate:p,setOptions:e=>{a=be({...a,...e,storage:e.storage??a.storage})}}}),a.skipHydration||p(),i??y;function h(e,t,n){const r=function(e,t){if(!t)return{migrated:!1,state:void 0};if("number"!=typeof t.version||t.version===e.version)return{migrated:!1,state:t.state};if(!e.migrate)return console.error("State loaded from storage couldn't be migrated since no migrate function was provided"),{migrated:!1,state:void 0};const n=e.migrate(t.state,t.version);return ge(n)?n.then(e=>({migrated:!0,state:e})):{migrated:!0,state:n}}(a,t);return ge(r)?r.then(t=>g(e,t,n)).catch(t=>m(e,n,t)):g(e,r,n)}function g(e,t,o){const s=function(e,t){if(e!==l)return;const o=a.merge(t.state,r()??y);return i=o,n(o,!0),t.migrated?f():void 0}(e,t);if(ge(s))return s.then(()=>b(e,o));b(e,o)}function b(e,t){if(e!==l)return;t?.(i,void 0);const n=r();i=n,u=!0,c?.forEach(e=>e(n))}function m(e,t,n){e===l&&t?.(void 0,n)}}}(u?(e,t,n)=>(s&&(s.syncContext.setWithoutPersist=n.setState),u.stateCreator(e,t,n)):c,{merge:t.merge,migrate:t.migrate,name:n,onRehydrateStorage:l,storage:a.persistStorage,version:a.version}));return u?Object.assign(f,{persist:Object.assign(f.persist,{hydrationPromise:u.hydrationPromise})}):f}function Ne(e,t,n="s"){return 1===t?e:`${e}${n}`}var Ve=Symbol("stores.deriveProxy.unwrap");function He(e,t,n){const r=t.get(e);if(void 0!==r)return r;const o=function(e,t,n,r=[]){return e&&"object"==typeof e?We(e,r,t,n,new WeakSet,new WeakMap):(n(t,r,!0),e)}(H(e)?e.getSnapshot():e.getState(),e,n);return t.set(e,o),o}function We(e,t,n,r,o,i){return new Proxy(e,{get(s,c,a){if(c===Ve)return r(n,t,!0),s;if(o.has(s))return Reflect.get(s,c,a);if("__proto__"===c||"symbol"==typeof c)return c===Symbol.iterator&&(r(n,t,!0),o.add(s)),Reflect.get(s,c,a);const u=Reflect.get(s,c,s),l=String(c),f=t.concat(l);if("function"==typeof u)return Object.prototype.hasOwnProperty.call(s,c)?function(...e){return r(n,f,!0,{args:e.length?e:void 0}),Reflect.apply(u,s,e)}:(r(n,t,!0),u.bind(e));const d=!!u&&"object"==typeof u;return r(n,f,!d),d?(i.has(u)||i.set(u,We(u,f,n,r,o,i)),i.get(u)):u},getOwnPropertyDescriptor:(e,i)=>(r(n,t,!0),o.add(e),Reflect.getOwnPropertyDescriptor(e,i)),has:(e,o)=>(r(n,t,!0),Reflect.has(e,o)),ownKeys:e=>(r(n,t,!0),o.add(e),Reflect.ownKeys(e))})}function Ue(e,t){if(!e||"object"!=typeof e)return e;const n=function(e){const t=Reflect.get(e,Ve);return t&&"object"==typeof t?t:void 0}(e);return n||(Array.isArray(e)?function(e,t){const n=Be(e,t);if(n)for(let t=0;t<e.length;t++)Je(e,String(t),n)}(e,t):v(e)&&function(e,t){const n=Be(e,t);if(n)for(const t of Reflect.ownKeys(e))Je(e,t,n)}(e,t),e)}function Je(e,t,n){const r=Reflect.getOwnPropertyDescriptor(e,t);if(!r||!("value"in r))return;const o=Ue(r.value,n);o!==r.value&&(r.value=o,Reflect.defineProperty(e,t,r))}function Be(e,t){const n=t??new WeakSet;return n.has(e)?null:(n.add(e),n)}var Qe=Object.freeze([]);function Ge(){const e=new Map;return{buildProxySubscriptions(t,n,r,o){const i=new Set;for(const t of e)Ye(t[1],t[0],[],0,i,r);!1!==o?.(i)&&function(e,t,n){for(const n of e){const e=n.invocation?nt(n.path,n.invocation):tt(n.path);t(n.store,e,n.path)}n&&function(e){const t=e.size;console.log(`[📡 ${t} ${Ne("Proxy Subscription",t)} 📡]:`,JSON.stringify(Array.from(e).map(e=>{const t="name"in(n=e.store)&&"string"==typeof n.name?n.name:"store";var n;const r=e.path.join(".");if(!e.invocation)return r?`$(${t}).${r}`:`$(${t})`;const o=e.invocation.args?.length??0;return`$(${t}).${r}${o?`(${o}_${Ne("arg",o)})`:"()"}`}),null,2))}(e)}(i,t,n)},reset(){e.clear()},trackPath(t,n,r,o){let i=e.get(t);i||(i={__proto__:null},e.set(t,i)),Xe(i,n,0,r,o)}}}function Xe(e,t,n,r,o){if(n===t.length)return r&&(e.isLeaf=!0),void(o&&function(e,t){const n=e.invocation;if(!n)return void(e.invocation=t);if(Ze(n,t))return;const r=e.extraInvocations;if(r){for(let e=0;e<r.length;e++)if(Ze(r[e],t))return;r.push(t)}else e.extraInvocations=[t]}(e,o));e.children||(e.children={__proto__:null});const i=t[n];let s=e.children?.[i];s||(s={__proto__:null},e.children[i]=s),Xe(s,t,n+1,r,o)}function Ye(e,t,n,r,o,i=2){const s=e.children;if(!s)return void et(e,t,n,o);const c=Object.keys(s),a=c.length;if(0!==a)if(e.isLeaf||r>=i&&a>1){et(e,t,n,o);for(const e of c){const c=s[e];c.invocation&&Ye(c,t,[...n,e],r+1,o,i)}}else if(r<i&&a>1&&!e.isLeaf)for(const e of c)Ye(s[e],t,[...n,e],r+1,o,i);else{if(1===a){const e=c[0];return void Ye(s[e],t,[...n,e],r+1,o,i)}et(e,t,n,o)}else et(e,t,n,o)}function Ze(e,t){const n=e.args,r=t.args,o=n?.length??0;if(o!==(r?.length??0))return!1;if(!n||!r)return!0;for(let e=0;e<o;e++)if(!Object.is(n[e],r[e]))return!1;return!0}function et(e,t,n,r){const o=e.isLeaf??!1,i=e.invocation;if(!i)return void r.add({store:t,path:n,isLeaf:o});r.add({store:t,path:n,invocation:i,isLeaf:o});const s=e.extraInvocations;if(s)for(let e=0;e<s.length;e++)r.add({store:t,path:n,invocation:s[e],isLeaf:o})}function tt(e){return t=>rt(t,e)}function nt(e,t){const n=e.slice(0,-1),r=e[e.length-1];return e=>{const o=rt(e,n),i=o&&"object"==typeof o?Reflect.get(o,r):void 0;return"function"==typeof i?Reflect.apply(i,o,t.args??Qe):void 0}}function rt(e,t){let n=e;for(const e of t){if(!n||"object"!=typeof n)return n;n=Reflect.get(n,e)}return n}var ot=Symbol(),it=Object.freeze({equalityFn:Object.is,isCascadeParticipant:!0});function st(e,t=Object.is){const{debounceOptions:n,debugMode:r,equalityFn:i,keepAlive:c,lockDependencies:a}="function"==typeof(l=t)?{debounceOptions:void 0,debugMode:!1,equalityFn:l,keepAlive:!1,lockDependencies:!1}:{debounceOptions:l.debounce,debugMode:(o&&l.debugMode)??!1,equalityFn:l.equalityFn??Object.is,keepAlive:l.keepAlive??!1,lockDependencies:l.lockDependencies??!1},u=new Set;var l;c&&u.add(ct);const f=new Set;let d,y,p=ot,h=!1,g=!1,b=!0,m=!0,S=0,v=!1,w=null,O=ot;function q(e,t,n){if(!m||!u.size)return(t??s)(e.getState());if(!t)return d||(d=new WeakMap),y||(y=Ge()),He(e,d,y.trackPath);const r=n?{equalityFn:n,isCascadeParticipant:!0}:it;return f.add(e.subscribe(t,T,r)),t(H(e)?e.getSnapshot():e.getState())}function j(e){for(const t of f)t(e);f.clear()}let F=!0;function _(){if(!b&&at(p))return p;b=!1,m&&j(!0);const t=p,n=at(t);g=!0;try{p=function(t){F=!0;const n=p,o=e(t),s=y?Ue(o):o;return at(n)&&i(n,s)?(r&&console.log("[🥷 Derive Complete 🥷]: No change detected"),F=!1,n):s}(q)}finally{g=!1}const o=r&&(!n||"verbose"===r&&m);if(o){n?"verbose"===r&&console.log("[🌀 Rebuilding Subscriptions 🌀]: Created…"):console.log("[🌀 Initial Derive Complete 🌀]: Created…");const e=f.size;console.log(`[🎯 ${e} ${Ne("Selector Subscription",e)} 🎯]`)}return y&&m&&(y.buildProxySubscriptions((e,t)=>{f.add(e.subscribe(t,T,it))},o),d=void 0,y.reset(),a&&(y=void 0)),F&&n&&function(e,t){const n=function(){const e=u.has(ct)?u.size-1:u.size;return S>0&&S<e}(),o=(!S||n)&&(n||null!==ce()||se());n&&ae(),r&&console.log(`[📻 Derive Complete 📻]: Notifying ${u.size} ${Ne("watcher",u.size)}`);for(const t of u){if("function"==typeof t||!t.isCascadeParticipant)continue;const n=t.selector(e);if(!t.equalityFn(t.currentSlice,n)){const e=t.currentSlice;t.currentSlice=n,t.listener(n,e)}}if(o)return at(O)||(O=t),void(v||(v=!0,le(A)));k(e,t)}(p,t),a&&(m=!1),p}function k(e,t){for(const n of u)if("function"==typeof n)n(e,t);else if(!n.isCascadeParticipant){const t=n.selector(e);if(!n.equalityFn(n.currentSlice,t)){const e=n.currentSlice;n.currentSlice=t,n.listener(t,e)}}}function A(){u.size&&b&&!S&&_();const e=O;v=!1,O=ot,u.size&&at(p)&&at(e)&&k(p,e)}const I=n?Oe(x,"number"==typeof n?n:n.delay,"number"==typeof n?{leading:!1,maxWait:n,trailing:!0}:n):void 0,C=I??(()=>{h||(h=!0,queueMicrotask(x))});function x(){h=!1,u.size?b&&_():D()}function z(e){e||I&&b?queueMicrotask(()=>{u.size||D()}):D()}function E(){x(),w=null}function T(){if(!g&&!b){if(b=!0,!I){if(S){ae();const e=ce(),t=null===e?0:e+1;if(null!==w&&t<=w)return;return w=t,void function(e,t){if(!Y)return;const n=t<0?0:0|t,r=ne.get(e);if(void 0===r){ne.set(e,n);let t=re.get(n);return t||(t=new Set,re.set(n,t)),t.add(e),void(n<ie&&(ie=n))}if(n>r){const t=re.get(r);if(t&&(t.delete(e),0===t.size&&(re.delete(r),r===ie))){ie=1/0;for(const e of re.keys())e<ie&&(ie=e)}ne.set(e,n);let o=re.get(n);o||(o=new Set,re.set(n,o)),o.add(e),n<ie&&(ie=n)}}(E,t)}if(se())return void(v||(v=!0,le(A)))}w=null,C()}}function P(e){u.add(ct);try{return e()}finally{u.delete(ct)}}function M(){return se()&&function(){if(Y)if(Z)null===oe&&de();else{Z=!0;try{de()}catch(e){throw pe(),e}finally{Z=!1,oe=null}}}(),b||!at(p)?u.size>0?_():e(q):p}function D(e=!0){c&&e||(I?.cancel(),j(),u.clear(),S=0,y=void 0,d=void 0,m=!0,h=!1,g=!1,b=!0,p=ot,v=!1,O=ot,w=null)}return{destroy:()=>D(!1),flushUpdates:function(){u.size&&(I?I.flush():b&&_())},getSnapshot:function(){return at(p)?(h&&x(),p):u.size?_():P(_)},getState:M,subscribe:function(...e){if(1===e.length){const t=e[0];return u.add(t),at(p)||M(),()=>{u.delete(t),u.size||z(!1)}}const[t,n,r]=e,o=r?.equalityFn??Object.is,i=r?.isCascadeParticipant??!1,s=function(e){return e(u.size?M():P(M))}(t),c={currentSlice:s,equalityFn:o,isCascadeParticipant:i,listener:n,selector:t};return u.add(c),i&&(S+=1),r?.fireImmediately&&n(s,s),()=>{u.delete(c),i&&(S-=1),u.size||z(i)}},getInitialState:()=>{throw new Error("[createDerivedStore]: getInitialState() is not available on derived stores.")},setState:()=>{throw new Error("[createDerivedStore]: setState() is not available on derived stores.")}}}function ct(){}function at(e){return e!==ot}var ut=class{constructor(e){this.count=0,this.lastSubscriptionTime=null,this.fetchThrottleMs=null,this.onSubscribe=null,this.onLastUnsubscribe=null,e&&(this.fetchThrottleMs=P.seconds(5))}init({onSubscribe:e,onLastUnsubscribe:t}){this.onSubscribe=e,this.onLastUnsubscribe=t}hasSubscribers(){return this.count>0}subscribe(){const e=0===this.count,t=null!==this.fetchThrottleMs,n=t&&null!==this.lastSubscriptionTime&&!e&&Date.now()-this.lastSubscriptionTime<=this.fetchThrottleMs;return this.count+=1,this.onSubscribe?.(e,n),t&&(this.lastSubscriptionTime=Date.now()),e=>{const t=1===this.count;this.count=Math.max(this.count-1,0),t&&(this.onLastUnsubscribe?.(e),this.lastSubscriptionTime=null)}}},lt=Symbol("stores.queryParamConfig");function ft(e){return JSON.stringify(dt(e))}function dt(e){return"object"!=typeof e||null===e?e:Object.keys(e).sort().reduce((t,n)=>{const r=e[n];return t[n]=v(r)?dt(r):r,t},{__proto__:null})}var yt=Object.freeze({equalityFn:Object.is,isCascadeParticipant:!0});function pt(e,t,n){const r={__proto__:null};let o=null,i=!1;if(e)for(const n in e){if(!S(e,n))continue;const s=ht(r,e[n],n,t);s&&((o??(o=c()))[n]=s,void 0!==s.key&&(i=!0))}return{buildKey:(e=r)=>ft(i?function(e,t){const n={__proto__:null};for(const r in t){if(!S(t,r))continue;const o=e?.[r];if(!1===o?.key)continue;const i=t[r];n[r]=o?.key?o.key(i):i}return n}(o,e):e),complete:e=>e?function(e,t){for(const n of t)if(!(n in e))return!1;return!0}(e,n)?e:{...r,...e}:mt(r),get:()=>mt(r),subscribe:e=>function(e,t,n){if(!e)return a;let r;for(const o in e){const i=e[o]?.tracked;i&&(r??(r=[])).push(i.subscribe(e=>{const r=t[o];G(r,e)||(t[o]=e,n(o,r,e))}))}return r?e=>{for(const t of r)t(e)}:a}(o,r,e)}}function ht(e,t,n,r){return(o=t)&&"object"==typeof o&&lt in o?bt(e,t.value,n,r,t.key):bt(e,t,n,r);var o}function gt(e,t){const n=[];let r,o;function i(e,t=s){return t(St(e))}const c=e(function(e,t,i){return t?(n.push(n=>e.subscribe(t,n,function(e){return e?{equalityFn:e,isCascadeParticipant:!0}:yt}(i))),t(St(e))):(r??(r=Ge()),o??(o=new WeakMap),He(e,o,r.trackPath))},t),a=r?Ue(c):c;return r&&(r.buildProxySubscriptions((e,t)=>{n.push(n=>e.subscribe(t,n,yt))},!1),r.reset()),o=void 0,{initialValue:a,subscribe(r){const o=()=>r(e(i,t)),s=n.map(e=>e(o));return e=>{for(const t of s)t(e)}}}}function bt(e,t,n,r,o){if(function(e){return"function"==typeof e}(t)){const i=gt(t,r);return e[n]=i.initialValue,void 0===o?{tracked:i}:{key:o,tracked:i}}return e[n]=t,void 0===o?null:{key:o}}function mt(e){const t={__proto__:null};for(const n in e)S(e,n)&&(t[n]=e[n]);return t}function St(e){return H(e)?e.getSnapshot():e.getState()}var vt={error:!0,lastFetchedAt:!0,queryCache:!0,queryKey:!0,status:!0,enabled:!1,fetch:!1,getCacheEntry:!1,getData:!1,getStatus:!1,isDataExpired:!1,isStale:!1,reset:!1},wt=Object.freeze({force:!0}),Ot=Object.freeze({once:!0}),qt=new Set,jt=!1;function Ft(e){qt.add(e),jt||(jt=!0,queueMicrotask(()=>{jt=!1,X(_t)}))}function _t(){for(const e of qt)qt.delete(e),e()}function kt(e,t){return n=>{const r={...n},o={__proto__:null};for(const e in r)S(r,e)&&e in vt&&(vt[e]&&(o[e]=r[e]),delete r[e]);return{...t?t(r):Fe(r),...At(e,null,o)}}}function At(e,t,n){if(!n.queryCache)return n;const r=Date.now(),o=t??(e&&n.queryKey||null),i={__proto__:null};let s=!1;for(const e in n.queryCache){if(!S(n.queryCache,e))continue;const c=n.queryCache[e];c&&(r-(c.lastFetchedAt??c.errorInfo.lastFailedAt)<c.cacheTime||e===o)?!t&&c.errorInfo&&c.errorInfo.retryCount>0?(i[e]={...c,errorInfo:{...c.errorInfo,retryCount:0}},s=!0):i[e]=c:s=!0}return s?{...n,queryCache:i}:n}function It(){return Object.create(null)}function Ct(e,t,n){return new O(`[createQueryStore: ${e}]: ${t} failed`,n)}function xt(e){return function(...t){return!0===t[1]?e().setState(t[0],!0):e().setState(t[0])}}var zt=Symbol(),Et=Object.freeze({debugMode:!1,enabled:!0,equalityFn:Object.is,fireImmediately:!1}),Tt=Object.freeze({fireImmediately:!1,forceResubscribe:!1});function Pt(e,t,n=Tt){if(t.current.isActive){if(!n?.forceResubscribe)return;t.current.unsubscribe()}t.current.options.debugMode&&console.log("[📡 useListen 📡] Attaching listener"),t.current.isActive=!0,t.current.resubscribe=(n=Tt)=>Pt(e,t,n);const r=e.subscribe(e=>t.current.selector(e),(e,n)=>t.current.react(e,n,()=>{r(),t.current.isActive=!1}),n.fireImmediately?{...t.current.options,fireImmediately:!0}:t.current.options);t.current.unsubscribe=()=>{t.current.isActive&&(r(),t.current.isActive=!1)}}function Mt(e){return"function"==typeof e?{equalityFn:e}:e??Et}var Dt=Symbol();exports.QueryStatuses=T,exports.StoresError=O,exports.applyStateUpdate=K,exports.configureStores=function(e){var t;o&&function(){if(I)throw new Error("[stores]: configureStores() called after first store creation. Call it earlier before creating any stores.")}(),e.logger&&(t=e.logger,b=t),F??(F=function(e){return e?.queryStoreDefaults?{queryStoreDefaults:e.queryStoreDefaults}:void 0}(e)),_??(_=z(e))},exports.createBaseStore=function(e,t){const n=Le(e,t);return h(n,n.getState,n.getInitialState,Object.is)},exports.createDerivedStore=function(e,t=Object.is){const n=st(e,t);return h(n,n.getSnapshot)},exports.createQueryStore=function(e,t,n){const r=function(e,t,n){x();const r="function"==typeof t?t:It,s="object"==typeof t?t:n,c=function(e){return"string"==typeof e?.storageKey}(s)?s:void 0,a=E??(E=function(){const e={abortInterruptedFetches:!0,cacheTime:P.days(7),debugMode:!1,disableAutoRefetching:!1,keepPreviousData:!1,maxRetries:5,minStaleTime:!1,paramChangeThrottle:!1,retryDelay:M,staleTime:P.minutes(2),suppressStaleTimeWarning:!1},t=function(){if(F)return F}()?.queryStoreDefaults;return t?{...e,...t}:e}()),u=a.minStaleTime,{fetcher:l,onError:f,onFetched:d,setData:y,transform:p,abortInterruptedFetches:h=a.abortInterruptedFetches,cacheTime:g=a.cacheTime,debugMode:m=a.debugMode,disableAutoRefetching:S=a.disableAutoRefetching,disableCache:v=!1,enabled:w=!0,keepPreviousData:j=a.keepPreviousData,maxRetries:_=a.maxRetries,paramChangeThrottle:k=a.paramChangeThrottle,params:A,retryDelay:I=a.retryDelay,staleTime:C=a.staleTime,suppressStaleTimeWarning:z=a.suppressStaleTimeWarning}=e;let D="function"==typeof C?a.staleTime:C;o&&!1!==u&&!S&&!z&&D<u&&console.warn(`[createQueryStore${c?.storageKey?`: ${c.storageKey}`:""}] ❌ Stale times under ${u/1e3} seconds are not recommended. Provided staleTime: ${D/1e3} seconds`);const K=new Error("[createQueryStore: AbortError] Fetch interrupted"),R="function"==typeof g,$=o&&m,L=e.params?Object.keys(e.params):[];let V,H=!1,W=[],U=null,J=null,B=null,Q=null,G=null,X=null,Y=null;const Z={enabled:"function"!=typeof w&&w,error:null,lastFetchedAt:null,queryCache:{},queryKey:"",status:T.Idle},ee=new ut(S);function te(){B&&(Q=null,B.abort(),B=null)}function ne(){G&&(clearTimeout(G),G=null)}function re(e,t,n){const o=n.setState;function i(e){const t="function"==typeof e;if(t||void 0!==e.enabled){let n;const r=o(r=>{const o=t?e(r):e,i=void 0!==o.enabled?o.enabled:r.enabled;return i!==r.enabled&&(n=()=>function(e,t){e!==t&&Y!==t&&(Y=t,t&&ee.hasSubscribers()?queueMicrotask(()=>a.fetch(void 0,void 0,!0)):(G||h)&&(h&&te(),ne()))}(r.enabled,i)),o});return n?.(),r}return o(e)}function s(e){if(S||D<=0||D===1/0)return;if(!ee.hasSubscribers())return;ne();const n=t();if(!n.enabled)return;const r=V.buildKey(e),o=(v?X===r&&n.lastFetchedAt:n.queryCache[r]?.lastFetchedAt)||null,i=o?D-(Date.now()-o):D;G=setTimeout(()=>{t().enabled&&a.fetch(e,wt,!0)},i)}n.setState=i,ee.init({onSubscribe:(n,r)=>{const o=t();if(o.enabled)if(n){const t=V.get(),n=V.buildKey(t);o.queryKey!==n&&e({queryKey:n}),o.isStale()?a.fetch(t,void 0,!0):s(t)}else S&&!r&&a.fetch(void 0,void 0,!0)},onLastUnsubscribe:e=>{ne(),h&&!e&&te()}});const a={...r(i,t,n),...Z,async fetch(n,r,o=!1){const u=!!r?.skipStoreUpdates,m=t();if(!u){if(!m.enabled&&!r?.force)return null;if(o&&!ee.hasSubscribers())return null}const S=m.error,w=m.queryKey,F=m.status===T.Loading,k=V.complete(n),A=V.buildKey(k);if(F&&Q?.promise&&Q.key===A)return $&&console.log("[🔄 Using Active Fetch 🔄] for params:",JSON.stringify(k)),Q.promise;const C=r?.staleTime??D,x="boolean"==typeof r?.updateQueryKey?r.updateQueryKey:!!o&&j,z=(o||w===A||x)&&!u,E=null!==Q;if(h&&z&&te(),!r?.force){const t=m.lastFetchedAt,n=m.queryCache[A],r=n?.lastFetchedAt,o=n?.errorInfo,i=o&&o.retryCount>=_,c=(v?X===A&&t:r)||null;if(c&&!(Date.now()-c>=C)&&(!o||i||u))return z&&!G&&0!==D&&D!==1/0&&s(k),x&&e(e=>e.queryKey!==A?{queryKey:A}:e),$&&console.log("[💾 Returning Cached Data 💾] for params:",JSON.stringify(k)),n?.data??null}const P=z?{key:A}:null,M=r?.cacheTime??(R?g(k):g);async function N(){const m=c?.storageKey||A;try{$&&(!o&&n&&L.some(e=>!(e in n))?console.log("[🔄 Fetching with Partial Params 🔄]\n","- Provided params:",`${JSON.stringify(n)}\n`,"- Filled in params:",`${JSON.stringify(Object.fromEntries(Object.keys(k).filter(e=>!(e in n)).map(e=>[e,k[e]])))}`):console.log("[🔄 Fetching 🔄] for params:",JSON.stringify(k)));const t=await(h&&z?async function(e){const t=new AbortController;B=t;try{return await new Promise((n,r)=>{t.signal.addEventListener("abort",()=>r(K),Ot),Promise.resolve(l(e,t)).then(n,r)})}finally{B===t&&(B=null)}}(k):l(k,null)),c=Date.now();let f;$&&console.log("[✅ Fetch Successful ✅] for params:",JSON.stringify(k));try{f=function(e,t,n){return n?n(e,t):e}(t,k,p)}catch(e){throw Ct(m,"transform",e)}if(u)return $&&console.log("[🥷 Successful Parallel Fetch 🥷] for params:",JSON.stringify(k)),"withCache"===r.skipStoreUpdates&&e(e=>{if(!y)return v?e:{queryCache:{...e.queryCache,[A]:{cacheTime:M,data:f,errorInfo:null,lastFetchedAt:c}}};let t=e;const n=t.queryCache[A];try{y({data:f,params:k,queryKey:A,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}})}catch(e){throw Ct(m,"setData",e)}return!v&&Object.is(n,t.queryCache[A])&&(t={...t,queryCache:{...t.queryCache,[A]:{cacheTime:M,data:null,errorInfo:null,lastFetchedAt:c}}}),t}),f;if((y?i:e)(e=>{let t={...e,error:null,lastFetchedAt:c,queryKey:x?A:e.queryKey,status:T.Success};if(y||v){if(y){$&&console.log("[💾 Setting Data 💾] for params:",JSON.stringify(k));const e=t.queryCache[A];try{y({data:f,params:k,queryKey:A,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}})}catch(e){throw Ct(m,"setData",e)}!v&&Object.is(e,t.queryCache[A])&&(t.queryCache={...t.queryCache,[A]:{cacheTime:M,data:null,errorInfo:null,lastFetchedAt:c}})}}else $&&console.log("[💾 Setting Cache 💾] for params:",JSON.stringify(k),"| Has previous data?:",!!t.queryCache[A]?.data),t.queryCache={...t.queryCache,[A]:{cacheTime:M,data:f,errorInfo:null,lastFetchedAt:c}};return v||g===1/0?t:At(j,A,t)}),z&&(X=A,s(k)),d)try{d({data:f,fetch:a.fetch,params:k,set:i})}catch(e){b.error(Ct(m,"onFetched callback",e))}return f??null}catch(n){if(n===K)return $&&console.log("[❌ Fetch Aborted ❌] for params:",JSON.stringify(k)),null;const i=!o&&!0===r?.throwOnError,s=q(n);if(s instanceof O&&b.error(s),!z){if(i)throw s;return null}const c=v?void 0:t().queryCache[A],u=c?.errorInfo?.retryCount??0,l=u+1;try{f?.(s,u)}catch(e){b.error(Ct(m,"onError callback",e))}if(u<_){if(t().enabled&&ee.hasSubscribers()){const e="function"==typeof I?I(l,s):I;e!==1/0&&(ne(),G=setTimeout(()=>{t().enabled&&a.fetch(k,wt,!0)},e))}e(e=>({error:s,queryCache:{...e.queryCache,[A]:{cacheTime:c?.cacheTime??M,data:c?.data??null,lastFetchedAt:c?.lastFetchedAt??null,errorInfo:{error:s,lastFailedAt:Date.now(),retryCount:l}}},queryKey:x?A:e.queryKey,status:T.Error}))}else e(e=>({error:s,queryCache:{...e.queryCache,[A]:{cacheTime:c?.cacheTime??M,data:c?.data??null,lastFetchedAt:c?.lastFetchedAt??null,errorInfo:{error:s,lastFailedAt:Date.now(),retryCount:_}}},queryKey:x?A:e.queryKey,status:T.Error}));if(i)throw s;return null}finally{Q===P&&(Q=null)}}return P&&(ne(),x&&!E&&null===m.lastFetchedAt&&w!==A?e({error:null,queryKey:A,status:T.Loading}):!S&&F||e({error:null,status:T.Loading}),Q=P),P?(P.promise=N(),P.promise):N()},getCacheEntry(e){if(v)return null;const n=t(),r=e?"string"==typeof e?e:V.buildKey(V.complete(e)):n.queryKey;return n.queryCache[r]??null},getData(e){if(v)return null;const n=t().getCacheEntry(e);return n&&null!==n.data?j?n.data:n.lastFetchedAt&&Date.now()-n.lastFetchedAt>=n.cacheTime?null:n.data:null},getStatus:function(e){const n=t(),r=n.status;switch(e){case"isIdle":return r===T.Idle;case"isLoading":return r===T.Loading;case"isError":case"isInitialLoad":case"isSuccess":case void 0:{const t=n.queryKey,o=n.queryCache[t],i=v?r===T.Error:"number"==typeof o?.errorInfo?.lastFailedAt;if("isError"===e)return i;const s=null!==((v?X===t&&n.lastFetchedAt:o?.lastFetchedAt)||null),c=!s&&!i&&n.enabled;if("isInitialLoad"===e)return c;const a=s&&!i;return"isSuccess"===e?a:{isError:i,isIdle:r===T.Idle,isLoading:r===T.Loading,isInitialLoad:c,isSuccess:a}}}},isDataExpired(e){const n=t(),r=n.queryCache[n.queryKey],o=n.queryKey,i=n.lastFetchedAt,s=(v?X===o&&i:r?.lastFetchedAt)||null;if(!s)return!0;const c=e??r?.cacheTime;return void 0===c||Date.now()-s>=c},isStale(e){const n=t(),r=n.queryKey,o=(v?X===r&&n.lastFetchedAt:n.queryCache[r]?.lastFetchedAt)||null;if(!o)return!0;const i=e??D;return Date.now()-o>=i},reset(t=!1){for(const e of W)e();W=[],V=pt(void 0,oe,L),U=null,J=null,te(),ne(),Q=null,X=null,t&&e(Z)}},u=n.subscribe;return n.subscribe=(...e)=>{const t=H?void 0:ee.subscribe(),n=1===e.length?u(e[0]):u(e[0],e[1],e[2]);return e=>{t?.(e),n()}},a}const oe=c?.storageKey?Le(re,(ie=c,void 0===(se={partialize:kt(j,c.partialize)})?Object.assign({__proto__:null},ie):Object.assign({__proto__:null},ie,se))):s&&!("storageKey"in s)?Le(re,s):Le(re);var ie,se;const ce=oe.getState(),ae=ce.error,ue=ce.enabled,le=ce.queryKey,fe=ce.fetch;le&&!ae&&(X=le),H=!0,V=pt(A,oe,L),"function"==typeof w&&(U=gt(w,oe)),"function"==typeof e.staleTime&&(J=gt(e.staleTime,oe),D=J.initialValue);const de=function(e,t=queueMicrotask){let n,r=!1;function o(){r=!1,e(...n)}return function(...e){n=e,r||(r=!0,t(o))}}(e=>{fe(e,void 0,!0)},Ft);function ye(){if(j)de(void 0);else{const e=V.get();oe.setState({queryKey:V.buildKey(e)}),de(e)}}const pe=i||!k?void 0:Oe(ye,"number"==typeof k?k:k.delay,"number"==typeof k?{leading:!1,maxWait:k,trailing:!0}:k);if(W.push(V.subscribe((e,t,n)=>{$&&console.log("[🌀 Param Change 🌀] -",e,"- [Old]:",`${t?.toString()},`,"[New]:",n?.toString()),function(){if(ne(),pe){const e=oe.getState();return void(j&&Q?.key===e.queryKey&&null===e.lastFetchedAt?ye():pe())}ye()}()})),J){let e=J.initialValue;$&&console.log("[🌀 StaleTime Subscription 🌀] Initial value:",e),W.push(J.subscribe(t=>{t!==e&&($&&console.log("[🌀 StaleTime Change 🌀] - [Old]:",`${e},`,"[New]:",t),e=t,D=t,ne(),fe(void 0,void 0,!0))}))}let he;if(U){let e=U.initialValue;ue!==e&&((he??(he={})).enabled=e),$&&console.log("[🌀 Enabled Subscription 🌀] Initial value:",e),W.push(U.subscribe(t=>{t!==e&&($&&console.log("[🌀 Enabled Change 🌀] - [Old]:",`${e},`,"[New]:",t),e=t,oe.setState({enabled:t}))}))}else ue!==Z.enabled&&((he??(he={})).enabled=Z.enabled);const ge=V.buildKey();return ge!==le&&((he??(he={})).queryKey=ge),he&&oe.setState(he),H=!1,be=oe,me=N.QueryStore,Object.assign(be,{[me]:!0});var be,me}(e,t,n);return h(r,r.getState,r.getInitialState,Object.is)},exports.createStoreActions=function(e,t){const n=function(e){const t=e.getState(),n={__proto__:null},r=n;if(o&&("object"!=typeof t||null===t))throw new Error("[createStoreActions]: State is not an object");if(J(e))for(const n in t)Q(t,n)&&(r[n]=B(e,n));else for(const e in t)Q(t,e)&&(r[e]=t[e]);return n}(e);return t?Object.assign(n,t):n},exports.createVirtualStore=function(e,t,n){const r=function(e,t,n){const r="function"==typeof t,o=r?t:void 0,i=r?n:t,s=new Set;let c;function u(e,t,n,r){l(e,t,n,r)&&ae()}function l(e,t,n,r){e.unsubscribe();const o=e.args;if(1===o.length){const i=o[0],s=t.subscribe(i);e.unsubscribe=s;const c=!Object.is(r,n);return c&&i(r,n),c}const i=o[0],s=o[1];let c=o[2];c?.fireImmediately&&(c={...c,fireImmediately:!1});const a=i(n),u=i(r),l=t.subscribe(i,s,c);return e.unsubscribe=l,!(c?.equalityFn??Object.is)(a,u)&&(s(u,a),!0)}function f(e,t){!function(e,t){const n=e.getState(),r=t.getState();if(c)for(const e of c)u(e,t,n,r);s.size&&ue();for(const e of s)l(e,t,n,r)}(t,e),V(t)}const d=st(e,{debugMode:i?.debugMode??!1,lockDependencies:i?.lockDependencies??!0});let y;function p(){return y??(y=d.subscribe(f)),d.getState()}const h=Object.assign({[N.VirtualStore]:!0,destroy:()=>{y?.(),y=void 0,d.destroy()},getInitialState:()=>p().getInitialState(),getState:()=>p().getState(),persist:(g=p,{clearStorage:()=>g().persist?.clearStorage(),getOptions:()=>g().persist?.getOptions()??{},hasHydrated:()=>g().persist?.hasHydrated()??!0,hydrationPromise:()=>g().persist?.hydrationPromise?.()??Promise.resolve(),onFinishHydration:e=>g().persist?.onFinishHydration(e)??a,onHydrate:e=>g().persist?.onHydrate(e)??a,rehydrate:()=>g().persist?.rehydrate(),setOptions:e=>g().persist?.setOptions(e)}),setState:xt(p),subscribe:function(...e){const t=p(),n={args:e,unsubscribe:1===e.length?t.subscribe(e[0]):t.subscribe(e[0],e[1],e[2])},r=e[2]?.isCascadeParticipant??!1;return r?(c??(c=new Set)).add(n):s.add(n),()=>{n.unsubscribe(),r?c?.delete(n)&&0===c.size&&(c=void 0):s.delete(n)}}},o?.(p));var g;return h}(e,t,n);return h(r,r.getState,r.getInitialState)},exports.deepEqual=function e(t,n){if("object"!=typeof t||null==t||"object"!=typeof n||null==n)return t===n;if(Object.is(t,n))return!0;const r=Object.keys(t);if(r.length!==Object.keys(n).length)return!1;for(const o of r)if(!(o in n)||!e(t[o],n[o]))return!1;return!0},exports.defaultRetryDelay=M,exports.destroyStore=V,exports.destroyStores=function(e,t){for(const n of Array.isArray(e)?e:Object.values(e))n&&!t?.skipDestroy?.(n)&&V(n,t)},exports.getQueryKey=ft,exports.getStoreName=function(e){const t="function"==typeof(n=e)?n.name:"";var n;return U(e)?e.persist.getOptions().name??t:t},exports.hasGetSnapshot=H,exports.identity=s,exports.isDerivedStore=function(e){return"flushUpdates"in e},exports.isPersistedStore=U,exports.isQueryStore=W,exports.isVirtualStore=J,exports.nullObject=c,exports.parseQueryKey=function(e){return JSON.parse(e)},exports.queryParam=function(e,t){return{[lt]:!0,key:t.key,value:e}},exports.replacer=$,exports.reviver=L,exports.shallowEqual=function(e,t){if("object"!=typeof e||null==e||"object"!=typeof t||null==t)return e===t;if(Object.is(e,t))return!0;const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.is(e[r],t[r]))return!1;return!0},exports.time=P,exports.useListen=function(t,n,r,o=Et){const i=function(){const t=e.useRef(zt);return t.current===zt&&(t.current=function(e,t,n){return{selector:e,react:t,isActive:!1,options:Mt(n),resubscribe:a,unsubscribe:a}}(n,r,o)),t}(),s=function(e){return"function"==typeof e?Et.enabled:e?.enabled??Et.enabled}(o);return i.current.react=r,i.current.selector=n,function(e,t){"function"==typeof t?e.current.options.equalityFn=t:t&&(e.current.options=t??Et)}(i,o),e.useLayoutEffect(()=>{if(s)return Pt(t,i),()=>function(e){e.current.options.debugMode&&console.log("[🗑️ useListen 🗑️] Detaching listener"),e.current.resubscribe=a,e.current.unsubscribe(),e.current.unsubscribe=a,e.current.isActive=!1}(i)},[s,t]),i},exports.useStableValue=function(t){const n=e.useRef(Dt);return n.current===Dt&&(n.current=t()),n.current};