import { isFunction, isPromise, isArray, isString, camelize, capitalize, NOOP, EMPTY_OBJ, extend, remove, isObject, toHandlerKey, getGlobalThis, normalizeClass, normalizeStyle, isOn, hyphenate, hasChanged, toNumber, isSet, isMap, isPlainObject, invokeArrayFns, isRegExp, EMPTY_ARR, isModelListener, isReservedProp, looseToNumber, hasOwn, isGloballyAllowed, NO, def } 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, 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 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) { return; } 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 = "https://vuejs.org/error-reference/#runtime-".concat(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; { 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; 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; for (; i < queue.length; i++) { var cb = queue[i]; if (cb && cb.pre) { if (instance && cb.id !== instance.uid) { 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; for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) { 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; queue.sort(comparator); var check = NOOP; try { for (flushIndex = 0; flushIndex < queue.length; flushIndex++) { var job = queue[flushIndex]; if (job && job.active !== false) { if (!!("production" !== "production") && check(job)) ; callWithErrorHandling(job, null, 14); } } } finally { flushIndex = 0; queue.length = 0; flushPostFlushCbs(); isFlushing = false; currentFlushPromise = null; if (queue.length || pendingPostFlushCbs.length) { flushJobs(); } } } 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 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 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); } } 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); } } return res; }; renderFnWithContext._n = true; renderFnWithContext._c = true; renderFnWithContext._d = true; return renderFnWithContext; } function markAttrsAccessed() {} 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); try { if (vnode.shapeFlag & 4) { var proxyToUse = withProxy || proxy; var thisProxy = !!("production" !== "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 (!!("production" !== "production") && attrs === props) ; result = normalizeVNode(render2.length > 1 ? render2(props, !!("production" !== "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; 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); } } } if (vnode.dirs) { root = cloneVNode(root); root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs; } if (vnode.transition) { root.transition = vnode.transition; } { result = root; } setCurrentRenderingInstance(prev); return result; } 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; } } } 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; }; function shouldUpdateComponent(prevVNode, nextVNode, optimized) { var { props: prevProps, children: prevChildren, component } = prevVNode; var { props: nextProps, children: nextChildren, patchFlag } = nextVNode; var emits = component.emitsOptions; 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; } return res; } } 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); } } } } } function createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, namespace, slotScopeIds, optimized, rendererInternals) { var isHydrating = arguments.length > 10 && arguments[10] !== undefined ? arguments[10] : false; 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; 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; 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; 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); 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); 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); return ctx; } }; function watchEffect(effect, options) { return doWatch(effect, null, options); } function watchPostEffect(effect, options) { return doWatch(effect, null, { flush: "post" }); } function watchSyncEffect(effect, options) { return doWatch(effect, null, { flush: "sync" }); } var INITIAL_WATCHER_VALUE = {}; function watch(source, cb, options) { 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(); }; } 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 ; }); } 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; } 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); } }; 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 withDirectives(vnode, directives) { if (currentRenderingInstance === null) { 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) { for (var c of children) { if (c.type !== Comment) { child = c; break; } } } var rawProps = toRaw(props); var { mode } = rawProps; 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.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 && (comp.__esModule || comp[Symbol.toStringTag] === "Module")) { comp = comp.default; } 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; 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); }; 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); }; 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) { 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; } } 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") { 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._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 = {}; 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 => i.props, $attrs: i => i.attrs, $slots: i => i.slots, $refs: i => 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 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; 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); } 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 ; }, set(_ref10, key, value) { var { _: instance } = _ref10; var { data, setupState, ctx } = instance; if (hasSetupBinding(setupState, key)) { setupState[key] = value; return true; } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { data[key] = value; return true; } else if (hasOwn(instance.props, key)) { return false; } if (key[0] === "$" && key.slice(1) in instance) { return false; } else { { ctx[key] = value; } } return true; }, has(_ref11, key) { var { _: { data, setupState, accessCache, ctx, appContext, propsOptions } } = _ref11; var normalizedProps; return !!accessCache[key] || data !== EMPTY_OBJ && hasOwn(data, key) || hasSetupBinding(setupState, key) || (normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key) || hasOwn(ctx, key) || hasOwn(publicPropertiesMap, key) || hasOwn(appContext.config.globalProperties, key); }, defineProperty(target, key, descriptor) { if (descriptor.get != null) { target._.accessCache[key] = 0; } else if (hasOwn(descriptor, "value")) { this.set(target, key, descriptor.value, null); } return Reflect.defineProperty(target, key, descriptor); } }; var RuntimeCompiledPublicInstanceProxyHandlers = /* @__PURE__ */extend({}, PublicInstanceProxyHandlers, { get(target, key) { if (key === Symbol.unscopables) { return; } return PublicInstanceProxyHandlers.get(target, key, target); }, has(_, key) { var has = key[0] !== "_" && !isGloballyAllowed(key); return has; } }); function defineProps() { return null; } function defineEmits() { return null; } function defineExpose(exposed) {} function defineOptions(options) {} function defineSlots() { return null; } function defineModel() {} function withDefaults(props, defaults) { return null; } function useSlots() { return getContext().slots; } function useAttrs() { return getContext().attrs; } function getContext() { var i = getCurrentInstance(); return i.setupContext || (i.setupContext = createSetupContext(i)); } function normalizePropsOrEmits(props) { return isArray(props) ? props.reduce((normalized, p) => (normalized[p] = null, normalized), {}) : props; } function mergeDefaults(raw, defaults) { var props = normalizePropsOrEmits(raw); for (var key in defaults) { if (key.startsWith("__skip")) continue; var opt = props[key]; if (opt) { if (isArray(opt) || isFunction(opt)) { opt = props[key] = { type: opt, default: defaults[key] }; } else { opt.default = defaults[key]; } } else if (opt === null) { opt = props[key] = { default: defaults[key] }; } else ; if (opt && defaults["__skip_".concat(key)]) { opt.skipFactory = true; } } return props; } function mergeModels(a, b) { if (!a || !b) return a || b; if (isArray(a) && isArray(b)) return a.concat(b); return extend({}, normalizePropsOrEmits(a), normalizePropsOrEmits(b)); } function createPropsRestProxy(props, excludedKeys) { var ret = {}; var _loop2 = function (key) { if (!excludedKeys.includes(key)) { Object.defineProperty(ret, key, { enumerable: true, get: () => props[key] }); } }; for (var key in props) { _loop2(key); } return ret; } function withAsyncContext(getAwaitable) { var ctx = getCurrentInstance(); var awaitable = getAwaitable(); unsetCurrentInstance(); if (isPromise(awaitable)) { awaitable = awaitable.catch(e => { setCurrentInstance(ctx); throw e; }); } return [awaitable, () => setCurrentInstance(ctx)]; } var shouldCacheAccess = true; function applyOptions(instance) { var options = resolveMergedOptions(instance); var publicThis = instance.proxy; var ctx = instance.ctx; shouldCacheAccess = false; if (options.beforeCreate) { callHook$1(options.beforeCreate, instance, "bc"); } var { // state data: dataOptions, computed: computedOptions, methods, watch: watchOptions, provide: provideOptions, inject: injectOptions, // lifecycle created, beforeMount, mounted, beforeUpdate, updated, activated, deactivated, beforeDestroy, beforeUnmount, destroyed, unmounted, render, renderTracked, renderTriggered, errorCaptured, serverPrefetch, // public API expose, inheritAttrs, // assets components, directives, filters } = options; var checkDuplicateProperties = null; if (injectOptions) { resolveInjections(injectOptions, ctx, checkDuplicateProperties); } if (methods) { for (var key in methods) { var methodHandler = methods[key]; if (isFunction(methodHandler)) { { ctx[key] = methodHandler.bind(publicThis); } } } } if (dataOptions) { var data = dataOptions.call(publicThis, publicThis); if (!isObject(data)) ;else { instance.data = reactive(data); } } shouldCacheAccess = true; if (computedOptions) { var _loop3 = function (_key5) { var opt = computedOptions[_key5]; var get = isFunction(opt) ? opt.bind(publicThis, publicThis) : isFunction(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP; var set = !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : NOOP; var c = computed({ get, set }); Object.defineProperty(ctx, _key5, { enumerable: true, configurable: true, get: () => c.value, set: v => c.value = v }); }; for (var _key5 in computedOptions) { _loop3(_key5); } } if (watchOptions) { for (var _key6 in watchOptions) { createWatcher(watchOptions[_key6], ctx, publicThis, _key6); } } if (provideOptions) { var provides = isFunction(provideOptions) ? provideOptions.call(publicThis) : provideOptions; Reflect.ownKeys(provides).forEach(key => { provide(key, provides[key]); }); } if (created) { callHook$1(created, instance, "c"); } function registerLifecycleHook(register, hook) { if (isArray(hook)) { hook.forEach(_hook => register(_hook.bind(publicThis))); } else if (hook) { register(hook.bind(publicThis)); } } registerLifecycleHook(onBeforeMount, beforeMount); registerLifecycleHook(onMounted, mounted); registerLifecycleHook(onBeforeUpdate, beforeUpdate); registerLifecycleHook(onUpdated, updated); registerLifecycleHook(onActivated, activated); registerLifecycleHook(onDeactivated, deactivated); registerLifecycleHook(onErrorCaptured, errorCaptured); registerLifecycleHook(onRenderTracked, renderTracked); registerLifecycleHook(onRenderTriggered, renderTriggered); registerLifecycleHook(onBeforeUnmount, beforeUnmount); registerLifecycleHook(onUnmounted, unmounted); registerLifecycleHook(onServerPrefetch, serverPrefetch); if (isArray(expose)) { if (expose.length) { var exposed = instance.exposed || (instance.exposed = {}); expose.forEach(key => { Object.defineProperty(exposed, key, { get: () => publicThis[key], set: val => publicThis[key] = val }); }); } else if (!instance.exposed) { instance.exposed = {}; } } if (render && instance.render === NOOP) { instance.render = render; } if (inheritAttrs != null) { instance.inheritAttrs = inheritAttrs; } if (components) instance.components = components; if (directives) instance.directives = directives; var customApplyOptions = instance.appContext.config.globalProperties.$applyOptions; if (customApplyOptions) { customApplyOptions(options, instance, publicThis); } } function resolveInjections(injectOptions, ctx) { var checkDuplicateProperties = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : NOOP; if (isArray(injectOptions)) { injectOptions = normalizeInject(injectOptions); } var _loop4 = function (key) { var opt = injectOptions[key]; var injected = void 0; if (isObject(opt)) { if ("default" in opt) { injected = inject(opt.from || key, opt.default, true); } else { injected = inject(opt.from || key); } } else { injected = inject(opt); } if (isRef(injected)) { Object.defineProperty(ctx, key, { enumerable: true, configurable: true, get: () => injected.value, set: v => injected.value = v }); } else { ctx[key] = injected; } }; for (var key in injectOptions) { _loop4(key); } } function callHook$1(hook, instance, type) { callWithAsyncErrorHandling(isArray(hook) ? hook.map(h => h.bind(instance.proxy)) : hook.bind(instance.proxy), instance, type); } function createWatcher(raw, ctx, publicThis, key) { var getter = key.includes(".") ? createPathGetter(publicThis, key) : () => publicThis[key]; if (isString(raw)) { var handler = ctx[raw]; if (isFunction(handler)) { watch(getter, handler); } } else if (isFunction(raw)) { watch(getter, raw.bind(publicThis)); } else if (isObject(raw)) { if (isArray(raw)) { raw.forEach(r => createWatcher(r, ctx, publicThis, key)); } else { var _handler = isFunction(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler]; if (isFunction(_handler)) { watch(getter, _handler, raw); } } } else ; } function resolveMergedOptions(instance) { var base = instance.type; var { mixins, extends: extendsOptions } = base; var { mixins: globalMixins, optionsCache: cache, config: { optionMergeStrategies } } = instance.appContext; var cached = cache.get(base); var resolved; if (cached) { resolved = cached; } else if (!globalMixins.length && !mixins && !extendsOptions) { { resolved = base; } } else { resolved = {}; if (globalMixins.length) { globalMixins.forEach(m => mergeOptions(resolved, m, optionMergeStrategies, true)); } mergeOptions(resolved, base, optionMergeStrategies); } if (isObject(base)) { cache.set(base, resolved); } return resolved; } function mergeOptions(to, from, strats) { var asMixin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var { mixins, extends: extendsOptions } = from; if (extendsOptions) { mergeOptions(to, extendsOptions, strats, true); } if (mixins) { mixins.forEach(m => mergeOptions(to, m, strats, true)); } for (var key in from) { if (asMixin && key === "expose") ;else { var strat = internalOptionMergeStrats[key] || strats && strats[key]; to[key] = strat ? strat(to[key], from[key]) : from[key]; } } return to; } var internalOptionMergeStrats = { data: mergeDataFn, props: mergeEmitsOrPropsOptions, emits: mergeEmitsOrPropsOptions, // objects methods: mergeObjectOptions, computed: mergeObjectOptions, // lifecycle beforeCreate: mergeAsArray, created: mergeAsArray, beforeMount: mergeAsArray, mounted: mergeAsArray, beforeUpdate: mergeAsArray, updated: mergeAsArray, beforeDestroy: mergeAsArray, beforeUnmount: mergeAsArray, destroyed: mergeAsArray, unmounted: mergeAsArray, activated: mergeAsArray, deactivated: mergeAsArray, errorCaptured: mergeAsArray, serverPrefetch: mergeAsArray, // assets components: mergeObjectOptions, directives: mergeObjectOptions, // watch watch: mergeWatchOptions, // provide / inject provide: mergeDataFn, inject: mergeInject }; function mergeDataFn(to, from) { if (!from) { return to; } if (!to) { return from; } return function mergedDataFn() { return extend(isFunction(to) ? to.call(this, this) : to, isFunction(from) ? from.call(this, this) : from); }; } function mergeInject(to, from) { return mergeObjectOptions(normalizeInject(to), normalizeInject(from)); } function normalizeInject(raw) { if (isArray(raw)) { var res = {}; for (var i = 0; i < raw.length; i++) { res[raw[i]] = raw[i]; } return res; } return raw; } function mergeAsArray(to, from) { return to ? [...new Set([].concat(to, from))] : from; } function mergeObjectOptions(to, from) { return to ? extend(/* @__PURE__ */Object.create(null), to, from) : from; } function mergeEmitsOrPropsOptions(to, from) { if (to) { if (isArray(to) && isArray(from)) { return [... /* @__PURE__ */new Set([...to, ...from])]; } return extend(/* @__PURE__ */Object.create(null), normalizePropsOrEmits(to), normalizePropsOrEmits(from != null ? from : {})); } else { return from; } } function mergeWatchOptions(to, from) { if (!to) return from; if (!from) return to; var merged = extend(/* @__PURE__ */Object.create(null), to); for (var key in from) { merged[key] = mergeAsArray(to[key], from[key]); } return merged; } function createAppContext() { return { app: null, config: { isNativeTag: NO, performance: false, globalProperties: {}, optionMergeStrategies: {}, errorHandler: void 0, warnHandler: void 0, compilerOptions: {} }, mixins: [], components: {}, directives: {}, provides: /* @__PURE__ */Object.create(null), optionsCache: /* @__PURE__ */new WeakMap(), propsCache: /* @__PURE__ */new WeakMap(), emitsCache: /* @__PURE__ */new WeakMap() }; } var uid$1 = 0; function createAppAPI(render, hydrate) { return function createApp(rootComponent) { var rootProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; if (!isFunction(rootComponent)) { rootComponent = extend({}, rootComponent); } if (rootProps != null && !isObject(rootProps)) { rootProps = null; } var context = createAppContext(); var installedPlugins = /* @__PURE__ */new WeakSet(); var isMounted = false; var app = context.app = { _uid: uid$1++, _component: rootComponent, _props: rootProps, _container: null, _context: context, _instance: null, version, get config() { return context.config; }, set config(v) {}, use(plugin) { for (var _len5 = arguments.length, options = new Array(_len5 > 1 ? _len5 - 1 : 0), _key7 = 1; _key7 < _len5; _key7++) { options[_key7 - 1] = arguments[_key7]; } if (installedPlugins.has(plugin)) ;else if (plugin && isFunction(plugin.install)) { installedPlugins.add(plugin); plugin.install(app, ...options); } else if (isFunction(plugin)) { installedPlugins.add(plugin); plugin(app, ...options); } else ; return app; }, mixin(mixin) { { if (!context.mixins.includes(mixin)) { context.mixins.push(mixin); } } return app; }, component(name, component) { if (!component) { return context.components[name]; } context.components[name] = component; return app; }, directive(name, directive) { if (!directive) { return context.directives[name]; } context.directives[name] = directive; return app; }, mount(rootContainer, isHydrate, namespace) { if (!isMounted) { var vnode = createVNode(rootComponent, rootProps); vnode.appContext = context; if (namespace === true) { namespace = "svg"; } else if (namespace === false) { namespace = void 0; } if (isHydrate && hydrate) { hydrate(vnode, rootContainer); } else { render(vnode, rootContainer, namespace); } isMounted = true; app._container = rootContainer; rootContainer.__vue_app__ = app; app._instance = vnode.component; return getExposeProxy(vnode.component) || vnode.component.proxy; } }, unmount() { if (isMounted) { render(null, app._container); delete app._container.__vue_app__; } }, provide(key, value) { context.provides[key] = value; return app; }, runWithContext(fn) { var lastApp = currentApp; currentApp = app; try { return fn(); } finally { currentApp = lastApp; } } }; return app; }; } var currentApp = null; function provide(key, value) { if (!currentInstance) ;else { var provides = currentInstance.provides; var parentProvides = currentInstance.parent && currentInstance.parent.provides; if (parentProvides === provides) { provides = currentInstance.provides = Object.create(parentProvides); } provides[key] = value; if (currentInstance.type.mpType === "app") { currentInstance.appContext.app.provide(key, value); } } } function inject(key, defaultValue) { var treatDefaultAsFactory = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var instance = currentInstance || currentRenderingInstance; if (instance || currentApp) { var provides = instance ? instance.parent == null ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : currentApp._context.provides; if (provides && key in provides) { return provides[key]; } else if (arguments.length > 1) { return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue; } else ; } } function hasInjectionContext() { return !!(currentInstance || currentRenderingInstance || currentApp); } function initProps(instance, rawProps, isStateful) { var isSSR = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var props = {}; var attrs = {}; def(attrs, InternalObjectKey, 1); instance.propsDefaults = /* @__PURE__ */Object.create(null); setFullProps(instance, rawProps, props, attrs); for (var key in instance.propsOptions[0]) { if (!(key in props)) { props[key] = void 0; } } if (isStateful) { instance.props = isSSR ? props : shallowReactive(props); } else { if (!instance.type.props) { instance.props = attrs; } else { instance.props = props; } } instance.attrs = attrs; } function updateProps(instance, rawProps, rawPrevProps, optimized) { var { props, attrs, vnode: { patchFlag } } = instance; var rawCurrentProps = toRaw(props); var [options] = instance.propsOptions; var hasAttrsChanged = false; if ( // always force full diff in dev // - #1942 if hmr is enabled with sfc component // - vite#872 non-sfc component used by sfc component (optimized || patchFlag > 0) && !(patchFlag & 16)) { if (patchFlag & 8) { var propsToUpdate = instance.vnode.dynamicProps; for (var i = 0; i < propsToUpdate.length; i++) { var key = propsToUpdate[i]; if (isEmitListener(instance.emitsOptions, key)) { continue; } var value = rawProps[key]; if (options) { if (hasOwn(attrs, key)) { if (value !== attrs[key]) { attrs[key] = value; hasAttrsChanged = true; } } else { var camelizedKey = camelize(key); props[camelizedKey] = resolvePropValue(options, rawCurrentProps, camelizedKey, value, instance, false); } } else { if (value !== attrs[key]) { attrs[key] = value; hasAttrsChanged = true; } } } } } else { if (setFullProps(instance, rawProps, props, attrs)) { hasAttrsChanged = true; } var kebabKey; for (var _key8 in rawCurrentProps) { if (!rawProps || // for camelCase !hasOwn(rawProps, _key8) && ( // it's possible the original props was passed in as kebab-case // and converted to camelCase (#955) (kebabKey = hyphenate(_key8)) === _key8 || !hasOwn(rawProps, kebabKey))) { if (options) { if (rawPrevProps && ( // for camelCase rawPrevProps[_key8] !== void 0 || // for kebab-case rawPrevProps[kebabKey] !== void 0)) { props[_key8] = resolvePropValue(options, rawCurrentProps, _key8, void 0, instance, true); } } else { delete props[_key8]; } } } if (attrs !== rawCurrentProps) { for (var _key9 in attrs) { if (!rawProps || !hasOwn(rawProps, _key9) && true) { delete attrs[_key9]; hasAttrsChanged = true; } } } } if (hasAttrsChanged) { trigger(instance, "set", "$attrs"); } } function setFullProps(instance, rawProps, props, attrs) { var [options, needCastKeys] = instance.propsOptions; var hasAttrsChanged = false; var rawCastValues; if (rawProps) { for (var key in rawProps) { if (isReservedProp(key)) { continue; } var value = rawProps[key]; var camelKey = void 0; if (options && hasOwn(options, camelKey = camelize(key))) { if (!needCastKeys || !needCastKeys.includes(camelKey)) { props[camelKey] = value; } else { (rawCastValues || (rawCastValues = {}))[camelKey] = value; } } else if (!isEmitListener(instance.emitsOptions, key)) { if (!(key in attrs) || value !== attrs[key]) { attrs[key] = value; hasAttrsChanged = true; } } } } if (needCastKeys) { var rawCurrentProps = toRaw(props); var castValues = rawCastValues || EMPTY_OBJ; for (var i = 0; i < needCastKeys.length; i++) { var _key10 = needCastKeys[i]; props[_key10] = resolvePropValue(options, rawCurrentProps, _key10, castValues[_key10], instance, !hasOwn(castValues, _key10)); } } return hasAttrsChanged; } function resolvePropValue(options, props, key, value, instance, isAbsent) { var opt = options[key]; if (opt != null) { var hasDefault = hasOwn(opt, "default"); if (hasDefault && value === void 0) { var defaultValue = opt.default; if (opt.type !== Function && !opt.skipFactory && isFunction(defaultValue)) { var { propsDefaults } = instance; if (key in propsDefaults) { value = propsDefaults[key]; } else { var reset = setCurrentInstance(instance); value = propsDefaults[key] = defaultValue.call(null, props); reset(); } } else { value = defaultValue; } } if (opt[0 /* shouldCast */]) { if (isAbsent && !hasDefault) { value = false; } else if (opt[1 /* shouldCastTrue */] && (value === "" || value === hyphenate(key))) { value = true; } } } return value; } function normalizePropsOptions(comp, appContext) { var asMixin = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var cache = appContext.propsCache; var cached = cache.get(comp); if (cached) { return cached; } var raw = comp.props; var normalized = {}; var needCastKeys = []; var hasExtends = false; if (!isFunction(comp)) { var extendProps = raw2 => { hasExtends = true; var [props, keys] = normalizePropsOptions(raw2, appContext, true); extend(normalized, props); if (keys) needCastKeys.push(...keys); }; if (!asMixin && appContext.mixins.length) { appContext.mixins.forEach(extendProps); } if (comp.extends) { extendProps(comp.extends); } if (comp.mixins) { comp.mixins.forEach(extendProps); } } if (!raw && !hasExtends) { if (isObject(comp)) { cache.set(comp, EMPTY_ARR); } return EMPTY_ARR; } if (isArray(raw)) { for (var i = 0; i < raw.length; i++) { var normalizedKey = camelize(raw[i]); if (validatePropName(normalizedKey)) { normalized[normalizedKey] = EMPTY_OBJ; } } } else if (raw) { for (var key in raw) { var _normalizedKey = camelize(key); if (validatePropName(_normalizedKey)) { var opt = raw[key]; var prop = normalized[_normalizedKey] = isArray(opt) || isFunction(opt) ? { type: opt } : extend({}, opt); if (prop) { var booleanIndex = getTypeIndex(Boolean, prop.type); var stringIndex = getTypeIndex(String, prop.type); prop[0 /* shouldCast */] = booleanIndex > -1; prop[1 /* shouldCastTrue */] = stringIndex < 0 || booleanIndex < stringIndex; if (booleanIndex > -1 || hasOwn(prop, "default")) { needCastKeys.push(_normalizedKey); } } } } } var res = [normalized, needCastKeys]; if (isObject(comp)) { cache.set(comp, res); } return res; } function validatePropName(key) { if (key[0] !== "$" && !isReservedProp(key)) { return true; } return false; } function getType(ctor) { if (ctor === null) { return "null"; } if (typeof ctor === "function") { return ctor.name || ""; } else if (typeof ctor === "object") { var name = ctor.constructor && ctor.constructor.name; return name || ""; } return ""; } function isSameType(a, b) { return getType(a) === getType(b); } function getTypeIndex(type, expectedTypes) { if (isArray(expectedTypes)) { return expectedTypes.findIndex(t => isSameType(t, type)); } else if (isFunction(expectedTypes)) { return isSameType(expectedTypes, type) ? 0 : -1; } return -1; } var isInternalKey = key => key[0] === "_" || key === "$stable"; var normalizeSlotValue = value => isArray(value) ? value.map(normalizeVNode) : [normalizeVNode(value)]; var normalizeSlot = (key, rawSlot, ctx) => { if (rawSlot._n) { return rawSlot; } var normalized = withCtx(function () { if (!!("production" !== "production") && currentInstance && (!ctx || ctx.root === currentInstance.root)) ; return normalizeSlotValue(rawSlot(...arguments)); }, ctx); normalized._c = false; return normalized; }; var normalizeObjectSlots = (rawSlots, slots, instance) => { var ctx = rawSlots._ctx; for (var key in rawSlots) { if (isInternalKey(key)) continue; var value = rawSlots[key]; if (isFunction(value)) { slots[key] = normalizeSlot(key, value, ctx); } else if (value != null) { (function () { var normalized = normalizeSlotValue(value); slots[key] = () => normalized; })(); } } }; var normalizeVNodeSlots = (instance, children) => { var normalized = normalizeSlotValue(children); instance.slots.default = () => normalized; }; var initSlots = (instance, children) => { if (instance.vnode.shapeFlag & 32) { var type = children._; if (type) { instance.slots = toRaw(children); def(children, "_", type); } else { normalizeObjectSlots(children, instance.slots = {}); } } else { instance.slots = {}; if (children) { normalizeVNodeSlots(instance, children); } } def(instance.slots, InternalObjectKey, 1); }; var updateSlots = (instance, children, optimized) => { var { vnode, slots } = instance; var needDeletionCheck = true; var deletionComparisonTarget = EMPTY_OBJ; if (vnode.shapeFlag & 32) { var type = children._; if (type) { if (optimized && type === 1) { needDeletionCheck = false; } else { extend(slots, children); if (!optimized && type === 1) { delete slots._; } } } else { needDeletionCheck = !children.$stable; normalizeObjectSlots(children, slots); } deletionComparisonTarget = children; } else if (children) { normalizeVNodeSlots(instance, children); deletionComparisonTarget = { default: 1 }; } if (needDeletionCheck) { for (var key in slots) { if (!isInternalKey(key) && deletionComparisonTarget[key] == null) { delete slots[key]; } } } }; function setRef(rawRef, oldRawRef, parentSuspense, vnode) { var isUnmount = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; if (isArray(rawRef)) { rawRef.forEach((r, i) => setRef(r, oldRawRef && (isArray(oldRawRef) ? oldRawRef[i] : oldRawRef), parentSuspense, vnode, isUnmount)); return; } if (isAsyncWrapper(vnode) && !isUnmount) { return; } var refValue = vnode.shapeFlag & 4 ? getExposeProxy(vnode.component) || vnode.component.proxy : vnode.el; var value = isUnmount ? null : refValue; var { i: owner, r: ref } = rawRef; var oldRef = oldRawRef && oldRawRef.r; var refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs; var setupState = owner.setupState; if (oldRef != null && oldRef !== ref) { if (isString(oldRef)) { refs[oldRef] = null; if (hasOwn(setupState, oldRef)) { setupState[oldRef] = null; } } else if (isRef(oldRef)) { oldRef.value = null; } } if (isFunction(ref)) { callWithErrorHandling(ref, owner, 12, [value, refs]); } else { var _isString = isString(ref); var _isRef = isRef(ref); if (_isString || _isRef) { var doSet = () => { if (rawRef.f) { var existing = _isString ? hasOwn(setupState, ref) ? setupState[ref] : refs[ref] : ref.value; if (isUnmount) { isArray(existing) && remove(existing, refValue); } else { if (!isArray(existing)) { if (_isString) { refs[ref] = [refValue]; if (hasOwn(setupState, ref)) { setupState[ref] = refs[ref]; } } else { ref.value = [refValue]; if (rawRef.k) refs[rawRef.k] = ref.value; } } else if (!existing.includes(refValue)) { existing.push(refValue); } } } else if (_isString) { refs[ref] = value; if (hasOwn(setupState, ref)) { setupState[ref] = value; } } else if (_isRef) { ref.value = value; if (rawRef.k) refs[rawRef.k] = value; } else ; }; if (value) { doSet.id = -1; queuePostRenderEffect(doSet, parentSuspense); } else { doSet(); } } } } var hasMismatch = false; var isSVGContainer = container => container.namespaceURI.includes("svg") && container.tagName !== "foreignObject"; var isMathMLContainer = container => container.namespaceURI.includes("MathML"); var getContainerType = container => { if (isSVGContainer(container)) return "svg"; if (isMathMLContainer(container)) return "mathml"; return void 0; }; var isComment = node => node.nodeType === 8 /* COMMENT */; function createHydrationFunctions(rendererInternals) { var { mt: mountComponent, p: patch, o: { patchProp, createText, nextSibling, parentNode, remove, insert, createComment } } = rendererInternals; var hydrate = (vnode, container) => { if (!container.hasChildNodes()) { patch(null, vnode, container); flushPostFlushCbs(); container._vnode = vnode; return; } hasMismatch = false; hydrateNode(container.firstChild, vnode, null, null, null); flushPostFlushCbs(); container._vnode = vnode; if (hasMismatch && true) { console.error("Hydration completed but contains mismatches."); } }; var hydrateNode = function (node, vnode, parentComponent, parentSuspense, slotScopeIds) { var optimized = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; var isFragmentStart = isComment(node) && node.data === "["; var onMismatch = () => handleMismatch(node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragmentStart); var { type, ref, shapeFlag, patchFlag } = vnode; var domType = node.nodeType; vnode.el = node; if (patchFlag === -2) { optimized = false; vnode.dynamicChildren = null; } var nextNode = null; switch (type) { case Text: if (domType !== 3 /* TEXT */) { if (vnode.children === "") { insert( // fixed by xxxxxx vnode.el = createText("", node.parentNode), parentNode(node), node); nextNode = node; } else { nextNode = onMismatch(); } } else { if (node.data !== vnode.children) { hasMismatch = true; node.data = vnode.children; } nextNode = nextSibling(node); } break; case Comment: if (isTemplateNode(node)) { nextNode = nextSibling(node); replaceNode(vnode.el = node.content.firstChild, node, parentComponent); } else if (domType !== 8 /* COMMENT */ || isFragmentStart) { nextNode = onMismatch(); } else { nextNode = nextSibling(node); } break; case Static: if (isFragmentStart) { node = nextSibling(node); domType = node.nodeType; } if (domType === 1 /* ELEMENT */ || domType === 3 /* TEXT */) { nextNode = node; var needToAdoptContent = !vnode.children.length; for (var i = 0; i < vnode.staticCount; i++) { if (needToAdoptContent) vnode.children += nextNode.nodeType === 1 /* ELEMENT */ ? nextNode.outerHTML : nextNode.data; if (i === vnode.staticCount - 1) { vnode.anchor = nextNode; } nextNode = nextSibling(nextNode); } return isFragmentStart ? nextSibling(nextNode) : nextNode; } else { onMismatch(); } break; case Fragment: if (!isFragmentStart) { nextNode = onMismatch(); } else { nextNode = hydrateFragment(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized); } break; default: if (shapeFlag & 1) { if ((domType !== 1 /* ELEMENT */ || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) { nextNode = onMismatch(); } else { nextNode = hydrateElement(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized); } } else if (shapeFlag & 6) { vnode.slotScopeIds = slotScopeIds; var container = parentNode(node); if (isFragmentStart) { nextNode = locateClosingAnchor(node); } else if (isComment(node) && node.data === "teleport start") { nextNode = locateClosingAnchor(node, node.data, "teleport end"); } else { nextNode = nextSibling(node); } mountComponent(vnode, container, null, parentComponent, parentSuspense, getContainerType(container), optimized); if (isAsyncWrapper(vnode)) { var subTree; if (isFragmentStart) { subTree = createVNode(Fragment); subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild; } else { subTree = node.nodeType === 3 ? createTextVNode("") : createVNode("div"); } subTree.el = node; vnode.component.subTree = subTree; } } else if (shapeFlag & 64) { if (domType !== 8 /* COMMENT */) { nextNode = onMismatch(); } else { nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, rendererInternals, hydrateChildren); } } else if (shapeFlag & 128) { nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, getContainerType(parentNode(node)), slotScopeIds, optimized, rendererInternals, hydrateNode); } else ; } if (ref != null) { setRef(ref, null, parentSuspense, vnode); } return nextNode; }; var hydrateElement = (el, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { optimized = optimized || !!vnode.dynamicChildren; var { type, props, patchFlag, shapeFlag, dirs, transition } = vnode; var forcePatch = type === "input" || type === "option"; if (forcePatch || patchFlag !== -1) { if (dirs) { invokeDirectiveHook(vnode, null, parentComponent, "created"); } var needCallTransitionHooks = false; if (isTemplateNode(el)) { needCallTransitionHooks = needTransition(parentSuspense, transition) && parentComponent && parentComponent.vnode.props && parentComponent.vnode.props.appear; var content = el.content.firstChild; if (needCallTransitionHooks) { transition.beforeEnter(content); } replaceNode(content, el, parentComponent); vnode.el = el = content; } if (shapeFlag & 16 && // skip if element has innerHTML / textContent !(props && (props.innerHTML || props.textContent))) { var next = hydrateChildren(el.firstChild, vnode, el, parentComponent, parentSuspense, slotScopeIds, optimized); while (next) { hasMismatch = true; var cur = next; next = next.nextSibling; remove(cur); } } else if (shapeFlag & 8) { if (el.textContent !== vnode.children) { hasMismatch = true; el.textContent = vnode.children; } } if (props) { if (forcePatch || !optimized || patchFlag & (16 | 32)) { for (var key in props) { if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers key[0] === ".") { patchProp(el, key, null, props[key], void 0, void 0, parentComponent); } } } else if (props.onClick) { patchProp(el, "onClick", null, props.onClick, void 0, void 0, parentComponent); } } var vnodeHooks; if (vnodeHooks = props && props.onVnodeBeforeMount) { invokeVNodeHook(vnodeHooks, parentComponent, vnode); } if (dirs) { invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); } if ((vnodeHooks = props && props.onVnodeMounted) || dirs || needCallTransitionHooks) { queueEffectWithSuspense(() => { vnodeHooks && invokeVNodeHook(vnodeHooks, parentComponent, vnode); needCallTransitionHooks && transition.enter(el); dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); }, parentSuspense); } } return el.nextSibling; }; var hydrateChildren = (node, parentVNode, container, parentComponent, parentSuspense, slotScopeIds, optimized) => { optimized = optimized || !!parentVNode.dynamicChildren; var children = parentVNode.children; var l = children.length; for (var i = 0; i < l; i++) { var vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]); if (node) { node = hydrateNode(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized); } else if (vnode.type === Text && !vnode.children) { continue; } else { hasMismatch = true; patch(null, vnode, container, null, parentComponent, parentSuspense, getContainerType(container), slotScopeIds); } } return node; }; var hydrateFragment = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { var { slotScopeIds: fragmentSlotScopeIds } = vnode; if (fragmentSlotScopeIds) { slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; } var container = parentNode(node); var next = hydrateChildren(nextSibling(node), vnode, container, parentComponent, parentSuspense, slotScopeIds, optimized); if (next && isComment(next) && next.data === "]") { return nextSibling(vnode.anchor = next); } else { hasMismatch = true; insert(vnode.anchor = createComment("]", container), container, next); return next; } }; var handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => { hasMismatch = true; vnode.el = null; if (isFragment) { var end = locateClosingAnchor(node); while (true) { var next2 = nextSibling(node); if (next2 && next2 !== end) { remove(next2); } else { break; } } } var next = nextSibling(node); var container = parentNode(node); remove(node); patch(null, vnode, container, next, parentComponent, parentSuspense, getContainerType(container), slotScopeIds); return next; }; var locateClosingAnchor = function (node) { var open = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "["; var close = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "]"; var match = 0; while (node) { node = nextSibling(node); if (node && isComment(node)) { if (node.data === open) match++; if (node.data === close) { if (match === 0) { return nextSibling(node); } else { match--; } } } } return node; }; var replaceNode = (newNode, oldNode, parentComponent) => { var parentNode2 = oldNode.parentNode; if (parentNode2) { parentNode2.replaceChild(newNode, oldNode); } var parent = parentComponent; while (parent) { if (parent.vnode.el === oldNode) { parent.vnode.el = parent.subTree.el = newNode; } parent = parent.parent; } }; var isTemplateNode = node => { return node.nodeType === 1 /* ELEMENT */ && node.tagName.toLowerCase() === "template"; }; return [hydrate, hydrateNode]; } var queuePostRenderEffect = queueEffectWithSuspense; function createRenderer(options) { return baseCreateRenderer(options); } function createHydrationRenderer(options) { return baseCreateRenderer(options, createHydrationFunctions); } function baseCreateRenderer(options, createHydrationFns) { var target = getGlobalThis(); target.__VUE__ = true; var { insert: hostInsert, remove: hostRemove, patchProp: hostPatchProp, forcePatchProp: hostForcePatchProp, // fixed by xxxxxx createElement: hostCreateElement, createText: hostCreateText, createComment: hostCreateComment, setText: hostSetText, setElementText: hostSetElementText, parentNode: hostParentNode, nextSibling: hostNextSibling, setScopeId: hostSetScopeId = NOOP, insertStaticContent: hostInsertStaticContent } = options; var patch = function (n1, n2, container) { var anchor = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; var parentComponent = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null; var parentSuspense = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null; var namespace = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : void 0; var slotScopeIds = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null; var optimized = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : !!n2.dynamicChildren; if (n1 === n2) { return; } if (n1 && !isSameVNodeType(n1, n2)) { anchor = getNextHostNode(n1); unmount(n1, parentComponent, parentSuspense, true); n1 = null; } if (n2.patchFlag === -2) { optimized = false; n2.dynamicChildren = null; } var { type, ref, shapeFlag } = n2; switch (type) { case Text: processText(n1, n2, container, anchor); break; case Comment: processCommentNode(n1, n2, container, anchor); break; case Static: if (n1 == null) { mountStaticNode(n2, container, anchor, namespace); } break; case Fragment: processFragment(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized); break; default: if (shapeFlag & 1) { processElement(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized); } else if (shapeFlag & 6) { processComponent(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized); } else if (shapeFlag & 64) { type.process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals); } else if (shapeFlag & 128) { type.process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals); } else ; } if (ref != null && parentComponent) { setRef(ref, n1 && n1.ref, parentSuspense, n2 || n1, !n2); } }; var processText = (n1, n2, container, anchor) => { if (n1 == null) { hostInsert(n2.el = hostCreateText(n2.children, container), // fixed by xxxxxx container, anchor); } else { var el = n2.el = n1.el; if (n2.children !== n1.children) { hostSetText(el, n2.children); } } }; var processCommentNode = (n1, n2, container, anchor) => { if (n1 == null) { hostInsert(n2.el = hostCreateComment(n2.children || "", container), // fixed by xxxxxx container, anchor); } else { n2.el = n1.el; } }; var mountStaticNode = (n2, container, anchor, namespace) => { [n2.el, n2.anchor] = hostInsertStaticContent(n2.children, container, anchor, namespace, n2.el, n2.anchor); }; var moveStaticNode = (_ref12, container, nextSibling) => { var { el, anchor } = _ref12; var next; while (el && el !== anchor) { next = hostNextSibling(el); hostInsert(el, container, nextSibling); el = next; } hostInsert(anchor, container, nextSibling); }; var removeStaticNode = _ref13 => { var { el, anchor } = _ref13; var next; while (el && el !== anchor) { next = hostNextSibling(el); hostRemove(el); el = next; } hostRemove(anchor); }; var processElement = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { if (n2.type === "svg") { namespace = "svg"; } else if (n2.type === "math") { namespace = "mathml"; } if (n1 == null) { mountElement(n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized); } else { patchElement(n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized); } }; var mountElement = (vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { var el; var vnodeHook; var { props, shapeFlag, transition, dirs } = vnode; el = vnode.el = hostCreateElement( // fixed by xxxxxx vnode.type, container); if (shapeFlag & 8) { hostSetElementText(el, vnode.children); } else if (shapeFlag & 16) { mountChildren(vnode.children, el, null, parentComponent, parentSuspense, resolveChildrenNamespace(vnode, namespace), slotScopeIds, optimized); } if (dirs) { invokeDirectiveHook(vnode, null, parentComponent, "created"); } setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent); if (props) { for (var key in props) { if (key !== "value" && !isReservedProp(key)) { hostPatchProp(el, key, null, props[key], namespace, vnode.children, parentComponent, parentSuspense, unmountChildren); } } if ("value" in props) { hostPatchProp(el, "value", null, props.value, namespace); } if (vnodeHook = props.onVnodeBeforeMount) { invokeVNodeHook(vnodeHook, parentComponent, vnode); } } Object.defineProperty(el, "__vueParentComponent", { value: parentComponent, enumerable: false }); if (dirs) { invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); } var needCallTransitionHooks = needTransition(parentSuspense, transition); if (needCallTransitionHooks) { transition.beforeEnter(el); } hostInsert(el, container, anchor); if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) { queuePostRenderEffect(() => { vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode); needCallTransitionHooks && transition.enter(el); dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); }, parentSuspense); } }; var setScopeId = (el, vnode, scopeId, slotScopeIds, parentComponent) => { if (scopeId) { hostSetScopeId(el, scopeId); } if (slotScopeIds) { for (var i = 0; i < slotScopeIds.length; i++) { hostSetScopeId(el, slotScopeIds[i]); } } if (parentComponent) { var subTree = parentComponent.subTree; if (vnode === subTree) { var parentVNode = parentComponent.vnode; setScopeId(el, parentVNode, parentVNode.scopeId, parentVNode.slotScopeIds, parentComponent.parent); } } }; var mountChildren = function (children, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) { var start = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : 0; for (var i = start; i < children.length; i++) { var child = children[i] = optimized ? cloneIfMounted(children[i]) : normalizeVNode(children[i]); patch(null, child, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized); } }; var patchElement = (n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { var el = n2.el = n1.el; var { patchFlag, dynamicChildren, dirs } = n2; patchFlag |= n1.patchFlag & 16; var oldProps = n1.props || EMPTY_OBJ; var newProps = n2.props || EMPTY_OBJ; var vnodeHook; parentComponent && toggleRecurse(parentComponent, false); if (vnodeHook = newProps.onVnodeBeforeUpdate) { invokeVNodeHook(vnodeHook, parentComponent, n2, n1); } if (dirs) { invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate"); } parentComponent && toggleRecurse(parentComponent, true); if (dynamicChildren) { patchBlockChildren(n1.dynamicChildren, dynamicChildren, el, parentComponent, parentSuspense, resolveChildrenNamespace(n2, namespace), slotScopeIds); } else if (!optimized) { patchChildren(n1, n2, el, null, parentComponent, parentSuspense, resolveChildrenNamespace(n2, namespace), slotScopeIds, false); } if (patchFlag > 0) { if (patchFlag & 16) { patchProps(el, n2, oldProps, newProps, parentComponent, parentSuspense, namespace); } else { if (patchFlag & 2) { if (oldProps.class !== newProps.class) { hostPatchProp(el, "class", null, newProps.class, namespace); } } if (patchFlag & 4) { hostPatchProp(el, "style", oldProps.style, newProps.style, namespace); } if (patchFlag & 8) { var propsToUpdate = n2.dynamicProps; for (var i = 0; i < propsToUpdate.length; i++) { var key = propsToUpdate[i]; var prev = oldProps[key]; var next = newProps[key]; if (next !== prev || key === "value" || hostForcePatchProp && hostForcePatchProp(el, key)) { hostPatchProp(el, key, prev, next, namespace, n1.children, parentComponent, parentSuspense, unmountChildren); } } } } if (patchFlag & 1) { if (n1.children !== n2.children) { hostSetElementText(el, n2.children); } } } else if (!optimized && dynamicChildren == null) { patchProps(el, n2, oldProps, newProps, parentComponent, parentSuspense, namespace); } if ((vnodeHook = newProps.onVnodeUpdated) || dirs) { queuePostRenderEffect(() => { vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1); dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated"); }, parentSuspense); } }; var patchBlockChildren = (oldChildren, newChildren, fallbackContainer, parentComponent, parentSuspense, namespace, slotScopeIds) => { for (var i = 0; i < newChildren.length; i++) { var oldVNode = oldChildren[i]; var newVNode = newChildren[i]; var container = // oldVNode may be an errored async setup() component inside Suspense // which will not have a mounted element oldVNode.el && ( // - In the case of a Fragment, we need to provide the actual parent // of the Fragment itself so it can move its children. oldVNode.type === Fragment || // - In the case of different nodes, there is going to be a replacement // which also requires the correct parent container !isSameVNodeType(oldVNode, newVNode) || // - In the case of a component, it could contain anything. oldVNode.shapeFlag & (6 | 64)) ? hostParentNode(oldVNode.el) : // In other cases, the parent container is not actually used so we // just pass the block element here to avoid a DOM parentNode call. fallbackContainer; patch(oldVNode, newVNode, container, null, parentComponent, parentSuspense, namespace, slotScopeIds, true); } }; var patchProps = (el, vnode, oldProps, newProps, parentComponent, parentSuspense, namespace) => { if (oldProps !== newProps) { if (oldProps !== EMPTY_OBJ) { for (var key in oldProps) { if (!isReservedProp(key) && !(key in newProps)) { hostPatchProp(el, key, oldProps[key], null, namespace, vnode.children, parentComponent, parentSuspense, unmountChildren); } } } for (var _key11 in newProps) { if (isReservedProp(_key11)) continue; var next = newProps[_key11]; var prev = oldProps[_key11]; if (next !== prev && _key11 !== "value" || hostForcePatchProp && hostForcePatchProp(el, _key11)) { hostPatchProp(el, _key11, prev, next, namespace, vnode.children, parentComponent, parentSuspense, unmountChildren); } } if ("value" in newProps) { hostPatchProp(el, "value", oldProps.value, newProps.value, namespace); } } }; var processFragment = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { var fragmentStartAnchor = n2.el = n1 ? n1.el : hostCreateText("", container); var fragmentEndAnchor = n2.anchor = n1 ? n1.anchor : hostCreateText("", container); var { patchFlag, dynamicChildren, slotScopeIds: fragmentSlotScopeIds } = n2; if (fragmentSlotScopeIds) { slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; } if (n1 == null) { hostInsert(fragmentStartAnchor, container, anchor); hostInsert(fragmentEndAnchor, container, anchor); mountChildren( // #10007 // such fragment like `<>` will be compiled into // a fragment which doesn't have a children. // In this case fallback to an empty array n2.children || [], container, fragmentEndAnchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized); } else { if (patchFlag > 0 && patchFlag & 64 && dynamicChildren && // #2715 the previous fragment could've been a BAILed one as a result // of renderSlot() with no valid children n1.dynamicChildren) { patchBlockChildren(n1.dynamicChildren, dynamicChildren, container, parentComponent, parentSuspense, namespace, slotScopeIds); if ( // #2080 if the stable fragment has a key, it's a