import { require_react } from "./chunk-T3SJLYUH.js"; import { __toESM } from "./chunk-4B2QHNJT.js"; // ../../node_modules/.pnpm/jotai@2.16.0_@babel+core@7.28.5_@babel+template@7.27.2_@types+react@19.2.7_react@19.2.3/node_modules/jotai/esm/vanilla/internals.mjs function hasInitialValue(atom2) { return "init" in atom2; } function isActuallyWritableAtom(atom2) { return !!atom2.write; } function isAtomStateInitialized(atomState) { return "v" in atomState || "e" in atomState; } function returnAtomValue(atomState) { if ("e" in atomState) { throw atomState.e; } if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && !("v" in atomState)) { throw new Error("[Bug] atom state is not initialized"); } return atomState.v; } var promiseStateMap = /* @__PURE__ */ new WeakMap(); function isPendingPromise(value) { var _a; return isPromiseLike(value) && !!((_a = promiseStateMap.get(value)) == null ? void 0 : _a[0]); } function abortPromise(promise) { const promiseState = promiseStateMap.get(promise); if (promiseState == null ? void 0 : promiseState[0]) { promiseState[0] = false; promiseState[1].forEach((fn) => fn()); } } function registerAbortHandler(promise, abortHandler) { let promiseState = promiseStateMap.get(promise); if (!promiseState) { promiseState = [true, /* @__PURE__ */ new Set()]; promiseStateMap.set(promise, promiseState); const settle = () => { promiseState[0] = false; }; promise.then(settle, settle); } promiseState[1].add(abortHandler); } function isPromiseLike(p) { return typeof (p == null ? void 0 : p.then) === "function"; } function addPendingPromiseToDependency(atom2, promise, dependencyAtomState) { if (!dependencyAtomState.p.has(atom2)) { dependencyAtomState.p.add(atom2); const cleanup = () => dependencyAtomState.p.delete(atom2); promise.then(cleanup, cleanup); } } function getMountedOrPendingDependents(atom2, atomState, mountedMap) { var _a; const dependents = /* @__PURE__ */ new Set(); for (const a of ((_a = mountedMap.get(atom2)) == null ? void 0 : _a.t) || []) { dependents.add(a); } for (const atomWithPendingPromise of atomState.p) { dependents.add(atomWithPendingPromise); } return dependents; } var atomRead = (_store, atom2, ...params) => atom2.read(...params); var atomWrite = (_store, atom2, ...params) => atom2.write(...params); var atomOnInit = (store, atom2) => { if (atom2.INTERNAL_onInit) { return atom2.INTERNAL_onInit(store); } if (atom2.unstable_onInit) { console.warn( "[DEPRECATED] atom.unstable_onInit is renamed to atom.INTERNAL_onInit." ); return atom2.unstable_onInit(store); } }; var atomOnMount = (_store, atom2, setAtom) => { var _a; return (_a = atom2.onMount) == null ? void 0 : _a.call(atom2, setAtom); }; var ensureAtomState = (store, atom2) => { var _a; const buildingBlocks = getInternalBuildingBlocks(store); const atomStateMap = buildingBlocks[0]; const storeHooks = buildingBlocks[6]; const atomOnInit2 = buildingBlocks[9]; if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && !atom2) { throw new Error("Atom is undefined or null"); } let atomState = atomStateMap.get(atom2); if (!atomState) { atomState = { d: /* @__PURE__ */ new Map(), p: /* @__PURE__ */ new Set(), n: 0 }; atomStateMap.set(atom2, atomState); (_a = storeHooks.i) == null ? void 0 : _a.call(storeHooks, atom2); atomOnInit2 == null ? void 0 : atomOnInit2(store, atom2); } return atomState; }; var flushCallbacks = (store) => { const buildingBlocks = getInternalBuildingBlocks(store); const mountedMap = buildingBlocks[1]; const changedAtoms = buildingBlocks[3]; const mountCallbacks = buildingBlocks[4]; const unmountCallbacks = buildingBlocks[5]; const storeHooks = buildingBlocks[6]; const recomputeInvalidatedAtoms2 = buildingBlocks[13]; const errors = []; const call = (fn) => { try { fn(); } catch (e) { errors.push(e); } }; do { if (storeHooks.f) { call(storeHooks.f); } const callbacks = /* @__PURE__ */ new Set(); const add = callbacks.add.bind(callbacks); changedAtoms.forEach((atom2) => { var _a; return (_a = mountedMap.get(atom2)) == null ? void 0 : _a.l.forEach(add); }); changedAtoms.clear(); unmountCallbacks.forEach(add); unmountCallbacks.clear(); mountCallbacks.forEach(add); mountCallbacks.clear(); callbacks.forEach(call); if (changedAtoms.size) { recomputeInvalidatedAtoms2(store); } } while (changedAtoms.size || unmountCallbacks.size || mountCallbacks.size); if (errors.length) { throw new AggregateError(errors); } }; var recomputeInvalidatedAtoms = (store) => { const buildingBlocks = getInternalBuildingBlocks(store); const mountedMap = buildingBlocks[1]; const invalidatedAtoms = buildingBlocks[2]; const changedAtoms = buildingBlocks[3]; const ensureAtomState2 = buildingBlocks[11]; const readAtomState2 = buildingBlocks[14]; const mountDependencies2 = buildingBlocks[17]; const topSortedReversed = []; const visiting = /* @__PURE__ */ new WeakSet(); const visited = /* @__PURE__ */ new WeakSet(); const stack = Array.from(changedAtoms); while (stack.length) { const a = stack[stack.length - 1]; const aState = ensureAtomState2(store, a); if (visited.has(a)) { stack.pop(); continue; } if (visiting.has(a)) { if (invalidatedAtoms.get(a) === aState.n) { topSortedReversed.push([a, aState]); } else if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && invalidatedAtoms.has(a)) { throw new Error("[Bug] invalidated atom exists"); } visited.add(a); stack.pop(); continue; } visiting.add(a); for (const d of getMountedOrPendingDependents(a, aState, mountedMap)) { if (!visiting.has(d)) { stack.push(d); } } } for (let i = topSortedReversed.length - 1; i >= 0; --i) { const [a, aState] = topSortedReversed[i]; let hasChangedDeps = false; for (const dep of aState.d.keys()) { if (dep !== a && changedAtoms.has(dep)) { hasChangedDeps = true; break; } } if (hasChangedDeps) { readAtomState2(store, a); mountDependencies2(store, a); } invalidatedAtoms.delete(a); } }; var storeMutationSet = /* @__PURE__ */ new WeakSet(); var readAtomState = (store, atom2) => { var _a, _b; const buildingBlocks = getInternalBuildingBlocks(store); const mountedMap = buildingBlocks[1]; const invalidatedAtoms = buildingBlocks[2]; const changedAtoms = buildingBlocks[3]; const storeHooks = buildingBlocks[6]; const atomRead2 = buildingBlocks[7]; const ensureAtomState2 = buildingBlocks[11]; const flushCallbacks2 = buildingBlocks[12]; const recomputeInvalidatedAtoms2 = buildingBlocks[13]; const readAtomState2 = buildingBlocks[14]; const writeAtomState2 = buildingBlocks[16]; const mountDependencies2 = buildingBlocks[17]; const atomState = ensureAtomState2(store, atom2); if (isAtomStateInitialized(atomState)) { if (mountedMap.has(atom2) && invalidatedAtoms.get(atom2) !== atomState.n) { return atomState; } let hasChangedDeps = false; for (const [a, n] of atomState.d) { if (readAtomState2(store, a).n !== n) { hasChangedDeps = true; break; } } if (!hasChangedDeps) { return atomState; } } atomState.d.clear(); let isSync = true; function mountDependenciesIfAsync() { if (mountedMap.has(atom2)) { mountDependencies2(store, atom2); recomputeInvalidatedAtoms2(store); flushCallbacks2(store); } } function getter(a) { var _a2; if (a === atom2) { const aState2 = ensureAtomState2(store, a); if (!isAtomStateInitialized(aState2)) { if (hasInitialValue(a)) { setAtomStateValueOrPromise(store, a, a.init); } else { throw new Error("no atom init"); } } return returnAtomValue(aState2); } const aState = readAtomState2(store, a); try { return returnAtomValue(aState); } finally { atomState.d.set(a, aState.n); if (isPendingPromise(atomState.v)) { addPendingPromiseToDependency(atom2, atomState.v, aState); } if (mountedMap.has(atom2)) { (_a2 = mountedMap.get(a)) == null ? void 0 : _a2.t.add(atom2); } if (!isSync) { mountDependenciesIfAsync(); } } } let controller; let setSelf; const options = { get signal() { if (!controller) { controller = new AbortController(); } return controller.signal; }, get setSelf() { if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && !isActuallyWritableAtom(atom2)) { console.warn("setSelf function cannot be used with read-only atom"); } if (!setSelf && isActuallyWritableAtom(atom2)) { setSelf = (...args) => { if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && isSync) { console.warn("setSelf function cannot be called in sync"); } if (!isSync) { try { return writeAtomState2(store, atom2, ...args); } finally { recomputeInvalidatedAtoms2(store); flushCallbacks2(store); } } }; } return setSelf; } }; const prevEpochNumber = atomState.n; try { if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production") { storeMutationSet.delete(store); } const valueOrPromise = atomRead2(store, atom2, getter, options); if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && storeMutationSet.has(store)) { console.warn( "Detected store mutation during atom read. This is not supported." ); } setAtomStateValueOrPromise(store, atom2, valueOrPromise); if (isPromiseLike(valueOrPromise)) { registerAbortHandler(valueOrPromise, () => controller == null ? void 0 : controller.abort()); valueOrPromise.then(mountDependenciesIfAsync, mountDependenciesIfAsync); } (_a = storeHooks.r) == null ? void 0 : _a.call(storeHooks, atom2); return atomState; } catch (error) { delete atomState.v; atomState.e = error; ++atomState.n; return atomState; } finally { isSync = false; if (prevEpochNumber !== atomState.n && invalidatedAtoms.get(atom2) === prevEpochNumber) { invalidatedAtoms.set(atom2, atomState.n); changedAtoms.add(atom2); (_b = storeHooks.c) == null ? void 0 : _b.call(storeHooks, atom2); } } }; var invalidateDependents = (store, atom2) => { const buildingBlocks = getInternalBuildingBlocks(store); const mountedMap = buildingBlocks[1]; const invalidatedAtoms = buildingBlocks[2]; const ensureAtomState2 = buildingBlocks[11]; const stack = [atom2]; while (stack.length) { const a = stack.pop(); const aState = ensureAtomState2(store, a); for (const d of getMountedOrPendingDependents(a, aState, mountedMap)) { const dState = ensureAtomState2(store, d); invalidatedAtoms.set(d, dState.n); stack.push(d); } } }; var writeAtomState = (store, atom2, ...args) => { const buildingBlocks = getInternalBuildingBlocks(store); const changedAtoms = buildingBlocks[3]; const storeHooks = buildingBlocks[6]; const atomWrite2 = buildingBlocks[8]; const ensureAtomState2 = buildingBlocks[11]; const flushCallbacks2 = buildingBlocks[12]; const recomputeInvalidatedAtoms2 = buildingBlocks[13]; const readAtomState2 = buildingBlocks[14]; const invalidateDependents2 = buildingBlocks[15]; const mountDependencies2 = buildingBlocks[17]; let isSync = true; const getter = (a) => returnAtomValue(readAtomState2(store, a)); const setter = (a, ...args2) => { var _a; const aState = ensureAtomState2(store, a); try { if (a === atom2) { if (!hasInitialValue(a)) { throw new Error("atom not writable"); } if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production") { storeMutationSet.add(store); } const prevEpochNumber = aState.n; const v = args2[0]; setAtomStateValueOrPromise(store, a, v); mountDependencies2(store, a); if (prevEpochNumber !== aState.n) { changedAtoms.add(a); invalidateDependents2(store, a); (_a = storeHooks.c) == null ? void 0 : _a.call(storeHooks, a); } return void 0; } else { return writeAtomState(store, a, ...args2); } } finally { if (!isSync) { recomputeInvalidatedAtoms2(store); flushCallbacks2(store); } } }; try { return atomWrite2(store, atom2, getter, setter, ...args); } finally { isSync = false; } }; var mountDependencies = (store, atom2) => { var _a; const buildingBlocks = getInternalBuildingBlocks(store); const mountedMap = buildingBlocks[1]; const changedAtoms = buildingBlocks[3]; const storeHooks = buildingBlocks[6]; const ensureAtomState2 = buildingBlocks[11]; const invalidateDependents2 = buildingBlocks[15]; const mountAtom2 = buildingBlocks[18]; const unmountAtom2 = buildingBlocks[19]; const atomState = ensureAtomState2(store, atom2); const mounted = mountedMap.get(atom2); if (mounted && !isPendingPromise(atomState.v)) { for (const [a, n] of atomState.d) { if (!mounted.d.has(a)) { const aState = ensureAtomState2(store, a); const aMounted = mountAtom2(store, a); aMounted.t.add(atom2); mounted.d.add(a); if (n !== aState.n) { changedAtoms.add(a); invalidateDependents2(store, a); (_a = storeHooks.c) == null ? void 0 : _a.call(storeHooks, a); } } } for (const a of mounted.d) { if (!atomState.d.has(a)) { mounted.d.delete(a); const aMounted = unmountAtom2(store, a); aMounted == null ? void 0 : aMounted.t.delete(atom2); } } } }; var mountAtom = (store, atom2) => { var _a; const buildingBlocks = getInternalBuildingBlocks(store); const mountedMap = buildingBlocks[1]; const mountCallbacks = buildingBlocks[4]; const storeHooks = buildingBlocks[6]; const atomOnMount2 = buildingBlocks[10]; const ensureAtomState2 = buildingBlocks[11]; const flushCallbacks2 = buildingBlocks[12]; const recomputeInvalidatedAtoms2 = buildingBlocks[13]; const readAtomState2 = buildingBlocks[14]; const writeAtomState2 = buildingBlocks[16]; const atomState = ensureAtomState2(store, atom2); let mounted = mountedMap.get(atom2); if (!mounted) { readAtomState2(store, atom2); for (const a of atomState.d.keys()) { const aMounted = mountAtom(store, a); aMounted.t.add(atom2); } mounted = { l: /* @__PURE__ */ new Set(), d: new Set(atomState.d.keys()), t: /* @__PURE__ */ new Set() }; mountedMap.set(atom2, mounted); if (isActuallyWritableAtom(atom2)) { const processOnMount = () => { let isSync = true; const setAtom = (...args) => { try { return writeAtomState2(store, atom2, ...args); } finally { if (!isSync) { recomputeInvalidatedAtoms2(store); flushCallbacks2(store); } } }; try { const onUnmount = atomOnMount2(store, atom2, setAtom); if (onUnmount) { mounted.u = () => { isSync = true; try { onUnmount(); } finally { isSync = false; } }; } } finally { isSync = false; } }; mountCallbacks.add(processOnMount); } (_a = storeHooks.m) == null ? void 0 : _a.call(storeHooks, atom2); } return mounted; }; var unmountAtom = (store, atom2) => { var _a, _b; const buildingBlocks = getInternalBuildingBlocks(store); const mountedMap = buildingBlocks[1]; const unmountCallbacks = buildingBlocks[5]; const storeHooks = buildingBlocks[6]; const ensureAtomState2 = buildingBlocks[11]; const unmountAtom2 = buildingBlocks[19]; const atomState = ensureAtomState2(store, atom2); let mounted = mountedMap.get(atom2); if (!mounted || mounted.l.size) { return mounted; } let isDependent = false; for (const a of mounted.t) { if ((_a = mountedMap.get(a)) == null ? void 0 : _a.d.has(atom2)) { isDependent = true; break; } } if (!isDependent) { if (mounted.u) { unmountCallbacks.add(mounted.u); } mounted = void 0; mountedMap.delete(atom2); for (const a of atomState.d.keys()) { const aMounted = unmountAtom2(store, a); aMounted == null ? void 0 : aMounted.t.delete(atom2); } (_b = storeHooks.u) == null ? void 0 : _b.call(storeHooks, atom2); return void 0; } return mounted; }; var setAtomStateValueOrPromise = (store, atom2, valueOrPromise) => { const ensureAtomState2 = getInternalBuildingBlocks(store)[11]; const atomState = ensureAtomState2(store, atom2); const hasPrevValue = "v" in atomState; const prevValue = atomState.v; if (isPromiseLike(valueOrPromise)) { for (const a of atomState.d.keys()) { addPendingPromiseToDependency( atom2, valueOrPromise, ensureAtomState2(store, a) ); } } atomState.v = valueOrPromise; delete atomState.e; if (!hasPrevValue || !Object.is(prevValue, atomState.v)) { ++atomState.n; if (isPromiseLike(prevValue)) { abortPromise(prevValue); } } }; var storeGet = (store, atom2) => { const readAtomState2 = getInternalBuildingBlocks(store)[14]; return returnAtomValue(readAtomState2(store, atom2)); }; var storeSet = (store, atom2, ...args) => { const buildingBlocks = getInternalBuildingBlocks(store); const flushCallbacks2 = buildingBlocks[12]; const recomputeInvalidatedAtoms2 = buildingBlocks[13]; const writeAtomState2 = buildingBlocks[16]; try { return writeAtomState2(store, atom2, ...args); } finally { recomputeInvalidatedAtoms2(store); flushCallbacks2(store); } }; var storeSub = (store, atom2, listener) => { const buildingBlocks = getInternalBuildingBlocks(store); const flushCallbacks2 = buildingBlocks[12]; const mountAtom2 = buildingBlocks[18]; const unmountAtom2 = buildingBlocks[19]; const mounted = mountAtom2(store, atom2); const listeners = mounted.l; listeners.add(listener); flushCallbacks2(store); return () => { listeners.delete(listener); unmountAtom2(store, atom2); flushCallbacks2(store); }; }; var buildingBlockMap = /* @__PURE__ */ new WeakMap(); var getInternalBuildingBlocks = (store) => { const buildingBlocks = buildingBlockMap.get(store); if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && !buildingBlocks) { throw new Error( "Store must be created by buildStore to read its building blocks" ); } return buildingBlocks; }; function buildStore(...buildArgs) { const store = { get(atom2) { const storeGet2 = getInternalBuildingBlocks(store)[21]; return storeGet2(store, atom2); }, set(atom2, ...args) { const storeSet2 = getInternalBuildingBlocks(store)[22]; return storeSet2(store, atom2, ...args); }, sub(atom2, listener) { const storeSub2 = getInternalBuildingBlocks(store)[23]; return storeSub2(store, atom2, listener); } }; const buildingBlocks = [ // store state /* @__PURE__ */ new WeakMap(), // atomStateMap /* @__PURE__ */ new WeakMap(), // mountedMap /* @__PURE__ */ new WeakMap(), // invalidatedAtoms /* @__PURE__ */ new Set(), // changedAtoms /* @__PURE__ */ new Set(), // mountCallbacks /* @__PURE__ */ new Set(), // unmountCallbacks {}, // storeHooks // atom interceptors atomRead, atomWrite, atomOnInit, atomOnMount, // building-block functions ensureAtomState, flushCallbacks, recomputeInvalidatedAtoms, readAtomState, invalidateDependents, writeAtomState, mountDependencies, mountAtom, unmountAtom, setAtomStateValueOrPromise, storeGet, storeSet, storeSub, void 0 ].map((fn, i) => buildArgs[i] || fn); buildingBlockMap.set(store, Object.freeze(buildingBlocks)); return store; } // ../../node_modules/.pnpm/jotai@2.16.0_@babel+core@7.28.5_@babel+template@7.27.2_@types+react@19.2.7_react@19.2.3/node_modules/jotai/esm/vanilla.mjs var keyCount = 0; function atom(read, write) { const key = `atom${++keyCount}`; const config = { toString() { return (import.meta.env ? import.meta.env.MODE : void 0) !== "production" && this.debugLabel ? key + ":" + this.debugLabel : key; } }; if (typeof read === "function") { config.read = read; } else { config.init = read; config.read = defaultRead; config.write = defaultWrite; } if (write) { config.write = write; } return config; } function defaultRead(get) { return get(this); } function defaultWrite(get, set, arg) { return set( this, typeof arg === "function" ? arg(get(this)) : arg ); } var overiddenCreateStore; function INTERNAL_overrideCreateStore(fn) { overiddenCreateStore = fn(overiddenCreateStore); } function createStore() { if (overiddenCreateStore) { return overiddenCreateStore(); } return buildStore(); } var defaultStore; function getDefaultStore() { if (!defaultStore) { defaultStore = createStore(); if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production") { globalThis.__JOTAI_DEFAULT_STORE__ || (globalThis.__JOTAI_DEFAULT_STORE__ = defaultStore); if (globalThis.__JOTAI_DEFAULT_STORE__ !== defaultStore) { console.warn( "Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044" ); } } } return defaultStore; } // ../../node_modules/.pnpm/jotai@2.16.0_@babel+core@7.28.5_@babel+template@7.27.2_@types+react@19.2.7_react@19.2.3/node_modules/jotai/esm/react.mjs var import_react = __toESM(require_react(), 1); var StoreContext = (0, import_react.createContext)( void 0 ); function useStore(options) { const store = (0, import_react.useContext)(StoreContext); return (options == null ? void 0 : options.store) || store || getDefaultStore(); } function Provider({ children, store }) { const storeRef = (0, import_react.useRef)(null); if (store) { return (0, import_react.createElement)(StoreContext.Provider, { value: store }, children); } if (storeRef.current === null) { storeRef.current = createStore(); } return (0, import_react.createElement)( StoreContext.Provider, { // TODO: If this is not a false positive, consider using useState instead of useRef like https://github.com/pmndrs/jotai/pull/2771 // eslint-disable-next-line react-hooks/refs value: storeRef.current }, children ); } var isPromiseLike2 = (x) => typeof (x == null ? void 0 : x.then) === "function"; var attachPromiseStatus = (promise) => { if (!promise.status) { promise.status = "pending"; promise.then( (v) => { promise.status = "fulfilled"; promise.value = v; }, (e) => { promise.status = "rejected"; promise.reason = e; } ); } }; var use = import_react.default.use || // A shim for older React versions ((promise) => { if (promise.status === "pending") { throw promise; } else if (promise.status === "fulfilled") { return promise.value; } else if (promise.status === "rejected") { throw promise.reason; } else { attachPromiseStatus(promise); throw promise; } }); var continuablePromiseMap = /* @__PURE__ */ new WeakMap(); var createContinuablePromise = (promise, getValue) => { let continuablePromise = continuablePromiseMap.get(promise); if (!continuablePromise) { continuablePromise = new Promise((resolve, reject) => { let curr = promise; const onFulfilled = (me) => (v) => { if (curr === me) { resolve(v); } }; const onRejected = (me) => (e) => { if (curr === me) { reject(e); } }; const onAbort = () => { try { const nextValue = getValue(); if (isPromiseLike2(nextValue)) { continuablePromiseMap.set(nextValue, continuablePromise); curr = nextValue; nextValue.then(onFulfilled(nextValue), onRejected(nextValue)); registerAbortHandler(nextValue, onAbort); } else { resolve(nextValue); } } catch (e) { reject(e); } }; promise.then(onFulfilled(promise), onRejected(promise)); registerAbortHandler(promise, onAbort); }); continuablePromiseMap.set(promise, continuablePromise); } return continuablePromise; }; function useAtomValue(atom2, options) { const { delay, unstable_promiseStatus: promiseStatus = !import_react.default.use } = options || {}; const store = useStore(options); const [[valueFromReducer, storeFromReducer, atomFromReducer], rerender] = (0, import_react.useReducer)( (prev) => { const nextValue = store.get(atom2); if (Object.is(prev[0], nextValue) && prev[1] === store && prev[2] === atom2) { return prev; } return [nextValue, store, atom2]; }, void 0, () => [store.get(atom2), store, atom2] ); let value = valueFromReducer; if (storeFromReducer !== store || atomFromReducer !== atom2) { rerender(); value = store.get(atom2); } (0, import_react.useEffect)(() => { const unsub = store.sub(atom2, () => { if (promiseStatus) { try { const value2 = store.get(atom2); if (isPromiseLike2(value2)) { attachPromiseStatus( createContinuablePromise(value2, () => store.get(atom2)) ); } } catch (e) { } } if (typeof delay === "number") { setTimeout(rerender, delay); return; } rerender(); }); rerender(); return unsub; }, [store, atom2, delay, promiseStatus]); (0, import_react.useDebugValue)(value); if (isPromiseLike2(value)) { const promise = createContinuablePromise(value, () => store.get(atom2)); if (promiseStatus) { attachPromiseStatus(promise); } return use(promise); } return value; } function useSetAtom(atom2, options) { const store = useStore(options); const setAtom = (0, import_react.useCallback)( (...args) => { if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && !("write" in atom2)) { throw new Error("not writable atom"); } return store.set(atom2, ...args); }, [store, atom2] ); return setAtom; } function useAtom(atom2, options) { return [ useAtomValue(atom2, options), // We do wrong type assertion here, which results in throwing an error. useSetAtom(atom2, options) ]; } export { atom, INTERNAL_overrideCreateStore, createStore, getDefaultStore, useStore, Provider, useAtomValue, useSetAtom, useAtom }; //# sourceMappingURL=chunk-HZEBPUXZ.js.map