{"version":3,"sources":["../node_modules/.pnpm/use-sync-external-store@1.5.0_react@19.1.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../node_modules/.pnpm/use-sync-external-store@1.5.0_react@19.1.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../node_modules/.pnpm/use-sync-external-store@1.5.0_react@19.1.0/node_modules/use-sync-external-store/shim/index.js","../node_modules/.pnpm/use-sync-external-store@1.5.0_react@19.1.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","../node_modules/.pnpm/use-sync-external-store@1.5.0_react@19.1.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js","../node_modules/.pnpm/use-sync-external-store@1.5.0_react@19.1.0/node_modules/use-sync-external-store/shim/with-selector.js","../node_modules/.pnpm/zustand@4.5.7_@types+react@19.1.7_react@19.1.0/node_modules/zustand/esm/vanilla.mjs","../node_modules/.pnpm/zustand@4.5.7_@types+react@19.1.7_react@19.1.0/node_modules/zustand/esm/index.mjs","../node_modules/.pnpm/zustand@4.5.7_@types+react@19.1.7_react@19.1.0/node_modules/zustand/esm/shallow.mjs","../node_modules/.pnpm/zustand@4.5.7_@types+react@19.1.7_react@19.1.0/node_modules/zustand/esm/middleware.mjs","../node_modules/.pnpm/zustand@4.5.7_@types+react@19.1.7_react@19.1.0/node_modules/zustand/esm/traditional.mjs","../src/createDefaultStore.tsx","../node_modules/.pnpm/entity-state-adapter@0.1.4_patch_hash=euvyco4dpvneijt7vd3bnb6h2q/node_modules/entity-state-adapter/dist/index.es.js","../src/createEntityStateStore.tsx","../src/createStoreContext.tsx","../src/extend.ts","../src/select.ts"],"sourcesContent":["/**\n * @license React\n * use-sync-external-store-shim.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n  return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n  useState = React.useState,\n  useEffect = React.useEffect,\n  useLayoutEffect = React.useLayoutEffect,\n  useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$2(subscribe, getSnapshot) {\n  var value = getSnapshot(),\n    _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n    inst = _useState[0].inst,\n    forceUpdate = _useState[1];\n  useLayoutEffect(\n    function () {\n      inst.value = value;\n      inst.getSnapshot = getSnapshot;\n      checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n    },\n    [subscribe, value, getSnapshot]\n  );\n  useEffect(\n    function () {\n      checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n      return subscribe(function () {\n        checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n      });\n    },\n    [subscribe]\n  );\n  useDebugValue(value);\n  return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n  var latestGetSnapshot = inst.getSnapshot;\n  inst = inst.value;\n  try {\n    var nextValue = latestGetSnapshot();\n    return !objectIs(inst, nextValue);\n  } catch (error) {\n    return !0;\n  }\n}\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n  return getSnapshot();\n}\nvar shim =\n  \"undefined\" === typeof window ||\n  \"undefined\" === typeof window.document ||\n  \"undefined\" === typeof window.document.createElement\n    ? useSyncExternalStore$1\n    : useSyncExternalStore$2;\nexports.useSyncExternalStore =\n  void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n","/**\n * @license React\n * use-sync-external-store-shim.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n  (function () {\n    function is(x, y) {\n      return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n    }\n    function useSyncExternalStore$2(subscribe, getSnapshot) {\n      didWarnOld18Alpha ||\n        void 0 === React.startTransition ||\n        ((didWarnOld18Alpha = !0),\n        console.error(\n          \"You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release.\"\n        ));\n      var value = getSnapshot();\n      if (!didWarnUncachedGetSnapshot) {\n        var cachedValue = getSnapshot();\n        objectIs(value, cachedValue) ||\n          (console.error(\n            \"The result of getSnapshot should be cached to avoid an infinite loop\"\n          ),\n          (didWarnUncachedGetSnapshot = !0));\n      }\n      cachedValue = useState({\n        inst: { value: value, getSnapshot: getSnapshot }\n      });\n      var inst = cachedValue[0].inst,\n        forceUpdate = cachedValue[1];\n      useLayoutEffect(\n        function () {\n          inst.value = value;\n          inst.getSnapshot = getSnapshot;\n          checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n        },\n        [subscribe, value, getSnapshot]\n      );\n      useEffect(\n        function () {\n          checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n          return subscribe(function () {\n            checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n          });\n        },\n        [subscribe]\n      );\n      useDebugValue(value);\n      return value;\n    }\n    function checkIfSnapshotChanged(inst) {\n      var latestGetSnapshot = inst.getSnapshot;\n      inst = inst.value;\n      try {\n        var nextValue = latestGetSnapshot();\n        return !objectIs(inst, nextValue);\n      } catch (error) {\n        return !0;\n      }\n    }\n    function useSyncExternalStore$1(subscribe, getSnapshot) {\n      return getSnapshot();\n    }\n    \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n      \"function\" ===\n        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n    var React = require(\"react\"),\n      objectIs = \"function\" === typeof Object.is ? Object.is : is,\n      useState = React.useState,\n      useEffect = React.useEffect,\n      useLayoutEffect = React.useLayoutEffect,\n      useDebugValue = React.useDebugValue,\n      didWarnOld18Alpha = !1,\n      didWarnUncachedGetSnapshot = !1,\n      shim =\n        \"undefined\" === typeof window ||\n        \"undefined\" === typeof window.document ||\n        \"undefined\" === typeof window.document.createElement\n          ? useSyncExternalStore$1\n          : useSyncExternalStore$2;\n    exports.useSyncExternalStore =\n      void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n    \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n      \"function\" ===\n        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n  })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n  module.exports = require('../cjs/use-sync-external-store-shim.production.js');\n} else {\n  module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\"),\n  shim = require(\"use-sync-external-store/shim\");\nfunction is(x, y) {\n  return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n  useSyncExternalStore = shim.useSyncExternalStore,\n  useRef = React.useRef,\n  useEffect = React.useEffect,\n  useMemo = React.useMemo,\n  useDebugValue = React.useDebugValue;\nexports.useSyncExternalStoreWithSelector = function (\n  subscribe,\n  getSnapshot,\n  getServerSnapshot,\n  selector,\n  isEqual\n) {\n  var instRef = useRef(null);\n  if (null === instRef.current) {\n    var inst = { hasValue: !1, value: null };\n    instRef.current = inst;\n  } else inst = instRef.current;\n  instRef = useMemo(\n    function () {\n      function memoizedSelector(nextSnapshot) {\n        if (!hasMemo) {\n          hasMemo = !0;\n          memoizedSnapshot = nextSnapshot;\n          nextSnapshot = selector(nextSnapshot);\n          if (void 0 !== isEqual && inst.hasValue) {\n            var currentSelection = inst.value;\n            if (isEqual(currentSelection, nextSnapshot))\n              return (memoizedSelection = currentSelection);\n          }\n          return (memoizedSelection = nextSnapshot);\n        }\n        currentSelection = memoizedSelection;\n        if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;\n        var nextSelection = selector(nextSnapshot);\n        if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n          return (memoizedSnapshot = nextSnapshot), currentSelection;\n        memoizedSnapshot = nextSnapshot;\n        return (memoizedSelection = nextSelection);\n      }\n      var hasMemo = !1,\n        memoizedSnapshot,\n        memoizedSelection,\n        maybeGetServerSnapshot =\n          void 0 === getServerSnapshot ? null : getServerSnapshot;\n      return [\n        function () {\n          return memoizedSelector(getSnapshot());\n        },\n        null === maybeGetServerSnapshot\n          ? void 0\n          : function () {\n              return memoizedSelector(maybeGetServerSnapshot());\n            }\n      ];\n    },\n    [getSnapshot, getServerSnapshot, selector, isEqual]\n  );\n  var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n  useEffect(\n    function () {\n      inst.hasValue = !0;\n      inst.value = value;\n    },\n    [value]\n  );\n  useDebugValue(value);\n  return value;\n};\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n  (function () {\n    function is(x, y) {\n      return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n    }\n    \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n      \"function\" ===\n        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n    var React = require(\"react\"),\n      shim = require(\"use-sync-external-store/shim\"),\n      objectIs = \"function\" === typeof Object.is ? Object.is : is,\n      useSyncExternalStore = shim.useSyncExternalStore,\n      useRef = React.useRef,\n      useEffect = React.useEffect,\n      useMemo = React.useMemo,\n      useDebugValue = React.useDebugValue;\n    exports.useSyncExternalStoreWithSelector = function (\n      subscribe,\n      getSnapshot,\n      getServerSnapshot,\n      selector,\n      isEqual\n    ) {\n      var instRef = useRef(null);\n      if (null === instRef.current) {\n        var inst = { hasValue: !1, value: null };\n        instRef.current = inst;\n      } else inst = instRef.current;\n      instRef = useMemo(\n        function () {\n          function memoizedSelector(nextSnapshot) {\n            if (!hasMemo) {\n              hasMemo = !0;\n              memoizedSnapshot = nextSnapshot;\n              nextSnapshot = selector(nextSnapshot);\n              if (void 0 !== isEqual && inst.hasValue) {\n                var currentSelection = inst.value;\n                if (isEqual(currentSelection, nextSnapshot))\n                  return (memoizedSelection = currentSelection);\n              }\n              return (memoizedSelection = nextSnapshot);\n            }\n            currentSelection = memoizedSelection;\n            if (objectIs(memoizedSnapshot, nextSnapshot))\n              return currentSelection;\n            var nextSelection = selector(nextSnapshot);\n            if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n              return (memoizedSnapshot = nextSnapshot), currentSelection;\n            memoizedSnapshot = nextSnapshot;\n            return (memoizedSelection = nextSelection);\n          }\n          var hasMemo = !1,\n            memoizedSnapshot,\n            memoizedSelection,\n            maybeGetServerSnapshot =\n              void 0 === getServerSnapshot ? null : getServerSnapshot;\n          return [\n            function () {\n              return memoizedSelector(getSnapshot());\n            },\n            null === maybeGetServerSnapshot\n              ? void 0\n              : function () {\n                  return memoizedSelector(maybeGetServerSnapshot());\n                }\n          ];\n        },\n        [getSnapshot, getServerSnapshot, selector, isEqual]\n      );\n      var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n      useEffect(\n        function () {\n          inst.hasValue = !0;\n          inst.value = value;\n        },\n        [value]\n      );\n      useDebugValue(value);\n      return value;\n    };\n    \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n      \"function\" ===\n        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n  })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n  module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.js');\n} else {\n  module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","const createStoreImpl = (createState) => {\n  let state;\n  const listeners = /* @__PURE__ */ new Set();\n  const setState = (partial, replace) => {\n    const nextState = typeof partial === \"function\" ? partial(state) : partial;\n    if (!Object.is(nextState, state)) {\n      const previousState = state;\n      state = (replace != null ? replace : typeof nextState !== \"object\" || nextState === null) ? nextState : Object.assign({}, state, nextState);\n      listeners.forEach((listener) => listener(state, previousState));\n    }\n  };\n  const getState = () => state;\n  const getInitialState = () => initialState;\n  const subscribe = (listener) => {\n    listeners.add(listener);\n    return () => listeners.delete(listener);\n  };\n  const destroy = () => {\n    if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\") {\n      console.warn(\n        \"[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected.\"\n      );\n    }\n    listeners.clear();\n  };\n  const api = { setState, getState, getInitialState, subscribe, destroy };\n  const initialState = state = createState(setState, getState, api);\n  return api;\n};\nconst createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;\nvar vanilla = (createState) => {\n  if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\") {\n    console.warn(\n      \"[DEPRECATED] Default export is deprecated. Instead use import { createStore } from 'zustand/vanilla'.\"\n    );\n  }\n  return createStore(createState);\n};\n\nexport { createStore, vanilla as default };\n","import { createStore } from 'zustand/vanilla';\nexport * from 'zustand/vanilla';\nimport ReactExports from 'react';\nimport useSyncExternalStoreExports from 'use-sync-external-store/shim/with-selector.js';\n\nconst { useDebugValue } = ReactExports;\nconst { useSyncExternalStoreWithSelector } = useSyncExternalStoreExports;\nlet didWarnAboutEqualityFn = false;\nconst identity = (arg) => arg;\nfunction useStore(api, selector = identity, equalityFn) {\n  if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\" && equalityFn && !didWarnAboutEqualityFn) {\n    console.warn(\n      \"[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937\"\n    );\n    didWarnAboutEqualityFn = true;\n  }\n  const slice = useSyncExternalStoreWithSelector(\n    api.subscribe,\n    api.getState,\n    api.getServerState || api.getInitialState,\n    selector,\n    equalityFn\n  );\n  useDebugValue(slice);\n  return slice;\n}\nconst createImpl = (createState) => {\n  if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\" && typeof createState !== \"function\") {\n    console.warn(\n      \"[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.\"\n    );\n  }\n  const api = typeof createState === \"function\" ? createStore(createState) : createState;\n  const useBoundStore = (selector, equalityFn) => useStore(api, selector, equalityFn);\n  Object.assign(useBoundStore, api);\n  return useBoundStore;\n};\nconst create = (createState) => createState ? createImpl(createState) : createImpl;\nvar react = (createState) => {\n  if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\") {\n    console.warn(\n      \"[DEPRECATED] Default export is deprecated. Instead use `import { create } from 'zustand'`.\"\n    );\n  }\n  return create(createState);\n};\n\nexport { create, react as default, useStore };\n","function shallow$1(objA, objB) {\n  if (Object.is(objA, objB)) {\n    return true;\n  }\n  if (typeof objA !== \"object\" || objA === null || typeof objB !== \"object\" || objB === null) {\n    return false;\n  }\n  if (objA instanceof Map && objB instanceof Map) {\n    if (objA.size !== objB.size) return false;\n    for (const [key, value] of objA) {\n      if (!Object.is(value, objB.get(key))) {\n        return false;\n      }\n    }\n    return true;\n  }\n  if (objA instanceof Set && objB instanceof Set) {\n    if (objA.size !== objB.size) return false;\n    for (const value of objA) {\n      if (!objB.has(value)) {\n        return false;\n      }\n    }\n    return true;\n  }\n  const keysA = Object.keys(objA);\n  if (keysA.length !== Object.keys(objB).length) {\n    return false;\n  }\n  for (const keyA of keysA) {\n    if (!Object.prototype.hasOwnProperty.call(objB, keyA) || !Object.is(objA[keyA], objB[keyA])) {\n      return false;\n    }\n  }\n  return true;\n}\n\nvar shallow = (objA, objB) => {\n  if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\") {\n    console.warn(\n      \"[DEPRECATED] Default export is deprecated. Instead use `import { shallow } from 'zustand/shallow'`.\"\n    );\n  }\n  return shallow$1(objA, objB);\n};\n\nexport { shallow as default, shallow$1 as shallow };\n","const reduxImpl = (reducer, initial) => (set, _get, api) => {\n  api.dispatch = (action) => {\n    set((state) => reducer(state, action), false, action);\n    return action;\n  };\n  api.dispatchFromDevtools = true;\n  return { dispatch: (...a) => api.dispatch(...a), ...initial };\n};\nconst redux = reduxImpl;\n\nconst trackedConnections = /* @__PURE__ */ new Map();\nconst getTrackedConnectionState = (name) => {\n  const api = trackedConnections.get(name);\n  if (!api) return {};\n  return Object.fromEntries(\n    Object.entries(api.stores).map(([key, api2]) => [key, api2.getState()])\n  );\n};\nconst extractConnectionInformation = (store, extensionConnector, options) => {\n  if (store === void 0) {\n    return {\n      type: \"untracked\",\n      connection: extensionConnector.connect(options)\n    };\n  }\n  const existingConnection = trackedConnections.get(options.name);\n  if (existingConnection) {\n    return { type: \"tracked\", store, ...existingConnection };\n  }\n  const newConnection = {\n    connection: extensionConnector.connect(options),\n    stores: {}\n  };\n  trackedConnections.set(options.name, newConnection);\n  return { type: \"tracked\", store, ...newConnection };\n};\nconst devtoolsImpl = (fn, devtoolsOptions = {}) => (set, get, api) => {\n  const { enabled, anonymousActionType, store, ...options } = devtoolsOptions;\n  let extensionConnector;\n  try {\n    extensionConnector = (enabled != null ? enabled : (import.meta.env ? import.meta.env.MODE : void 0) !== \"production\") && window.__REDUX_DEVTOOLS_EXTENSION__;\n  } catch (_e) {\n  }\n  if (!extensionConnector) {\n    if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\" && enabled) {\n      console.warn(\n        \"[zustand devtools middleware] Please install/enable Redux devtools extension\"\n      );\n    }\n    return fn(set, get, api);\n  }\n  const { connection, ...connectionInformation } = extractConnectionInformation(store, extensionConnector, options);\n  let isRecording = true;\n  api.setState = (state, replace, nameOrAction) => {\n    const r = set(state, replace);\n    if (!isRecording) return r;\n    const action = nameOrAction === void 0 ? { type: anonymousActionType || \"anonymous\" } : typeof nameOrAction === \"string\" ? { type: nameOrAction } : nameOrAction;\n    if (store === void 0) {\n      connection == null ? void 0 : connection.send(action, get());\n      return r;\n    }\n    connection == null ? void 0 : connection.send(\n      {\n        ...action,\n        type: `${store}/${action.type}`\n      },\n      {\n        ...getTrackedConnectionState(options.name),\n        [store]: api.getState()\n      }\n    );\n    return r;\n  };\n  const setStateFromDevtools = (...a) => {\n    const originalIsRecording = isRecording;\n    isRecording = false;\n    set(...a);\n    isRecording = originalIsRecording;\n  };\n  const initialState = fn(api.setState, get, api);\n  if (connectionInformation.type === \"untracked\") {\n    connection == null ? void 0 : connection.init(initialState);\n  } else {\n    connectionInformation.stores[connectionInformation.store] = api;\n    connection == null ? void 0 : connection.init(\n      Object.fromEntries(\n        Object.entries(connectionInformation.stores).map(([key, store2]) => [\n          key,\n          key === connectionInformation.store ? initialState : store2.getState()\n        ])\n      )\n    );\n  }\n  if (api.dispatchFromDevtools && typeof api.dispatch === \"function\") {\n    let didWarnAboutReservedActionType = false;\n    const originalDispatch = api.dispatch;\n    api.dispatch = (...a) => {\n      if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\" && a[0].type === \"__setState\" && !didWarnAboutReservedActionType) {\n        console.warn(\n          '[zustand devtools middleware] \"__setState\" action type is reserved to set state from the devtools. Avoid using it.'\n        );\n        didWarnAboutReservedActionType = true;\n      }\n      originalDispatch(...a);\n    };\n  }\n  connection.subscribe((message) => {\n    var _a;\n    switch (message.type) {\n      case \"ACTION\":\n        if (typeof message.payload !== \"string\") {\n          console.error(\n            \"[zustand devtools middleware] Unsupported action format\"\n          );\n          return;\n        }\n        return parseJsonThen(\n          message.payload,\n          (action) => {\n            if (action.type === \"__setState\") {\n              if (store === void 0) {\n                setStateFromDevtools(action.state);\n                return;\n              }\n              if (Object.keys(action.state).length !== 1) {\n                console.error(\n                  `\n                    [zustand devtools middleware] Unsupported __setState action format. \n                    When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),\n                    and value of this only key should be a state object. Example: { \"type\": \"__setState\", \"state\": { \"abc123Store\": { \"foo\": \"bar\" } } }\n                    `\n                );\n              }\n              const stateFromDevtools = action.state[store];\n              if (stateFromDevtools === void 0 || stateFromDevtools === null) {\n                return;\n              }\n              if (JSON.stringify(api.getState()) !== JSON.stringify(stateFromDevtools)) {\n                setStateFromDevtools(stateFromDevtools);\n              }\n              return;\n            }\n            if (!api.dispatchFromDevtools) return;\n            if (typeof api.dispatch !== \"function\") return;\n            api.dispatch(action);\n          }\n        );\n      case \"DISPATCH\":\n        switch (message.payload.type) {\n          case \"RESET\":\n            setStateFromDevtools(initialState);\n            if (store === void 0) {\n              return connection == null ? void 0 : connection.init(api.getState());\n            }\n            return connection == null ? void 0 : connection.init(getTrackedConnectionState(options.name));\n          case \"COMMIT\":\n            if (store === void 0) {\n              connection == null ? void 0 : connection.init(api.getState());\n              return;\n            }\n            return connection == null ? void 0 : connection.init(getTrackedConnectionState(options.name));\n          case \"ROLLBACK\":\n            return parseJsonThen(message.state, (state) => {\n              if (store === void 0) {\n                setStateFromDevtools(state);\n                connection == null ? void 0 : connection.init(api.getState());\n                return;\n              }\n              setStateFromDevtools(state[store]);\n              connection == null ? void 0 : connection.init(getTrackedConnectionState(options.name));\n            });\n          case \"JUMP_TO_STATE\":\n          case \"JUMP_TO_ACTION\":\n            return parseJsonThen(message.state, (state) => {\n              if (store === void 0) {\n                setStateFromDevtools(state);\n                return;\n              }\n              if (JSON.stringify(api.getState()) !== JSON.stringify(state[store])) {\n                setStateFromDevtools(state[store]);\n              }\n            });\n          case \"IMPORT_STATE\": {\n            const { nextLiftedState } = message.payload;\n            const lastComputedState = (_a = nextLiftedState.computedStates.slice(-1)[0]) == null ? void 0 : _a.state;\n            if (!lastComputedState) return;\n            if (store === void 0) {\n              setStateFromDevtools(lastComputedState);\n            } else {\n              setStateFromDevtools(lastComputedState[store]);\n            }\n            connection == null ? void 0 : connection.send(\n              null,\n              // FIXME no-any\n              nextLiftedState\n            );\n            return;\n          }\n          case \"PAUSE_RECORDING\":\n            return isRecording = !isRecording;\n        }\n        return;\n    }\n  });\n  return initialState;\n};\nconst devtools = devtoolsImpl;\nconst parseJsonThen = (stringified, f) => {\n  let parsed;\n  try {\n    parsed = JSON.parse(stringified);\n  } catch (e) {\n    console.error(\n      \"[zustand devtools middleware] Could not parse the received json\",\n      e\n    );\n  }\n  if (parsed !== void 0) f(parsed);\n};\n\nconst subscribeWithSelectorImpl = (fn) => (set, get, api) => {\n  const origSubscribe = api.subscribe;\n  api.subscribe = (selector, optListener, options) => {\n    let listener = selector;\n    if (optListener) {\n      const equalityFn = (options == null ? void 0 : options.equalityFn) || Object.is;\n      let currentSlice = selector(api.getState());\n      listener = (state) => {\n        const nextSlice = selector(state);\n        if (!equalityFn(currentSlice, nextSlice)) {\n          const previousSlice = currentSlice;\n          optListener(currentSlice = nextSlice, previousSlice);\n        }\n      };\n      if (options == null ? void 0 : options.fireImmediately) {\n        optListener(currentSlice, currentSlice);\n      }\n    }\n    return origSubscribe(listener);\n  };\n  const initialState = fn(set, get, api);\n  return initialState;\n};\nconst subscribeWithSelector = subscribeWithSelectorImpl;\n\nconst combine = (initialState, create) => (...a) => Object.assign({}, initialState, create(...a));\n\nfunction createJSONStorage(getStorage, options) {\n  let storage;\n  try {\n    storage = getStorage();\n  } catch (_e) {\n    return;\n  }\n  const persistStorage = {\n    getItem: (name) => {\n      var _a;\n      const parse = (str2) => {\n        if (str2 === null) {\n          return null;\n        }\n        return JSON.parse(str2, options == null ? void 0 : options.reviver);\n      };\n      const str = (_a = storage.getItem(name)) != null ? _a : null;\n      if (str instanceof Promise) {\n        return str.then(parse);\n      }\n      return parse(str);\n    },\n    setItem: (name, newValue) => storage.setItem(\n      name,\n      JSON.stringify(newValue, options == null ? void 0 : options.replacer)\n    ),\n    removeItem: (name) => storage.removeItem(name)\n  };\n  return persistStorage;\n}\nconst toThenable = (fn) => (input) => {\n  try {\n    const result = fn(input);\n    if (result instanceof Promise) {\n      return result;\n    }\n    return {\n      then(onFulfilled) {\n        return toThenable(onFulfilled)(result);\n      },\n      catch(_onRejected) {\n        return this;\n      }\n    };\n  } catch (e) {\n    return {\n      then(_onFulfilled) {\n        return this;\n      },\n      catch(onRejected) {\n        return toThenable(onRejected)(e);\n      }\n    };\n  }\n};\nconst oldImpl = (config, baseOptions) => (set, get, api) => {\n  let options = {\n    getStorage: () => localStorage,\n    serialize: JSON.stringify,\n    deserialize: JSON.parse,\n    partialize: (state) => state,\n    version: 0,\n    merge: (persistedState, currentState) => ({\n      ...currentState,\n      ...persistedState\n    }),\n    ...baseOptions\n  };\n  let hasHydrated = false;\n  const hydrationListeners = /* @__PURE__ */ new Set();\n  const finishHydrationListeners = /* @__PURE__ */ new Set();\n  let storage;\n  try {\n    storage = options.getStorage();\n  } catch (_e) {\n  }\n  if (!storage) {\n    return config(\n      (...args) => {\n        console.warn(\n          `[zustand persist middleware] Unable to update item '${options.name}', the given storage is currently unavailable.`\n        );\n        set(...args);\n      },\n      get,\n      api\n    );\n  }\n  const thenableSerialize = toThenable(options.serialize);\n  const setItem = () => {\n    const state = options.partialize({ ...get() });\n    let errorInSync;\n    const thenable = thenableSerialize({ state, version: options.version }).then(\n      (serializedValue) => storage.setItem(options.name, serializedValue)\n    ).catch((e) => {\n      errorInSync = e;\n    });\n    if (errorInSync) {\n      throw errorInSync;\n    }\n    return thenable;\n  };\n  const savedSetState = api.setState;\n  api.setState = (state, replace) => {\n    savedSetState(state, replace);\n    void setItem();\n  };\n  const configResult = config(\n    (...args) => {\n      set(...args);\n      void setItem();\n    },\n    get,\n    api\n  );\n  let stateFromStorage;\n  const hydrate = () => {\n    var _a;\n    if (!storage) return;\n    hasHydrated = false;\n    hydrationListeners.forEach((cb) => cb(get()));\n    const postRehydrationCallback = ((_a = options.onRehydrateStorage) == null ? void 0 : _a.call(options, get())) || void 0;\n    return toThenable(storage.getItem.bind(storage))(options.name).then((storageValue) => {\n      if (storageValue) {\n        return options.deserialize(storageValue);\n      }\n    }).then((deserializedStorageValue) => {\n      if (deserializedStorageValue) {\n        if (typeof deserializedStorageValue.version === \"number\" && deserializedStorageValue.version !== options.version) {\n          if (options.migrate) {\n            return options.migrate(\n              deserializedStorageValue.state,\n              deserializedStorageValue.version\n            );\n          }\n          console.error(\n            `State loaded from storage couldn't be migrated since no migrate function was provided`\n          );\n        } else {\n          return deserializedStorageValue.state;\n        }\n      }\n    }).then((migratedState) => {\n      var _a2;\n      stateFromStorage = options.merge(\n        migratedState,\n        (_a2 = get()) != null ? _a2 : configResult\n      );\n      set(stateFromStorage, true);\n      return setItem();\n    }).then(() => {\n      postRehydrationCallback == null ? void 0 : postRehydrationCallback(stateFromStorage, void 0);\n      hasHydrated = true;\n      finishHydrationListeners.forEach((cb) => cb(stateFromStorage));\n    }).catch((e) => {\n      postRehydrationCallback == null ? void 0 : postRehydrationCallback(void 0, e);\n    });\n  };\n  api.persist = {\n    setOptions: (newOptions) => {\n      options = {\n        ...options,\n        ...newOptions\n      };\n      if (newOptions.getStorage) {\n        storage = newOptions.getStorage();\n      }\n    },\n    clearStorage: () => {\n      storage == null ? void 0 : storage.removeItem(options.name);\n    },\n    getOptions: () => options,\n    rehydrate: () => hydrate(),\n    hasHydrated: () => hasHydrated,\n    onHydrate: (cb) => {\n      hydrationListeners.add(cb);\n      return () => {\n        hydrationListeners.delete(cb);\n      };\n    },\n    onFinishHydration: (cb) => {\n      finishHydrationListeners.add(cb);\n      return () => {\n        finishHydrationListeners.delete(cb);\n      };\n    }\n  };\n  hydrate();\n  return stateFromStorage || configResult;\n};\nconst newImpl = (config, baseOptions) => (set, get, api) => {\n  let options = {\n    storage: createJSONStorage(() => localStorage),\n    partialize: (state) => state,\n    version: 0,\n    merge: (persistedState, currentState) => ({\n      ...currentState,\n      ...persistedState\n    }),\n    ...baseOptions\n  };\n  let hasHydrated = false;\n  const hydrationListeners = /* @__PURE__ */ new Set();\n  const finishHydrationListeners = /* @__PURE__ */ new Set();\n  let storage = options.storage;\n  if (!storage) {\n    return config(\n      (...args) => {\n        console.warn(\n          `[zustand persist middleware] Unable to update item '${options.name}', the given storage is currently unavailable.`\n        );\n        set(...args);\n      },\n      get,\n      api\n    );\n  }\n  const setItem = () => {\n    const state = options.partialize({ ...get() });\n    return storage.setItem(options.name, {\n      state,\n      version: options.version\n    });\n  };\n  const savedSetState = api.setState;\n  api.setState = (state, replace) => {\n    savedSetState(state, replace);\n    void setItem();\n  };\n  const configResult = config(\n    (...args) => {\n      set(...args);\n      void setItem();\n    },\n    get,\n    api\n  );\n  api.getInitialState = () => configResult;\n  let stateFromStorage;\n  const hydrate = () => {\n    var _a, _b;\n    if (!storage) return;\n    hasHydrated = false;\n    hydrationListeners.forEach((cb) => {\n      var _a2;\n      return cb((_a2 = get()) != null ? _a2 : configResult);\n    });\n    const postRehydrationCallback = ((_b = options.onRehydrateStorage) == null ? void 0 : _b.call(options, (_a = get()) != null ? _a : configResult)) || void 0;\n    return toThenable(storage.getItem.bind(storage))(options.name).then((deserializedStorageValue) => {\n      if (deserializedStorageValue) {\n        if (typeof deserializedStorageValue.version === \"number\" && deserializedStorageValue.version !== options.version) {\n          if (options.migrate) {\n            return [\n              true,\n              options.migrate(\n                deserializedStorageValue.state,\n                deserializedStorageValue.version\n              )\n            ];\n          }\n          console.error(\n            `State loaded from storage couldn't be migrated since no migrate function was provided`\n          );\n        } else {\n          return [false, deserializedStorageValue.state];\n        }\n      }\n      return [false, void 0];\n    }).then((migrationResult) => {\n      var _a2;\n      const [migrated, migratedState] = migrationResult;\n      stateFromStorage = options.merge(\n        migratedState,\n        (_a2 = get()) != null ? _a2 : configResult\n      );\n      set(stateFromStorage, true);\n      if (migrated) {\n        return setItem();\n      }\n    }).then(() => {\n      postRehydrationCallback == null ? void 0 : postRehydrationCallback(stateFromStorage, void 0);\n      stateFromStorage = get();\n      hasHydrated = true;\n      finishHydrationListeners.forEach((cb) => cb(stateFromStorage));\n    }).catch((e) => {\n      postRehydrationCallback == null ? void 0 : postRehydrationCallback(void 0, e);\n    });\n  };\n  api.persist = {\n    setOptions: (newOptions) => {\n      options = {\n        ...options,\n        ...newOptions\n      };\n      if (newOptions.storage) {\n        storage = newOptions.storage;\n      }\n    },\n    clearStorage: () => {\n      storage == null ? void 0 : storage.removeItem(options.name);\n    },\n    getOptions: () => options,\n    rehydrate: () => hydrate(),\n    hasHydrated: () => hasHydrated,\n    onHydrate: (cb) => {\n      hydrationListeners.add(cb);\n      return () => {\n        hydrationListeners.delete(cb);\n      };\n    },\n    onFinishHydration: (cb) => {\n      finishHydrationListeners.add(cb);\n      return () => {\n        finishHydrationListeners.delete(cb);\n      };\n    }\n  };\n  if (!options.skipHydration) {\n    hydrate();\n  }\n  return stateFromStorage || configResult;\n};\nconst persistImpl = (config, baseOptions) => {\n  if (\"getStorage\" in baseOptions || \"serialize\" in baseOptions || \"deserialize\" in baseOptions) {\n    if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\") {\n      console.warn(\n        \"[DEPRECATED] `getStorage`, `serialize` and `deserialize` options are deprecated. Use `storage` option instead.\"\n      );\n    }\n    return oldImpl(config, baseOptions);\n  }\n  return newImpl(config, baseOptions);\n};\nconst persist = persistImpl;\n\nexport { combine, createJSONStorage, devtools, persist, redux, subscribeWithSelector };\n","import ReactExports from 'react';\nimport useSyncExternalStoreExports from 'use-sync-external-store/shim/with-selector.js';\nimport { createStore } from 'zustand/vanilla';\n\nconst { useDebugValue } = ReactExports;\nconst { useSyncExternalStoreWithSelector } = useSyncExternalStoreExports;\nconst identity = (arg) => arg;\nfunction useStoreWithEqualityFn(api, selector = identity, equalityFn) {\n  const slice = useSyncExternalStoreWithSelector(\n    api.subscribe,\n    api.getState,\n    api.getServerState || api.getInitialState,\n    selector,\n    equalityFn\n  );\n  useDebugValue(slice);\n  return slice;\n}\nconst createWithEqualityFnImpl = (createState, defaultEqualityFn) => {\n  const api = createStore(createState);\n  const useBoundStoreWithEqualityFn = (selector, equalityFn = defaultEqualityFn) => useStoreWithEqualityFn(api, selector, equalityFn);\n  Object.assign(useBoundStoreWithEqualityFn, api);\n  return useBoundStoreWithEqualityFn;\n};\nconst createWithEqualityFn = (createState, defaultEqualityFn) => createState ? createWithEqualityFnImpl(createState, defaultEqualityFn) : createWithEqualityFnImpl;\n\nexport { createWithEqualityFn, useStoreWithEqualityFn };\n","import { combine, createStore, StateCreator } from \"./exports\";\nimport { AnyObject } from \"./typings\";\n\n/**\n * The default store creator function.\n */\nexport function createDefaultStore<S extends AnyObject, A extends AnyObject>(\n  initialState: S,\n  actionsCreator: StateCreator<S, [], [], A>\n) {\n  return createStore(combine(initialState, actionsCreator));\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n    __assign = Object.assign || function __assign(t) {\r\n        for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n            s = arguments[i];\r\n            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n        }\r\n        return t;\r\n    };\r\n    return __assign.apply(this, arguments);\r\n};\n\nfunction getInitialEntityState() {\r\n    return {\r\n        ids: [],\r\n        entities: {}\r\n    };\r\n}\r\nfunction createInitialStateFactory() {\r\n    function getInitialState(additionalState) {\r\n        if (additionalState === void 0) { additionalState = {}; }\r\n        return Object.assign(getInitialEntityState(), additionalState);\r\n    }\r\n    return { getInitialState: getInitialState };\r\n}\n\nfunction isEqualCheck(a, b) {\r\n    return a === b;\r\n}\r\nfunction isArgumentsChanged(args, lastArguments, comparator) {\r\n    for (var i = 0; i < args.length; i++) {\r\n        if (!comparator(args[i], lastArguments[i])) {\r\n            return true;\r\n        }\r\n    }\r\n    return false;\r\n}\r\nfunction defaultMemoize(projectionFn, isArgumentsEqual, isResultEqual) {\r\n    if (isArgumentsEqual === void 0) { isArgumentsEqual = isEqualCheck; }\r\n    if (isResultEqual === void 0) { isResultEqual = isEqualCheck; }\r\n    var lastArguments = null;\r\n    // tslint:disable-next-line:no-any anything could be the result.\r\n    var lastResult = null;\r\n    var overrideResult;\r\n    function reset() {\r\n        lastArguments = null;\r\n        lastResult = null;\r\n    }\r\n    function setResult(result) {\r\n        if (result === void 0) { result = undefined; }\r\n        overrideResult = result;\r\n    }\r\n    // tslint:disable-next-line:no-any anything could be the result.\r\n    function memoized() {\r\n        if (overrideResult !== undefined) {\r\n            return overrideResult;\r\n        }\r\n        if (!lastArguments) {\r\n            lastResult = projectionFn.apply(null, arguments);\r\n            lastArguments = arguments;\r\n            return lastResult;\r\n        }\r\n        if (!isArgumentsChanged(arguments, lastArguments, isArgumentsEqual)) {\r\n            return lastResult;\r\n        }\r\n        lastArguments = arguments;\r\n        var newResult = projectionFn.apply(null, arguments);\r\n        if (isResultEqual(lastResult, newResult)) {\r\n            return lastResult;\r\n        }\r\n        lastResult = newResult;\r\n        return newResult;\r\n    }\r\n    return { memoized: memoized, reset: reset, setResult: setResult };\r\n}\r\nfunction createSelector() {\r\n    var input = [];\r\n    for (var _i = 0; _i < arguments.length; _i++) {\r\n        input[_i] = arguments[_i];\r\n    }\r\n    return createSelectorFactory(defaultMemoize).apply(void 0, input);\r\n}\r\nfunction defaultStateFn(state, selectors, props, memoizedProjector) {\r\n    if (props === undefined) {\r\n        var args_1 = selectors.map(function (fn) { return fn(state); });\r\n        return memoizedProjector.memoized.apply(null, args_1);\r\n    }\r\n    var args = selectors.map(function (fn) {\r\n        return fn(state, props);\r\n    });\r\n    return memoizedProjector.memoized.apply(null, args.concat([props]));\r\n}\r\nfunction createSelectorFactory(memoize, options) {\r\n    if (options === void 0) { options = {\r\n        stateFn: defaultStateFn\r\n    }; }\r\n    return function () {\r\n        var input = [];\r\n        for (var _i = 0; _i < arguments.length; _i++) {\r\n            input[_i] = arguments[_i];\r\n        }\r\n        var args = input;\r\n        if (Array.isArray(args[0])) {\r\n            var head = args[0], tail = args.slice(1);\r\n            args = head.concat(tail);\r\n        }\r\n        var selectors = args.slice(0, args.length - 1);\r\n        var projector = args[args.length - 1];\r\n        var memoizedSelectors = selectors.filter(function (selector) {\r\n            return selector.release && typeof selector.release === \"function\";\r\n        });\r\n        var memoizedProjector = memoize(function () {\r\n            var selectors = [];\r\n            for (var _i = 0; _i < arguments.length; _i++) {\r\n                selectors[_i] = arguments[_i];\r\n            }\r\n            return projector.apply(null, selectors);\r\n        });\r\n        var memoizedState = defaultMemoize(function (state, props) {\r\n            return options.stateFn.apply(null, [\r\n                state,\r\n                selectors,\r\n                props,\r\n                memoizedProjector\r\n            ]);\r\n        });\r\n        function release() {\r\n            memoizedState.reset();\r\n            memoizedProjector.reset();\r\n            memoizedSelectors.forEach(function (selector) { return selector.release(); });\r\n        }\r\n        return Object.assign(memoizedState.memoized, {\r\n            release: release,\r\n            projector: memoizedProjector.memoized,\r\n            setResult: memoizedState.setResult\r\n        });\r\n    };\r\n}\r\nfunction createFeatureSelector(featureName) {\r\n    return createSelector(function (state) { return state[featureName]; }, function (featureState) { return featureState; });\r\n}\n\nfunction createSelectorsFactory() {\r\n    function getSelectors(selectState) {\r\n        var selectIds = function (state) { return state.ids; };\r\n        var selectEntities = function (state) { return state.entities; };\r\n        var selectAll = createSelector(selectIds, selectEntities, function (ids, entities) {\r\n            return ids.map(function (id) { return entities[id]; });\r\n        });\r\n        var selectTotal = createSelector(selectIds, function (ids) { return ids.length; });\r\n        if (!selectState) {\r\n            return {\r\n                selectIds: selectIds,\r\n                selectEntities: selectEntities,\r\n                selectAll: selectAll,\r\n                selectTotal: selectTotal\r\n            };\r\n        }\r\n        return {\r\n            selectIds: createSelector(selectState, selectIds),\r\n            selectEntities: createSelector(selectState, selectEntities),\r\n            selectAll: createSelector(selectState, selectAll),\r\n            selectTotal: createSelector(selectState, selectTotal)\r\n        };\r\n    }\r\n    return { getSelectors: getSelectors };\r\n}\n\nvar DidMutate;\r\n(function (DidMutate) {\r\n    DidMutate[DidMutate[\"EntitiesOnly\"] = 0] = \"EntitiesOnly\";\r\n    DidMutate[DidMutate[\"Both\"] = 1] = \"Both\";\r\n    DidMutate[DidMutate[\"None\"] = 2] = \"None\";\r\n})(DidMutate || (DidMutate = {}));\r\nfunction createStateOperator(mutator) {\r\n    return function operation(arg, state) {\r\n        var clonedEntityState = {\r\n            ids: state.ids.slice(),\r\n            entities: __assign({}, state.entities)\r\n        };\r\n        var didMutate = mutator(arg, clonedEntityState);\r\n        if (didMutate === DidMutate.Both) {\r\n            return Object.assign({}, state, clonedEntityState);\r\n        }\r\n        if (didMutate === DidMutate.EntitiesOnly) {\r\n            return __assign({}, state, { entities: clonedEntityState.entities });\r\n        }\r\n        return state;\r\n    };\r\n}\n\nfunction selectIdValue(entity, selectId) {\r\n    var key = selectId(entity);\r\n    if (key === undefined) {\r\n        console.warn(\"Entity-state-adapter: The entity passed to the `selectId` implementation returned undefined.\", \"You should probably provide your own `selectId` implementation.\", \"The entity that was passed:\", entity, \"The `selectId` implementation:\", selectId.toString());\r\n    }\r\n    return key;\r\n}\n\nfunction createUnsortedStateAdapter(selectId) {\r\n    function addOneMutably(entity, state) {\r\n        var key = selectIdValue(entity, selectId);\r\n        if (key in state.entities) {\r\n            return DidMutate.None;\r\n        }\r\n        state.ids.push(key);\r\n        state.entities[key] = entity;\r\n        return DidMutate.Both;\r\n    }\r\n    function addManyMutably(entities, state) {\r\n        var didMutate = false;\r\n        for (var _i = 0, entities_1 = entities; _i < entities_1.length; _i++) {\r\n            var entity = entities_1[_i];\r\n            didMutate =\r\n                addOneMutably(entity, state) !== DidMutate.None || didMutate;\r\n        }\r\n        return didMutate ? DidMutate.Both : DidMutate.None;\r\n    }\r\n    function addAllMutably(entities, state) {\r\n        state.ids = [];\r\n        state.entities = {};\r\n        addManyMutably(entities, state);\r\n        return DidMutate.Both;\r\n    }\r\n    function removeOneMutably(key, state) {\r\n        return removeManyMutably([key], state);\r\n    }\r\n    function removeManyMutably(keysOrPredicate, state) {\r\n        var keys = keysOrPredicate instanceof Array\r\n            ? keysOrPredicate\r\n            : state.ids.filter(function (key) {\r\n                return keysOrPredicate(state.entities[key]);\r\n            });\r\n        var didMutate = keys\r\n            .filter(function (key) { return key in state.entities; })\r\n            .map(function (key) { return delete state.entities[key]; }).length > 0;\r\n        if (didMutate) {\r\n            state.ids = state.ids.filter(function (id) { return id in state.entities; });\r\n        }\r\n        return didMutate ? DidMutate.Both : DidMutate.None;\r\n    }\r\n    function removeAll(state) {\r\n        return Object.assign({}, state, {\r\n            ids: [],\r\n            entities: {}\r\n        });\r\n    }\r\n    function takeNewKey(keys, update, state) {\r\n        var original = state.entities[update.id];\r\n        var updated = Object.assign({}, original, update.changes);\r\n        var newKey = selectIdValue(updated, selectId);\r\n        var hasNewKey = newKey !== update.id;\r\n        if (hasNewKey) {\r\n            keys[update.id] = newKey;\r\n            delete state.entities[update.id];\r\n        }\r\n        state.entities[newKey] = updated;\r\n        return hasNewKey;\r\n    }\r\n    function updateOneMutably(update, state) {\r\n        return updateManyMutably([update], state);\r\n    }\r\n    function updateManyMutably(updates, state) {\r\n        var newKeys = {};\r\n        updates = updates.filter(function (update) { return update.id in state.entities; });\r\n        var didMutateEntities = updates.length > 0;\r\n        if (didMutateEntities) {\r\n            var didMutateIds = updates.filter(function (update) { return takeNewKey(newKeys, update, state); })\r\n                .length > 0;\r\n            if (didMutateIds) {\r\n                state.ids = state.ids.map(function (id) { return newKeys[id] || id; });\r\n                return DidMutate.Both;\r\n            }\r\n            else {\r\n                return DidMutate.EntitiesOnly;\r\n            }\r\n        }\r\n        return DidMutate.None;\r\n    }\r\n    function mapMutably(map, state) {\r\n        var changes = state.ids.reduce(function (changes, id) {\r\n            var change = map(state.entities[id]);\r\n            if (change !== state.entities[id]) {\r\n                changes.push({ id: id, changes: change });\r\n            }\r\n            return changes;\r\n        }, []);\r\n        var updates = changes.filter(function (_a) {\r\n            var id = _a.id;\r\n            return id in state.entities;\r\n        });\r\n        return updateManyMutably(updates, state);\r\n    }\r\n    function upsertOneMutably(entity, state) {\r\n        return upsertManyMutably([entity], state);\r\n    }\r\n    function upsertManyMutably(entities, state) {\r\n        var added = [];\r\n        var updated = [];\r\n        for (var _i = 0, entities_2 = entities; _i < entities_2.length; _i++) {\r\n            var entity = entities_2[_i];\r\n            var id = selectIdValue(entity, selectId);\r\n            if (id in state.entities) {\r\n                updated.push({ id: id, changes: entity });\r\n            }\r\n            else {\r\n                added.push(entity);\r\n            }\r\n        }\r\n        var didMutateByUpdated = updateManyMutably(updated, state);\r\n        var didMutateByAdded = addManyMutably(added, state);\r\n        switch (true) {\r\n            case didMutateByAdded === DidMutate.None &&\r\n                didMutateByUpdated === DidMutate.None:\r\n                return DidMutate.None;\r\n            case didMutateByAdded === DidMutate.Both ||\r\n                didMutateByUpdated === DidMutate.Both:\r\n                return DidMutate.Both;\r\n            default:\r\n                return DidMutate.EntitiesOnly;\r\n        }\r\n    }\r\n    return {\r\n        removeAll: removeAll,\r\n        addOne: createStateOperator(addOneMutably),\r\n        addMany: createStateOperator(addManyMutably),\r\n        addAll: createStateOperator(addAllMutably),\r\n        updateOne: createStateOperator(updateOneMutably),\r\n        updateMany: createStateOperator(updateManyMutably),\r\n        upsertOne: createStateOperator(upsertOneMutably),\r\n        upsertMany: createStateOperator(upsertManyMutably),\r\n        removeOne: createStateOperator(removeOneMutably),\r\n        removeMany: createStateOperator(removeManyMutably),\r\n        map: createStateOperator(mapMutably)\r\n    };\r\n}\n\nfunction createSortedStateAdapter(selectId, sort) {\r\n    var _a = createUnsortedStateAdapter(selectId), removeOne = _a.removeOne, removeMany = _a.removeMany, removeAll = _a.removeAll;\r\n    function addOneMutably(entity, state) {\r\n        return addManyMutably([entity], state);\r\n    }\r\n    function addManyMutably(newModels, state) {\r\n        var models = newModels.filter(function (model) { return !(selectIdValue(model, selectId) in state.entities); });\r\n        if (models.length === 0) {\r\n            return DidMutate.None;\r\n        }\r\n        else {\r\n            merge(models, state);\r\n            return DidMutate.Both;\r\n        }\r\n    }\r\n    function addAllMutably(models, state) {\r\n        state.entities = {};\r\n        state.ids = [];\r\n        addManyMutably(models, state);\r\n        return DidMutate.Both;\r\n    }\r\n    function updateOneMutably(update, state) {\r\n        return updateManyMutably([update], state);\r\n    }\r\n    function takeUpdatedModel(models, update, state) {\r\n        if (!(update.id in state.entities)) {\r\n            return false;\r\n        }\r\n        var original = state.entities[update.id];\r\n        var updated = Object.assign({}, original, update.changes);\r\n        var newKey = selectIdValue(updated, selectId);\r\n        delete state.entities[update.id];\r\n        models.push(updated);\r\n        return newKey !== update.id;\r\n    }\r\n    function updateManyMutably(updates, state) {\r\n        var models = [];\r\n        var didMutateIds = updates.filter(function (update) { return takeUpdatedModel(models, update, state); })\r\n            .length > 0;\r\n        if (models.length === 0) {\r\n            return DidMutate.None;\r\n        }\r\n        else {\r\n            var originalIds_1 = state.ids;\r\n            var updatedIndexes_1 = [];\r\n            state.ids = state.ids.filter(function (id, index) {\r\n                if (id in state.entities) {\r\n                    return true;\r\n                }\r\n                else {\r\n                    updatedIndexes_1.push(index);\r\n                    return false;\r\n                }\r\n            });\r\n            merge(models, state);\r\n            if (!didMutateIds &&\r\n                updatedIndexes_1.every(function (i) { return state.ids[i] === originalIds_1[i]; })) {\r\n                return DidMutate.EntitiesOnly;\r\n            }\r\n            else {\r\n                return DidMutate.Both;\r\n            }\r\n        }\r\n    }\r\n    function mapMutably(updatesOrMap, state) {\r\n        var updates = state.ids.reduce(function (changes, id) {\r\n            var change = updatesOrMap(state.entities[id]);\r\n            if (change !== state.entities[id]) {\r\n                changes.push({ id: id, changes: change });\r\n            }\r\n            return changes;\r\n        }, []);\r\n        return updateManyMutably(updates, state);\r\n    }\r\n    function upsertOneMutably(entity, state) {\r\n        return upsertManyMutably([entity], state);\r\n    }\r\n    function upsertManyMutably(entities, state) {\r\n        var added = [];\r\n        var updated = [];\r\n        for (var _i = 0, entities_1 = entities; _i < entities_1.length; _i++) {\r\n            var entity = entities_1[_i];\r\n            var id = selectIdValue(entity, selectId);\r\n            if (id in state.entities) {\r\n                updated.push({ id: id, changes: entity });\r\n            }\r\n            else {\r\n                added.push(entity);\r\n            }\r\n        }\r\n        var didMutateByUpdated = updateManyMutably(updated, state);\r\n        var didMutateByAdded = addManyMutably(added, state);\r\n        switch (true) {\r\n            case didMutateByAdded === DidMutate.None &&\r\n                didMutateByUpdated === DidMutate.None:\r\n                return DidMutate.None;\r\n            case didMutateByAdded === DidMutate.Both ||\r\n                didMutateByUpdated === DidMutate.Both:\r\n                return DidMutate.Both;\r\n            default:\r\n                return DidMutate.EntitiesOnly;\r\n        }\r\n    }\r\n    function merge(models, state) {\r\n        models.sort(sort);\r\n        var ids = [];\r\n        var i = 0;\r\n        var j = 0;\r\n        while (i < models.length && j < state.ids.length) {\r\n            var model = models[i];\r\n            var modelId = selectIdValue(model, selectId);\r\n            var entityId = state.ids[j];\r\n            var entity = state.entities[entityId];\r\n            if (sort(model, entity) <= 0) {\r\n                ids.push(modelId);\r\n                i++;\r\n            }\r\n            else {\r\n                ids.push(entityId);\r\n                j++;\r\n            }\r\n        }\r\n        if (i < models.length) {\r\n            state.ids = ids.concat(models.slice(i).map(selectId));\r\n        }\r\n        else {\r\n            state.ids = ids.concat(state.ids.slice(j));\r\n        }\r\n        models.forEach(function (model, i) {\r\n            state.entities[selectId(model)] = model;\r\n        });\r\n    }\r\n    return {\r\n        removeOne: removeOne,\r\n        removeMany: removeMany,\r\n        removeAll: removeAll,\r\n        addOne: createStateOperator(addOneMutably),\r\n        updateOne: createStateOperator(updateOneMutably),\r\n        upsertOne: createStateOperator(upsertOneMutably),\r\n        addAll: createStateOperator(addAllMutably),\r\n        addMany: createStateOperator(addManyMutably),\r\n        updateMany: createStateOperator(updateManyMutably),\r\n        upsertMany: createStateOperator(upsertManyMutably),\r\n        map: createStateOperator(mapMutably)\r\n    };\r\n}\n\nfunction createEntityAdapter(options) {\r\n    if (options === void 0) { options = {}; }\r\n    var _a = __assign({ sortComparer: false, selectId: function (instance) { return instance.id; } }, options), selectId = _a.selectId, sortComparer = _a.sortComparer;\r\n    var stateFactory = createInitialStateFactory();\r\n    var selectorsFactory = createSelectorsFactory();\r\n    var stateAdapter = sortComparer\r\n        ? createSortedStateAdapter(selectId, sortComparer)\r\n        : createUnsortedStateAdapter(selectId);\r\n    return __assign({ selectId: selectId,\r\n        sortComparer: sortComparer }, stateFactory, selectorsFactory, stateAdapter);\r\n}\n\nvar Dictionary = /** @class */ (function () {\r\n    function Dictionary() {\r\n    }\r\n    return Dictionary;\r\n}());\n\nexport { Dictionary, createEntityAdapter, createFeatureSelector, createSelector };\n","import {\n  Comparer,\n  createEntityAdapter,\n  EntityMap,\n  IdSelector,\n  Predicate,\n  Update,\n} from \"entity-state-adapter\";\n\nimport { createDefaultStore } from \"./createDefaultStore\";\n\nexport function createEntityStateStore<T>(options?: {\n  entities?: T[];\n  selectId?: IdSelector<T>;\n  sortComparer?: false | Comparer<T>;\n}) {\n  const adapter = createEntityAdapter<T>(options);\n  let initialState = adapter.getInitialState();\n  if (options?.entities?.length) {\n    initialState = adapter.addAll(options.entities, initialState);\n  }\n  return createDefaultStore(initialState, (set, get) => {\n    function removeOne(key: string): void;\n    function removeOne(key: number): void;\n    function removeOne(key: string | number): void {\n      set(adapter.removeOne(key as string, get()));\n    }\n    function removeMany(keys: string[]): void;\n    function removeMany(keys: number[]): void;\n    function removeMany(predicate: Predicate<T>): void;\n    function removeMany(keysOrPredicate: any) {\n      set(adapter.removeMany(keysOrPredicate, get()));\n    }\n    const { selectAll, selectEntities, selectIds, selectTotal } =\n      adapter.getSelectors();\n    return {\n      addOne: (entity: T) => {\n        set(adapter.addOne(entity, get()));\n      },\n      addMany: (entities: T[]) => {\n        set(adapter.addMany(entities, get()));\n      },\n      addAll: (entities: T[]) => {\n        set(adapter.addAll(entities, get()));\n      },\n      removeOne,\n      removeMany,\n      removeAll: () => {\n        set(adapter.removeAll(get()));\n      },\n      updateOne: (update: Update<T>) => {\n        set(adapter.updateOne(update, get()));\n      },\n      updateMany: (updates: Update<T>[]) => {\n        set(adapter.updateMany(updates, get()));\n      },\n      upsertOne: (entity: T) => {\n        set(adapter.upsertOne(entity, get()));\n      },\n      upsertMany: (entities: T[]) => {\n        set(adapter.upsertMany(entities, get()));\n      },\n      map: (mapFn: EntityMap<T>) => {\n        set(adapter.map(mapFn, get()));\n      },\n      // selectors\n      selectIds: () => selectIds(get()),\n      selectEntities: () => selectEntities(get()),\n      selectAll: () => selectAll(get()),\n      selectTotal: () => selectTotal(get()),\n      selectOne: (id: string | number) => selectEntities(get())[id],\n    };\n  });\n}\n","import {\n  createContext,\n  PropsWithChildren,\n  ReactNode,\n  useContext,\n  useMemo,\n  useState,\n} from \"react\";\nimport { type StoreApi, useStore as $useStore } from \"./exports\";\nimport { AnyObject, WithOptionalStore } from \"./typings\";\n\nexport function createStoreContext<S, P extends AnyObject = AnyObject>(\n  storeCreator: (props?: P) => StoreApi<S>\n) {\n  const StoreContext = createContext<StoreApi<S> | null>(null);\n\n  function StoreProvider(props: PropsWithChildren<WithOptionalStore<P, S>>) {\n    return (\n      <StoreContext.Provider\n        value={useMemo(() => props.store ?? storeCreator(props), [props.store])}\n      >\n        {props.children}\n      </StoreContext.Provider>\n    );\n  }\n\n  function useCreateStore(props?: P | (() => P)) {\n    const [store] = useState(() =>\n      storeCreator(typeof props === \"function\" ? props() : props)\n    );\n    return store;\n  }\n\n  function useStoreContext() {\n    return useContext(StoreContext);\n  }\n\n  function useStore<T>(selector: (state: S) => T, store?: StoreApi<S>) {\n    const storeContext = useStoreContext();\n    const storeToUse = store || storeContext;\n    if (!storeToUse) {\n      throw new Error(\n        \"You must provide a store or use `useStore` within a StoreProvider\"\n      );\n    }\n    return $useStore(storeToUse, selector);\n  }\n\n  function createStoreSelector<T>(selector: (state: S) => T) {\n    return selector;\n  }\n\n  function Subscribe<T>({\n    selector,\n    children,\n    store,\n  }: {\n    selector: (state: S) => T;\n    children: (value: T) => ReactNode;\n    store?: StoreApi<S>;\n  }) {\n    const value = useStore(selector, store);\n    return <>{children(value)}</>;\n  }\n\n  return {\n    StoreContext,\n    StoreProvider,\n    useCreateStore,\n    useStore,\n    createStoreSelector,\n    Subscribe,\n  };\n}\n","import { StateCreator, StoreApi } from \"./exports\";\nimport { AnyObject, InferStoreState } from \"./typings\";\n\nexport function extend<\n  Store extends StoreApi<any>,\n  S extends AnyObject = AnyObject,\n  A extends AnyObject = AnyObject\n>(\n  store: Store,\n  extension: {\n    state: S;\n    actions?: StateCreator<S, [], [], A>;\n  }\n) {\n  store.setState({\n    ...extension.state,\n    ...extension.actions?.(store.setState, store.getState, store),\n  });\n  return {\n    ...store,\n    getInitialState: () => ({\n      ...store.getInitialState(),\n      ...extension.state,\n    }),\n  } as StoreApi<InferStoreState<Store> & S & A>;\n}\n","import { StoreApi } from \"./exports\";\nimport { InferStoreState } from \"./typings\";\n\nexport function select<S extends StoreApi<any>, T>(\n  store: S,\n  selector: (state: InferStoreState<S>) => T\n): T {\n  return selector(store.getState());\n}\n"],"mappings":"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","names":["useState","useDebugValue","useState","useDebugValue","useMemo","useDebugValue","useMemo","useDebugValue","import_meta","useSyncExternalStoreExports","create","import_with_selector","ReactExports","useDebugValue","ReactExports","useSyncExternalStoreWithSelector","useSyncExternalStoreExports","identity","__assign","selectors","_i","DidMutate","changes","model","i","useStore"]}