@storesjs/stores 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/LICENSE +21 -0
  2. package/dist/config.d.ts +13 -0
  3. package/dist/createBaseStore.d.ts +35 -0
  4. package/dist/createDerivedStore.d.ts +70 -0
  5. package/dist/createQueryStore.d.ts +131 -0
  6. package/dist/createVirtualStore.d.ts +39 -0
  7. package/dist/derivedStore/deriveProxy.d.ts +24 -0
  8. package/dist/derivedStore/globalDeriveScheduler.d.ts +22 -0
  9. package/dist/env.d.ts +7 -0
  10. package/dist/env.native.d.ts +8 -0
  11. package/dist/env.web.d.ts +7 -0
  12. package/dist/hooks/compareHooks.d.ts +49 -0
  13. package/dist/hooks/useLazyRef.d.ts +12 -0
  14. package/dist/hooks/useListen.d.ts +97 -0
  15. package/dist/hooks/useStableValue.d.ts +15 -0
  16. package/dist/index.d.ts +16 -0
  17. package/dist/logger.d.ts +16 -0
  18. package/dist/middleware/createHydrationGate.d.ts +19 -0
  19. package/dist/middleware/createSubscriptionManager.d.ts +10 -0
  20. package/dist/native/index.js +1 -0
  21. package/dist/native/index.mjs +1 -0
  22. package/dist/plugins/chrome/chromeExtensionSyncEngine.d.ts +31 -0
  23. package/dist/plugins/chrome/chromeStorageAdapter.d.ts +32 -0
  24. package/dist/plugins/chrome/createSyncedChromeStorage.d.ts +16 -0
  25. package/dist/plugins/chrome/index.d.ts +3 -0
  26. package/dist/plugins/chrome/utils.d.ts +1 -0
  27. package/dist/plugins/delta/deltaInstrumentation.d.ts +42 -0
  28. package/dist/plugins/delta/index.d.ts +1 -0
  29. package/dist/plugins/delta/recordDelta.d.ts +14 -0
  30. package/dist/plugins/network/index.d.ts +2 -0
  31. package/dist/plugins/router/RouteErrorBoundary.d.ts +19 -0
  32. package/dist/plugins/router/__tests__/router-types.test.d.ts +0 -0
  33. package/dist/plugins/router/constants.d.ts +38 -0
  34. package/dist/plugins/router/createRouter-old-version.d.ts +183 -0
  35. package/dist/plugins/router/createRouter.d.ts +183 -0
  36. package/dist/plugins/router/errorBoundary.d.ts +23 -0
  37. package/dist/plugins/router/index.d.ts +6 -0
  38. package/dist/plugins/router/lazy.d.ts +14 -0
  39. package/dist/plugins/router/locationStore.d.ts +24 -0
  40. package/dist/plugins/router/pathMatching.d.ts +28 -0
  41. package/dist/plugins/router/scrollRestoration.d.ts +8 -0
  42. package/dist/plugins/router/searchParams.d.ts +53 -0
  43. package/dist/plugins/router/test-link-params.d.ts +1 -0
  44. package/dist/plugins/router/test-prefetch.d.ts +17 -0
  45. package/dist/plugins/router/test-types.d.ts +1 -0
  46. package/dist/plugins/router/types.d.ts +11 -0
  47. package/dist/plugins/router/utils.d.ts +14 -0
  48. package/dist/plugins/router/vite.d.ts +5 -0
  49. package/dist/presence/heartbeat.d.ts +23 -0
  50. package/dist/presence/presenceChannel.d.ts +19 -0
  51. package/dist/presence/pruning.d.ts +34 -0
  52. package/dist/queryStore/classes/SubscriptionManager.d.ts +66 -0
  53. package/dist/queryStore/createParamManager.d.ts +27 -0
  54. package/dist/queryStore/types.d.ts +396 -0
  55. package/dist/signal.d.ts +19 -0
  56. package/dist/storage/storageCreators.d.ts +21 -0
  57. package/dist/storage/storageTypes.d.ts +12 -0
  58. package/dist/storesStorage.d.ts +2 -0
  59. package/dist/storesStorage.native.d.ts +2 -0
  60. package/dist/storesStorage.web.d.ts +2 -0
  61. package/dist/sync/browserSyncEngine.d.ts +2 -0
  62. package/dist/sync/networkSyncEngine.d.ts +137 -0
  63. package/dist/sync/noopSyncEngine.d.ts +2 -0
  64. package/dist/sync/syncEnhancer.d.ts +21 -0
  65. package/dist/sync/syncUtils.d.ts +5 -0
  66. package/dist/sync/transport.d.ts +112 -0
  67. package/dist/sync/types.d.ts +189 -0
  68. package/dist/tsconfig.tsbuildinfo +1 -0
  69. package/dist/types/functions.d.ts +6 -0
  70. package/dist/types/objects.d.ts +3 -0
  71. package/dist/types/utils.d.ts +8 -0
  72. package/dist/types.d.ts +332 -0
  73. package/dist/utils/core.d.ts +6 -0
  74. package/dist/utils/createAsyncMicrotaskScheduler.d.ts +34 -0
  75. package/dist/utils/createMicrotaskScheduler.d.ts +27 -0
  76. package/dist/utils/createStoreActions.d.ts +24 -0
  77. package/dist/utils/debounce.d.ts +21 -0
  78. package/dist/utils/equality.d.ts +37 -0
  79. package/dist/utils/factoryUtils.d.ts +21 -0
  80. package/dist/utils/hydrationCoordinator.d.ts +12 -0
  81. package/dist/utils/persistUtils.d.ts +8 -0
  82. package/dist/utils/promiseUtils.d.ts +1 -0
  83. package/dist/utils/serialization.d.ts +13 -0
  84. package/dist/utils/storeUtils.d.ts +56 -0
  85. package/dist/utils/stringUtils.d.ts +6 -0
  86. package/dist/utils/time.d.ts +46 -0
  87. package/dist/web/chrome.js +1 -0
  88. package/dist/web/chrome.mjs +1 -0
  89. package/dist/web/chunk-YWUZUTPH.mjs +1 -0
  90. package/dist/web/index.js +1 -0
  91. package/dist/web/index.mjs +1 -0
  92. package/package.json +75 -0
