{"version":3,"sources":["webpack://@lemon8/webapp-seo/./node_modules/.pnpm/jotai@2.3.1_@types+react@18.2.16_react@18.2.0/node_modules/jotai/index.js","webpack://@lemon8/webapp-seo/./node_modules/.pnpm/jotai@2.3.1_@types+react@18.2.16_react@18.2.0/node_modules/jotai/react.js","webpack://@lemon8/webapp-seo/./node_modules/.pnpm/jotai@2.3.1_@types+react@18.2.16_react@18.2.0/node_modules/jotai/react/utils.js","webpack://@lemon8/webapp-seo/./node_modules/.pnpm/jotai@2.3.1_@types+react@18.2.16_react@18.2.0/node_modules/jotai/utils.js","webpack://@lemon8/webapp-seo/./node_modules/.pnpm/jotai@2.3.1_@types+react@18.2.16_react@18.2.0/node_modules/jotai/vanilla.js","webpack://@lemon8/webapp-seo/./node_modules/.pnpm/jotai@2.3.1_@types+react@18.2.16_react@18.2.0/node_modules/jotai/vanilla/utils.js"],"names":["vanilla","react","k","exports","ReactExports","StoreContext","useStore","options","store","Provider","_ref","children","storeRef","isPromiseLike","x","use","promise","v","e","useAtomValue","atom","_useReducer","prev","nextValue","_useReducer$","valueFromReducer","storeFromReducer","atomFromReducer","rerender","value","delay","unsub","useSetAtom","setAtom","_len","args","_key","useAtom","react$1","utils","useResetAtom","anAtom","resetAtom","useReducerAtom","reducer","_useAtom","state","setState","dispatch","action","useAtomCallback","callback","get","set","_unsupportedIterableToArray","o","minLen","_arrayLikeToArray","n","arr","len","i","arr2","_createForOfIteratorHelperLoose","allowArrayLike","it","hydratedMap","useHydrateAtoms","values","hydratedSet","getHydratedSet","_iterator","_step","_step$value","utils$1","keyCount","read","write","key","config","arg","hasInitialValue","isActuallyWritableAtom","cancelPromiseMap","registerCancelPromise","cancel","cancelPromise","next","resolvePromise","rejectPromise","isEqualAtomValue","a","b","isEqualAtomError","hasPromiseAtomValue","isEqualPromiseAtomValue","returnAtomValue","atomState","createStore","atomStateMap","mountedMap","pendingMap","storeListenersRev2","mountedAtoms","getAtomState","setAtomState","prevAtomState","_next","updateDependencies","nextAtomState","nextDependencies","dependencies","changed","aState","setAtomValue","setAtomValueOrPromise","valueOrPromise","abortPromise","continuePromise","resolve","reject","settled","mountDependencies","setAtomError","error","readAtomState","force","s","isSync","getter","_aState","controller","setSelf","writeAtom","_controller","readAtom","addAtom","mounted","mountAtom","canUnmountAtom","delAtom","unmountAtom","recomputeDependents","dependencyMap","dirtyMap","loop1","dependent","loop2","dirtyCount","_dependencyMap$get","isChanged","writeAtomState","setter","r","_len3","_key3","flushed","flushPending","_len2","_key2","result","_len4","_key4","initialDependent","_getAtomState","_","aMounted","onUnmount","_len5","_key5","_mountedMap$get","prevDependencies","depSet","pending","_ref2","listener","subscribeAtom","listeners","defaultStore","getDefaultStore","RESET","atomWithReset","initialValue","update","atomWithReducer","atomFamily","initializeAtom","areEqual","shouldRemove","atoms","createAtom","param","item","newAtom","_iterator2","_step2","_step2$value","fn","_iterator3","_step3","_step3$value","getCached$2","c","m","cache1$4","memo3","create","dep1","dep2","dep3","cache2","cache3","selectAtom","selector","equalityFn","EMPTY","selectValue","prevSlice","slice","derivedAtom","cache1$3","memo1$1","deepFreeze","obj","propNames","name","freezeAtom","frozenAtom","_get","freezeAtomCreator","origRead","getCached$1","cache1$2","memo2$1","cacheKeyForEmptyKeyExtractor","isWritable","isFunction","splitAtom","arrAtom","keyExtractor","mappingCache","getMapping","mapping","prevMapping","atomList","keyList","index","cachedAtom","mappingAtom","currArr","prevItem","nextItem","splittedAtom","_index","_arr","index1","index2","_arr2","atomWithDefault","getDefault","overwrittenAtom","overwritten","prevValue","createJSONStorage","getStringStorage","lastStr","lastValue","storage","_getStringStorage$get","_getStringStorage","parse","str","_unused","newValue","_getStringStorage2","_getStringStorage3","storageEventCallback","_newValue","_unused2","defaultStorage","atomWithStorage","unstable_options","getOnInit","baseAtom","resolvedValue","atomWithObservable","getObservable","returnResultData","observableResultAtom","_observable$Symbol$ob","_observable","observable","itself","makePending","initialResult","setResult","lastResult","subscription","timer","isNotMounted","start","d","resultAtom","observableAtom","data","_get2","cache1$1","memo1","LOADING","loadable","loadableCache","refreshAtom","cached","getCached","cache1","memo2","defaultFallback","unwrap","fallback","promiseErrorCache","promiseResultCache","promiseAndValueAtom"],"mappings":"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","file":"791-7d20b5d60d889265bdd0.js","sourcesContent":["'use strict';\n\nvar vanilla = require('jotai/vanilla');\nvar react = require('jotai/react');\n\n\n\nObject.keys(vanilla).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return vanilla[k]; }\n\t});\n});\nObject.keys(react).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return react[k]; }\n\t});\n});\n","'use strict';\n\nvar ReactExports = require('react');\nvar vanilla = require('jotai/vanilla');\n\nvar StoreContext = ReactExports.createContext(undefined);\nvar useStore = function useStore(options) {\n var store = ReactExports.useContext(StoreContext);\n return (options == null ? void 0 : options.store) || store || vanilla.getDefaultStore();\n};\nvar Provider = function Provider(_ref) {\n var children = _ref.children,\n store = _ref.store;\n var storeRef = ReactExports.useRef();\n if (!store && !storeRef.current) {\n storeRef.current = vanilla.createStore();\n }\n return ReactExports.createElement(StoreContext.Provider, {\n value: store || storeRef.current\n }, children);\n};\n\nvar isPromiseLike = function isPromiseLike(x) {\n return typeof (x == null ? void 0 : x.then) === 'function';\n};\nvar use = ReactExports.use || function (promise) {\n if (promise.status === 'pending') {\n throw promise;\n } else if (promise.status === 'fulfilled') {\n return promise.value;\n } else if (promise.status === 'rejected') {\n throw promise.reason;\n } else {\n promise.status = 'pending';\n promise.then(function (v) {\n promise.status = 'fulfilled';\n promise.value = v;\n }, function (e) {\n promise.status = 'rejected';\n promise.reason = e;\n });\n throw promise;\n }\n};\nfunction useAtomValue(atom, options) {\n var store = useStore(options);\n var _useReducer = ReactExports.useReducer(function (prev) {\n var nextValue = store.get(atom);\n if (Object.is(prev[0], nextValue) && prev[1] === store && prev[2] === atom) {\n return prev;\n }\n return [nextValue, store, atom];\n }, undefined, function () {\n return [store.get(atom), store, atom];\n }),\n _useReducer$ = _useReducer[0],\n valueFromReducer = _useReducer$[0],\n storeFromReducer = _useReducer$[1],\n atomFromReducer = _useReducer$[2],\n rerender = _useReducer[1];\n var value = valueFromReducer;\n if (storeFromReducer !== store || atomFromReducer !== atom) {\n rerender();\n value = store.get(atom);\n }\n var delay = options == null ? void 0 : options.delay;\n ReactExports.useEffect(function () {\n var unsub = store.sub(atom, function () {\n if (typeof delay === 'number') {\n setTimeout(rerender, delay);\n return;\n }\n rerender();\n });\n rerender();\n return unsub;\n }, [store, atom, delay]);\n ReactExports.useDebugValue(value);\n return isPromiseLike(value) ? use(value) : value;\n}\n\nfunction useSetAtom(atom, options) {\n var store = useStore(options);\n var setAtom = ReactExports.useCallback(function () {\n if (process.env.NODE_ENV !== 'production' && !('write' in atom)) {\n throw new Error('not writable atom');\n }\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return store.set.apply(store, [atom].concat(args));\n }, [store, atom]);\n return setAtom;\n}\n\nfunction useAtom(atom, options) {\n return [useAtomValue(atom, options), useSetAtom(atom, options)];\n}\n\nexports.Provider = Provider;\nexports.useAtom = useAtom;\nexports.useAtomValue = useAtomValue;\nexports.useSetAtom = useSetAtom;\nexports.useStore = useStore;\n","'use strict';\n\nvar react$1 = require('react');\nvar react = require('jotai/react');\nvar utils = require('jotai/vanilla/utils');\nvar vanilla = require('jotai/vanilla');\n\nfunction useResetAtom(anAtom, options) {\n var setAtom = react.useSetAtom(anAtom, options);\n var resetAtom = react$1.useCallback(function () {\n return setAtom(utils.RESET);\n }, [setAtom]);\n return resetAtom;\n}\n\nfunction useReducerAtom(anAtom, reducer, options) {\n var _useAtom = react.useAtom(anAtom, options),\n state = _useAtom[0],\n setState = _useAtom[1];\n var dispatch = react$1.useCallback(function (action) {\n setState(function (prev) {\n return reducer(prev, action);\n });\n }, [setState, reducer]);\n return [state, dispatch];\n}\n\nfunction useAtomCallback(callback, options) {\n var anAtom = react$1.useMemo(function () {\n return vanilla.atom(null, function (get, set) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n return callback.apply(void 0, [get, set].concat(args));\n });\n }, [callback]);\n return react.useSetAtom(anAtom, options);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar hydratedMap = new WeakMap();\nfunction useHydrateAtoms(values, options) {\n var store = react.useStore(options);\n var hydratedSet = getHydratedSet(store);\n for (var _iterator = _createForOfIteratorHelperLoose(values), _step; !(_step = _iterator()).done;) {\n var _step$value = _step.value,\n atom = _step$value[0],\n value = _step$value[1];\n if (!hydratedSet.has(atom) || options != null && options.dangerouslyForceHydrate) {\n hydratedSet.add(atom);\n store.set(atom, value);\n }\n }\n}\nvar getHydratedSet = function getHydratedSet(store) {\n var hydratedSet = hydratedMap.get(store);\n if (!hydratedSet) {\n hydratedSet = new WeakSet();\n hydratedMap.set(store, hydratedSet);\n }\n return hydratedSet;\n};\n\nexports.useAtomCallback = useAtomCallback;\nexports.useHydrateAtoms = useHydrateAtoms;\nexports.useReducerAtom = useReducerAtom;\nexports.useResetAtom = useResetAtom;\n","'use strict';\n\nvar utils = require('jotai/vanilla/utils');\nvar utils$1 = require('jotai/react/utils');\n\n\n\nObject.keys(utils).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return utils[k]; }\n\t});\n});\nObject.keys(utils$1).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return utils$1[k]; }\n\t});\n});\n","'use strict';\n\nvar keyCount = 0;\nfunction atom(read, write) {\n var key = \"atom\" + ++keyCount;\n var config = {\n toString: function toString() {\n return key;\n }\n };\n if (typeof read === 'function') {\n config.read = read;\n } else {\n config.init = read;\n config.read = function (get) {\n return get(config);\n };\n config.write = function (get, set, arg) {\n return set(config, typeof arg === 'function' ? arg(get(config)) : arg);\n };\n }\n if (write) {\n config.write = write;\n }\n return config;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar hasInitialValue = function hasInitialValue(atom) {\n return 'init' in atom;\n};\nvar isActuallyWritableAtom = function isActuallyWritableAtom(atom) {\n return !!atom.write;\n};\nvar cancelPromiseMap = new WeakMap();\nvar registerCancelPromise = function registerCancelPromise(promise, cancel) {\n cancelPromiseMap.set(promise, cancel);\n promise.catch(function () {}).finally(function () {\n return cancelPromiseMap.delete(promise);\n });\n};\nvar cancelPromise = function cancelPromise(promise, next) {\n var cancel = cancelPromiseMap.get(promise);\n if (cancel) {\n cancelPromiseMap.delete(promise);\n cancel(next);\n }\n};\nvar resolvePromise = function resolvePromise(promise, value) {\n promise.status = 'fulfilled';\n promise.value = value;\n};\nvar rejectPromise = function rejectPromise(promise, e) {\n promise.status = 'rejected';\n promise.reason = e;\n};\nvar isPromiseLike = function isPromiseLike(x) {\n return typeof (x == null ? void 0 : x.then) === 'function';\n};\nvar isEqualAtomValue = function isEqualAtomValue(a, b) {\n return 'v' in a && 'v' in b && Object.is(a.v, b.v);\n};\nvar isEqualAtomError = function isEqualAtomError(a, b) {\n return 'e' in a && 'e' in b && Object.is(a.e, b.e);\n};\nvar hasPromiseAtomValue = function hasPromiseAtomValue(a) {\n return 'v' in a && a.v instanceof Promise;\n};\nvar isEqualPromiseAtomValue = function isEqualPromiseAtomValue(a, b) {\n return 'v' in a && 'v' in b && a.v.orig && a.v.orig === b.v.orig;\n};\nvar returnAtomValue = function returnAtomValue(atomState) {\n if ('e' in atomState) {\n throw atomState.e;\n }\n return atomState.v;\n};\nvar createStore = function createStore() {\n var atomStateMap = new WeakMap();\n var mountedMap = new WeakMap();\n var pendingMap = new Map();\n var storeListenersRev2;\n var mountedAtoms;\n if (process.env.NODE_ENV !== 'production') {\n storeListenersRev2 = new Set();\n mountedAtoms = new Set();\n }\n var getAtomState = function getAtomState(atom) {\n return atomStateMap.get(atom);\n };\n var setAtomState = function setAtomState(atom, atomState) {\n if (process.env.NODE_ENV !== 'production') {\n Object.freeze(atomState);\n }\n var prevAtomState = atomStateMap.get(atom);\n atomStateMap.set(atom, atomState);\n if (!pendingMap.has(atom)) {\n pendingMap.set(atom, prevAtomState);\n }\n if (prevAtomState && hasPromiseAtomValue(prevAtomState)) {\n var _next = 'v' in atomState ? atomState.v instanceof Promise ? atomState.v : Promise.resolve(atomState.v) : Promise.reject(atomState.e);\n cancelPromise(prevAtomState.v, _next);\n }\n };\n var updateDependencies = function updateDependencies(atom, nextAtomState, nextDependencies) {\n var dependencies = new Map();\n var changed = false;\n nextDependencies.forEach(function (aState, a) {\n if (!aState && a === atom) {\n aState = nextAtomState;\n }\n if (aState) {\n dependencies.set(a, aState);\n if (nextAtomState.d.get(a) !== aState) {\n changed = true;\n }\n } else if (process.env.NODE_ENV !== 'production') {\n console.warn('[Bug] atom state not found');\n }\n });\n if (changed || nextAtomState.d.size !== dependencies.size) {\n nextAtomState.d = dependencies;\n }\n };\n var setAtomValue = function setAtomValue(atom, value, nextDependencies) {\n var prevAtomState = getAtomState(atom);\n var nextAtomState = {\n d: (prevAtomState == null ? void 0 : prevAtomState.d) || new Map(),\n v: value\n };\n if (nextDependencies) {\n updateDependencies(atom, nextAtomState, nextDependencies);\n }\n if (prevAtomState && isEqualAtomValue(prevAtomState, nextAtomState) && prevAtomState.d === nextAtomState.d) {\n return prevAtomState;\n }\n if (prevAtomState && hasPromiseAtomValue(prevAtomState) && hasPromiseAtomValue(nextAtomState) && isEqualPromiseAtomValue(prevAtomState, nextAtomState)) {\n if (prevAtomState.d === nextAtomState.d) {\n return prevAtomState;\n } else {\n nextAtomState.v = prevAtomState.v;\n }\n }\n setAtomState(atom, nextAtomState);\n return nextAtomState;\n };\n var setAtomValueOrPromise = function setAtomValueOrPromise(atom, valueOrPromise, nextDependencies, abortPromise) {\n if (isPromiseLike(valueOrPromise)) {\n var continuePromise;\n var promise = new Promise(function (resolve, reject) {\n var settled = false;\n valueOrPromise.then(function (v) {\n if (!settled) {\n settled = true;\n var prevAtomState = getAtomState(atom);\n var nextAtomState = setAtomValue(atom, promise, nextDependencies);\n resolvePromise(promise, v);\n resolve(v);\n if ((prevAtomState == null ? void 0 : prevAtomState.d) !== nextAtomState.d) {\n mountDependencies(atom, nextAtomState, prevAtomState == null ? void 0 : prevAtomState.d);\n }\n }\n }, function (e) {\n if (!settled) {\n settled = true;\n var prevAtomState = getAtomState(atom);\n var nextAtomState = setAtomValue(atom, promise, nextDependencies);\n rejectPromise(promise, e);\n reject(e);\n if ((prevAtomState == null ? void 0 : prevAtomState.d) !== nextAtomState.d) {\n mountDependencies(atom, nextAtomState, prevAtomState == null ? void 0 : prevAtomState.d);\n }\n }\n });\n continuePromise = function continuePromise(next) {\n if (!settled) {\n settled = true;\n next.then(function (v) {\n return resolvePromise(promise, v);\n }, function (e) {\n return rejectPromise(promise, e);\n });\n resolve(next);\n }\n };\n });\n promise.orig = valueOrPromise;\n promise.status = 'pending';\n registerCancelPromise(promise, function (next) {\n if (next) {\n continuePromise(next);\n }\n abortPromise == null ? void 0 : abortPromise();\n });\n return setAtomValue(atom, promise, nextDependencies);\n }\n return setAtomValue(atom, valueOrPromise, nextDependencies);\n };\n var setAtomError = function setAtomError(atom, error, nextDependencies) {\n var prevAtomState = getAtomState(atom);\n var nextAtomState = {\n d: (prevAtomState == null ? void 0 : prevAtomState.d) || new Map(),\n e: error\n };\n if (nextDependencies) {\n updateDependencies(atom, nextAtomState, nextDependencies);\n }\n if (prevAtomState && isEqualAtomError(prevAtomState, nextAtomState) && prevAtomState.d === nextAtomState.d) {\n return prevAtomState;\n }\n setAtomState(atom, nextAtomState);\n return nextAtomState;\n };\n var readAtomState = function readAtomState(atom, force) {\n var atomState = getAtomState(atom);\n if (!force && atomState) {\n if (mountedMap.has(atom)) {\n return atomState;\n }\n if (Array.from(atomState.d).every(function (_ref) {\n var a = _ref[0],\n s = _ref[1];\n return a === atom || readAtomState(a) === s;\n })) {\n return atomState;\n }\n }\n var nextDependencies = new Map();\n var isSync = true;\n var getter = function getter(a) {\n if (a === atom) {\n var _aState = getAtomState(a);\n if (_aState) {\n nextDependencies.set(a, _aState);\n return returnAtomValue(_aState);\n }\n if (hasInitialValue(a)) {\n nextDependencies.set(a, undefined);\n return a.init;\n }\n throw new Error('no atom init');\n }\n var aState = readAtomState(a);\n nextDependencies.set(a, aState);\n return returnAtomValue(aState);\n };\n var controller;\n var setSelf;\n var options = {\n get signal() {\n if (!controller) {\n controller = new AbortController();\n }\n return controller.signal;\n },\n get setSelf() {\n if (process.env.NODE_ENV !== 'production' && !isActuallyWritableAtom(atom)) {\n console.warn('setSelf function cannot be used with read-only atom');\n }\n if (!setSelf && isActuallyWritableAtom(atom)) {\n setSelf = function setSelf() {\n if (process.env.NODE_ENV !== 'production' && isSync) {\n console.warn('setSelf function cannot be called in sync');\n }\n if (!isSync) {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return writeAtom.apply(void 0, [atom].concat(args));\n }\n };\n }\n return setSelf;\n }\n };\n try {\n var valueOrPromise = atom.read(getter, options);\n return setAtomValueOrPromise(atom, valueOrPromise, nextDependencies, function () {\n var _controller;\n return (_controller = controller) == null ? void 0 : _controller.abort();\n });\n } catch (error) {\n return setAtomError(atom, error, nextDependencies);\n } finally {\n isSync = false;\n }\n };\n var readAtom = function readAtom(atom) {\n return returnAtomValue(readAtomState(atom));\n };\n var addAtom = function addAtom(atom) {\n var mounted = mountedMap.get(atom);\n if (!mounted) {\n mounted = mountAtom(atom);\n }\n return mounted;\n };\n var canUnmountAtom = function canUnmountAtom(atom, mounted) {\n return !mounted.l.size && (!mounted.t.size || mounted.t.size === 1 && mounted.t.has(atom));\n };\n var delAtom = function delAtom(atom) {\n var mounted = mountedMap.get(atom);\n if (mounted && canUnmountAtom(atom, mounted)) {\n unmountAtom(atom);\n }\n };\n var recomputeDependents = function recomputeDependents(atom) {\n var dependencyMap = new Map();\n var dirtyMap = new WeakMap();\n var loop1 = function loop1(a) {\n var mounted = mountedMap.get(a);\n mounted == null ? void 0 : mounted.t.forEach(function (dependent) {\n if (dependent !== a) {\n dependencyMap.set(dependent, (dependencyMap.get(dependent) || new Set()).add(a));\n dirtyMap.set(dependent, (dirtyMap.get(dependent) || 0) + 1);\n loop1(dependent);\n }\n });\n };\n loop1(atom);\n var loop2 = function loop2(a) {\n var mounted = mountedMap.get(a);\n mounted == null ? void 0 : mounted.t.forEach(function (dependent) {\n if (dependent !== a) {\n var dirtyCount = dirtyMap.get(dependent);\n if (dirtyCount) {\n dirtyMap.set(dependent, --dirtyCount);\n }\n if (!dirtyCount) {\n var _dependencyMap$get;\n var isChanged = !!((_dependencyMap$get = dependencyMap.get(dependent)) != null && _dependencyMap$get.size);\n if (isChanged) {\n var prevAtomState = getAtomState(dependent);\n var nextAtomState = readAtomState(dependent, true);\n isChanged = !prevAtomState || !isEqualAtomValue(prevAtomState, nextAtomState);\n }\n if (!isChanged) {\n dependencyMap.forEach(function (s) {\n return s.delete(dependent);\n });\n }\n }\n loop2(dependent);\n }\n });\n };\n loop2(atom);\n };\n var writeAtomState = function writeAtomState(atom) {\n var isSync = true;\n var getter = function getter(a) {\n return returnAtomValue(readAtomState(a));\n };\n var setter = function setter(a) {\n var r;\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n if (a === atom) {\n if (!hasInitialValue(a)) {\n throw new Error('atom not writable');\n }\n var prevAtomState = getAtomState(a);\n var nextAtomState = setAtomValueOrPromise(a, args[0]);\n if (!prevAtomState || !isEqualAtomValue(prevAtomState, nextAtomState)) {\n recomputeDependents(a);\n }\n } else {\n r = writeAtomState.apply(void 0, [a].concat(args));\n }\n if (!isSync) {\n var flushed = flushPending();\n if (process.env.NODE_ENV !== 'production') {\n storeListenersRev2.forEach(function (l) {\n return l({\n type: 'async-write',\n flushed: flushed\n });\n });\n }\n }\n return r;\n };\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n var result = atom.write.apply(atom, [getter, setter].concat(args));\n isSync = false;\n return result;\n };\n var writeAtom = function writeAtom(atom) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n var result = writeAtomState.apply(void 0, [atom].concat(args));\n var flushed = flushPending();\n if (process.env.NODE_ENV !== 'production') {\n storeListenersRev2.forEach(function (l) {\n return l({\n type: 'write',\n flushed: flushed\n });\n });\n }\n return result;\n };\n var mountAtom = function mountAtom(atom, initialDependent) {\n var _getAtomState;\n (_getAtomState = getAtomState(atom)) == null ? void 0 : _getAtomState.d.forEach(function (_, a) {\n var aMounted = mountedMap.get(a);\n if (aMounted) {\n aMounted.t.add(atom);\n } else {\n if (a !== atom) {\n mountAtom(a, atom);\n }\n }\n });\n readAtomState(atom);\n var mounted = {\n t: new Set(initialDependent && [initialDependent]),\n l: new Set()\n };\n mountedMap.set(atom, mounted);\n if (process.env.NODE_ENV !== 'production') {\n mountedAtoms.add(atom);\n }\n if (isActuallyWritableAtom(atom) && atom.onMount) {\n var onUnmount = atom.onMount(function () {\n for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n return writeAtom.apply(void 0, [atom].concat(args));\n });\n if (onUnmount) {\n mounted.u = onUnmount;\n }\n }\n return mounted;\n };\n var unmountAtom = function unmountAtom(atom) {\n var _mountedMap$get;\n var onUnmount = (_mountedMap$get = mountedMap.get(atom)) == null ? void 0 : _mountedMap$get.u;\n if (onUnmount) {\n onUnmount();\n }\n mountedMap.delete(atom);\n if (process.env.NODE_ENV !== 'production') {\n mountedAtoms.delete(atom);\n }\n var atomState = getAtomState(atom);\n if (atomState) {\n if (hasPromiseAtomValue(atomState)) {\n cancelPromise(atomState.v);\n }\n atomState.d.forEach(function (_, a) {\n if (a !== atom) {\n var mounted = mountedMap.get(a);\n if (mounted) {\n mounted.t.delete(atom);\n if (canUnmountAtom(a, mounted)) {\n unmountAtom(a);\n }\n }\n }\n });\n } else if (process.env.NODE_ENV !== 'production') {\n console.warn('[Bug] could not find atom state to unmount', atom);\n }\n };\n var mountDependencies = function mountDependencies(atom, atomState, prevDependencies) {\n var depSet = new Set(atomState.d.keys());\n prevDependencies == null ? void 0 : prevDependencies.forEach(function (_, a) {\n if (depSet.has(a)) {\n depSet.delete(a);\n return;\n }\n var mounted = mountedMap.get(a);\n if (mounted) {\n mounted.t.delete(atom);\n if (canUnmountAtom(a, mounted)) {\n unmountAtom(a);\n }\n }\n });\n depSet.forEach(function (a) {\n var mounted = mountedMap.get(a);\n if (mounted) {\n mounted.t.add(atom);\n } else if (mountedMap.has(atom)) {\n mountAtom(a, atom);\n }\n });\n };\n var flushPending = function flushPending() {\n var flushed;\n if (process.env.NODE_ENV !== 'production') {\n flushed = new Set();\n }\n while (pendingMap.size) {\n var pending = Array.from(pendingMap);\n pendingMap.clear();\n pending.forEach(function (_ref2) {\n var atom = _ref2[0],\n prevAtomState = _ref2[1];\n var atomState = getAtomState(atom);\n if (atomState) {\n if (atomState.d !== (prevAtomState == null ? void 0 : prevAtomState.d)) {\n mountDependencies(atom, atomState, prevAtomState == null ? void 0 : prevAtomState.d);\n }\n var mounted = mountedMap.get(atom);\n if (mounted && !(prevAtomState && !hasPromiseAtomValue(prevAtomState) && (isEqualAtomValue(prevAtomState, atomState) || isEqualAtomError(prevAtomState, atomState)))) {\n mounted.l.forEach(function (listener) {\n return listener();\n });\n if (process.env.NODE_ENV !== 'production') {\n flushed.add(atom);\n }\n }\n } else if (process.env.NODE_ENV !== 'production') {\n console.warn('[Bug] no atom state to flush');\n }\n });\n }\n if (process.env.NODE_ENV !== 'production') {\n return flushed;\n }\n };\n var subscribeAtom = function subscribeAtom(atom, listener) {\n var mounted = addAtom(atom);\n var flushed = flushPending();\n var listeners = mounted.l;\n listeners.add(listener);\n if (process.env.NODE_ENV !== 'production') {\n storeListenersRev2.forEach(function (l) {\n return l({\n type: 'sub',\n flushed: flushed\n });\n });\n }\n return function () {\n listeners.delete(listener);\n delAtom(atom);\n if (process.env.NODE_ENV !== 'production') {\n storeListenersRev2.forEach(function (l) {\n return l({\n type: 'unsub'\n });\n });\n }\n };\n };\n if (process.env.NODE_ENV !== 'production') {\n return {\n get: readAtom,\n set: writeAtom,\n sub: subscribeAtom,\n dev_subscribe_store: function dev_subscribe_store(l, rev) {\n if (rev !== 2) {\n throw new Error('The current StoreListener revision is 2.');\n }\n storeListenersRev2.add(l);\n return function () {\n storeListenersRev2.delete(l);\n };\n },\n dev_get_mounted_atoms: function dev_get_mounted_atoms() {\n return mountedAtoms.values();\n },\n dev_get_atom_state: function dev_get_atom_state(a) {\n return atomStateMap.get(a);\n },\n dev_get_mounted: function dev_get_mounted(a) {\n return mountedMap.get(a);\n },\n dev_restore_atoms: function dev_restore_atoms(values) {\n for (var _iterator = _createForOfIteratorHelperLoose(values), _step; !(_step = _iterator()).done;) {\n var _step$value = _step.value,\n atom = _step$value[0],\n valueOrPromise = _step$value[1];\n if (hasInitialValue(atom)) {\n setAtomValueOrPromise(atom, valueOrPromise);\n recomputeDependents(atom);\n }\n }\n var flushed = flushPending();\n storeListenersRev2.forEach(function (l) {\n return l({\n type: 'restore',\n flushed: flushed\n });\n });\n }\n };\n }\n return {\n get: readAtom,\n set: writeAtom,\n sub: subscribeAtom\n };\n};\nvar defaultStore;\nif (process.env.NODE_ENV !== 'production') {\n if (typeof globalThis.__NUMBER_OF_JOTAI_INSTANCES__ === 'number') {\n ++globalThis.__NUMBER_OF_JOTAI_INSTANCES__;\n } else {\n globalThis.__NUMBER_OF_JOTAI_INSTANCES__ = 1;\n }\n}\nvar getDefaultStore = function getDefaultStore() {\n if (!defaultStore) {\n if (process.env.NODE_ENV !== 'production' && globalThis.__NUMBER_OF_JOTAI_INSTANCES__ !== 1) {\n console.warn('Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044');\n }\n defaultStore = createStore();\n }\n return defaultStore;\n};\n\nexports.atom = atom;\nexports.createStore = createStore;\nexports.getDefaultStore = getDefaultStore;\n","'use strict';\n\nvar vanilla = require('jotai/vanilla');\n\nvar RESET = Symbol();\n\nfunction atomWithReset(initialValue) {\n var anAtom = vanilla.atom(initialValue, function (get, set, update) {\n var nextValue = typeof update === 'function' ? update(get(anAtom)) : update;\n set(anAtom, nextValue === RESET ? initialValue : nextValue);\n });\n return anAtom;\n}\n\nfunction atomWithReducer(initialValue, reducer) {\n var anAtom = vanilla.atom(initialValue, function (get, set, action) {\n return set(anAtom, reducer(get(anAtom), action));\n });\n return anAtom;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction atomFamily(initializeAtom, areEqual) {\n var shouldRemove = null;\n var atoms = new Map();\n var createAtom = function createAtom(param) {\n var item;\n if (areEqual === undefined) {\n item = atoms.get(param);\n } else {\n for (var _iterator = _createForOfIteratorHelperLoose(atoms), _step; !(_step = _iterator()).done;) {\n var _step$value = _step.value,\n key = _step$value[0],\n value = _step$value[1];\n if (areEqual(key, param)) {\n item = value;\n break;\n }\n }\n }\n if (item !== undefined) {\n if (shouldRemove != null && shouldRemove(item[1], param)) {\n createAtom.remove(param);\n } else {\n return item[0];\n }\n }\n var newAtom = initializeAtom(param);\n atoms.set(param, [newAtom, Date.now()]);\n return newAtom;\n };\n createAtom.remove = function (param) {\n if (areEqual === undefined) {\n atoms.delete(param);\n } else {\n for (var _iterator2 = _createForOfIteratorHelperLoose(atoms), _step2; !(_step2 = _iterator2()).done;) {\n var _step2$value = _step2.value,\n key = _step2$value[0];\n if (areEqual(key, param)) {\n atoms.delete(key);\n break;\n }\n }\n }\n };\n createAtom.setShouldRemove = function (fn) {\n shouldRemove = fn;\n if (!shouldRemove) return;\n for (var _iterator3 = _createForOfIteratorHelperLoose(atoms), _step3; !(_step3 = _iterator3()).done;) {\n var _step3$value = _step3.value,\n key = _step3$value[0],\n value = _step3$value[1];\n if (shouldRemove(value[1], key)) {\n atoms.delete(key);\n }\n }\n };\n return createAtom;\n}\n\nvar getCached$2 = function getCached(c, m, k) {\n return (m.has(k) ? m : m.set(k, c())).get(k);\n};\nvar cache1$4 = new WeakMap();\nvar memo3 = function memo3(create, dep1, dep2, dep3) {\n var cache2 = getCached$2(function () {\n return new WeakMap();\n }, cache1$4, dep1);\n var cache3 = getCached$2(function () {\n return new WeakMap();\n }, cache2, dep2);\n return getCached$2(create, cache3, dep3);\n};\nfunction selectAtom(anAtom, selector, equalityFn) {\n if (equalityFn === void 0) {\n equalityFn = Object.is;\n }\n return memo3(function () {\n var EMPTY = Symbol();\n var selectValue = function selectValue(_ref) {\n var value = _ref[0],\n prevSlice = _ref[1];\n if (prevSlice === EMPTY) {\n return selector(value);\n }\n var slice = selector(value, prevSlice);\n return equalityFn(prevSlice, slice) ? prevSlice : slice;\n };\n var derivedAtom = vanilla.atom(function (get) {\n var prev = get(derivedAtom);\n var value = get(anAtom);\n if (value instanceof Promise || prev instanceof Promise) {\n return Promise.all([value, prev]).then(selectValue);\n }\n return selectValue([value, prev]);\n });\n derivedAtom.init = EMPTY;\n return derivedAtom;\n }, anAtom, selector, equalityFn);\n}\n\nvar cache1$3 = new WeakMap();\nvar memo1$1 = function memo1(create, dep1) {\n return (cache1$3.has(dep1) ? cache1$3 : cache1$3.set(dep1, create())).get(dep1);\n};\nvar deepFreeze = function deepFreeze(obj) {\n if (typeof obj !== 'object' || obj === null) return;\n Object.freeze(obj);\n var propNames = Object.getOwnPropertyNames(obj);\n for (var _iterator = _createForOfIteratorHelperLoose(propNames), _step; !(_step = _iterator()).done;) {\n var name = _step.value;\n var value = obj[name];\n deepFreeze(value);\n }\n return obj;\n};\nfunction freezeAtom(anAtom) {\n return memo1$1(function () {\n var frozenAtom = vanilla.atom(function (get) {\n return deepFreeze(get(anAtom));\n }, function (_get, set, arg) {\n return set(anAtom, arg);\n });\n return frozenAtom;\n }, anAtom);\n}\nfunction freezeAtomCreator(createAtom) {\n return function () {\n var anAtom = createAtom.apply(void 0, arguments);\n var origRead = anAtom.read;\n anAtom.read = function (get, options) {\n return deepFreeze(origRead(get, options));\n };\n return anAtom;\n };\n}\n\nvar getCached$1 = function getCached(c, m, k) {\n return (m.has(k) ? m : m.set(k, c())).get(k);\n};\nvar cache1$2 = new WeakMap();\nvar memo2$1 = function memo2(create, dep1, dep2) {\n var cache2 = getCached$1(function () {\n return new WeakMap();\n }, cache1$2, dep1);\n return getCached$1(create, cache2, dep2);\n};\nvar cacheKeyForEmptyKeyExtractor = {};\nvar isWritable = function isWritable(atom) {\n return !!atom.write;\n};\nvar isFunction = function isFunction(x) {\n return typeof x === 'function';\n};\nfunction splitAtom(arrAtom, keyExtractor) {\n return memo2$1(function () {\n var mappingCache = new WeakMap();\n var getMapping = function getMapping(arr, prev) {\n var mapping = mappingCache.get(arr);\n if (mapping) {\n return mapping;\n }\n var prevMapping = prev && mappingCache.get(prev);\n var atomList = [];\n var keyList = [];\n arr.forEach(function (item, index) {\n var key = keyExtractor ? keyExtractor(item) : index;\n keyList[index] = key;\n var cachedAtom = prevMapping && prevMapping.atomList[prevMapping.keyList.indexOf(key)];\n if (cachedAtom) {\n atomList[index] = cachedAtom;\n return;\n }\n var read = function read(get) {\n var prev = get(mappingAtom);\n var currArr = get(arrAtom);\n var mapping = getMapping(currArr, prev == null ? void 0 : prev.arr);\n var index = mapping.keyList.indexOf(key);\n if (index < 0 || index >= currArr.length) {\n var prevItem = arr[getMapping(arr).keyList.indexOf(key)];\n if (prevItem) {\n return prevItem;\n }\n throw new Error('splitAtom: index out of bounds for read');\n }\n return currArr[index];\n };\n var write = function write(get, set, update) {\n var prev = get(mappingAtom);\n var arr = get(arrAtom);\n var mapping = getMapping(arr, prev == null ? void 0 : prev.arr);\n var index = mapping.keyList.indexOf(key);\n if (index < 0 || index >= arr.length) {\n throw new Error('splitAtom: index out of bounds for write');\n }\n var nextItem = isFunction(update) ? update(arr[index]) : update;\n set(arrAtom, [].concat(arr.slice(0, index), [nextItem], arr.slice(index + 1)));\n };\n atomList[index] = isWritable(arrAtom) ? vanilla.atom(read, write) : vanilla.atom(read);\n });\n if (prevMapping && prevMapping.keyList.length === keyList.length && prevMapping.keyList.every(function (x, i) {\n return x === keyList[i];\n })) {\n mapping = prevMapping;\n } else {\n mapping = {\n arr: arr,\n atomList: atomList,\n keyList: keyList\n };\n }\n mappingCache.set(arr, mapping);\n return mapping;\n };\n var mappingAtom = vanilla.atom(function (get) {\n var prev = get(mappingAtom);\n var arr = get(arrAtom);\n var mapping = getMapping(arr, prev == null ? void 0 : prev.arr);\n return mapping;\n });\n if (process.env.NODE_ENV !== 'production') {\n mappingAtom.debugPrivate = true;\n }\n mappingAtom.init = undefined;\n var splittedAtom = isWritable(arrAtom) ? vanilla.atom(function (get) {\n return get(mappingAtom).atomList;\n }, function (get, set, action) {\n switch (action.type) {\n case 'remove':\n {\n var index = get(splittedAtom).indexOf(action.atom);\n if (index >= 0) {\n var arr = get(arrAtom);\n set(arrAtom, [].concat(arr.slice(0, index), arr.slice(index + 1)));\n }\n break;\n }\n case 'insert':\n {\n var _index = action.before ? get(splittedAtom).indexOf(action.before) : get(splittedAtom).length;\n if (_index >= 0) {\n var _arr = get(arrAtom);\n set(arrAtom, [].concat(_arr.slice(0, _index), [action.value], _arr.slice(_index)));\n }\n break;\n }\n case 'move':\n {\n var index1 = get(splittedAtom).indexOf(action.atom);\n var index2 = action.before ? get(splittedAtom).indexOf(action.before) : get(splittedAtom).length;\n if (index1 >= 0 && index2 >= 0) {\n var _arr2 = get(arrAtom);\n if (index1 < index2) {\n set(arrAtom, [].concat(_arr2.slice(0, index1), _arr2.slice(index1 + 1, index2), [_arr2[index1]], _arr2.slice(index2)));\n } else {\n set(arrAtom, [].concat(_arr2.slice(0, index2), [_arr2[index1]], _arr2.slice(index2, index1), _arr2.slice(index1 + 1)));\n }\n }\n break;\n }\n }\n }) : vanilla.atom(function (get) {\n return get(mappingAtom).atomList;\n });\n return splittedAtom;\n }, arrAtom, keyExtractor || cacheKeyForEmptyKeyExtractor);\n}\n\nfunction atomWithDefault(getDefault) {\n var EMPTY = Symbol();\n var overwrittenAtom = vanilla.atom(EMPTY);\n if (process.env.NODE_ENV !== 'production') {\n overwrittenAtom.debugPrivate = true;\n }\n var anAtom = vanilla.atom(function (get, options) {\n var overwritten = get(overwrittenAtom);\n if (overwritten !== EMPTY) {\n return overwritten;\n }\n return getDefault(get, options);\n }, function (get, set, update) {\n if (update === RESET) {\n set(overwrittenAtom, EMPTY);\n } else if (typeof update === 'function') {\n var prevValue = get(anAtom);\n set(overwrittenAtom, update(prevValue));\n } else {\n set(overwrittenAtom, update);\n }\n });\n return anAtom;\n}\n\nvar isPromiseLike = function isPromiseLike(x) {\n return typeof (x == null ? void 0 : x.then) === 'function';\n};\nfunction createJSONStorage(getStringStorage) {\n var lastStr;\n var lastValue;\n var storage = {\n getItem: function getItem(key, initialValue) {\n var _getStringStorage$get, _getStringStorage;\n var parse = function parse(str) {\n str = str || '';\n if (lastStr !== str) {\n try {\n lastValue = JSON.parse(str);\n } catch (_unused) {\n return initialValue;\n }\n lastStr = str;\n }\n return lastValue;\n };\n var str = (_getStringStorage$get = (_getStringStorage = getStringStorage()) == null ? void 0 : _getStringStorage.getItem(key)) != null ? _getStringStorage$get : null;\n if (isPromiseLike(str)) {\n return str.then(parse);\n }\n return parse(str);\n },\n setItem: function setItem(key, newValue) {\n var _getStringStorage2;\n return (_getStringStorage2 = getStringStorage()) == null ? void 0 : _getStringStorage2.setItem(key, JSON.stringify(newValue));\n },\n removeItem: function removeItem(key) {\n var _getStringStorage3;\n return (_getStringStorage3 = getStringStorage()) == null ? void 0 : _getStringStorage3.removeItem(key);\n }\n };\n if (typeof window !== 'undefined' && typeof window.addEventListener === 'function') {\n storage.subscribe = function (key, callback, initialValue) {\n if (!(getStringStorage() instanceof window.Storage)) {\n return function () {};\n }\n var storageEventCallback = function storageEventCallback(e) {\n if (e.storageArea === getStringStorage() && e.key === key) {\n var _newValue;\n try {\n _newValue = JSON.parse(e.newValue || '');\n } catch (_unused2) {\n _newValue = initialValue;\n }\n callback(_newValue);\n }\n };\n window.addEventListener('storage', storageEventCallback);\n return function () {\n window.removeEventListener('storage', storageEventCallback);\n };\n };\n }\n return storage;\n}\nvar defaultStorage = createJSONStorage(function () {\n return typeof window !== 'undefined' ? window.localStorage : undefined;\n});\nfunction atomWithStorage(key, initialValue, storage, unstable_options) {\n if (storage === void 0) {\n storage = defaultStorage;\n }\n var getOnInit = unstable_options == null ? void 0 : unstable_options.unstable_getOnInit;\n var baseAtom = vanilla.atom(getOnInit ? storage.getItem(key, initialValue) : initialValue);\n if (process.env.NODE_ENV !== 'production') {\n baseAtom.debugPrivate = true;\n }\n baseAtom.onMount = function (setAtom) {\n if (!getOnInit) {\n setAtom(storage.getItem(key, initialValue));\n }\n var unsub;\n if (storage.subscribe) {\n unsub = storage.subscribe(key, setAtom, initialValue);\n }\n return unsub;\n };\n var anAtom = vanilla.atom(function (get) {\n return get(baseAtom);\n }, function (get, set, update) {\n var nextValue = typeof update === 'function' ? update(get(baseAtom)) : update;\n if (nextValue === RESET) {\n set(baseAtom, initialValue);\n return storage.removeItem(key);\n }\n if (nextValue instanceof Promise) {\n return nextValue.then(function (resolvedValue) {\n set(baseAtom, resolvedValue);\n return storage.setItem(key, resolvedValue);\n });\n }\n set(baseAtom, nextValue);\n return storage.setItem(key, nextValue);\n });\n return anAtom;\n}\n\nfunction atomWithObservable(getObservable, options) {\n var returnResultData = function returnResultData(result) {\n if ('e' in result) {\n throw result.e;\n }\n return result.d;\n };\n var observableResultAtom = vanilla.atom(function (get) {\n var _observable$Symbol$ob, _observable;\n var observable = getObservable(get);\n var itself = (_observable$Symbol$ob = (_observable = observable)[Symbol.observable]) == null ? void 0 : _observable$Symbol$ob.call(_observable);\n if (itself) {\n observable = itself;\n }\n var resolve;\n var makePending = function makePending() {\n return new Promise(function (r) {\n resolve = r;\n });\n };\n var initialResult = options && 'initialValue' in options ? {\n d: typeof options.initialValue === 'function' ? options.initialValue() : options.initialValue\n } : makePending();\n var setResult;\n var lastResult;\n var listener = function listener(result) {\n lastResult = result;\n resolve == null ? void 0 : resolve(result);\n setResult == null ? void 0 : setResult(result);\n };\n var subscription;\n var timer;\n var isNotMounted = function isNotMounted() {\n return !setResult;\n };\n var start = function start() {\n if (subscription) {\n clearTimeout(timer);\n subscription.unsubscribe();\n }\n subscription = observable.subscribe({\n next: function next(d) {\n return listener({\n d: d\n });\n },\n error: function error(e) {\n return listener({\n e: e\n });\n },\n complete: function complete() {}\n });\n if (isNotMounted() && options != null && options.unstable_timeout) {\n timer = setTimeout(function () {\n if (subscription) {\n subscription.unsubscribe();\n subscription = undefined;\n }\n }, options.unstable_timeout);\n }\n };\n start();\n var resultAtom = vanilla.atom(lastResult || initialResult);\n if (process.env.NODE_ENV !== 'production') {\n resultAtom.debugPrivate = true;\n }\n resultAtom.onMount = function (update) {\n setResult = update;\n if (lastResult) {\n update(lastResult);\n }\n if (subscription) {\n clearTimeout(timer);\n } else {\n start();\n }\n return function () {\n setResult = undefined;\n if (subscription) {\n subscription.unsubscribe();\n subscription = undefined;\n }\n };\n };\n return [resultAtom, observable, makePending, start, isNotMounted];\n });\n if (process.env.NODE_ENV !== 'production') {\n observableResultAtom.debugPrivate = true;\n }\n var observableAtom = vanilla.atom(function (get) {\n var _get = get(observableResultAtom),\n resultAtom = _get[0];\n var result = get(resultAtom);\n if (result instanceof Promise) {\n return result.then(returnResultData);\n }\n return returnResultData(result);\n }, function (get, set, data) {\n var _get2 = get(observableResultAtom),\n resultAtom = _get2[0],\n observable = _get2[1],\n makePending = _get2[2],\n start = _get2[3],\n isNotMounted = _get2[4];\n if ('next' in observable) {\n if (isNotMounted()) {\n set(resultAtom, makePending());\n start();\n }\n observable.next(data);\n } else {\n throw new Error('observable is not subject');\n }\n });\n return observableAtom;\n}\n\nvar cache1$1 = new WeakMap();\nvar memo1 = function memo1(create, dep1) {\n return (cache1$1.has(dep1) ? cache1$1 : cache1$1.set(dep1, create())).get(dep1);\n};\nvar LOADING = {\n state: 'loading'\n};\nfunction loadable(anAtom) {\n return memo1(function () {\n var loadableCache = new WeakMap();\n var refreshAtom = vanilla.atom(0);\n if (process.env.NODE_ENV !== 'production') {\n refreshAtom.debugPrivate = true;\n }\n var derivedAtom = vanilla.atom(function (get, _ref) {\n var setSelf = _ref.setSelf;\n get(refreshAtom);\n var value;\n try {\n value = get(anAtom);\n } catch (error) {\n return {\n state: 'hasError',\n error: error\n };\n }\n if (!(value instanceof Promise)) {\n return {\n state: 'hasData',\n data: value\n };\n }\n var promise = value;\n var cached = loadableCache.get(promise);\n if (cached) {\n return cached;\n }\n loadableCache.set(promise, LOADING);\n promise.then(function (data) {\n loadableCache.set(promise, {\n state: 'hasData',\n data: data\n });\n }, function (error) {\n loadableCache.set(promise, {\n state: 'hasError',\n error: error\n });\n }).finally(setSelf);\n return LOADING;\n }, function (_get, set) {\n set(refreshAtom, function (c) {\n return c + 1;\n });\n });\n if (process.env.NODE_ENV !== 'production') {\n derivedAtom.debugPrivate = true;\n }\n return vanilla.atom(function (get) {\n return get(derivedAtom);\n });\n }, anAtom);\n}\n\nvar getCached = function getCached(c, m, k) {\n return (m.has(k) ? m : m.set(k, c())).get(k);\n};\nvar cache1 = new WeakMap();\nvar memo2 = function memo2(create, dep1, dep2) {\n var cache2 = getCached(function () {\n return new WeakMap();\n }, cache1, dep1);\n return getCached(create, cache2, dep2);\n};\nvar defaultFallback = function defaultFallback() {\n return undefined;\n};\nfunction unwrap(anAtom, fallback) {\n if (fallback === void 0) {\n fallback = defaultFallback;\n }\n return memo2(function () {\n var promiseErrorCache = new WeakMap();\n var promiseResultCache = new WeakMap();\n var refreshAtom = vanilla.atom(0);\n if (process.env.NODE_ENV !== 'production') {\n refreshAtom.debugPrivate = true;\n }\n var promiseAndValueAtom = vanilla.atom(function (get, _ref) {\n var setSelf = _ref.setSelf;\n get(refreshAtom);\n var prev = get(promiseAndValueAtom);\n var promise = get(anAtom);\n if (!(promise instanceof Promise)) {\n return {\n v: promise\n };\n }\n if (promise === (prev == null ? void 0 : prev.p)) {\n if (promiseErrorCache.has(promise)) {\n throw promiseErrorCache.get(promise);\n }\n if (promiseResultCache.has(promise)) {\n return {\n p: promise,\n v: promiseResultCache.get(promise)\n };\n }\n }\n if (promise !== (prev == null ? void 0 : prev.p)) {\n promise.then(function (v) {\n return promiseResultCache.set(promise, v);\n }, function (e) {\n return promiseErrorCache.set(promise, e);\n }).finally(setSelf);\n }\n if (prev && 'v' in prev) {\n return {\n p: promise,\n f: fallback(prev.v)\n };\n }\n return {\n p: promise,\n f: fallback()\n };\n }, function (_get, set) {\n set(refreshAtom, function (c) {\n return c + 1;\n });\n });\n promiseAndValueAtom.init = undefined;\n if (process.env.NODE_ENV !== 'production') {\n promiseAndValueAtom.debugPrivate = true;\n }\n return vanilla.atom(function (get) {\n var state = get(promiseAndValueAtom);\n if ('v' in state) {\n return state.v;\n }\n return state.f;\n }, anAtom.write);\n }, anAtom, fallback);\n}\n\nexports.RESET = RESET;\nexports.atomFamily = atomFamily;\nexports.atomWithDefault = atomWithDefault;\nexports.atomWithObservable = atomWithObservable;\nexports.atomWithReducer = atomWithReducer;\nexports.atomWithReset = atomWithReset;\nexports.atomWithStorage = atomWithStorage;\nexports.createJSONStorage = createJSONStorage;\nexports.freezeAtom = freezeAtom;\nexports.freezeAtomCreator = freezeAtomCreator;\nexports.loadable = loadable;\nexports.selectAtom = selectAtom;\nexports.splitAtom = splitAtom;\nexports.unwrap = unwrap;\n"],"sourceRoot":""}