@storesjs/stores 0.8.7 → 0.9.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.
- package/dist/config.d.ts +37 -7
- package/dist/createQueryStore.d.ts +3 -19
- package/dist/createStoreWithEqualityFn.d.ts +5 -0
- package/dist/createVirtualStore.d.ts +4 -3
- package/dist/derivedStore/cascadeScheduler.d.ts +8 -0
- package/dist/derivedStore/deriveProxy.d.ts +6 -16
- package/dist/derivedStore/pathFinder.d.ts +27 -0
- package/dist/errors.d.ts +14 -0
- package/dist/hooks/useSyncExternalStoreWithSelector.d.ts +5 -0
- package/dist/index.d.ts +3 -1
- package/dist/logger.d.ts +0 -5
- package/dist/native/index.js +1 -1
- package/dist/native/index.mjs +1 -1
- package/dist/plugins/chrome/chromeExtensionSyncEngine.d.ts +3 -1
- package/dist/queryStore/queryStoreDefaults.d.ts +8 -0
- package/dist/queryStore/signalTypes.d.ts +13 -0
- package/dist/queryStore/types.d.ts +35 -30
- package/dist/signal.d.ts +2 -11
- package/dist/sync/syncEnhancer.d.ts +4 -0
- package/dist/sync/types.d.ts +53 -128
- package/dist/types/functions.d.ts +19 -2
- package/dist/types/objects.d.ts +10 -3
- package/dist/types.d.ts +26 -27
- package/dist/utils/core.d.ts +23 -4
- package/dist/utils/createStoreActions.d.ts +3 -3
- package/dist/utils/persistUtils.d.ts +2 -2
- package/dist/utils/storeUtils.d.ts +1 -1
- package/dist/utils/time.d.ts +0 -3
- package/dist/web/chrome.js +1 -1
- package/dist/web/chrome.mjs +1 -1
- package/dist/web/chunk-3U5A7HQV.mjs +1 -0
- package/dist/web/index.js +1 -1
- package/dist/web/index.mjs +1 -1
- package/package.json +10 -6
- package/dist/sync/transport.d.ts +0 -113
- package/dist/web/chunk-MMPMCVRC.mjs +0 -1
package/dist/config.d.ts
CHANGED
|
@@ -1,13 +1,25 @@
|
|
|
1
1
|
import { Logger } from './logger';
|
|
2
|
+
import { QueryStoreConfig } from './queryStore/types';
|
|
2
3
|
import { SyncEngine } from './sync/types';
|
|
3
4
|
import { AsyncStorageInterface, SyncStorageInterface } from './types';
|
|
5
|
+
import { NonFunction } from './types/functions';
|
|
6
|
+
import { Prettify } from './types/objects';
|
|
4
7
|
/**
|
|
5
8
|
* Global configuration for all stores.
|
|
6
9
|
*/
|
|
7
10
|
export type StoresConfig = {
|
|
8
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Custom logger for debug output. Defaults to a no-op logger in production.
|
|
13
|
+
*/
|
|
9
14
|
logger: Logger;
|
|
10
|
-
/**
|
|
15
|
+
/**
|
|
16
|
+
* Default options used by all query stores.
|
|
17
|
+
*/
|
|
18
|
+
queryStoreDefaults: QueryStoreDefaults;
|
|
19
|
+
/**
|
|
20
|
+
* Storage backend for persisted stores. Defaults to `localStorage` in browsers,
|
|
21
|
+
* MMKV in React Native.
|
|
22
|
+
*/
|
|
11
23
|
storage: AsyncStorageInterface | SyncStorageInterface;
|
|
12
24
|
/**
|
|
13
25
|
* Prefix for storage keys built by the default storage adapter.
|
|
@@ -15,15 +27,32 @@ export type StoresConfig = {
|
|
|
15
27
|
* @default 'stores:'
|
|
16
28
|
*/
|
|
17
29
|
storageKeyPrefix: string;
|
|
18
|
-
/**
|
|
30
|
+
/**
|
|
31
|
+
* Sync engine for cross-client state synchronization. Defaults to cross-tab sync
|
|
32
|
+
* in browsers, no-op in other environments.
|
|
33
|
+
*/
|
|
19
34
|
syncEngine: SyncEngine;
|
|
20
35
|
};
|
|
36
|
+
export type QueryStoreDefaults = Prettify<ConfigDefaults<QueryStoreConfig<unknown, Record<string, unknown>>, 'disableCache' | 'enabled' | 'params', 'retryDelay'>> & {
|
|
37
|
+
/**
|
|
38
|
+
* Minimum stale time for auto-refetching query stores under which to log warnings in development.
|
|
39
|
+
* `false` disables warnings.
|
|
40
|
+
* @default false
|
|
41
|
+
*/
|
|
42
|
+
minStaleTime?: number | false;
|
|
43
|
+
};
|
|
44
|
+
type ConfigDefaults<C, Excluded extends keyof C = never, AllowedFunctions extends keyof C = never> = Omit<{
|
|
45
|
+
[K in keyof C as K extends AllowedFunctions ? K : NonFunction<C[K]> extends undefined ? never : K]?: K extends AllowedFunctions ? C[K] : NonFunction<C[K]>;
|
|
46
|
+
}, Excluded>;
|
|
47
|
+
type Options = Pick<StoresConfig, 'queryStoreDefaults'>;
|
|
21
48
|
type StorageConfig = Pick<StoresConfig, 'storage' | 'syncEngine'>;
|
|
22
49
|
export declare const DEFAULT_STORAGE_KEY_PREFIX = "stores:";
|
|
23
50
|
/**
|
|
24
|
-
* Configures global defaults for all stores.
|
|
51
|
+
* Configures global defaults for all stores.
|
|
52
|
+
*
|
|
53
|
+
* If used, must be called before creating any stores.
|
|
25
54
|
*
|
|
26
|
-
* @see {@link StoresConfig}
|
|
55
|
+
* @see {@link StoresConfig}
|
|
27
56
|
*
|
|
28
57
|
* @example
|
|
29
58
|
* ```ts
|
|
@@ -33,8 +62,9 @@ export declare const DEFAULT_STORAGE_KEY_PREFIX = "stores:";
|
|
|
33
62
|
* });
|
|
34
63
|
* ```
|
|
35
64
|
*/
|
|
36
|
-
export declare function configureStores(
|
|
37
|
-
export declare function
|
|
65
|
+
export declare function configureStores(config: Partial<StoresConfig>): void;
|
|
66
|
+
export declare function getOptions(): Options | undefined;
|
|
67
|
+
export declare function getStorageConfig(): StorageConfig;
|
|
38
68
|
export declare function markStoreCreated(): void;
|
|
39
69
|
export {};
|
|
40
70
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { defaultRetryDelay } from './queryStore/queryStoreDefaults';
|
|
1
2
|
import { QueryStoreConfig, QueryStoreState } from './queryStore/types';
|
|
2
3
|
import { BaseStoreOptions, OptionallyPersistedStore, PersistedStore, StateCreator, Store } from './types';
|
|
3
4
|
/**
|
|
@@ -91,7 +92,7 @@ export declare function createQueryStore<TQueryFnData, TParams extends Record<st
|
|
|
91
92
|
* @template TData - The transformed data type, if applicable (defaults to `TQueryFnData`)
|
|
92
93
|
* @template PersistedState - The persisted state type, if a stricter type than `Partial<CustomState>` is desired
|
|
93
94
|
*/
|
|
94
|
-
export declare function createQueryStore<TQueryFnData, TParams extends Record<string, unknown> = Record<string, never>, TData = TQueryFnData, PersistedState extends Partial<QueryStoreState<TData, TParams>> = Partial<QueryStoreState<TData, TParams>>, PersistReturn extends void = void>(config: QueryStoreConfig<TQueryFnData, TParams, TData
|
|
95
|
+
export declare function createQueryStore<TQueryFnData, TParams extends Record<string, unknown> = Record<string, never>, TData = TQueryFnData, PersistedState extends Partial<QueryStoreState<TData, TParams>> = Partial<QueryStoreState<TData, TParams>>, PersistReturn extends void = void>(config: QueryStoreConfig<TQueryFnData, TParams, TData>, options: BaseStoreOptions<QueryStoreState<TData, TParams>, PersistedState, PersistReturn> | undefined): OptionallyPersistedStore<QueryStoreState<TData, TParams>, PersistedState, PersistReturn>;
|
|
95
96
|
/**
|
|
96
97
|
* Creates a conditionally persisted, query-enabled store with data fetching capabilities (async storage).
|
|
97
98
|
*
|
|
@@ -102,24 +103,7 @@ export declare function createQueryStore<TQueryFnData, TParams extends Record<st
|
|
|
102
103
|
* @template TData - The transformed data type, if applicable (defaults to `TQueryFnData`)
|
|
103
104
|
* @template PersistedState - The persisted state type, if a stricter type than `Partial<CustomState>` is desired
|
|
104
105
|
*/
|
|
105
|
-
export declare function createQueryStore<TQueryFnData, TParams extends Record<string, unknown> = Record<string, never>, TData = TQueryFnData, PersistedState extends Partial<QueryStoreState<TData, TParams>> = Partial<QueryStoreState<TData, TParams>>, PersistReturn extends Promise<void> = Promise<void>>(config: QueryStoreConfig<TQueryFnData, TParams, TData
|
|
106
|
-
/**
|
|
107
|
-
* The default query store `retryDelay` function.
|
|
108
|
-
*
|
|
109
|
-
* Exponential backoff starting at `baseDelay` (5s default), doubling each retry, capped at `maxDelay` (5m default).
|
|
110
|
-
*
|
|
111
|
-
* ```ts
|
|
112
|
-
* retryCount => Math.min(baseDelay * Math.pow(2, retryCount), maxDelay)
|
|
113
|
-
* ```
|
|
114
|
-
*/
|
|
115
|
-
export declare function defaultRetryDelay(retryCount: number, options?: {
|
|
116
|
-
baseDelay?: number;
|
|
117
|
-
maxDelay?: number;
|
|
118
|
-
}): number;
|
|
119
|
-
/**
|
|
120
|
-
* @deprecated Use `getQueryKey` instead, unless using for non-parsable query keys.
|
|
121
|
-
*/
|
|
122
|
-
export declare function getLegacyQueryKey<TParams extends Record<string, unknown>>(params: TParams): string;
|
|
106
|
+
export declare function createQueryStore<TQueryFnData, TParams extends Record<string, unknown> = Record<string, never>, TData = TQueryFnData, PersistedState extends Partial<QueryStoreState<TData, TParams>> = Partial<QueryStoreState<TData, TParams>>, PersistReturn extends Promise<void> = Promise<void>>(config: QueryStoreConfig<TQueryFnData, TParams, TData>, options: BaseStoreOptions<QueryStoreState<TData, TParams>, PersistedState, PersistReturn> | undefined): OptionallyPersistedStore<QueryStoreState<TData, TParams>, PersistedState, PersistReturn>;
|
|
123
107
|
/**
|
|
124
108
|
* Generates a deterministic query store `queryKey` from the given parameters,
|
|
125
109
|
* consistent with internally generated keys.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type Mutate, type StateCreator as ZustandStateCreator, type StoreApi } from 'zustand/vanilla';
|
|
2
|
+
import type { EqualityFn, StoreMutators, StoreMutatorsWithSelector, UseBoundStoreWithEqualityFn } from './types';
|
|
3
|
+
export declare function createStoreWithEqualityFn<State, Mutators extends StoreMutators = []>(initializer: ZustandStateCreator<State, [], StoreMutatorsWithSelector<Mutators>>, defaultEqualityFn?: EqualityFn): UseBoundStoreWithEqualityFn<Mutate<StoreApi<State>, StoreMutatorsWithSelector<Mutators>>, State>;
|
|
4
|
+
export declare function createStoreWithEqualityFn<State>(): <Mutators extends StoreMutators = []>(initializer: ZustandStateCreator<State, [], StoreMutatorsWithSelector<Mutators>>, defaultEqualityFn?: EqualityFn) => UseBoundStoreWithEqualityFn<Mutate<StoreApi<State>, StoreMutatorsWithSelector<Mutators>>, State>;
|
|
5
|
+
//# sourceMappingURL=createStoreWithEqualityFn.d.ts.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { DeriveGetter } from './createDerivedStore';
|
|
2
2
|
import { BaseStore, InferPersistedState, InferSetStateReturn, InferStoreState, OptionallyPersistedStore } from './types';
|
|
3
|
-
type MethodOverrides<Store extends BaseStore<
|
|
3
|
+
type MethodOverrides<Store extends BaseStore<unknown>> = Partial<Pick<Store, 'getState' | 'setState'>>;
|
|
4
|
+
type VirtualStore<Store extends BaseStore<unknown>> = OptionallyPersistedStore<InferStoreState<Store>, InferPersistedState<Store>, InferSetStateReturn<Store>>;
|
|
4
5
|
type VirtualStoreOptions = {
|
|
5
6
|
debugMode?: boolean;
|
|
6
7
|
/**
|
|
@@ -34,7 +35,7 @@ type VirtualStoreOptions = {
|
|
|
34
35
|
* });
|
|
35
36
|
* ```
|
|
36
37
|
*/
|
|
37
|
-
export declare function createVirtualStore<Store extends BaseStore<InferStoreState<Store>>>(createStore: ($: DeriveGetter) => Store, options?: VirtualStoreOptions):
|
|
38
|
-
export declare function createVirtualStore<Store extends BaseStore<InferStoreState<Store>>, Overrides extends MethodOverrides<Store>>(createStore: ($: DeriveGetter) => Store, overrides: (getStore: () => Store) => Overrides, options?: VirtualStoreOptions):
|
|
38
|
+
export declare function createVirtualStore<Store extends BaseStore<InferStoreState<Store>>>(createStore: ($: DeriveGetter) => Store, options?: VirtualStoreOptions): VirtualStore<Store>;
|
|
39
|
+
export declare function createVirtualStore<Store extends BaseStore<InferStoreState<Store>>, Overrides extends MethodOverrides<Store>>(createStore: ($: DeriveGetter) => Store, overrides: (getStore: () => Store) => Overrides, options?: VirtualStoreOptions): VirtualStore<Store> & Overrides;
|
|
39
40
|
export {};
|
|
40
41
|
//# sourceMappingURL=createVirtualStore.d.ts.map
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cascade Scheduler
|
|
3
|
+
*
|
|
4
|
+
* - Coalesces derivations into a single microtask.
|
|
5
|
+
* - Tasks run once at their maximum rank via a ranked dirty queue.
|
|
6
|
+
* - Doesn't retain snapshots or dependency graphs.
|
|
7
|
+
* - Component listeners get notified after all derivations have settled.
|
|
8
|
+
*/
|
|
1
9
|
type Rank = number;
|
|
2
10
|
type StoreId = string;
|
|
3
11
|
type Task = () => void;
|
|
@@ -1,25 +1,15 @@
|
|
|
1
|
-
import { BaseStore
|
|
2
|
-
|
|
3
|
-
args: unknown[] | undefined;
|
|
4
|
-
method: string;
|
|
5
|
-
};
|
|
6
|
-
type TrackPathFn = (store: BaseStore<unknown>, path: string[], isLeaf: boolean, invocation?: TrackedInvocation) => void;
|
|
7
|
-
type SubscriptionBuilder = (store: BaseStore<unknown>, selector: Selector<unknown, unknown>) => void;
|
|
1
|
+
import { BaseStore } from '../types';
|
|
2
|
+
import { TrackPathFn } from './pathFinder';
|
|
8
3
|
/**
|
|
9
4
|
* Gets or creates a lightweight tracking proxy that records path access and store
|
|
10
5
|
* method invocations via proxy traps. Used to auto-generate selectors that point
|
|
11
6
|
* to either the accessed path or the value returned by an invoked store method.
|
|
12
7
|
*/
|
|
13
8
|
export declare function getOrCreateProxy<S>(store: BaseStore<S>, rootProxyCache: WeakMap<BaseStore<unknown>, unknown>, trackPath: TrackPathFn): S;
|
|
14
|
-
export type PathFinder = {
|
|
15
|
-
buildProxySubscriptions(createSubscription: SubscriptionBuilder, shouldLog: boolean): void;
|
|
16
|
-
trackPath: TrackPathFn;
|
|
17
|
-
};
|
|
18
9
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* - `trackPath()`: records usage of a store path
|
|
10
|
+
* Strips tracking proxies from published values to ensure
|
|
11
|
+
* proxies remain confined to internal tracking contexts.
|
|
22
12
|
*/
|
|
23
|
-
export declare function
|
|
24
|
-
export
|
|
13
|
+
export declare function stripProxies<T>(value: T): T;
|
|
14
|
+
export declare function stripProxies(value: unknown, seen?: WeakSet<object>): unknown;
|
|
25
15
|
//# sourceMappingURL=deriveProxy.d.ts.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Selector, SubscribableStore } from '../types';
|
|
2
|
+
type TrackedInvocation = {
|
|
3
|
+
args: unknown[] | undefined;
|
|
4
|
+
method: string;
|
|
5
|
+
};
|
|
6
|
+
type PathEntry = {
|
|
7
|
+
path: string[];
|
|
8
|
+
store: SubscribableStore;
|
|
9
|
+
invocation?: TrackedInvocation;
|
|
10
|
+
isLeaf: boolean;
|
|
11
|
+
};
|
|
12
|
+
type SubscriptionBuilder = (store: SubscribableStore, selector: Selector<unknown, unknown>, path: string[]) => void;
|
|
13
|
+
export type PathFinder = {
|
|
14
|
+
buildProxySubscriptions(createSubscription: SubscriptionBuilder, shouldLog: boolean, minConsolidationDepth?: number, shouldBuild?: (paths: Set<PathEntry>) => boolean): void;
|
|
15
|
+
reset(): void;
|
|
16
|
+
trackPath: TrackPathFn;
|
|
17
|
+
};
|
|
18
|
+
export type TrackPathFn = (store: SubscribableStore, path: string[], isLeaf: boolean, invocation?: TrackedInvocation) => void;
|
|
19
|
+
/**
|
|
20
|
+
* A factory that returns a proxy path-tracking object with three methods:
|
|
21
|
+
* - `buildProxySubscriptions()`: builds subscriptions to the final paths
|
|
22
|
+
* - `reset()`: clears all tracked paths
|
|
23
|
+
* - `trackPath()`: records usage of a store path
|
|
24
|
+
*/
|
|
25
|
+
export declare function createPathFinder(): PathFinder;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=pathFinder.d.ts.map
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error reported or thrown by the stores package itself.
|
|
3
|
+
*
|
|
4
|
+
* If an underlying thrown value caused the failure, it is available as `cause`.
|
|
5
|
+
*/
|
|
6
|
+
export declare class StoresError extends Error {
|
|
7
|
+
cause?: unknown;
|
|
8
|
+
constructor(message: string, cause?: unknown);
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Normalizes unknown thrown values for store state and promise rejection paths.
|
|
12
|
+
*/
|
|
13
|
+
export declare function ensureError(error: unknown): Error;
|
|
14
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { EqualityFn, Selector, SubscribeOverloads } from '../types';
|
|
2
|
+
export declare function useSyncExternalStoreWithSelector<State>(subscribe: SubscribeOverloads<State>, getSnapshot: () => State, getServerSnapshot?: (() => State) | undefined, selector?: undefined, equalityFn?: undefined): State;
|
|
3
|
+
export declare function useSyncExternalStoreWithSelector<State, Selected>(subscribe: SubscribeOverloads<State>, getSnapshot: () => State, getServerSnapshot: (() => State) | undefined, selector: Selector<State, Selected>, equalityFn?: EqualityFn<Selected>): Selected;
|
|
4
|
+
export declare function useSyncExternalStoreWithSelector<State, Selected>(subscribe: SubscribeOverloads<State>, getSnapshot: () => State, getServerSnapshot: (() => State) | undefined, selector: Selector<State, Selected> | undefined, equalityFn?: EqualityFn<Selected>): State | Selected;
|
|
5
|
+
//# sourceMappingURL=useSyncExternalStoreWithSelector.d.ts.map
|
package/dist/index.d.ts
CHANGED
|
@@ -3,14 +3,16 @@ export { createBaseStore } from './createBaseStore';
|
|
|
3
3
|
export * from './createDerivedStore';
|
|
4
4
|
export * from './createQueryStore';
|
|
5
5
|
export * from './createVirtualStore';
|
|
6
|
+
export { StoresError } from './errors';
|
|
6
7
|
export { replacer, reviver } from './utils/serialization';
|
|
7
|
-
export { applyStateUpdate, destroyStore, destroyStores, getStoreName, isDerivedStore, isPersistedStore, isQueryStore, isVirtualStore, } from './utils/storeUtils';
|
|
8
|
+
export { applyStateUpdate, destroyStore, destroyStores, getStoreName, hasGetSnapshot, isDerivedStore, isPersistedStore, isQueryStore, isVirtualStore, } from './utils/storeUtils';
|
|
8
9
|
export * from './hooks/useListen';
|
|
9
10
|
export * from './hooks/useStableValue';
|
|
10
11
|
export * from './sync/types';
|
|
11
12
|
export * from './queryStore/types';
|
|
12
13
|
export * from './storage/storageTypes';
|
|
13
14
|
export * from './types';
|
|
15
|
+
export { identity, nullObject } from './utils/core';
|
|
14
16
|
export * from './utils/createStoreActions';
|
|
15
17
|
export { deepEqual, shallowEqual } from './utils/equality';
|
|
16
18
|
export { time } from './utils/time';
|
package/dist/logger.d.ts
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
export declare class StoresError extends Error {
|
|
2
|
-
cause: Error;
|
|
3
|
-
constructor(message: string, error?: unknown);
|
|
4
|
-
}
|
|
5
1
|
export interface Logger {
|
|
6
2
|
debug: (message: string, context?: Record<string, unknown>) => void;
|
|
7
3
|
error: {
|
|
@@ -12,6 +8,5 @@ export interface Logger {
|
|
|
12
8
|
warn: (message: string, context?: Record<string, unknown>) => void;
|
|
13
9
|
}
|
|
14
10
|
export declare let logger: Logger;
|
|
15
|
-
export declare function ensureError(error: unknown): Error;
|
|
16
11
|
export declare function setLogger(customLogger: Logger): void;
|
|
17
12
|
//# sourceMappingURL=logger.d.ts.map
|
package/dist/native/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=require("react-native"),t=require("react-native-mmkv"),r=require("zustand/middleware"),n=require("zustand/traditional"),o=require("use-sync-external-store/shim/with-selector"),i=require("react"),s="ios"===e.Platform.OS;e.Platform.OS;var c="development"===process.env.NODE_ENV,a="test"===process.env.NODE_ENV;function u(e){let r;function n(){if(r)return r;try{const n=function(e){if("function"==typeof t.createMMKV)return t.createMMKV({id:e});if("function"==typeof t.MMKV)return new t.MMKV({id:e});throw new Error("[stores]: react-native-mmkv module does not export MMKV/createMMKV.")}(e);let o;if("function"==typeof n.delete){const e=n.delete;o=t=>e.call(n,t)}else if("function"==typeof n.remove){const e=n.remove;o=t=>e.call(n,t)}if("function"!=typeof o)throw new Error("[stores]: Storage instance does not conform to expected interface");r={clearAll:()=>n.clearAll(),contains:e=>n.contains(e),delete:e=>o(e),get:e=>n.getString(e),getAllKeys:()=>n.getAllKeys(),set:(e,t)=>n.set(e,t)}}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")}(r),r}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 l=class extends Error{constructor(e,t){super(e),this.name="StoresError",this.cause=d(t)}},f={debug:(e,t)=>{c&&console.debug(e,t)},error:(e,t)=>{c&&!a&&console.error(e,t)},info:(e,t)=>{c&&console.info(e,t)},warn:(e,t)=>{c&&console.warn(e,t)}};function d(e){return e instanceof Error?e:new Error(String(e))}var y,p,h=class{destroy(){}publish(){}},g=class{constructor(){this.sessionId="noop"}register(e){return new h}},b=!1;function m(){return p??(p=v(void 0))}function S(){b=!0}function v(e){return{storage:e?.storage??u(e?.storageKeyPrefix??"stores:"),syncEngine:e?.syncEngine??(y||(y=new g),y)}}function w(){let e,t,r=!1;return{complete:function(){!r&&e&&(r=!0,e(),e=void 0,t=void 0)},isHydrated:function(){return r},fail:function(n){!r&&t&&(r=!0,t(n),t=void 0,e=void 0)},promise:new Promise((r,n)=>{e=r,t=n})}}var O=Math.max,j=Math.min;function q(e,t=0,r={}){let n,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 r=n,i=o;return n=o=void 0,u=t,s=r?e.apply(i,r):e.apply(i),s}function p(e){const r=e-(a??0);return void 0===a||r>=t||r<0||f&&void 0!==i&&e-u>=i}function h(){const e=A();if(p(e))return g(e);c=setTimeout(h,function(e){const r=t-(e-(a??0));return f&&void 0!==i?j(r,i-(e-u)):r}(e))}function g(e){return c=void 0,d&&n?y(e):(n=o=void 0,s)}function b(...e){const r=A(),i=p(r);if(n=e,o=this,a=r,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=F(t)||0,function(e){const t=typeof e;return null!==e&&("object"===t||"function"===t)}(r)&&(l=!!r.leading,f="maxWait"in r,i=f?O(F(r.maxWait)||0,t):void 0,d="trailing"in r?!!r.trailing:d),b.cancel=function(){void 0!==c&&clearTimeout(c),u=0,n=a=o=c=void 0},b.flush=function(){return void 0===c?s:g(A())},b}function A(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}function F(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 C(e,t){return t instanceof Map?{__type:"Map",entries:Array.from(t.entries())}:t instanceof Set?{__type:"Set",values:Array.from(t)}:t}function I(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 k(e){if(null!==e&&"object"==typeof e){const t={};for(const[r,n]of Object.entries(e))"function"!=typeof n&&(t[r]=n);return t}return e}var M={ms:e=>e,seconds:e=>1e3*e,minutes:e=>M.seconds(60*e),hours:e=>M.minutes(60*e),days:e=>M.hours(24*e),weeks:e=>M.days(7*e),infinity:1/0,zero:0},T=a?0:s?M.seconds(3):M.seconds(5);function E(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?I:void 0)}catch(e){throw f.error(new l("[createBaseStore]: Failed to deserialize persisted store data"),{error:e}),e}}(t,e)}}function K(e){return t=>function(e,t){try{return JSON.stringify(e,t?C:void 0)}catch(e){throw f.error(new l("[createBaseStore]: Failed to serialize store data"),{error:e}),e}}(t,e)}var x=Object.freeze({shouldClear:!1});function z(e,t,r){if(!t||!e)return x;const n=e.getFieldTimestampSnapshot();return function(e,t){const r=e.getSessionId(),n=e.getTimestamp();void 0!==r&&void 0!==n&&(t.syncMetadata={origin:r,timestamp:n})}(e,r),r.syncMetadata?n&&Object.keys(n).length>0?(r.syncMetadata.fields=n,{fieldSnapshot:n,shouldClear:!0}):(delete r.syncMetadata.fields,{fieldSnapshot:n,shouldClear:!1}):{fieldSnapshot:n,shouldClear:!1}}function D(e,t){e&&t.shouldClear&&t.fieldSnapshot&&Object.keys(t.fieldSnapshot).length&&e.clearFieldTimestamps(t.fieldSnapshot)}function P(e){return!!e&&!!e.getIsApplyingRemote()}var $=Object.freeze({QueryStore:Symbol("queryStore"),VirtualStore:Symbol("virtualStore")});function L(e,...t){if(!0===t[1])return J(t[0])?t[0](e):t[0];const r=J(t[0])?t[0](e):t[0];return function(e){return Array.isArray(e)}(e)?r:{...e,...r}}function R(e,t){W(e)?e.getState().reset(t?.clearQueryCache):function(e){return"destroy"in e}(e)&&e.destroy()}function N(e){return Q(e)?e.persist.getOptions().name??e.name:e.name}function V(e){return"getSnapshot"in e}function W(e){return $.QueryStore in e}function Q(e){return"persist"in e}function _(e){return $.VirtualStore in e}function J(e){return"function"==typeof e}var[U,B]=[0,1];function H(e,t,r){if(!e)return!0;const n=e[U],o=e[B];return!(t<n)&&(t>n||r>o)}function G(e,t){return Object.prototype.hasOwnProperty.call(t,e)}function X(e,t){if(!c)return!0;if(null===e||null===t)return e===t;const r=typeof e;return r===typeof t&&("object"!==r||Object.prototype.toString.call(e)===Object.prototype.toString.call(t))}function Y(e){if(null===e)return"null";const t=typeof e;return"object"===t?Object.prototype.toString.call(e):t}function Z(e,t){S();const o=void 0!==t&&"string"==typeof t.storageKey,i=o?t.storageKey:void 0,s=t?.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 r=e,n=r.key??t;if(!n)throw new l("[createBaseStore]: sync requires either a key in the config or a storageKey to inherit from");return{...r,key:n}}(t.sync,i):void 0,c=o?t.storage??m().storage:void 0,a=s?function(e,t,r){const n=t.engine??m().syncEngine,o=function(e){let t,r,n,o=!1;return{isAsync:e,clearFieldTimestamps:function(e){if(e&&n){for(const t of Object.entries(e)){const e=t[0],r=t[1];n[e]===r&&delete n[e]}Object.keys(n).length||(n=void 0)}},getFieldTimestampSnapshot:function(){if(n)return{...n}},getIsApplyingRemote:()=>o,getSessionId:()=>t,getTimestamp:()=>r,mergeFieldTimestamps:function(e){if(n)for(const t of Object.entries(e)){const e=t[0],r=t[1],o=n[e];(void 0===o||r>o)&&(n[e]=r)}else n={...e}},onHydrationComplete:void 0,onHydrationFlushEnd:void 0,setIsApplyingRemote:e=>o=e,setSessionId:e=>t=e,setTimestamp:e=>r=e,setWithoutPersist:void 0}}(r);return{stateCreator:(i,s,c)=>{const a=new Map,u=[],d=[];let y=null,p=!1,h=!1,g=0,b=null,m=[],S=Promise.resolve(),v=!r;const w=(e,t)=>{if(o?.setSessionId&&o?.setTimestamp&&n.sessionId&&(o.setSessionId(n.sessionId),o.setTimestamp(e),o.mergeFieldTimestamps&&t.length>0)){const r=Object.create(null);for(const n of t)r[String(n)]=e;o.mergeFieldTimestamps(r)}},O=function(e,t){if(p||!b)return t?i(e,t):i(e);const r=(()=>{const e=Date.now(),t=e>g?e:g+1;return g=t,t})();let o=[],s=Object.create(null);const c=n=>{const i=L(n,e,t);for(const e of m)Object.is(i[e],n[e])||(o.push(e),s[e]=i[e]);return o.length&&w(r,o),i},u=t?i(c,!0):i(c),l=()=>{o.length&&(e=>{const t=n.sessionId;for(const r of e.keys)a.set(r,[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:r})};return(f=u)&&"object"==typeof f&&"then"in f&&"function"==typeof f.then?u.finally(l):(l(),u);var f},j=c.setState;c.setState=O;const q=e(O,s,c);if(m=t.fields??function(e){const t=[];for(const r of Object.entries(e)){if("function"==typeof r[1])continue;const e=r[0];t.push(e)}return t}(q),!m.length)return q;b=new Set(m);const A=async e=>{g=Math.max(g,e.timestamp);const r=Object.create(null),n=s(),i=e.timestamp;let c;if(e.replace)for(const t of m)G(t,e.values)||H(a.get(t),i,e.sessionId)&&(c??(c=[])).push(t);for(const o of m){if(!G(o,e.values))continue;if(!b?.has(o))continue;if(!H(a.get(o),i,e.sessionId))continue;const s=t.merge?.[o];if(s){const t=e.values[o],c=n[o];if(void 0!==t){const u=s(t,c,n,e.values),d=void 0!==c?c:t;if(!X(u,d))return void f.error(new l(`[sync] Merge function for field "${String(o)}" returned ${Y(u)} but expected ${Y(d)}`));r[o]=u,a.set(o,[i,e.sessionId])}}else r[o]=e.values[o],a.set(o,[i,e.sessionId])}if(Object.keys(r).length>0||c?.length){p=!0,o&&o.setIsApplyingRemote(!0);try{if(e.replace){const e={...n};let t=!1;if(c?.length){t=!0;for(const t of c)delete e[t],a.delete(t)}for(const n in r){if(!Object.prototype.hasOwnProperty.call(r,n))continue;const o=r[n];void 0!==o&&(Object.is(e[n],o)||(t=!0),e[n]=o)}if(!t)return;await(o.setWithoutPersist??j)(e,!0)}else await(o.setWithoutPersist??j)(r)}finally{p=!1,o&&o.setIsApplyingRemote(!1)}}},F=e=>{r?S=S.then(()=>A(e)):A(e)};y=n.register({apply:e=>{v?F(e):u.push(e)},delta:t.delta,fields:m,getState:s,key:t.key});const C=()=>{h=!0,(()=>{if(y&&d.length){for(const e of d){const t=n.sessionId;for(const r of e.keys)a.set(r,[e.timestamp,t]);w(e.timestamp,e.keys),y.publish?.({replace:e.replace,sessionId:t,timestamp:e.timestamp,values:e.values})}d.length=0}})()},I=()=>{v=!0,(()=>{if(!u.length)return;const e=u.slice();u.length=0;for(const t of e)F(t)})()};return r&&o?(o.onHydrationComplete=C,o.onHydrationFlushEnd=I):y.onHydrated?(y.onHydrated(C),I()):(C(),I()),q},syncContext:o}}(e,s,c?.async??!1):void 0,u=a?.stateCreator??e;if(!o)return n.createWithEqualityFn()(r.subscribeWithSelector(u),Object.is);const y=c?.async?function(e){let t,r,n,o=!1;return{hydrationPromise:()=>o?t?.promise??r??(r=Promise.resolve()):(t||(t=w()),t.promise),stateCreator:(r,i,s)=>{let c;return n=()=>{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]?r(e[0],e[1]):r(e[0]):(t||(t=w()),c||(c=[]),c.push(e),t.promise),i,s)},wrapOnRehydrateStorage:(e,r)=>i=>{const s=e?.(i);return(e,i)=>{o=!0,r?.onHydrationComplete?.(),n&&n(),r?.onHydrationFlushEnd?.(),i?t?.fail(d(i)):t?.complete(),s?.(e,i)}}}}(u):null,p=function(e,t,r){const n=t??e.storage??m().storage,o=(e.sync?void 0:e.persistThrottleMs??T)||void 0,i=e.version??0,s=n.async?function(e,t,r,n){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??k,c=t.deserializer??e.deserializer??E(o),a=t.serializer??e.serializer??K(o);async function u(t,r){try{if(P(n))return;r.state,r.state=s(r.state);const o=z(n,i,r),c=a(r);try{await e.set(t,c),D(n,o)}catch(e){f.error(new l("[createBaseStore]: Failed to persist store data"),{error:e})}}catch(e){f.error(new l("[createBaseStore]: Failed to serialize persisted store data"),{error:e})}}const d=void 0!==r?q(u,r,{leading:!1,maxWait:r,trailing:!0}):function(e){let t,r=null;return function(...n){return t=n,r||(r=new Promise(n=>{queueMicrotask(async()=>{try{await e(...t)}finally{r=null,n()}})})),r}}(u);return{getItem:async t=>{const r=await e.get(t);return void 0===r?null:c(r)},setItem:async(e,t)=>{if(!n?.getIsApplyingRemote())return await d(e,t)},removeItem:async t=>{try{await e.delete(t)}catch(e){f.error(new l("[createBaseStore]: Failed to delete persisted store data"),{error:e})}}}}(n,e,o,r):function(e,t,r,n){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??k,c=t.deserializer??e.deserializer??E(o),a=t.serializer??e.serializer??K(o);function u(t,r){try{if(P(n))return;r.state,r.state=s(r.state);const o=z(n,i,r),c=a(r);try{e.set(t,c),D(n,o)}catch(e){f.error(new l("[createBaseStore]: Failed to persist store data"),{error:e})}}catch(e){f.error(new l("[createBaseStore]: Failed to persist store data"),{error:e})}}const d=void 0!==r?q(u,r,{leading:!1,maxWait:r,trailing:!0}):u;return{getItem:t=>{const r=e.get(t);return void 0===r?null:c(r)},setItem:(e,t)=>{n?.getIsApplyingRemote()||d(e,t)},removeItem:t=>{try{e.delete(t)}catch(e){f.error(new l("[createBaseStore]: Failed to delete persisted store data"),{error:e})}}}}(n,e,o,r);return{persistStorage:s,version:i}}(t,c,a?.syncContext),h=y?y.wrapOnRehydrateStorage(t.onRehydrateStorage,a?.syncContext):t.onRehydrateStorage,g=y?(e,t,r)=>(a&&(a.syncContext.setWithoutPersist=r.setState),y.stateCreator(e,t,r)):u,b=n.createWithEqualityFn()(r.subscribeWithSelector(r.persist(g,function(e,t,r){const n={name:e.storageKey,onRehydrateStorage:r,storage:t.persistStorage,version:t.version};return void 0!==e.merge&&(n.merge=e.merge),void 0!==e.migrate&&(n.migrate=e.migrate),n}(t,p,h))),Object.is);return y?Object.assign(b,{persist:Object.assign(b.persist,{hydrationPromise:y.hydrationPromise})}):b}function ee(e,t,r="s"){return 1===t?e:`${e}${r}`}function te(e,t,r){const n=t.get(e);if(!n){const n=function(e,t,r,n=[]){return e&&"object"==typeof e?re(e,n,t,r,new WeakSet,new WeakMap):(r(t,n,!0),e)}(V(e)?e.getSnapshot():e.getState(),e,r);return t.set(e,n),n}return n}function re(e,t,r,n,o,i){return new Proxy(e,{get(s,c,a){if(o.has(s))return Reflect.get(s,c,a);if("__proto__"===c||"symbol"==typeof c)return c===Symbol.iterator&&(n(r,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 n(r,f,!0,{method:l,args:e.length?e:void 0}),Reflect.apply(u,s,e)}:(n(r,t,!0),u.bind(e));const d=!!u&&"object"==typeof u;return n(r,f,!d),d?(i.has(u)||i.set(u,re(u,f,r,n,o,i)),i.get(u)):u},getOwnPropertyDescriptor:(e,i)=>(n(r,t,!0),o.add(e),Reflect.getOwnPropertyDescriptor(e,i)),has:(e,o)=>(n(r,t,!0),Reflect.has(e,o)),ownKeys:e=>(n(r,t,!0),o.add(e),Reflect.ownKeys(e))})}function ne(e){return t=>ie(t,e)}function oe(e,t){const r=e.slice(0,-1);return e=>{const n=ie(e,r),o=n?.[t.method];return"function"==typeof o?o.apply(n,t.args):void 0}}function ie(e,t){let r=e;for(const e of t){if(!r||"object"!=typeof r)return r;r=r[e]}return r}function se(){const e=new Map;return{buildProxySubscriptions(t,r){const n=new Set;for(const[t,r]of e)ue(r,t,[],0,n);!function(e,t,r){for(const r of e)t(r.store,r.invocation?oe(r.path,r.invocation):ne(r.path));r&&function(e){const t=e.size;console.log(`[📡 ${t} ${ee("Proxy Subscription",t)} 📡]:`,JSON.stringify(Array.from(e).map(e=>{const t=N(e.store),r=e.path.join(".");if(!e.invocation)return r?`$(${t}).${r}`:`$(${t})`;const n=e.invocation.args?.length??0;return`$(${t}).${r}${n?`(${n}_${ee("arg",n)})`:"()"}`}),null,2))}(e)}(n,t,r)},trackPath(t,r,n,o){let i=e.get(t);i||(i=ce(),e.set(t,i)),ae(i,r,0,n,o)}}}function ce(){return Object.create(null)}function ae(e,t,r,n,o){if(r===t.length)return n&&(e.isLeaf=!0),void(o&&(e.invocation=o));e.children||(e.children=ce());const i=t[r];let s=e.children?.[i];s||(s=ce(),e.children[i]=s),ae(s,t,r+1,n,o)}function ue(e,t,r,n,o,i=1){const s=e.children;if(!s)return void o.add({store:t,path:r,invocation:e.invocation,isLeaf:e.isLeaf??!1});const c=Object.keys(s),a=c.length;if(0!==a)if(e.isLeaf||n>=i&&a>1){o.add({store:t,path:r,invocation:e.invocation,isLeaf:e.isLeaf??!1});for(const e of c){const c=s[e];c.invocation&&ue(c,t,[...r,e],n+1,o,i)}}else if(n<i&&a>1&&!e.isLeaf)for(const e of c)ue(s[e],t,[...r,e],n+1,o,i);else{if(1===a){const e=c[0];return void ue(s[e],t,[...r,e],n+1,o,i)}o.add({store:t,path:r,invocation:e.invocation,isLeaf:e.isLeaf??!1})}else o.add({store:t,path:r,invocation:e.invocation,isLeaf:e.isLeaf??!1})}var le=!1,fe=!1,de=new Map,ye=new Map,pe=new Map,he=null,ge=1/0;function be(){return le}function me(){return he}function Se(){le||(le=!0,fe||(fe=!0,queueMicrotask(()=>{fe=!1,e.unstable_batchedUpdates(()=>{for(;ye.size>0;){const e=ge,t=pe.get(e);if(t){pe.delete(e);for(const e of t)ye.delete(e);he=e;for(const e of t)e();if(he=null,pe.size>0){ge=1/0;for(const e of pe.keys())e<ge&&(ge=e)}else ge=1/0}else{ge=1/0;for(const e of pe.keys())e<ge&&(ge=e)}}for(;de.size>0;){const e=Array.from(de.values());de.clear();for(const t of e)t()}}),le=!1,he=null,ye.clear(),pe.clear(),ge=1/0})))}function ve(e,t){le&&de.set(e,t)}var we=e=>e;function Oe(e,t=Object.is){return r=function(e,t=Object.is){const{debounceOptions:r,debugMode:n,equalityFn:o,keepAlive:i,lockDependencies:s}="function"==typeof(l=t)?{debounceOptions:void 0,debugMode:!1,equalityFn:l,keepAlive:!1,lockDependencies:!1}:{debounceOptions:l.debounce,debugMode:(c&&l.debugMode)??!1,equalityFn:l.equalityFn??Object.is,keepAlive:l.keepAlive??!1,lockDependencies:l.lockDependencies??!1},a=String(qe+=1),u=new Set;var l;i&&u.add(Ae);const f=new Set;let d,y,p=je,h=!1,g=!0,b=!0,m=0,S=!1,v=null,w=je;function O(e,t,r){if(!b||!u.size)return(t??we)(V(e)?e.getSnapshot():e.getState());if(!t)return d||(d=new WeakMap),y||(y=se()),te(e,d,y.trackPath);const n=e.subscribe(t,x,{equalityFn:r??Object.is,isDerivedStore:!0});return f.add(n),t(V(e)?e.getSnapshot():e.getState())}function j(e){for(const t of f)t(e);f.clear()}let A=!0;function F(){if(!g&&Fe(p))return p;g=!1,b&&j(!0);const t=p,r=Fe(t);p=function(t){A=!0;const r=p,i=e(t);return Fe(r)&&o(r,i)?(n&&console.log("[🥷 Derive Complete 🥷]: No change detected"),A=!1,r):i}(O);const i=n&&(!r||"verbose"===n&&b);if(i){r?"verbose"===n&&console.log("[🌀 Rebuilding Subscriptions 🌀]: Created…"):console.log("[🌀 Initial Derive Complete 🌀]: Created…");const e=f.size;console.log(`[🎯 ${e} ${ee("Selector Subscription",e)} 🎯]`)}return y&&b&&(y.buildProxySubscriptions((e,t)=>{const r=e.subscribe(t,x,{equalityFn:Object.is,isDerivedStore:!0});f.add(r)},i),d=void 0,y=void 0),A&&r&&function(e,t){const r=function(){const e=u.has(Ae)?u.size-1:u.size;return m>0&&m<e}(),o=!m||r,i=r||null!==me()||be()&&o;r&&Se(),n&&console.log(`[📻 Derive Complete 📻]: Notifying ${u.size} ${ee("watcher",u.size)}`);for(const t of u){if("function"==typeof t||!t.isDerivedWatcher)continue;const r=t.selector(e);if(!t.equalityFn(t.currentSlice,r)){const e=t.currentSlice;t.currentSlice=r,t.listener(r,e)}}i?S||(S=!0,Fe(w)||(w=t),ve(a,I)):C(e,t)}(p,t),s&&(b=!1),p}function C(e,t){for(const r of u)if("function"==typeof r)r(e,t);else if(!r.isDerivedWatcher){const t=r.selector(e);if(!r.equalityFn(r.currentSlice,t)){const e=r.currentSlice;r.currentSlice=t,r.listener(t,e)}}}function I(){if(!u.size)return;if(g&&!m&&F(),!Fe(p))return;const e=Fe(w)?w:p;C(p,e),S=!1,w=je}const k=r?q(T,"number"==typeof r?r:r.delay,"number"==typeof r?{leading:!1,maxWait:r,trailing:!0}:r):void 0,M=k??(()=>{h||(h=!0,queueMicrotask(T))});function T(){u.size&&(h=!1,g&&F())}function E(e){e?queueMicrotask(()=>{u.size||D()}):D()}function K(){T(),v=null}function x(){if(!g){if(g=!0,!k){if(m){Se();const e=me(),t=null===e?0:e+1;if(null!==v&&t<=v)return;return v=t,void function(e,t){if(!le)return;const r=t<0?0:0|t,n=ye.get(e);if(void 0===n){ye.set(e,r);let t=pe.get(r);return t||(t=new Set,pe.set(r,t)),t.add(e),void(r<ge&&(ge=r))}if(r>n){const t=pe.get(n);if(t&&(t.delete(e),0===t.size&&(pe.delete(n),n===ge))){ge=1/0;for(const e of pe.keys())e<ge&&(ge=e)}ye.set(e,r);let o=pe.get(r);o||(o=new Set,pe.set(r,o)),o.add(e),r<ge&&(ge=r)}}(K,t)}if(be())return void(S||(S=!0,Fe(p)&&(w=p),ve(a,I)))}v=null,M()}}function z(){return g||!Fe(p)?u.size>0?F():e(O):p}function D(e=!0){i&&e||(k?.cancel(),j(),u.clear(),m=0,y=void 0,d=void 0,b=!0,h=!1,g=!0,p=je,S=!1,w=je,v=null)}return{destroy:()=>D(!1),flushUpdates:function(){u.size&&(k?k.flush():g&&F())},getSnapshot:function(){if(!Fe(p)){u.add(Ae);const e=F();return u.delete(Ae),e}return h&&T(),p},getState:z,subscribe:function(...e){if(1===e.length){const t=e[0];return u.add(t),1!==u.size||Fe(p)||z(),()=>{u.delete(t),u.size||E(!1)}}const[t,r,n]=e,o=n?.equalityFn??Object.is,i=n?.isDerivedStore??!1,s={currentSlice:void 0,equalityFn:o,isDerivedWatcher:i,listener:r,selector:t};return u.add(s),s.currentSlice=t(z()),i&&(m+=1),n?.fireImmediately&&r(s.currentSlice,s.currentSlice),()=>{u.delete(s),i&&(m-=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=we,t=void 0){return o.useSyncExternalStoreWithSelector(r.subscribe,r.getSnapshot,void 0,e,t)},r);var r}var je=Symbol(),qe=0;function Ae(){}function Fe(e){return e!==je}var Ce=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=M.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)}}},Ie={Error:"error",Idle:"idle",Loading:"loading",Success:"success"};function ke(e,t){const r=Object.prototype.hasOwnProperty;function n(e,t){for(const r of e.keys())if(ke(r,t))return r}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--&&ke(e[i],t[i]););return-1===i}if(o===Set){if(e.size!==t.size)return!1;for(let r of e){if(s=r,s&&"object"==typeof s&&(s=n(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 r of e){if(s=r[0],s&&"object"==typeof s&&(s=n(t,s),!s))return!1;if(!ke(r[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 r=e,n=t;if((i=r.byteLength)===n.byteLength)for(;i--&&r[i]===n[i];);return-1===i}if(!o||"object"==typeof e){i=0;for(const n in e){if(r.call(e,n)&&++i&&!r.call(t,n))return!1;if(!(n in t)||!ke(e[n],t[n]))return!1}return Object.keys(t).length===i}}return e!=e&&t!=t}var Me=new WeakMap,Te=new WeakMap;function Ee(e,t=Ke,r=ke){return function(e,t,r){let n=Te.get(e);n||(n=new Map,Te.set(e,n));let o=n.get(t);o||(o=new Map,n.set(t,o));const i=o.get(r);if(i)return i;const[s,c,a]=ze(e,t,r),u=new Map,l=e=>{const t={get(t,r){if("value"===r){let t=c();const r=e.split(".");for(const e of r)e&&(t=t[e]);return t}const n="string"==typeof r?r:r.toString(),o=e?`${e}.${n}`:n,i=u.get(o);if(i)return i;const a=l(o);return Me.set(a,s),u.set(o,a),a},set(t,r,n){const o=e.split(".");return""===o[0]&&o.shift(),a(o,n),!0}};return new Proxy(Object.create(null),t)},f=l("");return s(()=>{}),Me.set(f,s),o.set(r,f),f}(e,t,r)}var Ke=e=>e,xe=(e,t,r)=>{if(!t.length)return r;const[n,...o]=t,i=e[n],s=xe(i,o,r);if(ke(i,s))return e;const c=Array.isArray(e)?e.slice():{...e};return c[n]=s,c},ze=(e,t,r)=>{const n=new Set,o=V(e);let i,s=t(o?e.getSnapshot():e.getState());return[c=>(n.size||(i=e.subscribe(t,e=>{s=e,n.forEach(e=>e())},{equalityFn:r,isDerivedStore:o})),n.add(c),()=>{n.delete(c),!n.size&&i&&(i(),i=void 0)}),()=>(n.size||(s=t(e.getState())),s),(r,n)=>{if(t!==Ke)throw new Error("Cannot set a value with a selector");e.setState(e=>xe(e,r,n),!0)}]},De=Object.prototype.hasOwnProperty;function Pe(e,t){return De.call(e,t)}var[$e,Le]=[!0,!1],Re={error:$e,lastFetchedAt:$e,queryCache:$e,queryKey:$e,status:$e,enabled:Le,fetch:Le,getCacheEntry:Le,getData:Le,getStatus:Le,isDataExpired:Le,isStale:Le,reset:Le},Ne=M.seconds(5);function Ve(e,t){const r=t?.baseDelay??M.seconds(5),n=t?.maxDelay??M.minutes(5),o=Math.pow(2,e);return Math.min(r*o,n)}function We(e){return JSON.stringify(Object.keys(e).sort().map(t=>e[t]))}function Qe(e){return JSON.stringify(_e(e))}function _e(e){return"object"!=typeof e||null===e?e:Object.keys(e).sort().reduce((t,r)=>{const n=e[r];return t[r]=null!==n&&"object"==typeof n?_e(n):n,t},{})}function Je(e,t,r,n){return n?He(n,r)?n:{...Ue(e,t),...n}:Ue(e,t)}function Ue(e,t){const r=t?.params??Object.create(null);for(const t in e?.params){const n=e.params[t];n&&(r[t]=n.value)}return r}function Be(){return Object.create(null)}function He(e,t){if(!e)return!1;for(const r of t)if(!(r in e))return!1;return!0}function Ge(e,t,r){if(!r.queryCache)return r;const n=Date.now(),o=t??(e&&r.queryKey||null);let i=!1;const s=Object.create(null);for(const e in r.queryCache){if(!Pe(r.queryCache,e))continue;const c=r.queryCache[e];c&&(n-(c.lastFetchedAt??c.errorInfo.lastFailedAt)<c.cacheTime||e===o)?!t&&c.errorInfo&&c.errorInfo.retryCount>0?(s[e]={...c,errorInfo:{...c.errorInfo,retryCount:0}},i=!0):s[e]=c:i=!0}return i?{...r,queryCache:s}:r}function Xe(e){return"function"==typeof e}function Ye(e){return!Xe(e)}function Ze(e,t){return r=>{const n={...r},o={};for(const e in n)Pe(n,e)&&e in Re&&(Re[e]&&(o[e]=n[e]),delete n[e]);return{...t?t(n):k(n),...Ge(e,null,o)}}}var et=Symbol(),tt=Object.freeze({debugMode:!1,enabled:!0,equalityFn:Object.is,fireImmediately:!1}),rt=Object.freeze({fireImmediately:!1,forceResubscribe:!1});function nt(e,t,r=rt){if(t.current.isActive){if(!r?.forceResubscribe)return;t.current.unsubscribe()}t.current.options.debugMode&&console.log("[📡 useListen 📡] Attaching listener"),t.current.isActive=!0,t.current.resubscribe=(r=rt)=>nt(e,t,r);const n=e.subscribe(e=>t.current.selector(e),(e,r)=>t.current.react(e,r,()=>{n(),t.current.isActive=!1}),r.fireImmediately?{...t.current.options,fireImmediately:!0}:t.current.options);t.current.unsubscribe=()=>{t.current.isActive&&(n(),t.current.isActive=!1)}}function ot(e){return"function"==typeof e?{equalityFn:e}:e??tt}var it=Symbol();function st(e,t){return function(...r){const n=e.getState()[t];if("function"==typeof n)return n(...r);throw new Error(`[createVirtualStoreAction]: Method ${String(t)} is not a function`)}}function ct(e,t){return"function"==typeof e[t]}exports.QueryStatuses=Ie,exports.applyStateUpdate=L,exports.configureStores=function(e){var t;c&&function(){if(b)throw new Error("[stores]: configureStores() called after first store creation. Call it earlier before creating any stores.")}(),e.logger&&(t=e.logger,f=t),p??(p=v(e))},exports.createBaseStore=Z,exports.createDerivedStore=Oe,exports.createQueryStore=function(e,t,r){S();const n="function"==typeof t?t:Be,o="object"==typeof t?t:r,i=o&&"storageKey"in o?o:void 0,{fetcher:s,onError:u,onFetched:y,setData:p,transform:h,abortInterruptedFetches:g=!0,cacheTime:b=M.days(7),debugMode:m=!1,disableAutoRefetching:v=!1,disableCache:w=!1,enabled:O=!0,keepPreviousData:j=!1,maxRetries:A=5,paramChangeThrottle:F=!1,params:C,retryDelay:I=Ve,suppressStaleTimeWarning:k=!1,useParsableQueryKeys:T=!0}=e;let E="function"==typeof e.staleTime?M.minutes(2):e.staleTime??M.minutes(2);c&&!v&&!k&&E<Ne&&console.warn(`[createQueryStore${i?.storageKey?`: ${i.storageKey}`:""}] ❌ Stale times under ${Ne/1e3} seconds are not recommended. Provided staleTime: ${E/1e3} seconds`);const K=T?Qe:We,x=new Error("[createQueryStore: AbortError] Fetch interrupted"),z="function"==typeof b,D=c&&m,P=Object.keys(e.params??Object.create(null));let L=null,R=null,N=null,V=[],W=!1,Q=!1,_=null,J=null,U=null,B=null,H=null;const G={enabled:"function"!=typeof O&&O,error:null,lastFetchedAt:null,queryCache:{},queryKey:"",status:Ie.Idle},X=new Ce({disableAutoRefetching:v,initialEnabled:G.enabled}),Y=()=>{_&&(J=null,_.abort(),_=null)},ee=(t,r,o)=>{const c=o.setState,a=(e,t)=>{const r="function"==typeof e;if(r||void 0!==e.enabled){let t;const n=c(n=>{const i=r?e(n):e,s=void 0!==i.enabled?i.enabled:n.enabled;return s!==n.enabled&&(t=()=>((e,t)=>{e!==t&&H!==t&&(H=t,X.setEnabled(t),t?queueMicrotask(()=>o.getState().fetch(void 0,{updateQueryKey:!0})):(U||g)&&(g&&Y(),U&&(clearTimeout(U),U=null)))})(n.enabled,s)),i});return t?.(),n}return c(e)};o.setState=a,X.init({onSubscribe:(n,o,i)=>{if(R||L||!C&&"function"!=typeof e.enabled&&"function"!=typeof e.staleTime){if(n)if(o){const e=Ue(L,R),n=K(e),o=r();o.queryKey!==n&&t(e=>({...e,queryKey:n})),o.isStale()?S.fetch(e,void 0,!0):m(e,void 0)}else v&&!i&&S.fetch(void 0,void 0,!0)}else W=!0},onLastUnsubscribe:e=>{U&&(clearTimeout(U),U=null),g&&!e&&Y()}});const m=(e,t)=>{if(v||t?.skipStoreUpdates)return;if(E<=0||E===1/0)return;U&&(clearTimeout(U),U=null);const n=K(e),o=r(),i=(w?B===n&&o.lastFetchedAt:o.queryCache[n]?.lastFetchedAt)||null,s=i?E-(Date.now()-i):E;U=setTimeout(()=>{const t=X.get();t.enabled&&t.subscriptionCount>0&&S.fetch(e,{force:!0},!0)},s)},S={...n(a,r,o),...G,async fetch(e,n,o=!1){const c=X.get();if(!n?.force&&!n?.skipStoreUpdates&&!c.enabled)return null;const v=r(),O=v.error,q=v.queryKey,F=v.status,C=Je(L,R,P,e),k=K(C),M=n?.staleTime??E,T=F===Ie.Loading,$=!!n?.skipStoreUpdates,N="boolean"==typeof n?.updateQueryKey?n.updateQueryKey:o?j:!$,V=o||!$&&(N||q===k);if(J?.promise&&J.key===k&&T)return D&&console.log("[🔄 Using Active Fetch 🔄] for params:",JSON.stringify(C)),J.promise;if(g&&!$&&!1!==n?.updateQueryKey&&Y(),!n?.force){const e=v.lastFetchedAt,r=v.queryCache[k],o=r?.lastFetchedAt,i=r?.errorInfo,s=i&&i.retryCount>=A,a=(w?B===k&&e:o)||null;if(a&&!(Date.now()-a>=M)&&(!i||s||$))return V&&!$&&!U&&c.subscriptionCount>0&&0!==E&&E!==1/0&&m(C,n),N&&t(e=>e.queryKey!==k?{...e,queryKey:k}:e),D&&console.log("[💾 Returning Cached Data 💾] for params:",JSON.stringify(C)),r?.data??null}!$&&V&&(U&&(clearTimeout(U),U=null),!O&&T||t(e=>({...e,error:null,status:Ie.Loading})),J={key:k});const W=n?.cacheTime??(z?b(C):b),Q=async()=>{try{D&&(o||!e||He(e,P)?console.log("[🔄 Fetching 🔄] for params:",JSON.stringify(C)):console.log("[🔄 Fetching with Partial Params 🔄]\n","- Provided params:",`${JSON.stringify(e)}\n`,"- Filled in params:",`${JSON.stringify(Object.fromEntries(Object.keys(C).filter(t=>!(t in e)).map(e=>[e,C[e]])))}`));const r=await(g&&!$&&V?(async e=>{const t=new AbortController;_=t;try{return await new Promise((r,n)=>{t.signal.addEventListener("abort",()=>n(x),{once:!0}),Promise.resolve(s(e,t)).then(r,n)})}finally{_===t&&(_=null)}})(C):s(C,null)),c=Date.now();let u;D&&console.log("[✅ Fetch Successful ✅] for params:",JSON.stringify(C));try{u=h?h(r,C):r}catch(e){throw new l(`[createQueryStore: ${i?.storageKey||k}]: transform failed`,e)}if($)return D&&console.log("[🥷 Successful Parallel Fetch 🥷] for params:",JSON.stringify(C)),"withCache"===n.skipStoreUpdates&&t(e=>{if(!p)return w?{...e,queryCache:{...e.queryCache,[k]:{cacheTime:W,data:u,errorInfo:null,lastFetchedAt:c}}}:e;let t=e;const r=t.queryCache[k];return p({data:u,params:C,queryKey:k,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}}),!w&&Object.is(r,t.queryCache[k])&&(t={...t,queryCache:{...t.queryCache,[k]:{cacheTime:W,data:u,errorInfo:null,lastFetchedAt:c}}}),t}),u;if((p?a:t)(e=>{let t={...e,error:null,lastFetchedAt:c,queryKey:N?k:e.queryKey,status:Ie.Success};if(p||w){if(p){D&&console.log("[💾 Setting Data 💾] for params:",JSON.stringify(C));const e=t.queryCache[k];p({data:u,params:C,queryKey:k,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}}),!w&&Object.is(e,t.queryCache[k])&&(t.queryCache={...t.queryCache,[k]:{cacheTime:W,data:null,errorInfo:null,lastFetchedAt:c}})}}else D&&console.log("[💾 Setting Cache 💾] for params:",JSON.stringify(C),"| Has previous data?:",!!t.queryCache[k]?.data),t.queryCache={...t.queryCache,[k]:{cacheTime:W,data:u,errorInfo:null,lastFetchedAt:c}};return w||b===1/0?t:Ge(j,k,t)}),V&&(B=k,m(C,n)),y)try{y({data:u,fetch:S.fetch,params:C,set:a})}catch(e){f.error(new l(`[createQueryStore: ${i?.storageKey||k}]: onFetched callback failed`,e))}return u??null}catch(s){if(s===x)return D&&console.log("[❌ Fetch Aborted ❌] for params:",JSON.stringify(C)),null;const c=!o&&!0===n?.throwOnError,a=d(s);if($||!V){if(f.error(new l(`[createQueryStore: ${i?.storageKey||k}]: Failed to fetch data`,a)),c)throw a;return null}const y=w?void 0:r().queryCache[k],p=y?.errorInfo?.retryCount??0,h=p+1;if(u?.(a,p),p<A){if(X.get().subscriptionCount>0){const t="function"==typeof I?I(h,a):I;t!==1/0&&(U&&clearTimeout(U),U=setTimeout(()=>{const{enabled:t,subscriptionCount:r}=X.get();t&&r>0&&S.fetch(e,{force:!0},!0)},t))}t(e=>({...e,error:a,queryCache:{...e.queryCache,[k]:{cacheTime:y?.cacheTime??W,data:y?.data??null,lastFetchedAt:y?.lastFetchedAt??null,errorInfo:{error:a,lastFailedAt:Date.now(),retryCount:h}}},queryKey:N?k:e.queryKey,status:Ie.Error}))}else t(e=>({...e,error:a,queryCache:{...e.queryCache,[k]:{cacheTime:y?.cacheTime??W,data:y?.data??null,lastFetchedAt:y?.lastFetchedAt??null,errorInfo:{error:a,lastFailedAt:Date.now(),retryCount:A}}},queryKey:N?k:e.queryKey,status:Ie.Error}));if(f.error(new l(`[createQueryStore: ${i?.storageKey||k}]: Failed to fetch data`,a)),c)throw a;return null}finally{!$&&V&&(J=null)}};return $||!V?Q():(J={key:k,promise:Q()}).promise},getCacheEntry(e){if(w)return null;const t=r(),n=e?"string"==typeof e?e:K(Je(L,R,P,e)):t.queryKey;return t.queryCache[n]??null},getData(e){if(w)return null;const t=r().getCacheEntry(e);return t&&null!==t.data?j?t.data:t.lastFetchedAt&&Date.now()-t.lastFetchedAt>=t.cacheTime?null:t.data:null},getStatus:function(e){switch(e){case"isIdle":return r().status===Ie.Idle;case"isLoading":return r().status===Ie.Loading;case"isSuccess":{const e=r(),t=e.queryCache[e.queryKey]?.lastFetchedAt;return"number"==typeof t||e.status===Ie.Success}case"isError":case"isInitialLoad":case void 0:{const t=r(),n=t.queryCache[t.queryKey],o=(w?B===t.queryKey&&t.lastFetchedAt:n?.lastFetchedAt)||null,i=t.status;switch(e){case"isError":{const e=t.queryCache[t.queryKey];return w?"error"!==i:"number"==typeof e?.errorInfo?.lastFailedAt}case"isInitialLoad":return!o&&i===Ie.Loading}return{isError:i===Ie.Error,isIdle:i===Ie.Idle,isLoading:i===Ie.Loading,isInitialLoad:!o&&i===Ie.Loading,isSuccess:i===Ie.Success}}}},isDataExpired(e){const t=r(),n=t.queryCache[t.queryKey],o=t.queryKey,i=t.lastFetchedAt,s=(w?B===o&&i:n?.lastFetchedAt)||null;if(!s)return!0;const c=e??n?.cacheTime;return void 0===c||Date.now()-s>=c},isStale(e){const t=r(),n=t.queryKey,o=(w?B===n&&t.lastFetchedAt:t.queryCache[n]?.lastFetchedAt)||null;if(!o)return!0;const i=e??E;return Date.now()-o>=i},reset(e=!1){for(const e of V)e();V=[],L=null,R=null,N=null,Y(),U&&(clearTimeout(U),U=null),J=null,B=null,e&&t(e=>({...e,...G}))}},O=o.subscribe;return o.subscribe=(...e)=>{const t=Q?()=>{}:X.subscribe(),r=1===e.length?O(e[0]):O(e[0],e[1],e[2]);return e=>{t(e),r()}},S},te=i?.storageKey?Z(ee,Object.assign(Object.create(null),i,{partialize:Ze(j,i.partialize)})):o&&!("storageKey"in o)?Z(ee,o):Z(ee),re=te.getState(),ne=re.error,oe=re.enabled,ie=re.queryKey;if(ie&&!ne&&(B=ie),Q=!0,C||"function"==typeof e.enabled){const{directValues:e,enabledAttachVal:t,enabledDirectValue:r,attachVals:n}=function(e,t,r){const n=Object.create(null),o=Object.create(null),i=Object.create(null);for(const e in t){if(!Pe(t,e))continue;const s=t[e];if(Xe(s)){const t=s(Ee,r);n[e]=t,i[e]=t.value}else Ye(s)&&(o[e]=s,i[e]=s)}let s,c=null,a=null;if(Xe(e)){const t=e(Ee,r);s=t.value,c=t}else s=e,a=e;return{attachVals:n,directValues:o,enabledAttachVal:c,enabledDirectValue:a,resolvedEnabled:s,resolvedParams:i}}(O,C,te);L={enabled:t,params:n},R={enabled:r,params:e}}"function"==typeof e.staleTime&&(N=e.staleTime(Ee,te),E=N.value);const se=function(){let e,t=!1;return function(...r){e=r,t||(t=!0,queueMicrotask(()=>{t=!1,(e=>{re.fetch(e??Ue(L,R),{updateQueryKey:j})})(...e)}))}}();function ce(){let e;if(!j){e=Ue(L,R);const t=K(e);te.setState(e=>({...e,queryKey:t}))}se(e)}const ae=a||!F?ce:q(ce,"number"==typeof F?F:F.delay,"number"==typeof F?{leading:!1,maxWait:F,trailing:!0}:F);if(L?.enabled){const e=L.enabled,t=Me.get(e);if(t){let r=e.value;oe!==r&&te.setState(e=>({...e,enabled:r})),r&&X.setEnabled(r),D&&console.log("[🌀 Enabled Subscription 🌀] Initial value:",r);const n=t(()=>{const t=e.value;t!==r&&(D&&console.log("[🌀 Enabled Change 🌀] - [Old]:",`${r},`,"[New]:",t),r=t,te.setState(e=>({...e,enabled:t})))});V.push(n)}}else oe!==G.enabled&&te.setState(e=>({...e,enabled:G.enabled}));for(const e in L?.params){const t=L.params[e];if(!t)continue;const r=Me.get(t);if(D&&console.log("[🌀 Param Subscription 🌀] Subscribed to param:",e),r){let n=t.value;const o=r(()=>{const r=t.value;ke(n,r)||(D&&console.log("[🌀 Param Change 🌀] -",e,"- [Old]:",`${n?.toString()},`,"[New]:",r?.toString()),n=r,ae())});V.push(o)}}if(N){const e=Me.get(N);if(e){const t=N;let r=t.value;D&&console.log("[🌀 StaleTime Subscription 🌀] Initial value:",r);const n=e(()=>{const e=t.value;e!==r&&(D&&console.log("[🌀 StaleTime Change 🌀] - [Old]:",`${r},`,"[New]:",e),r=e,E=e,te.getState().fetch())});V.push(n)}}return Q=!1,W&&queueMicrotask(ae),ue=te,le=$.QueryStore,Object.assign(ue,{[le]:!0});var ue,le},exports.createStoreActions=function(e,t){const r=function(e){const t=e.getState(),r=Object.create(null);if(c&&("object"!=typeof t||null===t))throw new Error("[createStoreActions]: State is not an object");if(_(e)){for(const n in t)ct(t,n)&&(r[n]=st(e,n));return r}for(const e in t)ct(t,e)&&(r[e]=t[e]);return r}(e);return t?Object.assign(r,t):r},exports.createVirtualStore=function(e,t,r){const n="function"==typeof t,o=n?t:void 0,i=n?r:t,s=new Set,c=Oe(e,{debugMode:i?.debugMode??!1,equalityFn:function(e,t){const r=Object.is(e,t);return r||(function(e,t){for(const r of s){r.unsubscribe();const n=r.args;if(1===n.length){const o=n[0],i=e.getState(),s=t.getState(),c=t.subscribe(o);r.unsubscribe=c,Object.is(s,i)||o(s,i);continue}const o=n[0],i=n[1];let s=n[2];s?.fireImmediately&&(s={...s,fireImmediately:!1});const c=o(e.getState()),a=o(t.getState()),u=t.subscribe(o,i,s);r.unsubscribe=u,(s?.equalityFn??Object.is)(c,a)||i(a,c)}}(e,t),R(e)),r},keepAlive:!0,lockDependencies:i?.lockDependencies??!0}),a=c.getState().persist,u=(l=c.getState,function(e,t){return t?l().setState(e,t):l().setState(e)});var l;return Object.assign(function(e,t){const r=c();return e?r(e,t):r()},{[$.VirtualStore]:!0,destroy:()=>c.destroy(),getInitialState:()=>c.getState().getInitialState(),getState:()=>c.getState().getState(),persist:a,setState:u,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?o(c.getState):void 0)},exports.deepEqual=function e(t,r){if("object"!=typeof t||null==t||"object"!=typeof r||null==r)return t===r;if(Object.is(t,r))return!0;const n=Object.keys(t);if(n.length!==Object.keys(r).length)return!1;for(const o of n)if(!(o in r)||!e(t[o],r[o]))return!1;return!0},exports.defaultRetryDelay=Ve,exports.destroyStore=R,exports.destroyStores=function(e,t){for(const r of Array.isArray(e)?e:Object.values(e))r&&!t?.skipDestroy?.(r)&&R(r,t)},exports.getLegacyQueryKey=We,exports.getQueryKey=Qe,exports.getStoreName=N,exports.isDerivedStore=function(e){return"flushUpdates"in e},exports.isPersistedStore=Q,exports.isQueryStore=W,exports.isVirtualStore=_,exports.parseQueryKey=function(e){return JSON.parse(e)},exports.replacer=C,exports.reviver=I,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 r=Object.keys(e);if(r.length!==Object.keys(t).length)return!1;for(const n of r)if(!Object.is(e[n],t[n]))return!1;return!0},exports.time=M,exports.useListen=function(e,t,r,n=tt){const o=function(){const e=i.useRef(et);return e.current===et&&(e.current=function(e,t,r){return{selector:e,react:t,isActive:!1,options:ot(r),resubscribe:()=>{},unsubscribe:()=>{}}}(t,r,n)),e}(),s=function(e){return"function"==typeof e?tt.enabled:e?.enabled??tt.enabled}(n);return o.current.react=r,o.current.selector=t,function(e,t){"function"==typeof t?e.current.options.equalityFn=t:t&&(e.current.options=t??tt)}(o,n),i.useLayoutEffect(()=>{if(s)return nt(e,o),()=>function(e){e.current.options.debugMode&&console.log("[🗑️ useListen 🗑️] Detaching listener"),e.current.resubscribe=()=>{},e.current.unsubscribe(),e.current.unsubscribe=()=>{},e.current.isActive=!1}(o)},[s,e]),o},exports.useStableValue=function(e){const t=i.useRef(it);return t.current===it&&(t.current=e()),t.current};
|
|
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};
|