(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["chunk-vendors"],{ /***/ "../../node_modules/@intlify/core-base/dist/core-base.esm-bundler.js": /*!**************************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@intlify/core-base/dist/core-base.esm-bundler.js ***! \**************************************************************************************************/ /*! exports provided: CompileErrorCodes, createCompileError, CoreErrorCodes, CoreWarnCodes, DATETIME_FORMAT_OPTIONS_KEYS, DEFAULT_LOCALE, DEFAULT_MESSAGE_DATA_TYPE, MISSING_RESOLVE_VALUE, NOT_REOSLVED, NUMBER_FORMAT_OPTIONS_KEYS, VERSION, clearCompileCache, clearDateTimeFormat, clearNumberFormat, compileToFunction, createCoreContext, createCoreError, createMessageContext, datetime, fallbackWithLocaleChain, fallbackWithSimple, getAdditionalMeta, getDevToolsHook, getFallbackContext, getWarnMessage, handleMissing, initI18nDevTools, isMessageFunction, isTranslateFallbackWarn, isTranslateMissingWarn, number, parse, parseDateTimeArgs, parseNumberArgs, parseTranslateArgs, registerLocaleFallbacker, registerMessageCompiler, registerMessageResolver, resolveValue, resolveWithKeyValue, setAdditionalMeta, setDevToolsHook, setFallbackContext, translate, translateDevTools, updateFallbackLocale */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CoreErrorCodes\", function() { return CoreErrorCodes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CoreWarnCodes\", function() { return CoreWarnCodes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DATETIME_FORMAT_OPTIONS_KEYS\", function() { return DATETIME_FORMAT_OPTIONS_KEYS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DEFAULT_LOCALE\", function() { return DEFAULT_LOCALE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DEFAULT_MESSAGE_DATA_TYPE\", function() { return DEFAULT_MESSAGE_DATA_TYPE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MISSING_RESOLVE_VALUE\", function() { return MISSING_RESOLVE_VALUE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NOT_REOSLVED\", function() { return NOT_REOSLVED; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NUMBER_FORMAT_OPTIONS_KEYS\", function() { return NUMBER_FORMAT_OPTIONS_KEYS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"VERSION\", function() { return VERSION; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"clearCompileCache\", function() { return clearCompileCache; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"clearDateTimeFormat\", function() { return clearDateTimeFormat; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"clearNumberFormat\", function() { return clearNumberFormat; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"compileToFunction\", function() { return compileToFunction; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createCoreContext\", function() { return createCoreContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createCoreError\", function() { return createCoreError; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createMessageContext\", function() { return createMessageContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"datetime\", function() { return datetime; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"fallbackWithLocaleChain\", function() { return fallbackWithLocaleChain; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"fallbackWithSimple\", function() { return fallbackWithSimple; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getAdditionalMeta\", function() { return getAdditionalMeta; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getDevToolsHook\", function() { return getDevToolsHook; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getFallbackContext\", function() { return getFallbackContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getWarnMessage\", function() { return getWarnMessage; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"handleMissing\", function() { return handleMissing; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initI18nDevTools\", function() { return initI18nDevTools; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isMessageFunction\", function() { return isMessageFunction; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isTranslateFallbackWarn\", function() { return isTranslateFallbackWarn; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isTranslateMissingWarn\", function() { return isTranslateMissingWarn; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"number\", function() { return number; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"parse\", function() { return parse; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"parseDateTimeArgs\", function() { return parseDateTimeArgs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"parseNumberArgs\", function() { return parseNumberArgs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"parseTranslateArgs\", function() { return parseTranslateArgs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"registerLocaleFallbacker\", function() { return registerLocaleFallbacker; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"registerMessageCompiler\", function() { return registerMessageCompiler; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"registerMessageResolver\", function() { return registerMessageResolver; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolveValue\", function() { return resolveValue; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolveWithKeyValue\", function() { return resolveWithKeyValue; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setAdditionalMeta\", function() { return setAdditionalMeta; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setDevToolsHook\", function() { return setDevToolsHook; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setFallbackContext\", function() { return setFallbackContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"translate\", function() { return translate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"translateDevTools\", function() { return translateDevTools; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"updateFallbackLocale\", function() { return updateFallbackLocale; });\n/* harmony import */ var _intlify_shared__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @intlify/shared */ \"../../node_modules/@intlify/shared/dist/shared.esm-bundler.js\");\n/* harmony import */ var _intlify_message_compiler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @intlify/message-compiler */ \"../../node_modules/@intlify/message-compiler/dist/message-compiler.esm-bundler.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"CompileErrorCodes\", function() { return _intlify_message_compiler__WEBPACK_IMPORTED_MODULE_1__[\"CompileErrorCodes\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"createCompileError\", function() { return _intlify_message_compiler__WEBPACK_IMPORTED_MODULE_1__[\"createCompileError\"]; });\n\n/* harmony import */ var _intlify_devtools_if__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @intlify/devtools-if */ \"../../node_modules/@intlify/devtools-if/dist/devtools-if.esm-bundler.js\");\n/*!\n * core-base v9.2.2\n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\n\n\n\n\n\nconst pathStateMachine = [];\r\npathStateMachine[0 /* BEFORE_PATH */] = {\r\n [\"w\" /* WORKSPACE */]: [0 /* BEFORE_PATH */],\r\n [\"i\" /* IDENT */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"[\" /* LEFT_BRACKET */]: [4 /* IN_SUB_PATH */],\r\n [\"o\" /* END_OF_FAIL */]: [7 /* AFTER_PATH */]\r\n};\r\npathStateMachine[1 /* IN_PATH */] = {\r\n [\"w\" /* WORKSPACE */]: [1 /* IN_PATH */],\r\n [\".\" /* DOT */]: [2 /* BEFORE_IDENT */],\r\n [\"[\" /* LEFT_BRACKET */]: [4 /* IN_SUB_PATH */],\r\n [\"o\" /* END_OF_FAIL */]: [7 /* AFTER_PATH */]\r\n};\r\npathStateMachine[2 /* BEFORE_IDENT */] = {\r\n [\"w\" /* WORKSPACE */]: [2 /* BEFORE_IDENT */],\r\n [\"i\" /* IDENT */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"0\" /* ZERO */]: [3 /* IN_IDENT */, 0 /* APPEND */]\r\n};\r\npathStateMachine[3 /* IN_IDENT */] = {\r\n [\"i\" /* IDENT */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"0\" /* ZERO */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"w\" /* WORKSPACE */]: [1 /* IN_PATH */, 1 /* PUSH */],\r\n [\".\" /* DOT */]: [2 /* BEFORE_IDENT */, 1 /* PUSH */],\r\n [\"[\" /* LEFT_BRACKET */]: [4 /* IN_SUB_PATH */, 1 /* PUSH */],\r\n [\"o\" /* END_OF_FAIL */]: [7 /* AFTER_PATH */, 1 /* PUSH */]\r\n};\r\npathStateMachine[4 /* IN_SUB_PATH */] = {\r\n [\"'\" /* SINGLE_QUOTE */]: [5 /* IN_SINGLE_QUOTE */, 0 /* APPEND */],\r\n [\"\\\"\" /* DOUBLE_QUOTE */]: [6 /* IN_DOUBLE_QUOTE */, 0 /* APPEND */],\r\n [\"[\" /* LEFT_BRACKET */]: [\r\n 4 /* IN_SUB_PATH */,\r\n 2 /* INC_SUB_PATH_DEPTH */\r\n ],\r\n [\"]\" /* RIGHT_BRACKET */]: [1 /* IN_PATH */, 3 /* PUSH_SUB_PATH */],\r\n [\"o\" /* END_OF_FAIL */]: 8 /* ERROR */,\r\n [\"l\" /* ELSE */]: [4 /* IN_SUB_PATH */, 0 /* APPEND */]\r\n};\r\npathStateMachine[5 /* IN_SINGLE_QUOTE */] = {\r\n [\"'\" /* SINGLE_QUOTE */]: [4 /* IN_SUB_PATH */, 0 /* APPEND */],\r\n [\"o\" /* END_OF_FAIL */]: 8 /* ERROR */,\r\n [\"l\" /* ELSE */]: [5 /* IN_SINGLE_QUOTE */, 0 /* APPEND */]\r\n};\r\npathStateMachine[6 /* IN_DOUBLE_QUOTE */] = {\r\n [\"\\\"\" /* DOUBLE_QUOTE */]: [4 /* IN_SUB_PATH */, 0 /* APPEND */],\r\n [\"o\" /* END_OF_FAIL */]: 8 /* ERROR */,\r\n [\"l\" /* ELSE */]: [6 /* IN_DOUBLE_QUOTE */, 0 /* APPEND */]\r\n};\r\n/**\r\n * Check if an expression is a literal value.\r\n */\r\nconst literalValueRE = /^\\s?(?:true|false|-?[\\d.]+|'[^']*'|\"[^\"]*\")\\s?$/;\r\nfunction isLiteral(exp) {\r\n return literalValueRE.test(exp);\r\n}\r\n/**\r\n * Strip quotes from a string\r\n */\r\nfunction stripQuotes(str) {\r\n const a = str.charCodeAt(0);\r\n const b = str.charCodeAt(str.length - 1);\r\n return a === b && (a === 0x22 || a === 0x27) ? str.slice(1, -1) : str;\r\n}\r\n/**\r\n * Determine the type of a character in a keypath.\r\n */\r\nfunction getPathCharType(ch) {\r\n if (ch === undefined || ch === null) {\r\n return \"o\" /* END_OF_FAIL */;\r\n }\r\n const code = ch.charCodeAt(0);\r\n switch (code) {\r\n case 0x5b: // [\r\n case 0x5d: // ]\r\n case 0x2e: // .\r\n case 0x22: // \"\r\n case 0x27: // '\r\n return ch;\r\n case 0x5f: // _\r\n case 0x24: // $\r\n case 0x2d: // -\r\n return \"i\" /* IDENT */;\r\n case 0x09: // Tab (HT)\r\n case 0x0a: // Newline (LF)\r\n case 0x0d: // Return (CR)\r\n case 0xa0: // No-break space (NBSP)\r\n case 0xfeff: // Byte Order Mark (BOM)\r\n case 0x2028: // Line Separator (LS)\r\n case 0x2029: // Paragraph Separator (PS)\r\n return \"w\" /* WORKSPACE */;\r\n }\r\n return \"i\" /* IDENT */;\r\n}\r\n/**\r\n * Format a subPath, return its plain form if it is\r\n * a literal string or number. Otherwise prepend the\r\n * dynamic indicator (*).\r\n */\r\nfunction formatSubPath(path) {\r\n const trimmed = path.trim();\r\n // invalid leading 0\r\n if (path.charAt(0) === '0' && isNaN(parseInt(path))) {\r\n return false;\r\n }\r\n return isLiteral(trimmed)\r\n ? stripQuotes(trimmed)\r\n : \"*\" /* ASTARISK */ + trimmed;\r\n}\r\n/**\r\n * Parse a string path into an array of segments\r\n */\r\nfunction parse(path) {\r\n const keys = [];\r\n let index = -1;\r\n let mode = 0 /* BEFORE_PATH */;\r\n let subPathDepth = 0;\r\n let c;\r\n let key; // eslint-disable-line\r\n let newChar;\r\n let type;\r\n let transition;\r\n let action;\r\n let typeMap;\r\n const actions = [];\r\n actions[0 /* APPEND */] = () => {\r\n if (key === undefined) {\r\n key = newChar;\r\n }\r\n else {\r\n key += newChar;\r\n }\r\n };\r\n actions[1 /* PUSH */] = () => {\r\n if (key !== undefined) {\r\n keys.push(key);\r\n key = undefined;\r\n }\r\n };\r\n actions[2 /* INC_SUB_PATH_DEPTH */] = () => {\r\n actions[0 /* APPEND */]();\r\n subPathDepth++;\r\n };\r\n actions[3 /* PUSH_SUB_PATH */] = () => {\r\n if (subPathDepth > 0) {\r\n subPathDepth--;\r\n mode = 4 /* IN_SUB_PATH */;\r\n actions[0 /* APPEND */]();\r\n }\r\n else {\r\n subPathDepth = 0;\r\n if (key === undefined) {\r\n return false;\r\n }\r\n key = formatSubPath(key);\r\n if (key === false) {\r\n return false;\r\n }\r\n else {\r\n actions[1 /* PUSH */]();\r\n }\r\n }\r\n };\r\n function maybeUnescapeQuote() {\r\n const nextChar = path[index + 1];\r\n if ((mode === 5 /* IN_SINGLE_QUOTE */ &&\r\n nextChar === \"'\" /* SINGLE_QUOTE */) ||\r\n (mode === 6 /* IN_DOUBLE_QUOTE */ &&\r\n nextChar === \"\\\"\" /* DOUBLE_QUOTE */)) {\r\n index++;\r\n newChar = '\\\\' + nextChar;\r\n actions[0 /* APPEND */]();\r\n return true;\r\n }\r\n }\r\n while (mode !== null) {\r\n index++;\r\n c = path[index];\r\n if (c === '\\\\' && maybeUnescapeQuote()) {\r\n continue;\r\n }\r\n type = getPathCharType(c);\r\n typeMap = pathStateMachine[mode];\r\n transition = typeMap[type] || typeMap[\"l\" /* ELSE */] || 8 /* ERROR */;\r\n // check parse error\r\n if (transition === 8 /* ERROR */) {\r\n return;\r\n }\r\n mode = transition[0];\r\n if (transition[1] !== undefined) {\r\n action = actions[transition[1]];\r\n if (action) {\r\n newChar = c;\r\n if (action() === false) {\r\n return;\r\n }\r\n }\r\n }\r\n // check parse finish\r\n if (mode === 7 /* AFTER_PATH */) {\r\n return keys;\r\n }\r\n }\r\n}\r\n// path token cache\r\nconst cache = new Map();\r\n/**\r\n * key-value message resolver\r\n *\r\n * @remarks\r\n * Resolves messages with the key-value structure. Note that messages with a hierarchical structure such as objects cannot be resolved\r\n *\r\n * @param obj - A target object to be resolved with path\r\n * @param path - A {@link Path | path} to resolve the value of message\r\n *\r\n * @returns A resolved {@link PathValue | path value}\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction resolveWithKeyValue(obj, path) {\r\n return Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(obj) ? obj[path] : null;\r\n}\r\n/**\r\n * message resolver\r\n *\r\n * @remarks\r\n * Resolves messages. messages with a hierarchical structure such as objects can be resolved. This resolver is used in VueI18n as default.\r\n *\r\n * @param obj - A target object to be resolved with path\r\n * @param path - A {@link Path | path} to resolve the value of message\r\n *\r\n * @returns A resolved {@link PathValue | path value}\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction resolveValue(obj, path) {\r\n // check object\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(obj)) {\r\n return null;\r\n }\r\n // parse path\r\n let hit = cache.get(path);\r\n if (!hit) {\r\n hit = parse(path);\r\n if (hit) {\r\n cache.set(path, hit);\r\n }\r\n }\r\n // check hit\r\n if (!hit) {\r\n return null;\r\n }\r\n // resolve path value\r\n const len = hit.length;\r\n let last = obj;\r\n let i = 0;\r\n while (i < len) {\r\n const val = last[hit[i]];\r\n if (val === undefined) {\r\n return null;\r\n }\r\n last = val;\r\n i++;\r\n }\r\n return last;\r\n}\n\nconst DEFAULT_MODIFIER = (str) => str;\r\nconst DEFAULT_MESSAGE = (ctx) => ''; // eslint-disable-line\r\nconst DEFAULT_MESSAGE_DATA_TYPE = 'text';\r\nconst DEFAULT_NORMALIZE = (values) => values.length === 0 ? '' : values.join('');\r\nconst DEFAULT_INTERPOLATE = _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"toDisplayString\"];\r\nfunction pluralDefault(choice, choicesLength) {\r\n choice = Math.abs(choice);\r\n if (choicesLength === 2) {\r\n // prettier-ignore\r\n return choice\r\n ? choice > 1\r\n ? 1\r\n : 0\r\n : 1;\r\n }\r\n return choice ? Math.min(choice, 2) : 0;\r\n}\r\nfunction getPluralIndex(options) {\r\n // prettier-ignore\r\n const index = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(options.pluralIndex)\r\n ? options.pluralIndex\r\n : -1;\r\n // prettier-ignore\r\n return options.named && (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(options.named.count) || Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(options.named.n))\r\n ? Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(options.named.count)\r\n ? options.named.count\r\n : Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(options.named.n)\r\n ? options.named.n\r\n : index\r\n : index;\r\n}\r\nfunction normalizeNamed(pluralIndex, props) {\r\n if (!props.count) {\r\n props.count = pluralIndex;\r\n }\r\n if (!props.n) {\r\n props.n = pluralIndex;\r\n }\r\n}\r\nfunction createMessageContext(options = {}) {\r\n const locale = options.locale;\r\n const pluralIndex = getPluralIndex(options);\r\n const pluralRule = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(options.pluralRules) &&\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(locale) &&\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.pluralRules[locale])\r\n ? options.pluralRules[locale]\r\n : pluralDefault;\r\n const orgPluralRule = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(options.pluralRules) &&\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(locale) &&\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.pluralRules[locale])\r\n ? pluralDefault\r\n : undefined;\r\n const plural = (messages) => {\r\n return messages[pluralRule(pluralIndex, messages.length, orgPluralRule)];\r\n };\r\n const _list = options.list || [];\r\n const list = (index) => _list[index];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _named = options.named || {};\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(options.pluralIndex) && normalizeNamed(pluralIndex, _named);\r\n const named = (key) => _named[key];\r\n function message(key) {\r\n // prettier-ignore\r\n const msg = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.messages)\r\n ? options.messages(key)\r\n : Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(options.messages)\r\n ? options.messages[key]\r\n : false;\r\n return !msg\r\n ? options.parent\r\n ? options.parent.message(key) // resolve from parent messages\r\n : DEFAULT_MESSAGE\r\n : msg;\r\n }\r\n const _modifier = (name) => options.modifiers\r\n ? options.modifiers[name]\r\n : DEFAULT_MODIFIER;\r\n const normalize = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.processor) && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.processor.normalize)\r\n ? options.processor.normalize\r\n : DEFAULT_NORMALIZE;\r\n const interpolate = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.processor) &&\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.processor.interpolate)\r\n ? options.processor.interpolate\r\n : DEFAULT_INTERPOLATE;\r\n const type = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.processor) && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.processor.type)\r\n ? options.processor.type\r\n : DEFAULT_MESSAGE_DATA_TYPE;\r\n const linked = (key, ...args) => {\r\n const [arg1, arg2] = args;\r\n let type = 'text';\r\n let modifier = '';\r\n if (args.length === 1) {\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(arg1)) {\r\n modifier = arg1.modifier || modifier;\r\n type = arg1.type || type;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg1)) {\r\n modifier = arg1 || modifier;\r\n }\r\n }\r\n else if (args.length === 2) {\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg1)) {\r\n modifier = arg1 || modifier;\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg2)) {\r\n type = arg2 || type;\r\n }\r\n }\r\n let msg = message(key)(ctx);\r\n // The message in vnode resolved with linked are returned as an array by processor.nomalize\r\n if (type === 'vnode' && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(msg) && modifier) {\r\n msg = msg[0];\r\n }\r\n return modifier ? _modifier(modifier)(msg, type) : msg;\r\n };\r\n const ctx = {\r\n [\"list\" /* LIST */]: list,\r\n [\"named\" /* NAMED */]: named,\r\n [\"plural\" /* PLURAL */]: plural,\r\n [\"linked\" /* LINKED */]: linked,\r\n [\"message\" /* MESSAGE */]: message,\r\n [\"type\" /* TYPE */]: type,\r\n [\"interpolate\" /* INTERPOLATE */]: interpolate,\r\n [\"normalize\" /* NORMALIZE */]: normalize\r\n };\r\n return ctx;\r\n}\n\nlet devtools = null;\r\nfunction setDevToolsHook(hook) {\r\n devtools = hook;\r\n}\r\nfunction getDevToolsHook() {\r\n return devtools;\r\n}\r\nfunction initI18nDevTools(i18n, version, meta) {\r\n // TODO: queue if devtools is undefined\r\n devtools &&\r\n devtools.emit(_intlify_devtools_if__WEBPACK_IMPORTED_MODULE_2__[\"IntlifyDevToolsHooks\"].I18nInit, {\r\n timestamp: Date.now(),\r\n i18n,\r\n version,\r\n meta\r\n });\r\n}\r\nconst translateDevTools = /* #__PURE__*/ createDevToolsHook(_intlify_devtools_if__WEBPACK_IMPORTED_MODULE_2__[\"IntlifyDevToolsHooks\"].FunctionTranslate);\r\nfunction createDevToolsHook(hook) {\r\n return (payloads) => devtools && devtools.emit(hook, payloads);\r\n}\n\nconst CoreWarnCodes = {\r\n NOT_FOUND_KEY: 1,\r\n FALLBACK_TO_TRANSLATE: 2,\r\n CANNOT_FORMAT_NUMBER: 3,\r\n FALLBACK_TO_NUMBER_FORMAT: 4,\r\n CANNOT_FORMAT_DATE: 5,\r\n FALLBACK_TO_DATE_FORMAT: 6,\r\n __EXTEND_POINT__: 7\r\n};\r\n/** @internal */\r\nconst warnMessages = {\r\n [CoreWarnCodes.NOT_FOUND_KEY]: `Not found '{key}' key in '{locale}' locale messages.`,\r\n [CoreWarnCodes.FALLBACK_TO_TRANSLATE]: `Fall back to translate '{key}' key with '{target}' locale.`,\r\n [CoreWarnCodes.CANNOT_FORMAT_NUMBER]: `Cannot format a number value due to not supported Intl.NumberFormat.`,\r\n [CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT]: `Fall back to number format '{key}' key with '{target}' locale.`,\r\n [CoreWarnCodes.CANNOT_FORMAT_DATE]: `Cannot format a date value due to not supported Intl.DateTimeFormat.`,\r\n [CoreWarnCodes.FALLBACK_TO_DATE_FORMAT]: `Fall back to datetime format '{key}' key with '{target}' locale.`\r\n};\r\nfunction getWarnMessage(code, ...args) {\r\n return Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"format\"])(warnMessages[code], ...args);\r\n}\n\n/**\r\n * Fallback with simple implemenation\r\n *\r\n * @remarks\r\n * A fallback locale function implemented with a simple fallback algorithm.\r\n *\r\n * Basically, it returns the value as specified in the `fallbackLocale` props, and is processed with the fallback inside intlify.\r\n *\r\n * @param ctx - A {@link CoreContext | context}\r\n * @param fallback - A {@link FallbackLocale | fallback locale}\r\n * @param start - A starting {@link Locale | locale}\r\n *\r\n * @returns Fallback locales\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction fallbackWithSimple(ctx, fallback, start // eslint-disable-line @typescript-eslint/no-unused-vars\r\n) {\r\n // prettier-ignore\r\n return [...new Set([\r\n start,\r\n ...(Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(fallback)\r\n ? fallback\r\n : Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(fallback)\r\n ? Object.keys(fallback)\r\n : Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(fallback)\r\n ? [fallback]\r\n : [start])\r\n ])];\r\n}\r\n/**\r\n * Fallback with locale chain\r\n *\r\n * @remarks\r\n * A fallback locale function implemented with a fallback chain algorithm. It's used in VueI18n as default.\r\n *\r\n * @param ctx - A {@link CoreContext | context}\r\n * @param fallback - A {@link FallbackLocale | fallback locale}\r\n * @param start - A starting {@link Locale | locale}\r\n *\r\n * @returns Fallback locales\r\n *\r\n * @VueI18nSee [Fallbacking](../guide/essentials/fallback)\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction fallbackWithLocaleChain(ctx, fallback, start) {\r\n const startLocale = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(start) ? start : DEFAULT_LOCALE;\r\n const context = ctx;\r\n if (!context.__localeChainCache) {\r\n context.__localeChainCache = new Map();\r\n }\r\n let chain = context.__localeChainCache.get(startLocale);\r\n if (!chain) {\r\n chain = [];\r\n // first block defined by start\r\n let block = [start];\r\n // while any intervening block found\r\n while (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(block)) {\r\n block = appendBlockToChain(chain, block, fallback);\r\n }\r\n // prettier-ignore\r\n // last block defined by default\r\n const defaults = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(fallback) || !Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(fallback)\r\n ? fallback\r\n : fallback['default']\r\n ? fallback['default']\r\n : null;\r\n // convert defaults to array\r\n block = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(defaults) ? [defaults] : defaults;\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(block)) {\r\n appendBlockToChain(chain, block, false);\r\n }\r\n context.__localeChainCache.set(startLocale, chain);\r\n }\r\n return chain;\r\n}\r\nfunction appendBlockToChain(chain, block, blocks) {\r\n let follow = true;\r\n for (let i = 0; i < block.length && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(follow); i++) {\r\n const locale = block[i];\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(locale)) {\r\n follow = appendLocaleToChain(chain, block[i], blocks);\r\n }\r\n }\r\n return follow;\r\n}\r\nfunction appendLocaleToChain(chain, locale, blocks) {\r\n let follow;\r\n const tokens = locale.split('-');\r\n do {\r\n const target = tokens.join('-');\r\n follow = appendItemToChain(chain, target, blocks);\r\n tokens.splice(-1, 1);\r\n } while (tokens.length && follow === true);\r\n return follow;\r\n}\r\nfunction appendItemToChain(chain, target, blocks) {\r\n let follow = false;\r\n if (!chain.includes(target)) {\r\n follow = true;\r\n if (target) {\r\n follow = target[target.length - 1] !== '!';\r\n const locale = target.replace(/!/g, '');\r\n chain.push(locale);\r\n if ((Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(blocks) || Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(blocks)) &&\r\n blocks[locale] // eslint-disable-line @typescript-eslint/no-explicit-any\r\n ) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n follow = blocks[locale];\r\n }\r\n }\r\n }\r\n return follow;\r\n}\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\r\n/**\r\n * Intlify core-base version\r\n * @internal\r\n */\r\nconst VERSION = '9.2.2';\r\nconst NOT_REOSLVED = -1;\r\nconst DEFAULT_LOCALE = 'en-US';\r\nconst MISSING_RESOLVE_VALUE = '';\r\nconst capitalize = (str) => `${str.charAt(0).toLocaleUpperCase()}${str.substr(1)}`;\r\nfunction getDefaultLinkedModifiers() {\r\n return {\r\n upper: (val, type) => {\r\n // prettier-ignore\r\n return type === 'text' && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(val)\r\n ? val.toUpperCase()\r\n : type === 'vnode' && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(val) && '__v_isVNode' in val\r\n ? val.children.toUpperCase()\r\n : val;\r\n },\r\n lower: (val, type) => {\r\n // prettier-ignore\r\n return type === 'text' && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(val)\r\n ? val.toLowerCase()\r\n : type === 'vnode' && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(val) && '__v_isVNode' in val\r\n ? val.children.toLowerCase()\r\n : val;\r\n },\r\n capitalize: (val, type) => {\r\n // prettier-ignore\r\n return (type === 'text' && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(val)\r\n ? capitalize(val)\r\n : type === 'vnode' && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(val) && '__v_isVNode' in val\r\n ? capitalize(val.children)\r\n : val);\r\n }\r\n };\r\n}\r\nlet _compiler;\r\nfunction registerMessageCompiler(compiler) {\r\n _compiler = compiler;\r\n}\r\nlet _resolver;\r\n/**\r\n * Register the message resolver\r\n *\r\n * @param resolver - A {@link MessageResolver} function\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction registerMessageResolver(resolver) {\r\n _resolver = resolver;\r\n}\r\nlet _fallbacker;\r\n/**\r\n * Register the locale fallbacker\r\n *\r\n * @param fallbacker - A {@link LocaleFallbacker} function\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction registerLocaleFallbacker(fallbacker) {\r\n _fallbacker = fallbacker;\r\n}\r\n// Additional Meta for Intlify DevTools\r\nlet _additionalMeta = null;\r\nconst setAdditionalMeta = (meta) => {\r\n _additionalMeta = meta;\r\n};\r\nconst getAdditionalMeta = () => _additionalMeta;\r\nlet _fallbackContext = null;\r\nconst setFallbackContext = (context) => {\r\n _fallbackContext = context;\r\n};\r\nconst getFallbackContext = () => _fallbackContext;\r\n// ID for CoreContext\r\nlet _cid = 0;\r\nfunction createCoreContext(options = {}) {\r\n // setup options\r\n const version = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.version) ? options.version : VERSION;\r\n const locale = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.locale) ? options.locale : DEFAULT_LOCALE;\r\n const fallbackLocale = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(options.fallbackLocale) ||\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.fallbackLocale) ||\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.fallbackLocale) ||\r\n options.fallbackLocale === false\r\n ? options.fallbackLocale\r\n : locale;\r\n const messages = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.messages)\r\n ? options.messages\r\n : { [locale]: {} };\r\n const datetimeFormats = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.datetimeFormats)\r\n ? options.datetimeFormats\r\n : { [locale]: {} }\r\n ;\r\n const numberFormats = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.numberFormats)\r\n ? options.numberFormats\r\n : { [locale]: {} }\r\n ;\r\n const modifiers = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"assign\"])({}, options.modifiers || {}, getDefaultLinkedModifiers());\r\n const pluralRules = options.pluralRules || {};\r\n const missing = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.missing) ? options.missing : null;\r\n const missingWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.missingWarn) || Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isRegExp\"])(options.missingWarn)\r\n ? options.missingWarn\r\n : true;\r\n const fallbackWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.fallbackWarn) || Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isRegExp\"])(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : true;\r\n const fallbackFormat = !!options.fallbackFormat;\r\n const unresolving = !!options.unresolving;\r\n const postTranslation = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.postTranslation)\r\n ? options.postTranslation\r\n : null;\r\n const processor = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(options.processor) ? options.processor : null;\r\n const warnHtmlMessage = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.warnHtmlMessage)\r\n ? options.warnHtmlMessage\r\n : true;\r\n const escapeParameter = !!options.escapeParameter;\r\n const messageCompiler = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.messageCompiler)\r\n ? options.messageCompiler\r\n : _compiler;\r\n const messageResolver = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.messageResolver)\r\n ? options.messageResolver\r\n : _resolver || resolveWithKeyValue;\r\n const localeFallbacker = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.localeFallbacker)\r\n ? options.localeFallbacker\r\n : _fallbacker || fallbackWithSimple;\r\n const fallbackContext = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(options.fallbackContext)\r\n ? options.fallbackContext\r\n : undefined;\r\n const onWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(options.onWarn) ? options.onWarn : _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"warn\"];\r\n // setup internal options\r\n const internalOptions = options;\r\n const __datetimeFormatters = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(internalOptions.__datetimeFormatters)\r\n ? internalOptions.__datetimeFormatters\r\n : new Map()\r\n ;\r\n const __numberFormatters = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(internalOptions.__numberFormatters)\r\n ? internalOptions.__numberFormatters\r\n : new Map()\r\n ;\r\n const __meta = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(internalOptions.__meta) ? internalOptions.__meta : {};\r\n _cid++;\r\n const context = {\r\n version,\r\n cid: _cid,\r\n locale,\r\n fallbackLocale,\r\n messages,\r\n modifiers,\r\n pluralRules,\r\n missing,\r\n missingWarn,\r\n fallbackWarn,\r\n fallbackFormat,\r\n unresolving,\r\n postTranslation,\r\n processor,\r\n warnHtmlMessage,\r\n escapeParameter,\r\n messageCompiler,\r\n messageResolver,\r\n localeFallbacker,\r\n fallbackContext,\r\n onWarn,\r\n __meta\r\n };\r\n {\r\n context.datetimeFormats = datetimeFormats;\r\n context.numberFormats = numberFormats;\r\n context.__datetimeFormatters = __datetimeFormatters;\r\n context.__numberFormatters = __numberFormatters;\r\n }\r\n // for vue-devtools timeline event\r\n if ((true)) {\r\n context.__v_emitter =\r\n internalOptions.__v_emitter != null\r\n ? internalOptions.__v_emitter\r\n : undefined;\r\n }\r\n // NOTE: experimental !!\r\n if (true) {\r\n initI18nDevTools(context, version, __meta);\r\n }\r\n return context;\r\n}\r\n/** @internal */\r\nfunction isTranslateFallbackWarn(fallback, key) {\r\n return fallback instanceof RegExp ? fallback.test(key) : fallback;\r\n}\r\n/** @internal */\r\nfunction isTranslateMissingWarn(missing, key) {\r\n return missing instanceof RegExp ? missing.test(key) : missing;\r\n}\r\n/** @internal */\r\nfunction handleMissing(context, key, locale, missingWarn, type) {\r\n const { missing, onWarn } = context;\r\n // for vue-devtools timeline event\r\n if ((true)) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"missing\" /* MISSING */, {\r\n locale,\r\n key,\r\n type,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n if (missing !== null) {\r\n const ret = missing(context, locale, key, type);\r\n return Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(ret) ? ret : key;\r\n }\r\n else {\r\n if (( true) && isTranslateMissingWarn(missingWarn, key)) {\r\n onWarn(getWarnMessage(CoreWarnCodes.NOT_FOUND_KEY, { key, locale }));\r\n }\r\n return key;\r\n }\r\n}\r\n/** @internal */\r\nfunction updateFallbackLocale(ctx, locale, fallback) {\r\n const context = ctx;\r\n context.__localeChainCache = new Map();\r\n ctx.localeFallbacker(ctx, fallback, locale);\r\n}\r\n/* eslint-enable @typescript-eslint/no-explicit-any */\n\nconst RE_HTML_TAG = /<\\/?[\\w\\s=\"/.':;#-\\/]+>/;\r\nconst WARN_MESSAGE = `Detected HTML in '{source}' message. Recommend not using HTML messages to avoid XSS.`;\r\nfunction checkHtmlMessage(source, options) {\r\n const warnHtmlMessage = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.warnHtmlMessage)\r\n ? options.warnHtmlMessage\r\n : true;\r\n if (warnHtmlMessage && RE_HTML_TAG.test(source)) {\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"warn\"])(Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"format\"])(WARN_MESSAGE, { source }));\r\n }\r\n}\r\nconst defaultOnCacheKey = (source) => source;\r\nlet compileCache = Object.create(null);\r\nfunction clearCompileCache() {\r\n compileCache = Object.create(null);\r\n}\r\nfunction compileToFunction(source, options = {}) {\r\n {\r\n // check HTML message\r\n ( true) && checkHtmlMessage(source, options);\r\n // check caches\r\n const onCacheKey = options.onCacheKey || defaultOnCacheKey;\r\n const key = onCacheKey(source);\r\n const cached = compileCache[key];\r\n if (cached) {\r\n return cached;\r\n }\r\n // compile error detecting\r\n let occurred = false;\r\n const onError = options.onError || _intlify_message_compiler__WEBPACK_IMPORTED_MODULE_1__[\"defaultOnError\"];\r\n options.onError = (err) => {\r\n occurred = true;\r\n onError(err);\r\n };\r\n // compile\r\n const { code } = Object(_intlify_message_compiler__WEBPACK_IMPORTED_MODULE_1__[\"baseCompile\"])(source, options);\r\n // evaluate function\r\n const msg = new Function(`return ${code}`)();\r\n // if occurred compile error, don't cache\r\n return !occurred ? (compileCache[key] = msg) : msg;\r\n }\r\n}\n\nlet code = _intlify_message_compiler__WEBPACK_IMPORTED_MODULE_1__[\"CompileErrorCodes\"].__EXTEND_POINT__;\r\nconst inc = () => ++code;\r\nconst CoreErrorCodes = {\r\n INVALID_ARGUMENT: code,\r\n INVALID_DATE_ARGUMENT: inc(),\r\n INVALID_ISO_DATE_ARGUMENT: inc(),\r\n __EXTEND_POINT__: inc() // 18\r\n};\r\nfunction createCoreError(code) {\r\n return Object(_intlify_message_compiler__WEBPACK_IMPORTED_MODULE_1__[\"createCompileError\"])(code, null, ( true) ? { messages: errorMessages } : undefined);\r\n}\r\n/** @internal */\r\nconst errorMessages = {\r\n [CoreErrorCodes.INVALID_ARGUMENT]: 'Invalid arguments',\r\n [CoreErrorCodes.INVALID_DATE_ARGUMENT]: 'The date provided is an invalid Date object.' +\r\n 'Make sure your Date represents a valid date.',\r\n [CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT]: 'The argument provided is not a valid ISO date string'\r\n};\n\nconst NOOP_MESSAGE_FUNCTION = () => '';\r\nconst isMessageFunction = (val) => Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(val);\r\n// implementation of `translate` function\r\nfunction translate(context, ...args) {\r\n const { fallbackFormat, postTranslation, unresolving, messageCompiler, fallbackLocale, messages } = context;\r\n const [key, options] = parseTranslateArgs(...args);\r\n const missingWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.missingWarn)\r\n ? options.missingWarn\r\n : context.missingWarn;\r\n const fallbackWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : context.fallbackWarn;\r\n const escapeParameter = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.escapeParameter)\r\n ? options.escapeParameter\r\n : context.escapeParameter;\r\n const resolvedMessage = !!options.resolvedMessage;\r\n // prettier-ignore\r\n const defaultMsgOrKey = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.default) || Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.default) // default by function option\r\n ? !Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.default)\r\n ? options.default\r\n : (!messageCompiler ? () => key : key)\r\n : fallbackFormat // default by `fallbackFormat` option\r\n ? (!messageCompiler ? () => key : key)\r\n : '';\r\n const enableDefaultMsg = fallbackFormat || defaultMsgOrKey !== '';\r\n const locale = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.locale) ? options.locale : context.locale;\r\n // escape params\r\n escapeParameter && escapeParams(options);\r\n // resolve message format\r\n // eslint-disable-next-line prefer-const\r\n let [formatScope, targetLocale, message] = !resolvedMessage\r\n ? resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn)\r\n : [\r\n key,\r\n locale,\r\n messages[locale] || {}\r\n ];\r\n // NOTE:\r\n // Fix to work around `ssrTransfrom` bug in Vite.\r\n // https://github.com/vitejs/vite/issues/4306\r\n // To get around this, use temporary variables.\r\n // https://github.com/nuxt/framework/issues/1461#issuecomment-954606243\r\n let format = formatScope;\r\n // if you use default message, set it as message format!\r\n let cacheBaseKey = key;\r\n if (!resolvedMessage &&\r\n !(Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(format) || isMessageFunction(format))) {\r\n if (enableDefaultMsg) {\r\n format = defaultMsgOrKey;\r\n cacheBaseKey = format;\r\n }\r\n }\r\n // checking message format and target locale\r\n if (!resolvedMessage &&\r\n (!(Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(format) || isMessageFunction(format)) ||\r\n !Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(targetLocale))) {\r\n return unresolving ? NOT_REOSLVED : key;\r\n }\r\n if (( true) && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(format) && context.messageCompiler == null) {\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"warn\"])(`The message format compilation is not supported in this build. ` +\r\n `Because message compiler isn't included. ` +\r\n `You need to pre-compilation all message format. ` +\r\n `So translate function return '${key}'.`);\r\n return key;\r\n }\r\n // setup compile error detecting\r\n let occurred = false;\r\n const errorDetector = () => {\r\n occurred = true;\r\n };\r\n // compile message format\r\n const msg = !isMessageFunction(format)\r\n ? compileMessageFormat(context, key, targetLocale, format, cacheBaseKey, errorDetector)\r\n : format;\r\n // if occurred compile error, return the message format\r\n if (occurred) {\r\n return format;\r\n }\r\n // evaluate message with context\r\n const ctxOptions = getMessageContextOptions(context, targetLocale, message, options);\r\n const msgContext = createMessageContext(ctxOptions);\r\n const messaged = evaluateMessage(context, msg, msgContext);\r\n // if use post translation option, proceed it with handler\r\n const ret = postTranslation\r\n ? postTranslation(messaged, key)\r\n : messaged;\r\n // NOTE: experimental !!\r\n if (true) {\r\n // prettier-ignore\r\n const payloads = {\r\n timestamp: Date.now(),\r\n key: Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(key)\r\n ? key\r\n : isMessageFunction(format)\r\n ? format.key\r\n : '',\r\n locale: targetLocale || (isMessageFunction(format)\r\n ? format.locale\r\n : ''),\r\n format: Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(format)\r\n ? format\r\n : isMessageFunction(format)\r\n ? format.source\r\n : '',\r\n message: ret\r\n };\r\n payloads.meta = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"assign\"])({}, context.__meta, getAdditionalMeta() || {});\r\n translateDevTools(payloads);\r\n }\r\n return ret;\r\n}\r\nfunction escapeParams(options) {\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(options.list)) {\r\n options.list = options.list.map(item => Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(item) ? Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"escapeHtml\"])(item) : item);\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isObject\"])(options.named)) {\r\n Object.keys(options.named).forEach(key => {\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.named[key])) {\r\n options.named[key] = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"escapeHtml\"])(options.named[key]);\r\n }\r\n });\r\n }\r\n}\r\nfunction resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn) {\r\n const { messages, onWarn, messageResolver: resolveValue, localeFallbacker } = context;\r\n const locales = localeFallbacker(context, fallbackLocale, locale); // eslint-disable-line @typescript-eslint/no-explicit-any\r\n let message = {};\r\n let targetLocale;\r\n let format = null;\r\n let from = locale;\r\n let to = null;\r\n const type = 'translate';\r\n for (let i = 0; i < locales.length; i++) {\r\n targetLocale = to = locales[i];\r\n if (( true) &&\r\n locale !== targetLocale &&\r\n isTranslateFallbackWarn(fallbackWarn, key)) {\r\n onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_TRANSLATE, {\r\n key,\r\n target: targetLocale\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if (( true) && locale !== targetLocale) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type,\r\n key,\r\n from,\r\n to,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n message =\r\n messages[targetLocale] || {};\r\n // for vue-devtools timeline event\r\n let start = null;\r\n let startTag;\r\n let endTag;\r\n if (( true) && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"inBrowser\"]) {\r\n start = window.performance.now();\r\n startTag = 'intlify-message-resolve-start';\r\n endTag = 'intlify-message-resolve-end';\r\n _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"] && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"])(startTag);\r\n }\r\n if ((format = resolveValue(message, key)) === null) {\r\n // if null, resolve with object key path\r\n format = message[key]; // eslint-disable-line @typescript-eslint/no-explicit-any\r\n }\r\n // for vue-devtools timeline event\r\n if (( true) && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"inBrowser\"]) {\r\n const end = window.performance.now();\r\n const emitter = context.__v_emitter;\r\n if (emitter && start && format) {\r\n emitter.emit(\"message-resolve\" /* MESSAGE_RESOLVE */, {\r\n type: \"message-resolve\" /* MESSAGE_RESOLVE */,\r\n key,\r\n message: format,\r\n time: end - start,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n if (startTag && endTag && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"] && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"measure\"]) {\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"])(endTag);\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"measure\"])('intlify message resolve', startTag, endTag);\r\n }\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(format) || Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isFunction\"])(format))\r\n break;\r\n const missingRet = handleMissing(context, // eslint-disable-line @typescript-eslint/no-explicit-any\r\n key, targetLocale, missingWarn, type);\r\n if (missingRet !== key) {\r\n format = missingRet;\r\n }\r\n from = to;\r\n }\r\n return [format, targetLocale, message];\r\n}\r\nfunction compileMessageFormat(context, key, targetLocale, format, cacheBaseKey, errorDetector) {\r\n const { messageCompiler, warnHtmlMessage } = context;\r\n if (isMessageFunction(format)) {\r\n const msg = format;\r\n msg.locale = msg.locale || targetLocale;\r\n msg.key = msg.key || key;\r\n return msg;\r\n }\r\n if (messageCompiler == null) {\r\n const msg = (() => format);\r\n msg.locale = targetLocale;\r\n msg.key = key;\r\n return msg;\r\n }\r\n // for vue-devtools timeline event\r\n let start = null;\r\n let startTag;\r\n let endTag;\r\n if (( true) && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"inBrowser\"]) {\r\n start = window.performance.now();\r\n startTag = 'intlify-message-compilation-start';\r\n endTag = 'intlify-message-compilation-end';\r\n _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"] && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"])(startTag);\r\n }\r\n const msg = messageCompiler(format, getCompileOptions(context, targetLocale, cacheBaseKey, format, warnHtmlMessage, errorDetector));\r\n // for vue-devtools timeline event\r\n if (( true) && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"inBrowser\"]) {\r\n const end = window.performance.now();\r\n const emitter = context.__v_emitter;\r\n if (emitter && start) {\r\n emitter.emit(\"message-compilation\" /* MESSAGE_COMPILATION */, {\r\n type: \"message-compilation\" /* MESSAGE_COMPILATION */,\r\n message: format,\r\n time: end - start,\r\n groupId: `${'translate'}:${key}`\r\n });\r\n }\r\n if (startTag && endTag && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"] && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"measure\"]) {\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"])(endTag);\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"measure\"])('intlify message compilation', startTag, endTag);\r\n }\r\n }\r\n msg.locale = targetLocale;\r\n msg.key = key;\r\n msg.source = format;\r\n return msg;\r\n}\r\nfunction evaluateMessage(context, msg, msgCtx) {\r\n // for vue-devtools timeline event\r\n let start = null;\r\n let startTag;\r\n let endTag;\r\n if (( true) && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"inBrowser\"]) {\r\n start = window.performance.now();\r\n startTag = 'intlify-message-evaluation-start';\r\n endTag = 'intlify-message-evaluation-end';\r\n _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"] && Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"])(startTag);\r\n }\r\n const messaged = msg(msgCtx);\r\n // for vue-devtools timeline event\r\n if (( true) && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"inBrowser\"]) {\r\n const end = window.performance.now();\r\n const emitter = context.__v_emitter;\r\n if (emitter && start) {\r\n emitter.emit(\"message-evaluation\" /* MESSAGE_EVALUATION */, {\r\n type: \"message-evaluation\" /* MESSAGE_EVALUATION */,\r\n value: messaged,\r\n time: end - start,\r\n groupId: `${'translate'}:${msg.key}`\r\n });\r\n }\r\n if (startTag && endTag && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"] && _intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"measure\"]) {\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"mark\"])(endTag);\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"measure\"])('intlify message evaluation', startTag, endTag);\r\n }\r\n }\r\n return messaged;\r\n}\r\n/** @internal */\r\nfunction parseTranslateArgs(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n const options = {};\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg1) && !Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(arg1) && !isMessageFunction(arg1)) {\r\n throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT);\r\n }\r\n // prettier-ignore\r\n const key = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(arg1)\r\n ? String(arg1)\r\n : isMessageFunction(arg1)\r\n ? arg1\r\n : arg1;\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(arg2)) {\r\n options.plural = arg2;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg2)) {\r\n options.default = arg2;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg2) && !Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isEmptyObject\"])(arg2)) {\r\n options.named = arg2;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isArray\"])(arg2)) {\r\n options.list = arg2;\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(arg3)) {\r\n options.plural = arg3;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg3)) {\r\n options.default = arg3;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg3)) {\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"assign\"])(options, arg3);\r\n }\r\n return [key, options];\r\n}\r\nfunction getCompileOptions(context, locale, key, source, warnHtmlMessage, errorDetector) {\r\n return {\r\n warnHtmlMessage,\r\n onError: (err) => {\r\n errorDetector && errorDetector(err);\r\n if ((true)) {\r\n const message = `Message compilation error: ${err.message}`;\r\n const codeFrame = err.location &&\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"generateCodeFrame\"])(source, err.location.start.offset, err.location.end.offset);\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"compile-error\" /* COMPILE_ERROR */, {\r\n message: source,\r\n error: err.message,\r\n start: err.location && err.location.start.offset,\r\n end: err.location && err.location.end.offset,\r\n groupId: `${'translate'}:${key}`\r\n });\r\n }\r\n console.error(codeFrame ? `${message}\\n${codeFrame}` : message);\r\n }\r\n else {}\r\n },\r\n onCacheKey: (source) => Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"generateFormatCacheKey\"])(locale, key, source)\r\n };\r\n}\r\nfunction getMessageContextOptions(context, locale, message, options) {\r\n const { modifiers, pluralRules, messageResolver: resolveValue, fallbackLocale, fallbackWarn, missingWarn, fallbackContext } = context;\r\n const resolveMessage = (key) => {\r\n let val = resolveValue(message, key);\r\n // fallback to root context\r\n if (val == null && fallbackContext) {\r\n const [, , message] = resolveMessageFormat(fallbackContext, key, locale, fallbackLocale, fallbackWarn, missingWarn);\r\n val = resolveValue(message, key);\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(val)) {\r\n let occurred = false;\r\n const errorDetector = () => {\r\n occurred = true;\r\n };\r\n const msg = compileMessageFormat(context, key, locale, val, key, errorDetector);\r\n return !occurred\r\n ? msg\r\n : NOOP_MESSAGE_FUNCTION;\r\n }\r\n else if (isMessageFunction(val)) {\r\n return val;\r\n }\r\n else {\r\n // TODO: should be implemented warning message\r\n return NOOP_MESSAGE_FUNCTION;\r\n }\r\n };\r\n const ctxOptions = {\r\n locale,\r\n modifiers,\r\n pluralRules,\r\n messages: resolveMessage\r\n };\r\n if (context.processor) {\r\n ctxOptions.processor = context.processor;\r\n }\r\n if (options.list) {\r\n ctxOptions.list = options.list;\r\n }\r\n if (options.named) {\r\n ctxOptions.named = options.named;\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(options.plural)) {\r\n ctxOptions.pluralIndex = options.plural;\r\n }\r\n return ctxOptions;\r\n}\n\nconst intlDefined = typeof Intl !== 'undefined';\r\nconst Availabilities = {\r\n dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',\r\n numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'\r\n};\n\n// implementation of `datetime` function\r\nfunction datetime(context, ...args) {\r\n const { datetimeFormats, unresolving, fallbackLocale, onWarn, localeFallbacker } = context;\r\n const { __datetimeFormatters } = context;\r\n if (( true) && !Availabilities.dateTimeFormat) {\r\n onWarn(getWarnMessage(CoreWarnCodes.CANNOT_FORMAT_DATE));\r\n return MISSING_RESOLVE_VALUE;\r\n }\r\n const [key, value, options, overrides] = parseDateTimeArgs(...args);\r\n const missingWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.missingWarn)\r\n ? options.missingWarn\r\n : context.missingWarn;\r\n const fallbackWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : context.fallbackWarn;\r\n const part = !!options.part;\r\n const locale = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.locale) ? options.locale : context.locale;\r\n const locales = localeFallbacker(context, // eslint-disable-line @typescript-eslint/no-explicit-any\r\n fallbackLocale, locale);\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(key) || key === '') {\r\n return new Intl.DateTimeFormat(locale, overrides).format(value);\r\n }\r\n // resolve format\r\n let datetimeFormat = {};\r\n let targetLocale;\r\n let format = null;\r\n let from = locale;\r\n let to = null;\r\n const type = 'datetime format';\r\n for (let i = 0; i < locales.length; i++) {\r\n targetLocale = to = locales[i];\r\n if (( true) &&\r\n locale !== targetLocale &&\r\n isTranslateFallbackWarn(fallbackWarn, key)) {\r\n onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_DATE_FORMAT, {\r\n key,\r\n target: targetLocale\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if (( true) && locale !== targetLocale) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type,\r\n key,\r\n from,\r\n to,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n datetimeFormat =\r\n datetimeFormats[targetLocale] || {};\r\n format = datetimeFormat[key];\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(format))\r\n break;\r\n handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any\r\n from = to;\r\n }\r\n // checking format and target locale\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(format) || !Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(targetLocale)) {\r\n return unresolving ? NOT_REOSLVED : key;\r\n }\r\n let id = `${targetLocale}__${key}`;\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isEmptyObject\"])(overrides)) {\r\n id = `${id}__${JSON.stringify(overrides)}`;\r\n }\r\n let formatter = __datetimeFormatters.get(id);\r\n if (!formatter) {\r\n formatter = new Intl.DateTimeFormat(targetLocale, Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"assign\"])({}, format, overrides));\r\n __datetimeFormatters.set(id, formatter);\r\n }\r\n return !part ? formatter.format(value) : formatter.formatToParts(value);\r\n}\r\n/** @internal */\r\nconst DATETIME_FORMAT_OPTIONS_KEYS = [\r\n 'localeMatcher',\r\n 'weekday',\r\n 'era',\r\n 'year',\r\n 'month',\r\n 'day',\r\n 'hour',\r\n 'minute',\r\n 'second',\r\n 'timeZoneName',\r\n 'formatMatcher',\r\n 'hour12',\r\n 'timeZone',\r\n 'dateStyle',\r\n 'timeStyle',\r\n 'calendar',\r\n 'dayPeriod',\r\n 'numberingSystem',\r\n 'hourCycle',\r\n 'fractionalSecondDigits'\r\n];\r\n/** @internal */\r\nfunction parseDateTimeArgs(...args) {\r\n const [arg1, arg2, arg3, arg4] = args;\r\n const options = {};\r\n let overrides = {};\r\n let value;\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg1)) {\r\n // Only allow ISO strings - other date formats are often supported,\r\n // but may cause different results in different browsers.\r\n const matches = arg1.match(/(\\d{4}-\\d{2}-\\d{2})(T|\\s)?(.*)/);\r\n if (!matches) {\r\n throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT);\r\n }\r\n // Some browsers can not parse the iso datetime separated by space,\r\n // this is a compromise solution by replace the 'T'/' ' with 'T'\r\n const dateTime = matches[3]\r\n ? matches[3].trim().startsWith('T')\r\n ? `${matches[1].trim()}${matches[3].trim()}`\r\n : `${matches[1].trim()}T${matches[3].trim()}`\r\n : matches[1].trim();\r\n value = new Date(dateTime);\r\n try {\r\n // This will fail if the date is not valid\r\n value.toISOString();\r\n }\r\n catch (e) {\r\n throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT);\r\n }\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isDate\"])(arg1)) {\r\n if (isNaN(arg1.getTime())) {\r\n throw createCoreError(CoreErrorCodes.INVALID_DATE_ARGUMENT);\r\n }\r\n value = arg1;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(arg1)) {\r\n value = arg1;\r\n }\r\n else {\r\n throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT);\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg2)) {\r\n options.key = arg2;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg2)) {\r\n Object.keys(arg2).forEach(key => {\r\n if (DATETIME_FORMAT_OPTIONS_KEYS.includes(key)) {\r\n overrides[key] = arg2[key];\r\n }\r\n else {\r\n options[key] = arg2[key];\r\n }\r\n });\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg3)) {\r\n options.locale = arg3;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg3)) {\r\n overrides = arg3;\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg4)) {\r\n overrides = arg4;\r\n }\r\n return [options.key || '', value, options, overrides];\r\n}\r\n/** @internal */\r\nfunction clearDateTimeFormat(ctx, locale, format) {\r\n const context = ctx;\r\n for (const key in format) {\r\n const id = `${locale}__${key}`;\r\n if (!context.__datetimeFormatters.has(id)) {\r\n continue;\r\n }\r\n context.__datetimeFormatters.delete(id);\r\n }\r\n}\n\n// implementation of `number` function\r\nfunction number(context, ...args) {\r\n const { numberFormats, unresolving, fallbackLocale, onWarn, localeFallbacker } = context;\r\n const { __numberFormatters } = context;\r\n if (( true) && !Availabilities.numberFormat) {\r\n onWarn(getWarnMessage(CoreWarnCodes.CANNOT_FORMAT_NUMBER));\r\n return MISSING_RESOLVE_VALUE;\r\n }\r\n const [key, value, options, overrides] = parseNumberArgs(...args);\r\n const missingWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.missingWarn)\r\n ? options.missingWarn\r\n : context.missingWarn;\r\n const fallbackWarn = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isBoolean\"])(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : context.fallbackWarn;\r\n const part = !!options.part;\r\n const locale = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.locale) ? options.locale : context.locale;\r\n const locales = localeFallbacker(context, // eslint-disable-line @typescript-eslint/no-explicit-any\r\n fallbackLocale, locale);\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(key) || key === '') {\r\n return new Intl.NumberFormat(locale, overrides).format(value);\r\n }\r\n // resolve format\r\n let numberFormat = {};\r\n let targetLocale;\r\n let format = null;\r\n let from = locale;\r\n let to = null;\r\n const type = 'number format';\r\n for (let i = 0; i < locales.length; i++) {\r\n targetLocale = to = locales[i];\r\n if (( true) &&\r\n locale !== targetLocale &&\r\n isTranslateFallbackWarn(fallbackWarn, key)) {\r\n onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT, {\r\n key,\r\n target: targetLocale\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if (( true) && locale !== targetLocale) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type,\r\n key,\r\n from,\r\n to,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n numberFormat =\r\n numberFormats[targetLocale] || {};\r\n format = numberFormat[key];\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(format))\r\n break;\r\n handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any\r\n from = to;\r\n }\r\n // checking format and target locale\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(format) || !Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(targetLocale)) {\r\n return unresolving ? NOT_REOSLVED : key;\r\n }\r\n let id = `${targetLocale}__${key}`;\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isEmptyObject\"])(overrides)) {\r\n id = `${id}__${JSON.stringify(overrides)}`;\r\n }\r\n let formatter = __numberFormatters.get(id);\r\n if (!formatter) {\r\n formatter = new Intl.NumberFormat(targetLocale, Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"assign\"])({}, format, overrides));\r\n __numberFormatters.set(id, formatter);\r\n }\r\n return !part ? formatter.format(value) : formatter.formatToParts(value);\r\n}\r\n/** @internal */\r\nconst NUMBER_FORMAT_OPTIONS_KEYS = [\r\n 'localeMatcher',\r\n 'style',\r\n 'currency',\r\n 'currencyDisplay',\r\n 'currencySign',\r\n 'useGrouping',\r\n 'minimumIntegerDigits',\r\n 'minimumFractionDigits',\r\n 'maximumFractionDigits',\r\n 'minimumSignificantDigits',\r\n 'maximumSignificantDigits',\r\n 'compactDisplay',\r\n 'notation',\r\n 'signDisplay',\r\n 'unit',\r\n 'unitDisplay',\r\n 'roundingMode',\r\n 'roundingPriority',\r\n 'roundingIncrement',\r\n 'trailingZeroDisplay'\r\n];\r\n/** @internal */\r\nfunction parseNumberArgs(...args) {\r\n const [arg1, arg2, arg3, arg4] = args;\r\n const options = {};\r\n let overrides = {};\r\n if (!Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isNumber\"])(arg1)) {\r\n throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT);\r\n }\r\n const value = arg1;\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg2)) {\r\n options.key = arg2;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg2)) {\r\n Object.keys(arg2).forEach(key => {\r\n if (NUMBER_FORMAT_OPTIONS_KEYS.includes(key)) {\r\n overrides[key] = arg2[key];\r\n }\r\n else {\r\n options[key] = arg2[key];\r\n }\r\n });\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(arg3)) {\r\n options.locale = arg3;\r\n }\r\n else if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg3)) {\r\n overrides = arg3;\r\n }\r\n if (Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isPlainObject\"])(arg4)) {\r\n overrides = arg4;\r\n }\r\n return [options.key || '', value, options, overrides];\r\n}\r\n/** @internal */\r\nfunction clearNumberFormat(ctx, locale, format) {\r\n const context = ctx;\r\n for (const key in format) {\r\n const id = `${locale}__${key}`;\r\n if (!context.__numberFormatters.has(id)) {\r\n continue;\r\n }\r\n context.__numberFormatters.delete(id);\r\n }\r\n}\n\n// TODO: we could not exports for Node native ES Moudles yet...\r\n{\r\n if (typeof __INTLIFY_PROD_DEVTOOLS__ !== 'boolean') {\r\n Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"getGlobalThis\"])().__INTLIFY_PROD_DEVTOOLS__ = false;\r\n }\r\n}\n\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@intlify/core-base/dist/core-base.esm-bundler.js?"); /***/ }), /***/ "../../node_modules/@intlify/devtools-if/dist/devtools-if.esm-bundler.js": /*!******************************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@intlify/devtools-if/dist/devtools-if.esm-bundler.js ***! \******************************************************************************************************/ /*! exports provided: IntlifyDevToolsHooks */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"IntlifyDevToolsHooks\", function() { return IntlifyDevToolsHooks; });\n/*!\n * devtools-if v9.2.2\n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\nconst IntlifyDevToolsHooks = {\r\n I18nInit: 'i18n:init',\r\n FunctionTranslate: 'function:translate'\r\n};\n\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@intlify/devtools-if/dist/devtools-if.esm-bundler.js?"); /***/ }), /***/ "../../node_modules/@intlify/message-compiler/dist/message-compiler.esm-bundler.js": /*!****************************************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@intlify/message-compiler/dist/message-compiler.esm-bundler.js ***! \****************************************************************************************************************/ /*! exports provided: CompileErrorCodes, ERROR_DOMAIN, LocationStub, baseCompile, createCompileError, createLocation, createParser, createPosition, defaultOnError, errorMessages */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CompileErrorCodes\", function() { return CompileErrorCodes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ERROR_DOMAIN\", function() { return ERROR_DOMAIN; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"LocationStub\", function() { return LocationStub; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"baseCompile\", function() { return baseCompile; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createCompileError\", function() { return createCompileError; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createLocation\", function() { return createLocation; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createParser\", function() { return createParser; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createPosition\", function() { return createPosition; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultOnError\", function() { return defaultOnError; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"errorMessages\", function() { return errorMessages; });\n/* harmony import */ var _intlify_shared__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @intlify/shared */ \"../../node_modules/@intlify/shared/dist/shared.esm-bundler.js\");\n/*!\n * message-compiler v9.2.2\n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\n\n\nconst CompileErrorCodes = {\r\n // tokenizer error codes\r\n EXPECTED_TOKEN: 1,\r\n INVALID_TOKEN_IN_PLACEHOLDER: 2,\r\n UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER: 3,\r\n UNKNOWN_ESCAPE_SEQUENCE: 4,\r\n INVALID_UNICODE_ESCAPE_SEQUENCE: 5,\r\n UNBALANCED_CLOSING_BRACE: 6,\r\n UNTERMINATED_CLOSING_BRACE: 7,\r\n EMPTY_PLACEHOLDER: 8,\r\n NOT_ALLOW_NEST_PLACEHOLDER: 9,\r\n INVALID_LINKED_FORMAT: 10,\r\n // parser error codes\r\n MUST_HAVE_MESSAGES_IN_PLURAL: 11,\r\n UNEXPECTED_EMPTY_LINKED_MODIFIER: 12,\r\n UNEXPECTED_EMPTY_LINKED_KEY: 13,\r\n UNEXPECTED_LEXICAL_ANALYSIS: 14,\r\n // Special value for higher-order compilers to pick up the last code\r\n // to avoid collision of error codes. This should always be kept as the last\r\n // item.\r\n __EXTEND_POINT__: 15\r\n};\r\n/** @internal */\r\nconst errorMessages = {\r\n // tokenizer error messages\r\n [CompileErrorCodes.EXPECTED_TOKEN]: `Expected token: '{0}'`,\r\n [CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER]: `Invalid token in placeholder: '{0}'`,\r\n [CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]: `Unterminated single quote in placeholder`,\r\n [CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE]: `Unknown escape sequence: \\\\{0}`,\r\n [CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE]: `Invalid unicode escape sequence: {0}`,\r\n [CompileErrorCodes.UNBALANCED_CLOSING_BRACE]: `Unbalanced closing brace`,\r\n [CompileErrorCodes.UNTERMINATED_CLOSING_BRACE]: `Unterminated closing brace`,\r\n [CompileErrorCodes.EMPTY_PLACEHOLDER]: `Empty placeholder`,\r\n [CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER]: `Not allowed nest placeholder`,\r\n [CompileErrorCodes.INVALID_LINKED_FORMAT]: `Invalid linked format`,\r\n // parser error messages\r\n [CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL]: `Plural must have messages`,\r\n [CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER]: `Unexpected empty linked modifier`,\r\n [CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY]: `Unexpected empty linked key`,\r\n [CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS]: `Unexpected lexical analysis in token: '{0}'`\r\n};\r\nfunction createCompileError(code, loc, options = {}) {\r\n const { domain, messages, args } = options;\r\n const msg = ( true)\r\n ? Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"format\"])((messages || errorMessages)[code] || '', ...(args || []))\r\n : undefined;\r\n const error = new SyntaxError(String(msg));\r\n error.code = code;\r\n if (loc) {\r\n error.location = loc;\r\n }\r\n error.domain = domain;\r\n return error;\r\n}\r\n/** @internal */\r\nfunction defaultOnError(error) {\r\n throw error;\r\n}\n\nconst LocationStub = {\r\n start: { line: 1, column: 1, offset: 0 },\r\n end: { line: 1, column: 1, offset: 0 }\r\n};\r\nfunction createPosition(line, column, offset) {\r\n return { line, column, offset };\r\n}\r\nfunction createLocation(start, end, source) {\r\n const loc = { start, end };\r\n if (source != null) {\r\n loc.source = source;\r\n }\r\n return loc;\r\n}\n\nconst CHAR_SP = ' ';\r\nconst CHAR_CR = '\\r';\r\nconst CHAR_LF = '\\n';\r\nconst CHAR_LS = String.fromCharCode(0x2028);\r\nconst CHAR_PS = String.fromCharCode(0x2029);\r\nfunction createScanner(str) {\r\n const _buf = str;\r\n let _index = 0;\r\n let _line = 1;\r\n let _column = 1;\r\n let _peekOffset = 0;\r\n const isCRLF = (index) => _buf[index] === CHAR_CR && _buf[index + 1] === CHAR_LF;\r\n const isLF = (index) => _buf[index] === CHAR_LF;\r\n const isPS = (index) => _buf[index] === CHAR_PS;\r\n const isLS = (index) => _buf[index] === CHAR_LS;\r\n const isLineEnd = (index) => isCRLF(index) || isLF(index) || isPS(index) || isLS(index);\r\n const index = () => _index;\r\n const line = () => _line;\r\n const column = () => _column;\r\n const peekOffset = () => _peekOffset;\r\n const charAt = (offset) => isCRLF(offset) || isPS(offset) || isLS(offset) ? CHAR_LF : _buf[offset];\r\n const currentChar = () => charAt(_index);\r\n const currentPeek = () => charAt(_index + _peekOffset);\r\n function next() {\r\n _peekOffset = 0;\r\n if (isLineEnd(_index)) {\r\n _line++;\r\n _column = 0;\r\n }\r\n if (isCRLF(_index)) {\r\n _index++;\r\n }\r\n _index++;\r\n _column++;\r\n return _buf[_index];\r\n }\r\n function peek() {\r\n if (isCRLF(_index + _peekOffset)) {\r\n _peekOffset++;\r\n }\r\n _peekOffset++;\r\n return _buf[_index + _peekOffset];\r\n }\r\n function reset() {\r\n _index = 0;\r\n _line = 1;\r\n _column = 1;\r\n _peekOffset = 0;\r\n }\r\n function resetPeek(offset = 0) {\r\n _peekOffset = offset;\r\n }\r\n function skipToPeek() {\r\n const target = _index + _peekOffset;\r\n // eslint-disable-next-line no-unmodified-loop-condition\r\n while (target !== _index) {\r\n next();\r\n }\r\n _peekOffset = 0;\r\n }\r\n return {\r\n index,\r\n line,\r\n column,\r\n peekOffset,\r\n charAt,\r\n currentChar,\r\n currentPeek,\r\n next,\r\n peek,\r\n reset,\r\n resetPeek,\r\n skipToPeek\r\n };\r\n}\n\nconst EOF = undefined;\r\nconst LITERAL_DELIMITER = \"'\";\r\nconst ERROR_DOMAIN$1 = 'tokenizer';\r\nfunction createTokenizer(source, options = {}) {\r\n const location = options.location !== false;\r\n const _scnr = createScanner(source);\r\n const currentOffset = () => _scnr.index();\r\n const currentPosition = () => createPosition(_scnr.line(), _scnr.column(), _scnr.index());\r\n const _initLoc = currentPosition();\r\n const _initOffset = currentOffset();\r\n const _context = {\r\n currentType: 14 /* EOF */,\r\n offset: _initOffset,\r\n startLoc: _initLoc,\r\n endLoc: _initLoc,\r\n lastType: 14 /* EOF */,\r\n lastOffset: _initOffset,\r\n lastStartLoc: _initLoc,\r\n lastEndLoc: _initLoc,\r\n braceNest: 0,\r\n inLinked: false,\r\n text: ''\r\n };\r\n const context = () => _context;\r\n const { onError } = options;\r\n function emitError(code, pos, offset, ...args) {\r\n const ctx = context();\r\n pos.column += offset;\r\n pos.offset += offset;\r\n if (onError) {\r\n const loc = createLocation(ctx.startLoc, pos);\r\n const err = createCompileError(code, loc, {\r\n domain: ERROR_DOMAIN$1,\r\n args\r\n });\r\n onError(err);\r\n }\r\n }\r\n function getToken(context, type, value) {\r\n context.endLoc = currentPosition();\r\n context.currentType = type;\r\n const token = { type };\r\n if (location) {\r\n token.loc = createLocation(context.startLoc, context.endLoc);\r\n }\r\n if (value != null) {\r\n token.value = value;\r\n }\r\n return token;\r\n }\r\n const getEndToken = (context) => getToken(context, 14 /* EOF */);\r\n function eat(scnr, ch) {\r\n if (scnr.currentChar() === ch) {\r\n scnr.next();\r\n return ch;\r\n }\r\n else {\r\n emitError(CompileErrorCodes.EXPECTED_TOKEN, currentPosition(), 0, ch);\r\n return '';\r\n }\r\n }\r\n function peekSpaces(scnr) {\r\n let buf = '';\r\n while (scnr.currentPeek() === CHAR_SP || scnr.currentPeek() === CHAR_LF) {\r\n buf += scnr.currentPeek();\r\n scnr.peek();\r\n }\r\n return buf;\r\n }\r\n function skipSpaces(scnr) {\r\n const buf = peekSpaces(scnr);\r\n scnr.skipToPeek();\r\n return buf;\r\n }\r\n function isIdentifierStart(ch) {\r\n if (ch === EOF) {\r\n return false;\r\n }\r\n const cc = ch.charCodeAt(0);\r\n return ((cc >= 97 && cc <= 122) || // a-z\r\n (cc >= 65 && cc <= 90) || // A-Z\r\n cc === 95 // _\r\n );\r\n }\r\n function isNumberStart(ch) {\r\n if (ch === EOF) {\r\n return false;\r\n }\r\n const cc = ch.charCodeAt(0);\r\n return cc >= 48 && cc <= 57; // 0-9\r\n }\r\n function isNamedIdentifierStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 2 /* BraceLeft */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = isIdentifierStart(scnr.currentPeek());\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isListIdentifierStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 2 /* BraceLeft */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ch = scnr.currentPeek() === '-' ? scnr.peek() : scnr.currentPeek();\r\n const ret = isNumberStart(ch);\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLiteralStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 2 /* BraceLeft */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === LITERAL_DELIMITER;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedDotStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 8 /* LinkedAlias */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === \".\" /* LinkedDot */;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedModifierStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 9 /* LinkedDot */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = isIdentifierStart(scnr.currentPeek());\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedDelimiterStart(scnr, context) {\r\n const { currentType } = context;\r\n if (!(currentType === 8 /* LinkedAlias */ ||\r\n currentType === 12 /* LinkedModifier */)) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === \":\" /* LinkedDelimiter */;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedReferStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 10 /* LinkedDelimiter */) {\r\n return false;\r\n }\r\n const fn = () => {\r\n const ch = scnr.currentPeek();\r\n if (ch === \"{\" /* BraceLeft */) {\r\n return isIdentifierStart(scnr.peek());\r\n }\r\n else if (ch === \"@\" /* LinkedAlias */ ||\r\n ch === \"%\" /* Modulo */ ||\r\n ch === \"|\" /* Pipe */ ||\r\n ch === \":\" /* LinkedDelimiter */ ||\r\n ch === \".\" /* LinkedDot */ ||\r\n ch === CHAR_SP ||\r\n !ch) {\r\n return false;\r\n }\r\n else if (ch === CHAR_LF) {\r\n scnr.peek();\r\n return fn();\r\n }\r\n else {\r\n // other characters\r\n return isIdentifierStart(ch);\r\n }\r\n };\r\n const ret = fn();\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isPluralStart(scnr) {\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === \"|\" /* Pipe */;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function detectModuloStart(scnr) {\r\n const spaces = peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === \"%\" /* Modulo */ &&\r\n scnr.peek() === \"{\" /* BraceLeft */;\r\n scnr.resetPeek();\r\n return {\r\n isModulo: ret,\r\n hasSpace: spaces.length > 0\r\n };\r\n }\r\n function isTextStart(scnr, reset = true) {\r\n const fn = (hasSpace = false, prev = '', detectModulo = false) => {\r\n const ch = scnr.currentPeek();\r\n if (ch === \"{\" /* BraceLeft */) {\r\n return prev === \"%\" /* Modulo */ ? false : hasSpace;\r\n }\r\n else if (ch === \"@\" /* LinkedAlias */ || !ch) {\r\n return prev === \"%\" /* Modulo */ ? true : hasSpace;\r\n }\r\n else if (ch === \"%\" /* Modulo */) {\r\n scnr.peek();\r\n return fn(hasSpace, \"%\" /* Modulo */, true);\r\n }\r\n else if (ch === \"|\" /* Pipe */) {\r\n return prev === \"%\" /* Modulo */ || detectModulo\r\n ? true\r\n : !(prev === CHAR_SP || prev === CHAR_LF);\r\n }\r\n else if (ch === CHAR_SP) {\r\n scnr.peek();\r\n return fn(true, CHAR_SP, detectModulo);\r\n }\r\n else if (ch === CHAR_LF) {\r\n scnr.peek();\r\n return fn(true, CHAR_LF, detectModulo);\r\n }\r\n else {\r\n return true;\r\n }\r\n };\r\n const ret = fn();\r\n reset && scnr.resetPeek();\r\n return ret;\r\n }\r\n function takeChar(scnr, fn) {\r\n const ch = scnr.currentChar();\r\n if (ch === EOF) {\r\n return EOF;\r\n }\r\n if (fn(ch)) {\r\n scnr.next();\r\n return ch;\r\n }\r\n return null;\r\n }\r\n function takeIdentifierChar(scnr) {\r\n const closure = (ch) => {\r\n const cc = ch.charCodeAt(0);\r\n return ((cc >= 97 && cc <= 122) || // a-z\r\n (cc >= 65 && cc <= 90) || // A-Z\r\n (cc >= 48 && cc <= 57) || // 0-9\r\n cc === 95 || // _\r\n cc === 36 // $\r\n );\r\n };\r\n return takeChar(scnr, closure);\r\n }\r\n function takeDigit(scnr) {\r\n const closure = (ch) => {\r\n const cc = ch.charCodeAt(0);\r\n return cc >= 48 && cc <= 57; // 0-9\r\n };\r\n return takeChar(scnr, closure);\r\n }\r\n function takeHexDigit(scnr) {\r\n const closure = (ch) => {\r\n const cc = ch.charCodeAt(0);\r\n return ((cc >= 48 && cc <= 57) || // 0-9\r\n (cc >= 65 && cc <= 70) || // A-F\r\n (cc >= 97 && cc <= 102)); // a-f\r\n };\r\n return takeChar(scnr, closure);\r\n }\r\n function getDigits(scnr) {\r\n let ch = '';\r\n let num = '';\r\n while ((ch = takeDigit(scnr))) {\r\n num += ch;\r\n }\r\n return num;\r\n }\r\n function readModulo(scnr) {\r\n skipSpaces(scnr);\r\n const ch = scnr.currentChar();\r\n if (ch !== \"%\" /* Modulo */) {\r\n emitError(CompileErrorCodes.EXPECTED_TOKEN, currentPosition(), 0, ch);\r\n }\r\n scnr.next();\r\n return \"%\" /* Modulo */;\r\n }\r\n function readText(scnr) {\r\n let buf = '';\r\n while (true) {\r\n const ch = scnr.currentChar();\r\n if (ch === \"{\" /* BraceLeft */ ||\r\n ch === \"}\" /* BraceRight */ ||\r\n ch === \"@\" /* LinkedAlias */ ||\r\n ch === \"|\" /* Pipe */ ||\r\n !ch) {\r\n break;\r\n }\r\n else if (ch === \"%\" /* Modulo */) {\r\n if (isTextStart(scnr)) {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n else {\r\n break;\r\n }\r\n }\r\n else if (ch === CHAR_SP || ch === CHAR_LF) {\r\n if (isTextStart(scnr)) {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n else if (isPluralStart(scnr)) {\r\n break;\r\n }\r\n else {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n }\r\n else {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n }\r\n return buf;\r\n }\r\n function readNamedIdentifier(scnr) {\r\n skipSpaces(scnr);\r\n let ch = '';\r\n let name = '';\r\n while ((ch = takeIdentifierChar(scnr))) {\r\n name += ch;\r\n }\r\n if (scnr.currentChar() === EOF) {\r\n emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);\r\n }\r\n return name;\r\n }\r\n function readListIdentifier(scnr) {\r\n skipSpaces(scnr);\r\n let value = '';\r\n if (scnr.currentChar() === '-') {\r\n scnr.next();\r\n value += `-${getDigits(scnr)}`;\r\n }\r\n else {\r\n value += getDigits(scnr);\r\n }\r\n if (scnr.currentChar() === EOF) {\r\n emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);\r\n }\r\n return value;\r\n }\r\n function readLiteral(scnr) {\r\n skipSpaces(scnr);\r\n eat(scnr, `\\'`);\r\n let ch = '';\r\n let literal = '';\r\n const fn = (x) => x !== LITERAL_DELIMITER && x !== CHAR_LF;\r\n while ((ch = takeChar(scnr, fn))) {\r\n if (ch === '\\\\') {\r\n literal += readEscapeSequence(scnr);\r\n }\r\n else {\r\n literal += ch;\r\n }\r\n }\r\n const current = scnr.currentChar();\r\n if (current === CHAR_LF || current === EOF) {\r\n emitError(CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER, currentPosition(), 0);\r\n // TODO: Is it correct really?\r\n if (current === CHAR_LF) {\r\n scnr.next();\r\n eat(scnr, `\\'`);\r\n }\r\n return literal;\r\n }\r\n eat(scnr, `\\'`);\r\n return literal;\r\n }\r\n function readEscapeSequence(scnr) {\r\n const ch = scnr.currentChar();\r\n switch (ch) {\r\n case '\\\\':\r\n case `\\'`:\r\n scnr.next();\r\n return `\\\\${ch}`;\r\n case 'u':\r\n return readUnicodeEscapeSequence(scnr, ch, 4);\r\n case 'U':\r\n return readUnicodeEscapeSequence(scnr, ch, 6);\r\n default:\r\n emitError(CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE, currentPosition(), 0, ch);\r\n return '';\r\n }\r\n }\r\n function readUnicodeEscapeSequence(scnr, unicode, digits) {\r\n eat(scnr, unicode);\r\n let sequence = '';\r\n for (let i = 0; i < digits; i++) {\r\n const ch = takeHexDigit(scnr);\r\n if (!ch) {\r\n emitError(CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE, currentPosition(), 0, `\\\\${unicode}${sequence}${scnr.currentChar()}`);\r\n break;\r\n }\r\n sequence += ch;\r\n }\r\n return `\\\\${unicode}${sequence}`;\r\n }\r\n function readInvalidIdentifier(scnr) {\r\n skipSpaces(scnr);\r\n let ch = '';\r\n let identifiers = '';\r\n const closure = (ch) => ch !== \"{\" /* BraceLeft */ &&\r\n ch !== \"}\" /* BraceRight */ &&\r\n ch !== CHAR_SP &&\r\n ch !== CHAR_LF;\r\n while ((ch = takeChar(scnr, closure))) {\r\n identifiers += ch;\r\n }\r\n return identifiers;\r\n }\r\n function readLinkedModifier(scnr) {\r\n let ch = '';\r\n let name = '';\r\n while ((ch = takeIdentifierChar(scnr))) {\r\n name += ch;\r\n }\r\n return name;\r\n }\r\n function readLinkedRefer(scnr) {\r\n const fn = (detect = false, buf) => {\r\n const ch = scnr.currentChar();\r\n if (ch === \"{\" /* BraceLeft */ ||\r\n ch === \"%\" /* Modulo */ ||\r\n ch === \"@\" /* LinkedAlias */ ||\r\n ch === \"|\" /* Pipe */ ||\r\n !ch) {\r\n return buf;\r\n }\r\n else if (ch === CHAR_SP) {\r\n return buf;\r\n }\r\n else if (ch === CHAR_LF) {\r\n buf += ch;\r\n scnr.next();\r\n return fn(detect, buf);\r\n }\r\n else {\r\n buf += ch;\r\n scnr.next();\r\n return fn(true, buf);\r\n }\r\n };\r\n return fn(false, '');\r\n }\r\n function readPlural(scnr) {\r\n skipSpaces(scnr);\r\n const plural = eat(scnr, \"|\" /* Pipe */);\r\n skipSpaces(scnr);\r\n return plural;\r\n }\r\n // TODO: We need refactoring of token parsing ...\r\n function readTokenInPlaceholder(scnr, context) {\r\n let token = null;\r\n const ch = scnr.currentChar();\r\n switch (ch) {\r\n case \"{\" /* BraceLeft */:\r\n if (context.braceNest >= 1) {\r\n emitError(CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER, currentPosition(), 0);\r\n }\r\n scnr.next();\r\n token = getToken(context, 2 /* BraceLeft */, \"{\" /* BraceLeft */);\r\n skipSpaces(scnr);\r\n context.braceNest++;\r\n return token;\r\n case \"}\" /* BraceRight */:\r\n if (context.braceNest > 0 &&\r\n context.currentType === 2 /* BraceLeft */) {\r\n emitError(CompileErrorCodes.EMPTY_PLACEHOLDER, currentPosition(), 0);\r\n }\r\n scnr.next();\r\n token = getToken(context, 3 /* BraceRight */, \"}\" /* BraceRight */);\r\n context.braceNest--;\r\n context.braceNest > 0 && skipSpaces(scnr);\r\n if (context.inLinked && context.braceNest === 0) {\r\n context.inLinked = false;\r\n }\r\n return token;\r\n case \"@\" /* LinkedAlias */:\r\n if (context.braceNest > 0) {\r\n emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);\r\n }\r\n token = readTokenInLinked(scnr, context) || getEndToken(context);\r\n context.braceNest = 0;\r\n return token;\r\n default:\r\n let validNamedIdentifier = true;\r\n let validListIdentifier = true;\r\n let validLiteral = true;\r\n if (isPluralStart(scnr)) {\r\n if (context.braceNest > 0) {\r\n emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);\r\n }\r\n token = getToken(context, 1 /* Pipe */, readPlural(scnr));\r\n // reset\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return token;\r\n }\r\n if (context.braceNest > 0 &&\r\n (context.currentType === 5 /* Named */ ||\r\n context.currentType === 6 /* List */ ||\r\n context.currentType === 7 /* Literal */)) {\r\n emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);\r\n context.braceNest = 0;\r\n return readToken(scnr, context);\r\n }\r\n if ((validNamedIdentifier = isNamedIdentifierStart(scnr, context))) {\r\n token = getToken(context, 5 /* Named */, readNamedIdentifier(scnr));\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n if ((validListIdentifier = isListIdentifierStart(scnr, context))) {\r\n token = getToken(context, 6 /* List */, readListIdentifier(scnr));\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n if ((validLiteral = isLiteralStart(scnr, context))) {\r\n token = getToken(context, 7 /* Literal */, readLiteral(scnr));\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n if (!validNamedIdentifier && !validListIdentifier && !validLiteral) {\r\n // TODO: we should be re-designed invalid cases, when we will extend message syntax near the future ...\r\n token = getToken(context, 13 /* InvalidPlace */, readInvalidIdentifier(scnr));\r\n emitError(CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER, currentPosition(), 0, token.value);\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n break;\r\n }\r\n return token;\r\n }\r\n // TODO: We need refactoring of token parsing ...\r\n function readTokenInLinked(scnr, context) {\r\n const { currentType } = context;\r\n let token = null;\r\n const ch = scnr.currentChar();\r\n if ((currentType === 8 /* LinkedAlias */ ||\r\n currentType === 9 /* LinkedDot */ ||\r\n currentType === 12 /* LinkedModifier */ ||\r\n currentType === 10 /* LinkedDelimiter */) &&\r\n (ch === CHAR_LF || ch === CHAR_SP)) {\r\n emitError(CompileErrorCodes.INVALID_LINKED_FORMAT, currentPosition(), 0);\r\n }\r\n switch (ch) {\r\n case \"@\" /* LinkedAlias */:\r\n scnr.next();\r\n token = getToken(context, 8 /* LinkedAlias */, \"@\" /* LinkedAlias */);\r\n context.inLinked = true;\r\n return token;\r\n case \".\" /* LinkedDot */:\r\n skipSpaces(scnr);\r\n scnr.next();\r\n return getToken(context, 9 /* LinkedDot */, \".\" /* LinkedDot */);\r\n case \":\" /* LinkedDelimiter */:\r\n skipSpaces(scnr);\r\n scnr.next();\r\n return getToken(context, 10 /* LinkedDelimiter */, \":\" /* LinkedDelimiter */);\r\n default:\r\n if (isPluralStart(scnr)) {\r\n token = getToken(context, 1 /* Pipe */, readPlural(scnr));\r\n // reset\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return token;\r\n }\r\n if (isLinkedDotStart(scnr, context) ||\r\n isLinkedDelimiterStart(scnr, context)) {\r\n skipSpaces(scnr);\r\n return readTokenInLinked(scnr, context);\r\n }\r\n if (isLinkedModifierStart(scnr, context)) {\r\n skipSpaces(scnr);\r\n return getToken(context, 12 /* LinkedModifier */, readLinkedModifier(scnr));\r\n }\r\n if (isLinkedReferStart(scnr, context)) {\r\n skipSpaces(scnr);\r\n if (ch === \"{\" /* BraceLeft */) {\r\n // scan the placeholder\r\n return readTokenInPlaceholder(scnr, context) || token;\r\n }\r\n else {\r\n return getToken(context, 11 /* LinkedKey */, readLinkedRefer(scnr));\r\n }\r\n }\r\n if (currentType === 8 /* LinkedAlias */) {\r\n emitError(CompileErrorCodes.INVALID_LINKED_FORMAT, currentPosition(), 0);\r\n }\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return readToken(scnr, context);\r\n }\r\n }\r\n // TODO: We need refactoring of token parsing ...\r\n function readToken(scnr, context) {\r\n let token = { type: 14 /* EOF */ };\r\n if (context.braceNest > 0) {\r\n return readTokenInPlaceholder(scnr, context) || getEndToken(context);\r\n }\r\n if (context.inLinked) {\r\n return readTokenInLinked(scnr, context) || getEndToken(context);\r\n }\r\n const ch = scnr.currentChar();\r\n switch (ch) {\r\n case \"{\" /* BraceLeft */:\r\n return readTokenInPlaceholder(scnr, context) || getEndToken(context);\r\n case \"}\" /* BraceRight */:\r\n emitError(CompileErrorCodes.UNBALANCED_CLOSING_BRACE, currentPosition(), 0);\r\n scnr.next();\r\n return getToken(context, 3 /* BraceRight */, \"}\" /* BraceRight */);\r\n case \"@\" /* LinkedAlias */:\r\n return readTokenInLinked(scnr, context) || getEndToken(context);\r\n default:\r\n if (isPluralStart(scnr)) {\r\n token = getToken(context, 1 /* Pipe */, readPlural(scnr));\r\n // reset\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return token;\r\n }\r\n const { isModulo, hasSpace } = detectModuloStart(scnr);\r\n if (isModulo) {\r\n return hasSpace\r\n ? getToken(context, 0 /* Text */, readText(scnr))\r\n : getToken(context, 4 /* Modulo */, readModulo(scnr));\r\n }\r\n if (isTextStart(scnr)) {\r\n return getToken(context, 0 /* Text */, readText(scnr));\r\n }\r\n break;\r\n }\r\n return token;\r\n }\r\n function nextToken() {\r\n const { currentType, offset, startLoc, endLoc } = _context;\r\n _context.lastType = currentType;\r\n _context.lastOffset = offset;\r\n _context.lastStartLoc = startLoc;\r\n _context.lastEndLoc = endLoc;\r\n _context.offset = currentOffset();\r\n _context.startLoc = currentPosition();\r\n if (_scnr.currentChar() === EOF) {\r\n return getToken(_context, 14 /* EOF */);\r\n }\r\n return readToken(_scnr, _context);\r\n }\r\n return {\r\n nextToken,\r\n currentOffset,\r\n currentPosition,\r\n context\r\n };\r\n}\n\nconst ERROR_DOMAIN = 'parser';\r\n// Backslash backslash, backslash quote, uHHHH, UHHHHHH.\r\nconst KNOWN_ESCAPES = /(?:\\\\\\\\|\\\\'|\\\\u([0-9a-fA-F]{4})|\\\\U([0-9a-fA-F]{6}))/g;\r\nfunction fromEscapeSequence(match, codePoint4, codePoint6) {\r\n switch (match) {\r\n case `\\\\\\\\`:\r\n return `\\\\`;\r\n case `\\\\\\'`:\r\n return `\\'`;\r\n default: {\r\n const codePoint = parseInt(codePoint4 || codePoint6, 16);\r\n if (codePoint <= 0xd7ff || codePoint >= 0xe000) {\r\n return String.fromCodePoint(codePoint);\r\n }\r\n // invalid ...\r\n // Replace them with U+FFFD REPLACEMENT CHARACTER.\r\n return '�';\r\n }\r\n }\r\n}\r\nfunction createParser(options = {}) {\r\n const location = options.location !== false;\r\n const { onError } = options;\r\n function emitError(tokenzer, code, start, offset, ...args) {\r\n const end = tokenzer.currentPosition();\r\n end.offset += offset;\r\n end.column += offset;\r\n if (onError) {\r\n const loc = createLocation(start, end);\r\n const err = createCompileError(code, loc, {\r\n domain: ERROR_DOMAIN,\r\n args\r\n });\r\n onError(err);\r\n }\r\n }\r\n function startNode(type, offset, loc) {\r\n const node = {\r\n type,\r\n start: offset,\r\n end: offset\r\n };\r\n if (location) {\r\n node.loc = { start: loc, end: loc };\r\n }\r\n return node;\r\n }\r\n function endNode(node, offset, pos, type) {\r\n node.end = offset;\r\n if (type) {\r\n node.type = type;\r\n }\r\n if (location && node.loc) {\r\n node.loc.end = pos;\r\n }\r\n }\r\n function parseText(tokenizer, value) {\r\n const context = tokenizer.context();\r\n const node = startNode(3 /* Text */, context.offset, context.startLoc);\r\n node.value = value;\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseList(tokenizer, index) {\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc\r\n const node = startNode(5 /* List */, offset, loc);\r\n node.index = parseInt(index, 10);\r\n tokenizer.nextToken(); // skip brach right\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseNamed(tokenizer, key) {\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc\r\n const node = startNode(4 /* Named */, offset, loc);\r\n node.key = key;\r\n tokenizer.nextToken(); // skip brach right\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseLiteral(tokenizer, value) {\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc\r\n const node = startNode(9 /* Literal */, offset, loc);\r\n node.value = value.replace(KNOWN_ESCAPES, fromEscapeSequence);\r\n tokenizer.nextToken(); // skip brach right\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseLinkedModifier(tokenizer) {\r\n const token = tokenizer.nextToken();\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get linked dot loc\r\n const node = startNode(8 /* LinkedModifier */, offset, loc);\r\n if (token.type !== 12 /* LinkedModifier */) {\r\n // empty modifier\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER, context.lastStartLoc, 0);\r\n node.value = '';\r\n endNode(node, offset, loc);\r\n return {\r\n nextConsumeToken: token,\r\n node\r\n };\r\n }\r\n // check token\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.value = token.value || '';\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return {\r\n node\r\n };\r\n }\r\n function parseLinkedKey(tokenizer, value) {\r\n const context = tokenizer.context();\r\n const node = startNode(7 /* LinkedKey */, context.offset, context.startLoc);\r\n node.value = value;\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseLinked(tokenizer) {\r\n const context = tokenizer.context();\r\n const linkedNode = startNode(6 /* Linked */, context.offset, context.startLoc);\r\n let token = tokenizer.nextToken();\r\n if (token.type === 9 /* LinkedDot */) {\r\n const parsed = parseLinkedModifier(tokenizer);\r\n linkedNode.modifier = parsed.node;\r\n token = parsed.nextConsumeToken || tokenizer.nextToken();\r\n }\r\n // asset check token\r\n if (token.type !== 10 /* LinkedDelimiter */) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n token = tokenizer.nextToken();\r\n // skip brace left\r\n if (token.type === 2 /* BraceLeft */) {\r\n token = tokenizer.nextToken();\r\n }\r\n switch (token.type) {\r\n case 11 /* LinkedKey */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseLinkedKey(tokenizer, token.value || '');\r\n break;\r\n case 5 /* Named */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseNamed(tokenizer, token.value || '');\r\n break;\r\n case 6 /* List */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseList(tokenizer, token.value || '');\r\n break;\r\n case 7 /* Literal */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseLiteral(tokenizer, token.value || '');\r\n break;\r\n default:\r\n // empty key\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY, context.lastStartLoc, 0);\r\n const nextContext = tokenizer.context();\r\n const emptyLinkedKeyNode = startNode(7 /* LinkedKey */, nextContext.offset, nextContext.startLoc);\r\n emptyLinkedKeyNode.value = '';\r\n endNode(emptyLinkedKeyNode, nextContext.offset, nextContext.startLoc);\r\n linkedNode.key = emptyLinkedKeyNode;\r\n endNode(linkedNode, nextContext.offset, nextContext.startLoc);\r\n return {\r\n nextConsumeToken: token,\r\n node: linkedNode\r\n };\r\n }\r\n endNode(linkedNode, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return {\r\n node: linkedNode\r\n };\r\n }\r\n function parseMessage(tokenizer) {\r\n const context = tokenizer.context();\r\n const startOffset = context.currentType === 1 /* Pipe */\r\n ? tokenizer.currentOffset()\r\n : context.offset;\r\n const startLoc = context.currentType === 1 /* Pipe */\r\n ? context.endLoc\r\n : context.startLoc;\r\n const node = startNode(2 /* Message */, startOffset, startLoc);\r\n node.items = [];\r\n let nextToken = null;\r\n do {\r\n const token = nextToken || tokenizer.nextToken();\r\n nextToken = null;\r\n switch (token.type) {\r\n case 0 /* Text */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseText(tokenizer, token.value || ''));\r\n break;\r\n case 6 /* List */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseList(tokenizer, token.value || ''));\r\n break;\r\n case 5 /* Named */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseNamed(tokenizer, token.value || ''));\r\n break;\r\n case 7 /* Literal */:\r\n if (token.value == null) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseLiteral(tokenizer, token.value || ''));\r\n break;\r\n case 8 /* LinkedAlias */:\r\n const parsed = parseLinked(tokenizer);\r\n node.items.push(parsed.node);\r\n nextToken = parsed.nextConsumeToken || null;\r\n break;\r\n }\r\n } while (context.currentType !== 14 /* EOF */ &&\r\n context.currentType !== 1 /* Pipe */);\r\n // adjust message node loc\r\n const endOffset = context.currentType === 1 /* Pipe */\r\n ? context.lastOffset\r\n : tokenizer.currentOffset();\r\n const endLoc = context.currentType === 1 /* Pipe */\r\n ? context.lastEndLoc\r\n : tokenizer.currentPosition();\r\n endNode(node, endOffset, endLoc);\r\n return node;\r\n }\r\n function parsePlural(tokenizer, offset, loc, msgNode) {\r\n const context = tokenizer.context();\r\n let hasEmptyMessage = msgNode.items.length === 0;\r\n const node = startNode(1 /* Plural */, offset, loc);\r\n node.cases = [];\r\n node.cases.push(msgNode);\r\n do {\r\n const msg = parseMessage(tokenizer);\r\n if (!hasEmptyMessage) {\r\n hasEmptyMessage = msg.items.length === 0;\r\n }\r\n node.cases.push(msg);\r\n } while (context.currentType !== 14 /* EOF */);\r\n if (hasEmptyMessage) {\r\n emitError(tokenizer, CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL, loc, 0);\r\n }\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseResource(tokenizer) {\r\n const context = tokenizer.context();\r\n const { offset, startLoc } = context;\r\n const msgNode = parseMessage(tokenizer);\r\n if (context.currentType === 14 /* EOF */) {\r\n return msgNode;\r\n }\r\n else {\r\n return parsePlural(tokenizer, offset, startLoc, msgNode);\r\n }\r\n }\r\n function parse(source) {\r\n const tokenizer = createTokenizer(source, Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"assign\"])({}, options));\r\n const context = tokenizer.context();\r\n const node = startNode(0 /* Resource */, context.offset, context.startLoc);\r\n if (location && node.loc) {\r\n node.loc.source = source;\r\n }\r\n node.body = parseResource(tokenizer);\r\n // assert whether achieved to EOF\r\n if (context.currentType !== 14 /* EOF */) {\r\n emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, source[context.offset] || '');\r\n }\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n return { parse };\r\n}\r\nfunction getTokenCaption(token) {\r\n if (token.type === 14 /* EOF */) {\r\n return 'EOF';\r\n }\r\n const name = (token.value || '').replace(/\\r?\\n/gu, '\\\\n');\r\n return name.length > 10 ? name.slice(0, 9) + '…' : name;\r\n}\n\nfunction createTransformer(ast, options = {} // eslint-disable-line\r\n) {\r\n const _context = {\r\n ast,\r\n helpers: new Set()\r\n };\r\n const context = () => _context;\r\n const helper = (name) => {\r\n _context.helpers.add(name);\r\n return name;\r\n };\r\n return { context, helper };\r\n}\r\nfunction traverseNodes(nodes, transformer) {\r\n for (let i = 0; i < nodes.length; i++) {\r\n traverseNode(nodes[i], transformer);\r\n }\r\n}\r\nfunction traverseNode(node, transformer) {\r\n // TODO: if we need pre-hook of transform, should be implemented to here\r\n switch (node.type) {\r\n case 1 /* Plural */:\r\n traverseNodes(node.cases, transformer);\r\n transformer.helper(\"plural\" /* PLURAL */);\r\n break;\r\n case 2 /* Message */:\r\n traverseNodes(node.items, transformer);\r\n break;\r\n case 6 /* Linked */:\r\n const linked = node;\r\n traverseNode(linked.key, transformer);\r\n transformer.helper(\"linked\" /* LINKED */);\r\n transformer.helper(\"type\" /* TYPE */);\r\n break;\r\n case 5 /* List */:\r\n transformer.helper(\"interpolate\" /* INTERPOLATE */);\r\n transformer.helper(\"list\" /* LIST */);\r\n break;\r\n case 4 /* Named */:\r\n transformer.helper(\"interpolate\" /* INTERPOLATE */);\r\n transformer.helper(\"named\" /* NAMED */);\r\n break;\r\n }\r\n // TODO: if we need post-hook of transform, should be implemented to here\r\n}\r\n// transform AST\r\nfunction transform(ast, options = {} // eslint-disable-line\r\n) {\r\n const transformer = createTransformer(ast);\r\n transformer.helper(\"normalize\" /* NORMALIZE */);\r\n // traverse\r\n ast.body && traverseNode(ast.body, transformer);\r\n // set meta information\r\n const context = transformer.context();\r\n ast.helpers = Array.from(context.helpers);\r\n}\n\nfunction createCodeGenerator(ast, options) {\r\n const { sourceMap, filename, breakLineCode, needIndent: _needIndent } = options;\r\n const _context = {\r\n source: ast.loc.source,\r\n filename,\r\n code: '',\r\n column: 1,\r\n line: 1,\r\n offset: 0,\r\n map: undefined,\r\n breakLineCode,\r\n needIndent: _needIndent,\r\n indentLevel: 0\r\n };\r\n const context = () => _context;\r\n function push(code, node) {\r\n _context.code += code;\r\n }\r\n function _newline(n, withBreakLine = true) {\r\n const _breakLineCode = withBreakLine ? breakLineCode : '';\r\n push(_needIndent ? _breakLineCode + ` `.repeat(n) : _breakLineCode);\r\n }\r\n function indent(withNewLine = true) {\r\n const level = ++_context.indentLevel;\r\n withNewLine && _newline(level);\r\n }\r\n function deindent(withNewLine = true) {\r\n const level = --_context.indentLevel;\r\n withNewLine && _newline(level);\r\n }\r\n function newline() {\r\n _newline(_context.indentLevel);\r\n }\r\n const helper = (key) => `_${key}`;\r\n const needIndent = () => _context.needIndent;\r\n return {\r\n context,\r\n push,\r\n indent,\r\n deindent,\r\n newline,\r\n helper,\r\n needIndent\r\n };\r\n}\r\nfunction generateLinkedNode(generator, node) {\r\n const { helper } = generator;\r\n generator.push(`${helper(\"linked\" /* LINKED */)}(`);\r\n generateNode(generator, node.key);\r\n if (node.modifier) {\r\n generator.push(`, `);\r\n generateNode(generator, node.modifier);\r\n generator.push(`, _type`);\r\n }\r\n else {\r\n generator.push(`, undefined, _type`);\r\n }\r\n generator.push(`)`);\r\n}\r\nfunction generateMessageNode(generator, node) {\r\n const { helper, needIndent } = generator;\r\n generator.push(`${helper(\"normalize\" /* NORMALIZE */)}([`);\r\n generator.indent(needIndent());\r\n const length = node.items.length;\r\n for (let i = 0; i < length; i++) {\r\n generateNode(generator, node.items[i]);\r\n if (i === length - 1) {\r\n break;\r\n }\r\n generator.push(', ');\r\n }\r\n generator.deindent(needIndent());\r\n generator.push('])');\r\n}\r\nfunction generatePluralNode(generator, node) {\r\n const { helper, needIndent } = generator;\r\n if (node.cases.length > 1) {\r\n generator.push(`${helper(\"plural\" /* PLURAL */)}([`);\r\n generator.indent(needIndent());\r\n const length = node.cases.length;\r\n for (let i = 0; i < length; i++) {\r\n generateNode(generator, node.cases[i]);\r\n if (i === length - 1) {\r\n break;\r\n }\r\n generator.push(', ');\r\n }\r\n generator.deindent(needIndent());\r\n generator.push(`])`);\r\n }\r\n}\r\nfunction generateResource(generator, node) {\r\n if (node.body) {\r\n generateNode(generator, node.body);\r\n }\r\n else {\r\n generator.push('null');\r\n }\r\n}\r\nfunction generateNode(generator, node) {\r\n const { helper } = generator;\r\n switch (node.type) {\r\n case 0 /* Resource */:\r\n generateResource(generator, node);\r\n break;\r\n case 1 /* Plural */:\r\n generatePluralNode(generator, node);\r\n break;\r\n case 2 /* Message */:\r\n generateMessageNode(generator, node);\r\n break;\r\n case 6 /* Linked */:\r\n generateLinkedNode(generator, node);\r\n break;\r\n case 8 /* LinkedModifier */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n case 7 /* LinkedKey */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n case 5 /* List */:\r\n generator.push(`${helper(\"interpolate\" /* INTERPOLATE */)}(${helper(\"list\" /* LIST */)}(${node.index}))`, node);\r\n break;\r\n case 4 /* Named */:\r\n generator.push(`${helper(\"interpolate\" /* INTERPOLATE */)}(${helper(\"named\" /* NAMED */)}(${JSON.stringify(node.key)}))`, node);\r\n break;\r\n case 9 /* Literal */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n case 3 /* Text */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n default:\r\n if ((true)) {\r\n throw new Error(`unhandled codegen node type: ${node.type}`);\r\n }\r\n }\r\n}\r\n// generate code from AST\r\nconst generate = (ast, options = {} // eslint-disable-line\r\n) => {\r\n const mode = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.mode) ? options.mode : 'normal';\r\n const filename = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"isString\"])(options.filename)\r\n ? options.filename\r\n : 'message.intl';\r\n const sourceMap = !!options.sourceMap;\r\n // prettier-ignore\r\n const breakLineCode = options.breakLineCode != null\r\n ? options.breakLineCode\r\n : mode === 'arrow'\r\n ? ';'\r\n : '\\n';\r\n const needIndent = options.needIndent ? options.needIndent : mode !== 'arrow';\r\n const helpers = ast.helpers || [];\r\n const generator = createCodeGenerator(ast, {\r\n mode,\r\n filename,\r\n sourceMap,\r\n breakLineCode,\r\n needIndent\r\n });\r\n generator.push(mode === 'normal' ? `function __msg__ (ctx) {` : `(ctx) => {`);\r\n generator.indent(needIndent);\r\n if (helpers.length > 0) {\r\n generator.push(`const { ${helpers.map(s => `${s}: _${s}`).join(', ')} } = ctx`);\r\n generator.newline();\r\n }\r\n generator.push(`return `);\r\n generateNode(generator, ast);\r\n generator.deindent(needIndent);\r\n generator.push(`}`);\r\n const { code, map } = generator.context();\r\n return {\r\n ast,\r\n code,\r\n map: map ? map.toJSON() : undefined // eslint-disable-line @typescript-eslint/no-explicit-any\r\n };\r\n};\n\nfunction baseCompile(source, options = {}) {\r\n const assignedOptions = Object(_intlify_shared__WEBPACK_IMPORTED_MODULE_0__[\"assign\"])({}, options);\r\n // parse source codes\r\n const parser = createParser(assignedOptions);\r\n const ast = parser.parse(source);\r\n // transform ASTs\r\n transform(ast, assignedOptions);\r\n // generate javascript codes\r\n return generate(ast, assignedOptions);\r\n}\n\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@intlify/message-compiler/dist/message-compiler.esm-bundler.js?"); /***/ }), /***/ "../../node_modules/@intlify/shared/dist/shared.esm-bundler.js": /*!********************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@intlify/shared/dist/shared.esm-bundler.js ***! \********************************************************************************************/ /*! exports provided: assign, createEmitter, escapeHtml, format, friendlyJSONstringify, generateCodeFrame, generateFormatCacheKey, getGlobalThis, hasOwn, inBrowser, isArray, isBoolean, isDate, isEmptyObject, isFunction, isNumber, isObject, isPlainObject, isPromise, isRegExp, isString, isSymbol, makeSymbol, mark, measure, objectToString, toDisplayString, toTypeString, warn */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"assign\", function() { return assign; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createEmitter\", function() { return createEmitter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"escapeHtml\", function() { return escapeHtml; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"format\", function() { return format; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"friendlyJSONstringify\", function() { return friendlyJSONstringify; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"generateCodeFrame\", function() { return generateCodeFrame; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"generateFormatCacheKey\", function() { return generateFormatCacheKey; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getGlobalThis\", function() { return getGlobalThis; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"hasOwn\", function() { return hasOwn; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"inBrowser\", function() { return inBrowser; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isArray\", function() { return isArray; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isBoolean\", function() { return isBoolean; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isDate\", function() { return isDate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isEmptyObject\", function() { return isEmptyObject; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isFunction\", function() { return isFunction; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isNumber\", function() { return isNumber; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isObject\", function() { return isObject; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isPlainObject\", function() { return isPlainObject; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isPromise\", function() { return isPromise; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isRegExp\", function() { return isRegExp; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isString\", function() { return isString; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isSymbol\", function() { return isSymbol; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"makeSymbol\", function() { return makeSymbol; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"mark\", function() { return mark; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"measure\", function() { return measure; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"objectToString\", function() { return objectToString; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"toDisplayString\", function() { return toDisplayString; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"toTypeString\", function() { return toTypeString; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"warn\", function() { return warn; });\n/*!\n * shared v9.2.2\n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\n/**\r\n * Original Utilities\r\n * written by kazuya kawaguchi\r\n */\r\nconst inBrowser = typeof window !== 'undefined';\r\nlet mark;\r\nlet measure;\r\nif ((true)) {\r\n const perf = inBrowser && window.performance;\r\n if (perf &&\r\n perf.mark &&\r\n perf.measure &&\r\n perf.clearMarks &&\r\n perf.clearMeasures) {\r\n mark = (tag) => perf.mark(tag);\r\n measure = (name, startTag, endTag) => {\r\n perf.measure(name, startTag, endTag);\r\n perf.clearMarks(startTag);\r\n perf.clearMarks(endTag);\r\n };\r\n }\r\n}\r\nconst RE_ARGS = /\\{([0-9a-zA-Z]+)\\}/g;\r\n/* eslint-disable */\r\nfunction format(message, ...args) {\r\n if (args.length === 1 && isObject(args[0])) {\r\n args = args[0];\r\n }\r\n if (!args || !args.hasOwnProperty) {\r\n args = {};\r\n }\r\n return message.replace(RE_ARGS, (match, identifier) => {\r\n return args.hasOwnProperty(identifier) ? args[identifier] : '';\r\n });\r\n}\r\nconst hasSymbol = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\r\nconst makeSymbol = (name) => hasSymbol ? Symbol(name) : name;\r\nconst generateFormatCacheKey = (locale, key, source) => friendlyJSONstringify({ l: locale, k: key, s: source });\r\nconst friendlyJSONstringify = (json) => JSON.stringify(json)\r\n .replace(/\\u2028/g, '\\\\u2028')\r\n .replace(/\\u2029/g, '\\\\u2029')\r\n .replace(/\\u0027/g, '\\\\u0027');\r\nconst isNumber = (val) => typeof val === 'number' && isFinite(val);\r\nconst isDate = (val) => toTypeString(val) === '[object Date]';\r\nconst isRegExp = (val) => toTypeString(val) === '[object RegExp]';\r\nconst isEmptyObject = (val) => isPlainObject(val) && Object.keys(val).length === 0;\r\nfunction warn(msg, err) {\r\n if (typeof console !== 'undefined') {\r\n console.warn(`[intlify] ` + msg);\r\n /* istanbul ignore if */\r\n if (err) {\r\n console.warn(err.stack);\r\n }\r\n }\r\n}\r\nconst assign = Object.assign;\r\nlet _globalThis;\r\nconst getGlobalThis = () => {\r\n // prettier-ignore\r\n return (_globalThis ||\r\n (_globalThis =\r\n typeof globalThis !== 'undefined'\r\n ? globalThis\r\n : typeof self !== 'undefined'\r\n ? self\r\n : typeof window !== 'undefined'\r\n ? window\r\n : typeof global !== 'undefined'\r\n ? global\r\n : {}));\r\n};\r\nfunction escapeHtml(rawText) {\r\n return rawText\r\n .replace(//g, '>')\r\n .replace(/\"/g, '"')\r\n .replace(/'/g, ''');\r\n}\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\nfunction hasOwn(obj, key) {\r\n return hasOwnProperty.call(obj, key);\r\n}\r\n/* eslint-enable */\r\n/**\r\n * Useful Utilities By Evan you\r\n * Modified by kazuya kawaguchi\r\n * MIT License\r\n * https://github.com/vuejs/vue-next/blob/master/packages/shared/src/index.ts\r\n * https://github.com/vuejs/vue-next/blob/master/packages/shared/src/codeframe.ts\r\n */\r\nconst isArray = Array.isArray;\r\nconst isFunction = (val) => typeof val === 'function';\r\nconst isString = (val) => typeof val === 'string';\r\nconst isBoolean = (val) => typeof val === 'boolean';\r\nconst isSymbol = (val) => typeof val === 'symbol';\r\nconst isObject = (val) => // eslint-disable-line\r\n val !== null && typeof val === 'object';\r\nconst isPromise = (val) => {\r\n return isObject(val) && isFunction(val.then) && isFunction(val.catch);\r\n};\r\nconst objectToString = Object.prototype.toString;\r\nconst toTypeString = (value) => objectToString.call(value);\r\nconst isPlainObject = (val) => toTypeString(val) === '[object Object]';\r\n// for converting list and named values to displayed strings.\r\nconst toDisplayString = (val) => {\r\n return val == null\r\n ? ''\r\n : isArray(val) || (isPlainObject(val) && val.toString === objectToString)\r\n ? JSON.stringify(val, null, 2)\r\n : String(val);\r\n};\r\nconst RANGE = 2;\r\nfunction generateCodeFrame(source, start = 0, end = source.length) {\r\n const lines = source.split(/\\r?\\n/);\r\n let count = 0;\r\n const res = [];\r\n for (let i = 0; i < lines.length; i++) {\r\n count += lines[i].length + 1;\r\n if (count >= start) {\r\n for (let j = i - RANGE; j <= i + RANGE || end > count; j++) {\r\n if (j < 0 || j >= lines.length)\r\n continue;\r\n const line = j + 1;\r\n res.push(`${line}${' '.repeat(3 - String(line).length)}| ${lines[j]}`);\r\n const lineLength = lines[j].length;\r\n if (j === i) {\r\n // push underline\r\n const pad = start - (count - lineLength) + 1;\r\n const length = Math.max(1, end > count ? lineLength - pad : end - start);\r\n res.push(` | ` + ' '.repeat(pad) + '^'.repeat(length));\r\n }\r\n else if (j > i) {\r\n if (end > count) {\r\n const length = Math.max(Math.min(end - count, lineLength), 1);\r\n res.push(` | ` + '^'.repeat(length));\r\n }\r\n count += lineLength + 1;\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n return res.join('\\n');\r\n}\n\n/**\r\n * Event emitter, forked from the below:\r\n * - original repository url: https://github.com/developit/mitt\r\n * - code url: https://github.com/developit/mitt/blob/master/src/index.ts\r\n * - author: Jason Miller (https://github.com/developit)\r\n * - license: MIT\r\n */\r\n/**\r\n * Create a event emitter\r\n *\r\n * @returns An event emitter\r\n */\r\nfunction createEmitter() {\r\n const events = new Map();\r\n const emitter = {\r\n events,\r\n on(event, handler) {\r\n const handlers = events.get(event);\r\n const added = handlers && handlers.push(handler);\r\n if (!added) {\r\n events.set(event, [handler]);\r\n }\r\n },\r\n off(event, handler) {\r\n const handlers = events.get(event);\r\n if (handlers) {\r\n handlers.splice(handlers.indexOf(handler) >>> 0, 1);\r\n }\r\n },\r\n emit(event, payload) {\r\n (events.get(event) || [])\r\n .slice()\r\n .map(handler => handler(payload));\r\n (events.get('*') || [])\r\n .slice()\r\n .map(handler => handler(event, payload));\r\n }\r\n };\r\n return emitter;\r\n}\n\n\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../webpack/buildin/global.js */ \"../../node_modules/webpack/buildin/global.js\")))\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@intlify/shared/dist/shared.esm-bundler.js?"); /***/ }), /***/ "../../node_modules/@intlify/vue-devtools/dist/vue-devtools.esm-bundler.js": /*!********************************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@intlify/vue-devtools/dist/vue-devtools.esm-bundler.js ***! \********************************************************************************************************/ /*! exports provided: VueDevToolsLabels, VueDevToolsPlaceholders, VueDevToolsTimelineColors */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"VueDevToolsLabels\", function() { return VueDevToolsLabels; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"VueDevToolsPlaceholders\", function() { return VueDevToolsPlaceholders; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"VueDevToolsTimelineColors\", function() { return VueDevToolsTimelineColors; });\n/*!\n * vue-devtools v9.2.2\n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\nconst VueDevToolsLabels = {\r\n [\"vue-devtools-plugin-vue-i18n\" /* PLUGIN */]: 'Vue I18n devtools',\r\n [\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */]: 'I18n Resources',\r\n [\"vue-i18n-timeline\" /* TIMELINE */]: 'Vue I18n'\r\n};\r\nconst VueDevToolsPlaceholders = {\r\n [\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */]: 'Search for scopes ...'\r\n};\r\nconst VueDevToolsTimelineColors = {\r\n [\"vue-i18n-timeline\" /* TIMELINE */]: 0xffcd19\r\n};\n\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@intlify/vue-devtools/dist/vue-devtools.esm-bundler.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/api/api.js": /*!**************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/api.js ***! \**************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/api.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/api/app.js": /*!**************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/app.js ***! \**************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/app.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/api/component.js": /*!********************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/component.js ***! \********************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/component.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/api/context.js": /*!******************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/context.js ***! \******************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/context.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/api/hooks.js": /*!****************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/hooks.js ***! \****************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/hooks.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/api/index.js": /*!****************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/index.js ***! \****************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./api.js */ \"../../node_modules/@vue/devtools-api/lib/esm/api/api.js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _app_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./app.js */ \"../../node_modules/@vue/devtools-api/lib/esm/api/app.js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _component_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./component.js */ \"../../node_modules/@vue/devtools-api/lib/esm/api/component.js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _context_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./context.js */ \"../../node_modules/@vue/devtools-api/lib/esm/api/context.js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _hooks_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./hooks.js */ \"../../node_modules/@vue/devtools-api/lib/esm/api/hooks.js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _util_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./util.js */ \"../../node_modules/@vue/devtools-api/lib/esm/api/util.js\");\n/* empty/unused harmony star reexport */\n\n\n\n\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/index.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/api/util.js": /*!***************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/util.js ***! \***************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/api/util.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/const.js": /*!************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/const.js ***! \************************************************************************************/ /*! exports provided: HOOK_SETUP, HOOK_PLUGIN_SETTINGS_SET */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"HOOK_SETUP\", function() { return HOOK_SETUP; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"HOOK_PLUGIN_SETTINGS_SET\", function() { return HOOK_PLUGIN_SETTINGS_SET; });\nconst HOOK_SETUP = 'devtools-plugin:setup';\nconst HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/const.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/env.js": /*!**********************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/env.js ***! \**********************************************************************************/ /*! exports provided: getDevtoolsGlobalHook, getTarget, isProxyAvailable */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getDevtoolsGlobalHook\", function() { return getDevtoolsGlobalHook; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getTarget\", function() { return getTarget; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isProxyAvailable\", function() { return isProxyAvailable; });\nfunction getDevtoolsGlobalHook() {\n return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;\n}\nfunction getTarget() {\n // @ts-ignore\n return (typeof navigator !== 'undefined' && typeof window !== 'undefined')\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n}\nconst isProxyAvailable = typeof Proxy === 'function';\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../webpack/buildin/global.js */ \"../../node_modules/webpack/buildin/global.js\")))\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/env.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/index.js": /*!************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/index.js ***! \************************************************************************************/ /*! exports provided: isPerformanceSupported, now, setupDevtoolsPlugin */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setupDevtoolsPlugin\", function() { return setupDevtoolsPlugin; });\n/* harmony import */ var _env_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./env.js */ \"../../node_modules/@vue/devtools-api/lib/esm/env.js\");\n/* harmony import */ var _const_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./const.js */ \"../../node_modules/@vue/devtools-api/lib/esm/const.js\");\n/* harmony import */ var _proxy_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./proxy.js */ \"../../node_modules/@vue/devtools-api/lib/esm/proxy.js\");\n/* harmony import */ var _api_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./api/index.js */ \"../../node_modules/@vue/devtools-api/lib/esm/api/index.js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _plugin_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./plugin.js */ \"../../node_modules/@vue/devtools-api/lib/esm/plugin.js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _time_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./time.js */ \"../../node_modules/@vue/devtools-api/lib/esm/time.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isPerformanceSupported\", function() { return _time_js__WEBPACK_IMPORTED_MODULE_5__[\"isPerformanceSupported\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"now\", function() { return _time_js__WEBPACK_IMPORTED_MODULE_5__[\"now\"]; });\n\n\n\n\n\n\n\nfunction setupDevtoolsPlugin(pluginDescriptor, setupFn) {\n const descriptor = pluginDescriptor;\n const target = Object(_env_js__WEBPACK_IMPORTED_MODULE_0__[\"getTarget\"])();\n const hook = Object(_env_js__WEBPACK_IMPORTED_MODULE_0__[\"getDevtoolsGlobalHook\"])();\n const enableProxy = _env_js__WEBPACK_IMPORTED_MODULE_0__[\"isProxyAvailable\"] && descriptor.enableEarlyProxy;\n if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {\n hook.emit(_const_js__WEBPACK_IMPORTED_MODULE_1__[\"HOOK_SETUP\"], pluginDescriptor, setupFn);\n }\n else {\n const proxy = enableProxy ? new _proxy_js__WEBPACK_IMPORTED_MODULE_2__[\"ApiProxy\"](descriptor, hook) : null;\n const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];\n list.push({\n pluginDescriptor: descriptor,\n setupFn,\n proxy,\n });\n if (proxy)\n setupFn(proxy.proxiedTarget);\n }\n}\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/index.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/plugin.js": /*!*************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/plugin.js ***! \*************************************************************************************/ /*! no exports provided */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/plugin.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/proxy.js": /*!************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/proxy.js ***! \************************************************************************************/ /*! exports provided: ApiProxy */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ApiProxy\", function() { return ApiProxy; });\n/* harmony import */ var _const_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./const.js */ \"../../node_modules/@vue/devtools-api/lib/esm/const.js\");\n/* harmony import */ var _time_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./time.js */ \"../../node_modules/@vue/devtools-api/lib/esm/time.js\");\n\n\nclass ApiProxy {\n constructor(plugin, hook) {\n this.target = null;\n this.targetQueue = [];\n this.onQueue = [];\n this.plugin = plugin;\n this.hook = hook;\n const defaultSettings = {};\n if (plugin.settings) {\n for (const id in plugin.settings) {\n const item = plugin.settings[id];\n defaultSettings[id] = item.defaultValue;\n }\n }\n const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;\n let currentSettings = Object.assign({}, defaultSettings);\n try {\n const raw = localStorage.getItem(localSettingsSaveId);\n const data = JSON.parse(raw);\n Object.assign(currentSettings, data);\n }\n catch (e) {\n // noop\n }\n this.fallbacks = {\n getSettings() {\n return currentSettings;\n },\n setSettings(value) {\n try {\n localStorage.setItem(localSettingsSaveId, JSON.stringify(value));\n }\n catch (e) {\n // noop\n }\n currentSettings = value;\n },\n now() {\n return Object(_time_js__WEBPACK_IMPORTED_MODULE_1__[\"now\"])();\n },\n };\n if (hook) {\n hook.on(_const_js__WEBPACK_IMPORTED_MODULE_0__[\"HOOK_PLUGIN_SETTINGS_SET\"], (pluginId, value) => {\n if (pluginId === this.plugin.id) {\n this.fallbacks.setSettings(value);\n }\n });\n }\n this.proxiedOn = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target.on[prop];\n }\n else {\n return (...args) => {\n this.onQueue.push({\n method: prop,\n args,\n });\n };\n }\n },\n });\n this.proxiedTarget = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target[prop];\n }\n else if (prop === 'on') {\n return this.proxiedOn;\n }\n else if (Object.keys(this.fallbacks).includes(prop)) {\n return (...args) => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve: () => { },\n });\n return this.fallbacks[prop](...args);\n };\n }\n else {\n return (...args) => {\n return new Promise(resolve => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve,\n });\n });\n };\n }\n },\n });\n }\n async setRealTarget(target) {\n this.target = target;\n for (const item of this.onQueue) {\n this.target.on[item.method](...item.args);\n }\n for (const item of this.targetQueue) {\n item.resolve(await this.target[item.method](...item.args));\n }\n }\n}\n\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/proxy.js?"); /***/ }), /***/ "../../node_modules/@vue/devtools-api/lib/esm/time.js": /*!***********************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/time.js ***! \***********************************************************************************/ /*! exports provided: isPerformanceSupported, now */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isPerformanceSupported\", function() { return isPerformanceSupported; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"now\", function() { return now; });\nlet supported;\nlet perf;\nfunction isPerformanceSupported() {\n var _a;\n if (supported !== undefined) {\n return supported;\n }\n if (typeof window !== 'undefined' && window.performance) {\n supported = true;\n perf = window.performance;\n }\n else if (typeof global !== 'undefined' && ((_a = global.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) {\n supported = true;\n perf = global.perf_hooks.performance;\n }\n else {\n supported = false;\n }\n return supported;\n}\nfunction now() {\n return isPerformanceSupported() ? perf.now() : Date.now();\n}\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../webpack/buildin/global.js */ \"../../node_modules/webpack/buildin/global.js\")))\n\n//# sourceURL=webpack:////Users/bill/word/4dkankan_v4/node_modules/@vue/devtools-api/lib/esm/time.js?"); /***/ }), /***/ "../../node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js": /*!****************************************************************************************************!*\ !*** /Users/bill/word/4dkankan_v4/node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js ***! \****************************************************************************************************/ /*! exports provided: EffectScope, ReactiveEffect, 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, camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey, BaseTransition, BaseTransitionPropsValidators, Comment, Fragment, KeepAlive, Static, Suspense, Teleport, Text, assertNumber, callWithAsyncErrorHandling, callWithErrorHandling, cloneVNode, compatUtils, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createHydrationRenderer, createPropsRestProxy, createRenderer, createSlots, createStaticVNode, createTextVNode, createVNode, defineAsyncComponent, defineComponent, defineEmits, defineExpose, defineModel, defineOptions, defineProps, defineSlots, devtools, getCurrentInstance, getTransitionRawChildren, guardReactiveProps, h, handleError, hasInjectionContext, initCustomFormatter, inject, isMemoSame, isRuntimeOnly, isVNode, mergeDefaults, mergeModels, mergeProps, nextTick, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onServerPrefetch, onUnmounted, onUpdated, openBlock, popScopeId, provide, pushScopeId, queuePostFlushCb, registerRuntimeCompiler, renderList, renderSlot, resolveComponent, resolveDirective, resolveDynamicComponent, resolveFilter, resolveTransitionHooks, setBlockTracking, setDevtoolsHook, setTransitionHooks, ssrContextKey, ssrUtils, toHandlers, transformVNodeArgs, useAttrs, useModel, useSSRContext, useSlots, useTransitionState, version, warn, watch, watchEffect, watchPostEffect, watchSyncEffect, withAsyncContext, withCtx, withDefaults, withDirectives, withMemo, withScopeId */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"BaseTransition\", function() { return BaseTransition; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"BaseTransitionPropsValidators\", function() { return BaseTransitionPropsValidators; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Comment\", function() { return Comment; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Fragment\", function() { return Fragment; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"KeepAlive\", function() { return KeepAlive; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Static\", function() { return Static; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Suspense\", function() { return Suspense; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Teleport\", function() { return Teleport; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Text\", function() { return Text; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"assertNumber\", function() { return assertNumber; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"callWithAsyncErrorHandling\", function() { return callWithAsyncErrorHandling; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"callWithErrorHandling\", function() { return callWithErrorHandling; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"cloneVNode\", function() { return cloneVNode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"compatUtils\", function() { return compatUtils; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"computed\", function() { return computed; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createBlock\", function() { return createBlock; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createCommentVNode\", function() { return createCommentVNode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createElementBlock\", function() { return createElementBlock; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createElementVNode\", function() { return createBaseVNode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createHydrationRenderer\", function() { return createHydrationRenderer; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createPropsRestProxy\", function() { return createPropsRestProxy; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createRenderer\", function() { return createRenderer; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createSlots\", function() { return createSlots; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createStaticVNode\", function() { return createStaticVNode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createTextVNode\", function() { return createTextVNode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createVNode\", function() { return createVNode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineAsyncComponent\", function() { return defineAsyncComponent; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineComponent\", function() { return defineComponent; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineEmits\", function() { return defineEmits; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineExpose\", function() { return defineExpose; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineModel\", function() { return defineModel; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineOptions\", function() { return defineOptions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineProps\", function() { return defineProps; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defineSlots\", function() { return defineSlots; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"devtools\", function() { return devtools; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getCurrentInstance\", function() { return getCurrentInstance; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getTransitionRawChildren\", function() { return getTransitionRawChildren; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"guardReactiveProps\", function() { return guardReactiveProps; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"h\", function() { return h; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"handleError\", function() { return handleError; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"hasInjectionContext\", function() { return hasInjectionContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initCustomFormatter\", function() { return initCustomFormatter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"inject\", function() { return inject; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isMemoSame\", function() { return isMemoSame; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isRuntimeOnly\", function() { return isRuntimeOnly; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isVNode\", function() { return isVNode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"mergeDefaults\", function() { return mergeDefaults; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"mergeModels\", function() { return mergeModels; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"mergeProps\", function() { return mergeProps; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"nextTick\", function() { return nextTick; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onActivated\", function() { return onActivated; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onBeforeMount\", function() { return onBeforeMount; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onBeforeUnmount\", function() { return onBeforeUnmount; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onBeforeUpdate\", function() { return onBeforeUpdate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onDeactivated\", function() { return onDeactivated; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onErrorCaptured\", function() { return onErrorCaptured; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onMounted\", function() { return onMounted; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onRenderTracked\", function() { return onRenderTracked; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onRenderTriggered\", function() { return onRenderTriggered; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onServerPrefetch\", function() { return onServerPrefetch; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onUnmounted\", function() { return onUnmounted; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onUpdated\", function() { return onUpdated; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"openBlock\", function() { return openBlock; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"popScopeId\", function() { return popScopeId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"provide\", function() { return provide; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"pushScopeId\", function() { return pushScopeId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"queuePostFlushCb\", function() { return queuePostFlushCb; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"registerRuntimeCompiler\", function() { return registerRuntimeCompiler; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"renderList\", function() { return renderList; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"renderSlot\", function() { return renderSlot; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolveComponent\", function() { return resolveComponent; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolveDirective\", function() { return resolveDirective; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolveDynamicComponent\", function() { return resolveDynamicComponent; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolveFilter\", function() { return resolveFilter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolveTransitionHooks\", function() { return resolveTransitionHooks; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setBlockTracking\", function() { return setBlockTracking; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setDevtoolsHook\", function() { return setDevtoolsHook; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setTransitionHooks\", function() { return setTransitionHooks; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ssrContextKey\", function() { return ssrContextKey; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ssrUtils\", function() { return ssrUtils; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"toHandlers\", function() { return toHandlers; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"transformVNodeArgs\", function() { return transformVNodeArgs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"useAttrs\", function() { return useAttrs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"useModel\", function() { return useModel; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"useSSRContext\", function() { return useSSRContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"useSlots\", function() { return useSlots; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"useTransitionState\", function() { return useTransitionState; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"version\", function() { return version; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"warn\", function() { return warn; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watch\", function() { return watch; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watchEffect\", function() { return watchEffect; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watchPostEffect\", function() { return watchPostEffect; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watchSyncEffect\", function() { return watchSyncEffect; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"withAsyncContext\", function() { return withAsyncContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"withCtx\", function() { return withCtx; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"withDefaults\", function() { return withDefaults; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"withDirectives\", function() { return withDirectives; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"withMemo\", function() { return withMemo; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"withScopeId\", function() { return withScopeId; });\n/* harmony import */ var _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/reactivity */ \"../../node_modules/@vue/runtime-core/node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"EffectScope\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"EffectScope\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"ReactiveEffect\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"ReactiveEffect\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"customRef\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"customRef\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"effect\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"effect\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"effectScope\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"effectScope\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getCurrentScope\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"getCurrentScope\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isProxy\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isProxy\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isReactive\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isReactive\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isReadonly\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isReadonly\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isRef\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isRef\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isShallow\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isShallow\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"markRaw\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"markRaw\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"onScopeDispose\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"onScopeDispose\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"proxyRefs\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"proxyRefs\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"reactive\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"reactive\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"readonly\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"readonly\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"ref\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"ref\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"shallowReactive\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"shallowReactive\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"shallowReadonly\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"shallowReadonly\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"shallowRef\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"shallowRef\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"stop\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"stop\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"toRaw\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"toRaw\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"toRef\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"toRef\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"toRefs\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"toRefs\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"toValue\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"toValue\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"triggerRef\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"triggerRef\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"unref\", function() { return _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"unref\"]; });\n\n/* harmony import */ var _vue_shared__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @vue/shared */ \"../../node_modules/@vue/shared/dist/shared.esm-bundler.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"camelize\", function() { return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"camelize\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"capitalize\", function() { return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"capitalize\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"normalizeClass\", function() { return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"normalizeClass\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"normalizeProps\", function() { return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"normalizeProps\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"normalizeStyle\", function() { return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"normalizeStyle\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"toDisplayString\", function() { return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toDisplayString\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"toHandlerKey\", function() { return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"]; });\n\n\n\n\n\n\nconst stack = [];\nfunction pushWarningContext(vnode) {\n stack.push(vnode);\n}\nfunction popWarningContext() {\n stack.pop();\n}\nfunction warn(msg, ...args) {\n if (false)\n {}\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"pauseTracking\"])();\n const instance = stack.length ? stack[stack.length - 1].component : null;\n const appWarnHandler = instance && instance.appContext.config.warnHandler;\n const trace = getComponentTrace();\n if (appWarnHandler) {\n callWithErrorHandling(\n appWarnHandler,\n instance,\n 11,\n [\n msg + args.join(\"\"),\n instance && instance.proxy,\n trace.map(\n ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`\n ).join(\"\\n\"),\n trace\n ]\n );\n } else {\n const warnArgs = [`[Vue warn]: ${msg}`, ...args];\n if (trace.length && // avoid spamming console during tests\n true) {\n warnArgs.push(`\n`, ...formatTrace(trace));\n }\n console.warn(...warnArgs);\n }\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"resetTracking\"])();\n}\nfunction getComponentTrace() {\n let currentVNode = stack[stack.length - 1];\n if (!currentVNode) {\n return [];\n }\n const normalizedStack = [];\n while (currentVNode) {\n const last = normalizedStack[0];\n if (last && last.vnode === currentVNode) {\n last.recurseCount++;\n } else {\n normalizedStack.push({\n vnode: currentVNode,\n recurseCount: 0\n });\n }\n const parentInstance = currentVNode.component && currentVNode.component.parent;\n currentVNode = parentInstance && parentInstance.vnode;\n }\n return normalizedStack;\n}\nfunction formatTrace(trace) {\n const logs = [];\n trace.forEach((entry, i) => {\n logs.push(...i === 0 ? [] : [`\n`], ...formatTraceEntry(entry));\n });\n return logs;\n}\nfunction formatTraceEntry({ vnode, recurseCount }) {\n const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;\n const isRoot = vnode.component ? vnode.component.parent == null : false;\n const open = ` at <${formatComponentName(\n vnode.component,\n vnode.type,\n isRoot\n )}`;\n const close = `>` + postfix;\n return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];\n}\nfunction formatProps(props) {\n const res = [];\n const keys = Object.keys(props);\n keys.slice(0, 3).forEach((key) => {\n res.push(...formatProp(key, props[key]));\n });\n if (keys.length > 3) {\n res.push(` ...`);\n }\n return res;\n}\nfunction formatProp(key, value, raw) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isString\"])(value)) {\n value = JSON.stringify(value);\n return raw ? value : [`${key}=${value}`];\n } else if (typeof value === \"number\" || typeof value === \"boolean\" || value == null) {\n return raw ? value : [`${key}=${value}`];\n } else if (Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isRef\"])(value)) {\n value = formatProp(key, Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"toRaw\"])(value.value), true);\n return raw ? value : [`${key}=Ref<`, value, `>`];\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(value)) {\n return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];\n } else {\n value = Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"toRaw\"])(value);\n return raw ? value : [`${key}=`, value];\n }\n}\nfunction assertNumber(val, type) {\n if (false)\n {}\n if (val === void 0) {\n return;\n } else if (typeof val !== \"number\") {\n warn(`${type} is not a valid number - got ${JSON.stringify(val)}.`);\n } else if (isNaN(val)) {\n warn(`${type} is NaN - the duration expression might be incorrect.`);\n }\n}\n\nconst ErrorTypeStrings = {\n [\"sp\"]: \"serverPrefetch hook\",\n [\"bc\"]: \"beforeCreate hook\",\n [\"c\"]: \"created hook\",\n [\"bm\"]: \"beforeMount hook\",\n [\"m\"]: \"mounted hook\",\n [\"bu\"]: \"beforeUpdate hook\",\n [\"u\"]: \"updated\",\n [\"bum\"]: \"beforeUnmount hook\",\n [\"um\"]: \"unmounted hook\",\n [\"a\"]: \"activated hook\",\n [\"da\"]: \"deactivated hook\",\n [\"ec\"]: \"errorCaptured hook\",\n [\"rtc\"]: \"renderTracked hook\",\n [\"rtg\"]: \"renderTriggered hook\",\n [0]: \"setup function\",\n [1]: \"render function\",\n [2]: \"watcher getter\",\n [3]: \"watcher callback\",\n [4]: \"watcher cleanup function\",\n [5]: \"native event handler\",\n [6]: \"component event handler\",\n [7]: \"vnode hook\",\n [8]: \"directive hook\",\n [9]: \"transition hook\",\n [10]: \"app errorHandler\",\n [11]: \"app warnHandler\",\n [12]: \"ref function\",\n [13]: \"async component loader\",\n [14]: \"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/core\"\n};\nfunction callWithErrorHandling(fn, instance, type, args) {\n let res;\n try {\n res = args ? fn(...args) : fn();\n } catch (err) {\n handleError(err, instance, type);\n }\n return res;\n}\nfunction callWithAsyncErrorHandling(fn, instance, type, args) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(fn)) {\n const res = callWithErrorHandling(fn, instance, type, args);\n if (res && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isPromise\"])(res)) {\n res.catch((err) => {\n handleError(err, instance, type);\n });\n }\n return res;\n }\n const values = [];\n for (let i = 0; i < fn.length; i++) {\n values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));\n }\n return values;\n}\nfunction handleError(err, instance, type, throwInDev = true) {\n const contextVNode = instance ? instance.vnode : null;\n if (instance) {\n let cur = instance.parent;\n const exposedInstance = instance.proxy;\n const errorInfo = true ? ErrorTypeStrings[type] : undefined;\n while (cur) {\n const errorCapturedHooks = cur.ec;\n if (errorCapturedHooks) {\n for (let i = 0; i < errorCapturedHooks.length; i++) {\n if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {\n return;\n }\n }\n }\n cur = cur.parent;\n }\n const appErrorHandler = instance.appContext.config.errorHandler;\n if (appErrorHandler) {\n callWithErrorHandling(\n appErrorHandler,\n null,\n 10,\n [err, exposedInstance, errorInfo]\n );\n return;\n }\n }\n logError(err, type, contextVNode, throwInDev);\n}\nfunction logError(err, type, contextVNode, throwInDev = true) {\n if (true) {\n const info = ErrorTypeStrings[type];\n if (contextVNode) {\n pushWarningContext(contextVNode);\n }\n warn(`Unhandled error${info ? ` during execution of ${info}` : ``}`);\n if (contextVNode) {\n popWarningContext();\n }\n if (throwInDev) {\n throw err;\n } else {\n console.error(err);\n }\n } else {}\n}\n\nlet isFlushing = false;\nlet isFlushPending = false;\nconst queue = [];\nlet flushIndex = 0;\nconst pendingPostFlushCbs = [];\nlet activePostFlushCbs = null;\nlet postFlushIndex = 0;\nconst resolvedPromise = /* @__PURE__ */ Promise.resolve();\nlet currentFlushPromise = null;\nconst RECURSION_LIMIT = 100;\nfunction nextTick(fn) {\n const p = currentFlushPromise || resolvedPromise;\n return fn ? p.then(this ? fn.bind(this) : fn) : p;\n}\nfunction findInsertionIndex(id) {\n let start = flushIndex + 1;\n let end = queue.length;\n while (start < end) {\n const middle = start + end >>> 1;\n const middleJobId = getId(queue[middle]);\n middleJobId < id ? start = middle + 1 : end = middle;\n }\n return start;\n}\nfunction queueJob(job) {\n if (!queue.length || !queue.includes(\n job,\n isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex\n )) {\n if (job.id == null) {\n queue.push(job);\n } else {\n queue.splice(findInsertionIndex(job.id), 0, job);\n }\n queueFlush();\n }\n}\nfunction queueFlush() {\n if (!isFlushing && !isFlushPending) {\n isFlushPending = true;\n currentFlushPromise = resolvedPromise.then(flushJobs);\n }\n}\nfunction invalidateJob(job) {\n const i = queue.indexOf(job);\n if (i > flushIndex) {\n queue.splice(i, 1);\n }\n}\nfunction queuePostFlushCb(cb) {\n if (!Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(cb)) {\n if (!activePostFlushCbs || !activePostFlushCbs.includes(\n cb,\n cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex\n )) {\n pendingPostFlushCbs.push(cb);\n }\n } else {\n pendingPostFlushCbs.push(...cb);\n }\n queueFlush();\n}\nfunction flushPreFlushCbs(seen, i = isFlushing ? flushIndex + 1 : 0) {\n if (true) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (; i < queue.length; i++) {\n const cb = queue[i];\n if (cb && cb.pre) {\n if ( true && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n queue.splice(i, 1);\n i--;\n cb();\n }\n }\n}\nfunction flushPostFlushCbs(seen) {\n if (pendingPostFlushCbs.length) {\n const deduped = [...new Set(pendingPostFlushCbs)];\n pendingPostFlushCbs.length = 0;\n if (activePostFlushCbs) {\n activePostFlushCbs.push(...deduped);\n return;\n }\n activePostFlushCbs = deduped;\n if (true) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n activePostFlushCbs.sort((a, b) => getId(a) - getId(b));\n for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {\n if ( true && checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {\n continue;\n }\n activePostFlushCbs[postFlushIndex]();\n }\n activePostFlushCbs = null;\n postFlushIndex = 0;\n }\n}\nconst getId = (job) => job.id == null ? Infinity : job.id;\nconst comparator = (a, b) => {\n const diff = getId(a) - getId(b);\n if (diff === 0) {\n if (a.pre && !b.pre)\n return -1;\n if (b.pre && !a.pre)\n return 1;\n }\n return diff;\n};\nfunction flushJobs(seen) {\n isFlushPending = false;\n isFlushing = true;\n if (true) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n queue.sort(comparator);\n const check = true ? (job) => checkRecursiveUpdates(seen, job) : undefined;\n try {\n for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job && job.active !== false) {\n if ( true && check(job)) {\n continue;\n }\n callWithErrorHandling(job, null, 14);\n }\n }\n } finally {\n flushIndex = 0;\n queue.length = 0;\n flushPostFlushCbs(seen);\n isFlushing = false;\n currentFlushPromise = null;\n if (queue.length || pendingPostFlushCbs.length) {\n flushJobs(seen);\n }\n }\n}\nfunction checkRecursiveUpdates(seen, fn) {\n if (!seen.has(fn)) {\n seen.set(fn, 1);\n } else {\n const count = seen.get(fn);\n if (count > RECURSION_LIMIT) {\n const instance = fn.ownerInstance;\n const componentName = instance && getComponentName(instance.type);\n warn(\n `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`\n );\n return true;\n } else {\n seen.set(fn, count + 1);\n }\n }\n}\n\nlet isHmrUpdating = false;\nconst hmrDirtyComponents = /* @__PURE__ */ new Set();\nif (true) {\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"getGlobalThis\"])().__VUE_HMR_RUNTIME__ = {\n createRecord: tryWrap(createRecord),\n rerender: tryWrap(rerender),\n reload: tryWrap(reload)\n };\n}\nconst map = /* @__PURE__ */ new Map();\nfunction registerHMR(instance) {\n const id = instance.type.__hmrId;\n let record = map.get(id);\n if (!record) {\n createRecord(id, instance.type);\n record = map.get(id);\n }\n record.instances.add(instance);\n}\nfunction unregisterHMR(instance) {\n map.get(instance.type.__hmrId).instances.delete(instance);\n}\nfunction createRecord(id, initialDef) {\n if (map.has(id)) {\n return false;\n }\n map.set(id, {\n initialDef: normalizeClassComponent(initialDef),\n instances: /* @__PURE__ */ new Set()\n });\n return true;\n}\nfunction normalizeClassComponent(component) {\n return isClassComponent(component) ? component.__vccOpts : component;\n}\nfunction rerender(id, newRender) {\n const record = map.get(id);\n if (!record) {\n return;\n }\n record.initialDef.render = newRender;\n [...record.instances].forEach((instance) => {\n if (newRender) {\n instance.render = newRender;\n normalizeClassComponent(instance.type).render = newRender;\n }\n instance.renderCache = [];\n isHmrUpdating = true;\n instance.update();\n isHmrUpdating = false;\n });\n}\nfunction reload(id, newComp) {\n const record = map.get(id);\n if (!record)\n return;\n newComp = normalizeClassComponent(newComp);\n updateComponentDef(record.initialDef, newComp);\n const instances = [...record.instances];\n for (const instance of instances) {\n const oldComp = normalizeClassComponent(instance.type);\n if (!hmrDirtyComponents.has(oldComp)) {\n if (oldComp !== record.initialDef) {\n updateComponentDef(oldComp, newComp);\n }\n hmrDirtyComponents.add(oldComp);\n }\n instance.appContext.propsCache.delete(instance.type);\n instance.appContext.emitsCache.delete(instance.type);\n instance.appContext.optionsCache.delete(instance.type);\n if (instance.ceReload) {\n hmrDirtyComponents.add(oldComp);\n instance.ceReload(newComp.styles);\n hmrDirtyComponents.delete(oldComp);\n } else if (instance.parent) {\n queueJob(instance.parent.update);\n } else if (instance.appContext.reload) {\n instance.appContext.reload();\n } else if (typeof window !== \"undefined\") {\n window.location.reload();\n } else {\n console.warn(\n \"[HMR] Root or manually mounted instance modified. Full reload required.\"\n );\n }\n }\n queuePostFlushCb(() => {\n for (const instance of instances) {\n hmrDirtyComponents.delete(\n normalizeClassComponent(instance.type)\n );\n }\n });\n}\nfunction updateComponentDef(oldComp, newComp) {\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"extend\"])(oldComp, newComp);\n for (const key in oldComp) {\n if (key !== \"__file\" && !(key in newComp)) {\n delete oldComp[key];\n }\n }\n}\nfunction tryWrap(fn) {\n return (id, arg) => {\n try {\n return fn(id, arg);\n } catch (e) {\n console.error(e);\n console.warn(\n `[HMR] Something went wrong during Vue component hot-reload. Full reload required.`\n );\n }\n };\n}\n\nlet devtools;\nlet buffer = [];\nlet devtoolsNotInstalled = false;\nfunction emit$1(event, ...args) {\n if (devtools) {\n devtools.emit(event, ...args);\n } else if (!devtoolsNotInstalled) {\n buffer.push({ event, args });\n }\n}\nfunction setDevtoolsHook(hook, target) {\n var _a, _b;\n devtools = hook;\n if (devtools) {\n devtools.enabled = true;\n buffer.forEach(({ event, args }) => devtools.emit(event, ...args));\n buffer = [];\n } else if (\n // handle late devtools injection - only do this if we are in an actual\n // browser environment to avoid the timer handle stalling test runner exit\n // (#4815)\n typeof window !== \"undefined\" && // some envs mock window but not fully\n window.HTMLElement && // also exclude jsdom\n !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes(\"jsdom\"))\n ) {\n const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];\n replay.push((newHook) => {\n setDevtoolsHook(newHook, target);\n });\n setTimeout(() => {\n if (!devtools) {\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\n devtoolsNotInstalled = true;\n buffer = [];\n }\n }, 3e3);\n } else {\n devtoolsNotInstalled = true;\n buffer = [];\n }\n}\nfunction devtoolsInitApp(app, version) {\n emit$1(\"app:init\" /* APP_INIT */, app, version, {\n Fragment,\n Text,\n Comment,\n Static\n });\n}\nfunction devtoolsUnmountApp(app) {\n emit$1(\"app:unmount\" /* APP_UNMOUNT */, app);\n}\nconst devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:added\" /* COMPONENT_ADDED */\n);\nconst devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\nconst _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:removed\" /* COMPONENT_REMOVED */\n);\nconst devtoolsComponentRemoved = (component) => {\n if (devtools && typeof devtools.cleanupBuffer === \"function\" && // remove the component if it wasn't buffered\n !devtools.cleanupBuffer(component)) {\n _devtoolsComponentRemoved(component);\n }\n};\nfunction createDevtoolsComponentHook(hook) {\n return (component) => {\n emit$1(\n hook,\n component.appContext.app,\n component.uid,\n component.parent ? component.parent.uid : void 0,\n component\n );\n };\n}\nconst devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:start\" /* PERFORMANCE_START */\n);\nconst devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:end\" /* PERFORMANCE_END */\n);\nfunction createDevtoolsPerformanceHook(hook) {\n return (component, type, time) => {\n emit$1(hook, component.appContext.app, component.uid, component, type, time);\n };\n}\nfunction devtoolsComponentEmit(component, event, params) {\n emit$1(\n \"component:emit\" /* COMPONENT_EMIT */,\n component.appContext.app,\n component,\n event,\n params\n );\n}\n\nfunction emit(instance, event, ...rawArgs) {\n if (instance.isUnmounted)\n return;\n const props = instance.vnode.props || _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"];\n if (true) {\n const {\n emitsOptions,\n propsOptions: [propsOptions]\n } = instance;\n if (emitsOptions) {\n if (!(event in emitsOptions) && true) {\n if (!propsOptions || !(Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(event) in propsOptions)) {\n warn(\n `Component emitted event \"${event}\" but it is neither declared in the emits option nor as an \"${Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(event)}\" prop.`\n );\n }\n } else {\n const validator = emitsOptions[event];\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(validator)) {\n const isValid = validator(...rawArgs);\n if (!isValid) {\n warn(\n `Invalid event arguments: event validation failed for event \"${event}\".`\n );\n }\n }\n }\n }\n }\n let args = rawArgs;\n const isModelListener = event.startsWith(\"update:\");\n const modelArg = isModelListener && event.slice(7);\n if (modelArg && modelArg in props) {\n const modifiersKey = `${modelArg === \"modelValue\" ? \"model\" : modelArg}Modifiers`;\n const { number, trim } = props[modifiersKey] || _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"];\n if (trim) {\n args = rawArgs.map((a) => Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isString\"])(a) ? a.trim() : a);\n }\n if (number) {\n args = rawArgs.map(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"looseToNumber\"]);\n }\n }\n if (true) {\n devtoolsComponentEmit(instance, event, args);\n }\n if (true) {\n const lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && props[Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(lowerCaseEvent)]) {\n warn(\n `Event \"${lowerCaseEvent}\" is emitted in component ${formatComponentName(\n instance,\n instance.type\n )} but the handler is registered for \"${event}\". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use \"${Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hyphenate\"])(event)}\" instead of \"${event}\".`\n );\n }\n }\n let handlerName;\n let handler = props[handlerName = Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(event)] || // also try camelCase event handler (#2249)\n props[handlerName = Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"camelize\"])(event))];\n if (!handler && isModelListener) {\n handler = props[handlerName = Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hyphenate\"])(event))];\n }\n if (handler) {\n callWithAsyncErrorHandling(\n handler,\n instance,\n 6,\n args\n );\n }\n const onceHandler = props[handlerName + `Once`];\n if (onceHandler) {\n if (!instance.emitted) {\n instance.emitted = {};\n } else if (instance.emitted[handlerName]) {\n return;\n }\n instance.emitted[handlerName] = true;\n callWithAsyncErrorHandling(\n onceHandler,\n instance,\n 6,\n args\n );\n }\n}\nfunction normalizeEmitsOptions(comp, appContext, asMixin = false) {\n const cache = appContext.emitsCache;\n const cached = cache.get(comp);\n if (cached !== void 0) {\n return cached;\n }\n const raw = comp.emits;\n let normalized = {};\n let hasExtends = false;\n if ( true && !Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(comp)) {\n const extendEmits = (raw2) => {\n const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);\n if (normalizedFromExtend) {\n hasExtends = true;\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"extend\"])(normalized, normalizedFromExtend);\n }\n };\n if (!asMixin && appContext.mixins.length) {\n appContext.mixins.forEach(extendEmits);\n }\n if (comp.extends) {\n extendEmits(comp.extends);\n }\n if (comp.mixins) {\n comp.mixins.forEach(extendEmits);\n }\n }\n if (!raw && !hasExtends) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isObject\"])(comp)) {\n cache.set(comp, null);\n }\n return null;\n }\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(raw)) {\n raw.forEach((key) => normalized[key] = null);\n } else {\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"extend\"])(normalized, raw);\n }\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isObject\"])(comp)) {\n cache.set(comp, normalized);\n }\n return normalized;\n}\nfunction isEmitListener(options, key) {\n if (!options || !Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isOn\"])(key)) {\n return false;\n }\n key = key.slice(2).replace(/Once$/, \"\");\n return Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(options, key[0].toLowerCase() + key.slice(1)) || Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(options, Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hyphenate\"])(key)) || Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(options, key);\n}\n\nlet currentRenderingInstance = null;\nlet currentScopeId = null;\nfunction setCurrentRenderingInstance(instance) {\n const prev = currentRenderingInstance;\n currentRenderingInstance = instance;\n currentScopeId = instance && instance.type.__scopeId || null;\n return prev;\n}\nfunction pushScopeId(id) {\n currentScopeId = id;\n}\nfunction popScopeId() {\n currentScopeId = null;\n}\nconst withScopeId = (_id) => withCtx;\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {\n if (!ctx)\n return fn;\n if (fn._n) {\n return fn;\n }\n const renderFnWithContext = (...args) => {\n if (renderFnWithContext._d) {\n setBlockTracking(-1);\n }\n const prevInstance = setCurrentRenderingInstance(ctx);\n let res;\n try {\n res = fn(...args);\n } finally {\n setCurrentRenderingInstance(prevInstance);\n if (renderFnWithContext._d) {\n setBlockTracking(1);\n }\n }\n if (true) {\n devtoolsComponentUpdated(ctx);\n }\n return res;\n };\n renderFnWithContext._n = true;\n renderFnWithContext._c = true;\n renderFnWithContext._d = true;\n return renderFnWithContext;\n}\n\nlet accessedAttrs = false;\nfunction markAttrsAccessed() {\n accessedAttrs = true;\n}\nfunction renderComponentRoot(instance) {\n const {\n type: Component,\n vnode,\n proxy,\n withProxy,\n props,\n propsOptions: [propsOptions],\n slots,\n attrs,\n emit,\n render,\n renderCache,\n data,\n setupState,\n ctx,\n inheritAttrs\n } = instance;\n let result;\n let fallthroughAttrs;\n const prev = setCurrentRenderingInstance(instance);\n if (true) {\n accessedAttrs = false;\n }\n try {\n if (vnode.shapeFlag & 4) {\n const proxyToUse = withProxy || proxy;\n result = normalizeVNode(\n render.call(\n proxyToUse,\n proxyToUse,\n renderCache,\n props,\n setupState,\n data,\n ctx\n )\n );\n fallthroughAttrs = attrs;\n } else {\n const render2 = Component;\n if ( true && attrs === props) {\n markAttrsAccessed();\n }\n result = normalizeVNode(\n render2.length > 1 ? render2(\n props,\n true ? {\n get attrs() {\n markAttrsAccessed();\n return attrs;\n },\n slots,\n emit\n } : undefined\n ) : render2(\n props,\n null\n /* we know it doesn't need it */\n )\n );\n fallthroughAttrs = Component.props ? attrs : getFunctionalFallthrough(attrs);\n }\n } catch (err) {\n blockStack.length = 0;\n handleError(err, instance, 1);\n result = createVNode(Comment);\n }\n let root = result;\n let setRoot = void 0;\n if ( true && result.patchFlag > 0 && result.patchFlag & 2048) {\n [root, setRoot] = getChildRoot(result);\n }\n if (fallthroughAttrs && inheritAttrs !== false) {\n const keys = Object.keys(fallthroughAttrs);\n const { shapeFlag } = root;\n if (keys.length) {\n if (shapeFlag & (1 | 6)) {\n if (propsOptions && keys.some(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isModelListener\"])) {\n fallthroughAttrs = filterModelListeners(\n fallthroughAttrs,\n propsOptions\n );\n }\n root = cloneVNode(root, fallthroughAttrs);\n } else if ( true && !accessedAttrs && root.type !== Comment) {\n const allAttrs = Object.keys(attrs);\n const eventAttrs = [];\n const extraAttrs = [];\n for (let i = 0, l = allAttrs.length; i < l; i++) {\n const key = allAttrs[i];\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isOn\"])(key)) {\n if (!Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isModelListener\"])(key)) {\n eventAttrs.push(key[2].toLowerCase() + key.slice(3));\n }\n } else {\n extraAttrs.push(key);\n }\n }\n if (extraAttrs.length) {\n warn(\n `Extraneous non-props attributes (${extraAttrs.join(\", \")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes.`\n );\n }\n if (eventAttrs.length) {\n warn(\n `Extraneous non-emits event listeners (${eventAttrs.join(\", \")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the \"emits\" option.`\n );\n }\n }\n }\n }\n if (vnode.dirs) {\n if ( true && !isElementRoot(root)) {\n warn(\n `Runtime directive used on component with non-element root node. The directives will not function as intended.`\n );\n }\n root = cloneVNode(root);\n root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;\n }\n if (vnode.transition) {\n if ( true && !isElementRoot(root)) {\n warn(\n `Component inside renders non-element root node that cannot be animated.`\n );\n }\n root.transition = vnode.transition;\n }\n if ( true && setRoot) {\n setRoot(root);\n } else {\n result = root;\n }\n setCurrentRenderingInstance(prev);\n return result;\n}\nconst getChildRoot = (vnode) => {\n const rawChildren = vnode.children;\n const dynamicChildren = vnode.dynamicChildren;\n const childRoot = filterSingleRoot(rawChildren);\n if (!childRoot) {\n return [vnode, void 0];\n }\n const index = rawChildren.indexOf(childRoot);\n const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1;\n const setRoot = (updatedRoot) => {\n rawChildren[index] = updatedRoot;\n if (dynamicChildren) {\n if (dynamicIndex > -1) {\n dynamicChildren[dynamicIndex] = updatedRoot;\n } else if (updatedRoot.patchFlag > 0) {\n vnode.dynamicChildren = [...dynamicChildren, updatedRoot];\n }\n }\n };\n return [normalizeVNode(childRoot), setRoot];\n};\nfunction filterSingleRoot(children) {\n let singleRoot;\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n if (isVNode(child)) {\n if (child.type !== Comment || child.children === \"v-if\") {\n if (singleRoot) {\n return;\n } else {\n singleRoot = child;\n }\n }\n } else {\n return;\n }\n }\n return singleRoot;\n}\nconst getFunctionalFallthrough = (attrs) => {\n let res;\n for (const key in attrs) {\n if (key === \"class\" || key === \"style\" || Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isOn\"])(key)) {\n (res || (res = {}))[key] = attrs[key];\n }\n }\n return res;\n};\nconst filterModelListeners = (attrs, props) => {\n const res = {};\n for (const key in attrs) {\n if (!Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isModelListener\"])(key) || !(key.slice(9) in props)) {\n res[key] = attrs[key];\n }\n }\n return res;\n};\nconst isElementRoot = (vnode) => {\n return vnode.shapeFlag & (6 | 1) || vnode.type === Comment;\n};\nfunction shouldUpdateComponent(prevVNode, nextVNode, optimized) {\n const { props: prevProps, children: prevChildren, component } = prevVNode;\n const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;\n const emits = component.emitsOptions;\n if ( true && (prevChildren || nextChildren) && isHmrUpdating) {\n return true;\n }\n if (nextVNode.dirs || nextVNode.transition) {\n return true;\n }\n if (optimized && patchFlag >= 0) {\n if (patchFlag & 1024) {\n return true;\n }\n if (patchFlag & 16) {\n if (!prevProps) {\n return !!nextProps;\n }\n return hasPropsChanged(prevProps, nextProps, emits);\n } else if (patchFlag & 8) {\n const dynamicProps = nextVNode.dynamicProps;\n for (let i = 0; i < dynamicProps.length; i++) {\n const key = dynamicProps[i];\n if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {\n return true;\n }\n }\n }\n } else {\n if (prevChildren || nextChildren) {\n if (!nextChildren || !nextChildren.$stable) {\n return true;\n }\n }\n if (prevProps === nextProps) {\n return false;\n }\n if (!prevProps) {\n return !!nextProps;\n }\n if (!nextProps) {\n return true;\n }\n return hasPropsChanged(prevProps, nextProps, emits);\n }\n return false;\n}\nfunction hasPropsChanged(prevProps, nextProps, emitsOptions) {\n const nextKeys = Object.keys(nextProps);\n if (nextKeys.length !== Object.keys(prevProps).length) {\n return true;\n }\n for (let i = 0; i < nextKeys.length; i++) {\n const key = nextKeys[i];\n if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {\n return true;\n }\n }\n return false;\n}\nfunction updateHOCHostEl({ vnode, parent }, el) {\n while (parent && parent.subTree === vnode) {\n (vnode = parent.vnode).el = el;\n parent = parent.parent;\n }\n}\n\nconst isSuspense = (type) => type.__isSuspense;\nconst SuspenseImpl = {\n name: \"Suspense\",\n // In order to make Suspense tree-shakable, we need to avoid importing it\n // directly in the renderer. The renderer checks for the __isSuspense flag\n // on a vnode's type and calls the `process` method, passing in renderer\n // internals.\n __isSuspense: true,\n process(n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals) {\n if (n1 == null) {\n mountSuspense(\n n2,\n container,\n anchor,\n parentComponent,\n parentSuspense,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n } else {\n patchSuspense(\n n1,\n n2,\n container,\n anchor,\n parentComponent,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n }\n },\n hydrate: hydrateSuspense,\n create: createSuspenseBoundary,\n normalize: normalizeSuspenseChildren\n};\nconst Suspense = SuspenseImpl ;\nfunction triggerEvent(vnode, name) {\n const eventListener = vnode.props && vnode.props[name];\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(eventListener)) {\n eventListener();\n }\n}\nfunction mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals) {\n const {\n p: patch,\n o: { createElement }\n } = rendererInternals;\n const hiddenContainer = createElement(\"div\");\n const suspense = vnode.suspense = createSuspenseBoundary(\n vnode,\n parentSuspense,\n parentComponent,\n container,\n hiddenContainer,\n anchor,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n patch(\n null,\n suspense.pendingBranch = vnode.ssContent,\n hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds\n );\n if (suspense.deps > 0) {\n triggerEvent(vnode, \"onPending\");\n triggerEvent(vnode, \"onFallback\");\n patch(\n null,\n vnode.ssFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n isSVG,\n slotScopeIds\n );\n setActiveBranch(suspense, vnode.ssFallback);\n } else {\n suspense.resolve(false, true);\n }\n}\nfunction patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) {\n const suspense = n2.suspense = n1.suspense;\n suspense.vnode = n2;\n n2.el = n1.el;\n const newBranch = n2.ssContent;\n const newFallback = n2.ssFallback;\n const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense;\n if (pendingBranch) {\n suspense.pendingBranch = newBranch;\n if (isSameVNodeType(newBranch, pendingBranch)) {\n patch(\n pendingBranch,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else if (isInFallback) {\n patch(\n activeBranch,\n newFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n isSVG,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newFallback);\n }\n } else {\n suspense.pendingId++;\n if (isHydrating) {\n suspense.isHydrating = false;\n suspense.activeBranch = pendingBranch;\n } else {\n unmount(pendingBranch, parentComponent, suspense);\n }\n suspense.deps = 0;\n suspense.effects.length = 0;\n suspense.hiddenContainer = createElement(\"div\");\n if (isInFallback) {\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else {\n patch(\n activeBranch,\n newFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n isSVG,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newFallback);\n }\n } else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\n patch(\n activeBranch,\n newBranch,\n container,\n anchor,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n suspense.resolve(true);\n } else {\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n }\n }\n }\n } else {\n if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\n patch(\n activeBranch,\n newBranch,\n container,\n anchor,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newBranch);\n } else {\n triggerEvent(n2, \"onPending\");\n suspense.pendingBranch = newBranch;\n suspense.pendingId++;\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else {\n const { timeout, pendingId } = suspense;\n if (timeout > 0) {\n setTimeout(() => {\n if (suspense.pendingId === pendingId) {\n suspense.fallback(newFallback);\n }\n }, timeout);\n } else if (timeout === 0) {\n suspense.fallback(newFallback);\n }\n }\n }\n }\n}\nlet hasWarned = false;\nfunction createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals, isHydrating = false) {\n if ( true && !hasWarned) {\n hasWarned = true;\n console[console.info ? \"info\" : \"log\"](\n ` is an experimental feature and its API will likely change.`\n );\n }\n const {\n p: patch,\n m: move,\n um: unmount,\n n: next,\n o: { parentNode, remove }\n } = rendererInternals;\n let parentSuspenseId;\n const isSuspensible = isVNodeSuspensible(vnode);\n if (isSuspensible) {\n if (parentSuspense == null ? void 0 : parentSuspense.pendingBranch) {\n parentSuspenseId = parentSuspense.pendingId;\n parentSuspense.deps++;\n }\n }\n const timeout = vnode.props ? Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toNumber\"])(vnode.props.timeout) : void 0;\n if (true) {\n assertNumber(timeout, `Suspense timeout`);\n }\n const suspense = {\n vnode,\n parent: parentSuspense,\n parentComponent,\n isSVG,\n container,\n hiddenContainer,\n anchor,\n deps: 0,\n pendingId: 0,\n timeout: typeof timeout === \"number\" ? timeout : -1,\n activeBranch: null,\n pendingBranch: null,\n isInFallback: true,\n isHydrating,\n isUnmounted: false,\n effects: [],\n resolve(resume = false, sync = false) {\n if (true) {\n if (!resume && !suspense.pendingBranch) {\n throw new Error(\n `suspense.resolve() is called without a pending branch.`\n );\n }\n if (suspense.isUnmounted) {\n throw new Error(\n `suspense.resolve() is called on an already unmounted suspense boundary.`\n );\n }\n }\n const {\n vnode: vnode2,\n activeBranch,\n pendingBranch,\n pendingId,\n effects,\n parentComponent: parentComponent2,\n container: container2\n } = suspense;\n if (suspense.isHydrating) {\n suspense.isHydrating = false;\n } else if (!resume) {\n const delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === \"out-in\";\n if (delayEnter) {\n activeBranch.transition.afterLeave = () => {\n if (pendingId === suspense.pendingId) {\n move(pendingBranch, container2, anchor2, 0);\n }\n };\n }\n let { anchor: anchor2 } = suspense;\n if (activeBranch) {\n anchor2 = next(activeBranch);\n unmount(activeBranch, parentComponent2, suspense, true);\n }\n if (!delayEnter) {\n move(pendingBranch, container2, anchor2, 0);\n }\n }\n setActiveBranch(suspense, pendingBranch);\n suspense.pendingBranch = null;\n suspense.isInFallback = false;\n let parent = suspense.parent;\n let hasUnresolvedAncestor = false;\n while (parent) {\n if (parent.pendingBranch) {\n parent.effects.push(...effects);\n hasUnresolvedAncestor = true;\n break;\n }\n parent = parent.parent;\n }\n if (!hasUnresolvedAncestor) {\n queuePostFlushCb(effects);\n }\n suspense.effects = [];\n if (isSuspensible) {\n if (parentSuspense && parentSuspense.pendingBranch && parentSuspenseId === parentSuspense.pendingId) {\n parentSuspense.deps--;\n if (parentSuspense.deps === 0 && !sync) {\n parentSuspense.resolve();\n }\n }\n }\n triggerEvent(vnode2, \"onResolve\");\n },\n fallback(fallbackVNode) {\n if (!suspense.pendingBranch) {\n return;\n }\n const { vnode: vnode2, activeBranch, parentComponent: parentComponent2, container: container2, isSVG: isSVG2 } = suspense;\n triggerEvent(vnode2, \"onFallback\");\n const anchor2 = next(activeBranch);\n const mountFallback = () => {\n if (!suspense.isInFallback) {\n return;\n }\n patch(\n null,\n fallbackVNode,\n container2,\n anchor2,\n parentComponent2,\n null,\n // fallback tree will not have suspense context\n isSVG2,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, fallbackVNode);\n };\n const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === \"out-in\";\n if (delayEnter) {\n activeBranch.transition.afterLeave = mountFallback;\n }\n suspense.isInFallback = true;\n unmount(\n activeBranch,\n parentComponent2,\n null,\n // no suspense so unmount hooks fire now\n true\n // shouldRemove\n );\n if (!delayEnter) {\n mountFallback();\n }\n },\n move(container2, anchor2, type) {\n suspense.activeBranch && move(suspense.activeBranch, container2, anchor2, type);\n suspense.container = container2;\n },\n next() {\n return suspense.activeBranch && next(suspense.activeBranch);\n },\n registerDep(instance, setupRenderEffect) {\n const isInPendingSuspense = !!suspense.pendingBranch;\n if (isInPendingSuspense) {\n suspense.deps++;\n }\n const hydratedEl = instance.vnode.el;\n instance.asyncDep.catch((err) => {\n handleError(err, instance, 0);\n }).then((asyncSetupResult) => {\n if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) {\n return;\n }\n instance.asyncResolved = true;\n const { vnode: vnode2 } = instance;\n if (true) {\n pushWarningContext(vnode2);\n }\n handleSetupResult(instance, asyncSetupResult, false);\n if (hydratedEl) {\n vnode2.el = hydratedEl;\n }\n const placeholder = !hydratedEl && instance.subTree.el;\n setupRenderEffect(\n instance,\n vnode2,\n // component may have been moved before resolve.\n // if this is not a hydration, instance.subTree will be the comment\n // placeholder.\n parentNode(hydratedEl || instance.subTree.el),\n // anchor will not be used if this is hydration, so only need to\n // consider the comment placeholder case.\n hydratedEl ? null : next(instance.subTree),\n suspense,\n isSVG,\n optimized\n );\n if (placeholder) {\n remove(placeholder);\n }\n updateHOCHostEl(instance, vnode2.el);\n if (true) {\n popWarningContext();\n }\n if (isInPendingSuspense && --suspense.deps === 0) {\n suspense.resolve();\n }\n });\n },\n unmount(parentSuspense2, doRemove) {\n suspense.isUnmounted = true;\n if (suspense.activeBranch) {\n unmount(\n suspense.activeBranch,\n parentComponent,\n parentSuspense2,\n doRemove\n );\n }\n if (suspense.pendingBranch) {\n unmount(\n suspense.pendingBranch,\n parentComponent,\n parentSuspense2,\n doRemove\n );\n }\n }\n };\n return suspense;\n}\nfunction hydrateSuspense(node, vnode, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals, hydrateNode) {\n const suspense = vnode.suspense = createSuspenseBoundary(\n vnode,\n parentSuspense,\n parentComponent,\n node.parentNode,\n document.createElement(\"div\"),\n null,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals,\n true\n /* hydrating */\n );\n const result = hydrateNode(\n node,\n suspense.pendingBranch = vnode.ssContent,\n parentComponent,\n suspense,\n slotScopeIds,\n optimized\n );\n if (suspense.deps === 0) {\n suspense.resolve(false, true);\n }\n return result;\n}\nfunction normalizeSuspenseChildren(vnode) {\n const { shapeFlag, children } = vnode;\n const isSlotChildren = shapeFlag & 32;\n vnode.ssContent = normalizeSuspenseSlot(\n isSlotChildren ? children.default : children\n );\n vnode.ssFallback = isSlotChildren ? normalizeSuspenseSlot(children.fallback) : createVNode(Comment);\n}\nfunction normalizeSuspenseSlot(s) {\n let block;\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(s)) {\n const trackBlock = isBlockTreeEnabled && s._c;\n if (trackBlock) {\n s._d = false;\n openBlock();\n }\n s = s();\n if (trackBlock) {\n s._d = true;\n block = currentBlock;\n closeBlock();\n }\n }\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(s)) {\n const singleChild = filterSingleRoot(s);\n if ( true && !singleChild) {\n warn(` slots expect a single root node.`);\n }\n s = singleChild;\n }\n s = normalizeVNode(s);\n if (block && !s.dynamicChildren) {\n s.dynamicChildren = block.filter((c) => c !== s);\n }\n return s;\n}\nfunction queueEffectWithSuspense(fn, suspense) {\n if (suspense && suspense.pendingBranch) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(fn)) {\n suspense.effects.push(...fn);\n } else {\n suspense.effects.push(fn);\n }\n } else {\n queuePostFlushCb(fn);\n }\n}\nfunction setActiveBranch(suspense, branch) {\n suspense.activeBranch = branch;\n const { vnode, parentComponent } = suspense;\n const el = vnode.el = branch.el;\n if (parentComponent && parentComponent.subTree === vnode) {\n parentComponent.vnode.el = el;\n updateHOCHostEl(parentComponent, el);\n }\n}\nfunction isVNodeSuspensible(vnode) {\n var _a;\n return ((_a = vnode.props) == null ? void 0 : _a.suspensible) != null && vnode.props.suspensible !== false;\n}\n\nfunction watchEffect(effect, options) {\n return doWatch(effect, null, options);\n}\nfunction watchPostEffect(effect, options) {\n return doWatch(\n effect,\n null,\n true ? Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"extend\"])({}, options, { flush: \"post\" }) : undefined\n );\n}\nfunction watchSyncEffect(effect, options) {\n return doWatch(\n effect,\n null,\n true ? Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"extend\"])({}, options, { flush: \"sync\" }) : undefined\n );\n}\nconst INITIAL_WATCHER_VALUE = {};\nfunction watch(source, cb, options) {\n if ( true && !Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(cb)) {\n warn(\n `\\`watch(fn, options?)\\` signature has been moved to a separate API. Use \\`watchEffect(fn, options?)\\` instead. \\`watch\\` now only supports \\`watch(source, cb, options?) signature.`\n );\n }\n return doWatch(source, cb, options);\n}\nfunction doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"]) {\n var _a;\n if ( true && !cb) {\n if (immediate !== void 0) {\n warn(\n `watch() \"immediate\" option is only respected when using the watch(source, callback, options?) signature.`\n );\n }\n if (deep !== void 0) {\n warn(\n `watch() \"deep\" option is only respected when using the watch(source, callback, options?) signature.`\n );\n }\n }\n const warnInvalidSource = (s) => {\n warn(\n `Invalid watch source: `,\n s,\n `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`\n );\n };\n const instance = Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"getCurrentScope\"])() === ((_a = currentInstance) == null ? void 0 : _a.scope) ? currentInstance : null;\n let getter;\n let forceTrigger = false;\n let isMultiSource = false;\n if (Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isRef\"])(source)) {\n getter = () => source.value;\n forceTrigger = Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isShallow\"])(source);\n } else if (Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isReactive\"])(source)) {\n getter = () => source;\n deep = true;\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(source)) {\n isMultiSource = true;\n forceTrigger = source.some((s) => Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isReactive\"])(s) || Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isShallow\"])(s));\n getter = () => source.map((s) => {\n if (Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isRef\"])(s)) {\n return s.value;\n } else if (Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isReactive\"])(s)) {\n return traverse(s);\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(s)) {\n return callWithErrorHandling(s, instance, 2);\n } else {\n true && warnInvalidSource(s);\n }\n });\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(source)) {\n if (cb) {\n getter = () => callWithErrorHandling(source, instance, 2);\n } else {\n getter = () => {\n if (instance && instance.isUnmounted) {\n return;\n }\n if (cleanup) {\n cleanup();\n }\n return callWithAsyncErrorHandling(\n source,\n instance,\n 3,\n [onCleanup]\n );\n };\n }\n } else {\n getter = _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"NOOP\"];\n true && warnInvalidSource(source);\n }\n if (cb && deep) {\n const baseGetter = getter;\n getter = () => traverse(baseGetter());\n }\n let cleanup;\n let onCleanup = (fn) => {\n cleanup = effect.onStop = () => {\n callWithErrorHandling(fn, instance, 4);\n };\n };\n let ssrCleanup;\n if (isInSSRComponentSetup) {\n onCleanup = _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"NOOP\"];\n if (!cb) {\n getter();\n } else if (immediate) {\n callWithAsyncErrorHandling(cb, instance, 3, [\n getter(),\n isMultiSource ? [] : void 0,\n onCleanup\n ]);\n }\n if (flush === \"sync\") {\n const ctx = useSSRContext();\n ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []);\n } else {\n return _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"NOOP\"];\n }\n }\n let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n const job = () => {\n if (!effect.active) {\n return;\n }\n if (cb) {\n const newValue = effect.run();\n if (deep || forceTrigger || (isMultiSource ? newValue.some(\n (v, i) => Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasChanged\"])(v, oldValue[i])\n ) : Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasChanged\"])(newValue, oldValue)) || false) {\n if (cleanup) {\n cleanup();\n }\n callWithAsyncErrorHandling(cb, instance, 3, [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,\n onCleanup\n ]);\n oldValue = newValue;\n }\n } else {\n effect.run();\n }\n };\n job.allowRecurse = !!cb;\n let scheduler;\n if (flush === \"sync\") {\n scheduler = job;\n } else if (flush === \"post\") {\n scheduler = () => queuePostRenderEffect(job, instance && instance.suspense);\n } else {\n job.pre = true;\n if (instance)\n job.id = instance.uid;\n scheduler = () => queueJob(job);\n }\n const effect = new _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"ReactiveEffect\"](getter, scheduler);\n if (true) {\n effect.onTrack = onTrack;\n effect.onTrigger = onTrigger;\n }\n if (cb) {\n if (immediate) {\n job();\n } else {\n oldValue = effect.run();\n }\n } else if (flush === \"post\") {\n queuePostRenderEffect(\n effect.run.bind(effect),\n instance && instance.suspense\n );\n } else {\n effect.run();\n }\n const unwatch = () => {\n effect.stop();\n if (instance && instance.scope) {\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"remove\"])(instance.scope.effects, effect);\n }\n };\n if (ssrCleanup)\n ssrCleanup.push(unwatch);\n return unwatch;\n}\nfunction instanceWatch(source, value, options) {\n const publicThis = this.proxy;\n const getter = Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isString\"])(source) ? source.includes(\".\") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);\n let cb;\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(value)) {\n cb = value;\n } else {\n cb = value.handler;\n options = value;\n }\n const cur = currentInstance;\n setCurrentInstance(this);\n const res = doWatch(getter, cb.bind(publicThis), options);\n if (cur) {\n setCurrentInstance(cur);\n } else {\n unsetCurrentInstance();\n }\n return res;\n}\nfunction createPathGetter(ctx, path) {\n const segments = path.split(\".\");\n return () => {\n let cur = ctx;\n for (let i = 0; i < segments.length && cur; i++) {\n cur = cur[segments[i]];\n }\n return cur;\n };\n}\nfunction traverse(value, seen) {\n if (!Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isObject\"])(value) || value[\"__v_skip\"]) {\n return value;\n }\n seen = seen || /* @__PURE__ */ new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n if (Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"isRef\"])(value)) {\n traverse(value.value, seen);\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(value)) {\n for (let i = 0; i < value.length; i++) {\n traverse(value[i], seen);\n }\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isSet\"])(value) || Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isMap\"])(value)) {\n value.forEach((v) => {\n traverse(v, seen);\n });\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isPlainObject\"])(value)) {\n for (const key in value) {\n traverse(value[key], seen);\n }\n }\n return value;\n}\n\nfunction validateDirectiveName(name) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isBuiltInDirective\"])(name)) {\n warn(\"Do not use built-in directive ids as custom directive id: \" + name);\n }\n}\nfunction withDirectives(vnode, directives) {\n const internalInstance = currentRenderingInstance;\n if (internalInstance === null) {\n true && warn(`withDirectives can only be used inside render functions.`);\n return vnode;\n }\n const instance = getExposeProxy(internalInstance) || internalInstance.proxy;\n const bindings = vnode.dirs || (vnode.dirs = []);\n for (let i = 0; i < directives.length; i++) {\n let [dir, value, arg, modifiers = _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"]] = directives[i];\n if (dir) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(dir)) {\n dir = {\n mounted: dir,\n updated: dir\n };\n }\n if (dir.deep) {\n traverse(value);\n }\n bindings.push({\n dir,\n instance,\n value,\n oldValue: void 0,\n arg,\n modifiers\n });\n }\n }\n return vnode;\n}\nfunction invokeDirectiveHook(vnode, prevVNode, instance, name) {\n const bindings = vnode.dirs;\n const oldBindings = prevVNode && prevVNode.dirs;\n for (let i = 0; i < bindings.length; i++) {\n const binding = bindings[i];\n if (oldBindings) {\n binding.oldValue = oldBindings[i].value;\n }\n let hook = binding.dir[name];\n if (hook) {\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"pauseTracking\"])();\n callWithAsyncErrorHandling(hook, instance, 8, [\n vnode.el,\n binding,\n vnode,\n prevVNode\n ]);\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"resetTracking\"])();\n }\n }\n}\n\nfunction useTransitionState() {\n const state = {\n isMounted: false,\n isLeaving: false,\n isUnmounting: false,\n leavingVNodes: /* @__PURE__ */ new Map()\n };\n onMounted(() => {\n state.isMounted = true;\n });\n onBeforeUnmount(() => {\n state.isUnmounting = true;\n });\n return state;\n}\nconst TransitionHookValidator = [Function, Array];\nconst BaseTransitionPropsValidators = {\n mode: String,\n appear: Boolean,\n persisted: Boolean,\n // enter\n onBeforeEnter: TransitionHookValidator,\n onEnter: TransitionHookValidator,\n onAfterEnter: TransitionHookValidator,\n onEnterCancelled: TransitionHookValidator,\n // leave\n onBeforeLeave: TransitionHookValidator,\n onLeave: TransitionHookValidator,\n onAfterLeave: TransitionHookValidator,\n onLeaveCancelled: TransitionHookValidator,\n // appear\n onBeforeAppear: TransitionHookValidator,\n onAppear: TransitionHookValidator,\n onAfterAppear: TransitionHookValidator,\n onAppearCancelled: TransitionHookValidator\n};\nconst BaseTransitionImpl = {\n name: `BaseTransition`,\n props: BaseTransitionPropsValidators,\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const state = useTransitionState();\n let prevTransitionKey;\n return () => {\n const children = slots.default && getTransitionRawChildren(slots.default(), true);\n if (!children || !children.length) {\n return;\n }\n let child = children[0];\n if (children.length > 1) {\n let hasFound = false;\n for (const c of children) {\n if (c.type !== Comment) {\n if ( true && hasFound) {\n warn(\n \" can only be used on a single element or component. Use for lists.\"\n );\n break;\n }\n child = c;\n hasFound = true;\n if (false)\n {}\n }\n }\n }\n const rawProps = Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"toRaw\"])(props);\n const { mode } = rawProps;\n if ( true && mode && mode !== \"in-out\" && mode !== \"out-in\" && mode !== \"default\") {\n warn(`invalid mode: ${mode}`);\n }\n if (state.isLeaving) {\n return emptyPlaceholder(child);\n }\n const innerChild = getKeepAliveChild(child);\n if (!innerChild) {\n return emptyPlaceholder(child);\n }\n const enterHooks = resolveTransitionHooks(\n innerChild,\n rawProps,\n state,\n instance\n );\n setTransitionHooks(innerChild, enterHooks);\n const oldChild = instance.subTree;\n const oldInnerChild = oldChild && getKeepAliveChild(oldChild);\n let transitionKeyChanged = false;\n const { getTransitionKey } = innerChild.type;\n if (getTransitionKey) {\n const key = getTransitionKey();\n if (prevTransitionKey === void 0) {\n prevTransitionKey = key;\n } else if (key !== prevTransitionKey) {\n prevTransitionKey = key;\n transitionKeyChanged = true;\n }\n }\n if (oldInnerChild && oldInnerChild.type !== Comment && (!isSameVNodeType(innerChild, oldInnerChild) || transitionKeyChanged)) {\n const leavingHooks = resolveTransitionHooks(\n oldInnerChild,\n rawProps,\n state,\n instance\n );\n setTransitionHooks(oldInnerChild, leavingHooks);\n if (mode === \"out-in\") {\n state.isLeaving = true;\n leavingHooks.afterLeave = () => {\n state.isLeaving = false;\n if (instance.update.active !== false) {\n instance.update();\n }\n };\n return emptyPlaceholder(child);\n } else if (mode === \"in-out\" && innerChild.type !== Comment) {\n leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {\n const leavingVNodesCache = getLeavingNodesForType(\n state,\n oldInnerChild\n );\n leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;\n el._leaveCb = () => {\n earlyRemove();\n el._leaveCb = void 0;\n delete enterHooks.delayedLeave;\n };\n enterHooks.delayedLeave = delayedLeave;\n };\n }\n }\n return child;\n };\n }\n};\nconst BaseTransition = BaseTransitionImpl;\nfunction getLeavingNodesForType(state, vnode) {\n const { leavingVNodes } = state;\n let leavingVNodesCache = leavingVNodes.get(vnode.type);\n if (!leavingVNodesCache) {\n leavingVNodesCache = /* @__PURE__ */ Object.create(null);\n leavingVNodes.set(vnode.type, leavingVNodesCache);\n }\n return leavingVNodesCache;\n}\nfunction resolveTransitionHooks(vnode, props, state, instance) {\n const {\n appear,\n mode,\n persisted = false,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onEnterCancelled,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n onLeaveCancelled,\n onBeforeAppear,\n onAppear,\n onAfterAppear,\n onAppearCancelled\n } = props;\n const key = String(vnode.key);\n const leavingVNodesCache = getLeavingNodesForType(state, vnode);\n const callHook = (hook, args) => {\n hook && callWithAsyncErrorHandling(\n hook,\n instance,\n 9,\n args\n );\n };\n const callAsyncHook = (hook, args) => {\n const done = args[1];\n callHook(hook, args);\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(hook)) {\n if (hook.every((hook2) => hook2.length <= 1))\n done();\n } else if (hook.length <= 1) {\n done();\n }\n };\n const hooks = {\n mode,\n persisted,\n beforeEnter(el) {\n let hook = onBeforeEnter;\n if (!state.isMounted) {\n if (appear) {\n hook = onBeforeAppear || onBeforeEnter;\n } else {\n return;\n }\n }\n if (el._leaveCb) {\n el._leaveCb(\n true\n /* cancelled */\n );\n }\n const leavingVNode = leavingVNodesCache[key];\n if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el._leaveCb) {\n leavingVNode.el._leaveCb();\n }\n callHook(hook, [el]);\n },\n enter(el) {\n let hook = onEnter;\n let afterHook = onAfterEnter;\n let cancelHook = onEnterCancelled;\n if (!state.isMounted) {\n if (appear) {\n hook = onAppear || onEnter;\n afterHook = onAfterAppear || onAfterEnter;\n cancelHook = onAppearCancelled || onEnterCancelled;\n } else {\n return;\n }\n }\n let called = false;\n const done = el._enterCb = (cancelled) => {\n if (called)\n return;\n called = true;\n if (cancelled) {\n callHook(cancelHook, [el]);\n } else {\n callHook(afterHook, [el]);\n }\n if (hooks.delayedLeave) {\n hooks.delayedLeave();\n }\n el._enterCb = void 0;\n };\n if (hook) {\n callAsyncHook(hook, [el, done]);\n } else {\n done();\n }\n },\n leave(el, remove) {\n const key2 = String(vnode.key);\n if (el._enterCb) {\n el._enterCb(\n true\n /* cancelled */\n );\n }\n if (state.isUnmounting) {\n return remove();\n }\n callHook(onBeforeLeave, [el]);\n let called = false;\n const done = el._leaveCb = (cancelled) => {\n if (called)\n return;\n called = true;\n remove();\n if (cancelled) {\n callHook(onLeaveCancelled, [el]);\n } else {\n callHook(onAfterLeave, [el]);\n }\n el._leaveCb = void 0;\n if (leavingVNodesCache[key2] === vnode) {\n delete leavingVNodesCache[key2];\n }\n };\n leavingVNodesCache[key2] = vnode;\n if (onLeave) {\n callAsyncHook(onLeave, [el, done]);\n } else {\n done();\n }\n },\n clone(vnode2) {\n return resolveTransitionHooks(vnode2, props, state, instance);\n }\n };\n return hooks;\n}\nfunction emptyPlaceholder(vnode) {\n if (isKeepAlive(vnode)) {\n vnode = cloneVNode(vnode);\n vnode.children = null;\n return vnode;\n }\n}\nfunction getKeepAliveChild(vnode) {\n return isKeepAlive(vnode) ? vnode.children ? vnode.children[0] : void 0 : vnode;\n}\nfunction setTransitionHooks(vnode, hooks) {\n if (vnode.shapeFlag & 6 && vnode.component) {\n setTransitionHooks(vnode.component.subTree, hooks);\n } else if (vnode.shapeFlag & 128) {\n vnode.ssContent.transition = hooks.clone(vnode.ssContent);\n vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);\n } else {\n vnode.transition = hooks;\n }\n}\nfunction getTransitionRawChildren(children, keepComment = false, parentKey) {\n let ret = [];\n let keyedFragmentCount = 0;\n for (let i = 0; i < children.length; i++) {\n let child = children[i];\n const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i);\n if (child.type === Fragment) {\n if (child.patchFlag & 128)\n keyedFragmentCount++;\n ret = ret.concat(\n getTransitionRawChildren(child.children, keepComment, key)\n );\n } else if (keepComment || child.type !== Comment) {\n ret.push(key != null ? cloneVNode(child, { key }) : child);\n }\n }\n if (keyedFragmentCount > 1) {\n for (let i = 0; i < ret.length; i++) {\n ret[i].patchFlag = -2;\n }\n }\n return ret;\n}\n\nfunction defineComponent(options, extraOptions) {\n return Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(options) ? (\n // #8326: extend call and options.name access are considered side-effects\n // by Rollup, so we have to wrap it in a pure-annotated IIFE.\n /* @__PURE__ */ (() => Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"extend\"])({ name: options.name }, extraOptions, { setup: options }))()\n ) : options;\n}\n\nconst isAsyncWrapper = (i) => !!i.type.__asyncLoader;\nfunction defineAsyncComponent(source) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(source)) {\n source = { loader: source };\n }\n const {\n loader,\n loadingComponent,\n errorComponent,\n delay = 200,\n timeout,\n // undefined = never times out\n suspensible = true,\n onError: userOnError\n } = source;\n let pendingRequest = null;\n let resolvedComp;\n let retries = 0;\n const retry = () => {\n retries++;\n pendingRequest = null;\n return load();\n };\n const load = () => {\n let thisRequest;\n return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => {\n err = err instanceof Error ? err : new Error(String(err));\n if (userOnError) {\n return new Promise((resolve, reject) => {\n const userRetry = () => resolve(retry());\n const userFail = () => reject(err);\n userOnError(err, userRetry, userFail, retries + 1);\n });\n } else {\n throw err;\n }\n }).then((comp) => {\n if (thisRequest !== pendingRequest && pendingRequest) {\n return pendingRequest;\n }\n if ( true && !comp) {\n warn(\n `Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.`\n );\n }\n if (comp && (comp.__esModule || comp[Symbol.toStringTag] === \"Module\")) {\n comp = comp.default;\n }\n if ( true && comp && !Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isObject\"])(comp) && !Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isFunction\"])(comp)) {\n throw new Error(`Invalid async component load result: ${comp}`);\n }\n resolvedComp = comp;\n return comp;\n }));\n };\n return defineComponent({\n name: \"AsyncComponentWrapper\",\n __asyncLoader: load,\n get __asyncResolved() {\n return resolvedComp;\n },\n setup() {\n const instance = currentInstance;\n if (resolvedComp) {\n return () => createInnerComp(resolvedComp, instance);\n }\n const onError = (err) => {\n pendingRequest = null;\n handleError(\n err,\n instance,\n 13,\n !errorComponent\n /* do not throw in dev if user provided error component */\n );\n };\n if (suspensible && instance.suspense || isInSSRComponentSetup) {\n return load().then((comp) => {\n return () => createInnerComp(comp, instance);\n }).catch((err) => {\n onError(err);\n return () => errorComponent ? createVNode(errorComponent, {\n error: err\n }) : null;\n });\n }\n const loaded = Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"ref\"])(false);\n const error = Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"ref\"])();\n const delayed = Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"ref\"])(!!delay);\n if (delay) {\n setTimeout(() => {\n delayed.value = false;\n }, delay);\n }\n if (timeout != null) {\n setTimeout(() => {\n if (!loaded.value && !error.value) {\n const err = new Error(\n `Async component timed out after ${timeout}ms.`\n );\n onError(err);\n error.value = err;\n }\n }, timeout);\n }\n load().then(() => {\n loaded.value = true;\n if (instance.parent && isKeepAlive(instance.parent.vnode)) {\n queueJob(instance.parent.update);\n }\n }).catch((err) => {\n onError(err);\n error.value = err;\n });\n return () => {\n if (loaded.value && resolvedComp) {\n return createInnerComp(resolvedComp, instance);\n } else if (error.value && errorComponent) {\n return createVNode(errorComponent, {\n error: error.value\n });\n } else if (loadingComponent && !delayed.value) {\n return createVNode(loadingComponent);\n }\n };\n }\n });\n}\nfunction createInnerComp(comp, parent) {\n const { ref: ref2, props, children, ce } = parent.vnode;\n const vnode = createVNode(comp, props, children);\n vnode.ref = ref2;\n vnode.ce = ce;\n delete parent.vnode.ce;\n return vnode;\n}\n\nconst isKeepAlive = (vnode) => vnode.type.__isKeepAlive;\nconst KeepAliveImpl = {\n name: `KeepAlive`,\n // Marker for special handling inside the renderer. We are not using a ===\n // check directly on KeepAlive in the renderer, because importing it directly\n // would prevent it from being tree-shaken.\n __isKeepAlive: true,\n props: {\n include: [String, RegExp, Array],\n exclude: [String, RegExp, Array],\n max: [String, Number]\n },\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const sharedContext = instance.ctx;\n if (!sharedContext.renderer) {\n return () => {\n const children = slots.default && slots.default();\n return children && children.length === 1 ? children[0] : children;\n };\n }\n const cache = /* @__PURE__ */ new Map();\n const keys = /* @__PURE__ */ new Set();\n let current = null;\n if (true) {\n instance.__v_cache = cache;\n }\n const parentSuspense = instance.suspense;\n const {\n renderer: {\n p: patch,\n m: move,\n um: _unmount,\n o: { createElement }\n }\n } = sharedContext;\n const storageContainer = createElement(\"div\");\n sharedContext.activate = (vnode, container, anchor, isSVG, optimized) => {\n const instance2 = vnode.component;\n move(vnode, container, anchor, 0, parentSuspense);\n patch(\n instance2.vnode,\n vnode,\n container,\n anchor,\n instance2,\n parentSuspense,\n isSVG,\n vnode.slotScopeIds,\n optimized\n );\n queuePostRenderEffect(() => {\n instance2.isDeactivated = false;\n if (instance2.a) {\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"invokeArrayFns\"])(instance2.a);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeMounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n }, parentSuspense);\n if (true) {\n devtoolsComponentAdded(instance2);\n }\n };\n sharedContext.deactivate = (vnode) => {\n const instance2 = vnode.component;\n move(vnode, storageContainer, null, 1, parentSuspense);\n queuePostRenderEffect(() => {\n if (instance2.da) {\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"invokeArrayFns\"])(instance2.da);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeUnmounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n instance2.isDeactivated = true;\n }, parentSuspense);\n if (true) {\n devtoolsComponentAdded(instance2);\n }\n };\n function unmount(vnode) {\n resetShapeFlag(vnode);\n _unmount(vnode, instance, parentSuspense, true);\n }\n function pruneCache(filter) {\n cache.forEach((vnode, key) => {\n const name = getComponentName(vnode.type);\n if (name && (!filter || !filter(name))) {\n pruneCacheEntry(key);\n }\n });\n }\n function pruneCacheEntry(key) {\n const cached = cache.get(key);\n if (!current || !isSameVNodeType(cached, current)) {\n unmount(cached);\n } else if (current) {\n resetShapeFlag(current);\n }\n cache.delete(key);\n keys.delete(key);\n }\n watch(\n () => [props.include, props.exclude],\n ([include, exclude]) => {\n include && pruneCache((name) => matches(include, name));\n exclude && pruneCache((name) => !matches(exclude, name));\n },\n // prune post-render after `current` has been updated\n { flush: \"post\", deep: true }\n );\n let pendingCacheKey = null;\n const cacheSubtree = () => {\n if (pendingCacheKey != null) {\n cache.set(pendingCacheKey, getInnerChild(instance.subTree));\n }\n };\n onMounted(cacheSubtree);\n onUpdated(cacheSubtree);\n onBeforeUnmount(() => {\n cache.forEach((cached) => {\n const { subTree, suspense } = instance;\n const vnode = getInnerChild(subTree);\n if (cached.type === vnode.type && cached.key === vnode.key) {\n resetShapeFlag(vnode);\n const da = vnode.component.da;\n da && queuePostRenderEffect(da, suspense);\n return;\n }\n unmount(cached);\n });\n });\n return () => {\n pendingCacheKey = null;\n if (!slots.default) {\n return null;\n }\n const children = slots.default();\n const rawVNode = children[0];\n if (children.length > 1) {\n if (true) {\n warn(`KeepAlive should contain exactly one component child.`);\n }\n current = null;\n return children;\n } else if (!isVNode(rawVNode) || !(rawVNode.shapeFlag & 4) && !(rawVNode.shapeFlag & 128)) {\n current = null;\n return rawVNode;\n }\n let vnode = getInnerChild(rawVNode);\n const comp = vnode.type;\n const name = getComponentName(\n isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : comp\n );\n const { include, exclude, max } = props;\n if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) {\n current = vnode;\n return rawVNode;\n }\n const key = vnode.key == null ? comp : vnode.key;\n const cachedVNode = cache.get(key);\n if (vnode.el) {\n vnode = cloneVNode(vnode);\n if (rawVNode.shapeFlag & 128) {\n rawVNode.ssContent = vnode;\n }\n }\n pendingCacheKey = key;\n if (cachedVNode) {\n vnode.el = cachedVNode.el;\n vnode.component = cachedVNode.component;\n if (vnode.transition) {\n setTransitionHooks(vnode, vnode.transition);\n }\n vnode.shapeFlag |= 512;\n keys.delete(key);\n keys.add(key);\n } else {\n keys.add(key);\n if (max && keys.size > parseInt(max, 10)) {\n pruneCacheEntry(keys.values().next().value);\n }\n }\n vnode.shapeFlag |= 256;\n current = vnode;\n return isSuspense(rawVNode.type) ? rawVNode : vnode;\n };\n }\n};\nconst KeepAlive = KeepAliveImpl;\nfunction matches(pattern, name) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(pattern)) {\n return pattern.some((p) => matches(p, name));\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isString\"])(pattern)) {\n return pattern.split(\",\").includes(name);\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isRegExp\"])(pattern)) {\n return pattern.test(name);\n }\n return false;\n}\nfunction onActivated(hook, target) {\n registerKeepAliveHook(hook, \"a\", target);\n}\nfunction onDeactivated(hook, target) {\n registerKeepAliveHook(hook, \"da\", target);\n}\nfunction registerKeepAliveHook(hook, type, target = currentInstance) {\n const wrappedHook = hook.__wdc || (hook.__wdc = () => {\n let current = target;\n while (current) {\n if (current.isDeactivated) {\n return;\n }\n current = current.parent;\n }\n return hook();\n });\n injectHook(type, wrappedHook, target);\n if (target) {\n let current = target.parent;\n while (current && current.parent) {\n if (isKeepAlive(current.parent.vnode)) {\n injectToKeepAliveRoot(wrappedHook, type, target, current);\n }\n current = current.parent;\n }\n }\n}\nfunction injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {\n const injected = injectHook(\n type,\n hook,\n keepAliveRoot,\n true\n /* prepend */\n );\n onUnmounted(() => {\n Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"remove\"])(keepAliveRoot[type], injected);\n }, target);\n}\nfunction resetShapeFlag(vnode) {\n vnode.shapeFlag &= ~256;\n vnode.shapeFlag &= ~512;\n}\nfunction getInnerChild(vnode) {\n return vnode.shapeFlag & 128 ? vnode.ssContent : vnode;\n}\n\nfunction injectHook(type, hook, target = currentInstance, prepend = false) {\n if (target) {\n const hooks = target[type] || (target[type] = []);\n const wrappedHook = hook.__weh || (hook.__weh = (...args) => {\n if (target.isUnmounted) {\n return;\n }\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"pauseTracking\"])();\n setCurrentInstance(target);\n const res = callWithAsyncErrorHandling(hook, target, type, args);\n unsetCurrentInstance();\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"resetTracking\"])();\n return res;\n });\n if (prepend) {\n hooks.unshift(wrappedHook);\n } else {\n hooks.push(wrappedHook);\n }\n return wrappedHook;\n } else if (true) {\n const apiName = Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(ErrorTypeStrings[type].replace(/ hook$/, \"\"));\n warn(\n `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().` + (` If you are using async setup(), make sure to register lifecycle hooks before the first await statement.` )\n );\n }\n}\nconst createHook = (lifecycle) => (hook, target = currentInstance) => (\n // post-create lifecycle registrations are noops during SSR (except for serverPrefetch)\n (!isInSSRComponentSetup || lifecycle === \"sp\") && injectHook(lifecycle, (...args) => hook(...args), target)\n);\nconst onBeforeMount = createHook(\"bm\");\nconst onMounted = createHook(\"m\");\nconst onBeforeUpdate = createHook(\"bu\");\nconst onUpdated = createHook(\"u\");\nconst onBeforeUnmount = createHook(\"bum\");\nconst onUnmounted = createHook(\"um\");\nconst onServerPrefetch = createHook(\"sp\");\nconst onRenderTriggered = createHook(\n \"rtg\"\n);\nconst onRenderTracked = createHook(\n \"rtc\"\n);\nfunction onErrorCaptured(hook, target = currentInstance) {\n injectHook(\"ec\", hook, target);\n}\n\nconst COMPONENTS = \"components\";\nconst DIRECTIVES = \"directives\";\nfunction resolveComponent(name, maybeSelfReference) {\n return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;\n}\nconst NULL_DYNAMIC_COMPONENT = Symbol.for(\"v-ndc\");\nfunction resolveDynamicComponent(component) {\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isString\"])(component)) {\n return resolveAsset(COMPONENTS, component, false) || component;\n } else {\n return component || NULL_DYNAMIC_COMPONENT;\n }\n}\nfunction resolveDirective(name) {\n return resolveAsset(DIRECTIVES, name);\n}\nfunction resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {\n const instance = currentRenderingInstance || currentInstance;\n if (instance) {\n const Component = instance.type;\n if (type === COMPONENTS) {\n const selfName = getComponentName(\n Component,\n false\n /* do not include inferred name to avoid breaking existing code */\n );\n if (selfName && (selfName === name || selfName === Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"camelize\"])(name) || selfName === Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"capitalize\"])(Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"camelize\"])(name)))) {\n return Component;\n }\n }\n const res = (\n // local registration\n // check instance[type] first which is resolved for options API\n resolve(instance[type] || Component[type], name) || // global registration\n resolve(instance.appContext[type], name)\n );\n if (!res && maybeSelfReference) {\n return Component;\n }\n if ( true && warnMissing && !res) {\n const extra = type === COMPONENTS ? `\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;\n warn(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);\n }\n return res;\n } else if (true) {\n warn(\n `resolve${Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"capitalize\"])(type.slice(0, -1))} can only be used in render() or setup().`\n );\n }\n}\nfunction resolve(registry, name) {\n return registry && (registry[name] || registry[Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"camelize\"])(name)] || registry[Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"capitalize\"])(Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"camelize\"])(name))]);\n}\n\nfunction renderList(source, renderItem, cache, index) {\n let ret;\n const cached = cache && cache[index];\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(source) || Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isString\"])(source)) {\n ret = new Array(source.length);\n for (let i = 0, l = source.length; i < l; i++) {\n ret[i] = renderItem(source[i], i, void 0, cached && cached[i]);\n }\n } else if (typeof source === \"number\") {\n if ( true && !Number.isInteger(source)) {\n warn(`The v-for range expect an integer value but got ${source}.`);\n }\n ret = new Array(source);\n for (let i = 0; i < source; i++) {\n ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);\n }\n } else if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isObject\"])(source)) {\n if (source[Symbol.iterator]) {\n ret = Array.from(\n source,\n (item, i) => renderItem(item, i, void 0, cached && cached[i])\n );\n } else {\n const keys = Object.keys(source);\n ret = new Array(keys.length);\n for (let i = 0, l = keys.length; i < l; i++) {\n const key = keys[i];\n ret[i] = renderItem(source[key], key, i, cached && cached[i]);\n }\n }\n } else {\n ret = [];\n }\n if (cache) {\n cache[index] = ret;\n }\n return ret;\n}\n\nfunction createSlots(slots, dynamicSlots) {\n for (let i = 0; i < dynamicSlots.length; i++) {\n const slot = dynamicSlots[i];\n if (Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isArray\"])(slot)) {\n for (let j = 0; j < slot.length; j++) {\n slots[slot[j].name] = slot[j].fn;\n }\n } else if (slot) {\n slots[slot.name] = slot.key ? (...args) => {\n const res = slot.fn(...args);\n if (res)\n res.key = slot.key;\n return res;\n } : slot.fn;\n }\n }\n return slots;\n}\n\nfunction renderSlot(slots, name, props = {}, fallback, noSlotted) {\n if (currentRenderingInstance.isCE || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.isCE) {\n if (name !== \"default\")\n props.name = name;\n return createVNode(\"slot\", props, fallback && fallback());\n }\n let slot = slots[name];\n if ( true && slot && slot.length > 1) {\n warn(\n `SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template.`\n );\n slot = () => [];\n }\n if (slot && slot._c) {\n slot._d = false;\n }\n openBlock();\n const validSlotContent = slot && ensureValidVNode(slot(props));\n const rendered = createBlock(\n Fragment,\n {\n key: props.key || // slot content array of a dynamic conditional slot may have a branch\n // key attached in the `createSlots` helper, respect that\n validSlotContent && validSlotContent.key || `_${name}`\n },\n validSlotContent || (fallback ? fallback() : []),\n validSlotContent && slots._ === 1 ? 64 : -2\n );\n if (!noSlotted && rendered.scopeId) {\n rendered.slotScopeIds = [rendered.scopeId + \"-s\"];\n }\n if (slot && slot._c) {\n slot._d = true;\n }\n return rendered;\n}\nfunction ensureValidVNode(vnodes) {\n return vnodes.some((child) => {\n if (!isVNode(child))\n return true;\n if (child.type === Comment)\n return false;\n if (child.type === Fragment && !ensureValidVNode(child.children))\n return false;\n return true;\n }) ? vnodes : null;\n}\n\nfunction toHandlers(obj, preserveCaseIfNecessary) {\n const ret = {};\n if ( true && !Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isObject\"])(obj)) {\n warn(`v-on with no argument expects an object value.`);\n return ret;\n }\n for (const key in obj) {\n ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"toHandlerKey\"])(key)] = obj[key];\n }\n return ret;\n}\n\nconst getPublicInstance = (i) => {\n if (!i)\n return null;\n if (isStatefulComponent(i))\n return getExposeProxy(i) || i.proxy;\n return getPublicInstance(i.parent);\n};\nconst publicPropertiesMap = (\n // Move PURE marker to new line to workaround compiler discarding it\n // due to type annotation\n /* @__PURE__ */ Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"extend\"])(/* @__PURE__ */ Object.create(null), {\n $: (i) => i,\n $el: (i) => i.vnode.el,\n $data: (i) => i.data,\n $props: (i) => true ? Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"shallowReadonly\"])(i.props) : undefined,\n $attrs: (i) => true ? Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"shallowReadonly\"])(i.attrs) : undefined,\n $slots: (i) => true ? Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"shallowReadonly\"])(i.slots) : undefined,\n $refs: (i) => true ? Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"shallowReadonly\"])(i.refs) : undefined,\n $parent: (i) => getPublicInstance(i.parent),\n $root: (i) => getPublicInstance(i.root),\n $emit: (i) => i.emit,\n $options: (i) => true ? resolveMergedOptions(i) : undefined,\n $forceUpdate: (i) => i.f || (i.f = () => queueJob(i.update)),\n $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)),\n $watch: (i) => true ? instanceWatch.bind(i) : undefined\n })\n);\nconst isReservedPrefix = (key) => key === \"_\" || key === \"$\";\nconst hasSetupBinding = (state, key) => state !== _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"] && !state.__isScriptSetup && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(state, key);\nconst PublicInstanceProxyHandlers = {\n get({ _: instance }, key) {\n const { ctx, setupState, data, props, accessCache, type, appContext } = instance;\n if ( true && key === \"__isVue\") {\n return true;\n }\n let normalizedProps;\n if (key[0] !== \"$\") {\n const n = accessCache[key];\n if (n !== void 0) {\n switch (n) {\n case 1 /* SETUP */:\n return setupState[key];\n case 2 /* DATA */:\n return data[key];\n case 4 /* CONTEXT */:\n return ctx[key];\n case 3 /* PROPS */:\n return props[key];\n }\n } else if (hasSetupBinding(setupState, key)) {\n accessCache[key] = 1 /* SETUP */;\n return setupState[key];\n } else if (data !== _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"] && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(data, key)) {\n accessCache[key] = 2 /* DATA */;\n return data[key];\n } else if (\n // only cache other properties when instance has declared (thus stable)\n // props\n (normalizedProps = instance.propsOptions[0]) && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(normalizedProps, key)\n ) {\n accessCache[key] = 3 /* PROPS */;\n return props[key];\n } else if (ctx !== _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"] && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if ( false || shouldCacheAccess) {\n accessCache[key] = 0 /* OTHER */;\n }\n }\n const publicGetter = publicPropertiesMap[key];\n let cssModule, globalProperties;\n if (publicGetter) {\n if (key === \"$attrs\") {\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"track\"])(instance, \"get\", key);\n true && markAttrsAccessed();\n } else if ( true && key === \"$slots\") {\n Object(_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__[\"track\"])(instance, \"get\", key);\n }\n return publicGetter(instance);\n } else if (\n // css module (injected by vue-loader)\n (cssModule = type.__cssModules) && (cssModule = cssModule[key])\n ) {\n return cssModule;\n } else if (ctx !== _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"] && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (\n // global properties\n globalProperties = appContext.config.globalProperties, Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(globalProperties, key)\n ) {\n {\n return globalProperties[key];\n }\n } else if ( true && currentRenderingInstance && (!Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"isString\"])(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading\n // to infinite warning loop\n key.indexOf(\"__v\") !== 0)) {\n if (data !== _vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"EMPTY_OBJ\"] && isReservedPrefix(key[0]) && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(data, key)) {\n warn(\n `Property ${JSON.stringify(\n key\n )} must be accessed via $data because it starts with a reserved character (\"$\" or \"_\") and is not proxied on the render context.`\n );\n } else if (instance === currentRenderingInstance) {\n warn(\n `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`\n );\n }\n }\n },\n set({ _: instance }, key, value) {\n const { data, setupState, ctx } = instance;\n if (hasSetupBinding(setupState, key)) {\n setupState[key] = value;\n return true;\n } else if ( true && setupState.__isScriptSetup && Object(_vue_shared__WEBPACK_IMPORTED_MODULE_1__[\"hasOwn\"])(setupState, key)) {\n warn(`Cannot mutate