{"version":3,"sources":["jsdelivr-header.js","/npm/jotai-expose-store@1.3.2-0/index.js"],"names":[],"mappings":"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","file":"/npm/jotai-expose-store@1.3.2-0/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/jotai-expose-store@1.3.2-0/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar react = require('react');\n\nfunction _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n\n    return target;\n  };\n\n  return _extends.apply(this, arguments);\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}\n\nfunction _arrayLikeToArray(arr, len) {\n  if (len == null || len > arr.length) len = arr.length;\n\n  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n  return arr2;\n}\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\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\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};\n\nvar IS_EQUAL_PROMISE = Symbol();\nvar INTERRUPT_PROMISE = Symbol();\n\nvar isInterruptablePromise = function isInterruptablePromise(promise) {\n  return !!promise[INTERRUPT_PROMISE];\n};\n\nvar createInterruptablePromise = function createInterruptablePromise(promise) {\n  var interrupt;\n  var interruptablePromise = new Promise(function (resolve, reject) {\n    interrupt = resolve;\n    promise.then(resolve, reject);\n  });\n\n  interruptablePromise[IS_EQUAL_PROMISE] = function (p) {\n    return p === interruptablePromise || p === promise;\n  };\n\n  interruptablePromise[INTERRUPT_PROMISE] = interrupt;\n  return interruptablePromise;\n};\n\nvar GET_VERSION$1 = 'v';\nvar READ_ATOM = 'r';\nvar WRITE_ATOM = 'w';\nvar FLUSH_PENDING = 'f';\nvar SUBSCRIBE_ATOM = 's';\nvar RESTORE_ATOMS = 'h';\nvar DEV_GET_ATOM_STATE = 'a';\nvar DEV_GET_MOUNTED = 'm';\nvar createStore = function createStore(initialValues, stateListener) {\n  var _ref4;\n\n  var version = 0;\n  var atomStateMap = new WeakMap();\n  var mountedMap = new WeakMap();\n  var pendingMap = new Map();\n\n  if (initialValues) {\n    for (var _iterator = _createForOfIteratorHelperLoose(initialValues), _step; !(_step = _iterator()).done;) {\n      var _step$value = _step.value,\n          atom = _step$value[0],\n          value = _step$value[1];\n      var atomState = {\n        v: value,\n        r: 0,\n        d: new Map()\n      };\n\n      if (typeof process === 'object' && process.env.NODE_ENV !== 'production') {\n        Object.freeze(atomState);\n\n        if (!hasInitialValue(atom)) {\n          console.warn('Found initial value for derived atom which can cause unexpected behavior', atom);\n        }\n      }\n\n      atomStateMap.set(atom, atomState);\n    }\n  }\n\n  var getAtomState = function getAtomState(atom) {\n    return atomStateMap.get(atom);\n  };\n\n  var wipAtomState = function wipAtomState(atom, dependencies) {\n    var atomState = getAtomState(atom);\n\n    var nextAtomState = _extends({\n      r: 0\n    }, atomState, {\n      d: dependencies ? new Map(Array.from(dependencies).map(function (a) {\n        var _getAtomState$r, _getAtomState;\n\n        return [a, (_getAtomState$r = (_getAtomState = getAtomState(a)) == null ? void 0 : _getAtomState.r) != null ? _getAtomState$r : 0];\n      })) : (atomState == null ? void 0 : atomState.d) || new Map()\n    });\n\n    return [nextAtomState, (atomState == null ? void 0 : atomState.d) || new Map()];\n  };\n\n  var setAtomValue = function setAtomValue(atom, value, dependencies, promise) {\n    var _atomState$p;\n\n    var _wipAtomState = wipAtomState(atom, dependencies),\n        atomState = _wipAtomState[0],\n        prevDependencies = _wipAtomState[1];\n\n    if (promise && !((_atomState$p = atomState.p) != null && _atomState$p[IS_EQUAL_PROMISE](promise))) {\n      return;\n    }\n\n    atomState.c == null ? void 0 : atomState.c();\n    delete atomState.e;\n    delete atomState.p;\n    delete atomState.c;\n    delete atomState.i;\n\n    if (!('v' in atomState) || !Object.is(atomState.v, value)) {\n      atomState.v = value;\n      ++atomState.r;\n    }\n\n    commitAtomState(atom, atomState, dependencies && prevDependencies);\n  };\n\n  var setAtomReadError = function setAtomReadError(atom, error, dependencies, promise) {\n    var _atomState$p2;\n\n    var _wipAtomState2 = wipAtomState(atom, dependencies),\n        atomState = _wipAtomState2[0],\n        prevDependencies = _wipAtomState2[1];\n\n    if (promise && !((_atomState$p2 = atomState.p) != null && _atomState$p2[IS_EQUAL_PROMISE](promise))) {\n      return;\n    }\n\n    atomState.c == null ? void 0 : atomState.c();\n    delete atomState.p;\n    delete atomState.c;\n    delete atomState.i;\n    atomState.e = error;\n    commitAtomState(atom, atomState, prevDependencies);\n  };\n\n  var setAtomReadPromise = function setAtomReadPromise(atom, promise, dependencies) {\n    var _atomState$p3;\n\n    var _wipAtomState3 = wipAtomState(atom, dependencies),\n        atomState = _wipAtomState3[0],\n        prevDependencies = _wipAtomState3[1];\n\n    if ((_atomState$p3 = atomState.p) != null && _atomState$p3[IS_EQUAL_PROMISE](promise)) {\n      return;\n    }\n\n    atomState.c == null ? void 0 : atomState.c();\n\n    if (isInterruptablePromise(promise)) {\n      atomState.p = promise;\n      delete atomState.c;\n    } else {\n      var interruptablePromise = createInterruptablePromise(promise);\n      atomState.p = interruptablePromise;\n      atomState.c = interruptablePromise[INTERRUPT_PROMISE];\n    }\n\n    commitAtomState(atom, atomState, prevDependencies);\n  };\n\n  var setAtomInvalidated = function setAtomInvalidated(atom) {\n    var _wipAtomState4 = wipAtomState(atom),\n        atomState = _wipAtomState4[0];\n\n    atomState.i = atomState.r;\n    commitAtomState(atom, atomState);\n  };\n\n  var setAtomWritePromise = function setAtomWritePromise(atom, promise) {\n    var _wipAtomState5 = wipAtomState(atom),\n        atomState = _wipAtomState5[0];\n\n    if (promise) {\n      atomState.w = promise;\n    } else {\n      delete atomState.w;\n    }\n\n    commitAtomState(atom, atomState);\n  };\n\n  var scheduleReadAtomState = function scheduleReadAtomState(atom, promise) {\n    promise.finally(function () {\n      readAtomState(atom, true);\n    });\n  };\n\n  var readAtomState = function readAtomState(atom, force) {\n    if (!force) {\n      var _atomState = getAtomState(atom);\n\n      if (_atomState) {\n        _atomState.d.forEach(function (_, a) {\n          if (a !== atom) {\n            var aState = getAtomState(a);\n\n            if (aState && !aState.e && !aState.p && aState.r === aState.i) {\n              readAtomState(a, true);\n            }\n          }\n        });\n\n        if (Array.from(_atomState.d.entries()).every(function (_ref) {\n          var a = _ref[0],\n              r = _ref[1];\n          var aState = getAtomState(a);\n          return aState && !aState.e && !aState.p && aState.r !== aState.i && aState.r === r;\n        })) {\n          return _atomState;\n        }\n      }\n    }\n\n    var error;\n    var promise;\n    var value;\n    var dependencies = new Set();\n\n    try {\n      var promiseOrValue = atom.read(function (a) {\n        dependencies.add(a);\n        var aState = a === atom ? getAtomState(a) : readAtomState(a);\n\n        if (aState) {\n          if (aState.e) {\n            throw aState.e;\n          }\n\n          if (aState.p) {\n            throw aState.p;\n          }\n\n          return aState.v;\n        }\n\n        if (hasInitialValue(a)) {\n          return a.init;\n        }\n\n        throw new Error('no atom init');\n      });\n\n      if (promiseOrValue instanceof Promise) {\n        promise = promiseOrValue.then(function (value) {\n          setAtomValue(atom, value, dependencies, promise);\n          flushPending();\n        }).catch(function (e) {\n          if (e instanceof Promise) {\n            scheduleReadAtomState(atom, e);\n            return e;\n          }\n\n          setAtomReadError(atom, e instanceof Error ? e : new Error(e), dependencies, promise);\n          flushPending();\n        });\n      } else {\n        value = promiseOrValue;\n      }\n    } catch (errorOrPromise) {\n      if (errorOrPromise instanceof Promise) {\n        promise = errorOrPromise;\n      } else if (errorOrPromise instanceof Error) {\n        error = errorOrPromise;\n      } else {\n        error = new Error(errorOrPromise);\n      }\n    }\n\n    if (error) {\n      setAtomReadError(atom, error, dependencies);\n    } else if (promise) {\n      setAtomReadPromise(atom, promise, dependencies);\n    } else {\n      setAtomValue(atom, value, dependencies);\n    }\n\n    return getAtomState(atom);\n  };\n\n  var readAtom = function readAtom(readingAtom) {\n    var atomState = readAtomState(readingAtom);\n    return atomState;\n  };\n\n  var addAtom = function addAtom(addingAtom) {\n    var mounted = mountedMap.get(addingAtom);\n\n    if (!mounted) {\n      mounted = mountAtom(addingAtom);\n    }\n\n    flushPending();\n    return mounted;\n  };\n\n  var canUnmountAtom = function canUnmountAtom(atom, mounted) {\n    return !mounted.l.size && (!mounted.d.size || mounted.d.size === 1 && mounted.d.has(atom));\n  };\n\n  var delAtom = function delAtom(deletingAtom) {\n    var mounted = mountedMap.get(deletingAtom);\n\n    if (mounted && canUnmountAtom(deletingAtom, mounted)) {\n      unmountAtom(deletingAtom);\n    }\n\n    flushPending();\n  };\n\n  var invalidateDependents = function invalidateDependents(atom) {\n    var mounted = mountedMap.get(atom);\n    mounted == null ? void 0 : mounted.d.forEach(function (dependent) {\n      if (dependent === atom) {\n        return;\n      }\n\n      setAtomInvalidated(dependent);\n      invalidateDependents(dependent);\n    });\n  };\n\n  var writeAtomState = function writeAtomState(atom, update) {\n    var _getAtomState2;\n\n    var writePromise = (_getAtomState2 = getAtomState(atom)) == null ? void 0 : _getAtomState2.w;\n\n    if (writePromise) {\n      writePromise.then(function () {\n        writeAtomState(atom, update);\n        flushPending();\n      });\n      return;\n    }\n\n    var writeGetter = function writeGetter(a, unstable_promise) {\n      if (unstable_promise === void 0) {\n        unstable_promise = false;\n      }\n\n      var aState = readAtomState(a);\n\n      if (aState.e) {\n        throw aState.e;\n      }\n\n      if (aState.p) {\n        if (typeof process === 'object' && process.env.NODE_ENV !== 'production') {\n          if (unstable_promise) {\n            console.info('promise option in getter is an experimental feature.', a);\n          } else {\n            console.warn('Reading pending atom state in write operation. We throw a promise for now.', a);\n          }\n        }\n\n        if (unstable_promise) {\n          return aState.p.then(function () {\n            return writeGetter(a, unstable_promise);\n          });\n        }\n\n        throw aState.p;\n      }\n\n      if ('v' in aState) {\n        return aState.v;\n      }\n\n      if (typeof process === 'object' && process.env.NODE_ENV !== 'production') {\n        console.warn('[Bug] no value found while reading atom in write operation. This is probably a bug.', a);\n      }\n\n      throw new Error('no value found');\n    };\n\n    var promiseOrVoid = atom.write(writeGetter, function (a, v) {\n      if (a === atom) {\n        if (!hasInitialValue(a)) {\n          throw new Error('no atom init');\n        }\n\n        if (v instanceof Promise) {\n          var promise = v.then(function (resolvedValue) {\n            setAtomValue(a, resolvedValue);\n            invalidateDependents(a);\n            flushPending();\n          }).catch(function (e) {\n            setAtomReadError(atom, e instanceof Error ? e : new Error(e));\n            flushPending();\n          });\n          setAtomReadPromise(atom, promise);\n        } else {\n          setAtomValue(a, v);\n        }\n\n        invalidateDependents(a);\n      } else {\n        writeAtomState(a, v);\n      }\n\n      flushPending();\n    }, update);\n\n    if (promiseOrVoid instanceof Promise) {\n      var promise = promiseOrVoid.finally(function () {\n        setAtomWritePromise(atom);\n        flushPending();\n      });\n      setAtomWritePromise(atom, promise);\n    }\n  };\n\n  var writeAtom = function writeAtom(writingAtom, update) {\n    writeAtomState(writingAtom, update);\n    flushPending();\n  };\n\n  var isActuallyWritableAtom = function isActuallyWritableAtom(atom) {\n    return !!atom.write;\n  };\n\n  var mountAtom = function mountAtom(atom, initialDependent) {\n    var atomState = readAtomState(atom);\n    atomState.d.forEach(function (_, a) {\n      if (a !== atom) {\n        var aMounted = mountedMap.get(a);\n\n        if (aMounted) {\n          aMounted.d.add(atom);\n        } else {\n          mountAtom(a, atom);\n        }\n      }\n    });\n    var mounted = {\n      d: new Set(initialDependent && [initialDependent]),\n      l: new Set(),\n      u: undefined\n    };\n    mountedMap.set(atom, mounted);\n\n    if (isActuallyWritableAtom(atom) && atom.onMount) {\n      var setAtom = function setAtom(update) {\n        return writeAtom(atom, update);\n      };\n\n      mounted.u = atom.onMount(setAtom);\n    }\n\n    return mounted;\n  };\n\n  var unmountAtom = function unmountAtom(atom) {\n    var _mountedMap$get;\n\n    var onUnmount = (_mountedMap$get = mountedMap.get(atom)) == null ? void 0 : _mountedMap$get.u;\n\n    if (onUnmount) {\n      onUnmount();\n    }\n\n    mountedMap.delete(atom);\n    var atomState = getAtomState(atom);\n\n    if (atomState) {\n      atomState.d.forEach(function (_, a) {\n        if (a !== atom) {\n          var mounted = mountedMap.get(a);\n\n          if (mounted) {\n            mounted.d.delete(atom);\n\n            if (canUnmountAtom(a, mounted)) {\n              unmountAtom(a);\n            }\n          }\n        }\n      });\n    } else if (typeof process === 'object' && process.env.NODE_ENV !== 'production') {\n      console.warn('[Bug] could not find atom state to unmount', atom);\n    }\n  };\n\n  var mountDependencies = function mountDependencies(atom, atomState, prevDependencies) {\n    var dependencies = new Set(atomState.d.keys());\n    prevDependencies.forEach(function (_, a) {\n      if (dependencies.has(a)) {\n        dependencies.delete(a);\n        return;\n      }\n\n      var mounted = mountedMap.get(a);\n\n      if (mounted) {\n        mounted.d.delete(atom);\n\n        if (canUnmountAtom(a, mounted)) {\n          unmountAtom(a);\n        }\n      }\n    });\n    dependencies.forEach(function (a) {\n      var mounted = mountedMap.get(a);\n\n      if (mounted) {\n        var dependents = mounted.d;\n        dependents.add(atom);\n      } else {\n        mountAtom(a, atom);\n      }\n    });\n  };\n\n  var commitAtomState = function commitAtomState(atom, atomState, prevDependencies) {\n    if (typeof process === 'object' && process.env.NODE_ENV !== 'production') {\n      Object.freeze(atomState);\n    }\n\n    var isNewAtom = !atomStateMap.has(atom);\n    atomStateMap.set(atom, atomState);\n\n    if (stateListener) {\n      stateListener(atom, isNewAtom);\n    }\n\n    ++version;\n\n    if (!pendingMap.has(atom)) {\n      pendingMap.set(atom, prevDependencies);\n    }\n  };\n\n  var flushPending = function flushPending() {\n    var pending = Array.from(pendingMap);\n    pendingMap.clear();\n    pending.forEach(function (_ref2) {\n      var atom = _ref2[0],\n          prevDependencies = _ref2[1];\n      var atomState = getAtomState(atom);\n\n      if (atomState) {\n        if (prevDependencies) {\n          mountDependencies(atom, atomState, prevDependencies);\n        }\n      } else if (typeof process === 'object' && process.env.NODE_ENV !== 'production') {\n        console.warn('[Bug] atom state not found in flush', atom);\n      }\n\n      var mounted = mountedMap.get(atom);\n      mounted == null ? void 0 : mounted.l.forEach(function (listener) {\n        return listener();\n      });\n    });\n  };\n\n  var subscribeAtom = function subscribeAtom(atom, callback) {\n    var mounted = addAtom(atom);\n    var listeners = mounted.l;\n    listeners.add(callback);\n    return function () {\n      listeners.delete(callback);\n      delAtom(atom);\n    };\n  };\n\n  var restoreAtoms = function restoreAtoms(values) {\n    for (var _iterator2 = _createForOfIteratorHelperLoose(values), _step2; !(_step2 = _iterator2()).done;) {\n      var _step2$value = _step2.value,\n          _atom = _step2$value[0],\n          _value = _step2$value[1];\n\n      if (hasInitialValue(_atom)) {\n        setAtomValue(_atom, _value);\n        invalidateDependents(_atom);\n      }\n    }\n\n    flushPending();\n  };\n\n  if (typeof process === 'object' && process.env.NODE_ENV !== 'production') {\n    var _ref3;\n\n    return _ref3 = {}, _ref3[GET_VERSION$1] = function () {\n      return version;\n    }, _ref3[READ_ATOM] = readAtom, _ref3[WRITE_ATOM] = writeAtom, _ref3[FLUSH_PENDING] = flushPending, _ref3[SUBSCRIBE_ATOM] = subscribeAtom, _ref3[RESTORE_ATOMS] = restoreAtoms, _ref3[DEV_GET_ATOM_STATE] = function (a) {\n      return atomStateMap.get(a);\n    }, _ref3[DEV_GET_MOUNTED] = function (a) {\n      return mountedMap.get(a);\n    }, _ref3;\n  }\n\n  return _ref4 = {}, _ref4[GET_VERSION$1] = function () {\n    return version;\n  }, _ref4[READ_ATOM] = readAtom, _ref4[WRITE_ATOM] = writeAtom, _ref4[FLUSH_PENDING] = flushPending, _ref4[SUBSCRIBE_ATOM] = subscribeAtom, _ref4[RESTORE_ATOMS] = restoreAtoms, _ref4;\n};\n\nvar TARGET = '_uMS_T';\nvar GET_VERSION = '_uMS_V';\nvar createMutableSource = function createMutableSource(target, getVersion) {\n  var _ref;\n\n  return _ref = {}, _ref[TARGET] = target, _ref[GET_VERSION] = getVersion, _ref;\n};\nvar useMutableSource = function useMutableSource(source, getSnapshot, subscribe) {\n  var lastVersion = react.useRef();\n  var currentVersion = source[GET_VERSION](source[TARGET]);\n\n  var _useState = react.useState(function () {\n    return [source, getSnapshot, subscribe, currentVersion, getSnapshot(source[TARGET])];\n  }),\n      state = _useState[0],\n      setState = _useState[1];\n\n  var currentSnapshot = state[4];\n\n  if (state[0] !== source || state[1] !== getSnapshot || state[2] !== subscribe) {\n    currentSnapshot = getSnapshot(source[TARGET]);\n    setState([source, getSnapshot, subscribe, currentVersion, currentSnapshot]);\n  } else if (currentVersion !== state[3] && currentVersion !== lastVersion.current) {\n    currentSnapshot = getSnapshot(source[TARGET]);\n\n    if (!Object.is(currentSnapshot, state[4])) {\n      setState([source, getSnapshot, subscribe, currentVersion, currentSnapshot]);\n    }\n  }\n\n  react.useEffect(function () {\n    var didUnsubscribe = false;\n\n    var checkForUpdates = function checkForUpdates() {\n      if (didUnsubscribe) {\n        return;\n      }\n\n      try {\n        var nextSnapshot = getSnapshot(source[TARGET]);\n        var nextVersion = source[GET_VERSION](source[TARGET]);\n        lastVersion.current = nextVersion;\n        setState(function (prev) {\n          if (prev[0] !== source || prev[1] !== getSnapshot || prev[2] !== subscribe) {\n            return prev;\n          }\n\n          if (Object.is(prev[4], nextSnapshot)) {\n            return prev;\n          }\n\n          return [prev[0], prev[1], prev[2], nextVersion, nextSnapshot];\n        });\n      } catch (e) {\n        setState(function (prev) {\n          return [].concat(prev);\n        });\n      }\n    };\n\n    var unsubscribe = subscribe(source[TARGET], checkForUpdates);\n    checkForUpdates();\n    return function () {\n      didUnsubscribe = true;\n      unsubscribe();\n    };\n  }, [source, getSnapshot, subscribe]);\n  return currentSnapshot;\n};\n\nvar createScopeContainerForProduction = function createScopeContainerForProduction(initialValues) {\n  var store = createStore(initialValues);\n  var mutableSource = createMutableSource(store, store[GET_VERSION$1]);\n  return [store, mutableSource];\n};\n\nvar createScopeContainerForDevelopment = function createScopeContainerForDevelopment(initialValues) {\n  var devVersion = 0;\n  var devListeners = new Set();\n  var devContainer = {\n    atoms: Array.from(initialValues != null ? initialValues : []).map(function (_ref) {\n      var a = _ref[0];\n      return a;\n    })\n  };\n\n  var stateListener = function stateListener(updatedAtom, isNewAtom) {\n    ++devVersion;\n\n    if (isNewAtom) {\n      devContainer.atoms = [].concat(devContainer.atoms, [updatedAtom]);\n    }\n\n    Promise.resolve().then(function () {\n      devListeners.forEach(function (listener) {\n        return listener();\n      });\n    });\n  };\n\n  var store = createStore(initialValues, stateListener);\n  var mutableSource = createMutableSource(store, store[GET_VERSION$1]);\n  var devMutableSource = createMutableSource(devContainer, function () {\n    return devVersion;\n  });\n\n  var devSubscribe = function devSubscribe(_, callback) {\n    devListeners.add(callback);\n    return function () {\n      return devListeners.delete(callback);\n    };\n  };\n\n  return [store, mutableSource, devMutableSource, devSubscribe];\n};\n\nvar isDevScopeContainer = function isDevScopeContainer(scopeContainer) {\n  return scopeContainer.length > 2;\n};\nvar createScopeContainer = typeof process === 'object' && process.env.NODE_ENV !== 'production' ? createScopeContainerForDevelopment : createScopeContainerForProduction;\nvar ScopeContextMap = new Map();\nvar ScopeContainerMap = new Map();\nvar getScopeContext = function getScopeContext(scope) {\n  if (!ScopeContextMap.has(scope)) {\n    ScopeContextMap.set(scope, react.createContext(getScopeContainer(scope)));\n  }\n\n  return ScopeContextMap.get(scope);\n};\nvar getScopeContainer = function getScopeContainer(scope) {\n  if (!ScopeContainerMap.has(scope)) {\n    ScopeContextMap.set(scope, createScopeContainer());\n  }\n\n  return ScopeContainerMap.get(scope);\n};\n\nvar Provider = function Provider(_ref) {\n  var initialValues = _ref.initialValues,\n      scope = _ref.scope,\n      children = _ref.children;\n  var scopeContainerRef = react.useRef();\n\n  if (!scopeContainerRef.current) {\n    scopeContainerRef.current = createScopeContainer(initialValues);\n  }\n\n  if (typeof process === 'object' && process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test' && isDevScopeContainer(scopeContainerRef.current)) {\n    useDebugState(scopeContainerRef.current);\n  }\n\n  var ScopeContainerContext = getScopeContext(scope);\n  return react.createElement(ScopeContainerContext.Provider, {\n    value: scopeContainerRef.current\n  }, children);\n};\n\nvar atomToPrintable = function atomToPrintable(atom) {\n  return atom.debugLabel || atom.toString();\n};\n\nvar stateToPrintable = function stateToPrintable(_ref2) {\n  var store = _ref2[0],\n      atoms = _ref2[1];\n  return Object.fromEntries(atoms.flatMap(function (atom) {\n    var _store$DEV_GET_MOUNTE, _store$DEV_GET_ATOM_S;\n\n    var mounted = (_store$DEV_GET_MOUNTE = store[DEV_GET_MOUNTED]) == null ? void 0 : _store$DEV_GET_MOUNTE.call(store, atom);\n\n    if (!mounted) {\n      return [];\n    }\n\n    var dependents = mounted.d;\n    var atomState = ((_store$DEV_GET_ATOM_S = store[DEV_GET_ATOM_STATE]) == null ? void 0 : _store$DEV_GET_ATOM_S.call(store, atom)) || {};\n    return [[atomToPrintable(atom), {\n      value: atomState.e || atomState.p || atomState.w || atomState.v,\n      dependents: Array.from(dependents).map(atomToPrintable)\n    }]];\n  }));\n};\n\nvar useDebugState = function useDebugState(scopeContainer) {\n  var store = scopeContainer[0],\n      devMutableSource = scopeContainer[2],\n      devSubscribe = scopeContainer[3];\n  var atoms = useMutableSource(devMutableSource, react.useCallback(function (devContainer) {\n    return devContainer.atoms;\n  }, []), devSubscribe);\n  react.useDebugValue([store, atoms], stateToPrintable);\n};\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\n  if (typeof read === 'function') {\n    config.read = read;\n  } else {\n    config.init = read;\n\n    config.read = function (get) {\n      return get(config);\n    };\n\n    config.write = function (get, set, update) {\n      set(config, typeof update === 'function' ? update(get(config)) : update);\n    };\n  }\n\n  if (write) {\n    config.write = write;\n  }\n\n  return config;\n}\n\nvar isWritable$1 = function isWritable(atom) {\n  return !!atom.write;\n};\n\nfunction useAtom(atom, scope) {\n  var getAtomValue = react.useCallback(function (store) {\n    var atomState = store[READ_ATOM](atom);\n\n    if (atomState.e) {\n      throw atomState.e;\n    }\n\n    if (atomState.p) {\n      throw atomState.p;\n    }\n\n    if (atomState.w) {\n      throw atomState.w;\n    }\n\n    if ('v' in atomState) {\n      return atomState.v;\n    }\n\n    throw new Error('no atom value');\n  }, [atom]);\n  var subscribe = react.useCallback(function (store, callback) {\n    return store[SUBSCRIBE_ATOM](atom, callback);\n  }, [atom]);\n\n  if ('scope' in atom) {\n    console.warn('atom.scope is deprecated. Please do useAtom(atom, scope) instead.');\n    scope = atom.scope;\n  }\n\n  var ScopeContext = getScopeContext(scope);\n\n  var _useContext = react.useContext(ScopeContext),\n      store = _useContext[0],\n      mutableSource = _useContext[1];\n\n  var value = useMutableSource(mutableSource, getAtomValue, subscribe);\n  react.useEffect(function () {\n    store[FLUSH_PENDING]();\n  });\n  var setAtom = react.useCallback(function (update) {\n    if (isWritable$1(atom)) {\n      store[WRITE_ATOM](atom, update);\n    } else {\n      throw new Error('not writable atom');\n    }\n  }, [store, atom]);\n  react.useDebugValue(value);\n  return [value, setAtom];\n}\n\nfunction getValue(atom, scope) {\n  if (scope === void 0) {\n    scope = undefined;\n  }\n\n  var _getScopeContainer = getScopeContainer(scope),\n      store = _getScopeContainer[0];\n\n  return store[READ_ATOM](atom);\n}\nvar setValue = function setValue(atom, update, scope) {\n  if (scope === void 0) {\n    scope = undefined;\n  }\n\n  if (isWritable(atom)) {\n    var _getScopeContainer2 = getScopeContainer(scope),\n        store = _getScopeContainer2[0];\n\n    store[WRITE_ATOM](atom, update);\n  } else {\n    throw new Error('not writable atom');\n  }\n};\n\nvar isWritable = function isWritable(atom) {\n  return !!atom.write;\n};\n\nexports.Provider = Provider;\nexports.SECRET_INTERNAL_getScopeContext = getScopeContext;\nexports.SECRET_INTERNAL_useMutableSource = useMutableSource;\nexports.atom = atom;\nexports.getValue = getValue;\nexports.setValue = setValue;\nexports.useAtom = useAtom;\n"]}