@@ -0,0 +1 @@
1
+ "use strict";function e(e){if("object"!=typeof e||null===e)return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function t(e,t){return t instanceof Map?{__type:"Map",entries:Array.from(t.entries())}:t instanceof Set?{__type:"Set",values:Array.from(t)}:t}function r(e,t){return function(e){return"object"==typeof e&&null!==e&&"__type"in e&&"Map"===e.__type}(t)?new Map(t.entries):function(e){return"object"==typeof e&&null!==e&&"__type"in e&&"Set"===e.__type}(t)?new Set(t.values):t}var s="stores/chrome-storage",n=class{constructor(e){this.async=!0,this.deserializer=i,this.serializer=a,this.area=e?.area??"local",this.namespace=e?.namespace??s}async clearAll(){const e=this.ensureStorage();if(!e)return;const t=this.namespacePrefix();if(!t)throw new Error("Cannot clear all storage with empty namespace. This would delete all storage entries. Please provide a namespace.");const r=await this.listPrefixedKeys(e,t);r.length&&await this.execute(e,t=>e.remove(r,t))}async contains(e){const t=this.ensureStorage();if(!t)return!1;const r=this.toStorageKey(e),s=await this.getFromStorage(t,r);return Object.prototype.hasOwnProperty.call(s,r)}async delete(e){const t=this.ensureStorage();if(!t)return;const r=this.toStorageKey(e);await this.execute(t,e=>t.remove(r,e))}async getAllKeys(){const e=this.ensureStorage();if(!e)return[];const t=this.namespacePrefix(),r=await this.getFromStorage(e,null);return Object.keys(r).filter(e=>e.startsWith(t)).map(e=>e.slice(t.length))}async get(e){const t=this.ensureStorage();if(!t)return;const r=this.toStorageKey(e),s=(await this.getFromStorage(t,r))[r];return o(s)?s:void 0}async set(e,t){const r=this.ensureStorage();if(!r)return;const s=this.toStorageKey(e);await this.execute(r,e=>r.set({[s]:t},e))}ensureStorage(){return e=this.area,"undefined"!=typeof chrome&&chrome.storage?chrome.storage[e]??null:null;var e}namespacePrefix(){return this.namespace?`${this.namespace}:`:""}toStorageKey(e){return`${this.namespacePrefix()}${e}`}async listPrefixedKeys(e,t){const r=await this.getFromStorage(e,null);return Object.keys(r).filter(e=>e.startsWith(t))}async getFromStorage(e,t){return this.invokeWithCallbackSupport(r=>e.get(t,r))}async execute(e,t){await this.invokeWithCallbackSupport(t)}async invokeWithCallbackSupport(e){return new Promise((t,r)=>{let s=!1;const n=e=>{if(s)return;s=!0;const n="undefined"!=typeof chrome&&chrome.runtime&&chrome.runtime.lastError?new Error(chrome.runtime.lastError.message):null;n?r(n):t(e)};try{const t=e(n);(a=t)&&"object"==typeof a&&"then"in a&&"function"==typeof a.then&&t.then(n).catch(r)}catch(e){r(e)}var a})}};function a(e){return{state:c(e.state),syncMetadata:e.syncMetadata,version:e.version}}function i(e){if(!o(e))throw new Error("[ChromeStorageAdapter] Invalid serialized state format");return{state:h(e.state),syncMetadata:e.syncMetadata,version:e.version}}function o(e){return!(!e||"object"!=typeof e)&&Object.prototype.hasOwnProperty.call(e,"state")}function c(r,s=t){if(r instanceof Map||r instanceof Set)return s.call(void 0,"",r);if(!e(r))return r;const n={};for(const[e,t]of Object.entries(r))n[e]=s.call(r,e,t);return n}function h(t,s=r){const n=s.call(void 0,"",t);if(!e(n))return n;const a={};for(const e of Object.entries(n)){const t=e[0],r=e[1];a[t]=s.call(n,t,r)}return a}var l=class{constructor(e){this.injectStorageMetadata=!0,this.registrations=new Map,this.isListening=!1,this.onStorageChanged=async(e,t)=>{if(t===this.area)for(const t of this.registrations){const r=t[0],s=t[1];if(s.destroyed)continue;const n=e[this.toStorageKey(r)];if(n&&void 0!==n.newValue)try{const e=this.parsePersistValue(n.newValue);if(!e||e.syncMetadata?.origin===this.sessionId)continue;const t=e?.syncMetadata,r=this.extractChangedFields(s,e.state,t,n.oldValue);if(!Object.keys(r).length)continue;s.registration.apply({replace:!1,sessionId:t?.origin??"unknown",timestamp:t?.timestamp??Date.now(),values:r})}catch(e){continue}}},e&&"storage"in e?(this.area=e.storage.area,this.namespace=e.storage.namespace):(this.area=e?.area??"local",this.namespace=e?.namespace??s),this.sessionId=this.generateSessionId(),this.attachListener()}generateSessionId(){return"undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${Math.random().toString(36).slice(2)}:${Date.now().toString(36)}`}register(e){this.attachListener();const t={destroyed:!1,hydrated:!0,listeners:new Set,registration:e};return this.registrations.set(e.key,t),{destroy:()=>{t.destroyed=!0,t.listeners.clear(),this.registrations.delete(e.key),this.registrations.size||this.detachListener()},publish:null}}attachListener(){"undefined"!=typeof chrome&&chrome.storage&&!this.isListening&&(this.isListening=!0,chrome.storage.onChanged.addListener(this.onStorageChanged))}detachListener(){"undefined"!=typeof chrome&&chrome.storage&&this.isListening&&(chrome.storage.onChanged.removeListener(this.onStorageChanged),this.isListening=!1)}extractChangedFields(e,t,r,s){const n=Object.create(null),a=r?.fields;if(a&&Object.keys(a).length>0){let r=!1;for(const s of e.registration.fields){const e=String(s);Object.prototype.hasOwnProperty.call(a,e)&&(n[s]=t[s],r=!0)}if(r)return n}const i=this.parsePersistValue(s);for(const r of e.registration.fields){const e=t[r],s=i?.state[r];Object.is(e,s)||(n[r]=e)}return n}namespacePrefix(){return this.namespace?`${this.namespace}:`:""}toStorageKey(e){return`${this.namespacePrefix()}${e}`}parsePersistValue(e){return i(e)}};exports.ChromeExtensionSyncEngine=l,exports.ChromeStorageAdapter=n,exports.createSyncedChromeStorage=function(e){const t=new n(e);return{storage:t,syncEngine:new l({storage:t})}};
@@ -0,0 +1 @@
1
+ import{isPromiseLike as e,replacer as t,reviver as s,isPlainObject as r}from"./chunk-YWUZUTPH.mjs";var n="stores/chrome-storage",a=class{constructor(e){this.async=!0,this.deserializer=o,this.serializer=i,this.area=e?.area??"local",this.namespace=e?.namespace??n}async clearAll(){const e=this.ensureStorage();if(!e)return;const t=this.namespacePrefix();if(!t)throw new Error("Cannot clear all storage with empty namespace. This would delete all storage entries. Please provide a namespace.");const s=await this.listPrefixedKeys(e,t);s.length&&await this.execute(e,t=>e.remove(s,t))}async contains(e){const t=this.ensureStorage();if(!t)return!1;const s=this.toStorageKey(e),r=await this.getFromStorage(t,s);return Object.prototype.hasOwnProperty.call(r,s)}async delete(e){const t=this.ensureStorage();if(!t)return;const s=this.toStorageKey(e);await this.execute(t,e=>t.remove(s,e))}async getAllKeys(){const e=this.ensureStorage();if(!e)return[];const t=this.namespacePrefix(),s=await this.getFromStorage(e,null);return Object.keys(s).filter(e=>e.startsWith(t)).map(e=>e.slice(t.length))}async get(e){const t=this.ensureStorage();if(!t)return;const s=this.toStorageKey(e),r=(await this.getFromStorage(t,s))[s];return c(r)?r:void 0}async set(e,t){const s=this.ensureStorage();if(!s)return;const r=this.toStorageKey(e);await this.execute(s,e=>s.set({[r]:t},e))}ensureStorage(){return e=this.area,"undefined"!=typeof chrome&&chrome.storage?chrome.storage[e]??null:null;var e}namespacePrefix(){return this.namespace?`${this.namespace}:`:""}toStorageKey(e){return`${this.namespacePrefix()}${e}`}async listPrefixedKeys(e,t){const s=await this.getFromStorage(e,null);return Object.keys(s).filter(e=>e.startsWith(t))}async getFromStorage(e,t){return this.invokeWithCallbackSupport(s=>e.get(t,s))}async execute(e,t){await this.invokeWithCallbackSupport(t)}async invokeWithCallbackSupport(t){return new Promise((s,r)=>{let n=!1;const a=e=>{if(n)return;n=!0;const t="undefined"!=typeof chrome&&chrome.runtime&&chrome.runtime.lastError?new Error(chrome.runtime.lastError.message):null;t?r(t):s(e)};try{const s=t(a);e(s)&&s.then(a).catch(r)}catch(e){r(e)}})}};function i(e){return{state:h(e.state),syncMetadata:e.syncMetadata,version:e.version}}function o(e){if(!c(e))throw new Error("[ChromeStorageAdapter] Invalid serialized state format");return{state:l(e.state),syncMetadata:e.syncMetadata,version:e.version}}function c(e){return!(!e||"object"!=typeof e)&&Object.prototype.hasOwnProperty.call(e,"state")}function h(e,s=t){if(e instanceof Map||e instanceof Set)return s.call(void 0,"",e);if(!r(e))return e;const n={};for(const[t,r]of Object.entries(e))n[t]=s.call(e,t,r);return n}function l(e,t=s){const n=t.call(void 0,"",e);if(!r(n))return n;const a={};for(const e of Object.entries(n)){const s=e[0],r=e[1];a[s]=t.call(n,s,r)}return a}var u=class{constructor(e){this.injectStorageMetadata=!0,this.registrations=new Map,this.isListening=!1,this.onStorageChanged=async(e,t)=>{if(t===this.area)for(const t of this.registrations){const s=t[0],r=t[1];if(r.destroyed)continue;const n=e[this.toStorageKey(s)];if(n&&void 0!==n.newValue)try{const e=this.parsePersistValue(n.newValue);if(!e||e.syncMetadata?.origin===this.sessionId)continue;const t=e?.syncMetadata,s=this.extractChangedFields(r,e.state,t,n.oldValue);if(!Object.keys(s).length)continue;r.registration.apply({replace:!1,sessionId:t?.origin??"unknown",timestamp:t?.timestamp??Date.now(),values:s})}catch(e){continue}}},e&&"storage"in e?(this.area=e.storage.area,this.namespace=e.storage.namespace):(this.area=e?.area??"local",this.namespace=e?.namespace??n),this.sessionId=this.generateSessionId(),this.attachListener()}generateSessionId(){return"undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${Math.random().toString(36).slice(2)}:${Date.now().toString(36)}`}register(e){this.attachListener();const t={destroyed:!1,hydrated:!0,listeners:new Set,registration:e};return this.registrations.set(e.key,t),{destroy:()=>{t.destroyed=!0,t.listeners.clear(),this.registrations.delete(e.key),this.registrations.size||this.detachListener()},publish:null}}attachListener(){"undefined"!=typeof chrome&&chrome.storage&&!this.isListening&&(this.isListening=!0,chrome.storage.onChanged.addListener(this.onStorageChanged))}detachListener(){"undefined"!=typeof chrome&&chrome.storage&&this.isListening&&(chrome.storage.onChanged.removeListener(this.onStorageChanged),this.isListening=!1)}extractChangedFields(e,t,s,r){const n=Object.create(null),a=s?.fields;if(a&&Object.keys(a).length>0){let s=!1;for(const r of e.registration.fields){const e=String(r);Object.prototype.hasOwnProperty.call(a,e)&&(n[r]=t[r],s=!0)}if(s)return n}const i=this.parsePersistValue(r);for(const s of e.registration.fields){const e=t[s],r=i?.state[s];Object.is(e,r)||(n[s]=e)}return n}namespacePrefix(){return this.namespace?`${this.namespace}:`:""}toStorageKey(e){return`${this.namespacePrefix()}${e}`}parsePersistValue(e){return o(e)}};function g(e){const t=new a(e);return{storage:t,syncEngine:new u({storage:t})}}export{u as ChromeExtensionSyncEngine,a as ChromeStorageAdapter,g as createSyncedChromeStorage};
@@ -0,0 +1 @@
1
+ function t(t,e){return e instanceof Map?{__type:"Map",entries:Array.from(e.entries())}:e instanceof Set?{__type:"Set",values:Array.from(e)}:e}function e(t,e){return function(t){return"object"==typeof t&&null!==t&&"__type"in t&&"Map"===t.__type}(e)?new Map(e.entries):function(t){return"object"==typeof t&&null!==t&&"__type"in t&&"Set"===t.__type}(e)?new Set(e.values):e}function n(t){return!!t&&"object"==typeof t&&"then"in t&&"function"==typeof t.then}function r(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function o(t){if("object"!=typeof t||null===t)return!1;const e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}export{r as hasOwn,o as isPlainObject,n as isPromiseLike,t as replacer,e as reviver};
@@ -0,0 +1 @@
1
+ var e=require("zustand/middleware"),t=require("zustand/traditional"),r=require("use-sync-external-store/shim/with-selector"),n=require("react"),o="undefined"!=typeof window&&"undefined"!=typeof document,s="stores-storage";function i(){return"undefined"!=typeof window?window.localStorage:null}var a={clearAll(){try{const e=i();if(!e)return;const t=[],r=`${s}:`;for(let n=0;n<e.length;n++){const o=e.key(n);o?.startsWith(r)&&t.push(o)}for(const r of t)e.removeItem(r)}catch(e){}},contains(e){const t=i();return null!==t?.getItem(`${s}:${e}`)},delete(e){try{const t=i();t?.removeItem(`${s}:${e}`)}catch(e){}},getAllKeys(){try{const e=i();return e?Array.from(e.keys()):[]}catch(e){return[]}},get(e){try{const t=i();return t?t.getItem(`${s}:${e}`)??void 0:void 0}catch(e){return}},set(e,t){try{const r=i();r?.setItem(`${s}:${e}`,t)}catch(e){}}},c=class extends Error{constructor(e,t){super(e),this.name="StoresError",this.cause=l(t)}},u={debug:(e,t)=>{},error:(e,t)=>{},info:(e,t)=>{},warn:(e,t)=>{}};function l(e){return e instanceof Error?e:new Error(String(e))}var f="stores/core/sync-channel",d=`${f}:storage:`;function y(){try{return"undefined"!=typeof window?window.localStorage:null}catch{return null}}var p,h,g=class{constructor(e){this.broadcast=e.broadcast,this.origin=e.origin,this.storeKey=e.storeKey,this.teardown=e.teardown}destroy(){this.teardown()}publish(e){const t=Object.create(null);for(const r of Object.entries(e.values))t[r[0]]=r[1];const r={origin:this.origin,replace:e.replace,sessionId:e.sessionId,storeKey:this.storeKey,timestamp:e.timestamp,values:t};this.broadcast(r)}},b=class{destroy(){}publish(){}},m={storage:a,syncEngine:o?(p||(p=new class{constructor(){this.listeners=new Map,this.origin="undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${Math.random().toString(36).slice(2)}:${Date.now().toString(36)}`,this.onChannelMessage=e=>{e.data&&this.dispatch(e.data)},this.onStorageEvent=e=>{if(e.key&&e.newValue&&e.key.startsWith(d))try{const t=JSON.parse(e.newValue);this.dispatch(t)}catch(e){u.error(new c("[sync] Failed to parse storage event payload"),{error:e})}},this.channel="undefined"==typeof BroadcastChannel?null:new BroadcastChannel(f),this.storage=y(),this.channel&&this.channel.addEventListener("message",this.onChannelMessage),o&&window.addEventListener("storage",this.onStorageEvent)}get sessionId(){return this.origin}register(e){const t=t=>{if(t.origin===this.origin||t.storeKey!==e.key)return;const r=Object.create(null);for(const n of e.fields)Object.prototype.hasOwnProperty.call(t.values,n)&&(r[n]=t.values[n]);Object.keys(r).length&&e.apply({replace:t.replace,sessionId:t.sessionId,timestamp:t.timestamp,values:r})};let r=this.listeners.get(e.key);return r||(r=new Set,this.listeners.set(e.key,r)),r.add(t),new g({broadcast:e=>this.broadcast(e),origin:this.origin,storeKey:e.key,teardown:()=>this.removeListener(e.key,t)})}broadcast(e){try{this.channel&&this.channel.postMessage(e),this.writeToStorage(e)}catch(e){u.error(new c("[sync] Failed to broadcast update"),{error:e})}}dispatch(e){if(!e.storeKey)return;const t=this.listeners.get(e.storeKey);if(t&&t.size)for(const r of t)r(e)}removeListener(e,t){const r=this.listeners.get(e);r&&(r.delete(t),r.size||this.listeners.delete(e))}writeToStorage(e){if(this.storage||(this.storage=y()),!this.storage)return;const t=`${d}${e.storeKey}`;try{this.storage.setItem(t,JSON.stringify(e))}catch(e){u.error(new c("[sync] Failed to write broadcast payload to storage"),{error:e})}}}),p):(h||(h=new class{constructor(){this.sessionId="noop"}register(e){return new b}}),h)};function S(){return m}function v(){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 w=Math.max,j=Math.min;function O(e,t=0,r={}){let n,o,s,i,a,c,u=0,l=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function y(t){const r=n,s=o;return n=o=void 0,u=t,i=r?e.apply(s,r):e.apply(s),i}function p(e){const r=e-(c??0);return void 0===c||r>=t||r<0||f&&void 0!==s&&e-u>=s}function h(){const e=q();if(p(e))return g(e);a=setTimeout(h,function(e){const r=t-(e-(c??0));return f&&void 0!==s?j(r,s-(e-u)):r}(e))}function g(e){return a=void 0,d&&n?y(e):(n=o=void 0,i)}function b(...e){const r=q(),s=p(r);if(n=e,o=this,c=r,s){if(void 0===a)return function(e){return u=e,a=setTimeout(h,t),l?y(e):i}(c);if(f)return clearTimeout(a),a=setTimeout(h,t),y(c)}return void 0===a&&(a=setTimeout(h,t)),i}return t=I(t)||0,function(e){const t=typeof e;return null!==e&&("object"===t||"function"===t)}(r)&&(l=!!r.leading,f="maxWait"in r,s=f?w(I(r.maxWait)||0,t):void 0,d="trailing"in r?!!r.trailing:d),b.cancel=function(){void 0!==a&&clearTimeout(a),u=0,n=c=o=a=void 0},b.flush=function(){return void 0===a?i:g(q())},b}function q(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}function I(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 F(e,t){return t instanceof Map?{__type:"Map",entries:Array.from(t.entries())}:t instanceof Set?{__type:"Set",values:Array.from(t)}:t}function A(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 C={ms:e=>e,seconds:e=>1e3*e,minutes:e=>C.seconds(60*e),hours:e=>C.minutes(60*e),days:e=>C.hours(24*e),weeks:e=>C.days(7*e),infinity:1/0,zero:0},T=o?C.ms(200):C.seconds(5);function K(e){return t=>{if("string"!=typeof t)throw new c("[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?A:void 0)}catch(e){throw u.error(new c("[createBaseStore]: Failed to deserialize persisted Rainbow store data"),{error:e}),e}}(t,e)}}function M(e){return t=>function(e,t){try{return JSON.stringify(e,t?F:void 0)}catch(e){throw u.error(new c("[createBaseStore]: Failed to serialize Rainbow store data"),{error:e}),e}}(t,e)}var z=Object.freeze({shouldClear:!1});function x(e,t,r){if(!t||!e)return z;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 E(e,t){e&&t.shouldClear&&t.fieldSnapshot&&Object.keys(t.fieldSnapshot).length&&e.clearFieldTimestamps(t.fieldSnapshot)}function D(e){return!!e&&!!e.getIsApplyingRemote()}function L(e,...t){return!0===t[1]?Q(t[0])?t[0](e):t[0]:{...e,...Q(t[0])?t[0](e):t[0]}}function P(e,t){$(e)?e.getState().reset(t?.clearQueryCache):function(e){return"destroy"in e}(e)&&e.destroy()}function R(e){return"getSnapshot"in e}function $(e){return"_queryStore"in e}function W(e){return"persist"in e}function _(e){return"_virtualStore"in e}function Q(e){return"function"==typeof e}var[U,B]=[0,1];function V(e,t,r){if(!e)return!0;const n=e[U],o=e[B];return!(t<n)&&(t>n||r>o)}function N(e,t){return Object.prototype.hasOwnProperty.call(t,e)}function H(e,t){return!0}function J(e){if(null===e)return"null";const t=typeof e;return"object"===t?Object.prototype.toString.call(e):t}function G(r,n){const o=void 0!==n&&"string"==typeof n.storageKey,s=o?n.storageKey:void 0,i=n?.sync?function(e,t){if(!e)return null;if(!0===e){if(!t)throw new c("[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 c("[createBaseStore]: sync requires either a key in the config or a storageKey to inherit from");return{...r,key:n}}(n.sync,s):void 0,a=o?n.storage??S().storage:void 0,f=i?function(e,t,r){const n=t.engine??S().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:(s,i,a)=>{const l=new Map,f=[],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)}},j=function(e,t){if(p||!b)return t?s(e,t):s(e);const r=(()=>{const e=Date.now(),t=e>g?e:g+1;return g=t,t})();let o=[],i=Object.create(null);const a=n=>{const s=L(n,e,t);for(const e of m)Object.is(s[e],n[e])||(o.push(e),i[e]=s[e]);return o.length&&w(r,o),s},c=t?s(a,!0):s(a),u=()=>{o.length&&(e=>{const t=n.sessionId;for(const r of e.keys)l.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:i,timestamp:r})};return(f=c)&&"object"==typeof f&&"then"in f&&"function"==typeof f.then?c.finally(u):(u(),c);var f},O=a.setState;a.setState=j;const q=e(j,i,a);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 I=async e=>{g=Math.max(g,e.timestamp);const r=Object.create(null),n=i(),s=e.timestamp;let a;if(e.replace)for(const t of m)N(t,e.values)||V(l.get(t),s,e.sessionId)&&(a??(a=[])).push(t);for(const o of m){if(!N(o,e.values))continue;if(!b?.has(o))continue;if(!V(l.get(o),s,e.sessionId))continue;const i=t.merge?.[o];if(i){const t=e.values[o],a=n[o];if(void 0!==t){const f=i(t,a,n,e.values),d=void 0!==a?a:t;if(!H())return void u.error(new c(`[sync] Merge function for field "${String(o)}" returned ${J(f)} but expected ${J(d)}`));r[o]=f,l.set(o,[s,e.sessionId])}}else r[o]=e.values[o],l.set(o,[s,e.sessionId])}if(Object.keys(r).length>0||a?.length){p=!0,o&&o.setIsApplyingRemote(!0);try{if(e.replace){const e={...n};let t=!1;if(a?.length){t=!0;for(const t of a)delete e[t],l.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??O)(e,!0)}else await(o.setWithoutPersist??O)(r)}finally{p=!1,o&&o.setIsApplyingRemote(!1)}}},F=e=>{r?S=S.then(()=>I(e)):I(e)};y=n.register({apply:e=>{v?F(e):f.push(e)},delta:t.delta,fields:m,getState:i,key:t.key});const A=()=>{h=!0,(()=>{if(y&&d.length){for(const e of d){const t=n.sessionId;for(const r of e.keys)l.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}})()},k=()=>{v=!0,(()=>{if(!f.length)return;const e=f.slice();f.length=0;for(const t of e)F(t)})()};return r&&o?(o.onHydrationComplete=A,o.onHydrationFlushEnd=k):y.onHydrated?(y.onHydrated(A),k()):(A(),k()),q},syncContext:o}}(r,i,a?.async??!1):void 0,d=f?.stateCreator??r;if(!o)return t.createWithEqualityFn()(e.subscribeWithSelector(d),Object.is);const y=a?.async?function(e){let t,r,n,o=!1;return{hydrationPromise:()=>o?t?.promise??r??(r=Promise.resolve()):(t||(t=v()),t.promise),stateCreator:(r,s,i)=>{let a;return n=()=>{if(a?.length){for(const e of a)e[1]?i.setState(e[0],e[1]):i.setState(e[0]);a=void 0}},e((...e)=>o?!0===e[1]?r(e[0],e[1]):r(e[0]):(t||(t=v()),a||(a=[]),a.push(e),t.promise),s,i)},wrapOnRehydrateStorage:(e,r)=>s=>{const i=e?.(s);return(e,s)=>{o=!0,r?.onHydrationComplete?.(),n&&n(),r?.onHydrationFlushEnd?.(),s?t?.fail(l(s)):t?.complete(),i?.(e,s)}}}}(d):null,p=function(e,t,r){const n=t??e.storage??S().storage,o=(e.sync?void 0:e.persistThrottleMs??T)||void 0,s=e.version??0,i=n.async?function(e,t,r,n){const o=!(t.deserializer||t.serializer||e.deserializer||e.serializer),s="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),i=t.partialize??k,a=t.deserializer??e.deserializer??K(o),l=t.serializer??e.serializer??M(o);async function f(t,r){try{if(D(n))return;r.state=i(r.state);const o=x(n,s,r),a=l(r);try{await e.set(t,a),E(n,o)}catch(e){u.error(new c("[createBaseStore]: Failed to persist store data"),{error:e})}}catch(e){u.error(new c("[createBaseStore]: Failed to serialize persisted store data"),{error:e})}}const d=void 0!==r?O(f,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}}(f);return{getItem:async t=>{const r=await e.get(t);return void 0===r?null:a(r)},setItem:async(e,t)=>{if(!n?.getIsApplyingRemote())return await d(e,t)},removeItem:async t=>{try{await e.delete(t)}catch(e){u.error(new c("[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),s="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),i=t.partialize??k,a=t.deserializer??e.deserializer??K(o),l=t.serializer??e.serializer??M(o);function f(t,r){try{if(D(n))return;r.state=i(r.state);const o=x(n,s,r),a=l(r);try{e.set(t,a),E(n,o)}catch(e){u.error(new c("[createBaseStore]: Failed to persist store data"),{error:e})}}catch(e){u.error(new c("[createBaseStore]: Failed to persist store data"),{error:e})}}const d=void 0!==r?O(f,r,{leading:!1,maxWait:r,trailing:!0}):f;return{getItem:t=>{const r=e.get(t);return void 0===r?null:a(r)},setItem:(e,t)=>{n?.getIsApplyingRemote()||d(e,t)},removeItem:t=>{try{e.delete(t)}catch(e){u.error(new c("[createBaseStore]: Failed to delete persisted store data"),{error:e})}}}}(n,e,o,r);return{persistStorage:i,version:s}}(n,a,f?.syncContext),h=y?y.wrapOnRehydrateStorage(n.onRehydrateStorage,f?.syncContext):n.onRehydrateStorage,g=y?(e,t,r)=>(f&&(f.syncContext.setWithoutPersist=r.setState),y.stateCreator(e,t,r)):d,b=t.createWithEqualityFn()(e.subscribeWithSelector(e.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}(n,p,h))),Object.is);return y?Object.assign(b,{persist:Object.assign(b.persist,{hydrationPromise:y.hydrationPromise})}):b}function X(e,t,r){const n=t.get(e);if(!n){const n=function(e,t,r,n=[]){return e&&"object"==typeof e?Y(e,n,t,r,new WeakSet,new WeakMap):(r(t,n,!0),e)}(R(e)?e.getSnapshot():e.getState(),e,r);return t.set(e,n),n}return n}function Y(e,t,r,n,o,s){return new Proxy(e,{get(i,a,c){if(o.has(i))return Reflect.get(i,a,c);if("__proto__"===a||"symbol"==typeof a)return a===Symbol.iterator&&(n(r,t,!0),o.add(i)),Reflect.get(i,a,c);const u=Reflect.get(i,a,i),l=String(a),f=t.concat(l);if("function"==typeof u)return Object.prototype.hasOwnProperty.call(i,a)?function(...e){return n(r,f,!0,{method:l,args:e.length?e:void 0}),Reflect.apply(u,i,e)}:(n(r,t,!0),u.bind(e));const d=!!u&&"object"==typeof u;return n(r,f,!d),d?(s.has(u)||s.set(u,Y(u,f,r,n,o,s)),s.get(u)):u},getOwnPropertyDescriptor:(e,s)=>(n(r,t,!0),o.add(e),Reflect.getOwnPropertyDescriptor(e,s)),has:(e,o)=>(n(r,t,!0),Reflect.has(e,o)),ownKeys:e=>(n(r,t,!0),o.add(e),Reflect.ownKeys(e))})}function Z(e){return t=>te(t,e)}function ee(e,t){const r=e.slice(0,-1);return e=>{const n=te(e,r),o=n?.[t.method];return"function"==typeof o?o.apply(n,t.args):void 0}}function te(e,t){let r=e;for(const e of t){if(!r||"object"!=typeof r)return r;r=r[e]}return r}function re(){const e=new Map;return{buildProxySubscriptions(t,r){const n=new Set;for(const[t,r]of e)se(r,t,[],0,n);!function(e,t,r){for(const r of e)t(r.store,r.invocation?ee(r.path,r.invocation):Z(r.path));r&&e.size}(n,t,r)},trackPath(t,r,n,o){let s=e.get(t);s||(s=ne(),e.set(t,s)),oe(s,r,0,n,o)}}}function ne(){return Object.create(null)}function oe(e,t,r,n,o){if(r===t.length)return n&&(e.isLeaf=!0),void(o&&(e.invocation=o));e.children||(e.children=ne());const s=t[r];let i=e.children?.[s];i||(i=ne(),e.children[s]=i),oe(i,t,r+1,n,o)}function se(e,t,r,n,o,s=1){const i=e.children;if(!i)return void o.add({store:t,path:r,invocation:e.invocation,isLeaf:e.isLeaf??!1});const a=Object.keys(i),c=a.length;if(0!==c)if(e.isLeaf||n>=s&&c>1){o.add({store:t,path:r,invocation:e.invocation,isLeaf:e.isLeaf??!1});for(const e of a){const a=i[e];a.invocation&&se(a,t,[...r,e],n+1,o,s)}}else if(n<s&&c>1&&!e.isLeaf)for(const e of a)se(i[e],t,[...r,e],n+1,o,s);else{if(1===c){const e=a[0];return void se(i[e],t,[...r,e],n+1,o,s)}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 ie=!1,ae=!1,ce=new Map,ue=new Map,le=new Map,fe=null,de=1/0;function ye(){return ie}function pe(){return fe}function he(){ie||(ie=!0,ae||(ae=!0,queueMicrotask(()=>{ae=!1,(()=>{for(;ue.size>0;){const e=de,t=le.get(e);if(t){le.delete(e);for(const e of t)ue.delete(e);fe=e;for(const e of t)e();if(fe=null,le.size>0){de=1/0;for(const e of le.keys())e<de&&(de=e)}else de=1/0}else{de=1/0;for(const e of le.keys())e<de&&(de=e)}}for(;ce.size>0;){const e=Array.from(ce.values());ce.clear();for(const t of e)t()}})(),ie=!1,fe=null,ue.clear(),le.clear(),de=1/0})))}function ge(e,t){ie&&ce.set(e,t)}var be=e=>e;function me(e,t=Object.is){return n=function(e,t=Object.is){const{debounceOptions:r,debugMode:n,equalityFn:o,keepAlive:s,lockDependencies:i}="function"==typeof(u=t)?{debounceOptions:void 0,debugMode:!1,equalityFn:u,keepAlive:!1,lockDependencies:!1}:{debounceOptions:u.debounce,debugMode:false,equalityFn:u.equalityFn??Object.is,keepAlive:u.keepAlive??!1,lockDependencies:u.lockDependencies??!1},a=String(ve+=1),c=new Set;var u;s&&c.add(we);const l=new Set;let f,d,y=Se,p=!1,h=!0,g=!0,b=!0,m=0,S=!1,v=null,w=Se;function j(e,t,r){if(!b||!c.size)return(t??be)(R(e)?e.getSnapshot():e.getState());if(!t)return f||(f=new WeakMap),d||(d=re()),X(e,f,d.trackPath);const n=e.subscribe(t,z,{equalityFn:r??Object.is,isDerivedStore:!0});return l.add(n),t(R(e)?e.getSnapshot():e.getState())}function q(e){for(const t of l)t(e);l.clear()}function I(){if(!g&&je(y))return y;g=!1,b&&q(!0);const t=y,r=je(t);y=function(t){h=!0;const r=y,n=e(t);return je(r)&&o(r,n)?(h=!1,r):n}(j);const s=n&&(!r||"verbose"===n&&b);return s&&l.size,d&&b&&(d.buildProxySubscriptions((e,t)=>{const r=e.subscribe(t,z,{equalityFn:Object.is,isDerivedStore:!0});l.add(r)},s),f=void 0,d=void 0),h&&r&&function(e,t){const r=function(){const e=c.has(we)?c.size-1:c.size;return m>0&&m<e}(),n=!m||r,o=r||null!==pe()||ye()&&n;r&&he();for(const t of c){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)}}o?S||(S=!0,je(w)||(w=t),ge(a,A)):F(e,t)}(y,t),i&&(b=!1),y}function F(e,t){for(const r of c)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 A(){c.size&&(S&&function(){if(g&&!m&&I(),!je(y))return;const e=je(w)?w:y;F(y,e)}(),S=!1,w=Se)}const k=r?O(T,"number"==typeof r?r:r.delay,"number"==typeof r?{leading:!1,maxWait:r,trailing:!0}:r):void 0,C=k??(()=>{p||(p=!0,queueMicrotask(T))});function T(){c.size&&(p=!1,g&&I())}function K(e){e?queueMicrotask(()=>{c.size||E()}):E()}function M(){T(),v=null}function z(){if(!g){if(g=!0,!k){if(m){he();const e=pe(),t=null===e?0:e+1;if(null!==v&&t<=v)return;return v=t,void function(e,t){if(!ie)return;const r=t<0?0:0|t,n=ue.get(e);if(void 0===n){ue.set(e,r);let t=le.get(r);return t||(t=new Set,le.set(r,t)),t.add(e),void(r<de&&(de=r))}if(r>n){const t=le.get(n);if(t&&(t.delete(e),0===t.size&&(le.delete(n),n===de))){de=1/0;for(const e of le.keys())e<de&&(de=e)}ue.set(e,r);let o=le.get(r);o||(o=new Set,le.set(r,o)),o.add(e),r<de&&(de=r)}}(M,t)}if(ye())return void(S||(S=!0,je(y)&&(w=y),ge(a,A)))}v=null,m&&!r?I():C()}}function x(){return g||!je(y)?c.size>0?I():e(j):y}function E(e=!0){s&&e||(k?.cancel(),q(),c.clear(),m=0,d=void 0,f=void 0,b=!0,p=!1,g=!0,y=Se,S=!1,w=Se,v=null)}return{destroy:()=>E(!1),flushUpdates:function(){c.size&&(k?k.flush():g&&I())},getSnapshot:function(){if(!je(y)){c.add(we);const e=I();return c.delete(we),e}return p&&T(),y},getState:x,subscribe:function(...e){if(1===e.length){const t=e[0];return c.add(t),1!==c.size||je(y)||x(),()=>{c.delete(t),c.size||K(!1)}}const[t,r,n]=e,o=n?.equalityFn??Object.is,s=n?.isDerivedStore??!1,i={currentSlice:void 0,equalityFn:o,isDerivedWatcher:s,listener:r,selector:t};return c.add(i),i.currentSlice=t(x()),s&&(m+=1),n?.fireImmediately&&r(i.currentSlice,i.currentSlice),()=>{c.delete(i),s&&(m-=1),c.size||K(s)}},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=be,t=void 0){return r.useSyncExternalStoreWithSelector(n.subscribe,n.getSnapshot,void 0,e,t)},n);var n}var Se=Symbol(),ve=0;function we(){}function je(e){return e!==Se}var Oe=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=C.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)}}},qe={Error:"error",Idle:"idle",Loading:"loading",Success:"success"};function Ie(e,t){const r=Object.prototype.hasOwnProperty;function n(e,t){for(const r of e.keys())if(Ie(r,t))return r}let o,s,i;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((s=e.length)===t.length)for(;s--&&Ie(e[s],t[s]););return-1===s}if(o===Set){if(e.size!==t.size)return!1;for(let r of e){if(i=r,i&&"object"==typeof i&&(i=n(t,i),!i))return!1;if(!t.has(i))return!1}return!0}if(o===Map){if(e.size!==t.size)return!1;for(let r of e){if(i=r[0],i&&"object"==typeof i&&(i=n(t,i),!i))return!1;if(!Ie(r[1],t.get(i)))return!1}return!0}if(o===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(o===DataView){if((s=e.byteLength)===t.byteLength)for(;s--&&e.getInt8(s)===t.getInt8(s););return-1===s}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){const r=e,n=t;if((s=r.byteLength)===n.byteLength)for(;s--&&r[s]===n[s];);return-1===s}if(!o||"object"==typeof e){s=0;for(const n in e){if(r.call(e,n)&&++s&&!r.call(t,n))return!1;if(!(n in t)||!Ie(e[n],t[n]))return!1}return Object.keys(t).length===s}}return e!=e&&t!=t}var Fe=new WeakMap,Ae=new WeakMap;function ke(e,t=Ce,r=Ie){return function(e,t,r){let n=Ae.get(e);n||(n=new Map,Ae.set(e,n));let o=n.get(t);o||(o=new Map,n.set(t,o));const s=o.get(r);if(s)return s;const[i,a,c]=Ke(e,t,r),u=new Map,l=e=>{const t={get(t,r){if("value"===r){let t=a();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,s=u.get(o);if(s)return s;const c=l(o);return Fe.set(c,i),u.set(o,c),c},set(t,r,n){const o=e.split(".");return""===o[0]&&o.shift(),c(o,n),!0}};return new Proxy(Object.create(null),t)},f=l("");return i(()=>{}),Fe.set(f,i),o.set(r,f),f}(e,t,r)}var Ce=e=>e,Te=(e,t,r)=>{if(!t.length)return r;const[n,...o]=t,s=e[n],i=Te(s,o,r);if(Ie(s,i))return e;const a=Array.isArray(e)?e.slice():{...e};return a[n]=i,a},Ke=(e,t,r)=>{const n=new Set,o=R(e);let s,i=t(o?e.getSnapshot():e.getState());return[a=>(n.size||(s=e.subscribe(t,e=>{i=e,n.forEach(e=>e())},{equalityFn:r,isDerivedStore:o})),n.add(a),()=>{n.delete(a),!n.size&&s&&(s(),s=void 0)}),()=>(n.size||(i=t(e.getState())),i),(r,n)=>{if(t!==Ce)throw new Error("Cannot set a value with a selector");e.setState(e=>Te(e,r,n),!0)}]};function Me(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var[ze,xe]=[!0,!1],Ee={error:ze,lastFetchedAt:ze,queryCache:ze,queryKey:ze,status:ze,enabled:xe,fetch:xe,getCacheEntry:xe,getData:xe,getStatus:xe,isDataExpired:xe,isStale:xe,reset:xe};function De(e,t){const r=t?.baseDelay??C.seconds(5),n=t?.maxDelay??C.minutes(5),o=Math.pow(2,e);return Math.min(r*o,n)}function Le(e){return JSON.stringify(Object.keys(e).sort().map(t=>e[t]))}function Pe(e){return JSON.stringify(Re(e))}function Re(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?Re(n):n,t},{})}function $e(e,t,r,n){return n?function(e,t){if(!e)return!1;for(const r of t)if(!(r in e))return!1;return!0}(n,r)?n:{...We(e,t),...n}:We(e,t)}function We(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 _e(){return Object.create(null)}function Qe(e,t,r){if(!r.queryCache)return r;const n=Date.now(),o=t??(e&&r.queryKey||null);let s=!1;const i=Object.create(null);for(const e in r.queryCache){if(!Me(r.queryCache,e))continue;const a=r.queryCache[e];a&&(n-(a.lastFetchedAt??a.errorInfo.lastFailedAt)<a.cacheTime||e===o)?!t&&a.errorInfo&&a.errorInfo.retryCount>0?(i[e]={...a,errorInfo:{...a.errorInfo,retryCount:0}},s=!0):i[e]=a:s=!0}return s?{...r,queryCache:i}:r}function Ue(e){return"function"==typeof e}function Be(e){return!Ue(e)}function Ve(e,t){return r=>{const n={...r},o={};for(const e in n)Me(n,e)&&e in Ee&&(Ee[e]&&(o[e]=n[e]),delete n[e]);return{...t?t(n):k(n),...Qe(e,null,o)}}}C.seconds(5);var Ne=Symbol(),He=Object.freeze({debugMode:!1,enabled:!0,equalityFn:Object.is,fireImmediately:!1}),Je=Object.freeze({fireImmediately:!1,forceResubscribe:!1});function Ge(e,t,r=Je){if(t.current.isActive){if(!r?.forceResubscribe)return;t.current.unsubscribe()}t.current.options.debugMode,t.current.isActive=!0,t.current.resubscribe=(r=Je)=>Ge(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 Xe(e){return"function"==typeof e?{equalityFn:e}:e??He}var Ye=Symbol();function Ze(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 et(e,t){return"function"==typeof e[t]}exports.QueryStatuses=qe,exports.applyStateUpdate=L,exports.configureStores=function(e){var t;e.logger&&(t=e.logger,u=t),e.storage&&(m.storage=e.storage),e.syncEngine&&(m.syncEngine=e.syncEngine)},exports.createBaseStore=G,exports.createDerivedStore=me,exports.createQueryStore=function(e,t,r){const n="function"==typeof t?t:_e,o="object"==typeof t?t:r,s=o&&"storageKey"in o?o:void 0,{fetcher:i,onError:a,onFetched:f,setData:d,transform:y,abortInterruptedFetches:p=!0,cacheTime:h=C.days(7),debugMode:g=!1,disableAutoRefetching:b=!1,disableCache:m=!1,enabled:S=!0,keepPreviousData:v=!1,maxRetries:w=5,paramChangeThrottle:j=!1,params:q,retryDelay:I=De,suppressStaleTimeWarning:F=!1,useParsableQueryKeys:A=!0}=e;let k="function"==typeof e.staleTime?C.minutes(2):e.staleTime??C.minutes(2);const T=A?Pe:Le,K=new Error("[createQueryStore: AbortError] Fetch interrupted"),M="function"==typeof h,z=Object.keys(e.params??Object.create(null));let x=null,E=null,D=null,L=[],P=!1,R=!1,$=null,W=null,_=null,Q=null,U=null;const B={enabled:"function"!=typeof S&&S,error:null,lastFetchedAt:null,queryCache:{},queryKey:"",status:qe.Idle},V=new Oe({disableAutoRefetching:b,initialEnabled:B.enabled}),N=()=>{$&&(W=null,$.abort(),$=null)},H=(t,r,o)=>{const g=o.setState,S=(e,t)=>{const r="function"==typeof e;if(r||void 0!==e.enabled){let t;const n=g(n=>{const s=r?e(n):e,i=void 0!==s.enabled?s.enabled:n.enabled;return i!==n.enabled&&(t=()=>((e,t)=>{e!==t&&U!==t&&(U=t,V.setEnabled(t),t?queueMicrotask(()=>o.getState().fetch(void 0,{updateQueryKey:!0})):(_||p)&&(p&&N(),_&&(clearTimeout(_),_=null)))})(n.enabled,i)),s});return t?.(),n}return g(e)};o.setState=S,V.init({onSubscribe:(n,o,s)=>{if(E||x||!q&&"function"!=typeof e.enabled&&"function"!=typeof e.staleTime){if(n)if(o){const e=We(x,E),n=T(e),o=r();o.queryKey!==n&&t(e=>({...e,queryKey:n})),o.isStale()?O.fetch(e,void 0,!0):j(e,void 0)}else b&&!s&&O.fetch(void 0,void 0,!0)}else P=!0},onLastUnsubscribe:e=>{_&&(clearTimeout(_),_=null),p&&!e&&N()}});const j=(e,t)=>{if(b||t?.skipStoreUpdates)return;if(k<=0||k===1/0)return;_&&(clearTimeout(_),_=null);const n=T(e),o=r(),s=(m?Q===n&&o.lastFetchedAt:o.queryCache[n]?.lastFetchedAt)||null,i=s?k-(Date.now()-s):k;_=setTimeout(()=>{const t=V.get();t.enabled&&t.subscriptionCount>0&&O.fetch(e,{force:!0},!0)},i)},O={...n(S,r,o),...B,async fetch(e,n,o=!1){const g=V.get();if(!n?.force&&!n?.skipStoreUpdates&&!g.enabled)return null;const b=r(),q=b.error,F=b.queryKey,A=b.status,C=$e(x,E,z,e),D=T(C),L=n?.staleTime??k,P=A===qe.Loading,R=!!n?.skipStoreUpdates,U="boolean"==typeof n?.updateQueryKey?n.updateQueryKey:o?v:!R,B=o||!R&&(U||F===D);if(W?.promise&&W.key===D&&P)return W.promise;if(p&&!R&&!1!==n?.updateQueryKey&&N(),!n?.force){const e=b.lastFetchedAt,r=b.queryCache[D],o=r?.lastFetchedAt,s=r?.errorInfo,i=s&&s.retryCount>=w,a=(m?Q===D&&e:o)||null;if(a&&!(Date.now()-a>=L)&&(!s||i||R))return B&&!R&&!_&&g.subscriptionCount>0&&0!==k&&k!==1/0&&j(C,n),U&&t(e=>e.queryKey!==D?{...e,queryKey:D}:e),r?.data??null}!R&&B&&(_&&(clearTimeout(_),_=null),!q&&P||t(e=>({...e,error:null,status:qe.Loading})),W={key:D});const H=n?.cacheTime??(M?h(C):h),J=async()=>{try{const e=await(p&&!R&&B?(async e=>{const t=new AbortController;$=t;try{return await new Promise((r,n)=>{t.signal.addEventListener("abort",()=>n(K),{once:!0}),Promise.resolve(i(e,t)).then(r,n)})}finally{$===t&&($=null)}})(C):i(C,null)),r=Date.now();let o;try{o=y?y(e,C):e}catch(e){throw new c(`[createQueryStore: ${s?.storageKey||D}]: transform failed`,e)}if(R)return"withCache"===n.skipStoreUpdates&&t(e=>{if(!d)return m?{...e,queryCache:{...e.queryCache,[D]:{cacheTime:H,data:o,errorInfo:null,lastFetchedAt:r}}}:e;let t=e;const n=t.queryCache[D];return d({data:o,params:C,queryKey:D,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}}),!m&&Object.is(n,t.queryCache[D])&&(t={...t,queryCache:{...t.queryCache,[D]:{cacheTime:H,data:o,errorInfo:null,lastFetchedAt:r}}}),t}),o;if((d?S:t)(e=>{let t={...e,error:null,lastFetchedAt:r,queryKey:U?D:e.queryKey,status:qe.Success};if(d||m){if(d){const e=t.queryCache[D];d({data:o,params:C,queryKey:D,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}}),!m&&Object.is(e,t.queryCache[D])&&(t.queryCache={...t.queryCache,[D]:{cacheTime:H,data:null,errorInfo:null,lastFetchedAt:r}})}}else t.queryCache={...t.queryCache,[D]:{cacheTime:H,data:o,errorInfo:null,lastFetchedAt:r}};return m||h===1/0?t:Qe(v,D,t)}),B&&(Q=D,j(C,n)),f)try{f({data:o,fetch:O.fetch,params:C,set:S})}catch(e){u.error(new c(`[createQueryStore: ${s?.storageKey||D}]: onFetched callback failed`,e))}return o??null}catch(i){if(i===K)return null;const f=!o&&!0===n?.throwOnError,d=l(i);if(R||!B){if(u.error(new c(`[createQueryStore: ${s?.storageKey||D}]: Failed to fetch data`,d)),f)throw d;return null}const y=m?void 0:r().queryCache[D],p=y?.errorInfo?.retryCount??0,h=p+1;if(a?.(d,p),p<w){if(V.get().subscriptionCount>0){const t="function"==typeof I?I(h,d):I;t!==1/0&&(_&&clearTimeout(_),_=setTimeout(()=>{const{enabled:t,subscriptionCount:r}=V.get();t&&r>0&&O.fetch(e,{force:!0},!0)},t))}t(e=>({...e,error:d,queryCache:{...e.queryCache,[D]:{cacheTime:y?.cacheTime??H,data:y?.data??null,lastFetchedAt:y?.lastFetchedAt??null,errorInfo:{error:d,lastFailedAt:Date.now(),retryCount:h}}},queryKey:U?D:e.queryKey,status:qe.Error}))}else t(e=>({...e,error:d,queryCache:{...e.queryCache,[D]:{cacheTime:y?.cacheTime??H,data:y?.data??null,lastFetchedAt:y?.lastFetchedAt??null,errorInfo:{error:d,lastFailedAt:Date.now(),retryCount:w}}},queryKey:U?D:e.queryKey,status:qe.Error}));if(u.error(new c(`[createQueryStore: ${s?.storageKey||D}]: Failed to fetch data`,d)),f)throw d;return null}finally{!R&&B&&(W=null)}};return R||!B?J():(W={key:D,promise:J()}).promise},getCacheEntry(e){if(m)return null;const t=r(),n=e?"string"==typeof e?e:T($e(x,E,z,e)):t.queryKey;return t.queryCache[n]??null},getData(e){if(m)return null;const t=r().getCacheEntry(e);return t&&null!==t.data?v?t.data:t.lastFetchedAt&&Date.now()-t.lastFetchedAt>=t.cacheTime?null:t.data:null},getStatus:function(e){switch(e){case"isIdle":return r().status===qe.Idle;case"isLoading":return r().status===qe.Loading;case"isSuccess":{const e=r(),t=e.queryCache[e.queryKey]?.lastFetchedAt;return"number"==typeof t||e.status===qe.Success}case"isError":case"isInitialLoad":case void 0:{const t=r(),n=t.queryCache[t.queryKey],o=(m?Q===t.queryKey&&t.lastFetchedAt:n?.lastFetchedAt)||null,s=t.status;switch(e){case"isError":{const e=t.queryCache[t.queryKey];return m?"error"!==s:"number"==typeof e?.errorInfo?.lastFailedAt}case"isInitialLoad":return!o&&s===qe.Loading}return{isError:s===qe.Error,isIdle:s===qe.Idle,isLoading:s===qe.Loading,isInitialLoad:!o&&s===qe.Loading,isSuccess:s===qe.Success}}}},isDataExpired(e){const t=r(),n=t.queryCache[t.queryKey],o=t.queryKey,s=t.lastFetchedAt,i=(m?Q===o&&s:n?.lastFetchedAt)||null;if(!i)return!0;const a=e??n?.cacheTime;return void 0===a||Date.now()-i>=a},isStale(e){const t=r(),n=t.queryKey,o=(m?Q===n&&t.lastFetchedAt:t.queryCache[n]?.lastFetchedAt)||null;if(!o)return!0;const s=e??k;return Date.now()-o>=s},reset(e=!1){for(const e of L)e();L=[],x=null,E=null,D=null,N(),_&&(clearTimeout(_),_=null),W=null,Q=null,e&&t(e=>({...e,...B}))}},F=o.subscribe;return o.subscribe=(...e)=>{const t=R?()=>{}:V.subscribe(),r=1===e.length?F(e[0]):F(...e);return e=>{t(e),r()}},O},J=s?.storageKey?G(H,Object.assign(Object.create(null),s,{partialize:Ve(v,s.partialize)})):o&&!("storageKey"in o)?G(H,o):G(H),X=J.getState(),Y=X.error,Z=X.enabled,ee=X.queryKey;if(ee&&!Y&&(Q=ee),R=!0,q||"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),s=Object.create(null);for(const e in t){if(!Me(t,e))continue;const i=t[e];if(Ue(i)){const t=i(ke,r);n[e]=t,s[e]=t.value}else Be(i)&&(o[e]=i,s[e]=i)}let i,a=null,c=null;if(Ue(e)){const t=e(ke,r);i=t.value,a=t}else i=e,c=e;return{attachVals:n,directValues:o,enabledAttachVal:a,enabledDirectValue:c,resolvedEnabled:i,resolvedParams:s}}(S,q,J);x={enabled:t,params:n},E={enabled:r,params:e}}"function"==typeof e.staleTime&&(D=e.staleTime(ke,J),k=D.value);const te=function(){let e,t=!1;return function(...r){e=r,t||(t=!0,queueMicrotask(()=>{t=!1,(e=>{X.fetch(e??We(x,E),{updateQueryKey:v})})(...e)}))}}();function re(){let e;if(!v){e=We(x,E);const t=T(e);J.setState(e=>({...e,queryKey:t}))}te(e)}const ne=j?O(re,"number"==typeof j?j:j.delay,"number"==typeof j?{leading:!1,maxWait:j,trailing:!0}:j):re;if(x?.enabled){const e=x.enabled,t=Fe.get(e);if(t){let r=e.value;Z!==r&&J.setState(e=>({...e,enabled:r})),r&&V.setEnabled(r);const n=t(()=>{const t=e.value;t!==r&&(r=t,J.setState(e=>({...e,enabled:t})))});L.push(n)}}else Z!==B.enabled&&J.setState(e=>({...e,enabled:B.enabled}));for(const e in x?.params){const t=x.params[e];if(!t)continue;const r=Fe.get(t);if(r){let e=t.value;const n=r(()=>{const r=t.value;Ie(e,r)||(e=r,ne())});L.push(n)}}if(D){const e=Fe.get(D);if(e){const t=D;let r=t.value;const n=e(()=>{const e=t.value;e!==r&&(r=e,k=e,J.getState().fetch())});L.push(n)}}return R=!1,P&&queueMicrotask(ne),oe=J,se="_queryStore",Object.assign(oe,{[se]:!0});var oe,se},exports.createStoreActions=function(e,t){const r=function(e){const t=e.getState(),r=Object.create(null);if(_(e)){for(const n in t)et(t,n)&&(r[n]=Ze(e,n));return r}for(const e in t)et(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,s=n?r:t,i=new Set,a=me(e,{debugMode:s?.debugMode??!1,equalityFn:function(e,t){const r=Object.is(e,t);return r||(function(e,t){for(const r of i){r.unsubscribe();const n=r.args;if(1===n.length){const o=n[0],s=e.getState(),i=t.getState(),a=t.subscribe(o);r.unsubscribe=a,Object.is(i,s)||o(i,s);continue}const o=n[0],s=n[1];let i=n[2];i?.fireImmediately&&(i={...i,fireImmediately:!1});const a=i?.equalityFn??Object.is,c=o(e.getState()),u=o(t.getState()),l=t.subscribe(...n);r.unsubscribe=l,a(c,u)||s(u,c)}}(e,t),P(e)),r},keepAlive:!0,lockDependencies:s?.lockDependencies??!0}),c=a.getState().persist,u=(l=a.getState,function(e,t){return t?l().setState(e,t):l().setState(e)});var l;return Object.assign(function(e,t){const r=a();return e?r(e,t):r()},{_virtualStore:!0,destroy:()=>a.destroy(),getInitialState:()=>a.getState().getInitialState(),getState:()=>a.getState().getState(),persist:c,setState:u,subscribe:function(...e){const t={args:e,unsubscribe:1===e.length?a.getState().subscribe(e[0]):a.getState().subscribe(...e)};return i.add(t),()=>{t.unsubscribe(),i.delete(t)}}},o?o(a.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=De,exports.destroyStore=P,exports.destroyStores=function(e,t){for(const r of Array.isArray(e)?e:Object.values(e))r&&!t?.skipDestroy?.(r)&&P(r,t)},exports.getLegacyQueryKey=Le,exports.getQueryKey=Pe,exports.getStoreName=function(e){return W(e)?e.persist.getOptions().name??e.name:e.name},exports.isDerivedStore=function(e){return"flushUpdates"in e},exports.isPersistedStore=W,exports.isQueryStore=$,exports.isVirtualStore=_,exports.parseQueryKey=function(e){return JSON.parse(e)},exports.replacer=F,exports.reviver=A,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=C,exports.useListen=function(e,t,r,o=He){const s=function(){const e=n.useRef(Ne);return e.current===Ne&&(e.current=function(e,t,r){return{selector:e,react:t,isActive:!1,options:Xe(r),resubscribe:()=>{},unsubscribe:()=>{}}}(t,r,o)),e}(),i=function(e){return"function"==typeof e?He.enabled:e?.enabled??He.enabled}(o);return s.current.react=r,s.current.selector=t,function(e,t){"function"==typeof t?e.current.options.equalityFn=t:t&&(e.current.options=t??He)}(s,o),n.useLayoutEffect(()=>{if(i)return Ge(e,s),()=>function(e){e.current.options.debugMode,e.current.resubscribe=()=>{},e.current.unsubscribe(),e.current.unsubscribe=()=>{},e.current.isActive=!1}(s)},[i,e]),s},exports.useStableValue=function(e){const t=n.useRef(Ye);return t.current===Ye&&(t.current=e()),t.current};
@@ -0,0 +1 @@
1
+ import{hasOwn as e,isPromiseLike as t,reviver as n,replacer as r}from"./chunk-YWUZUTPH.mjs";export{replacer,reviver}from"./chunk-YWUZUTPH.mjs";import{subscribeWithSelector as o,persist as s}from"zustand/middleware";import{createWithEqualityFn as i}from"zustand/traditional";import{useSyncExternalStoreWithSelector as c}from"use-sync-external-store/shim/with-selector";import{useLayoutEffect as a,useRef as u}from"react";var l="undefined"!=typeof window&&"undefined"!=typeof document,f="stores-storage";function d(){return"undefined"!=typeof window?window.localStorage:null}var y={clearAll(){try{const e=d();if(!e)return;const t=[],n=`${f}:`;for(let r=0;r<e.length;r++){const o=e.key(r);o?.startsWith(n)&&t.push(o)}for(const n of t)e.removeItem(n)}catch(e){}},contains(e){const t=d();return null!==t?.getItem(`${f}:${e}`)},delete(e){try{const t=d();t?.removeItem(`${f}:${e}`)}catch(e){}},getAllKeys(){try{const e=d();return e?Array.from(e.keys()):[]}catch(e){return[]}},get(e){try{const t=d();return t?t.getItem(`${f}:${e}`)??void 0:void 0}catch(e){return}},set(e,t){try{const n=d();n?.setItem(`${f}:${e}`,t)}catch(e){}}},h=class extends Error{constructor(e,t){super(e),this.name="StoresError",this.cause=g(t)}},p={debug:(e,t)=>{},error:(e,t)=>{},info:(e,t)=>{},warn:(e,t)=>{}};function g(e){return e instanceof Error?e:new Error(String(e))}var b="stores/core/sync-channel",m=`${b}:storage:`;function v(){try{return"undefined"!=typeof window?window.localStorage:null}catch{return null}}var S,w,j=class{constructor(e){this.broadcast=e.broadcast,this.origin=e.origin,this.storeKey=e.storeKey,this.teardown=e.teardown}destroy(){this.teardown()}publish(e){const t=Object.create(null);for(const n of Object.entries(e.values))t[n[0]]=n[1];const n={origin:this.origin,replace:e.replace,sessionId:e.sessionId,storeKey:this.storeKey,timestamp:e.timestamp,values:t};this.broadcast(n)}},O=class{destroy(){}publish(){}},q={storage:y,syncEngine:l?(S||(S=new class{constructor(){this.listeners=new Map,this.origin="undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${Math.random().toString(36).slice(2)}:${Date.now().toString(36)}`,this.onChannelMessage=e=>{e.data&&this.dispatch(e.data)},this.onStorageEvent=e=>{if(e.key&&e.newValue&&e.key.startsWith(m))try{const t=JSON.parse(e.newValue);this.dispatch(t)}catch(e){p.error(new h("[sync] Failed to parse storage event payload"),{error:e})}},this.channel="undefined"==typeof BroadcastChannel?null:new BroadcastChannel(b),this.storage=v(),this.channel&&this.channel.addEventListener("message",this.onChannelMessage),l&&window.addEventListener("storage",this.onStorageEvent)}get sessionId(){return this.origin}register(e){const t=t=>{if(t.origin===this.origin||t.storeKey!==e.key)return;const n=Object.create(null);for(const r of e.fields)Object.prototype.hasOwnProperty.call(t.values,r)&&(n[r]=t.values[r]);Object.keys(n).length&&e.apply({replace:t.replace,sessionId:t.sessionId,timestamp:t.timestamp,values:n})};let n=this.listeners.get(e.key);return n||(n=new Set,this.listeners.set(e.key,n)),n.add(t),new j({broadcast:e=>this.broadcast(e),origin:this.origin,storeKey:e.key,teardown:()=>this.removeListener(e.key,t)})}broadcast(e){try{this.channel&&this.channel.postMessage(e),this.writeToStorage(e)}catch(e){p.error(new h("[sync] Failed to broadcast update"),{error:e})}}dispatch(e){if(!e.storeKey)return;const t=this.listeners.get(e.storeKey);if(t&&t.size)for(const n of t)n(e)}removeListener(e,t){const n=this.listeners.get(e);n&&(n.delete(t),n.size||this.listeners.delete(e))}writeToStorage(e){if(this.storage||(this.storage=v()),!this.storage)return;const t=`${m}${e.storeKey}`;try{this.storage.setItem(t,JSON.stringify(e))}catch(e){p.error(new h("[sync] Failed to write broadcast payload to storage"),{error:e})}}}),S):(w||(w=new class{constructor(){this.sessionId="noop"}register(e){return new O}}),w)};function I(e){var t;e.logger&&(t=e.logger,p=t),e.storage&&(q.storage=e.storage),e.syncEngine&&(q.syncEngine=e.syncEngine)}function F(){return q}function k(){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 A=Math.max,C=Math.min;function T(e,t=0,n={}){let r,o,s,i,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,s=o;return r=o=void 0,u=t,i=n?e.apply(s,n):e.apply(s),i}function h(e){const n=e-(a??0);return void 0===a||n>=t||n<0||f&&void 0!==s&&e-u>=s}function p(){const e=z();if(h(e))return g(e);c=setTimeout(p,function(e){const n=t-(e-(a??0));return f&&void 0!==s?C(n,s-(e-u)):n}(e))}function g(e){return c=void 0,d&&r?y(e):(r=o=void 0,i)}function b(...e){const n=z(),s=h(n);if(r=e,o=this,a=n,s){if(void 0===c)return function(e){return u=e,c=setTimeout(p,t),l?y(e):i}(a);if(f)return clearTimeout(c),c=setTimeout(p,t),y(a)}return void 0===c&&(c=setTimeout(p,t)),i}return t=K(t)||0,function(e){const t=typeof e;return null!==e&&("object"===t||"function"===t)}(n)&&(l=!!n.leading,f="maxWait"in n,s=f?A(K(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?i:g(z())},b}function z(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}function K(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 M(e){if(null!==e&&"object"==typeof e){const t={};for(const[n,r]of Object.entries(e))"function"!=typeof r&&(t[n]=r);return t}return e}var E={ms:e=>e,seconds:e=>1e3*e,minutes:e=>E.seconds(60*e),hours:e=>E.minutes(60*e),days:e=>E.hours(24*e),weeks:e=>E.days(7*e),infinity:1/0,zero:0},D=l?E.ms(200):E.seconds(5);function L(e){return t=>{if("string"!=typeof t)throw new h("[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?n:void 0)}catch(e){throw p.error(new h("[createBaseStore]: Failed to deserialize persisted Rainbow store data"),{error:e}),e}}(t,e)}}function P(e){return t=>function(e,t){try{return JSON.stringify(e,t?r:void 0)}catch(e){throw p.error(new h("[createBaseStore]: Failed to serialize Rainbow store data"),{error:e}),e}}(t,e)}var x=Object.freeze({shouldClear:!1});function R(e,t,n){if(!t||!e)return x;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 $(e,t){e&&t.shouldClear&&t.fieldSnapshot&&Object.keys(t.fieldSnapshot).length&&e.clearFieldTimestamps(t.fieldSnapshot)}function W(e){return!!e&&!!e.getIsApplyingRemote()}function U(e,...t){return!0===t[1]?Z(t[0])?t[0](e):t[0]:{...e,...Z(t[0])?t[0](e):t[0]}}function B(e,t){N(e)?e.getState().reset(t?.clearQueryCache):function(e){return"destroy"in e}(e)&&e.destroy()}function V(e,t){for(const n of Array.isArray(e)?e:Object.values(e))n&&!t?.skipDestroy?.(n)&&B(n,t)}function Q(e){return J(e)?e.persist.getOptions().name??e.name:e.name}function H(e){return"getSnapshot"in e}function N(e){return"_queryStore"in e}function _(e){return"flushUpdates"in e}function J(e){return"persist"in e}function Y(e){return"_virtualStore"in e}function Z(e){return"function"==typeof e}var[G,X]=[0,1];function ee(e,t,n){if(!e)return!0;const r=e[G],o=e[X];return!(t<r)&&(t>r||n>o)}function te(e,t){return Object.prototype.hasOwnProperty.call(t,e)}function ne(e,t){return!0}function re(e){if(null===e)return"null";const t=typeof e;return"object"===t?Object.prototype.toString.call(e):t}function oe(e,n){const r=void 0!==n&&"string"==typeof n.storageKey,c=r?n.storageKey:void 0,a=n?.sync?function(e,t){if(!e)return null;if(!0===e){if(!t)throw new h("[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 h("[createBaseStore]: sync requires either a key in the config or a storageKey to inherit from");return{...n,key:r}}(n.sync,c):void 0,u=r?n.storage??F().storage:void 0,l=a?function(e,n,r){const o=n.engine??F().syncEngine,s=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}}(r);return{stateCreator:(i,c,a)=>{const u=new Map,l=[],f=[];let d=null,y=!1,g=!1,b=0,m=null,v=[],S=Promise.resolve(),w=!r;const j=(e,t)=>{if(s?.setSessionId&&s?.setTimestamp&&o.sessionId&&(s.setSessionId(o.sessionId),s.setTimestamp(e),s.mergeFieldTimestamps&&t.length>0)){const n=Object.create(null);for(const r of t)n[String(r)]=e;s.mergeFieldTimestamps(n)}},O=function(e,n){if(y||!m)return n?i(e,n):i(e);const r=(()=>{const e=Date.now(),t=e>b?e:b+1;return b=t,t})();let s=[],c=Object.create(null);const a=t=>{const o=U(t,e,n);for(const e of v)Object.is(o[e],t[e])||(s.push(e),c[e]=o[e]);return s.length&&j(r,s),o},l=n?i(a,!0):i(a),h=()=>{s.length&&(e=>{const t=o.sessionId;for(const n of e.keys)u.set(n,[e.timestamp,t]);d&&g?d.publish?.({replace:e.replace,sessionId:t,timestamp:e.timestamp,values:e.values}):f.push(e)})({keys:s,replace:n??!1,values:c,timestamp:r})};return t(l)?l.finally(h):(h(),l)},q=a.setState;a.setState=O;const I=e(O,c,a);if(v=n.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}(I),!v.length)return I;m=new Set(v);const F=async e=>{b=Math.max(b,e.timestamp);const t=Object.create(null),r=c(),o=e.timestamp;let i;if(e.replace)for(const t of v)te(t,e.values)||ee(u.get(t),o,e.sessionId)&&(i??(i=[])).push(t);for(const s of v){if(!te(s,e.values))continue;if(!m?.has(s))continue;if(!ee(u.get(s),o,e.sessionId))continue;const i=n.merge?.[s];if(i){const n=e.values[s],c=r[s];if(void 0!==n){const a=i(n,c,r,e.values),l=void 0!==c?c:n;if(!ne())return void p.error(new h(`[sync] Merge function for field "${String(s)}" returned ${re(a)} but expected ${re(l)}`));t[s]=a,u.set(s,[o,e.sessionId])}}else t[s]=e.values[s],u.set(s,[o,e.sessionId])}if(Object.keys(t).length>0||i?.length){y=!0,s&&s.setIsApplyingRemote(!0);try{if(e.replace){const e={...r};let n=!1;if(i?.length){n=!0;for(const t of i)delete e[t],u.delete(t)}for(const r in t){if(!Object.prototype.hasOwnProperty.call(t,r))continue;const o=t[r];void 0!==o&&(Object.is(e[r],o)||(n=!0),e[r]=o)}if(!n)return;await(s.setWithoutPersist??q)(e,!0)}else await(s.setWithoutPersist??q)(t)}finally{y=!1,s&&s.setIsApplyingRemote(!1)}}},k=e=>{r?S=S.then(()=>F(e)):F(e)};d=o.register({apply:e=>{w?k(e):l.push(e)},delta:n.delta,fields:v,getState:c,key:n.key});const A=()=>{g=!0,(()=>{if(d&&f.length){for(const e of f){const t=o.sessionId;for(const n of e.keys)u.set(n,[e.timestamp,t]);j(e.timestamp,e.keys),d.publish?.({replace:e.replace,sessionId:t,timestamp:e.timestamp,values:e.values})}f.length=0}})()},C=()=>{w=!0,(()=>{if(!l.length)return;const e=l.slice();l.length=0;for(const t of e)k(t)})()};return r&&s?(s.onHydrationComplete=A,s.onHydrationFlushEnd=C):d.onHydrated?(d.onHydrated(A),C()):(A(),C()),I},syncContext:s}}(e,a,u?.async??!1):void 0,f=l?.stateCreator??e;if(!r)return i()(o(f),Object.is);const d=u?.async?function(e){let t,n,r,o=!1;return{hydrationPromise:()=>o?t?.promise??n??(n=Promise.resolve()):(t||(t=k()),t.promise),stateCreator:(n,s,i)=>{let c;return r=()=>{if(c?.length){for(const e of c)e[1]?i.setState(e[0],e[1]):i.setState(e[0]);c=void 0}},e((...e)=>o?!0===e[1]?n(e[0],e[1]):n(e[0]):(t||(t=k()),c||(c=[]),c.push(e),t.promise),s,i)},wrapOnRehydrateStorage:(e,n)=>s=>{const i=e?.(s);return(e,s)=>{o=!0,n?.onHydrationComplete?.(),r&&r(),n?.onHydrationFlushEnd?.(),s?t?.fail(g(s)):t?.complete(),i?.(e,s)}}}}(f):null,y=function(e,t,n){const r=t??e.storage??F().storage,o=(e.sync?void 0:e.persistThrottleMs??D)||void 0,s=e.version??0,i=r.async?function(e,t,n,r){const o=!(t.deserializer||t.serializer||e.deserializer||e.serializer),s="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),i=t.partialize??M,c=t.deserializer??e.deserializer??L(o),a=t.serializer??e.serializer??P(o);async function u(t,n){try{if(W(r))return;n.state=i(n.state);const o=R(r,s,n),c=a(n);try{await e.set(t,c),$(r,o)}catch(e){p.error(new h("[createBaseStore]: Failed to persist store data"),{error:e})}}catch(e){p.error(new h("[createBaseStore]: Failed to serialize persisted store data"),{error:e})}}const l=void 0!==n?T(u,n,{leading:!1,maxWait:n,trailing:!0}):function(e){let t,n=null;return function(...r){return t=r,n||(n=new Promise(r=>{queueMicrotask(async()=>{try{await e(...t)}finally{n=null,r()}})})),n}}(u);return{getItem:async t=>{const n=await e.get(t);return void 0===n?null:c(n)},setItem:async(e,t)=>{if(!r?.getIsApplyingRemote())return await l(e,t)},removeItem:async t=>{try{await e.delete(t)}catch(e){p.error(new h("[createBaseStore]: Failed to delete persisted store data"),{error:e})}}}}(r,e,o,n):function(e,t,n,r){const o=!(t.deserializer||t.serializer||e.deserializer||e.serializer),s="object"==typeof t.sync&&!0===(t.sync.injectStorageMetadata??t.sync.engine?.injectStorageMetadata),i=t.partialize??M,c=t.deserializer??e.deserializer??L(o),a=t.serializer??e.serializer??P(o);function u(t,n){try{if(W(r))return;n.state=i(n.state);const o=R(r,s,n),c=a(n);try{e.set(t,c),$(r,o)}catch(e){p.error(new h("[createBaseStore]: Failed to persist store data"),{error:e})}}catch(e){p.error(new h("[createBaseStore]: Failed to persist store data"),{error:e})}}const l=void 0!==n?T(u,n,{leading:!1,maxWait:n,trailing:!0}):u;return{getItem:t=>{const n=e.get(t);return void 0===n?null:c(n)},setItem:(e,t)=>{r?.getIsApplyingRemote()||l(e,t)},removeItem:t=>{try{e.delete(t)}catch(e){p.error(new h("[createBaseStore]: Failed to delete persisted store data"),{error:e})}}}}(r,e,o,n);return{persistStorage:i,version:s}}(n,u,l?.syncContext),b=d?d.wrapOnRehydrateStorage(n.onRehydrateStorage,l?.syncContext):n.onRehydrateStorage,m=d?(e,t,n)=>(l&&(l.syncContext.setWithoutPersist=n.setState),d.stateCreator(e,t,n)):f,v=i()(o(s(m,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,b))),Object.is);return d?Object.assign(v,{persist:Object.assign(v.persist,{hydrationPromise:d.hydrationPromise})}):v}function se(e,t,n){const r=t.get(e);if(!r){const r=function(e,t,n,r=[]){return e&&"object"==typeof e?ie(e,r,t,n,new WeakSet,new WeakMap):(n(t,r,!0),e)}(H(e)?e.getSnapshot():e.getState(),e,n);return t.set(e,r),r}return r}function ie(e,t,n,r,o,s){return new Proxy(e,{get(i,c,a){if(o.has(i))return Reflect.get(i,c,a);if("__proto__"===c||"symbol"==typeof c)return c===Symbol.iterator&&(r(n,t,!0),o.add(i)),Reflect.get(i,c,a);const u=Reflect.get(i,c,i),l=String(c),f=t.concat(l);if("function"==typeof u)return Object.prototype.hasOwnProperty.call(i,c)?function(...e){return r(n,f,!0,{method:l,args:e.length?e:void 0}),Reflect.apply(u,i,e)}:(r(n,t,!0),u.bind(e));const d=!!u&&"object"==typeof u;return r(n,f,!d),d?(s.has(u)||s.set(u,ie(u,f,n,r,o,s)),s.get(u)):u},getOwnPropertyDescriptor:(e,s)=>(r(n,t,!0),o.add(e),Reflect.getOwnPropertyDescriptor(e,s)),has:(e,o)=>(r(n,t,!0),Reflect.has(e,o)),ownKeys:e=>(r(n,t,!0),o.add(e),Reflect.ownKeys(e))})}function ce(e){return t=>ue(t,e)}function ae(e,t){const n=e.slice(0,-1);return e=>{const r=ue(e,n),o=r?.[t.method];return"function"==typeof o?o.apply(r,t.args):void 0}}function ue(e,t){let n=e;for(const e of t){if(!n||"object"!=typeof n)return n;n=n[e]}return n}function le(){const e=new Map;return{buildProxySubscriptions(t,n){const r=new Set;for(const[t,n]of e)ye(n,t,[],0,r);!function(e,t,n){for(const n of e)t(n.store,n.invocation?ae(n.path,n.invocation):ce(n.path));n&&e.size}(r,t,n)},trackPath(t,n,r,o){let s=e.get(t);s||(s=fe(),e.set(t,s)),de(s,n,0,r,o)}}}function fe(){return Object.create(null)}function de(e,t,n,r,o){if(n===t.length)return r&&(e.isLeaf=!0),void(o&&(e.invocation=o));e.children||(e.children=fe());const s=t[n];let i=e.children?.[s];i||(i=fe(),e.children[s]=i),de(i,t,n+1,r,o)}function ye(e,t,n,r,o,s=1){const i=e.children;if(!i)return void o.add({store:t,path:n,invocation:e.invocation,isLeaf:e.isLeaf??!1});const c=Object.keys(i),a=c.length;if(0!==a)if(e.isLeaf||r>=s&&a>1){o.add({store:t,path:n,invocation:e.invocation,isLeaf:e.isLeaf??!1});for(const e of c){const c=i[e];c.invocation&&ye(c,t,[...n,e],r+1,o,s)}}else if(r<s&&a>1&&!e.isLeaf)for(const e of c)ye(i[e],t,[...n,e],r+1,o,s);else{if(1===a){const e=c[0];return void ye(i[e],t,[...n,e],r+1,o,s)}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})}var he=!1,pe=!1,ge=new Map,be=new Map,me=new Map,ve=null,Se=1/0;function we(){return he}function je(){return ve}function Oe(){he||(he=!0,pe||(pe=!0,queueMicrotask(()=>{pe=!1,(()=>{for(;be.size>0;){const e=Se,t=me.get(e);if(t){me.delete(e);for(const e of t)be.delete(e);ve=e;for(const e of t)e();if(ve=null,me.size>0){Se=1/0;for(const e of me.keys())e<Se&&(Se=e)}else Se=1/0}else{Se=1/0;for(const e of me.keys())e<Se&&(Se=e)}}for(;ge.size>0;){const e=Array.from(ge.values());ge.clear();for(const t of e)t()}})(),he=!1,ve=null,be.clear(),me.clear(),Se=1/0})))}function qe(e,t){he&&ge.set(e,t)}var Ie=e=>e;function Fe(e,t=Object.is){return n=function(e,t=Object.is){const{debounceOptions:n,debugMode:r,equalityFn:o,keepAlive:s,lockDependencies:i}="function"==typeof(u=t)?{debounceOptions:void 0,debugMode:!1,equalityFn:u,keepAlive:!1,lockDependencies:!1}:{debounceOptions:u.debounce,debugMode:false,equalityFn:u.equalityFn??Object.is,keepAlive:u.keepAlive??!1,lockDependencies:u.lockDependencies??!1},c=String(Ae+=1),a=new Set;var u;s&&a.add(Ce);const l=new Set;let f,d,y=ke,h=!1,p=!0,g=!0,b=!0,m=0,v=!1,S=null,w=ke;function j(e,t,n){if(!b||!a.size)return(t??Ie)(H(e)?e.getSnapshot():e.getState());if(!t)return f||(f=new WeakMap),d||(d=le()),se(e,f,d.trackPath);const r=e.subscribe(t,M,{equalityFn:n??Object.is,isDerivedStore:!0});return l.add(r),t(H(e)?e.getSnapshot():e.getState())}function O(e){for(const t of l)t(e);l.clear()}function q(){if(!g&&Te(y))return y;g=!1,b&&O(!0);const t=y,n=Te(t);y=function(t){p=!0;const n=y,r=e(t);return Te(n)&&o(n,r)?(p=!1,n):r}(j);const s=r&&(!n||"verbose"===r&&b);return s&&l.size,d&&b&&(d.buildProxySubscriptions((e,t)=>{const n=e.subscribe(t,M,{equalityFn:Object.is,isDerivedStore:!0});l.add(n)},s),f=void 0,d=void 0),p&&n&&function(e,t){const n=function(){const e=a.has(Ce)?a.size-1:a.size;return m>0&&m<e}(),r=!m||n,o=n||null!==je()||we()&&r;n&&Oe();for(const t of a){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)}}o?v||(v=!0,Te(w)||(w=t),qe(c,F)):I(e,t)}(y,t),i&&(b=!1),y}function I(e,t){for(const n of a)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 F(){a.size&&(v&&function(){if(g&&!m&&q(),!Te(y))return;const e=Te(w)?w:y;I(y,e)}(),v=!1,w=ke)}const k=n?T(C,"number"==typeof n?n:n.delay,"number"==typeof n?{leading:!1,maxWait:n,trailing:!0}:n):void 0,A=k??(()=>{h||(h=!0,queueMicrotask(C))});function C(){a.size&&(h=!1,g&&q())}function z(e){e?queueMicrotask(()=>{a.size||D()}):D()}function K(){C(),S=null}function M(){if(!g){if(g=!0,!k){if(m){Oe();const e=je(),t=null===e?0:e+1;if(null!==S&&t<=S)return;return S=t,void function(e,t){if(!he)return;const n=t<0?0:0|t,r=be.get(e);if(void 0===r){be.set(e,n);let t=me.get(n);return t||(t=new Set,me.set(n,t)),t.add(e),void(n<Se&&(Se=n))}if(n>r){const t=me.get(r);if(t&&(t.delete(e),0===t.size&&(me.delete(r),r===Se))){Se=1/0;for(const e of me.keys())e<Se&&(Se=e)}be.set(e,n);let o=me.get(n);o||(o=new Set,me.set(n,o)),o.add(e),n<Se&&(Se=n)}}(K,t)}if(we())return void(v||(v=!0,Te(y)&&(w=y),qe(c,F)))}S=null,m&&!n?q():A()}}function E(){return g||!Te(y)?a.size>0?q():e(j):y}function D(e=!0){s&&e||(k?.cancel(),O(),a.clear(),m=0,d=void 0,f=void 0,b=!0,h=!1,g=!0,y=ke,v=!1,w=ke,S=null)}return{destroy:()=>D(!1),flushUpdates:function(){a.size&&(k?k.flush():g&&q())},getSnapshot:function(){if(!Te(y)){a.add(Ce);const e=q();return a.delete(Ce),e}return h&&C(),y},getState:E,subscribe:function(...e){if(1===e.length){const t=e[0];return a.add(t),1!==a.size||Te(y)||E(),()=>{a.delete(t),a.size||z(!1)}}const[t,n,r]=e,o=r?.equalityFn??Object.is,s=r?.isDerivedStore??!1,i={currentSlice:void 0,equalityFn:o,isDerivedWatcher:s,listener:n,selector:t};return a.add(i),i.currentSlice=t(E()),s&&(m+=1),r?.fireImmediately&&n(i.currentSlice,i.currentSlice),()=>{a.delete(i),s&&(m-=1),a.size||z(s)}},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=Ie,t=void 0){return c(n.subscribe,n.getSnapshot,void 0,e,t)},n);var n}var ke=Symbol(),Ae=0;function Ce(){}function Te(e){return e!==ke}var ze=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=E.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)}}},Ke={Error:"error",Idle:"idle",Loading:"loading",Success:"success"};function Me(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(!(r in t)||!Me(e[r],t[r]))return!1;return!0}function Ee(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}function De(e,t){const n=Object.prototype.hasOwnProperty;function r(e,t){for(const n of e.keys())if(De(n,t))return n}let o,s,i;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((s=e.length)===t.length)for(;s--&&De(e[s],t[s]););return-1===s}if(o===Set){if(e.size!==t.size)return!1;for(let n of e){if(i=n,i&&"object"==typeof i&&(i=r(t,i),!i))return!1;if(!t.has(i))return!1}return!0}if(o===Map){if(e.size!==t.size)return!1;for(let n of e){if(i=n[0],i&&"object"==typeof i&&(i=r(t,i),!i))return!1;if(!De(n[1],t.get(i)))return!1}return!0}if(o===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(o===DataView){if((s=e.byteLength)===t.byteLength)for(;s--&&e.getInt8(s)===t.getInt8(s););return-1===s}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){const n=e,r=t;if((s=n.byteLength)===r.byteLength)for(;s--&&n[s]===r[s];);return-1===s}if(!o||"object"==typeof e){s=0;for(const r in e){if(n.call(e,r)&&++s&&!n.call(t,r))return!1;if(!(r in t)||!De(e[r],t[r]))return!1}return Object.keys(t).length===s}}return e!=e&&t!=t}var Le=new WeakMap,Pe=new WeakMap;function xe(e,t=Re,n=De){return function(e,t,n){let r=Pe.get(e);r||(r=new Map,Pe.set(e,r));let o=r.get(t);o||(o=new Map,r.set(t,o));const s=o.get(n);if(s)return s;const[i,c,a]=We(e,t,n),u=new Map,l=e=>{const t={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,s=u.get(o);if(s)return s;const a=l(o);return Le.set(a,i),u.set(o,a),a},set(t,n,r){const o=e.split(".");return""===o[0]&&o.shift(),a(o,r),!0}};return new Proxy(Object.create(null),t)},f=l("");return i(()=>{}),Le.set(f,i),o.set(n,f),f}(e,t,n)}var Re=e=>e,$e=(e,t,n)=>{if(!t.length)return n;const[r,...o]=t,s=e[r],i=$e(s,o,n);if(De(s,i))return e;const c=Array.isArray(e)?e.slice():{...e};return c[r]=i,c},We=(e,t,n)=>{const r=new Set,o=H(e);let s,i=t(o?e.getSnapshot():e.getState());return[c=>(r.size||(s=e.subscribe(t,e=>{i=e,r.forEach(e=>e())},{equalityFn:n,isDerivedStore:o})),r.add(c),()=>{r.delete(c),!r.size&&s&&(s(),s=void 0)}),()=>(r.size||(i=t(e.getState())),i),(n,r)=>{if(t!==Re)throw new Error("Cannot set a value with a selector");e.setState(e=>$e(e,n,r),!0)}]},[Ue,Be]=[!0,!1],Ve={error:Ue,lastFetchedAt:Ue,queryCache:Ue,queryKey:Ue,status:Ue,enabled:Be,fetch:Be,getCacheEntry:Be,getData:Be,getStatus:Be,isDataExpired:Be,isStale:Be,reset:Be};function Qe(t,n,r){const o="function"==typeof n?n:Xe,s="object"==typeof n?n:r,i=s&&"storageKey"in s?s:void 0,{fetcher:c,onError:a,onFetched:u,setData:l,transform:f,abortInterruptedFetches:d=!0,cacheTime:y=E.days(7),debugMode:b=!1,disableAutoRefetching:m=!1,disableCache:v=!1,enabled:S=!0,keepPreviousData:w=!1,maxRetries:j=5,paramChangeThrottle:O=!1,params:q,retryDelay:I=He,suppressStaleTimeWarning:F=!1,useParsableQueryKeys:k=!0}=t;let A="function"==typeof t.staleTime?E.minutes(2):t.staleTime??E.minutes(2);const C=k?_e:Ne,z=new Error("[createQueryStore: AbortError] Fetch interrupted"),K="function"==typeof y,M=Object.keys(t.params??Object.create(null));let D=null,L=null,P=null,x=[],R=!1,$=!1,W=null,U=null,B=null,V=null,Q=null;const H={enabled:"function"!=typeof S&&S,error:null,lastFetchedAt:null,queryCache:{},queryKey:"",status:Ke.Idle},N=new ze({disableAutoRefetching:m,initialEnabled:H.enabled}),_=()=>{W&&(U=null,W.abort(),W=null)},J=(e,n,r)=>{const s=r.setState,b=(e,t)=>{const n="function"==typeof e;if(n||void 0!==e.enabled){let t;const o=s(o=>{const s=n?e(o):e,i=void 0!==s.enabled?s.enabled:o.enabled;return i!==o.enabled&&(t=()=>((e,t)=>{e!==t&&Q!==t&&(Q=t,N.setEnabled(t),t?queueMicrotask(()=>r.getState().fetch(void 0,{updateQueryKey:!0})):(B||d)&&(d&&_(),B&&(clearTimeout(B),B=null)))})(o.enabled,i)),s});return t?.(),o}return s(e)};r.setState=b,N.init({onSubscribe:(r,o,s)=>{if(L||D||!q&&"function"!=typeof t.enabled&&"function"!=typeof t.staleTime){if(r)if(o){const t=Ge(D,L),r=C(t),o=n();o.queryKey!==r&&e(e=>({...e,queryKey:r})),o.isStale()?O.fetch(t,void 0,!0):S(t,void 0)}else m&&!s&&O.fetch(void 0,void 0,!0)}else R=!0},onLastUnsubscribe:e=>{B&&(clearTimeout(B),B=null),d&&!e&&_()}});const S=(e,t)=>{if(m||t?.skipStoreUpdates)return;if(A<=0||A===1/0)return;B&&(clearTimeout(B),B=null);const r=C(e),o=n(),s=(v?V===r&&o.lastFetchedAt:o.queryCache[r]?.lastFetchedAt)||null,i=s?A-(Date.now()-s):A;B=setTimeout(()=>{const t=N.get();t.enabled&&t.subscriptionCount>0&&O.fetch(e,{force:!0},!0)},i)},O={...o(b,n,r),...H,async fetch(t,r,o=!1){const s=N.get();if(!r?.force&&!r?.skipStoreUpdates&&!s.enabled)return null;const m=n(),q=m.error,F=m.queryKey,k=m.status,T=Ze(D,L,M,t),E=C(T),P=r?.staleTime??A,x=k===Ke.Loading,R=!!r?.skipStoreUpdates,$="boolean"==typeof r?.updateQueryKey?r.updateQueryKey:o?w:!R,Q=o||!R&&($||F===E);if(U?.promise&&U.key===E&&x)return U.promise;if(d&&!R&&!1!==r?.updateQueryKey&&_(),!r?.force){const t=m.lastFetchedAt,n=m.queryCache[E],o=n?.lastFetchedAt,i=n?.errorInfo,c=i&&i.retryCount>=j,a=(v?V===E&&t:o)||null;if(a&&!(Date.now()-a>=P)&&(!i||c||R))return Q&&!R&&!B&&s.subscriptionCount>0&&0!==A&&A!==1/0&&S(T,r),$&&e(e=>e.queryKey!==E?{...e,queryKey:E}:e),n?.data??null}!R&&Q&&(B&&(clearTimeout(B),B=null),!q&&x||e(e=>({...e,error:null,status:Ke.Loading})),U={key:E});const H=r?.cacheTime??(K?y(T):y),J=async()=>{try{const t=await(d&&!R&&Q?(async e=>{const t=new AbortController;W=t;try{return await new Promise((n,r)=>{t.signal.addEventListener("abort",()=>r(z),{once:!0}),Promise.resolve(c(e,t)).then(n,r)})}finally{W===t&&(W=null)}})(T):c(T,null)),n=Date.now();let o;try{o=f?f(t,T):t}catch(e){throw new h(`[createQueryStore: ${i?.storageKey||E}]: transform failed`,e)}if(R)return"withCache"===r.skipStoreUpdates&&e(e=>{if(!l)return v?{...e,queryCache:{...e.queryCache,[E]:{cacheTime:H,data:o,errorInfo:null,lastFetchedAt:n}}}:e;let t=e;const r=t.queryCache[E];return l({data:o,params:T,queryKey:E,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}}),!v&&Object.is(r,t.queryCache[E])&&(t={...t,queryCache:{...t.queryCache,[E]:{cacheTime:H,data:o,errorInfo:null,lastFetchedAt:n}}}),t}),o;if((l?b:e)(e=>{let t={...e,error:null,lastFetchedAt:n,queryKey:$?E:e.queryKey,status:Ke.Success};if(l||v){if(l){const e=t.queryCache[E];l({data:o,params:T,queryKey:E,set:e=>{t="function"==typeof e?{...t,...e(t)}:{...t,...e}}}),!v&&Object.is(e,t.queryCache[E])&&(t.queryCache={...t.queryCache,[E]:{cacheTime:H,data:null,errorInfo:null,lastFetchedAt:n}})}}else t.queryCache={...t.queryCache,[E]:{cacheTime:H,data:o,errorInfo:null,lastFetchedAt:n}};return v||y===1/0?t:et(w,E,t)}),Q&&(V=E,S(T,r)),u)try{u({data:o,fetch:O.fetch,params:T,set:b})}catch(e){p.error(new h(`[createQueryStore: ${i?.storageKey||E}]: onFetched callback failed`,e))}return o??null}catch(s){if(s===z)return null;const c=!o&&!0===r?.throwOnError,u=g(s);if(R||!Q){if(p.error(new h(`[createQueryStore: ${i?.storageKey||E}]: Failed to fetch data`,u)),c)throw u;return null}const l=v?void 0:n().queryCache[E],f=l?.errorInfo?.retryCount??0,d=f+1;if(a?.(u,f),f<j){if(N.get().subscriptionCount>0){const e="function"==typeof I?I(d,u):I;e!==1/0&&(B&&clearTimeout(B),B=setTimeout(()=>{const{enabled:e,subscriptionCount:n}=N.get();e&&n>0&&O.fetch(t,{force:!0},!0)},e))}e(e=>({...e,error:u,queryCache:{...e.queryCache,[E]:{cacheTime:l?.cacheTime??H,data:l?.data??null,lastFetchedAt:l?.lastFetchedAt??null,errorInfo:{error:u,lastFailedAt:Date.now(),retryCount:d}}},queryKey:$?E:e.queryKey,status:Ke.Error}))}else e(e=>({...e,error:u,queryCache:{...e.queryCache,[E]:{cacheTime:l?.cacheTime??H,data:l?.data??null,lastFetchedAt:l?.lastFetchedAt??null,errorInfo:{error:u,lastFailedAt:Date.now(),retryCount:j}}},queryKey:$?E:e.queryKey,status:Ke.Error}));if(p.error(new h(`[createQueryStore: ${i?.storageKey||E}]: Failed to fetch data`,u)),c)throw u;return null}finally{!R&&Q&&(U=null)}};return R||!Q?J():(U={key:E,promise:J()}).promise},getCacheEntry(e){if(v)return null;const t=n(),r=e?"string"==typeof e?e:C(Ze(D,L,M,e)):t.queryKey;return t.queryCache[r]??null},getData(e){if(v)return null;const t=n().getCacheEntry(e);return t&&null!==t.data?w?t.data:t.lastFetchedAt&&Date.now()-t.lastFetchedAt>=t.cacheTime?null:t.data:null},getStatus:function(e){switch(e){case"isIdle":return n().status===Ke.Idle;case"isLoading":return n().status===Ke.Loading;case"isSuccess":{const e=n(),t=e.queryCache[e.queryKey]?.lastFetchedAt;return"number"==typeof t||e.status===Ke.Success}case"isError":case"isInitialLoad":case void 0:{const t=n(),r=t.queryCache[t.queryKey],o=(v?V===t.queryKey&&t.lastFetchedAt:r?.lastFetchedAt)||null,s=t.status;switch(e){case"isError":{const e=t.queryCache[t.queryKey];return v?"error"!==s:"number"==typeof e?.errorInfo?.lastFailedAt}case"isInitialLoad":return!o&&s===Ke.Loading}return{isError:s===Ke.Error,isIdle:s===Ke.Idle,isLoading:s===Ke.Loading,isInitialLoad:!o&&s===Ke.Loading,isSuccess:s===Ke.Success}}}},isDataExpired(e){const t=n(),r=t.queryCache[t.queryKey],o=t.queryKey,s=t.lastFetchedAt,i=(v?V===o&&s:r?.lastFetchedAt)||null;if(!i)return!0;const c=e??r?.cacheTime;return void 0===c||Date.now()-i>=c},isStale(e){const t=n(),r=t.queryKey,o=(v?V===r&&t.lastFetchedAt:t.queryCache[r]?.lastFetchedAt)||null;if(!o)return!0;const s=e??A;return Date.now()-o>=s},reset(t=!1){for(const e of x)e();x=[],D=null,L=null,P=null,_(),B&&(clearTimeout(B),B=null),U=null,V=null,t&&e(e=>({...e,...H}))}},F=r.subscribe;return r.subscribe=(...e)=>{const t=$?()=>{}:N.subscribe(),n=1===e.length?F(e[0]):F(...e);return e=>{t(e),n()}},O},Y=i?.storageKey?oe(J,Object.assign(Object.create(null),i,{partialize:rt(w,i.partialize)})):s&&!("storageKey"in s)?oe(J,s):oe(J),Z=Y.getState(),G=Z.error,X=Z.enabled,ee=Z.queryKey;if(ee&&!G&&(V=ee),$=!0,q||"function"==typeof t.enabled){const{directValues:t,enabledAttachVal:n,enabledDirectValue:r,attachVals:o}=function(t,n,r){const o=Object.create(null),s=Object.create(null),i=Object.create(null);for(const t in n){if(!e(n,t))continue;const c=n[t];if(tt(c)){const e=c(xe,r);o[t]=e,i[t]=e.value}else nt(c)&&(s[t]=c,i[t]=c)}let c,a=null,u=null;if(tt(t)){const e=t(xe,r);c=e.value,a=e}else c=t,u=t;return{attachVals:o,directValues:s,enabledAttachVal:a,enabledDirectValue:u,resolvedEnabled:c,resolvedParams:i}}(S,q,Y);D={enabled:n,params:o},L={enabled:r,params:t}}"function"==typeof t.staleTime&&(P=t.staleTime(xe,Y),A=P.value);const te=function(){let e,t=!1;return function(...n){e=n,t||(t=!0,queueMicrotask(()=>{t=!1,(e=>{Z.fetch(e??Ge(D,L),{updateQueryKey:w})})(...e)}))}}();function ne(){let e;if(!w){e=Ge(D,L);const t=C(e);Y.setState(e=>({...e,queryKey:t}))}te(e)}const re=O?T(ne,"number"==typeof O?O:O.delay,"number"==typeof O?{leading:!1,maxWait:O,trailing:!0}:O):ne;if(D?.enabled){const e=D.enabled,t=Le.get(e);if(t){let n=e.value;X!==n&&Y.setState(e=>({...e,enabled:n})),n&&N.setEnabled(n);const r=t(()=>{const t=e.value;t!==n&&(n=t,Y.setState(e=>({...e,enabled:t})))});x.push(r)}}else X!==H.enabled&&Y.setState(e=>({...e,enabled:H.enabled}));for(const e in D?.params){const t=D.params[e];if(!t)continue;const n=Le.get(t);if(n){let e=t.value;const r=n(()=>{const n=t.value;De(e,n)||(e=n,re())});x.push(r)}}if(P){const e=Le.get(P);if(e){const t=P;let n=t.value;const r=e(()=>{const e=t.value;e!==n&&(n=e,A=e,Y.getState().fetch())});x.push(r)}}return $=!1,R&&queueMicrotask(re),se=Y,ie="_queryStore",Object.assign(se,{[ie]:!0});var se,ie}function He(e,t){const n=t?.baseDelay??E.seconds(5),r=t?.maxDelay??E.minutes(5),o=Math.pow(2,e);return Math.min(n*o,r)}function Ne(e){return JSON.stringify(Object.keys(e).sort().map(t=>e[t]))}function _e(e){return JSON.stringify(Ye(e))}function Je(e){return JSON.parse(e)}function Ye(e){return"object"!=typeof e||null===e?e:Object.keys(e).sort().reduce((t,n)=>{const r=e[n];return t[n]=null!==r&&"object"==typeof r?Ye(r):r,t},{})}function Ze(e,t,n,r){return r?function(e,t){if(!e)return!1;for(const n of t)if(!(n in e))return!1;return!0}(r,n)?r:{...Ge(e,t),...r}:Ge(e,t)}function Ge(e,t){const n=t?.params??Object.create(null);for(const t in e?.params){const r=e.params[t];r&&(n[t]=r.value)}return n}function Xe(){return Object.create(null)}function et(t,n,r){if(!r.queryCache)return r;const o=Date.now(),s=n??(t&&r.queryKey||null);let i=!1;const c=Object.create(null);for(const t in r.queryCache){if(!e(r.queryCache,t))continue;const a=r.queryCache[t];a&&(o-(a.lastFetchedAt??a.errorInfo.lastFailedAt)<a.cacheTime||t===s)?!n&&a.errorInfo&&a.errorInfo.retryCount>0?(c[t]={...a,errorInfo:{...a.errorInfo,retryCount:0}},i=!0):c[t]=a:i=!0}return i?{...r,queryCache:c}:r}function tt(e){return"function"==typeof e}function nt(e){return!tt(e)}function rt(t,n){return r=>{const o={...r},s={};for(const t in o)e(o,t)&&t in Ve&&(Ve[t]&&(s[t]=o[t]),delete o[t]);return{...n?n(o):M(o),...et(t,null,s)}}}function ot(e,t,n){const r="function"==typeof t,o=r?t:void 0,s=r?n:t,i=new Set,c=Fe(e,{debugMode:s?.debugMode??!1,equalityFn:function(e,t){const n=Object.is(e,t);return n||(function(e,t){for(const n of i){n.unsubscribe();const r=n.args;if(1===r.length){const o=r[0],s=e.getState(),i=t.getState(),c=t.subscribe(o);n.unsubscribe=c,Object.is(i,s)||o(i,s);continue}const o=r[0],s=r[1];let i=r[2];i?.fireImmediately&&(i={...i,fireImmediately:!1});const c=i?.equalityFn??Object.is,a=o(e.getState()),u=o(t.getState()),l=t.subscribe(...r);n.unsubscribe=l,c(a,u)||s(u,a)}}(e,t),B(e)),n},keepAlive:!0,lockDependencies:s?.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 n=c();return e?n(e,t):n()},{_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)};return i.add(t),()=>{t.unsubscribe(),i.delete(t)}}},o?o(c.getState):void 0)}E.seconds(5);var st=Symbol(),it=Object.freeze({debugMode:!1,enabled:!0,equalityFn:Object.is,fireImmediately:!1});function ct(e,t,n,r=it){const o=function(){const e=u(st);return e.current===st&&(e.current=function(e,t,n){return{selector:e,react:t,isActive:!1,options:lt(n),resubscribe:()=>{},unsubscribe:()=>{}}}(t,n,r)),e}(),s=function(e){return"function"==typeof e?it.enabled:e?.enabled??it.enabled}(r);return o.current.react=n,o.current.selector=t,function(e,t){"function"==typeof t?e.current.options.equalityFn=t:t&&(e.current.options=t??it)}(o,r),a(()=>{if(s)return ut(e,o),()=>function(e){e.current.options.debugMode,e.current.resubscribe=()=>{},e.current.unsubscribe(),e.current.unsubscribe=()=>{},e.current.isActive=!1}(o)},[s,e]),o}var at=Object.freeze({fireImmediately:!1,forceResubscribe:!1});function ut(e,t,n=at){if(t.current.isActive){if(!n?.forceResubscribe)return;t.current.unsubscribe()}t.current.options.debugMode,t.current.isActive=!0,t.current.resubscribe=(n=at)=>ut(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 lt(e){return"function"==typeof e?{equalityFn:e}:e??it}var ft=Symbol();function dt(e){const t=u(ft);return t.current===ft&&(t.current=e()),t.current}function yt(e,t){const n=function(e){const t=e.getState(),n=Object.create(null);if(Y(e)){for(const r in t)pt(t,r)&&(n[r]=ht(e,r));return n}for(const e in t)pt(t,e)&&(n[e]=t[e]);return n}(e);return t?Object.assign(n,t):n}function ht(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 pt(e,t){return"function"==typeof e[t]}export{Ke as QueryStatuses,U as applyStateUpdate,I as configureStores,oe as createBaseStore,Fe as createDerivedStore,Qe as createQueryStore,yt as createStoreActions,ot as createVirtualStore,Me as deepEqual,He as defaultRetryDelay,B as destroyStore,V as destroyStores,Ne as getLegacyQueryKey,_e as getQueryKey,Q as getStoreName,_ as isDerivedStore,J as isPersistedStore,N as isQueryStore,Y as isVirtualStore,Je as parseQueryKey,Ee as shallowEqual,E as time,ct as useListen,dt as useStableValue};
package/package.json ADDED
@@ -0,0 +1,75 @@
1
+ {
2
+ "name": "@storesjs/stores",
3
+ "version": "0.8.0",
4
+ "engines": {
5
+ "node": ">=20.0.0"
6
+ },
7
+ "files": [
8
+ "dist",
9
+ "README.md",
10
+ "LICENSE"
11
+ ],
12
+ "main": "dist/web/index.js",
13
+ "module": "dist/web/index.mjs",
14
+ "types": "dist/web/index.d.ts",
15
+ "react-native": "dist/native/index.js",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "import": {
20
+ "react-native": "./dist/native/index.js",
21
+ "default": "./dist/web/index.mjs"
22
+ },
23
+ "require": {
24
+ "react-native": "./dist/native/index.js",
25
+ "default": "./dist/web/index.js"
26
+ }
27
+ },
28
+ "./chrome": {
29
+ "types": "./dist/plugins/chrome/index.d.ts",
30
+ "import": "./dist/web/chrome.mjs",
31
+ "require": "./dist/web/chrome.js"
32
+ }
33
+ },
34
+ "dependencies": {
35
+ "use-sync-external-store": "1.6.0",
36
+ "zustand": "5.0.8"
37
+ },
38
+ "peerDependencies": {
39
+ "react": ">=17.0.0",
40
+ "react-native": ">=0.64.0",
41
+ "react-native-mmkv": ">=2.0.0"
42
+ },
43
+ "devDependencies": {
44
+ "@types/chrome": "^0.0.276",
45
+ "@types/jest": "^29.5.14",
46
+ "@types/node": "^24.5.2",
47
+ "@types/react": "^19.1.1",
48
+ "@types/use-sync-external-store": "1.5.0",
49
+ "esbuild": "^0.25.10",
50
+ "jest": "^29.7.0",
51
+ "terser": "^5.44.0",
52
+ "ts-jest": "^29.3.4",
53
+ "tsup": "^8.5.0",
54
+ "vitest": "^2.0.0"
55
+ },
56
+ "scripts": {
57
+ "analyze": "pnpm run prebuild:web && npx -y tsx analyze-bundle.ts && pnpm run postbuild:web",
58
+ "build": "tsx build/build.ts",
59
+ "generate:exports": "tsx scripts/generate-exports.ts",
60
+ "build:dev": "pnpm run build:types && NODE_ENV=development pnpm run build:web && NODE_ENV=development pnpm run build:native",
61
+ "build:native": "pnpm run -s prebuild:native && BUILD_TARGET=native tsup --config tsup.config.ts --out-dir dist/native && pnpm run -s postbuild:native",
62
+ "build:types": "tsc -p tsconfig.build.json --emitDeclarationOnly",
63
+ "build:web": "pnpm run -s prebuild:web && tsup --config tsup.config.ts --out-dir dist/web && pnpm run -s postbuild:web",
64
+ "lint": "pnpm -w run lint",
65
+ "lint:eslint": "pnpm -w run lint:eslint",
66
+ "lint:prettier": "pnpm -w run lint:prettier",
67
+ "postbuild:native": "rm -f src/storesStorage.ts src/env.ts",
68
+ "postbuild:web": "rm -f src/storesStorage.ts src/env.ts",
69
+ "prebuild:native": "cp src/storesStorage.native.ts src/storesStorage.ts && cp src/env.native.ts src/env.ts",
70
+ "prebuild:web": "cp src/storesStorage.web.ts src/storesStorage.ts && cp src/env.web.ts src/env.ts",
71
+ "test": "jest --detectOpenHandles --forceExit --testPathIgnorePatterns='src/plugins'",
72
+ "test:chrome": "vitest run src/plugins/chrome",
73
+ "test:all": "pnpm run test && pnpm run test:chrome"
74
+ }
75
+ }