import { isFunction, isPromise, isArray, getGlobalThis, isString, camelize, capitalize, extend, NOOP, EMPTY_OBJ, remove, toHandlerKey, isObject, normalizeClass, normalizeStyle, isOn, hyphenate, hasChanged, toNumber, isHTMLTag, isSVGTag, isSet, isMap, isPlainObject, invokeArrayFns, isRegExp, EMPTY_ARR, isModelListener, isBuiltInDirective, hasOwn, isReservedProp, makeMap, looseToNumber, isGloballyAllowed, NO, def, toRawType, stringifyStyle, isKnownSvgAttr, isBooleanAttr, isKnownHtmlAttr, includeBooleanAttr, isRenderableAttrValue } from '@vue/shared'; export { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared'; import { isRef, isShallow, isReactive, ReactiveEffect, getCurrentScope, ref, pauseTracking, resetTracking, isProxy, computed as computed$1, customRef, toRaw, proxyRefs, track, markRaw, isReadonly, shallowReadonly, reactive, EffectScope, shallowReactive, trigger } from '@vue/reactivity'; export { EffectScope, ReactiveEffect, TrackOpTypes, TriggerOpTypes, customRef, effect, effectScope, getCurrentScope, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, triggerRef, unref } from '@vue/reactivity'; import { isRootHook, isRootImmediateHook, ON_LOAD, UniInputElement, UniTextAreaElement, UniElement, UniTextNode, UniCommentNode, forcePatchProp, JSON_PROTOCOL, resolveOwnerEl, ATTR_V_OWNER_ID, ATTR_V_RENDERJS } from '@dcloudio/uni-shared'; /** * @dcloudio/uni-app-service-vue v3.4.21 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT **/ var stack = []; function pushWarningContext(vnode) { stack.push(vnode); } function popWarningContext() { stack.pop(); } function warn$1(msg) { pauseTracking(); var instance = stack.length ? stack[stack.length - 1].component : null; var appWarnHandler = instance && instance.appContext.config.warnHandler; var trace = getComponentTrace(); for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } if (appWarnHandler) { callWithErrorHandling(appWarnHandler, instance, 11, [msg + args.map(a => { var _a, _b; return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a); }).join(""), instance && instance.proxy, trace.map(_ref => { var { vnode } = _ref; return "at <".concat(formatComponentName(instance, vnode.type), ">"); }).join("\n"), trace]); } else { var warnArgs = ["[Vue warn]: ".concat(msg), ...args]; if (trace.length && // avoid spamming console during tests true) { warnArgs.push("\n", ...formatTrace(trace)); } console.warn(...warnArgs); } resetTracking(); } function getComponentTrace() { var currentVNode = stack[stack.length - 1]; if (!currentVNode) { return []; } var normalizedStack = []; while (currentVNode) { var last = normalizedStack[0]; if (last && last.vnode === currentVNode) { last.recurseCount++; } else { normalizedStack.push({ vnode: currentVNode, recurseCount: 0 }); } var parentInstance = currentVNode.component && currentVNode.component.parent; currentVNode = parentInstance && parentInstance.vnode; } return normalizedStack; } function formatTrace(trace) { var logs = []; trace.forEach((entry, i) => { logs.push(...(i === 0 ? [] : ["\n"]), ...formatTraceEntry(entry)); }); return logs; } function formatTraceEntry(_ref2) { var { vnode, recurseCount } = _ref2; var postfix = recurseCount > 0 ? "... (".concat(recurseCount, " recursive calls)") : ""; var isRoot = vnode.component ? vnode.component.parent == null : false; var open = " at <".concat(formatComponentName(vnode.component, vnode.type, isRoot)); var close = ">" + postfix; return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close]; } function formatProps(props) { var res = []; var keys = Object.keys(props); keys.slice(0, 3).forEach(key => { res.push(...formatProp(key, props[key])); }); if (keys.length > 3) { res.push(" ..."); } return res; } function formatProp(key, value, raw) { if (isString(value)) { value = JSON.stringify(value); return raw ? value : ["".concat(key, "=").concat(value)]; } else if (typeof value === "number" || typeof value === "boolean" || value == null) { return raw ? value : ["".concat(key, "=").concat(value)]; } else if (isRef(value)) { value = formatProp(key, toRaw(value.value), true); return raw ? value : ["".concat(key, "=Ref<"), value, ">"]; } else if (isFunction(value)) { return ["".concat(key, "=fn").concat(value.name ? "<".concat(value.name, ">") : "")]; } else { value = toRaw(value); return raw ? value : ["".concat(key, "="), value]; } } function assertNumber(val, type) { if (val === void 0) { return; } else if (typeof val !== "number") { warn$1("".concat(type, " is not a valid number - got ").concat(JSON.stringify(val), ".")); } else if (isNaN(val)) { warn$1("".concat(type, " is NaN - the duration expression might be incorrect.")); } } var ErrorCodes = { "SETUP_FUNCTION": 0, "0": "SETUP_FUNCTION", "RENDER_FUNCTION": 1, "1": "RENDER_FUNCTION", "WATCH_GETTER": 2, "2": "WATCH_GETTER", "WATCH_CALLBACK": 3, "3": "WATCH_CALLBACK", "WATCH_CLEANUP": 4, "4": "WATCH_CLEANUP", "NATIVE_EVENT_HANDLER": 5, "5": "NATIVE_EVENT_HANDLER", "COMPONENT_EVENT_HANDLER": 6, "6": "COMPONENT_EVENT_HANDLER", "VNODE_HOOK": 7, "7": "VNODE_HOOK", "DIRECTIVE_HOOK": 8, "8": "DIRECTIVE_HOOK", "TRANSITION_HOOK": 9, "9": "TRANSITION_HOOK", "APP_ERROR_HANDLER": 10, "10": "APP_ERROR_HANDLER", "APP_WARN_HANDLER": 11, "11": "APP_WARN_HANDLER", "FUNCTION_REF": 12, "12": "FUNCTION_REF", "ASYNC_COMPONENT_LOADER": 13, "13": "ASYNC_COMPONENT_LOADER", "SCHEDULER": 14, "14": "SCHEDULER" }; var ErrorTypeStrings$1 = { ["sp"]: "serverPrefetch hook", ["bc"]: "beforeCreate hook", ["c"]: "created hook", ["bm"]: "beforeMount hook", ["m"]: "mounted hook", ["bu"]: "beforeUpdate hook", ["u"]: "updated", ["bum"]: "beforeUnmount hook", ["um"]: "unmounted hook", ["a"]: "activated hook", ["da"]: "deactivated hook", ["ec"]: "errorCaptured hook", ["rtc"]: "renderTracked hook", ["rtg"]: "renderTriggered hook", [0]: "setup function", [1]: "render function", [2]: "watcher getter", [3]: "watcher callback", [4]: "watcher cleanup function", [5]: "native event handler", [6]: "component event handler", [7]: "vnode hook", [8]: "directive hook", [9]: "transition hook", [10]: "app errorHandler", [11]: "app warnHandler", [12]: "ref function", [13]: "async component loader", [14]: "scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ." }; function callWithErrorHandling(fn, instance, type, args) { try { return args ? fn(...args) : fn(); } catch (err) { handleError(err, instance, type); } } function callWithAsyncErrorHandling(fn, instance, type, args) { if (isFunction(fn)) { var res = callWithErrorHandling(fn, instance, type, args); if (res && isPromise(res)) { res.catch(err => { handleError(err, instance, type); }); } return res; } var values = []; for (var i = 0; i < fn.length; i++) { values.push(callWithAsyncErrorHandling(fn[i], instance, type, args)); } return values; } function handleError(err, instance, type) { var throwInDev = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true; var contextVNode = instance ? instance.vnode : null; if (instance) { var cur = instance.parent; var exposedInstance = instance.proxy; var errorInfo = ErrorTypeStrings$1[type] || type; while (cur) { var errorCapturedHooks = cur.ec; if (errorCapturedHooks) { for (var i = 0; i < errorCapturedHooks.length; i++) { if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) { return; } } } cur = cur.parent; } var appErrorHandler = instance.appContext.config.errorHandler; if (appErrorHandler) { callWithErrorHandling(appErrorHandler, null, 10, [err, exposedInstance, errorInfo]); return; } } logError(err, type, contextVNode, throwInDev); } function logError(err, type, contextVNode) { var throwInDev = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true; { var info = ErrorTypeStrings$1[type] || type; if (contextVNode) { pushWarningContext(contextVNode); } warn$1("Unhandled error".concat(info ? " during execution of ".concat(info) : "")); if (contextVNode) { popWarningContext(); } if (throwInDev) { console.error(err); } else { console.error(err); } } } var isFlushing = false; var isFlushPending = false; var queue = []; var flushIndex = 0; var pendingPostFlushCbs = []; var activePostFlushCbs = null; var postFlushIndex = 0; var iOSPromise = { then(callback) { setTimeout(() => callback(), 0); } }; var isIOS = exports.platform === "iOS"; var resolvedPromise = isIOS ? iOSPromise : Promise.resolve(); var currentFlushPromise = null; var RECURSION_LIMIT = 100; function nextTick(fn) { var p = currentFlushPromise || resolvedPromise; return fn ? p.then(this ? fn.bind(this) : fn) : p; } function findInsertionIndex(id) { var start = flushIndex + 1; var end = queue.length; while (start < end) { var middle = start + end >>> 1; var middleJob = queue[middle]; var middleJobId = getId(middleJob); if (middleJobId < id || middleJobId === id && middleJob.pre) { start = middle + 1; } else { end = middle; } } return start; } function queueJob(job) { if (!queue.length || !queue.includes(job, isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex)) { if (job.id == null) { queue.push(job); } else { queue.splice(findInsertionIndex(job.id), 0, job); } queueFlush(); } } function queueFlush() { if (!isFlushing && !isFlushPending) { isFlushPending = true; currentFlushPromise = resolvedPromise.then(flushJobs); } } function invalidateJob(job) { var i = queue.indexOf(job); if (i > flushIndex) { queue.splice(i, 1); } } function queuePostFlushCb(cb) { if (!isArray(cb)) { if (!activePostFlushCbs || !activePostFlushCbs.includes(cb, cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex)) { pendingPostFlushCbs.push(cb); } } else { pendingPostFlushCbs.push(...cb); } queueFlush(); } function flushPreFlushCbs(instance, seen) { var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : isFlushing ? flushIndex + 1 : 0; { seen = seen || /* @__PURE__ */new Map(); } for (; i < queue.length; i++) { var cb = queue[i]; if (cb && cb.pre) { if (instance && cb.id !== instance.uid) { continue; } if (checkRecursiveUpdates(seen, cb)) { continue; } queue.splice(i, 1); i--; cb(); } } } function flushPostFlushCbs(seen) { if (pendingPostFlushCbs.length) { var deduped = [...new Set(pendingPostFlushCbs)].sort((a, b) => getId(a) - getId(b)); pendingPostFlushCbs.length = 0; if (activePostFlushCbs) { activePostFlushCbs.push(...deduped); return; } activePostFlushCbs = deduped; { seen = seen || /* @__PURE__ */new Map(); } for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) { if (checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) { continue; } activePostFlushCbs[postFlushIndex](); } activePostFlushCbs = null; postFlushIndex = 0; } } var getId = job => job.id == null ? Infinity : job.id; var comparator = (a, b) => { var diff = getId(a) - getId(b); if (diff === 0) { if (a.pre && !b.pre) return -1; if (b.pre && !a.pre) return 1; } return diff; }; function flushJobs(seen) { isFlushPending = false; isFlushing = true; { seen = seen || /* @__PURE__ */new Map(); } queue.sort(comparator); var check = job => checkRecursiveUpdates(seen, job); try { for (flushIndex = 0; flushIndex < queue.length; flushIndex++) { var job = queue[flushIndex]; if (job && job.active !== false) { if (!!("development" !== "production") && check(job)) { continue; } callWithErrorHandling(job, null, 14); } } } finally { flushIndex = 0; queue.length = 0; flushPostFlushCbs(seen); isFlushing = false; currentFlushPromise = null; if (queue.length || pendingPostFlushCbs.length) { flushJobs(seen); } } } function checkRecursiveUpdates(seen, fn) { if (!seen.has(fn)) { seen.set(fn, 1); } else { var count = seen.get(fn); if (count > RECURSION_LIMIT) { var instance = fn.ownerInstance; var componentName = instance && getComponentName(instance.type); handleError("Maximum recursive updates exceeded".concat(componentName ? " in component <".concat(componentName, ">") : "", ". This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function."), null, 10); return true; } else { seen.set(fn, count + 1); } } } var isHmrUpdating = false; var hmrDirtyComponents = /* @__PURE__ */new Set(); { getGlobalThis().__VUE_HMR_RUNTIME__ = { createRecord: tryWrap(createRecord), rerender: tryWrap(rerender), reload: tryWrap(reload) }; } var map = /* @__PURE__ */new Map(); function registerHMR(instance) { var id = instance.type.__hmrId; var record = map.get(id); if (!record) { createRecord(id, instance.type); record = map.get(id); } record.instances.add(instance); } function unregisterHMR(instance) { map.get(instance.type.__hmrId).instances.delete(instance); } function createRecord(id, initialDef) { if (map.has(id)) { return false; } map.set(id, { initialDef: normalizeClassComponent(initialDef), instances: /* @__PURE__ */new Set() }); return true; } function normalizeClassComponent(component) { return isClassComponent(component) ? component.__vccOpts : component; } function rerender(id, newRender) { var record = map.get(id); if (!record) { return; } record.initialDef.render = newRender; [...record.instances].forEach(instance => { if (newRender) { instance.render = newRender; normalizeClassComponent(instance.type).render = newRender; } instance.renderCache = []; isHmrUpdating = true; instance.effect.dirty = true; instance.update(); isHmrUpdating = false; }); } function reload(id, newComp) { var record = map.get(id); if (!record) return; newComp = normalizeClassComponent(newComp); updateComponentDef(record.initialDef, newComp); var instances = [...record.instances]; for (var instance of instances) { var oldComp = normalizeClassComponent(instance.type); if (!hmrDirtyComponents.has(oldComp)) { if (oldComp !== record.initialDef) { updateComponentDef(oldComp, newComp); } hmrDirtyComponents.add(oldComp); } instance.appContext.propsCache.delete(instance.type); instance.appContext.emitsCache.delete(instance.type); instance.appContext.optionsCache.delete(instance.type); if (instance.ceReload) { hmrDirtyComponents.add(oldComp); instance.ceReload(newComp.styles); hmrDirtyComponents.delete(oldComp); } else if (instance.parent) { instance.parent.effect.dirty = true; queueJob(instance.parent.update); } else if (instance.appContext.reload) { instance.appContext.reload(); } else if (typeof window !== "undefined") { window.location.reload(); } else { console.warn("[HMR] Root or manually mounted instance modified. Full reload required."); } } queuePostFlushCb(() => { for (var _instance of instances) { hmrDirtyComponents.delete(normalizeClassComponent(_instance.type)); } }); } function updateComponentDef(oldComp, newComp) { extend(oldComp, newComp); for (var key in oldComp) { if (key !== "__file" && !(key in newComp)) { delete oldComp[key]; } } } function tryWrap(fn) { return (id, arg) => { try { return fn(id, arg); } catch (e) { console.error(e); console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required."); } }; } var devtools$1; var buffer = []; var devtoolsNotInstalled = false; function emit$1(event) { for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { args[_key2 - 1] = arguments[_key2]; } if (devtools$1) { devtools$1.emit(event, ...args); } else if (!devtoolsNotInstalled) { buffer.push({ event, args }); } } function setDevtoolsHook$1(hook, target) { var _a, _b; devtools$1 = hook; if (devtools$1) { devtools$1.enabled = true; buffer.forEach(_ref3 => { var { event, args } = _ref3; return devtools$1.emit(event, ...args); }); buffer = []; } else if ( // handle late devtools injection - only do this if we are in an actual // browser environment to avoid the timer handle stalling test runner exit // (#4815) typeof window !== "undefined" && // some envs mock window but not fully // eslint-disable-next-line no-restricted-globals window.HTMLElement && // also exclude jsdom // eslint-disable-next-line no-restricted-globals !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes("jsdom"))) { var replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []; replay.push(newHook => { setDevtoolsHook$1(newHook, target); }); setTimeout(() => { if (!devtools$1) { target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null; devtoolsNotInstalled = true; buffer = []; } }, 3e3); } else { devtoolsNotInstalled = true; buffer = []; } } function devtoolsInitApp(app, version) { emit$1("app:init" /* APP_INIT */, app, version, { Fragment, Text, Comment, Static }); } function devtoolsUnmountApp(app) { emit$1("app:unmount" /* APP_UNMOUNT */, app); } var devtoolsComponentAdded = /* @__PURE__ */createDevtoolsComponentHook("component:added" /* COMPONENT_ADDED */); var devtoolsComponentUpdated = /* @__PURE__ */createDevtoolsComponentHook("component:updated" /* COMPONENT_UPDATED */); var _devtoolsComponentRemoved = /* @__PURE__ */createDevtoolsComponentHook("component:removed" /* COMPONENT_REMOVED */); var devtoolsComponentRemoved = component => { if (devtools$1 && typeof devtools$1.cleanupBuffer === "function" && // remove the component if it wasn't buffered !devtools$1.cleanupBuffer(component)) { _devtoolsComponentRemoved(component); } }; /*! #__NO_SIDE_EFFECTS__ */ // @__NO_SIDE_EFFECTS__ function createDevtoolsComponentHook(hook) { return component => { emit$1(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : void 0, component); }; } var devtoolsPerfStart = /* @__PURE__ */createDevtoolsPerformanceHook("perf:start" /* PERFORMANCE_START */); var devtoolsPerfEnd = /* @__PURE__ */createDevtoolsPerformanceHook("perf:end" /* PERFORMANCE_END */); function createDevtoolsPerformanceHook(hook) { return (component, type, time) => { emit$1(hook, component.appContext.app, component.uid, component, type, time); }; } function devtoolsComponentEmit(component, event, params) { emit$1("component:emit" /* COMPONENT_EMIT */, component.appContext.app, component, event, params); } function emit(instance, event) { if (instance.isUnmounted) return; var props = instance.vnode.props || EMPTY_OBJ; for (var _len3 = arguments.length, rawArgs = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) { rawArgs[_key3 - 2] = arguments[_key3]; } { var { emitsOptions, propsOptions: [propsOptions] } = instance; if (emitsOptions) { if (!(event in emitsOptions) && true) { if (!propsOptions || !(toHandlerKey(event) in propsOptions)) { warn$1("Component emitted event \"".concat(event, "\" but it is neither declared in the emits option nor as an \"").concat(toHandlerKey(event), "\" prop.")); } } else { var validator = emitsOptions[event]; if (isFunction(validator)) { var isValid = validator(...rawArgs); if (!isValid) { warn$1("Invalid event arguments: event validation failed for event \"".concat(event, "\".")); } } } } } var args = rawArgs; var isModelListener = event.startsWith("update:"); var modelArg = isModelListener && event.slice(7); if (modelArg && modelArg in props) { var modifiersKey = "".concat(modelArg === "modelValue" ? "model" : modelArg, "Modifiers"); var { number, trim } = props[modifiersKey] || EMPTY_OBJ; if (trim) { args = rawArgs.map(a => isString(a) ? a.trim() : a); } if (number) { args = rawArgs.map(looseToNumber); } } { devtoolsComponentEmit(instance, event, args); } { var lowerCaseEvent = event.toLowerCase(); if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) { warn$1("Event \"".concat(lowerCaseEvent, "\" is emitted in component ").concat(formatComponentName(instance, instance.type), " but the handler is registered for \"").concat(event, "\". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use \"").concat(hyphenate(event), "\" instead of \"").concat(event, "\".")); } } var handlerName; var handler = props[handlerName = toHandlerKey(event)] || // also try camelCase event handler (#2249) props[handlerName = toHandlerKey(camelize(event))]; if (!handler && isModelListener) { handler = props[handlerName = toHandlerKey(hyphenate(event))]; } if (handler) { callWithAsyncErrorHandling(handler, instance, 6, args); } var onceHandler = props[handlerName + "Once"]; if (onceHandler) { if (!instance.emitted) { instance.emitted = {}; } else if (instance.emitted[handlerName]) { return; } instance.emitted[handlerName] = true; callWithAsyncErrorHandling(onceHandler, instance, 6, args); } } function normalizeEmitsOptions(comp, appContext) { var asMixin = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var cache = appContext.emitsCache; var cached = cache.get(comp); if (cached !== void 0) { return cached; } var raw = comp.emits; var normalized = {}; var hasExtends = false; if (!isFunction(comp)) { var extendEmits = raw2 => { var normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true); if (normalizedFromExtend) { hasExtends = true; extend(normalized, normalizedFromExtend); } }; if (!asMixin && appContext.mixins.length) { appContext.mixins.forEach(extendEmits); } if (comp.extends) { extendEmits(comp.extends); } if (comp.mixins) { comp.mixins.forEach(extendEmits); } } if (!raw && !hasExtends) { if (isObject(comp)) { cache.set(comp, null); } return null; } if (isArray(raw)) { raw.forEach(key => normalized[key] = null); } else { extend(normalized, raw); } if (isObject(comp)) { cache.set(comp, normalized); } return normalized; } function isEmitListener(options, key) { if (!options || !isOn(key)) { return false; } key = key.slice(2).replace(/Once$/, ""); return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate(key)) || hasOwn(options, key); } var currentRenderingInstance = null; var currentScopeId = null; function setCurrentRenderingInstance(instance) { var prev = currentRenderingInstance; currentRenderingInstance = instance; currentScopeId = instance && instance.type.__scopeId || null; return prev; } function pushScopeId(id) { currentScopeId = id; } function popScopeId() { currentScopeId = null; } var withScopeId = _id => withCtx; function withCtx(fn) { var ctx = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : currentRenderingInstance; var isNonScopedSlot = arguments.length > 2 ? arguments[2] : undefined; if (!ctx) return fn; if (fn._n) { return fn; } var renderFnWithContext = function () { if (renderFnWithContext._d) { setBlockTracking(-1); } var prevInstance = setCurrentRenderingInstance(ctx); var res; try { res = fn(...arguments); } finally { setCurrentRenderingInstance(prevInstance); if (renderFnWithContext._d) { setBlockTracking(1); } } { devtoolsComponentUpdated(ctx); } return res; }; renderFnWithContext._n = true; renderFnWithContext._c = true; renderFnWithContext._d = true; return renderFnWithContext; } var accessedAttrs = false; function markAttrsAccessed() { accessedAttrs = true; } function renderComponentRoot(instance) { var { type: Component, vnode, proxy, withProxy, props, propsOptions: [propsOptions], slots, attrs, emit, render, renderCache, data, setupState, ctx, inheritAttrs } = instance; var result; var fallthroughAttrs; var prev = setCurrentRenderingInstance(instance); { accessedAttrs = false; } try { if (vnode.shapeFlag & 4) { var proxyToUse = withProxy || proxy; var thisProxy = !!("development" !== "production") && setupState.__isScriptSetup ? new Proxy(proxyToUse, { get(target, key, receiver) { warn$1("Property '".concat(String(key), "' was accessed via 'this'. Avoid using 'this' in templates.")); return Reflect.get(target, key, receiver); } }) : proxyToUse; result = normalizeVNode(render.call(thisProxy, proxyToUse, renderCache, props, setupState, data, ctx)); fallthroughAttrs = attrs; } else { var render2 = Component; if (!!("development" !== "production") && attrs === props) { markAttrsAccessed(); } result = normalizeVNode(render2.length > 1 ? render2(props, !!("development" !== "production") ? { get attrs() { markAttrsAccessed(); return attrs; }, slots, emit } : { attrs, slots, emit }) : render2(props, null /* we know it doesn't need it */)); fallthroughAttrs = Component.props ? attrs : getFunctionalFallthrough(attrs); } } catch (err) { blockStack.length = 0; handleError(err, instance, 1); result = createVNode(Comment); } var root = result; var setRoot = void 0; if (result.patchFlag > 0 && result.patchFlag & 2048) { [root, setRoot] = getChildRoot(result); } if (fallthroughAttrs && inheritAttrs !== false) { var keys = Object.keys(fallthroughAttrs); var { shapeFlag } = root; if (keys.length) { if (shapeFlag & (1 | 6)) { if (propsOptions && keys.some(isModelListener)) { fallthroughAttrs = filterModelListeners(fallthroughAttrs, propsOptions); } root = cloneVNode(root, fallthroughAttrs); } else if (!accessedAttrs && root.type !== Comment) { var allAttrs = Object.keys(attrs); var eventAttrs = []; var extraAttrs = []; for (var i = 0, l = allAttrs.length; i < l; i++) { var key = allAttrs[i]; if (isOn(key)) { if (!isModelListener(key)) { eventAttrs.push(key[2].toLowerCase() + key.slice(3)); } } else { extraAttrs.push(key); } } if (extraAttrs.length) { warn$1("Extraneous non-props attributes (".concat(extraAttrs.join(", "), ") were passed to component but could not be automatically inherited because component renders fragment or text root nodes.")); } if (eventAttrs.length) { warn$1("Extraneous non-emits event listeners (".concat(eventAttrs.join(", "), ") were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the \"emits\" option.")); } } } } if (vnode.dirs) { if (!isElementRoot(root)) { warn$1("Runtime directive used on component with non-element root node. The directives will not function as intended."); } root = cloneVNode(root); root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs; } if (vnode.transition) { if (!isElementRoot(root)) { warn$1("Component inside renders non-element root node that cannot be animated."); } root.transition = vnode.transition; } if (setRoot) { setRoot(root); } else { result = root; } setCurrentRenderingInstance(prev); return result; } var getChildRoot = vnode => { var rawChildren = vnode.children; var dynamicChildren = vnode.dynamicChildren; var childRoot = filterSingleRoot(rawChildren, false); if (!childRoot) { return [vnode, void 0]; } else if (childRoot.patchFlag > 0 && childRoot.patchFlag & 2048) { return getChildRoot(childRoot); } var index = rawChildren.indexOf(childRoot); var dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1; var setRoot = updatedRoot => { rawChildren[index] = updatedRoot; if (dynamicChildren) { if (dynamicIndex > -1) { dynamicChildren[dynamicIndex] = updatedRoot; } else if (updatedRoot.patchFlag > 0) { vnode.dynamicChildren = [...dynamicChildren, updatedRoot]; } } }; return [normalizeVNode(childRoot), setRoot]; }; function filterSingleRoot(children) { var recurse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; var singleRoot; for (var i = 0; i < children.length; i++) { var child = children[i]; if (isVNode(child)) { if (child.type !== Comment || child.children === "v-if") { if (singleRoot) { return; } else { singleRoot = child; if (recurse && singleRoot.patchFlag > 0 && singleRoot.patchFlag & 2048) { return filterSingleRoot(singleRoot.children); } } } } else { return; } } return singleRoot; } var getFunctionalFallthrough = attrs => { var res; for (var key in attrs) { if (key === "class" || key === "style" || isOn(key)) { (res || (res = {}))[key] = attrs[key]; } } return res; }; var filterModelListeners = (attrs, props) => { var res = {}; for (var key in attrs) { if (!isModelListener(key) || !(key.slice(9) in props)) { res[key] = attrs[key]; } } return res; }; var isElementRoot = vnode => { return vnode.shapeFlag & (6 | 1) || vnode.type === Comment; }; function shouldUpdateComponent(prevVNode, nextVNode, optimized) { var { props: prevProps, children: prevChildren, component } = prevVNode; var { props: nextProps, children: nextChildren, patchFlag } = nextVNode; var emits = component.emitsOptions; if ((prevChildren || nextChildren) && isHmrUpdating) { return true; } if (nextVNode.dirs || nextVNode.transition) { return true; } if (optimized && patchFlag >= 0) { if (patchFlag & 1024) { return true; } if (patchFlag & 16) { if (!prevProps) { return !!nextProps; } return hasPropsChanged(prevProps, nextProps, emits); } else if (patchFlag & 8) { var dynamicProps = nextVNode.dynamicProps; for (var i = 0; i < dynamicProps.length; i++) { var key = dynamicProps[i]; if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) { return true; } } } } else { if (prevChildren || nextChildren) { if (!nextChildren || !nextChildren.$stable) { return true; } } if (prevProps === nextProps) { return false; } if (!prevProps) { return !!nextProps; } if (!nextProps) { return true; } return hasPropsChanged(prevProps, nextProps, emits); } return false; } function hasPropsChanged(prevProps, nextProps, emitsOptions) { var nextKeys = Object.keys(nextProps); if (nextKeys.length !== Object.keys(prevProps).length) { return true; } for (var i = 0; i < nextKeys.length; i++) { var key = nextKeys[i]; if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) { return true; } } return false; } function updateHOCHostEl(_ref4, el) { var { vnode, parent } = _ref4; while (parent) { var root = parent.subTree; if (root.suspense && root.suspense.activeBranch === vnode) { root.el = vnode.el; } if (root === vnode) { (vnode = parent.vnode).el = el; parent = parent.parent; } else { break; } } } var COMPONENTS = "components"; var DIRECTIVES = "directives"; function resolveComponent(name, maybeSelfReference) { return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name; } var NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc"); function resolveDynamicComponent(component) { if (isString(component)) { return resolveAsset(COMPONENTS, component, false) || component; } else { return component || NULL_DYNAMIC_COMPONENT; } } function resolveDirective(name) { return resolveAsset(DIRECTIVES, name); } function resolveAsset(type, name) { var warnMissing = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; var maybeSelfReference = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var instance = currentRenderingInstance || currentInstance; if (instance) { var Component = instance.type; if (type === COMPONENTS) { var selfName = getComponentName(Component, false); if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) { return Component; } } var res = // local registration // check instance[type] first which is resolved for options API resolve(instance[type] || Component[type], name) || // global registration resolve(instance.appContext[type], name); if (!res && maybeSelfReference) { return Component; } if (warnMissing && !res) { var extra = type === COMPONENTS ? "\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement." : ""; warn$1("Failed to resolve ".concat(type.slice(0, -1), ": ").concat(name).concat(extra)); } return res; } else { warn$1("resolve".concat(capitalize(type.slice(0, -1)), " can only be used in render() or setup().")); } } function resolve(registry, name) { return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]); } var isSuspense = type => type.__isSuspense; var suspenseId = 0; var SuspenseImpl = { name: "Suspense", // In order to make Suspense tree-shakable, we need to avoid importing it // directly in the renderer. The renderer checks for the __isSuspense flag // on a vnode's type and calls the `process` method, passing in renderer // internals. __isSuspense: true, process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) { if (n1 == null) { mountSuspense(n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals); } else { if (parentSuspense && parentSuspense.deps > 0 && !n1.suspense.isInFallback) { n2.suspense = n1.suspense; n2.suspense.vnode = n2; n2.el = n1.el; return; } patchSuspense(n1, n2, container, anchor, parentComponent, namespace, slotScopeIds, optimized, rendererInternals); } }, hydrate: hydrateSuspense, create: createSuspenseBoundary, normalize: normalizeSuspenseChildren }; var Suspense = SuspenseImpl; function triggerEvent(vnode, name) { var eventListener = vnode.props && vnode.props[name]; if (isFunction(eventListener)) { eventListener(); } } function mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) { var { p: patch, o: { createElement } } = rendererInternals; var hiddenContainer = createElement("div", container); var suspense = vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, namespace, slotScopeIds, optimized, rendererInternals); patch(null, suspense.pendingBranch = vnode.ssContent, hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds); if (suspense.deps > 0) { triggerEvent(vnode, "onPending"); triggerEvent(vnode, "onFallback"); patch(null, vnode.ssFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context namespace, slotScopeIds); setActiveBranch(suspense, vnode.ssFallback); } else { suspense.resolve(false, true); } } function patchSuspense(n1, n2, container, anchor, parentComponent, namespace, slotScopeIds, optimized, _ref5) { var { p: patch, um: unmount, o: { createElement } } = _ref5; var suspense = n2.suspense = n1.suspense; suspense.vnode = n2; n2.el = n1.el; var newBranch = n2.ssContent; var newFallback = n2.ssFallback; var { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense; if (pendingBranch) { suspense.pendingBranch = newBranch; if (isSameVNodeType(newBranch, pendingBranch)) { patch(pendingBranch, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized); if (suspense.deps <= 0) { suspense.resolve(); } else if (isInFallback) { if (!isHydrating) { patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context namespace, slotScopeIds, optimized); setActiveBranch(suspense, newFallback); } } } else { suspense.pendingId = suspenseId++; if (isHydrating) { suspense.isHydrating = false; suspense.activeBranch = pendingBranch; } else { unmount(pendingBranch, parentComponent, suspense); } suspense.deps = 0; suspense.effects.length = 0; suspense.hiddenContainer = createElement("div", container); if (isInFallback) { patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized); if (suspense.deps <= 0) { suspense.resolve(); } else { patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context namespace, slotScopeIds, optimized); setActiveBranch(suspense, newFallback); } } else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) { patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, namespace, slotScopeIds, optimized); suspense.resolve(true); } else { patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized); if (suspense.deps <= 0) { suspense.resolve(); } } } } else { if (activeBranch && isSameVNodeType(newBranch, activeBranch)) { patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, namespace, slotScopeIds, optimized); setActiveBranch(suspense, newBranch); } else { triggerEvent(n2, "onPending"); suspense.pendingBranch = newBranch; if (newBranch.shapeFlag & 512) { suspense.pendingId = newBranch.component.suspenseId; } else { suspense.pendingId = suspenseId++; } patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized); if (suspense.deps <= 0) { suspense.resolve(); } else { var { timeout, pendingId } = suspense; if (timeout > 0) { setTimeout(() => { if (suspense.pendingId === pendingId) { suspense.fallback(newFallback); } }, timeout); } else if (timeout === 0) { suspense.fallback(newFallback); } } } } } var hasWarned = false; function createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, namespace, slotScopeIds, optimized, rendererInternals) { var isHydrating = arguments.length > 10 && arguments[10] !== undefined ? arguments[10] : false; if (!hasWarned) { hasWarned = true; console[console.info ? "info" : "log"](" is an experimental feature and its API will likely change."); } var { p: patch, m: move, um: unmount, n: next, o: { parentNode, remove } } = rendererInternals; var parentSuspenseId; var isSuspensible = isVNodeSuspensible(vnode); if (isSuspensible) { if (parentSuspense == null ? void 0 : parentSuspense.pendingBranch) { parentSuspenseId = parentSuspense.pendingId; parentSuspense.deps++; } } var timeout = vnode.props ? toNumber(vnode.props.timeout) : void 0; { assertNumber(timeout, "Suspense timeout"); } var initialAnchor = anchor; var suspense = { vnode, parent: parentSuspense, parentComponent, namespace, container, hiddenContainer, deps: 0, pendingId: suspenseId++, timeout: typeof timeout === "number" ? timeout : -1, activeBranch: null, pendingBranch: null, isInFallback: !isHydrating, isHydrating, isUnmounted: false, effects: [], resolve() { var resume = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; var sync = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; { if (!resume && !suspense.pendingBranch) { throw new Error("suspense.resolve() is called without a pending branch."); } if (suspense.isUnmounted) { throw new Error("suspense.resolve() is called on an already unmounted suspense boundary."); } } var { vnode: vnode2, activeBranch, pendingBranch, pendingId, effects, parentComponent: parentComponent2, container: container2 } = suspense; var delayEnter = false; if (suspense.isHydrating) { suspense.isHydrating = false; } else if (!resume) { delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === "out-in"; if (delayEnter) { activeBranch.transition.afterLeave = () => { if (pendingId === suspense.pendingId) { move(pendingBranch, container2, anchor === initialAnchor ? next(activeBranch) : anchor, 0); queuePostFlushCb(effects); } }; } if (activeBranch) { if (parentNode(activeBranch.el) !== suspense.hiddenContainer) { anchor = next(activeBranch); } unmount(activeBranch, parentComponent2, suspense, true); } if (!delayEnter) { move(pendingBranch, container2, anchor, 0); } } setActiveBranch(suspense, pendingBranch); suspense.pendingBranch = null; suspense.isInFallback = false; var parent = suspense.parent; var hasUnresolvedAncestor = false; while (parent) { if (parent.pendingBranch) { parent.effects.push(...effects); hasUnresolvedAncestor = true; break; } parent = parent.parent; } if (!hasUnresolvedAncestor && !delayEnter) { queuePostFlushCb(effects); } suspense.effects = []; if (isSuspensible) { if (parentSuspense && parentSuspense.pendingBranch && parentSuspenseId === parentSuspense.pendingId) { parentSuspense.deps--; if (parentSuspense.deps === 0 && !sync) { parentSuspense.resolve(); } } } triggerEvent(vnode2, "onResolve"); }, fallback(fallbackVNode) { if (!suspense.pendingBranch) { return; } var { vnode: vnode2, activeBranch, parentComponent: parentComponent2, container: container2, namespace: namespace2 } = suspense; triggerEvent(vnode2, "onFallback"); var anchor2 = next(activeBranch); var mountFallback = () => { if (!suspense.isInFallback) { return; } patch(null, fallbackVNode, container2, anchor2, parentComponent2, null, // fallback tree will not have suspense context namespace2, slotScopeIds, optimized); setActiveBranch(suspense, fallbackVNode); }; var delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in"; if (delayEnter) { activeBranch.transition.afterLeave = mountFallback; } suspense.isInFallback = true; unmount(activeBranch, parentComponent2, null, // no suspense so unmount hooks fire now true // shouldRemove ); if (!delayEnter) { mountFallback(); } }, move(container2, anchor2, type) { suspense.activeBranch && move(suspense.activeBranch, container2, anchor2, type); suspense.container = container2; }, next() { return suspense.activeBranch && next(suspense.activeBranch); }, registerDep(instance, setupRenderEffect) { var isInPendingSuspense = !!suspense.pendingBranch; if (isInPendingSuspense) { suspense.deps++; } var hydratedEl = instance.vnode.el; instance.asyncDep.catch(err => { handleError(err, instance, 0); }).then(asyncSetupResult => { if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) { return; } instance.asyncResolved = true; var { vnode: vnode2 } = instance; { pushWarningContext(vnode2); } handleSetupResult(instance, asyncSetupResult, false); if (hydratedEl) { vnode2.el = hydratedEl; } var placeholder = !hydratedEl && instance.subTree.el; setupRenderEffect(instance, vnode2, // component may have been moved before resolve. // if this is not a hydration, instance.subTree will be the comment // placeholder. parentNode(hydratedEl || instance.subTree.el), // anchor will not be used if this is hydration, so only need to // consider the comment placeholder case. hydratedEl ? null : next(instance.subTree), suspense, namespace, optimized); if (placeholder) { remove(placeholder); } updateHOCHostEl(instance, vnode2.el); { popWarningContext(); } if (isInPendingSuspense && --suspense.deps === 0) { suspense.resolve(); } }); }, unmount(parentSuspense2, doRemove) { suspense.isUnmounted = true; if (suspense.activeBranch) { unmount(suspense.activeBranch, parentComponent, parentSuspense2, doRemove); } if (suspense.pendingBranch) { unmount(suspense.pendingBranch, parentComponent, parentSuspense2, doRemove); } } }; return suspense; } function hydrateSuspense(node, vnode, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals, hydrateNode) { var suspense = vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, node.parentNode, // eslint-disable-next-line no-restricted-globals document.createElement("div"), null, namespace, slotScopeIds, optimized, rendererInternals, true); var result = hydrateNode(node, suspense.pendingBranch = vnode.ssContent, parentComponent, suspense, slotScopeIds, optimized); if (suspense.deps === 0) { suspense.resolve(false, true); } return result; } function normalizeSuspenseChildren(vnode) { var { shapeFlag, children } = vnode; var isSlotChildren = shapeFlag & 32; vnode.ssContent = normalizeSuspenseSlot(isSlotChildren ? children.default : children); vnode.ssFallback = isSlotChildren ? normalizeSuspenseSlot(children.fallback) : createVNode(Comment); } function normalizeSuspenseSlot(s) { var block; if (isFunction(s)) { var trackBlock = isBlockTreeEnabled && s._c; if (trackBlock) { s._d = false; openBlock(); } s = s(); if (trackBlock) { s._d = true; block = currentBlock; closeBlock(); } } if (isArray(s)) { var singleChild = filterSingleRoot(s); if (!singleChild && s.filter(child => child !== NULL_DYNAMIC_COMPONENT).length > 0) { warn$1(" slots expect a single root node."); } s = singleChild; } s = normalizeVNode(s); if (block && !s.dynamicChildren) { s.dynamicChildren = block.filter(c => c !== s); } return s; } function queueEffectWithSuspense(fn, suspense) { if (suspense && suspense.pendingBranch) { if (isArray(fn)) { suspense.effects.push(...fn); } else { suspense.effects.push(fn); } } else { queuePostFlushCb(fn); } } function setActiveBranch(suspense, branch) { suspense.activeBranch = branch; var { vnode, parentComponent } = suspense; var el = branch.el; while (!el && branch.component) { branch = branch.component.subTree; el = branch.el; } vnode.el = el; if (parentComponent && parentComponent.subTree === vnode) { parentComponent.vnode.el = el; updateHOCHostEl(parentComponent, el); } } function isVNodeSuspensible(vnode) { var _a; return ((_a = vnode.props) == null ? void 0 : _a.suspensible) != null && vnode.props.suspensible !== false; } var ssrContextKey = Symbol.for("v-scx"); var useSSRContext = () => { { var ctx = inject(ssrContextKey); if (!ctx) { warn$1("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."); } return ctx; } }; function watchEffect(effect, options) { return doWatch(effect, null, options); } function watchPostEffect(effect, options) { return doWatch(effect, null, extend({}, options, { flush: "post" })); } function watchSyncEffect(effect, options) { return doWatch(effect, null, extend({}, options, { flush: "sync" })); } var INITIAL_WATCHER_VALUE = {}; function watch(source, cb, options) { if (!isFunction(cb)) { warn$1("`watch(fn, options?)` signature has been moved to a separate API. Use `watchEffect(fn, options?)` instead. `watch` now only supports `watch(source, cb, options?) signature."); } return doWatch(source, cb, options); } function doWatch(source, cb) { var { immediate, deep, flush, once, onTrack, onTrigger } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : EMPTY_OBJ; if (cb && once) { var _cb = cb; cb = function () { _cb(...arguments); unwatch(); }; } if (deep !== void 0 && typeof deep === "number") { warn$1("watch() \"deep\" option with number value will be used as watch depth in future versions. Please use a boolean instead to avoid potential breakage."); } if (!cb) { if (immediate !== void 0) { warn$1("watch() \"immediate\" option is only respected when using the watch(source, callback, options?) signature."); } if (deep !== void 0) { warn$1("watch() \"deep\" option is only respected when using the watch(source, callback, options?) signature."); } if (once !== void 0) { warn$1("watch() \"once\" option is only respected when using the watch(source, callback, options?) signature."); } } var warnInvalidSource = s => { warn$1("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."); }; var instance = currentInstance; var reactiveGetter = source2 => deep === true ? source2 : // for deep: false, only traverse root-level properties traverse(source2, deep === false ? 1 : void 0); var getter; var forceTrigger = false; var isMultiSource = false; if (isRef(source)) { getter = () => source.value; forceTrigger = isShallow(source); } else if (isReactive(source)) { getter = () => reactiveGetter(source); forceTrigger = true; } else if (isArray(source)) { isMultiSource = true; forceTrigger = source.some(s => isReactive(s) || isShallow(s)); getter = () => source.map(s => { if (isRef(s)) { return s.value; } else if (isReactive(s)) { return reactiveGetter(s); } else if (isFunction(s)) { return callWithErrorHandling(s, instance, 2); } else { warnInvalidSource(s); } }); } else if (isFunction(source)) { if (cb) { getter = () => callWithErrorHandling(source, instance, 2); } else { getter = () => { if (cleanup) { cleanup(); } return callWithAsyncErrorHandling(source, instance, 3, [onCleanup]); }; } } else { getter = NOOP; warnInvalidSource(source); } if (cb && deep) { var baseGetter = getter; getter = () => traverse(baseGetter()); } var cleanup; var onCleanup = fn => { cleanup = effect.onStop = () => { callWithErrorHandling(fn, instance, 4); cleanup = effect.onStop = void 0; }; }; var ssrCleanup; if (isInSSRComponentSetup) { onCleanup = NOOP; if (!cb) { getter(); } else if (immediate) { callWithAsyncErrorHandling(cb, instance, 3, [getter(), isMultiSource ? [] : void 0, onCleanup]); } if (flush === "sync") { var ctx = useSSRContext(); ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []); } else { return NOOP; } } var oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE; var job = () => { if (!effect.active || !effect.dirty) { return; } if (cb) { var newValue = effect.run(); if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue)) || false) { if (cleanup) { cleanup(); } callWithAsyncErrorHandling(cb, instance, 3, [newValue, // pass undefined as the old value when it's changed for the first time oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue, onCleanup]); oldValue = newValue; } } else { effect.run(); } }; job.allowRecurse = !!cb; var scheduler; if (flush === "sync") { scheduler = job; } else if (flush === "post") { scheduler = () => queuePostRenderEffect(job, instance && instance.suspense); } else { job.pre = true; if (instance) job.id = instance.uid; scheduler = () => queueJob(job); } var effect = new ReactiveEffect(getter, NOOP, scheduler); var scope = getCurrentScope(); var unwatch = () => { effect.stop(); if (scope) { remove(scope.effects, effect); } }; { effect.onTrack = onTrack; effect.onTrigger = onTrigger; } if (cb) { if (immediate) { job(); } else { oldValue = effect.run(); } } else if (flush === "post") { queuePostRenderEffect(effect.run.bind(effect), instance && instance.suspense); } else { effect.run(); } if (ssrCleanup) ssrCleanup.push(unwatch); return unwatch; } function instanceWatch(source, value, options) { var publicThis = this.proxy; var getter = isString(source) ? source.includes(".") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis); var cb; if (isFunction(value)) { cb = value; } else { cb = value.handler; options = value; } var reset = setCurrentInstance(this); var res = doWatch(getter, cb.bind(publicThis), options); reset(); return res; } function createPathGetter(ctx, path) { var segments = path.split("."); return () => { var cur = ctx; for (var i = 0; i < segments.length && cur; i++) { cur = cur[segments[i]]; } return cur; }; } function traverse(value, depth) { var currentDepth = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; var seen = arguments.length > 3 ? arguments[3] : undefined; if (!isObject(value) || value["__v_skip"]) { return value; } if (depth && depth > 0) { if (currentDepth >= depth) { return value; } currentDepth++; } seen = seen || /* @__PURE__ */new Set(); if (seen.has(value)) { return value; } seen.add(value); if (isRef(value)) { traverse(value.value, depth, currentDepth, seen); } else if (isArray(value)) { for (var i = 0; i < value.length; i++) { traverse(value[i], depth, currentDepth, seen); } } else if (isSet(value) || isMap(value)) { value.forEach(v => { traverse(v, depth, currentDepth, seen); }); } else if (isPlainObject(value)) { for (var key in value) { traverse(value[key], depth, currentDepth, seen); } } return value; } function validateDirectiveName(name) { if (isBuiltInDirective(name)) { warn$1("Do not use built-in directive ids as custom directive id: " + name); } } function withDirectives(vnode, directives) { if (currentRenderingInstance === null) { warn$1("withDirectives can only be used inside render functions."); return vnode; } var instance = getExposeProxy(currentRenderingInstance) || currentRenderingInstance.proxy; var bindings = vnode.dirs || (vnode.dirs = []); for (var i = 0; i < directives.length; i++) { var [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i]; if (dir) { if (isFunction(dir)) { dir = { mounted: dir, updated: dir }; } if (dir.deep) { traverse(value); } bindings.push({ dir, instance, value, oldValue: void 0, arg, modifiers }); } } return vnode; } function invokeDirectiveHook(vnode, prevVNode, instance, name) { var bindings = vnode.dirs; var oldBindings = prevVNode && prevVNode.dirs; for (var i = 0; i < bindings.length; i++) { var binding = bindings[i]; if (oldBindings) { binding.oldValue = oldBindings[i].value; } var hook = binding.dir[name]; if (hook) { pauseTracking(); callWithAsyncErrorHandling(hook, instance, 8, [vnode.el, binding, vnode, prevVNode]); resetTracking(); } } } var leaveCbKey = Symbol("_leaveCb"); var enterCbKey = Symbol("_enterCb"); function useTransitionState() { var state = { isMounted: false, isLeaving: false, isUnmounting: false, leavingVNodes: /* @__PURE__ */new Map() }; onMounted(() => { state.isMounted = true; }); onBeforeUnmount(() => { state.isUnmounting = true; }); return state; } var TransitionHookValidator = [Function, Array]; var BaseTransitionPropsValidators = { mode: String, appear: Boolean, persisted: Boolean, // enter onBeforeEnter: TransitionHookValidator, onEnter: TransitionHookValidator, onAfterEnter: TransitionHookValidator, onEnterCancelled: TransitionHookValidator, // leave onBeforeLeave: TransitionHookValidator, onLeave: TransitionHookValidator, onAfterLeave: TransitionHookValidator, onLeaveCancelled: TransitionHookValidator, // appear onBeforeAppear: TransitionHookValidator, onAppear: TransitionHookValidator, onAfterAppear: TransitionHookValidator, onAppearCancelled: TransitionHookValidator }; var BaseTransitionImpl = { name: "BaseTransition", props: BaseTransitionPropsValidators, setup(props, _ref6) { var { slots } = _ref6; var instance = getCurrentInstance(); var state = useTransitionState(); return () => { var children = slots.default && getTransitionRawChildren(slots.default(), true); if (!children || !children.length) { return; } var child = children[0]; if (children.length > 1) { var hasFound = false; for (var c of children) { if (c.type !== Comment) { if (hasFound) { warn$1(" can only be used on a single element or component. Use for lists."); break; } child = c; hasFound = true; } } } var rawProps = toRaw(props); var { mode } = rawProps; if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") { warn$1("invalid mode: ".concat(mode)); } if (state.isLeaving) { return emptyPlaceholder(child); } var innerChild = getKeepAliveChild(child); if (!innerChild) { return emptyPlaceholder(child); } var enterHooks = resolveTransitionHooks(innerChild, rawProps, state, instance); setTransitionHooks(innerChild, enterHooks); var oldChild = instance.subTree; var oldInnerChild = oldChild && getKeepAliveChild(oldChild); if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild)) { var leavingHooks = resolveTransitionHooks(oldInnerChild, rawProps, state, instance); setTransitionHooks(oldInnerChild, leavingHooks); if (mode === "out-in") { state.isLeaving = true; leavingHooks.afterLeave = () => { state.isLeaving = false; if (instance.update.active !== false) { instance.effect.dirty = true; instance.update(); } }; return emptyPlaceholder(child); } else if (mode === "in-out" && innerChild.type !== Comment) { leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => { var leavingVNodesCache = getLeavingNodesForType(state, oldInnerChild); leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild; el[leaveCbKey] = () => { earlyRemove(); el[leaveCbKey] = void 0; delete enterHooks.delayedLeave; }; enterHooks.delayedLeave = delayedLeave; }; } } return child; }; } }; var BaseTransition = BaseTransitionImpl; function getLeavingNodesForType(state, vnode) { var { leavingVNodes } = state; var leavingVNodesCache = leavingVNodes.get(vnode.type); if (!leavingVNodesCache) { leavingVNodesCache = /* @__PURE__ */Object.create(null); leavingVNodes.set(vnode.type, leavingVNodesCache); } return leavingVNodesCache; } function resolveTransitionHooks(vnode, props, state, instance) { var { appear, mode, persisted = false, onBeforeEnter, onEnter, onAfterEnter, onEnterCancelled, onBeforeLeave, onLeave, onAfterLeave, onLeaveCancelled, onBeforeAppear, onAppear, onAfterAppear, onAppearCancelled } = props; var key = String(vnode.key); var leavingVNodesCache = getLeavingNodesForType(state, vnode); var callHook = (hook, args) => { hook && callWithAsyncErrorHandling(hook, instance, 9, args); }; var callAsyncHook = (hook, args) => { var done = args[1]; callHook(hook, args); if (isArray(hook)) { if (hook.every(hook2 => hook2.length <= 1)) done(); } else if (hook.length <= 1) { done(); } }; var hooks = { mode, persisted, beforeEnter(el) { var hook = onBeforeEnter; if (!state.isMounted) { if (appear) { hook = onBeforeAppear || onBeforeEnter; } else { return; } } if (el[leaveCbKey]) { el[leaveCbKey](true /* cancelled */); } var leavingVNode = leavingVNodesCache[key]; if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) { leavingVNode.el[leaveCbKey](); } callHook(hook, [el]); }, enter(el) { var hook = onEnter; var afterHook = onAfterEnter; var cancelHook = onEnterCancelled; if (!state.isMounted) { if (appear) { hook = onAppear || onEnter; afterHook = onAfterAppear || onAfterEnter; cancelHook = onAppearCancelled || onEnterCancelled; } else { return; } } var called = false; var done = el[enterCbKey] = cancelled => { if (called) return; called = true; if (cancelled) { callHook(cancelHook, [el]); } else { callHook(afterHook, [el]); } if (hooks.delayedLeave) { hooks.delayedLeave(); } el[enterCbKey] = void 0; }; if (hook) { callAsyncHook(hook, [el, done]); } else { done(); } }, leave(el, remove) { var key2 = String(vnode.key); if (el[enterCbKey]) { el[enterCbKey](true /* cancelled */); } if (state.isUnmounting) { return remove(); } callHook(onBeforeLeave, [el]); var called = false; var done = el[leaveCbKey] = cancelled => { if (called) return; called = true; remove(); if (cancelled) { callHook(onLeaveCancelled, [el]); } else { callHook(onAfterLeave, [el]); } el[leaveCbKey] = void 0; if (leavingVNodesCache[key2] === vnode) { delete leavingVNodesCache[key2]; } }; leavingVNodesCache[key2] = vnode; if (onLeave) { callAsyncHook(onLeave, [el, done]); } else { done(); } }, clone(vnode2) { return resolveTransitionHooks(vnode2, props, state, instance); } }; return hooks; } function emptyPlaceholder(vnode) { if (isKeepAlive(vnode)) { vnode = cloneVNode(vnode); vnode.children = null; return vnode; } } function getKeepAliveChild(vnode) { return isKeepAlive(vnode) ? // #7121 ensure get the child component subtree in case // it's been replaced during HMR vnode.component ? vnode.component.subTree : vnode.children ? vnode.children[0] : void 0 : vnode; } function setTransitionHooks(vnode, hooks) { if (vnode.shapeFlag & 6 && vnode.component) { setTransitionHooks(vnode.component.subTree, hooks); } else if (vnode.shapeFlag & 128) { vnode.ssContent.transition = hooks.clone(vnode.ssContent); vnode.ssFallback.transition = hooks.clone(vnode.ssFallback); } else { vnode.transition = hooks; } } function getTransitionRawChildren(children) { var keepComment = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; var parentKey = arguments.length > 2 ? arguments[2] : undefined; var ret = []; var keyedFragmentCount = 0; for (var i = 0; i < children.length; i++) { var child = children[i]; var key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i); if (child.type === Fragment) { if (child.patchFlag & 128) keyedFragmentCount++; ret = ret.concat(getTransitionRawChildren(child.children, keepComment, key)); } else if (keepComment || child.type !== Comment) { ret.push(key != null ? cloneVNode(child, { key }) : child); } } if (keyedFragmentCount > 1) { for (var _i = 0; _i < ret.length; _i++) { ret[_i].patchFlag = -2; } } return ret; } /*! #__NO_SIDE_EFFECTS__ */ // @__NO_SIDE_EFFECTS__ function defineComponent(options, extraOptions) { return isFunction(options) ? // #8326: extend call and options.name access are considered side-effects // by Rollup, so we have to wrap it in a pure-annotated IIFE. /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))() : options; } var isAsyncWrapper = i => !!i.type.__asyncLoader; /*! #__NO_SIDE_EFFECTS__ */ // @__NO_SIDE_EFFECTS__ function defineAsyncComponent(source) { if (isFunction(source)) { source = { loader: source }; } var { loader, loadingComponent, errorComponent, delay = 200, timeout, // undefined = never times out suspensible = true, onError: userOnError } = source; var pendingRequest = null; var resolvedComp; var retries = 0; var retry = () => { retries++; pendingRequest = null; return load(); }; var load = () => { var thisRequest; return pendingRequest || (thisRequest = pendingRequest = loader().catch(err => { err = err instanceof Error ? err : new Error(String(err)); if (userOnError) { return new Promise((resolve, reject) => { var userRetry = () => resolve(retry()); var userFail = () => reject(err); userOnError(err, userRetry, userFail, retries + 1); }); } else { throw err; } }).then(comp => { if (thisRequest !== pendingRequest && pendingRequest) { return pendingRequest; } if (!comp) { warn$1("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."); } if (comp && (comp.__esModule || comp[Symbol.toStringTag] === "Module")) { comp = comp.default; } if (comp && !isObject(comp) && !isFunction(comp)) { throw new Error("Invalid async component load result: ".concat(comp)); } resolvedComp = comp; return comp; })); }; return defineComponent({ name: "AsyncComponentWrapper", __asyncLoader: load, get __asyncResolved() { return resolvedComp; }, setup() { var instance = currentInstance; if (resolvedComp) { return () => createInnerComp(resolvedComp, instance); } var onError = err => { pendingRequest = null; handleError(err, instance, 13, !errorComponent); }; if (suspensible && instance.suspense || isInSSRComponentSetup) { return load().then(comp => { return () => createInnerComp(comp, instance); }).catch(err => { onError(err); return () => errorComponent ? createVNode(errorComponent, { error: err }) : null; }); } var loaded = ref(false); var error = ref(); var delayed = ref(!!delay); if (delay) { setTimeout(() => { delayed.value = false; }, delay); } if (timeout != null) { setTimeout(() => { if (!loaded.value && !error.value) { var err = new Error("Async component timed out after ".concat(timeout, "ms.")); onError(err); error.value = err; } }, timeout); } load().then(() => { loaded.value = true; if (instance.parent && isKeepAlive(instance.parent.vnode)) { instance.parent.effect.dirty = true; queueJob(instance.parent.update); } }).catch(err => { onError(err); error.value = err; }); return () => { if (loaded.value && resolvedComp) { return createInnerComp(resolvedComp, instance); } else if (error.value && errorComponent) { return createVNode(errorComponent, { error: error.value }); } else if (loadingComponent && !delayed.value) { return createVNode(loadingComponent); } }; } }); } function createInnerComp(comp, parent) { var { ref: ref2, props, children, ce } = parent.vnode; var vnode = createVNode(comp, props, children); vnode.ref = ref2; vnode.ce = ce; delete parent.vnode.ce; return vnode; } var isKeepAlive = vnode => vnode.type.__isKeepAlive; var KeepAliveImpl = { name: "KeepAlive", // Marker for special handling inside the renderer. We are not using a === // check directly on KeepAlive in the renderer, because importing it directly // would prevent it from being tree-shaken. __isKeepAlive: true, props: { include: [String, RegExp, Array], exclude: [String, RegExp, Array], max: [String, Number] }, setup(props, _ref7) { var { slots } = _ref7; var instance = getCurrentInstance(); var sharedContext = instance.ctx; if (!sharedContext.renderer) { return () => { var children = slots.default && slots.default(); return children && children.length === 1 ? children[0] : children; }; } var cache = /* @__PURE__ */new Map(); var keys = /* @__PURE__ */new Set(); var current = null; { instance.__v_cache = cache; } var parentSuspense = instance.suspense; var { renderer: { p: patch, m: move, um: _unmount, o: { createElement } } } = sharedContext; var storageContainer = createElement("div", null); sharedContext.activate = (vnode, container, anchor, namespace, optimized) => { var instance2 = vnode.component; move(vnode, container, anchor, 0, parentSuspense); patch(instance2.vnode, vnode, container, anchor, instance2, parentSuspense, namespace, vnode.slotScopeIds, optimized); queuePostRenderEffect(() => { instance2.isDeactivated = false; if (instance2.a) { invokeArrayFns(instance2.a); } var vnodeHook = vnode.props && vnode.props.onVnodeMounted; if (vnodeHook) { invokeVNodeHook(vnodeHook, instance2.parent, vnode); } }, parentSuspense); { devtoolsComponentAdded(instance2); } }; sharedContext.deactivate = vnode => { var instance2 = vnode.component; move(vnode, storageContainer, null, 1, parentSuspense); queuePostRenderEffect(() => { if (instance2.da) { invokeArrayFns(instance2.da); } var vnodeHook = vnode.props && vnode.props.onVnodeUnmounted; if (vnodeHook) { invokeVNodeHook(vnodeHook, instance2.parent, vnode); } instance2.isDeactivated = true; }, parentSuspense); { devtoolsComponentAdded(instance2); } }; function unmount(vnode) { resetShapeFlag(vnode); _unmount(vnode, instance, parentSuspense, true); } function pruneCache(filter) { cache.forEach((vnode, key) => { var name = getComponentName(vnode.type); if (name && (!filter || !filter(name))) { pruneCacheEntry(key); } }); } function pruneCacheEntry(key) { var cached = cache.get(key); if (!current || !isSameVNodeType(cached, current)) { unmount(cached); } else if (current) { resetShapeFlag(current); } cache.delete(key); keys.delete(key); } watch(() => [props.include, props.exclude], _ref8 => { var [include, exclude] = _ref8; include && pruneCache(name => matches(include, name)); exclude && pruneCache(name => !matches(exclude, name)); }, // prune post-render after `current` has been updated { flush: "post", deep: true }); var pendingCacheKey = null; var cacheSubtree = () => { if (pendingCacheKey != null) { cache.set(pendingCacheKey, getInnerChild(instance.subTree)); } }; onMounted(cacheSubtree); onUpdated(cacheSubtree); onBeforeUnmount(() => { cache.forEach(cached => { var { subTree, suspense } = instance; var vnode = getInnerChild(subTree); if (cached.type === vnode.type && cached.key === vnode.key) { resetShapeFlag(vnode); var da = vnode.component.da; da && queuePostRenderEffect(da, suspense); return; } unmount(cached); }); }); return () => { pendingCacheKey = null; if (!slots.default) { return null; } var children = slots.default(); var rawVNode = children[0]; if (children.length > 1) { { warn$1("KeepAlive should contain exactly one component child."); } current = null; return children; } else if (!isVNode(rawVNode) || !(rawVNode.shapeFlag & 4) && !(rawVNode.shapeFlag & 128)) { current = null; return rawVNode; } var vnode = getInnerChild(rawVNode); var comp = vnode.type; var name = getComponentName(isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : comp); var { include, exclude, max } = props; if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) { current = vnode; return rawVNode; } var key = vnode.key == null ? comp : vnode.key; var cachedVNode = cache.get(key); if (vnode.el) { vnode = cloneVNode(vnode); if (rawVNode.shapeFlag & 128) { rawVNode.ssContent = vnode; } } pendingCacheKey = key; if (cachedVNode) { vnode.el = cachedVNode.el; vnode.component = cachedVNode.component; if (vnode.transition) { setTransitionHooks(vnode, vnode.transition); } vnode.shapeFlag |= 512; keys.delete(key); keys.add(key); } else { keys.add(key); if (max && keys.size > parseInt(max, 10)) { pruneCacheEntry(keys.values().next().value); } } vnode.shapeFlag |= 256; current = vnode; return isSuspense(rawVNode.type) ? rawVNode : vnode; }; } }; var KeepAlive = KeepAliveImpl; function matches(pattern, name) { if (isArray(pattern)) { return pattern.some(p => matches(p, name)); } else if (isString(pattern)) { return pattern.split(",").includes(name); } else if (isRegExp(pattern)) { return pattern.test(name); } return false; } function onActivated(hook, target) { registerKeepAliveHook(hook, "a", target); } function onDeactivated(hook, target) { registerKeepAliveHook(hook, "da", target); } function registerKeepAliveHook(hook, type) { var target = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : currentInstance; var wrappedHook = hook.__wdc || (hook.__wdc = () => { var current = target; while (current) { if (current.isDeactivated) { return; } current = current.parent; } return hook(); }); injectHook(type, wrappedHook, target); if (target) { var current = target.parent; while (current && current.parent) { if (isKeepAlive(current.parent.vnode)) { injectToKeepAliveRoot(wrappedHook, type, target, current); } current = current.parent; } } } function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) { var injected = injectHook(type, hook, keepAliveRoot, true /* prepend */); onUnmounted(() => { remove(keepAliveRoot[type], injected); }, target); } function resetShapeFlag(vnode) { vnode.shapeFlag &= ~256; vnode.shapeFlag &= ~512; } function getInnerChild(vnode) { return vnode.shapeFlag & 128 ? vnode.ssContent : vnode; } function injectHook(type, hook) { var target = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : currentInstance; var prepend = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; if (target) { if (isRootHook(type) && target !== target.root) { target = target.root; if (isRootImmediateHook(type)) { var proxy = target.proxy; callWithAsyncErrorHandling(hook.bind(proxy), target, type, ON_LOAD === type ? [proxy.$page.options] : []); } } var { __page_container__ } = target.root.vnode; if (__page_container__) { __page_container__.onInjectHook(type); } var hooks = target[type] || (target[type] = []); var wrappedHook = hook.__weh || (hook.__weh = function () { if (target.isUnmounted) { return; } pauseTracking(); var reset = setCurrentInstance(target); for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { args[_key4] = arguments[_key4]; } var res = callWithAsyncErrorHandling(hook, target, type, args); reset(); resetTracking(); return res; }); if (prepend) { hooks.unshift(wrappedHook); } else { hooks.push(wrappedHook); } return wrappedHook; } else { var apiName = toHandlerKey((ErrorTypeStrings$1[type] || type.replace(/^on/, "")).replace(/ hook$/, "")); warn$1("".concat(apiName, " is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().") + " If you are using async setup(), make sure to register lifecycle hooks before the first await statement."); } } var createHook = lifecycle => function (hook) { var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : currentInstance; return ( // post-create lifecycle registrations are noops during SSR (except for serverPrefetch) (!isInSSRComponentSetup || lifecycle === "sp") && injectHook(lifecycle, function () { return hook(...arguments); }, target) ); }; var onBeforeMount = createHook("bm"); var onMounted = createHook("m"); var onBeforeUpdate = createHook("bu"); var onUpdated = createHook("u"); var onBeforeUnmount = createHook("bum"); var onUnmounted = createHook("um"); var onServerPrefetch = createHook("sp"); var onRenderTriggered = createHook("rtg"); var onRenderTracked = createHook("rtc"); function onErrorCaptured(hook) { var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : currentInstance; injectHook("ec", hook, target); } function renderList(source, renderItem, cache, index) { var ret; var cached = cache && cache[index]; if (isArray(source) || isString(source)) { ret = new Array(source.length); for (var i = 0, l = source.length; i < l; i++) { ret[i] = renderItem(source[i], i, void 0, cached && cached[i]); } } else if (typeof source === "number") { if (!Number.isInteger(source)) { warn$1("The v-for range expect an integer value but got ".concat(source, ".")); } ret = new Array(source); for (var _i2 = 0; _i2 < source; _i2++) { ret[_i2] = renderItem(_i2 + 1, _i2, void 0, cached && cached[_i2]); } } else if (isObject(source)) { if (source[Symbol.iterator]) { ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i])); } else { var keys = Object.keys(source); ret = new Array(keys.length); for (var _i3 = 0, _l = keys.length; _i3 < _l; _i3++) { var key = keys[_i3]; ret[_i3] = renderItem(source[key], key, _i3, cached && cached[_i3]); } } } else { ret = []; } if (cache) { cache[index] = ret; } return ret; } function createSlots(slots, dynamicSlots) { var _loop = function (i) { var slot = dynamicSlots[i]; if (isArray(slot)) { for (var j = 0; j < slot.length; j++) { slots[slot[j].name] = slot[j].fn; } } else if (slot) { slots[slot.name] = slot.key ? function () { var res = slot.fn(...arguments); if (res) res.key = slot.key; return res; } : slot.fn; } }; for (var i = 0; i < dynamicSlots.length; i++) { _loop(i); } return slots; } function renderSlot(slots, name) { var props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; var fallback = arguments.length > 3 ? arguments[3] : undefined; var noSlotted = arguments.length > 4 ? arguments[4] : undefined; if (currentRenderingInstance.isCE || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.isCE) { if (name !== "default") props.name = name; return createVNode("slot", props, fallback && fallback()); } var slot = slots[name]; if (slot && slot.length > 1) { warn$1("SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template."); slot = () => []; } if (slot && slot._c) { slot._d = false; } openBlock(); var validSlotContent = slot && ensureValidVNode(slot(props)); var rendered = createBlock(Fragment, { key: props.key || // slot content array of a dynamic conditional slot may have a branch // key attached in the `createSlots` helper, respect that validSlotContent && validSlotContent.key || "_".concat(name) }, validSlotContent || (fallback ? fallback() : []), validSlotContent && slots._ === 1 ? 64 : -2); if (!noSlotted && rendered.scopeId) { rendered.slotScopeIds = [rendered.scopeId + "-s"]; } if (slot && slot._c) { slot._d = true; } return rendered; } function ensureValidVNode(vnodes) { return vnodes.some(child => { if (!isVNode(child)) return true; if (child.type === Comment) return false; if (child.type === Fragment && !ensureValidVNode(child.children)) return false; return true; }) ? vnodes : null; } function toHandlers(obj, preserveCaseIfNecessary) { var ret = {}; if (!isObject(obj)) { warn$1("v-on with no argument expects an object value."); return ret; } for (var key in obj) { ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? "on:".concat(key) : toHandlerKey(key)] = obj[key]; } return ret; } var getPublicInstance = i => { if (!i) return null; if (isStatefulComponent(i)) return getExposeProxy(i) || i.proxy; return getPublicInstance(i.parent); }; var publicPropertiesMap = // Move PURE marker to new line to workaround compiler discarding it // due to type annotation /* @__PURE__ */ extend(/* @__PURE__ */Object.create(null), { $: i => i, $el: i => i.vnode.el, $data: i => i.data, $props: i => shallowReadonly(i.props), $attrs: i => shallowReadonly(i.attrs), $slots: i => shallowReadonly(i.slots), $refs: i => shallowReadonly(i.refs), $parent: i => getPublicInstance(i.parent), $root: i => getPublicInstance(i.root), $emit: i => i.emit, $options: i => resolveMergedOptions(i), $forceUpdate: i => i.f || (i.f = () => { i.effect.dirty = true; queueJob(i.update); }), $nextTick: i => i.n || (i.n = nextTick.bind(i.proxy)), $watch: i => instanceWatch.bind(i) }); var isReservedPrefix = key => key === "_" || key === "$"; var hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key); var PublicInstanceProxyHandlers = { get(_ref9, key) { var { _: instance } = _ref9; var { ctx, setupState, data, props, accessCache, type, appContext } = instance; if (key === "__isVue") { return true; } var normalizedProps; if (key[0] !== "$") { var n = accessCache[key]; if (n !== void 0) { switch (n) { case 1 /* SETUP */: return setupState[key]; case 2 /* DATA */: return data[key]; case 4 /* CONTEXT */: return ctx[key]; case 3 /* PROPS */: return props[key]; } } else if (hasSetupBinding(setupState, key)) { accessCache[key] = 1 /* SETUP */; return setupState[key]; } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { accessCache[key] = 2 /* DATA */; return data[key]; } else if ( // only cache other properties when instance has declared (thus stable) // props (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key)) { accessCache[key] = 3 /* PROPS */; return props[key]; } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { accessCache[key] = 4 /* CONTEXT */; return ctx[key]; } else if (shouldCacheAccess) { accessCache[key] = 0 /* OTHER */; } } var publicGetter = publicPropertiesMap[key]; var cssModule, globalProperties; if (publicGetter) { if (key === "$attrs") { track(instance, "get", key); markAttrsAccessed(); } else if (key === "$slots") { track(instance, "get", key); } return publicGetter(instance); } else if ( // css module (injected by vue-loader) (cssModule = type.__cssModules) && (cssModule = cssModule[key])) { return cssModule; } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { accessCache[key] = 4 /* CONTEXT */; return ctx[key]; } else if ( // global properties globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)) { { return globalProperties[key]; } } else if (currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading // to infinite warning loop key.indexOf("__v") !== 0)) { if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) { warn$1("Property ".concat(JSON.stringify(key), " must be accessed via $data because it starts with a reserved character (\"$\" or \"_\") and is not proxied on the render context.")); } else if (instance === currentRenderingInstance) { warn$1("Property ".concat(JSON.stringify(key), " was accessed during render but is not defined on instance.")); } } }, set(_ref10, key, value) { var { _: instance } = _ref10; var { data, setupState, ctx } = instance; if (hasSetupBinding(setupState, key)) { setupState[key] = value; return true; } else if (setupState.__isScriptSetup && hasOwn(setupState, key)) { warn$1("Cannot mutate