monorepo/website/node_modules/.cache/babel-loader/38807d24eb4cf5d81ab711cabe1b5d61d75fcff0b43a6702ab69a4593ffe4f98.json
stcb 985fd06b56
All checks were successful
/ mirror (push) Successful in 5s
/ deploy (push) Successful in 36s
Added proper p-256 key generation at app first launch and in settings
2025-02-13 15:35:18 +02:00

1 line
170 KiB
JSON

{"ast":null,"code":"import \"core-js/modules/es.array.push.js\";\nimport \"core-js/modules/es.array.to-reversed.js\";\nimport \"core-js/modules/es.array.to-sorted.js\";\nimport \"core-js/modules/es.array.to-spliced.js\";\nimport \"core-js/modules/es.regexp.flags.js\";\nimport \"core-js/modules/es.set.difference.v2.js\";\nimport \"core-js/modules/es.set.intersection.v2.js\";\nimport \"core-js/modules/es.set.is-disjoint-from.v2.js\";\nimport \"core-js/modules/es.set.is-subset-of.v2.js\";\nimport \"core-js/modules/es.set.is-superset-of.v2.js\";\nimport \"core-js/modules/es.set.symmetric-difference.v2.js\";\nimport \"core-js/modules/es.set.union.v2.js\";\n/**\n* @vue/reactivity v3.5.6\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { hasChanged, extend, isArray, isIntegerKey, isSymbol, isMap, hasOwn, isObject, makeMap, capitalize, toRawType, def, isFunction, EMPTY_OBJ, isSet, isPlainObject, NOOP, remove } from '@vue/shared';\nfunction warn(msg, ...args) {\n console.warn(`[Vue warn] ${msg}`, ...args);\n}\nlet activeEffectScope;\nclass EffectScope {\n constructor(detached = false) {\n this.detached = detached;\n /**\n * @internal\n */\n this._active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this._isPaused = false;\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;\n }\n }\n get active() {\n return this._active;\n }\n pause() {\n if (this._active) {\n this._isPaused = true;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].pause();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].pause();\n }\n }\n }\n /**\n * Resumes the effect scope, including all child scopes and effects.\n */\n resume() {\n if (this._active) {\n if (this._isPaused) {\n this._isPaused = false;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].resume();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].resume();\n }\n }\n }\n }\n run(fn) {\n if (this._active) {\n const currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n } finally {\n activeEffectScope = currentEffectScope;\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`cannot run an inactive effect scope.`);\n }\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n on() {\n activeEffectScope = this;\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n off() {\n activeEffectScope = this.parent;\n }\n stop(fromParent) {\n if (this._active) {\n let i, l;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].stop();\n }\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n }\n if (!this.detached && this.parent && !fromParent) {\n const last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = void 0;\n this._active = false;\n }\n }\n}\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn, failSilently = false) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(`onScopeDispose() is called when there is no active effect scope to be associated with.`);\n }\n}\nlet activeSub;\nconst EffectFlags = {\n \"ACTIVE\": 1,\n \"1\": \"ACTIVE\",\n \"RUNNING\": 2,\n \"2\": \"RUNNING\",\n \"TRACKING\": 4,\n \"4\": \"TRACKING\",\n \"NOTIFIED\": 8,\n \"8\": \"NOTIFIED\",\n \"DIRTY\": 16,\n \"16\": \"DIRTY\",\n \"ALLOW_RECURSE\": 32,\n \"32\": \"ALLOW_RECURSE\",\n \"PAUSED\": 64,\n \"64\": \"PAUSED\"\n};\nconst pausedQueueEffects = /* @__PURE__ */new WeakSet();\nclass ReactiveEffect {\n constructor(fn) {\n this.fn = fn;\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 1 | 4;\n /**\n * @internal\n */\n this.next = void 0;\n /**\n * @internal\n */\n this.cleanup = void 0;\n this.scheduler = void 0;\n if (activeEffectScope && activeEffectScope.active) {\n activeEffectScope.effects.push(this);\n }\n }\n pause() {\n this.flags |= 64;\n }\n resume() {\n if (this.flags & 64) {\n this.flags &= ~64;\n if (pausedQueueEffects.has(this)) {\n pausedQueueEffects.delete(this);\n this.trigger();\n }\n }\n }\n /**\n * @internal\n */\n notify() {\n if (this.flags & 2 && !(this.flags & 32)) {\n return;\n }\n if (!(this.flags & 8)) {\n batch(this);\n }\n }\n run() {\n if (!(this.flags & 1)) {\n return this.fn();\n }\n this.flags |= 2;\n cleanupEffect(this);\n prepareDeps(this);\n const prevEffect = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = this;\n shouldTrack = true;\n try {\n return this.fn();\n } finally {\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub !== this) {\n warn(\"Active effect was not restored correctly - this is likely a Vue internal bug.\");\n }\n cleanupDeps(this);\n activeSub = prevEffect;\n shouldTrack = prevShouldTrack;\n this.flags &= ~2;\n }\n }\n stop() {\n if (this.flags & 1) {\n for (let link = this.deps; link; link = link.nextDep) {\n removeSub(link);\n }\n this.deps = this.depsTail = void 0;\n cleanupEffect(this);\n this.onStop && this.onStop();\n this.flags &= ~1;\n }\n }\n trigger() {\n if (this.flags & 64) {\n pausedQueueEffects.add(this);\n } else if (this.scheduler) {\n this.scheduler();\n } else {\n this.runIfDirty();\n }\n }\n /**\n * @internal\n */\n runIfDirty() {\n if (isDirty(this)) {\n this.run();\n }\n }\n get dirty() {\n return isDirty(this);\n }\n}\nlet batchDepth = 0;\nlet batchedSub;\nfunction batch(sub) {\n sub.flags |= 8;\n sub.next = batchedSub;\n batchedSub = sub;\n}\nfunction startBatch() {\n batchDepth++;\n}\nfunction endBatch() {\n if (--batchDepth > 0) {\n return;\n }\n let error;\n while (batchedSub) {\n let e = batchedSub;\n batchedSub = void 0;\n while (e) {\n const next = e.next;\n e.next = void 0;\n e.flags &= ~8;\n if (e.flags & 1) {\n try {\n ;\n e.trigger();\n } catch (err) {\n if (!error) error = err;\n }\n }\n e = next;\n }\n }\n if (error) throw error;\n}\nfunction prepareDeps(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n link.version = -1;\n link.prevActiveLink = link.dep.activeLink;\n link.dep.activeLink = link;\n }\n}\nfunction cleanupDeps(sub) {\n let head;\n let tail = sub.depsTail;\n let link = tail;\n while (link) {\n const prev = link.prevDep;\n if (link.version === -1) {\n if (link === tail) tail = prev;\n removeSub(link);\n removeDep(link);\n } else {\n head = link;\n }\n link.dep.activeLink = link.prevActiveLink;\n link.prevActiveLink = void 0;\n link = prev;\n }\n sub.deps = head;\n sub.depsTail = tail;\n}\nfunction isDirty(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) {\n return true;\n }\n }\n if (sub._dirty) {\n return true;\n }\n return false;\n}\nfunction refreshComputed(computed) {\n if (computed.flags & 4 && !(computed.flags & 16)) {\n return;\n }\n computed.flags &= ~16;\n if (computed.globalVersion === globalVersion) {\n return;\n }\n computed.globalVersion = globalVersion;\n const dep = computed.dep;\n computed.flags |= 2;\n if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {\n computed.flags &= ~2;\n return;\n }\n const prevSub = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = computed;\n shouldTrack = true;\n try {\n prepareDeps(computed);\n const value = computed.fn(computed._value);\n if (dep.version === 0 || hasChanged(value, computed._value)) {\n computed._value = value;\n dep.version++;\n }\n } catch (err) {\n dep.version++;\n throw err;\n } finally {\n activeSub = prevSub;\n shouldTrack = prevShouldTrack;\n cleanupDeps(computed);\n computed.flags &= ~2;\n }\n}\nfunction removeSub(link) {\n const {\n dep,\n prevSub,\n nextSub\n } = link;\n if (prevSub) {\n prevSub.nextSub = nextSub;\n link.prevSub = void 0;\n }\n if (nextSub) {\n nextSub.prevSub = prevSub;\n link.nextSub = void 0;\n }\n if (dep.subs === link) {\n dep.subs = prevSub;\n }\n if (!dep.subs && dep.computed) {\n dep.computed.flags &= ~4;\n for (let l = dep.computed.deps; l; l = l.nextDep) {\n removeSub(l);\n }\n }\n}\nfunction removeDep(link) {\n const {\n prevDep,\n nextDep\n } = link;\n if (prevDep) {\n prevDep.nextDep = nextDep;\n link.prevDep = void 0;\n }\n if (nextDep) {\n nextDep.prevDep = prevDep;\n link.nextDep = void 0;\n }\n}\nfunction effect(fn, options) {\n if (fn.effect instanceof ReactiveEffect) {\n fn = fn.effect.fn;\n }\n const e = new ReactiveEffect(fn);\n if (options) {\n extend(e, options);\n }\n try {\n e.run();\n } catch (err) {\n e.stop();\n throw err;\n }\n const runner = e.run.bind(e);\n runner.effect = e;\n return runner;\n}\nfunction stop(runner) {\n runner.effect.stop();\n}\nlet shouldTrack = true;\nconst trackStack = [];\nfunction pauseTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = false;\n}\nfunction enableTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = true;\n}\nfunction resetTracking() {\n const last = trackStack.pop();\n shouldTrack = last === void 0 ? true : last;\n}\nfunction onEffectCleanup(fn, failSilently = false) {\n if (activeSub instanceof ReactiveEffect) {\n activeSub.cleanup = fn;\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(`onEffectCleanup() was called when there was no active effect to associate with.`);\n }\n}\nfunction cleanupEffect(e) {\n const {\n cleanup\n } = e;\n e.cleanup = void 0;\n if (cleanup) {\n const prevSub = activeSub;\n activeSub = void 0;\n try {\n cleanup();\n } finally {\n activeSub = prevSub;\n }\n }\n}\nlet globalVersion = 0;\nclass Link {\n constructor(sub, dep) {\n this.sub = sub;\n this.dep = dep;\n this.version = dep.version;\n this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0;\n }\n}\nclass Dep {\n constructor(computed) {\n this.computed = computed;\n this.version = 0;\n /**\n * Link between this dep and the current active effect\n */\n this.activeLink = void 0;\n /**\n * Doubly linked list representing the subscribing effects (tail)\n */\n this.subs = void 0;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.subsHead = void 0;\n }\n }\n track(debugInfo) {\n if (!activeSub || !shouldTrack || activeSub === this.computed) {\n return;\n }\n let link = this.activeLink;\n if (link === void 0 || link.sub !== activeSub) {\n link = this.activeLink = new Link(activeSub, this);\n if (!activeSub.deps) {\n activeSub.deps = activeSub.depsTail = link;\n } else {\n link.prevDep = activeSub.depsTail;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n }\n if (activeSub.flags & 4) {\n addSub(link);\n }\n } else if (link.version === -1) {\n link.version = this.version;\n if (link.nextDep) {\n const next = link.nextDep;\n next.prevDep = link.prevDep;\n if (link.prevDep) {\n link.prevDep.nextDep = next;\n }\n link.prevDep = activeSub.depsTail;\n link.nextDep = void 0;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n if (activeSub.deps === link) {\n activeSub.deps = next;\n }\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub.onTrack) {\n activeSub.onTrack(extend({\n effect: activeSub\n }, debugInfo));\n }\n return link;\n }\n trigger(debugInfo) {\n this.version++;\n globalVersion++;\n this.notify(debugInfo);\n }\n notify(debugInfo) {\n startBatch();\n try {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n for (let head = this.subsHead; head; head = head.nextSub) {\n if (head.sub.onTrigger && !(head.sub.flags & 8)) {\n head.sub.onTrigger(extend({\n effect: head.sub\n }, debugInfo));\n }\n }\n }\n for (let link = this.subs; link; link = link.prevSub) {\n if (link.sub.notify()) {\n ;\n link.sub.dep.notify();\n }\n }\n } finally {\n endBatch();\n }\n }\n}\nfunction addSub(link) {\n const computed = link.dep.computed;\n if (computed && !link.dep.subs) {\n computed.flags |= 4 | 16;\n for (let l = computed.deps; l; l = l.nextDep) {\n addSub(l);\n }\n }\n const currentTail = link.dep.subs;\n if (currentTail !== link) {\n link.prevSub = currentTail;\n if (currentTail) currentTail.nextSub = link;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && link.dep.subsHead === void 0) {\n link.dep.subsHead = link;\n }\n link.dep.subs = link;\n}\nconst targetMap = /* @__PURE__ */new WeakMap();\nconst ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"Object iterate\" : \"\");\nconst MAP_KEY_ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"Map keys iterate\" : \"\");\nconst ARRAY_ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"Array iterate\" : \"\");\nfunction track(target, type, key) {\n if (shouldTrack && activeSub) {\n let depsMap = targetMap.get(target);\n if (!depsMap) {\n targetMap.set(target, depsMap = /* @__PURE__ */new Map());\n }\n let dep = depsMap.get(key);\n if (!dep) {\n depsMap.set(key, dep = new Dep());\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.track({\n target,\n type,\n key\n });\n } else {\n dep.track();\n }\n }\n}\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\n const depsMap = targetMap.get(target);\n if (!depsMap) {\n globalVersion++;\n return;\n }\n const run = dep => {\n if (dep) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.trigger({\n target,\n type,\n key,\n newValue,\n oldValue,\n oldTarget\n });\n } else {\n dep.trigger();\n }\n }\n };\n startBatch();\n if (type === \"clear\") {\n depsMap.forEach(run);\n } else {\n const targetIsArray = isArray(target);\n const isArrayIndex = targetIsArray && isIntegerKey(key);\n if (targetIsArray && key === \"length\") {\n const newLength = Number(newValue);\n depsMap.forEach((dep, key2) => {\n if (key2 === \"length\" || key2 === ARRAY_ITERATE_KEY || !isSymbol(key2) && key2 >= newLength) {\n run(dep);\n }\n });\n } else {\n if (key !== void 0) {\n run(depsMap.get(key));\n }\n if (isArrayIndex) {\n run(depsMap.get(ARRAY_ITERATE_KEY));\n }\n switch (type) {\n case \"add\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n } else if (isArrayIndex) {\n run(depsMap.get(\"length\"));\n }\n break;\n case \"delete\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n }\n break;\n case \"set\":\n if (isMap(target)) {\n run(depsMap.get(ITERATE_KEY));\n }\n break;\n }\n }\n }\n endBatch();\n}\nfunction getDepFromReactive(object, key) {\n var _a;\n return (_a = targetMap.get(object)) == null ? void 0 : _a.get(key);\n}\nfunction reactiveReadArray(array) {\n const raw = toRaw(array);\n if (raw === array) return raw;\n track(raw, \"iterate\", ARRAY_ITERATE_KEY);\n return isShallow(array) ? raw : raw.map(toReactive);\n}\nfunction shallowReadArray(arr) {\n track(arr = toRaw(arr), \"iterate\", ARRAY_ITERATE_KEY);\n return arr;\n}\nconst arrayInstrumentations = {\n __proto__: null,\n [Symbol.iterator]() {\n return iterator(this, Symbol.iterator, toReactive);\n },\n concat(...args) {\n return reactiveReadArray(this).concat(...args.map(x => isArray(x) ? reactiveReadArray(x) : x));\n },\n entries() {\n return iterator(this, \"entries\", value => {\n value[1] = toReactive(value[1]);\n return value;\n });\n },\n every(fn, thisArg) {\n return apply(this, \"every\", fn, thisArg, void 0, arguments);\n },\n filter(fn, thisArg) {\n return apply(this, \"filter\", fn, thisArg, v => v.map(toReactive), arguments);\n },\n find(fn, thisArg) {\n return apply(this, \"find\", fn, thisArg, toReactive, arguments);\n },\n findIndex(fn, thisArg) {\n return apply(this, \"findIndex\", fn, thisArg, void 0, arguments);\n },\n findLast(fn, thisArg) {\n return apply(this, \"findLast\", fn, thisArg, toReactive, arguments);\n },\n findLastIndex(fn, thisArg) {\n return apply(this, \"findLastIndex\", fn, thisArg, void 0, arguments);\n },\n // flat, flatMap could benefit from ARRAY_ITERATE but are not straight-forward to implement\n forEach(fn, thisArg) {\n return apply(this, \"forEach\", fn, thisArg, void 0, arguments);\n },\n includes(...args) {\n return searchProxy(this, \"includes\", args);\n },\n indexOf(...args) {\n return searchProxy(this, \"indexOf\", args);\n },\n join(separator) {\n return reactiveReadArray(this).join(separator);\n },\n // keys() iterator only reads `length`, no optimisation required\n lastIndexOf(...args) {\n return searchProxy(this, \"lastIndexOf\", args);\n },\n map(fn, thisArg) {\n return apply(this, \"map\", fn, thisArg, void 0, arguments);\n },\n pop() {\n return noTracking(this, \"pop\");\n },\n push(...args) {\n return noTracking(this, \"push\", args);\n },\n reduce(fn, ...args) {\n return reduce(this, \"reduce\", fn, args);\n },\n reduceRight(fn, ...args) {\n return reduce(this, \"reduceRight\", fn, args);\n },\n shift() {\n return noTracking(this, \"shift\");\n },\n // slice could use ARRAY_ITERATE but also seems to beg for range tracking\n some(fn, thisArg) {\n return apply(this, \"some\", fn, thisArg, void 0, arguments);\n },\n splice(...args) {\n return noTracking(this, \"splice\", args);\n },\n toReversed() {\n return reactiveReadArray(this).toReversed();\n },\n toSorted(comparer) {\n return reactiveReadArray(this).toSorted(comparer);\n },\n toSpliced(...args) {\n return reactiveReadArray(this).toSpliced(...args);\n },\n unshift(...args) {\n return noTracking(this, \"unshift\", args);\n },\n values() {\n return iterator(this, \"values\", toReactive);\n }\n};\nfunction iterator(self, method, wrapValue) {\n const arr = shallowReadArray(self);\n const iter = arr[method]();\n if (arr !== self && !isShallow(self)) {\n iter._next = iter.next;\n iter.next = () => {\n const result = iter._next();\n if (result.value) {\n result.value = wrapValue(result.value);\n }\n return result;\n };\n }\n return iter;\n}\nconst arrayProto = Array.prototype;\nfunction apply(self, method, fn, thisArg, wrappedRetFn, args) {\n const arr = shallowReadArray(self);\n const needsWrap = arr !== self && !isShallow(self);\n const methodFn = arr[method];\n if (methodFn !== arrayProto[method]) {\n const result2 = methodFn.apply(self, args);\n return needsWrap ? toReactive(result2) : result2;\n }\n let wrappedFn = fn;\n if (arr !== self) {\n if (needsWrap) {\n wrappedFn = function (item, index) {\n return fn.call(this, toReactive(item), index, self);\n };\n } else if (fn.length > 2) {\n wrappedFn = function (item, index) {\n return fn.call(this, item, index, self);\n };\n }\n }\n const result = methodFn.call(arr, wrappedFn, thisArg);\n return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result;\n}\nfunction reduce(self, method, fn, args) {\n const arr = shallowReadArray(self);\n let wrappedFn = fn;\n if (arr !== self) {\n if (!isShallow(self)) {\n wrappedFn = function (acc, item, index) {\n return fn.call(this, acc, toReactive(item), index, self);\n };\n } else if (fn.length > 3) {\n wrappedFn = function (acc, item, index) {\n return fn.call(this, acc, item, index, self);\n };\n }\n }\n return arr[method](wrappedFn, ...args);\n}\nfunction searchProxy(self, method, args) {\n const arr = toRaw(self);\n track(arr, \"iterate\", ARRAY_ITERATE_KEY);\n const res = arr[method](...args);\n if ((res === -1 || res === false) && isProxy(args[0])) {\n args[0] = toRaw(args[0]);\n return arr[method](...args);\n }\n return res;\n}\nfunction noTracking(self, method, args = []) {\n pauseTracking();\n startBatch();\n const res = toRaw(self)[method].apply(self, args);\n endBatch();\n resetTracking();\n return res;\n}\nconst isNonTrackableKeys = /* @__PURE__ */makeMap(`__proto__,__v_isRef,__isVue`);\nconst builtInSymbols = new Set(/* @__PURE__ */Object.getOwnPropertyNames(Symbol).filter(key => key !== \"arguments\" && key !== \"caller\").map(key => Symbol[key]).filter(isSymbol));\nfunction hasOwnProperty(key) {\n if (!isSymbol(key)) key = String(key);\n const obj = toRaw(this);\n track(obj, \"has\", key);\n return obj.hasOwnProperty(key);\n}\nclass BaseReactiveHandler {\n constructor(_isReadonly = false, _isShallow = false) {\n this._isReadonly = _isReadonly;\n this._isShallow = _isShallow;\n }\n get(target, key, receiver) {\n const isReadonly2 = this._isReadonly,\n isShallow2 = this._isShallow;\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_isShallow\") {\n return isShallow2;\n } else if (key === \"__v_raw\") {\n if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) ||\n // receiver is not the reactive proxy, but has the same prototype\n // this means the receiver is a user proxy of the reactive proxy\n Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {\n return target;\n }\n return;\n }\n const targetIsArray = isArray(target);\n if (!isReadonly2) {\n let fn;\n if (targetIsArray && (fn = arrayInstrumentations[key])) {\n return fn;\n }\n if (key === \"hasOwnProperty\") {\n return hasOwnProperty;\n }\n }\n const res = Reflect.get(target, key,\n // if this is a proxy wrapping a ref, return methods using the raw ref\n // as receiver so that we don't have to call `toRaw` on the ref in all\n // its class methods\n isRef(target) ? target : receiver);\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\n return res;\n }\n if (!isReadonly2) {\n track(target, \"get\", key);\n }\n if (isShallow2) {\n return res;\n }\n if (isRef(res)) {\n return targetIsArray && isIntegerKey(key) ? res : res.value;\n }\n if (isObject(res)) {\n return isReadonly2 ? readonly(res) : reactive(res);\n }\n return res;\n }\n}\nclass MutableReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(false, isShallow2);\n }\n set(target, key, value, receiver) {\n let oldValue = target[key];\n if (!this._isShallow) {\n const isOldValueReadonly = isReadonly(oldValue);\n if (!isShallow(value) && !isReadonly(value)) {\n oldValue = toRaw(oldValue);\n value = toRaw(value);\n }\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\n if (isOldValueReadonly) {\n return false;\n } else {\n oldValue.value = value;\n return true;\n }\n }\n }\n const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);\n const result = Reflect.set(target, key, value, isRef(target) ? target : receiver);\n if (target === toRaw(receiver)) {\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n }\n return result;\n }\n deleteProperty(target, key) {\n const hadKey = hasOwn(target, key);\n const oldValue = target[key];\n const result = Reflect.deleteProperty(target, key);\n if (result && hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n }\n has(target, key) {\n const result = Reflect.has(target, key);\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\n track(target, \"has\", key);\n }\n return result;\n }\n ownKeys(target) {\n track(target, \"iterate\", isArray(target) ? \"length\" : ITERATE_KEY);\n return Reflect.ownKeys(target);\n }\n}\nclass ReadonlyReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(true, isShallow2);\n }\n set(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`Set operation on key \"${String(key)}\" failed: target is readonly.`, target);\n }\n return true;\n }\n deleteProperty(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`Delete operation on key \"${String(key)}\" failed: target is readonly.`, target);\n }\n return true;\n }\n}\nconst mutableHandlers = /* @__PURE__ */new MutableReactiveHandler();\nconst readonlyHandlers = /* @__PURE__ */new ReadonlyReactiveHandler();\nconst shallowReactiveHandlers = /* @__PURE__ */new MutableReactiveHandler(true);\nconst shallowReadonlyHandlers = /* @__PURE__ */new ReadonlyReactiveHandler(true);\nconst toShallow = value => value;\nconst getProto = v => Reflect.getPrototypeOf(v);\nfunction get(target, key, isReadonly2 = false, isShallow2 = false) {\n target = target[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly2) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"get\", key);\n }\n track(rawTarget, \"get\", rawKey);\n }\n const {\n has: has2\n } = getProto(rawTarget);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n if (has2.call(rawTarget, key)) {\n return wrap(target.get(key));\n } else if (has2.call(rawTarget, rawKey)) {\n return wrap(target.get(rawKey));\n } else if (target !== rawTarget) {\n target.get(key);\n }\n}\nfunction has(key, isReadonly2 = false) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly2) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"has\", key);\n }\n track(rawTarget, \"has\", rawKey);\n }\n return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);\n}\nfunction size(target, isReadonly2 = false) {\n target = target[\"__v_raw\"];\n !isReadonly2 && track(toRaw(target), \"iterate\", ITERATE_KEY);\n return Reflect.get(target, \"size\", target);\n}\nfunction add(value, _isShallow = false) {\n if (!_isShallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const proto = getProto(target);\n const hadKey = proto.has.call(target, value);\n if (!hadKey) {\n target.add(value);\n trigger(target, \"add\", value, value);\n }\n return this;\n}\nfunction set(key, value, _isShallow = false) {\n if (!_isShallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const {\n has: has2,\n get: get2\n } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2.call(target, key);\n target.set(key, value);\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n return this;\n}\nfunction deleteEntry(key) {\n const target = toRaw(this);\n const {\n has: has2,\n get: get2\n } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2 ? get2.call(target, key) : void 0;\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n}\nfunction clear() {\n const target = toRaw(this);\n const hadItems = target.size !== 0;\n const oldTarget = !!(process.env.NODE_ENV !== \"production\") ? isMap(target) ? new Map(target) : new Set(target) : void 0;\n const result = target.clear();\n if (hadItems) {\n trigger(target, \"clear\", void 0, void 0, oldTarget);\n }\n return result;\n}\nfunction createForEach(isReadonly2, isShallow2) {\n return function forEach(callback, thisArg) {\n const observed = this;\n const target = observed[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n !isReadonly2 && track(rawTarget, \"iterate\", ITERATE_KEY);\n return target.forEach((value, key) => {\n return callback.call(thisArg, wrap(value), wrap(key), observed);\n });\n };\n}\nfunction createIterableMethod(method, isReadonly2, isShallow2) {\n return function (...args) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const targetIsMap = isMap(rawTarget);\n const isPair = method === \"entries\" || method === Symbol.iterator && targetIsMap;\n const isKeyOnly = method === \"keys\" && targetIsMap;\n const innerIterator = target[method](...args);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n !isReadonly2 && track(rawTarget, \"iterate\", isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY);\n return {\n // iterator protocol\n next() {\n const {\n value,\n done\n } = innerIterator.next();\n return done ? {\n value,\n done\n } : {\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\n done\n };\n },\n // iterable protocol\n [Symbol.iterator]() {\n return this;\n }\n };\n };\n}\nfunction createReadonlyMethod(type) {\n return function (...args) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\n warn(`${capitalize(type)} operation ${key}failed: target is readonly.`, toRaw(this));\n }\n return type === \"delete\" ? false : type === \"clear\" ? void 0 : this;\n };\n}\nfunction createInstrumentations() {\n const mutableInstrumentations2 = {\n get(key) {\n return get(this, key);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, false)\n };\n const shallowInstrumentations2 = {\n get(key) {\n return get(this, key, false, true);\n },\n get size() {\n return size(this);\n },\n has,\n add(value) {\n return add.call(this, value, true);\n },\n set(key, value) {\n return set.call(this, key, value, true);\n },\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, true)\n };\n const readonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, false)\n };\n const shallowReadonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, true)\n };\n const iteratorMethods = [\"keys\", \"values\", \"entries\", Symbol.iterator];\n iteratorMethods.forEach(method => {\n mutableInstrumentations2[method] = createIterableMethod(method, false, false);\n readonlyInstrumentations2[method] = createIterableMethod(method, true, false);\n shallowInstrumentations2[method] = createIterableMethod(method, false, true);\n shallowReadonlyInstrumentations2[method] = createIterableMethod(method, true, true);\n });\n return [mutableInstrumentations2, readonlyInstrumentations2, shallowInstrumentations2, shallowReadonlyInstrumentations2];\n}\nconst [mutableInstrumentations, readonlyInstrumentations, shallowInstrumentations, shallowReadonlyInstrumentations] = /* @__PURE__ */createInstrumentations();\nfunction createInstrumentationGetter(isReadonly2, shallow) {\n const instrumentations = shallow ? isReadonly2 ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly2 ? readonlyInstrumentations : mutableInstrumentations;\n return (target, key, receiver) => {\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_raw\") {\n return target;\n }\n return Reflect.get(hasOwn(instrumentations, key) && key in target ? instrumentations : target, key, receiver);\n };\n}\nconst mutableCollectionHandlers = {\n get: /* @__PURE__ */createInstrumentationGetter(false, false)\n};\nconst shallowCollectionHandlers = {\n get: /* @__PURE__ */createInstrumentationGetter(false, true)\n};\nconst readonlyCollectionHandlers = {\n get: /* @__PURE__ */createInstrumentationGetter(true, false)\n};\nconst shallowReadonlyCollectionHandlers = {\n get: /* @__PURE__ */createInstrumentationGetter(true, true)\n};\nfunction checkIdentityKeys(target, has2, key) {\n const rawKey = toRaw(key);\n if (rawKey !== key && has2.call(target, rawKey)) {\n const type = toRawType(target);\n warn(`Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);\n }\n}\nconst reactiveMap = /* @__PURE__ */new WeakMap();\nconst shallowReactiveMap = /* @__PURE__ */new WeakMap();\nconst readonlyMap = /* @__PURE__ */new WeakMap();\nconst shallowReadonlyMap = /* @__PURE__ */new WeakMap();\nfunction targetTypeMap(rawType) {\n switch (rawType) {\n case \"Object\":\n case \"Array\":\n return 1 /* COMMON */;\n case \"Map\":\n case \"Set\":\n case \"WeakMap\":\n case \"WeakSet\":\n return 2 /* COLLECTION */;\n default:\n return 0 /* INVALID */;\n }\n}\nfunction getTargetType(value) {\n return value[\"__v_skip\"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));\n}\nfunction reactive(target) {\n if (isReadonly(target)) {\n return target;\n }\n return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap);\n}\nfunction shallowReactive(target) {\n return createReactiveObject(target, false, shallowReactiveHandlers, shallowCollectionHandlers, shallowReactiveMap);\n}\nfunction readonly(target) {\n return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap);\n}\nfunction shallowReadonly(target) {\n return createReactiveObject(target, true, shallowReadonlyHandlers, shallowReadonlyCollectionHandlers, shallowReadonlyMap);\n}\nfunction createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {\n if (!isObject(target)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`value cannot be made ${isReadonly2 ? \"readonly\" : \"reactive\"}: ${String(target)}`);\n }\n return target;\n }\n if (target[\"__v_raw\"] && !(isReadonly2 && target[\"__v_isReactive\"])) {\n return target;\n }\n const existingProxy = proxyMap.get(target);\n if (existingProxy) {\n return existingProxy;\n }\n const targetType = getTargetType(target);\n if (targetType === 0 /* INVALID */) {\n return target;\n }\n const proxy = new Proxy(target, targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers);\n proxyMap.set(target, proxy);\n return proxy;\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\"]);\n }\n return !!(value && value[\"__v_isReactive\"]);\n}\nfunction isReadonly(value) {\n return !!(value && value[\"__v_isReadonly\"]);\n}\nfunction isShallow(value) {\n return !!(value && value[\"__v_isShallow\"]);\n}\nfunction isProxy(value) {\n return value ? !!value[\"__v_raw\"] : false;\n}\nfunction toRaw(observed) {\n const raw = observed && observed[\"__v_raw\"];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n if (!hasOwn(value, \"__v_skip\") && Object.isExtensible(value)) {\n def(value, \"__v_skip\", true);\n }\n return value;\n}\nconst toReactive = value => isObject(value) ? reactive(value) : value;\nconst toReadonly = value => isObject(value) ? readonly(value) : value;\nfunction isRef(r) {\n return r ? r[\"__v_isRef\"] === true : false;\n}\nfunction ref(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n return new RefImpl(rawValue, shallow);\n}\nclass RefImpl {\n constructor(value, isShallow2) {\n this.dep = new Dep();\n this[\"__v_isRef\"] = true;\n this[\"__v_isShallow\"] = false;\n this._rawValue = isShallow2 ? value : toRaw(value);\n this._value = isShallow2 ? value : toReactive(value);\n this[\"__v_isShallow\"] = isShallow2;\n }\n get value() {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n });\n } else {\n this.dep.track();\n }\n return this._value;\n }\n set value(newValue) {\n const oldValue = this._rawValue;\n const useDirectValue = this[\"__v_isShallow\"] || isShallow(newValue) || isReadonly(newValue);\n newValue = useDirectValue ? newValue : toRaw(newValue);\n if (hasChanged(newValue, oldValue)) {\n this._rawValue = newValue;\n this._value = useDirectValue ? newValue : toReactive(newValue);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.trigger({\n target: this,\n type: \"set\",\n key: \"value\",\n newValue,\n oldValue\n });\n } else {\n this.dep.trigger();\n }\n }\n }\n}\nfunction triggerRef(ref2) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n ref2.dep.trigger({\n target: ref2,\n type: \"set\",\n key: \"value\",\n newValue: ref2._value\n });\n } else {\n ref2.dep.trigger();\n }\n}\nfunction unref(ref2) {\n return isRef(ref2) ? ref2.value : ref2;\n}\nfunction toValue(source) {\n return isFunction(source) ? source() : unref(source);\n}\nconst shallowUnwrapHandlers = {\n get: (target, key, receiver) => key === \"__v_raw\" ? target : unref(Reflect.get(target, key, receiver)),\n set: (target, key, value, receiver) => {\n const oldValue = target[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n } else {\n return Reflect.set(target, key, value, receiver);\n }\n }\n};\nfunction proxyRefs(objectWithRefs) {\n return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);\n}\nclass CustomRefImpl {\n constructor(factory) {\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n const dep = this.dep = new Dep();\n const {\n get,\n set\n } = factory(dep.track.bind(dep), dep.trigger.bind(dep));\n this._get = get;\n this._set = set;\n }\n get value() {\n return this._value = this._get();\n }\n set value(newVal) {\n this._set(newVal);\n }\n}\nfunction customRef(factory) {\n return new CustomRefImpl(factory);\n}\nfunction toRefs(object) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isProxy(object)) {\n warn(`toRefs() expects a reactive object but received a plain one.`);\n }\n const ret = isArray(object) ? new Array(object.length) : {};\n for (const key in object) {\n ret[key] = propertyToRef(object, key);\n }\n return ret;\n}\nclass ObjectRefImpl {\n constructor(_object, _key, _defaultValue) {\n this._object = _object;\n this._key = _key;\n this._defaultValue = _defaultValue;\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n }\n get value() {\n const val = this._object[this._key];\n return this._value = val === void 0 ? this._defaultValue : val;\n }\n set value(newVal) {\n this._object[this._key] = newVal;\n }\n get dep() {\n return getDepFromReactive(toRaw(this._object), this._key);\n }\n}\nclass GetterRefImpl {\n constructor(_getter) {\n this._getter = _getter;\n this[\"__v_isRef\"] = true;\n this[\"__v_isReadonly\"] = true;\n this._value = void 0;\n }\n get value() {\n return this._value = this._getter();\n }\n}\nfunction toRef(source, key, defaultValue) {\n if (isRef(source)) {\n return source;\n } else if (isFunction(source)) {\n return new GetterRefImpl(source);\n } else if (isObject(source) && arguments.length > 1) {\n return propertyToRef(source, key, defaultValue);\n } else {\n return ref(source);\n }\n}\nfunction propertyToRef(source, key, defaultValue) {\n const val = source[key];\n return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);\n}\nclass ComputedRefImpl {\n constructor(fn, setter, isSSR) {\n this.fn = fn;\n this.setter = setter;\n /**\n * @internal\n */\n this._value = void 0;\n /**\n * @internal\n */\n this.dep = new Dep(this);\n /**\n * @internal\n */\n this.__v_isRef = true;\n // TODO isolatedDeclarations \"__v_isReadonly\"\n // A computed is also a subscriber that tracks other deps\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 16;\n /**\n * @internal\n */\n this.globalVersion = globalVersion - 1;\n // for backwards compat\n this.effect = this;\n this[\"__v_isReadonly\"] = !setter;\n this.isSSR = isSSR;\n }\n /**\n * @internal\n */\n notify() {\n this.flags |= 16;\n if (!(this.flags & 8) &&\n // avoid infinite self recursion\n activeSub !== this) {\n batch(this);\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\")) ;\n }\n get value() {\n const link = !!(process.env.NODE_ENV !== \"production\") ? this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n }) : this.dep.track();\n refreshComputed(this);\n if (link) {\n link.version = this.dep.version;\n }\n return this._value;\n }\n set value(newValue) {\n if (this.setter) {\n this.setter(newValue);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\"Write operation failed: computed value is readonly\");\n }\n }\n}\nfunction computed(getterOrOptions, debugOptions, isSSR = false) {\n let getter;\n let setter;\n if (isFunction(getterOrOptions)) {\n getter = getterOrOptions;\n } else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n const cRef = new ComputedRefImpl(getter, setter, isSSR);\n if (!!(process.env.NODE_ENV !== \"production\") && debugOptions && !isSSR) {\n cRef.onTrack = debugOptions.onTrack;\n cRef.onTrigger = debugOptions.onTrigger;\n }\n return cRef;\n}\nconst TrackOpTypes = {\n \"GET\": \"get\",\n \"HAS\": \"has\",\n \"ITERATE\": \"iterate\"\n};\nconst TriggerOpTypes = {\n \"SET\": \"set\",\n \"ADD\": \"add\",\n \"DELETE\": \"delete\",\n \"CLEAR\": \"clear\"\n};\nconst ReactiveFlags = {\n \"SKIP\": \"__v_skip\",\n \"IS_REACTIVE\": \"__v_isReactive\",\n \"IS_READONLY\": \"__v_isReadonly\",\n \"IS_SHALLOW\": \"__v_isShallow\",\n \"RAW\": \"__v_raw\",\n \"IS_REF\": \"__v_isRef\"\n};\nconst WatchErrorCodes = {\n \"WATCH_GETTER\": 2,\n \"2\": \"WATCH_GETTER\",\n \"WATCH_CALLBACK\": 3,\n \"3\": \"WATCH_CALLBACK\",\n \"WATCH_CLEANUP\": 4,\n \"4\": \"WATCH_CLEANUP\"\n};\nconst INITIAL_WATCHER_VALUE = {};\nconst cleanupMap = /* @__PURE__ */new WeakMap();\nlet activeWatcher = void 0;\nfunction getCurrentWatcher() {\n return activeWatcher;\n}\nfunction onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) {\n if (owner) {\n let cleanups = cleanupMap.get(owner);\n if (!cleanups) cleanupMap.set(owner, cleanups = []);\n cleanups.push(cleanupFn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(`onWatcherCleanup() was called when there was no active watcher to associate with.`);\n }\n}\nfunction watch(source, cb, options = EMPTY_OBJ) {\n const {\n immediate,\n deep,\n once,\n scheduler,\n augmentJob,\n call\n } = options;\n const warnInvalidSource = s => {\n (options.onWarn || warn)(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`);\n };\n const reactiveGetter = source2 => {\n if (deep) return source2;\n if (isShallow(source2) || deep === false || deep === 0) return traverse(source2, 1);\n return traverse(source2);\n };\n let effect;\n let getter;\n let cleanup;\n let boundCleanup;\n let forceTrigger = false;\n let isMultiSource = false;\n if (isRef(source)) {\n getter = () => source.value;\n forceTrigger = isShallow(source);\n } else if (isReactive(source)) {\n getter = () => reactiveGetter(source);\n forceTrigger = true;\n } else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some(s => isReactive(s) || isShallow(s));\n getter = () => source.map(s => {\n if (isRef(s)) {\n return s.value;\n } else if (isReactive(s)) {\n return reactiveGetter(s);\n } else if (isFunction(s)) {\n return call ? call(s, 2) : s();\n } else {\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(s);\n }\n });\n } else if (isFunction(source)) {\n if (cb) {\n getter = call ? () => call(source, 2) : source;\n } else {\n getter = () => {\n if (cleanup) {\n pauseTracking();\n try {\n cleanup();\n } finally {\n resetTracking();\n }\n }\n const currentEffect = activeWatcher;\n activeWatcher = effect;\n try {\n return call ? call(source, 3, [boundCleanup]) : source(boundCleanup);\n } finally {\n activeWatcher = currentEffect;\n }\n };\n }\n } else {\n getter = NOOP;\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(source);\n }\n if (cb && deep) {\n const baseGetter = getter;\n const depth = deep === true ? Infinity : deep;\n getter = () => traverse(baseGetter(), depth);\n }\n const scope = getCurrentScope();\n const watchHandle = () => {\n effect.stop();\n if (scope) {\n remove(scope.effects, effect);\n }\n };\n if (once && cb) {\n const _cb = cb;\n cb = (...args) => {\n _cb(...args);\n watchHandle();\n };\n }\n let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n const job = immediateFirstRun => {\n if (!(effect.flags & 1) || !effect.dirty && !immediateFirstRun) {\n return;\n }\n if (cb) {\n const newValue = effect.run();\n if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) {\n if (cleanup) {\n cleanup();\n }\n const currentWatcher = activeWatcher;\n activeWatcher = effect;\n try {\n const args = [newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue, boundCleanup];\n call ? call(cb, 3, args) :\n // @ts-expect-error\n cb(...args);\n oldValue = newValue;\n } finally {\n activeWatcher = currentWatcher;\n }\n }\n } else {\n effect.run();\n }\n };\n if (augmentJob) {\n augmentJob(job);\n }\n effect = new ReactiveEffect(getter);\n effect.scheduler = scheduler ? () => scheduler(job, false) : job;\n boundCleanup = fn => onWatcherCleanup(fn, false, effect);\n cleanup = effect.onStop = () => {\n const cleanups = cleanupMap.get(effect);\n if (cleanups) {\n if (call) {\n call(cleanups, 4);\n } else {\n for (const cleanup2 of cleanups) cleanup2();\n }\n cleanupMap.delete(effect);\n }\n };\n if (!!(process.env.NODE_ENV !== \"production\")) {\n effect.onTrack = options.onTrack;\n effect.onTrigger = options.onTrigger;\n }\n if (cb) {\n if (immediate) {\n job(true);\n } else {\n oldValue = effect.run();\n }\n } else if (scheduler) {\n scheduler(job.bind(null, true), true);\n } else {\n effect.run();\n }\n watchHandle.pause = effect.pause.bind(effect);\n watchHandle.resume = effect.resume.bind(effect);\n watchHandle.stop = watchHandle;\n return watchHandle;\n}\nfunction traverse(value, depth = Infinity, seen) {\n if (depth <= 0 || !isObject(value) || value[\"__v_skip\"]) {\n return value;\n }\n seen = seen || /* @__PURE__ */new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n depth--;\n if (isRef(value)) {\n traverse(value.value, depth, seen);\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n traverse(value[i], depth, seen);\n }\n } else if (isSet(value) || isMap(value)) {\n value.forEach(v => {\n traverse(v, depth, seen);\n });\n } else if (isPlainObject(value)) {\n for (const key in value) {\n traverse(value[key], depth, seen);\n }\n for (const key of Object.getOwnPropertySymbols(value)) {\n if (Object.prototype.propertyIsEnumerable.call(value, key)) {\n traverse(value[key], depth, seen);\n }\n }\n }\n return value;\n}\nexport { ARRAY_ITERATE_KEY, EffectFlags, EffectScope, ITERATE_KEY, MAP_KEY_ITERATE_KEY, ReactiveEffect, ReactiveFlags, TrackOpTypes, TriggerOpTypes, WatchErrorCodes, computed, customRef, effect, effectScope, enableTracking, getCurrentScope, getCurrentWatcher, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onEffectCleanup, onScopeDispose, onWatcherCleanup, pauseTracking, proxyRefs, reactive, reactiveReadArray, readonly, ref, resetTracking, shallowReactive, shallowReadArray, shallowReadonly, shallowRef, stop, toRaw, toReactive, toReadonly, toRef, toRefs, toValue, track, traverse, trigger, triggerRef, unref, watch };","map":{"version":3,"names":["hasChanged","extend","isArray","isIntegerKey","isSymbol","isMap","hasOwn","isObject","makeMap","capitalize","toRawType","def","isFunction","EMPTY_OBJ","isSet","isPlainObject","NOOP","remove","warn","msg","args","console","activeEffectScope","EffectScope","constructor","detached","_active","effects","cleanups","_isPaused","parent","index","scopes","push","active","pause","i","l","length","resume","run","fn","currentEffectScope","process","env","NODE_ENV","on","off","stop","fromParent","last","pop","effectScope","getCurrentScope","onScopeDispose","failSilently","activeSub","EffectFlags","pausedQueueEffects","WeakSet","ReactiveEffect","deps","depsTail","flags","next","cleanup","scheduler","has","delete","trigger","notify","batch","cleanupEffect","prepareDeps","prevEffect","prevShouldTrack","shouldTrack","cleanupDeps","link","nextDep","removeSub","onStop","add","runIfDirty","isDirty","dirty","batchDepth","batchedSub","sub","startBatch","endBatch","error","e","err","version","prevActiveLink","dep","activeLink","head","tail","prev","prevDep","removeDep","computed","refreshComputed","_dirty","globalVersion","isSSR","prevSub","value","_value","nextSub","subs","effect","options","runner","bind","trackStack","pauseTracking","enableTracking","resetTracking","onEffectCleanup","Link","Dep","subsHead","track","debugInfo","addSub","onTrack","onTrigger","currentTail","targetMap","WeakMap","ITERATE_KEY","Symbol","MAP_KEY_ITERATE_KEY","ARRAY_ITERATE_KEY","target","type","key","depsMap","get","set","Map","newValue","oldValue","oldTarget","forEach","targetIsArray","isArrayIndex","newLength","Number","key2","getDepFromReactive","object","_a","reactiveReadArray","array","raw","toRaw","isShallow","map","toReactive","shallowReadArray","arr","arrayInstrumentations","__proto__","iterator","concat","x","entries","every","thisArg","apply","arguments","filter","v","find","findIndex","findLast","findLastIndex","includes","searchProxy","indexOf","join","separator","lastIndexOf","noTracking","reduce","reduceRight","shift","some","splice","toReversed","toSorted","comparer","toSpliced","unshift","values","self","method","wrapValue","iter","_next","result","arrayProto","Array","prototype","wrappedRetFn","needsWrap","methodFn","result2","wrappedFn","item","call","acc","res","isProxy","isNonTrackableKeys","builtInSymbols","Set","Object","getOwnPropertyNames","hasOwnProperty","String","obj","BaseReactiveHandler","_isReadonly","_isShallow","receiver","isReadonly2","isShallow2","shallowReadonlyMap","readonlyMap","shallowReactiveMap","reactiveMap","getPrototypeOf","Reflect","isRef","readonly","reactive","MutableReactiveHandler","isOldValueReadonly","isReadonly","hadKey","deleteProperty","ownKeys","ReadonlyReactiveHandler","mutableHandlers","readonlyHandlers","shallowReactiveHandlers","shallowReadonlyHandlers","toShallow","getProto","rawTarget","rawKey","has2","wrap","toReadonly","size","proto","get2","checkIdentityKeys","deleteEntry","clear","hadItems","createForEach","callback","observed","createIterableMethod","targetIsMap","isPair","isKeyOnly","innerIterator","done","createReadonlyMethod","createInstrumentations","mutableInstrumentations2","shallowInstrumentations2","readonlyInstrumentations2","shallowReadonlyInstrumentations2","iteratorMethods","mutableInstrumentations","readonlyInstrumentations","shallowInstrumentations","shallowReadonlyInstrumentations","createInstrumentationGetter","shallow","instrumentations","mutableCollectionHandlers","shallowCollectionHandlers","readonlyCollectionHandlers","shallowReadonlyCollectionHandlers","targetTypeMap","rawType","getTargetType","isExtensible","createReactiveObject","shallowReactive","shallowReadonly","baseHandlers","collectionHandlers","proxyMap","existingProxy","targetType","proxy","Proxy","isReactive","markRaw","r","ref","createRef","shallowRef","rawValue","RefImpl","_rawValue","useDirectValue","triggerRef","ref2","unref","toValue","source","shallowUnwrapHandlers","proxyRefs","objectWithRefs","CustomRefImpl","factory","_get","_set","newVal","customRef","toRefs","ret","propertyToRef","ObjectRefImpl","_object","_key","_defaultValue","val","GetterRefImpl","_getter","toRef","defaultValue","ComputedRefImpl","setter","__v_isRef","getterOrOptions","debugOptions","getter","cRef","TrackOpTypes","TriggerOpTypes","ReactiveFlags","WatchErrorCodes","INITIAL_WATCHER_VALUE","cleanupMap","activeWatcher","getCurrentWatcher","onWatcherCleanup","cleanupFn","owner","watch","cb","immediate","deep","once","augmentJob","warnInvalidSource","s","onWarn","reactiveGetter","source2","traverse","boundCleanup","forceTrigger","isMultiSource","currentEffect","baseGetter","depth","Infinity","scope","watchHandle","_cb","fill","job","immediateFirstRun","currentWatcher","cleanup2","seen","getOwnPropertySymbols","propertyIsEnumerable"],"sources":["/home/stcb/Desktop/TEK/Icing/monorepo/website/node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js"],"sourcesContent":["/**\n* @vue/reactivity v3.5.6\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { hasChanged, extend, isArray, isIntegerKey, isSymbol, isMap, hasOwn, isObject, makeMap, capitalize, toRawType, def, isFunction, EMPTY_OBJ, isSet, isPlainObject, NOOP, remove } from '@vue/shared';\n\nfunction warn(msg, ...args) {\n console.warn(`[Vue warn] ${msg}`, ...args);\n}\n\nlet activeEffectScope;\nclass EffectScope {\n constructor(detached = false) {\n this.detached = detached;\n /**\n * @internal\n */\n this._active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this._isPaused = false;\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(\n this\n ) - 1;\n }\n }\n get active() {\n return this._active;\n }\n pause() {\n if (this._active) {\n this._isPaused = true;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].pause();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].pause();\n }\n }\n }\n /**\n * Resumes the effect scope, including all child scopes and effects.\n */\n resume() {\n if (this._active) {\n if (this._isPaused) {\n this._isPaused = false;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].resume();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].resume();\n }\n }\n }\n }\n run(fn) {\n if (this._active) {\n const currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n } finally {\n activeEffectScope = currentEffectScope;\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`cannot run an inactive effect scope.`);\n }\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n on() {\n activeEffectScope = this;\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n off() {\n activeEffectScope = this.parent;\n }\n stop(fromParent) {\n if (this._active) {\n let i, l;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].stop();\n }\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n }\n if (!this.detached && this.parent && !fromParent) {\n const last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = void 0;\n this._active = false;\n }\n }\n}\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn, failSilently = false) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onScopeDispose() is called when there is no active effect scope to be associated with.`\n );\n }\n}\n\nlet activeSub;\nconst EffectFlags = {\n \"ACTIVE\": 1,\n \"1\": \"ACTIVE\",\n \"RUNNING\": 2,\n \"2\": \"RUNNING\",\n \"TRACKING\": 4,\n \"4\": \"TRACKING\",\n \"NOTIFIED\": 8,\n \"8\": \"NOTIFIED\",\n \"DIRTY\": 16,\n \"16\": \"DIRTY\",\n \"ALLOW_RECURSE\": 32,\n \"32\": \"ALLOW_RECURSE\",\n \"PAUSED\": 64,\n \"64\": \"PAUSED\"\n};\nconst pausedQueueEffects = /* @__PURE__ */ new WeakSet();\nclass ReactiveEffect {\n constructor(fn) {\n this.fn = fn;\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 1 | 4;\n /**\n * @internal\n */\n this.next = void 0;\n /**\n * @internal\n */\n this.cleanup = void 0;\n this.scheduler = void 0;\n if (activeEffectScope && activeEffectScope.active) {\n activeEffectScope.effects.push(this);\n }\n }\n pause() {\n this.flags |= 64;\n }\n resume() {\n if (this.flags & 64) {\n this.flags &= ~64;\n if (pausedQueueEffects.has(this)) {\n pausedQueueEffects.delete(this);\n this.trigger();\n }\n }\n }\n /**\n * @internal\n */\n notify() {\n if (this.flags & 2 && !(this.flags & 32)) {\n return;\n }\n if (!(this.flags & 8)) {\n batch(this);\n }\n }\n run() {\n if (!(this.flags & 1)) {\n return this.fn();\n }\n this.flags |= 2;\n cleanupEffect(this);\n prepareDeps(this);\n const prevEffect = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = this;\n shouldTrack = true;\n try {\n return this.fn();\n } finally {\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub !== this) {\n warn(\n \"Active effect was not restored correctly - this is likely a Vue internal bug.\"\n );\n }\n cleanupDeps(this);\n activeSub = prevEffect;\n shouldTrack = prevShouldTrack;\n this.flags &= ~2;\n }\n }\n stop() {\n if (this.flags & 1) {\n for (let link = this.deps; link; link = link.nextDep) {\n removeSub(link);\n }\n this.deps = this.depsTail = void 0;\n cleanupEffect(this);\n this.onStop && this.onStop();\n this.flags &= ~1;\n }\n }\n trigger() {\n if (this.flags & 64) {\n pausedQueueEffects.add(this);\n } else if (this.scheduler) {\n this.scheduler();\n } else {\n this.runIfDirty();\n }\n }\n /**\n * @internal\n */\n runIfDirty() {\n if (isDirty(this)) {\n this.run();\n }\n }\n get dirty() {\n return isDirty(this);\n }\n}\nlet batchDepth = 0;\nlet batchedSub;\nfunction batch(sub) {\n sub.flags |= 8;\n sub.next = batchedSub;\n batchedSub = sub;\n}\nfunction startBatch() {\n batchDepth++;\n}\nfunction endBatch() {\n if (--batchDepth > 0) {\n return;\n }\n let error;\n while (batchedSub) {\n let e = batchedSub;\n batchedSub = void 0;\n while (e) {\n const next = e.next;\n e.next = void 0;\n e.flags &= ~8;\n if (e.flags & 1) {\n try {\n ;\n e.trigger();\n } catch (err) {\n if (!error) error = err;\n }\n }\n e = next;\n }\n }\n if (error) throw error;\n}\nfunction prepareDeps(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n link.version = -1;\n link.prevActiveLink = link.dep.activeLink;\n link.dep.activeLink = link;\n }\n}\nfunction cleanupDeps(sub) {\n let head;\n let tail = sub.depsTail;\n let link = tail;\n while (link) {\n const prev = link.prevDep;\n if (link.version === -1) {\n if (link === tail) tail = prev;\n removeSub(link);\n removeDep(link);\n } else {\n head = link;\n }\n link.dep.activeLink = link.prevActiveLink;\n link.prevActiveLink = void 0;\n link = prev;\n }\n sub.deps = head;\n sub.depsTail = tail;\n}\nfunction isDirty(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) {\n return true;\n }\n }\n if (sub._dirty) {\n return true;\n }\n return false;\n}\nfunction refreshComputed(computed) {\n if (computed.flags & 4 && !(computed.flags & 16)) {\n return;\n }\n computed.flags &= ~16;\n if (computed.globalVersion === globalVersion) {\n return;\n }\n computed.globalVersion = globalVersion;\n const dep = computed.dep;\n computed.flags |= 2;\n if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {\n computed.flags &= ~2;\n return;\n }\n const prevSub = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = computed;\n shouldTrack = true;\n try {\n prepareDeps(computed);\n const value = computed.fn(computed._value);\n if (dep.version === 0 || hasChanged(value, computed._value)) {\n computed._value = value;\n dep.version++;\n }\n } catch (err) {\n dep.version++;\n throw err;\n } finally {\n activeSub = prevSub;\n shouldTrack = prevShouldTrack;\n cleanupDeps(computed);\n computed.flags &= ~2;\n }\n}\nfunction removeSub(link) {\n const { dep, prevSub, nextSub } = link;\n if (prevSub) {\n prevSub.nextSub = nextSub;\n link.prevSub = void 0;\n }\n if (nextSub) {\n nextSub.prevSub = prevSub;\n link.nextSub = void 0;\n }\n if (dep.subs === link) {\n dep.subs = prevSub;\n }\n if (!dep.subs && dep.computed) {\n dep.computed.flags &= ~4;\n for (let l = dep.computed.deps; l; l = l.nextDep) {\n removeSub(l);\n }\n }\n}\nfunction removeDep(link) {\n const { prevDep, nextDep } = link;\n if (prevDep) {\n prevDep.nextDep = nextDep;\n link.prevDep = void 0;\n }\n if (nextDep) {\n nextDep.prevDep = prevDep;\n link.nextDep = void 0;\n }\n}\nfunction effect(fn, options) {\n if (fn.effect instanceof ReactiveEffect) {\n fn = fn.effect.fn;\n }\n const e = new ReactiveEffect(fn);\n if (options) {\n extend(e, options);\n }\n try {\n e.run();\n } catch (err) {\n e.stop();\n throw err;\n }\n const runner = e.run.bind(e);\n runner.effect = e;\n return runner;\n}\nfunction stop(runner) {\n runner.effect.stop();\n}\nlet shouldTrack = true;\nconst trackStack = [];\nfunction pauseTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = false;\n}\nfunction enableTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = true;\n}\nfunction resetTracking() {\n const last = trackStack.pop();\n shouldTrack = last === void 0 ? true : last;\n}\nfunction onEffectCleanup(fn, failSilently = false) {\n if (activeSub instanceof ReactiveEffect) {\n activeSub.cleanup = fn;\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onEffectCleanup() was called when there was no active effect to associate with.`\n );\n }\n}\nfunction cleanupEffect(e) {\n const { cleanup } = e;\n e.cleanup = void 0;\n if (cleanup) {\n const prevSub = activeSub;\n activeSub = void 0;\n try {\n cleanup();\n } finally {\n activeSub = prevSub;\n }\n }\n}\n\nlet globalVersion = 0;\nclass Link {\n constructor(sub, dep) {\n this.sub = sub;\n this.dep = dep;\n this.version = dep.version;\n this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0;\n }\n}\nclass Dep {\n constructor(computed) {\n this.computed = computed;\n this.version = 0;\n /**\n * Link between this dep and the current active effect\n */\n this.activeLink = void 0;\n /**\n * Doubly linked list representing the subscribing effects (tail)\n */\n this.subs = void 0;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.subsHead = void 0;\n }\n }\n track(debugInfo) {\n if (!activeSub || !shouldTrack || activeSub === this.computed) {\n return;\n }\n let link = this.activeLink;\n if (link === void 0 || link.sub !== activeSub) {\n link = this.activeLink = new Link(activeSub, this);\n if (!activeSub.deps) {\n activeSub.deps = activeSub.depsTail = link;\n } else {\n link.prevDep = activeSub.depsTail;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n }\n if (activeSub.flags & 4) {\n addSub(link);\n }\n } else if (link.version === -1) {\n link.version = this.version;\n if (link.nextDep) {\n const next = link.nextDep;\n next.prevDep = link.prevDep;\n if (link.prevDep) {\n link.prevDep.nextDep = next;\n }\n link.prevDep = activeSub.depsTail;\n link.nextDep = void 0;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n if (activeSub.deps === link) {\n activeSub.deps = next;\n }\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub.onTrack) {\n activeSub.onTrack(\n extend(\n {\n effect: activeSub\n },\n debugInfo\n )\n );\n }\n return link;\n }\n trigger(debugInfo) {\n this.version++;\n globalVersion++;\n this.notify(debugInfo);\n }\n notify(debugInfo) {\n startBatch();\n try {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n for (let head = this.subsHead; head; head = head.nextSub) {\n if (head.sub.onTrigger && !(head.sub.flags & 8)) {\n head.sub.onTrigger(\n extend(\n {\n effect: head.sub\n },\n debugInfo\n )\n );\n }\n }\n }\n for (let link = this.subs; link; link = link.prevSub) {\n if (link.sub.notify()) {\n ;\n link.sub.dep.notify();\n }\n }\n } finally {\n endBatch();\n }\n }\n}\nfunction addSub(link) {\n const computed = link.dep.computed;\n if (computed && !link.dep.subs) {\n computed.flags |= 4 | 16;\n for (let l = computed.deps; l; l = l.nextDep) {\n addSub(l);\n }\n }\n const currentTail = link.dep.subs;\n if (currentTail !== link) {\n link.prevSub = currentTail;\n if (currentTail) currentTail.nextSub = link;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && link.dep.subsHead === void 0) {\n link.dep.subsHead = link;\n }\n link.dep.subs = link;\n}\nconst targetMap = /* @__PURE__ */ new WeakMap();\nconst ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Object iterate\" : \"\"\n);\nconst MAP_KEY_ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Map keys iterate\" : \"\"\n);\nconst ARRAY_ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Array iterate\" : \"\"\n);\nfunction track(target, type, key) {\n if (shouldTrack && activeSub) {\n let depsMap = targetMap.get(target);\n if (!depsMap) {\n targetMap.set(target, depsMap = /* @__PURE__ */ new Map());\n }\n let dep = depsMap.get(key);\n if (!dep) {\n depsMap.set(key, dep = new Dep());\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.track({\n target,\n type,\n key\n });\n } else {\n dep.track();\n }\n }\n}\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\n const depsMap = targetMap.get(target);\n if (!depsMap) {\n globalVersion++;\n return;\n }\n const run = (dep) => {\n if (dep) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.trigger({\n target,\n type,\n key,\n newValue,\n oldValue,\n oldTarget\n });\n } else {\n dep.trigger();\n }\n }\n };\n startBatch();\n if (type === \"clear\") {\n depsMap.forEach(run);\n } else {\n const targetIsArray = isArray(target);\n const isArrayIndex = targetIsArray && isIntegerKey(key);\n if (targetIsArray && key === \"length\") {\n const newLength = Number(newValue);\n depsMap.forEach((dep, key2) => {\n if (key2 === \"length\" || key2 === ARRAY_ITERATE_KEY || !isSymbol(key2) && key2 >= newLength) {\n run(dep);\n }\n });\n } else {\n if (key !== void 0) {\n run(depsMap.get(key));\n }\n if (isArrayIndex) {\n run(depsMap.get(ARRAY_ITERATE_KEY));\n }\n switch (type) {\n case \"add\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n } else if (isArrayIndex) {\n run(depsMap.get(\"length\"));\n }\n break;\n case \"delete\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n }\n break;\n case \"set\":\n if (isMap(target)) {\n run(depsMap.get(ITERATE_KEY));\n }\n break;\n }\n }\n }\n endBatch();\n}\nfunction getDepFromReactive(object, key) {\n var _a;\n return (_a = targetMap.get(object)) == null ? void 0 : _a.get(key);\n}\n\nfunction reactiveReadArray(array) {\n const raw = toRaw(array);\n if (raw === array) return raw;\n track(raw, \"iterate\", ARRAY_ITERATE_KEY);\n return isShallow(array) ? raw : raw.map(toReactive);\n}\nfunction shallowReadArray(arr) {\n track(arr = toRaw(arr), \"iterate\", ARRAY_ITERATE_KEY);\n return arr;\n}\nconst arrayInstrumentations = {\n __proto__: null,\n [Symbol.iterator]() {\n return iterator(this, Symbol.iterator, toReactive);\n },\n concat(...args) {\n return reactiveReadArray(this).concat(\n ...args.map((x) => isArray(x) ? reactiveReadArray(x) : x)\n );\n },\n entries() {\n return iterator(this, \"entries\", (value) => {\n value[1] = toReactive(value[1]);\n return value;\n });\n },\n every(fn, thisArg) {\n return apply(this, \"every\", fn, thisArg, void 0, arguments);\n },\n filter(fn, thisArg) {\n return apply(this, \"filter\", fn, thisArg, (v) => v.map(toReactive), arguments);\n },\n find(fn, thisArg) {\n return apply(this, \"find\", fn, thisArg, toReactive, arguments);\n },\n findIndex(fn, thisArg) {\n return apply(this, \"findIndex\", fn, thisArg, void 0, arguments);\n },\n findLast(fn, thisArg) {\n return apply(this, \"findLast\", fn, thisArg, toReactive, arguments);\n },\n findLastIndex(fn, thisArg) {\n return apply(this, \"findLastIndex\", fn, thisArg, void 0, arguments);\n },\n // flat, flatMap could benefit from ARRAY_ITERATE but are not straight-forward to implement\n forEach(fn, thisArg) {\n return apply(this, \"forEach\", fn, thisArg, void 0, arguments);\n },\n includes(...args) {\n return searchProxy(this, \"includes\", args);\n },\n indexOf(...args) {\n return searchProxy(this, \"indexOf\", args);\n },\n join(separator) {\n return reactiveReadArray(this).join(separator);\n },\n // keys() iterator only reads `length`, no optimisation required\n lastIndexOf(...args) {\n return searchProxy(this, \"lastIndexOf\", args);\n },\n map(fn, thisArg) {\n return apply(this, \"map\", fn, thisArg, void 0, arguments);\n },\n pop() {\n return noTracking(this, \"pop\");\n },\n push(...args) {\n return noTracking(this, \"push\", args);\n },\n reduce(fn, ...args) {\n return reduce(this, \"reduce\", fn, args);\n },\n reduceRight(fn, ...args) {\n return reduce(this, \"reduceRight\", fn, args);\n },\n shift() {\n return noTracking(this, \"shift\");\n },\n // slice could use ARRAY_ITERATE but also seems to beg for range tracking\n some(fn, thisArg) {\n return apply(this, \"some\", fn, thisArg, void 0, arguments);\n },\n splice(...args) {\n return noTracking(this, \"splice\", args);\n },\n toReversed() {\n return reactiveReadArray(this).toReversed();\n },\n toSorted(comparer) {\n return reactiveReadArray(this).toSorted(comparer);\n },\n toSpliced(...args) {\n return reactiveReadArray(this).toSpliced(...args);\n },\n unshift(...args) {\n return noTracking(this, \"unshift\", args);\n },\n values() {\n return iterator(this, \"values\", toReactive);\n }\n};\nfunction iterator(self, method, wrapValue) {\n const arr = shallowReadArray(self);\n const iter = arr[method]();\n if (arr !== self && !isShallow(self)) {\n iter._next = iter.next;\n iter.next = () => {\n const result = iter._next();\n if (result.value) {\n result.value = wrapValue(result.value);\n }\n return result;\n };\n }\n return iter;\n}\nconst arrayProto = Array.prototype;\nfunction apply(self, method, fn, thisArg, wrappedRetFn, args) {\n const arr = shallowReadArray(self);\n const needsWrap = arr !== self && !isShallow(self);\n const methodFn = arr[method];\n if (methodFn !== arrayProto[method]) {\n const result2 = methodFn.apply(self, args);\n return needsWrap ? toReactive(result2) : result2;\n }\n let wrappedFn = fn;\n if (arr !== self) {\n if (needsWrap) {\n wrappedFn = function(item, index) {\n return fn.call(this, toReactive(item), index, self);\n };\n } else if (fn.length > 2) {\n wrappedFn = function(item, index) {\n return fn.call(this, item, index, self);\n };\n }\n }\n const result = methodFn.call(arr, wrappedFn, thisArg);\n return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result;\n}\nfunction reduce(self, method, fn, args) {\n const arr = shallowReadArray(self);\n let wrappedFn = fn;\n if (arr !== self) {\n if (!isShallow(self)) {\n wrappedFn = function(acc, item, index) {\n return fn.call(this, acc, toReactive(item), index, self);\n };\n } else if (fn.length > 3) {\n wrappedFn = function(acc, item, index) {\n return fn.call(this, acc, item, index, self);\n };\n }\n }\n return arr[method](wrappedFn, ...args);\n}\nfunction searchProxy(self, method, args) {\n const arr = toRaw(self);\n track(arr, \"iterate\", ARRAY_ITERATE_KEY);\n const res = arr[method](...args);\n if ((res === -1 || res === false) && isProxy(args[0])) {\n args[0] = toRaw(args[0]);\n return arr[method](...args);\n }\n return res;\n}\nfunction noTracking(self, method, args = []) {\n pauseTracking();\n startBatch();\n const res = toRaw(self)[method].apply(self, args);\n endBatch();\n resetTracking();\n return res;\n}\n\nconst isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);\nconst builtInSymbols = new Set(\n /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== \"arguments\" && key !== \"caller\").map((key) => Symbol[key]).filter(isSymbol)\n);\nfunction hasOwnProperty(key) {\n if (!isSymbol(key)) key = String(key);\n const obj = toRaw(this);\n track(obj, \"has\", key);\n return obj.hasOwnProperty(key);\n}\nclass BaseReactiveHandler {\n constructor(_isReadonly = false, _isShallow = false) {\n this._isReadonly = _isReadonly;\n this._isShallow = _isShallow;\n }\n get(target, key, receiver) {\n const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_isShallow\") {\n return isShallow2;\n } else if (key === \"__v_raw\") {\n if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype\n // this means the receiver is a user proxy of the reactive proxy\n Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {\n return target;\n }\n return;\n }\n const targetIsArray = isArray(target);\n if (!isReadonly2) {\n let fn;\n if (targetIsArray && (fn = arrayInstrumentations[key])) {\n return fn;\n }\n if (key === \"hasOwnProperty\") {\n return hasOwnProperty;\n }\n }\n const res = Reflect.get(\n target,\n key,\n // if this is a proxy wrapping a ref, return methods using the raw ref\n // as receiver so that we don't have to call `toRaw` on the ref in all\n // its class methods\n isRef(target) ? target : receiver\n );\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\n return res;\n }\n if (!isReadonly2) {\n track(target, \"get\", key);\n }\n if (isShallow2) {\n return res;\n }\n if (isRef(res)) {\n return targetIsArray && isIntegerKey(key) ? res : res.value;\n }\n if (isObject(res)) {\n return isReadonly2 ? readonly(res) : reactive(res);\n }\n return res;\n }\n}\nclass MutableReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(false, isShallow2);\n }\n set(target, key, value, receiver) {\n let oldValue = target[key];\n if (!this._isShallow) {\n const isOldValueReadonly = isReadonly(oldValue);\n if (!isShallow(value) && !isReadonly(value)) {\n oldValue = toRaw(oldValue);\n value = toRaw(value);\n }\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\n if (isOldValueReadonly) {\n return false;\n } else {\n oldValue.value = value;\n return true;\n }\n }\n }\n const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);\n const result = Reflect.set(\n target,\n key,\n value,\n isRef(target) ? target : receiver\n );\n if (target === toRaw(receiver)) {\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n }\n return result;\n }\n deleteProperty(target, key) {\n const hadKey = hasOwn(target, key);\n const oldValue = target[key];\n const result = Reflect.deleteProperty(target, key);\n if (result && hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n }\n has(target, key) {\n const result = Reflect.has(target, key);\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\n track(target, \"has\", key);\n }\n return result;\n }\n ownKeys(target) {\n track(\n target,\n \"iterate\",\n isArray(target) ? \"length\" : ITERATE_KEY\n );\n return Reflect.ownKeys(target);\n }\n}\nclass ReadonlyReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(true, isShallow2);\n }\n set(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Set operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n deleteProperty(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Delete operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n}\nconst mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();\nconst readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();\nconst shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true);\nconst shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);\n\nconst toShallow = (value) => value;\nconst getProto = (v) => Reflect.getPrototypeOf(v);\nfunction get(target, key, isReadonly2 = false, isShallow2 = false) {\n target = target[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly2) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"get\", key);\n }\n track(rawTarget, \"get\", rawKey);\n }\n const { has: has2 } = getProto(rawTarget);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n if (has2.call(rawTarget, key)) {\n return wrap(target.get(key));\n } else if (has2.call(rawTarget, rawKey)) {\n return wrap(target.get(rawKey));\n } else if (target !== rawTarget) {\n target.get(key);\n }\n}\nfunction has(key, isReadonly2 = false) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly2) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"has\", key);\n }\n track(rawTarget, \"has\", rawKey);\n }\n return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);\n}\nfunction size(target, isReadonly2 = false) {\n target = target[\"__v_raw\"];\n !isReadonly2 && track(toRaw(target), \"iterate\", ITERATE_KEY);\n return Reflect.get(target, \"size\", target);\n}\nfunction add(value, _isShallow = false) {\n if (!_isShallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const proto = getProto(target);\n const hadKey = proto.has.call(target, value);\n if (!hadKey) {\n target.add(value);\n trigger(target, \"add\", value, value);\n }\n return this;\n}\nfunction set(key, value, _isShallow = false) {\n if (!_isShallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2.call(target, key);\n target.set(key, value);\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n return this;\n}\nfunction deleteEntry(key) {\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2 ? get2.call(target, key) : void 0;\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n}\nfunction clear() {\n const target = toRaw(this);\n const hadItems = target.size !== 0;\n const oldTarget = !!(process.env.NODE_ENV !== \"production\") ? isMap(target) ? new Map(target) : new Set(target) : void 0;\n const result = target.clear();\n if (hadItems) {\n trigger(target, \"clear\", void 0, void 0, oldTarget);\n }\n return result;\n}\nfunction createForEach(isReadonly2, isShallow2) {\n return function forEach(callback, thisArg) {\n const observed = this;\n const target = observed[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n !isReadonly2 && track(rawTarget, \"iterate\", ITERATE_KEY);\n return target.forEach((value, key) => {\n return callback.call(thisArg, wrap(value), wrap(key), observed);\n });\n };\n}\nfunction createIterableMethod(method, isReadonly2, isShallow2) {\n return function(...args) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const targetIsMap = isMap(rawTarget);\n const isPair = method === \"entries\" || method === Symbol.iterator && targetIsMap;\n const isKeyOnly = method === \"keys\" && targetIsMap;\n const innerIterator = target[method](...args);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n !isReadonly2 && track(\n rawTarget,\n \"iterate\",\n isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY\n );\n return {\n // iterator protocol\n next() {\n const { value, done } = innerIterator.next();\n return done ? { value, done } : {\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\n done\n };\n },\n // iterable protocol\n [Symbol.iterator]() {\n return this;\n }\n };\n };\n}\nfunction createReadonlyMethod(type) {\n return function(...args) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\n warn(\n `${capitalize(type)} operation ${key}failed: target is readonly.`,\n toRaw(this)\n );\n }\n return type === \"delete\" ? false : type === \"clear\" ? void 0 : this;\n };\n}\nfunction createInstrumentations() {\n const mutableInstrumentations2 = {\n get(key) {\n return get(this, key);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, false)\n };\n const shallowInstrumentations2 = {\n get(key) {\n return get(this, key, false, true);\n },\n get size() {\n return size(this);\n },\n has,\n add(value) {\n return add.call(this, value, true);\n },\n set(key, value) {\n return set.call(this, key, value, true);\n },\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, true)\n };\n const readonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, false)\n };\n const shallowReadonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, true)\n };\n const iteratorMethods = [\n \"keys\",\n \"values\",\n \"entries\",\n Symbol.iterator\n ];\n iteratorMethods.forEach((method) => {\n mutableInstrumentations2[method] = createIterableMethod(method, false, false);\n readonlyInstrumentations2[method] = createIterableMethod(method, true, false);\n shallowInstrumentations2[method] = createIterableMethod(method, false, true);\n shallowReadonlyInstrumentations2[method] = createIterableMethod(\n method,\n true,\n true\n );\n });\n return [\n mutableInstrumentations2,\n readonlyInstrumentations2,\n shallowInstrumentations2,\n shallowReadonlyInstrumentations2\n ];\n}\nconst [\n mutableInstrumentations,\n readonlyInstrumentations,\n shallowInstrumentations,\n shallowReadonlyInstrumentations\n] = /* @__PURE__ */ createInstrumentations();\nfunction createInstrumentationGetter(isReadonly2, shallow) {\n const instrumentations = shallow ? isReadonly2 ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly2 ? readonlyInstrumentations : mutableInstrumentations;\n return (target, key, receiver) => {\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_raw\") {\n return target;\n }\n return Reflect.get(\n hasOwn(instrumentations, key) && key in target ? instrumentations : target,\n key,\n receiver\n );\n };\n}\nconst mutableCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, false)\n};\nconst shallowCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, true)\n};\nconst readonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, false)\n};\nconst shallowReadonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, true)\n};\nfunction checkIdentityKeys(target, has2, key) {\n const rawKey = toRaw(key);\n if (rawKey !== key && has2.call(target, rawKey)) {\n const type = toRawType(target);\n warn(\n `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`\n );\n }\n}\n\nconst reactiveMap = /* @__PURE__ */ new WeakMap();\nconst shallowReactiveMap = /* @__PURE__ */ new WeakMap();\nconst readonlyMap = /* @__PURE__ */ new WeakMap();\nconst shallowReadonlyMap = /* @__PURE__ */ new WeakMap();\nfunction targetTypeMap(rawType) {\n switch (rawType) {\n case \"Object\":\n case \"Array\":\n return 1 /* COMMON */;\n case \"Map\":\n case \"Set\":\n case \"WeakMap\":\n case \"WeakSet\":\n return 2 /* COLLECTION */;\n default:\n return 0 /* INVALID */;\n }\n}\nfunction getTargetType(value) {\n return value[\"__v_skip\"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));\n}\nfunction reactive(target) {\n if (isReadonly(target)) {\n return target;\n }\n return createReactiveObject(\n target,\n false,\n mutableHandlers,\n mutableCollectionHandlers,\n reactiveMap\n );\n}\nfunction shallowReactive(target) {\n return createReactiveObject(\n target,\n false,\n shallowReactiveHandlers,\n shallowCollectionHandlers,\n shallowReactiveMap\n );\n}\nfunction readonly(target) {\n return createReactiveObject(\n target,\n true,\n readonlyHandlers,\n readonlyCollectionHandlers,\n readonlyMap\n );\n}\nfunction shallowReadonly(target) {\n return createReactiveObject(\n target,\n true,\n shallowReadonlyHandlers,\n shallowReadonlyCollectionHandlers,\n shallowReadonlyMap\n );\n}\nfunction createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {\n if (!isObject(target)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `value cannot be made ${isReadonly2 ? \"readonly\" : \"reactive\"}: ${String(\n target\n )}`\n );\n }\n return target;\n }\n if (target[\"__v_raw\"] && !(isReadonly2 && target[\"__v_isReactive\"])) {\n return target;\n }\n const existingProxy = proxyMap.get(target);\n if (existingProxy) {\n return existingProxy;\n }\n const targetType = getTargetType(target);\n if (targetType === 0 /* INVALID */) {\n return target;\n }\n const proxy = new Proxy(\n target,\n targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers\n );\n proxyMap.set(target, proxy);\n return proxy;\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\"]);\n }\n return !!(value && value[\"__v_isReactive\"]);\n}\nfunction isReadonly(value) {\n return !!(value && value[\"__v_isReadonly\"]);\n}\nfunction isShallow(value) {\n return !!(value && value[\"__v_isShallow\"]);\n}\nfunction isProxy(value) {\n return value ? !!value[\"__v_raw\"] : false;\n}\nfunction toRaw(observed) {\n const raw = observed && observed[\"__v_raw\"];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n if (!hasOwn(value, \"__v_skip\") && Object.isExtensible(value)) {\n def(value, \"__v_skip\", true);\n }\n return value;\n}\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nfunction isRef(r) {\n return r ? r[\"__v_isRef\"] === true : false;\n}\nfunction ref(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n return new RefImpl(rawValue, shallow);\n}\nclass RefImpl {\n constructor(value, isShallow2) {\n this.dep = new Dep();\n this[\"__v_isRef\"] = true;\n this[\"__v_isShallow\"] = false;\n this._rawValue = isShallow2 ? value : toRaw(value);\n this._value = isShallow2 ? value : toReactive(value);\n this[\"__v_isShallow\"] = isShallow2;\n }\n get value() {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n });\n } else {\n this.dep.track();\n }\n return this._value;\n }\n set value(newValue) {\n const oldValue = this._rawValue;\n const useDirectValue = this[\"__v_isShallow\"] || isShallow(newValue) || isReadonly(newValue);\n newValue = useDirectValue ? newValue : toRaw(newValue);\n if (hasChanged(newValue, oldValue)) {\n this._rawValue = newValue;\n this._value = useDirectValue ? newValue : toReactive(newValue);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.trigger({\n target: this,\n type: \"set\",\n key: \"value\",\n newValue,\n oldValue\n });\n } else {\n this.dep.trigger();\n }\n }\n }\n}\nfunction triggerRef(ref2) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n ref2.dep.trigger({\n target: ref2,\n type: \"set\",\n key: \"value\",\n newValue: ref2._value\n });\n } else {\n ref2.dep.trigger();\n }\n}\nfunction unref(ref2) {\n return isRef(ref2) ? ref2.value : ref2;\n}\nfunction toValue(source) {\n return isFunction(source) ? source() : unref(source);\n}\nconst shallowUnwrapHandlers = {\n get: (target, key, receiver) => key === \"__v_raw\" ? target : unref(Reflect.get(target, key, receiver)),\n set: (target, key, value, receiver) => {\n const oldValue = target[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n } else {\n return Reflect.set(target, key, value, receiver);\n }\n }\n};\nfunction proxyRefs(objectWithRefs) {\n return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);\n}\nclass CustomRefImpl {\n constructor(factory) {\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n const dep = this.dep = new Dep();\n const { get, set } = factory(dep.track.bind(dep), dep.trigger.bind(dep));\n this._get = get;\n this._set = set;\n }\n get value() {\n return this._value = this._get();\n }\n set value(newVal) {\n this._set(newVal);\n }\n}\nfunction customRef(factory) {\n return new CustomRefImpl(factory);\n}\nfunction toRefs(object) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isProxy(object)) {\n warn(`toRefs() expects a reactive object but received a plain one.`);\n }\n const ret = isArray(object) ? new Array(object.length) : {};\n for (const key in object) {\n ret[key] = propertyToRef(object, key);\n }\n return ret;\n}\nclass ObjectRefImpl {\n constructor(_object, _key, _defaultValue) {\n this._object = _object;\n this._key = _key;\n this._defaultValue = _defaultValue;\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n }\n get value() {\n const val = this._object[this._key];\n return this._value = val === void 0 ? this._defaultValue : val;\n }\n set value(newVal) {\n this._object[this._key] = newVal;\n }\n get dep() {\n return getDepFromReactive(toRaw(this._object), this._key);\n }\n}\nclass GetterRefImpl {\n constructor(_getter) {\n this._getter = _getter;\n this[\"__v_isRef\"] = true;\n this[\"__v_isReadonly\"] = true;\n this._value = void 0;\n }\n get value() {\n return this._value = this._getter();\n }\n}\nfunction toRef(source, key, defaultValue) {\n if (isRef(source)) {\n return source;\n } else if (isFunction(source)) {\n return new GetterRefImpl(source);\n } else if (isObject(source) && arguments.length > 1) {\n return propertyToRef(source, key, defaultValue);\n } else {\n return ref(source);\n }\n}\nfunction propertyToRef(source, key, defaultValue) {\n const val = source[key];\n return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);\n}\n\nclass ComputedRefImpl {\n constructor(fn, setter, isSSR) {\n this.fn = fn;\n this.setter = setter;\n /**\n * @internal\n */\n this._value = void 0;\n /**\n * @internal\n */\n this.dep = new Dep(this);\n /**\n * @internal\n */\n this.__v_isRef = true;\n // TODO isolatedDeclarations \"__v_isReadonly\"\n // A computed is also a subscriber that tracks other deps\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 16;\n /**\n * @internal\n */\n this.globalVersion = globalVersion - 1;\n // for backwards compat\n this.effect = this;\n this[\"__v_isReadonly\"] = !setter;\n this.isSSR = isSSR;\n }\n /**\n * @internal\n */\n notify() {\n this.flags |= 16;\n if (!(this.flags & 8) && // avoid infinite self recursion\n activeSub !== this) {\n batch(this);\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\")) ;\n }\n get value() {\n const link = !!(process.env.NODE_ENV !== \"production\") ? this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n }) : this.dep.track();\n refreshComputed(this);\n if (link) {\n link.version = this.dep.version;\n }\n return this._value;\n }\n set value(newValue) {\n if (this.setter) {\n this.setter(newValue);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\"Write operation failed: computed value is readonly\");\n }\n }\n}\nfunction computed(getterOrOptions, debugOptions, isSSR = false) {\n let getter;\n let setter;\n if (isFunction(getterOrOptions)) {\n getter = getterOrOptions;\n } else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n const cRef = new ComputedRefImpl(getter, setter, isSSR);\n if (!!(process.env.NODE_ENV !== \"production\") && debugOptions && !isSSR) {\n cRef.onTrack = debugOptions.onTrack;\n cRef.onTrigger = debugOptions.onTrigger;\n }\n return cRef;\n}\n\nconst TrackOpTypes = {\n \"GET\": \"get\",\n \"HAS\": \"has\",\n \"ITERATE\": \"iterate\"\n};\nconst TriggerOpTypes = {\n \"SET\": \"set\",\n \"ADD\": \"add\",\n \"DELETE\": \"delete\",\n \"CLEAR\": \"clear\"\n};\nconst ReactiveFlags = {\n \"SKIP\": \"__v_skip\",\n \"IS_REACTIVE\": \"__v_isReactive\",\n \"IS_READONLY\": \"__v_isReadonly\",\n \"IS_SHALLOW\": \"__v_isShallow\",\n \"RAW\": \"__v_raw\",\n \"IS_REF\": \"__v_isRef\"\n};\n\nconst WatchErrorCodes = {\n \"WATCH_GETTER\": 2,\n \"2\": \"WATCH_GETTER\",\n \"WATCH_CALLBACK\": 3,\n \"3\": \"WATCH_CALLBACK\",\n \"WATCH_CLEANUP\": 4,\n \"4\": \"WATCH_CLEANUP\"\n};\nconst INITIAL_WATCHER_VALUE = {};\nconst cleanupMap = /* @__PURE__ */ new WeakMap();\nlet activeWatcher = void 0;\nfunction getCurrentWatcher() {\n return activeWatcher;\n}\nfunction onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) {\n if (owner) {\n let cleanups = cleanupMap.get(owner);\n if (!cleanups) cleanupMap.set(owner, cleanups = []);\n cleanups.push(cleanupFn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onWatcherCleanup() was called when there was no active watcher to associate with.`\n );\n }\n}\nfunction watch(source, cb, options = EMPTY_OBJ) {\n const { immediate, deep, once, scheduler, augmentJob, call } = options;\n const warnInvalidSource = (s) => {\n (options.onWarn || warn)(\n `Invalid watch source: `,\n s,\n `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`\n );\n };\n const reactiveGetter = (source2) => {\n if (deep) return source2;\n if (isShallow(source2) || deep === false || deep === 0)\n return traverse(source2, 1);\n return traverse(source2);\n };\n let effect;\n let getter;\n let cleanup;\n let boundCleanup;\n let forceTrigger = false;\n let isMultiSource = false;\n if (isRef(source)) {\n getter = () => source.value;\n forceTrigger = isShallow(source);\n } else if (isReactive(source)) {\n getter = () => reactiveGetter(source);\n forceTrigger = true;\n } else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some((s) => isReactive(s) || isShallow(s));\n getter = () => source.map((s) => {\n if (isRef(s)) {\n return s.value;\n } else if (isReactive(s)) {\n return reactiveGetter(s);\n } else if (isFunction(s)) {\n return call ? call(s, 2) : s();\n } else {\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(s);\n }\n });\n } else if (isFunction(source)) {\n if (cb) {\n getter = call ? () => call(source, 2) : source;\n } else {\n getter = () => {\n if (cleanup) {\n pauseTracking();\n try {\n cleanup();\n } finally {\n resetTracking();\n }\n }\n const currentEffect = activeWatcher;\n activeWatcher = effect;\n try {\n return call ? call(source, 3, [boundCleanup]) : source(boundCleanup);\n } finally {\n activeWatcher = currentEffect;\n }\n };\n }\n } else {\n getter = NOOP;\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(source);\n }\n if (cb && deep) {\n const baseGetter = getter;\n const depth = deep === true ? Infinity : deep;\n getter = () => traverse(baseGetter(), depth);\n }\n const scope = getCurrentScope();\n const watchHandle = () => {\n effect.stop();\n if (scope) {\n remove(scope.effects, effect);\n }\n };\n if (once && cb) {\n const _cb = cb;\n cb = (...args) => {\n _cb(...args);\n watchHandle();\n };\n }\n let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n const job = (immediateFirstRun) => {\n if (!(effect.flags & 1) || !effect.dirty && !immediateFirstRun) {\n return;\n }\n if (cb) {\n const newValue = effect.run();\n if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) {\n if (cleanup) {\n cleanup();\n }\n const currentWatcher = activeWatcher;\n activeWatcher = effect;\n try {\n const args = [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,\n boundCleanup\n ];\n call ? call(cb, 3, args) : (\n // @ts-expect-error\n cb(...args)\n );\n oldValue = newValue;\n } finally {\n activeWatcher = currentWatcher;\n }\n }\n } else {\n effect.run();\n }\n };\n if (augmentJob) {\n augmentJob(job);\n }\n effect = new ReactiveEffect(getter);\n effect.scheduler = scheduler ? () => scheduler(job, false) : job;\n boundCleanup = (fn) => onWatcherCleanup(fn, false, effect);\n cleanup = effect.onStop = () => {\n const cleanups = cleanupMap.get(effect);\n if (cleanups) {\n if (call) {\n call(cleanups, 4);\n } else {\n for (const cleanup2 of cleanups) cleanup2();\n }\n cleanupMap.delete(effect);\n }\n };\n if (!!(process.env.NODE_ENV !== \"production\")) {\n effect.onTrack = options.onTrack;\n effect.onTrigger = options.onTrigger;\n }\n if (cb) {\n if (immediate) {\n job(true);\n } else {\n oldValue = effect.run();\n }\n } else if (scheduler) {\n scheduler(job.bind(null, true), true);\n } else {\n effect.run();\n }\n watchHandle.pause = effect.pause.bind(effect);\n watchHandle.resume = effect.resume.bind(effect);\n watchHandle.stop = watchHandle;\n return watchHandle;\n}\nfunction traverse(value, depth = Infinity, seen) {\n if (depth <= 0 || !isObject(value) || value[\"__v_skip\"]) {\n return value;\n }\n seen = seen || /* @__PURE__ */ new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n depth--;\n if (isRef(value)) {\n traverse(value.value, depth, seen);\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n traverse(value[i], depth, seen);\n }\n } else if (isSet(value) || isMap(value)) {\n value.forEach((v) => {\n traverse(v, depth, seen);\n });\n } else if (isPlainObject(value)) {\n for (const key in value) {\n traverse(value[key], depth, seen);\n }\n for (const key of Object.getOwnPropertySymbols(value)) {\n if (Object.prototype.propertyIsEnumerable.call(value, key)) {\n traverse(value[key], depth, seen);\n }\n }\n }\n return value;\n}\n\nexport { ARRAY_ITERATE_KEY, EffectFlags, EffectScope, ITERATE_KEY, MAP_KEY_ITERATE_KEY, ReactiveEffect, ReactiveFlags, TrackOpTypes, TriggerOpTypes, WatchErrorCodes, computed, customRef, effect, effectScope, enableTracking, getCurrentScope, getCurrentWatcher, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onEffectCleanup, onScopeDispose, onWatcherCleanup, pauseTracking, proxyRefs, reactive, reactiveReadArray, readonly, ref, resetTracking, shallowReactive, shallowReadArray, shallowReadonly, shallowRef, stop, toRaw, toReactive, toReadonly, toRef, toRefs, toValue, track, traverse, trigger, triggerRef, unref, watch };\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}