{"version":3,"file":"js/vendors-1c26b0d7.min.js?t=1743075070513","mappings":"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","sources":["webpack://frontend/./node_modules/vue-i18n/dist/vue-i18n.esm-bundler.js"],"sourcesContent":["/*!\n * vue-i18n v9.2.2\n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\nimport { getGlobalThis, format, makeSymbol, isPlainObject, isArray, isString, hasOwn, isObject, isBoolean, isRegExp, isFunction, inBrowser, assign, isNumber, warn, createEmitter, isEmptyObject } from '@intlify/shared';\nimport { CoreWarnCodes, CompileErrorCodes, createCompileError, DEFAULT_LOCALE, updateFallbackLocale, setFallbackContext, createCoreContext, clearDateTimeFormat, clearNumberFormat, setAdditionalMeta, getFallbackContext, NOT_REOSLVED, isTranslateFallbackWarn, isTranslateMissingWarn, parseTranslateArgs, translate, MISSING_RESOLVE_VALUE, parseDateTimeArgs, datetime, parseNumberArgs, number, fallbackWithLocaleChain, NUMBER_FORMAT_OPTIONS_KEYS, DATETIME_FORMAT_OPTIONS_KEYS, registerMessageCompiler, compileToFunction, registerMessageResolver, resolveValue, registerLocaleFallbacker, setDevToolsHook } from '@intlify/core-base';\nimport { createVNode, Text, ref, computed, watch, getCurrentInstance, Fragment, h, effectScope, inject, onMounted, onUnmounted, shallowRef, onBeforeMount, isRef } from 'vue';\nimport { setupDevtoolsPlugin } from '@vue/devtools-api';\nimport { VueDevToolsLabels, VueDevToolsPlaceholders, VueDevToolsTimelineColors } from '@intlify/vue-devtools';\n\n/**\r\n * Vue I18n Version\r\n *\r\n * @remarks\r\n * Semver format. Same format as the package.json `version` field.\r\n *\r\n * @VueI18nGeneral\r\n */\r\nconst VERSION = '9.2.2';\r\n/**\r\n * This is only called in esm-bundler builds.\r\n * istanbul-ignore-next\r\n */\r\nfunction initFeatureFlags() {\r\n let needWarn = false;\r\n if (typeof __VUE_I18N_FULL_INSTALL__ !== 'boolean') {\r\n needWarn = true;\r\n getGlobalThis().__VUE_I18N_FULL_INSTALL__ = true;\r\n }\r\n if (typeof __VUE_I18N_LEGACY_API__ !== 'boolean') {\r\n needWarn = true;\r\n getGlobalThis().__VUE_I18N_LEGACY_API__ = true;\r\n }\r\n if (typeof __INTLIFY_PROD_DEVTOOLS__ !== 'boolean') {\r\n getGlobalThis().__INTLIFY_PROD_DEVTOOLS__ = false;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && needWarn) {\r\n console.warn(`You are running the esm-bundler build of vue-i18n. It is recommended to ` +\r\n `configure your bundler to explicitly replace feature flag globals ` +\r\n `with boolean literals to get proper tree-shaking in the final bundle.`);\r\n }\r\n}\n\nlet code$1 = CoreWarnCodes.__EXTEND_POINT__;\r\nconst inc$1 = () => ++code$1;\r\nconst I18nWarnCodes = {\r\n FALLBACK_TO_ROOT: code$1,\r\n NOT_SUPPORTED_PRESERVE: inc$1(),\r\n NOT_SUPPORTED_FORMATTER: inc$1(),\r\n NOT_SUPPORTED_PRESERVE_DIRECTIVE: inc$1(),\r\n NOT_SUPPORTED_GET_CHOICE_INDEX: inc$1(),\r\n COMPONENT_NAME_LEGACY_COMPATIBLE: inc$1(),\r\n NOT_FOUND_PARENT_SCOPE: inc$1() // 13\r\n};\r\nconst warnMessages = {\r\n [I18nWarnCodes.FALLBACK_TO_ROOT]: `Fall back to {type} '{key}' with root locale.`,\r\n [I18nWarnCodes.NOT_SUPPORTED_PRESERVE]: `Not supported 'preserve'.`,\r\n [I18nWarnCodes.NOT_SUPPORTED_FORMATTER]: `Not supported 'formatter'.`,\r\n [I18nWarnCodes.NOT_SUPPORTED_PRESERVE_DIRECTIVE]: `Not supported 'preserveDirectiveContent'.`,\r\n [I18nWarnCodes.NOT_SUPPORTED_GET_CHOICE_INDEX]: `Not supported 'getChoiceIndex'.`,\r\n [I18nWarnCodes.COMPONENT_NAME_LEGACY_COMPATIBLE]: `Component name legacy compatible: '{name}' -> 'i18n'`,\r\n [I18nWarnCodes.NOT_FOUND_PARENT_SCOPE]: `Not found parent scope. use the global scope.`\r\n};\r\nfunction getWarnMessage(code, ...args) {\r\n return format(warnMessages[code], ...args);\r\n}\n\nlet code = CompileErrorCodes.__EXTEND_POINT__;\r\nconst inc = () => ++code;\r\nconst I18nErrorCodes = {\r\n // composer module errors\r\n UNEXPECTED_RETURN_TYPE: code,\r\n // legacy module errors\r\n INVALID_ARGUMENT: inc(),\r\n // i18n module errors\r\n MUST_BE_CALL_SETUP_TOP: inc(),\r\n NOT_INSLALLED: inc(),\r\n NOT_AVAILABLE_IN_LEGACY_MODE: inc(),\r\n // directive module errors\r\n REQUIRED_VALUE: inc(),\r\n INVALID_VALUE: inc(),\r\n // vue-devtools errors\r\n CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN: inc(),\r\n NOT_INSLALLED_WITH_PROVIDE: inc(),\r\n // unexpected error\r\n UNEXPECTED_ERROR: inc(),\r\n // not compatible legacy vue-i18n constructor\r\n NOT_COMPATIBLE_LEGACY_VUE_I18N: inc(),\r\n // bridge support vue 2.x only\r\n BRIDGE_SUPPORT_VUE_2_ONLY: inc(),\r\n // need to define `i18n` option in `allowComposition: true` and `useScope: 'local' at `useI18n``\r\n MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION: inc(),\r\n // Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly\r\n NOT_AVAILABLE_COMPOSITION_IN_LEGACY: inc(),\r\n // for enhancement\r\n __EXTEND_POINT__: inc() // 29\r\n};\r\nfunction createI18nError(code, ...args) {\r\n return createCompileError(code, null, (process.env.NODE_ENV !== 'production') ? { messages: errorMessages, args } : undefined);\r\n}\r\nconst errorMessages = {\r\n [I18nErrorCodes.UNEXPECTED_RETURN_TYPE]: 'Unexpected return type in composer',\r\n [I18nErrorCodes.INVALID_ARGUMENT]: 'Invalid argument',\r\n [I18nErrorCodes.MUST_BE_CALL_SETUP_TOP]: 'Must be called at the top of a `setup` function',\r\n [I18nErrorCodes.NOT_INSLALLED]: 'Need to install with `app.use` function',\r\n [I18nErrorCodes.UNEXPECTED_ERROR]: 'Unexpected error',\r\n [I18nErrorCodes.NOT_AVAILABLE_IN_LEGACY_MODE]: 'Not available in legacy mode',\r\n [I18nErrorCodes.REQUIRED_VALUE]: `Required in value: {0}`,\r\n [I18nErrorCodes.INVALID_VALUE]: `Invalid value`,\r\n [I18nErrorCodes.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN]: `Cannot setup vue-devtools plugin`,\r\n [I18nErrorCodes.NOT_INSLALLED_WITH_PROVIDE]: 'Need to install with `provide` function',\r\n [I18nErrorCodes.NOT_COMPATIBLE_LEGACY_VUE_I18N]: 'Not compatible legacy VueI18n.',\r\n [I18nErrorCodes.BRIDGE_SUPPORT_VUE_2_ONLY]: 'vue-i18n-bridge support Vue 2.x only',\r\n [I18nErrorCodes.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION]: 'Must define ‘i18n’ option or custom block in Composition API with using local scope in Legacy API mode',\r\n [I18nErrorCodes.NOT_AVAILABLE_COMPOSITION_IN_LEGACY]: 'Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly'\r\n};\n\nconst TransrateVNodeSymbol = \r\n/* #__PURE__*/ makeSymbol('__transrateVNode');\r\nconst DatetimePartsSymbol = /* #__PURE__*/ makeSymbol('__datetimeParts');\r\nconst NumberPartsSymbol = /* #__PURE__*/ makeSymbol('__numberParts');\r\nconst EnableEmitter = /* #__PURE__*/ makeSymbol('__enableEmitter');\r\nconst DisableEmitter = /* #__PURE__*/ makeSymbol('__disableEmitter');\r\nconst SetPluralRulesSymbol = makeSymbol('__setPluralRules');\r\nmakeSymbol('__intlifyMeta');\r\nconst InejctWithOption = /* #__PURE__*/ makeSymbol('__injectWithOption');\r\nconst __VUE_I18N_BRIDGE__ = '__VUE_I18N_BRIDGE__';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\r\n/**\r\n * Transform flat json in obj to normal json in obj\r\n */\r\nfunction handleFlatJson(obj) {\r\n // check obj\r\n if (!isObject(obj)) {\r\n return obj;\r\n }\r\n for (const key in obj) {\r\n // check key\r\n if (!hasOwn(obj, key)) {\r\n continue;\r\n }\r\n // handle for normal json\r\n if (!key.includes('.')) {\r\n // recursive process value if value is also a object\r\n if (isObject(obj[key])) {\r\n handleFlatJson(obj[key]);\r\n }\r\n }\r\n // handle for flat json, transform to normal json\r\n else {\r\n // go to the last object\r\n const subKeys = key.split('.');\r\n const lastIndex = subKeys.length - 1;\r\n let currentObj = obj;\r\n for (let i = 0; i < lastIndex; i++) {\r\n if (!(subKeys[i] in currentObj)) {\r\n currentObj[subKeys[i]] = {};\r\n }\r\n currentObj = currentObj[subKeys[i]];\r\n }\r\n // update last object value, delete old property\r\n currentObj[subKeys[lastIndex]] = obj[key];\r\n delete obj[key];\r\n // recursive process value if value is also a object\r\n if (isObject(currentObj[subKeys[lastIndex]])) {\r\n handleFlatJson(currentObj[subKeys[lastIndex]]);\r\n }\r\n }\r\n }\r\n return obj;\r\n}\r\nfunction getLocaleMessages(locale, options) {\r\n const { messages, __i18n, messageResolver, flatJson } = options;\r\n // prettier-ignore\r\n const ret = isPlainObject(messages)\r\n ? messages\r\n : isArray(__i18n)\r\n ? {}\r\n : { [locale]: {} };\r\n // merge locale messages of i18n custom block\r\n if (isArray(__i18n)) {\r\n __i18n.forEach(custom => {\r\n if ('locale' in custom && 'resource' in custom) {\r\n const { locale, resource } = custom;\r\n if (locale) {\r\n ret[locale] = ret[locale] || {};\r\n deepCopy(resource, ret[locale]);\r\n }\r\n else {\r\n deepCopy(resource, ret);\r\n }\r\n }\r\n else {\r\n isString(custom) && deepCopy(JSON.parse(custom), ret);\r\n }\r\n });\r\n }\r\n // handle messages for flat json\r\n if (messageResolver == null && flatJson) {\r\n for (const key in ret) {\r\n if (hasOwn(ret, key)) {\r\n handleFlatJson(ret[key]);\r\n }\r\n }\r\n }\r\n return ret;\r\n}\r\nconst isNotObjectOrIsArray = (val) => !isObject(val) || isArray(val);\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\nfunction deepCopy(src, des) {\r\n // src and des should both be objects, and non of then can be a array\r\n if (isNotObjectOrIsArray(src) || isNotObjectOrIsArray(des)) {\r\n throw createI18nError(I18nErrorCodes.INVALID_VALUE);\r\n }\r\n for (const key in src) {\r\n if (hasOwn(src, key)) {\r\n if (isNotObjectOrIsArray(src[key]) || isNotObjectOrIsArray(des[key])) {\r\n // replace with src[key] when:\r\n // src[key] or des[key] is not a object, or\r\n // src[key] or des[key] is a array\r\n des[key] = src[key];\r\n }\r\n else {\r\n // src[key] and des[key] are both object, merge them\r\n deepCopy(src[key], des[key]);\r\n }\r\n }\r\n }\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getComponentOptions(instance) {\r\n return instance.type ;\r\n}\r\nfunction adjustI18nResources(global, options, componentOptions // eslint-disable-line @typescript-eslint/no-explicit-any\r\n) {\r\n let messages = isObject(options.messages) ? options.messages : {};\r\n if ('__i18nGlobal' in componentOptions) {\r\n messages = getLocaleMessages(global.locale.value, {\r\n messages,\r\n __i18n: componentOptions.__i18nGlobal\r\n });\r\n }\r\n // merge locale messages\r\n const locales = Object.keys(messages);\r\n if (locales.length) {\r\n locales.forEach(locale => {\r\n global.mergeLocaleMessage(locale, messages[locale]);\r\n });\r\n }\r\n {\r\n // merge datetime formats\r\n if (isObject(options.datetimeFormats)) {\r\n const locales = Object.keys(options.datetimeFormats);\r\n if (locales.length) {\r\n locales.forEach(locale => {\r\n global.mergeDateTimeFormat(locale, options.datetimeFormats[locale]);\r\n });\r\n }\r\n }\r\n // merge number formats\r\n if (isObject(options.numberFormats)) {\r\n const locales = Object.keys(options.numberFormats);\r\n if (locales.length) {\r\n locales.forEach(locale => {\r\n global.mergeNumberFormat(locale, options.numberFormats[locale]);\r\n });\r\n }\r\n }\r\n }\r\n}\r\nfunction createTextNode(key) {\r\n return createVNode(Text, null, key, 0)\r\n ;\r\n}\r\n/* eslint-enable @typescript-eslint/no-explicit-any */\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\r\n// extend VNode interface\r\nconst DEVTOOLS_META = '__INTLIFY_META__';\r\nlet composerID = 0;\r\nfunction defineCoreMissingHandler(missing) {\r\n return ((ctx, locale, key, type) => {\r\n return missing(locale, key, getCurrentInstance() || undefined, type);\r\n });\r\n}\r\n// for Intlify DevTools\r\nconst getMetaInfo = () => {\r\n const instance = getCurrentInstance();\r\n let meta = null; // eslint-disable-line @typescript-eslint/no-explicit-any\r\n return instance && (meta = getComponentOptions(instance)[DEVTOOLS_META])\r\n ? { [DEVTOOLS_META]: meta } // eslint-disable-line @typescript-eslint/no-explicit-any\r\n : null;\r\n};\r\n/**\r\n * Create composer interface factory\r\n *\r\n * @internal\r\n */\r\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\r\nfunction createComposer(options = {}, VueI18nLegacy) {\r\n const { __root } = options;\r\n const _isGlobal = __root === undefined;\r\n let _inheritLocale = isBoolean(options.inheritLocale)\r\n ? options.inheritLocale\r\n : true;\r\n const _locale = ref(\r\n // prettier-ignore\r\n __root && _inheritLocale\r\n ? __root.locale.value\r\n : isString(options.locale)\r\n ? options.locale\r\n : DEFAULT_LOCALE);\r\n const _fallbackLocale = ref(\r\n // prettier-ignore\r\n __root && _inheritLocale\r\n ? __root.fallbackLocale.value\r\n : isString(options.fallbackLocale) ||\r\n isArray(options.fallbackLocale) ||\r\n isPlainObject(options.fallbackLocale) ||\r\n options.fallbackLocale === false\r\n ? options.fallbackLocale\r\n : _locale.value);\r\n const _messages = ref(getLocaleMessages(_locale.value, options));\r\n // prettier-ignore\r\n const _datetimeFormats = ref(isPlainObject(options.datetimeFormats)\r\n ? options.datetimeFormats\r\n : { [_locale.value]: {} })\r\n ;\r\n // prettier-ignore\r\n const _numberFormats = ref(isPlainObject(options.numberFormats)\r\n ? options.numberFormats\r\n : { [_locale.value]: {} })\r\n ;\r\n // warning suppress options\r\n // prettier-ignore\r\n let _missingWarn = __root\r\n ? __root.missingWarn\r\n : isBoolean(options.missingWarn) || isRegExp(options.missingWarn)\r\n ? options.missingWarn\r\n : true;\r\n // prettier-ignore\r\n let _fallbackWarn = __root\r\n ? __root.fallbackWarn\r\n : isBoolean(options.fallbackWarn) || isRegExp(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : true;\r\n // prettier-ignore\r\n let _fallbackRoot = __root\r\n ? __root.fallbackRoot\r\n : isBoolean(options.fallbackRoot)\r\n ? options.fallbackRoot\r\n : true;\r\n // configure fall back to root\r\n let _fallbackFormat = !!options.fallbackFormat;\r\n // runtime missing\r\n let _missing = isFunction(options.missing) ? options.missing : null;\r\n let _runtimeMissing = isFunction(options.missing)\r\n ? defineCoreMissingHandler(options.missing)\r\n : null;\r\n // postTranslation handler\r\n let _postTranslation = isFunction(options.postTranslation)\r\n ? options.postTranslation\r\n : null;\r\n // prettier-ignore\r\n let _warnHtmlMessage = __root\r\n ? __root.warnHtmlMessage\r\n : isBoolean(options.warnHtmlMessage)\r\n ? options.warnHtmlMessage\r\n : true;\r\n let _escapeParameter = !!options.escapeParameter;\r\n // custom linked modifiers\r\n // prettier-ignore\r\n const _modifiers = __root\r\n ? __root.modifiers\r\n : isPlainObject(options.modifiers)\r\n ? options.modifiers\r\n : {};\r\n // pluralRules\r\n let _pluralRules = options.pluralRules || (__root && __root.pluralRules);\r\n // runtime context\r\n // eslint-disable-next-line prefer-const\r\n let _context;\r\n const getCoreContext = () => {\r\n _isGlobal && setFallbackContext(null);\r\n const ctxOptions = {\r\n version: VERSION,\r\n locale: _locale.value,\r\n fallbackLocale: _fallbackLocale.value,\r\n messages: _messages.value,\r\n modifiers: _modifiers,\r\n pluralRules: _pluralRules,\r\n missing: _runtimeMissing === null ? undefined : _runtimeMissing,\r\n missingWarn: _missingWarn,\r\n fallbackWarn: _fallbackWarn,\r\n fallbackFormat: _fallbackFormat,\r\n unresolving: true,\r\n postTranslation: _postTranslation === null ? undefined : _postTranslation,\r\n warnHtmlMessage: _warnHtmlMessage,\r\n escapeParameter: _escapeParameter,\r\n messageResolver: options.messageResolver,\r\n __meta: { framework: 'vue' }\r\n };\r\n {\r\n ctxOptions.datetimeFormats = _datetimeFormats.value;\r\n ctxOptions.numberFormats = _numberFormats.value;\r\n ctxOptions.__datetimeFormatters = isPlainObject(_context)\r\n ? _context.__datetimeFormatters\r\n : undefined;\r\n ctxOptions.__numberFormatters = isPlainObject(_context)\r\n ? _context.__numberFormatters\r\n : undefined;\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n ctxOptions.__v_emitter = isPlainObject(_context)\r\n ? _context.__v_emitter\r\n : undefined;\r\n }\r\n const ctx = createCoreContext(ctxOptions);\r\n _isGlobal && setFallbackContext(ctx);\r\n return ctx;\r\n };\r\n _context = getCoreContext();\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n // track reactivity\r\n function trackReactivityValues() {\r\n return [\r\n _locale.value,\r\n _fallbackLocale.value,\r\n _messages.value,\r\n _datetimeFormats.value,\r\n _numberFormats.value\r\n ]\r\n ;\r\n }\r\n // locale\r\n const locale = computed({\r\n get: () => _locale.value,\r\n set: val => {\r\n _locale.value = val;\r\n _context.locale = _locale.value;\r\n }\r\n });\r\n // fallbackLocale\r\n const fallbackLocale = computed({\r\n get: () => _fallbackLocale.value,\r\n set: val => {\r\n _fallbackLocale.value = val;\r\n _context.fallbackLocale = _fallbackLocale.value;\r\n updateFallbackLocale(_context, _locale.value, val);\r\n }\r\n });\r\n // messages\r\n const messages = computed(() => _messages.value);\r\n // datetimeFormats\r\n const datetimeFormats = /* #__PURE__*/ computed(() => _datetimeFormats.value);\r\n // numberFormats\r\n const numberFormats = /* #__PURE__*/ computed(() => _numberFormats.value);\r\n // getPostTranslationHandler\r\n function getPostTranslationHandler() {\r\n return isFunction(_postTranslation) ? _postTranslation : null;\r\n }\r\n // setPostTranslationHandler\r\n function setPostTranslationHandler(handler) {\r\n _postTranslation = handler;\r\n _context.postTranslation = handler;\r\n }\r\n // getMissingHandler\r\n function getMissingHandler() {\r\n return _missing;\r\n }\r\n // setMissingHandler\r\n function setMissingHandler(handler) {\r\n if (handler !== null) {\r\n _runtimeMissing = defineCoreMissingHandler(handler);\r\n }\r\n _missing = handler;\r\n _context.missing = _runtimeMissing;\r\n }\r\n function isResolvedTranslateMessage(type, arg // eslint-disable-line @typescript-eslint/no-explicit-any\r\n ) {\r\n return type !== 'translate' || !arg.resolvedMessage;\r\n }\r\n const wrapWithDeps = (fn, argumentParser, warnType, fallbackSuccess, fallbackFail, successCondition) => {\r\n trackReactivityValues(); // track reactive dependency\r\n // NOTE: experimental !!\r\n let ret;\r\n if ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {\r\n try {\r\n setAdditionalMeta(getMetaInfo());\r\n if (!_isGlobal) {\r\n _context.fallbackContext = __root\r\n ? getFallbackContext()\r\n : undefined;\r\n }\r\n ret = fn(_context);\r\n }\r\n finally {\r\n setAdditionalMeta(null);\r\n if (!_isGlobal) {\r\n _context.fallbackContext = undefined;\r\n }\r\n }\r\n }\r\n else {\r\n ret = fn(_context);\r\n }\r\n if (isNumber(ret) && ret === NOT_REOSLVED) {\r\n const [key, arg2] = argumentParser();\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n __root &&\r\n isString(key) &&\r\n isResolvedTranslateMessage(warnType, arg2)) {\r\n if (_fallbackRoot &&\r\n (isTranslateFallbackWarn(_fallbackWarn, key) ||\r\n isTranslateMissingWarn(_missingWarn, key))) {\r\n warn(getWarnMessage(I18nWarnCodes.FALLBACK_TO_ROOT, {\r\n key,\r\n type: warnType\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const { __v_emitter: emitter } = _context;\r\n if (emitter && _fallbackRoot) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type: warnType,\r\n key,\r\n to: 'global',\r\n groupId: `${warnType}:${key}`\r\n });\r\n }\r\n }\r\n }\r\n return __root && _fallbackRoot\r\n ? fallbackSuccess(__root)\r\n : fallbackFail(key);\r\n }\r\n else if (successCondition(ret)) {\r\n return ret;\r\n }\r\n else {\r\n /* istanbul ignore next */\r\n throw createI18nError(I18nErrorCodes.UNEXPECTED_RETURN_TYPE);\r\n }\r\n };\r\n // t\r\n function t(...args) {\r\n return wrapWithDeps(context => Reflect.apply(translate, null, [context, ...args]), () => parseTranslateArgs(...args), 'translate', root => Reflect.apply(root.t, root, [...args]), key => key, val => isString(val));\r\n }\r\n // rt\r\n function rt(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n if (arg3 && !isObject(arg3)) {\r\n throw createI18nError(I18nErrorCodes.INVALID_ARGUMENT);\r\n }\r\n return t(...[arg1, arg2, assign({ resolvedMessage: true }, arg3 || {})]);\r\n }\r\n // d\r\n function d(...args) {\r\n return wrapWithDeps(context => Reflect.apply(datetime, null, [context, ...args]), () => parseDateTimeArgs(...args), 'datetime format', root => Reflect.apply(root.d, root, [...args]), () => MISSING_RESOLVE_VALUE, val => isString(val));\r\n }\r\n // n\r\n function n(...args) {\r\n return wrapWithDeps(context => Reflect.apply(number, null, [context, ...args]), () => parseNumberArgs(...args), 'number format', root => Reflect.apply(root.n, root, [...args]), () => MISSING_RESOLVE_VALUE, val => isString(val));\r\n }\r\n // for custom processor\r\n function normalize(values) {\r\n return values.map(val => isString(val) || isNumber(val) || isBoolean(val)\r\n ? createTextNode(String(val))\r\n : val);\r\n }\r\n const interpolate = (val) => val;\r\n const processor = {\r\n normalize,\r\n interpolate,\r\n type: 'vnode'\r\n };\r\n // transrateVNode, using for `i18n-t` component\r\n function transrateVNode(...args) {\r\n return wrapWithDeps(context => {\r\n let ret;\r\n const _context = context;\r\n try {\r\n _context.processor = processor;\r\n ret = Reflect.apply(translate, null, [_context, ...args]);\r\n }\r\n finally {\r\n _context.processor = null;\r\n }\r\n return ret;\r\n }, () => parseTranslateArgs(...args), 'translate', \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n root => root[TransrateVNodeSymbol](...args), key => [createTextNode(key)], val => isArray(val));\r\n }\r\n // numberParts, using for `i18n-n` component\r\n function numberParts(...args) {\r\n return wrapWithDeps(context => Reflect.apply(number, null, [context, ...args]), () => parseNumberArgs(...args), 'number format', \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n root => root[NumberPartsSymbol](...args), () => [], val => isString(val) || isArray(val));\r\n }\r\n // datetimeParts, using for `i18n-d` component\r\n function datetimeParts(...args) {\r\n return wrapWithDeps(context => Reflect.apply(datetime, null, [context, ...args]), () => parseDateTimeArgs(...args), 'datetime format', \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n root => root[DatetimePartsSymbol](...args), () => [], val => isString(val) || isArray(val));\r\n }\r\n function setPluralRules(rules) {\r\n _pluralRules = rules;\r\n _context.pluralRules = _pluralRules;\r\n }\r\n // te\r\n function te(key, locale) {\r\n const targetLocale = isString(locale) ? locale : _locale.value;\r\n const message = getLocaleMessage(targetLocale);\r\n return _context.messageResolver(message, key) !== null;\r\n }\r\n function resolveMessages(key) {\r\n let messages = null;\r\n const locales = fallbackWithLocaleChain(_context, _fallbackLocale.value, _locale.value);\r\n for (let i = 0; i < locales.length; i++) {\r\n const targetLocaleMessages = _messages.value[locales[i]] || {};\r\n const messageValue = _context.messageResolver(targetLocaleMessages, key);\r\n if (messageValue != null) {\r\n messages = messageValue;\r\n break;\r\n }\r\n }\r\n return messages;\r\n }\r\n // tm\r\n function tm(key) {\r\n const messages = resolveMessages(key);\r\n // prettier-ignore\r\n return messages != null\r\n ? messages\r\n : __root\r\n ? __root.tm(key) || {}\r\n : {};\r\n }\r\n // getLocaleMessage\r\n function getLocaleMessage(locale) {\r\n return (_messages.value[locale] || {});\r\n }\r\n // setLocaleMessage\r\n function setLocaleMessage(locale, message) {\r\n _messages.value[locale] = message;\r\n _context.messages = _messages.value;\r\n }\r\n // mergeLocaleMessage\r\n function mergeLocaleMessage(locale, message) {\r\n _messages.value[locale] = _messages.value[locale] || {};\r\n deepCopy(message, _messages.value[locale]);\r\n _context.messages = _messages.value;\r\n }\r\n // getDateTimeFormat\r\n function getDateTimeFormat(locale) {\r\n return _datetimeFormats.value[locale] || {};\r\n }\r\n // setDateTimeFormat\r\n function setDateTimeFormat(locale, format) {\r\n _datetimeFormats.value[locale] = format;\r\n _context.datetimeFormats = _datetimeFormats.value;\r\n clearDateTimeFormat(_context, locale, format);\r\n }\r\n // mergeDateTimeFormat\r\n function mergeDateTimeFormat(locale, format) {\r\n _datetimeFormats.value[locale] = assign(_datetimeFormats.value[locale] || {}, format);\r\n _context.datetimeFormats = _datetimeFormats.value;\r\n clearDateTimeFormat(_context, locale, format);\r\n }\r\n // getNumberFormat\r\n function getNumberFormat(locale) {\r\n return _numberFormats.value[locale] || {};\r\n }\r\n // setNumberFormat\r\n function setNumberFormat(locale, format) {\r\n _numberFormats.value[locale] = format;\r\n _context.numberFormats = _numberFormats.value;\r\n clearNumberFormat(_context, locale, format);\r\n }\r\n // mergeNumberFormat\r\n function mergeNumberFormat(locale, format) {\r\n _numberFormats.value[locale] = assign(_numberFormats.value[locale] || {}, format);\r\n _context.numberFormats = _numberFormats.value;\r\n clearNumberFormat(_context, locale, format);\r\n }\r\n // for debug\r\n composerID++;\r\n // watch root locale & fallbackLocale\r\n if (__root && inBrowser) {\r\n watch(__root.locale, (val) => {\r\n if (_inheritLocale) {\r\n _locale.value = val;\r\n _context.locale = val;\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n }\r\n });\r\n watch(__root.fallbackLocale, (val) => {\r\n if (_inheritLocale) {\r\n _fallbackLocale.value = val;\r\n _context.fallbackLocale = val;\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n }\r\n });\r\n }\r\n // define basic composition API!\r\n const composer = {\r\n id: composerID,\r\n locale,\r\n fallbackLocale,\r\n get inheritLocale() {\r\n return _inheritLocale;\r\n },\r\n set inheritLocale(val) {\r\n _inheritLocale = val;\r\n if (val && __root) {\r\n _locale.value = __root.locale.value;\r\n _fallbackLocale.value = __root.fallbackLocale.value;\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n }\r\n },\r\n get availableLocales() {\r\n return Object.keys(_messages.value).sort();\r\n },\r\n messages,\r\n get modifiers() {\r\n return _modifiers;\r\n },\r\n get pluralRules() {\r\n return _pluralRules || {};\r\n },\r\n get isGlobal() {\r\n return _isGlobal;\r\n },\r\n get missingWarn() {\r\n return _missingWarn;\r\n },\r\n set missingWarn(val) {\r\n _missingWarn = val;\r\n _context.missingWarn = _missingWarn;\r\n },\r\n get fallbackWarn() {\r\n return _fallbackWarn;\r\n },\r\n set fallbackWarn(val) {\r\n _fallbackWarn = val;\r\n _context.fallbackWarn = _fallbackWarn;\r\n },\r\n get fallbackRoot() {\r\n return _fallbackRoot;\r\n },\r\n set fallbackRoot(val) {\r\n _fallbackRoot = val;\r\n },\r\n get fallbackFormat() {\r\n return _fallbackFormat;\r\n },\r\n set fallbackFormat(val) {\r\n _fallbackFormat = val;\r\n _context.fallbackFormat = _fallbackFormat;\r\n },\r\n get warnHtmlMessage() {\r\n return _warnHtmlMessage;\r\n },\r\n set warnHtmlMessage(val) {\r\n _warnHtmlMessage = val;\r\n _context.warnHtmlMessage = val;\r\n },\r\n get escapeParameter() {\r\n return _escapeParameter;\r\n },\r\n set escapeParameter(val) {\r\n _escapeParameter = val;\r\n _context.escapeParameter = val;\r\n },\r\n t,\r\n getLocaleMessage,\r\n setLocaleMessage,\r\n mergeLocaleMessage,\r\n getPostTranslationHandler,\r\n setPostTranslationHandler,\r\n getMissingHandler,\r\n setMissingHandler,\r\n [SetPluralRulesSymbol]: setPluralRules\r\n };\r\n {\r\n composer.datetimeFormats = datetimeFormats;\r\n composer.numberFormats = numberFormats;\r\n composer.rt = rt;\r\n composer.te = te;\r\n composer.tm = tm;\r\n composer.d = d;\r\n composer.n = n;\r\n composer.getDateTimeFormat = getDateTimeFormat;\r\n composer.setDateTimeFormat = setDateTimeFormat;\r\n composer.mergeDateTimeFormat = mergeDateTimeFormat;\r\n composer.getNumberFormat = getNumberFormat;\r\n composer.setNumberFormat = setNumberFormat;\r\n composer.mergeNumberFormat = mergeNumberFormat;\r\n composer[InejctWithOption] = options.__injectWithOption;\r\n composer[TransrateVNodeSymbol] = transrateVNode;\r\n composer[DatetimePartsSymbol] = datetimeParts;\r\n composer[NumberPartsSymbol] = numberParts;\r\n }\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n composer[EnableEmitter] = (emitter) => {\r\n _context.__v_emitter = emitter;\r\n };\r\n composer[DisableEmitter] = () => {\r\n _context.__v_emitter = undefined;\r\n };\r\n }\r\n return composer;\r\n}\r\n/* eslint-enable @typescript-eslint/no-explicit-any */\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\r\n/**\r\n * Convert to I18n Composer Options from VueI18n Options\r\n *\r\n * @internal\r\n */\r\nfunction convertComposerOptions(options) {\r\n const locale = isString(options.locale) ? options.locale : DEFAULT_LOCALE;\r\n const fallbackLocale = isString(options.fallbackLocale) ||\r\n isArray(options.fallbackLocale) ||\r\n isPlainObject(options.fallbackLocale) ||\r\n options.fallbackLocale === false\r\n ? options.fallbackLocale\r\n : locale;\r\n const missing = isFunction(options.missing) ? options.missing : undefined;\r\n const missingWarn = isBoolean(options.silentTranslationWarn) ||\r\n isRegExp(options.silentTranslationWarn)\r\n ? !options.silentTranslationWarn\r\n : true;\r\n const fallbackWarn = isBoolean(options.silentFallbackWarn) ||\r\n isRegExp(options.silentFallbackWarn)\r\n ? !options.silentFallbackWarn\r\n : true;\r\n const fallbackRoot = isBoolean(options.fallbackRoot)\r\n ? options.fallbackRoot\r\n : true;\r\n const fallbackFormat = !!options.formatFallbackMessages;\r\n const modifiers = isPlainObject(options.modifiers) ? options.modifiers : {};\r\n const pluralizationRules = options.pluralizationRules;\r\n const postTranslation = isFunction(options.postTranslation)\r\n ? options.postTranslation\r\n : undefined;\r\n const warnHtmlMessage = isString(options.warnHtmlInMessage)\r\n ? options.warnHtmlInMessage !== 'off'\r\n : true;\r\n const escapeParameter = !!options.escapeParameterHtml;\r\n const inheritLocale = isBoolean(options.sync) ? options.sync : true;\r\n if ((process.env.NODE_ENV !== 'production') && options.formatter) {\r\n warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_FORMATTER));\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && options.preserveDirectiveContent) {\r\n warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_PRESERVE_DIRECTIVE));\r\n }\r\n let messages = options.messages;\r\n if (isPlainObject(options.sharedMessages)) {\r\n const sharedMessages = options.sharedMessages;\r\n const locales = Object.keys(sharedMessages);\r\n messages = locales.reduce((messages, locale) => {\r\n const message = messages[locale] || (messages[locale] = {});\r\n assign(message, sharedMessages[locale]);\r\n return messages;\r\n }, (messages || {}));\r\n }\r\n const { __i18n, __root, __injectWithOption } = options;\r\n const datetimeFormats = options.datetimeFormats;\r\n const numberFormats = options.numberFormats;\r\n const flatJson = options.flatJson;\r\n return {\r\n locale,\r\n fallbackLocale,\r\n messages,\r\n flatJson,\r\n datetimeFormats,\r\n numberFormats,\r\n missing,\r\n missingWarn,\r\n fallbackWarn,\r\n fallbackRoot,\r\n fallbackFormat,\r\n modifiers,\r\n pluralRules: pluralizationRules,\r\n postTranslation,\r\n warnHtmlMessage,\r\n escapeParameter,\r\n messageResolver: options.messageResolver,\r\n inheritLocale,\r\n __i18n,\r\n __root,\r\n __injectWithOption\r\n };\r\n}\r\n/**\r\n * create VueI18n interface factory\r\n *\r\n * @internal\r\n */\r\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\r\nfunction createVueI18n(options = {}, VueI18nLegacy) {\r\n {\r\n const composer = createComposer(convertComposerOptions(options));\r\n // defines VueI18n\r\n const vueI18n = {\r\n // id\r\n id: composer.id,\r\n // locale\r\n get locale() {\r\n return composer.locale.value;\r\n },\r\n set locale(val) {\r\n composer.locale.value = val;\r\n },\r\n // fallbackLocale\r\n get fallbackLocale() {\r\n return composer.fallbackLocale.value;\r\n },\r\n set fallbackLocale(val) {\r\n composer.fallbackLocale.value = val;\r\n },\r\n // messages\r\n get messages() {\r\n return composer.messages.value;\r\n },\r\n // datetimeFormats\r\n get datetimeFormats() {\r\n return composer.datetimeFormats.value;\r\n },\r\n // numberFormats\r\n get numberFormats() {\r\n return composer.numberFormats.value;\r\n },\r\n // availableLocales\r\n get availableLocales() {\r\n return composer.availableLocales;\r\n },\r\n // formatter\r\n get formatter() {\r\n (process.env.NODE_ENV !== 'production') && warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_FORMATTER));\r\n // dummy\r\n return {\r\n interpolate() {\r\n return [];\r\n }\r\n };\r\n },\r\n set formatter(val) {\r\n (process.env.NODE_ENV !== 'production') && warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_FORMATTER));\r\n },\r\n // missing\r\n get missing() {\r\n return composer.getMissingHandler();\r\n },\r\n set missing(handler) {\r\n composer.setMissingHandler(handler);\r\n },\r\n // silentTranslationWarn\r\n get silentTranslationWarn() {\r\n return isBoolean(composer.missingWarn)\r\n ? !composer.missingWarn\r\n : composer.missingWarn;\r\n },\r\n set silentTranslationWarn(val) {\r\n composer.missingWarn = isBoolean(val) ? !val : val;\r\n },\r\n // silentFallbackWarn\r\n get silentFallbackWarn() {\r\n return isBoolean(composer.fallbackWarn)\r\n ? !composer.fallbackWarn\r\n : composer.fallbackWarn;\r\n },\r\n set silentFallbackWarn(val) {\r\n composer.fallbackWarn = isBoolean(val) ? !val : val;\r\n },\r\n // modifiers\r\n get modifiers() {\r\n return composer.modifiers;\r\n },\r\n // formatFallbackMessages\r\n get formatFallbackMessages() {\r\n return composer.fallbackFormat;\r\n },\r\n set formatFallbackMessages(val) {\r\n composer.fallbackFormat = val;\r\n },\r\n // postTranslation\r\n get postTranslation() {\r\n return composer.getPostTranslationHandler();\r\n },\r\n set postTranslation(handler) {\r\n composer.setPostTranslationHandler(handler);\r\n },\r\n // sync\r\n get sync() {\r\n return composer.inheritLocale;\r\n },\r\n set sync(val) {\r\n composer.inheritLocale = val;\r\n },\r\n // warnInHtmlMessage\r\n get warnHtmlInMessage() {\r\n return composer.warnHtmlMessage ? 'warn' : 'off';\r\n },\r\n set warnHtmlInMessage(val) {\r\n composer.warnHtmlMessage = val !== 'off';\r\n },\r\n // escapeParameterHtml\r\n get escapeParameterHtml() {\r\n return composer.escapeParameter;\r\n },\r\n set escapeParameterHtml(val) {\r\n composer.escapeParameter = val;\r\n },\r\n // preserveDirectiveContent\r\n get preserveDirectiveContent() {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_PRESERVE_DIRECTIVE));\r\n return true;\r\n },\r\n set preserveDirectiveContent(val) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_PRESERVE_DIRECTIVE));\r\n },\r\n // pluralizationRules\r\n get pluralizationRules() {\r\n return composer.pluralRules || {};\r\n },\r\n // for internal\r\n __composer: composer,\r\n // t\r\n t(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n const options = {};\r\n let list = null;\r\n let named = null;\r\n if (!isString(arg1)) {\r\n throw createI18nError(I18nErrorCodes.INVALID_ARGUMENT);\r\n }\r\n const key = arg1;\r\n if (isString(arg2)) {\r\n options.locale = arg2;\r\n }\r\n else if (isArray(arg2)) {\r\n list = arg2;\r\n }\r\n else if (isPlainObject(arg2)) {\r\n named = arg2;\r\n }\r\n if (isArray(arg3)) {\r\n list = arg3;\r\n }\r\n else if (isPlainObject(arg3)) {\r\n named = arg3;\r\n }\r\n // return composer.t(key, (list || named || {}) as any, options)\r\n return Reflect.apply(composer.t, composer, [\r\n key,\r\n (list || named || {}),\r\n options\r\n ]);\r\n },\r\n rt(...args) {\r\n return Reflect.apply(composer.rt, composer, [...args]);\r\n },\r\n // tc\r\n tc(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n const options = { plural: 1 };\r\n let list = null;\r\n let named = null;\r\n if (!isString(arg1)) {\r\n throw createI18nError(I18nErrorCodes.INVALID_ARGUMENT);\r\n }\r\n const key = arg1;\r\n if (isString(arg2)) {\r\n options.locale = arg2;\r\n }\r\n else if (isNumber(arg2)) {\r\n options.plural = arg2;\r\n }\r\n else if (isArray(arg2)) {\r\n list = arg2;\r\n }\r\n else if (isPlainObject(arg2)) {\r\n named = arg2;\r\n }\r\n if (isString(arg3)) {\r\n options.locale = arg3;\r\n }\r\n else if (isArray(arg3)) {\r\n list = arg3;\r\n }\r\n else if (isPlainObject(arg3)) {\r\n named = arg3;\r\n }\r\n // return composer.t(key, (list || named || {}) as any, options)\r\n return Reflect.apply(composer.t, composer, [\r\n key,\r\n (list || named || {}),\r\n options\r\n ]);\r\n },\r\n // te\r\n te(key, locale) {\r\n return composer.te(key, locale);\r\n },\r\n // tm\r\n tm(key) {\r\n return composer.tm(key);\r\n },\r\n // getLocaleMessage\r\n getLocaleMessage(locale) {\r\n return composer.getLocaleMessage(locale);\r\n },\r\n // setLocaleMessage\r\n setLocaleMessage(locale, message) {\r\n composer.setLocaleMessage(locale, message);\r\n },\r\n // mergeLocaleMessage\r\n mergeLocaleMessage(locale, message) {\r\n composer.mergeLocaleMessage(locale, message);\r\n },\r\n // d\r\n d(...args) {\r\n return Reflect.apply(composer.d, composer, [...args]);\r\n },\r\n // getDateTimeFormat\r\n getDateTimeFormat(locale) {\r\n return composer.getDateTimeFormat(locale);\r\n },\r\n // setDateTimeFormat\r\n setDateTimeFormat(locale, format) {\r\n composer.setDateTimeFormat(locale, format);\r\n },\r\n // mergeDateTimeFormat\r\n mergeDateTimeFormat(locale, format) {\r\n composer.mergeDateTimeFormat(locale, format);\r\n },\r\n // n\r\n n(...args) {\r\n return Reflect.apply(composer.n, composer, [...args]);\r\n },\r\n // getNumberFormat\r\n getNumberFormat(locale) {\r\n return composer.getNumberFormat(locale);\r\n },\r\n // setNumberFormat\r\n setNumberFormat(locale, format) {\r\n composer.setNumberFormat(locale, format);\r\n },\r\n // mergeNumberFormat\r\n mergeNumberFormat(locale, format) {\r\n composer.mergeNumberFormat(locale, format);\r\n },\r\n // getChoiceIndex\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n getChoiceIndex(choice, choicesLength) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_GET_CHOICE_INDEX));\r\n return -1;\r\n },\r\n // for internal\r\n __onComponentInstanceCreated(target) {\r\n const { componentInstanceCreatedListener } = options;\r\n if (componentInstanceCreatedListener) {\r\n componentInstanceCreatedListener(target, vueI18n);\r\n }\r\n }\r\n };\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n vueI18n.__enableEmitter = (emitter) => {\r\n const __composer = composer;\r\n __composer[EnableEmitter] && __composer[EnableEmitter](emitter);\r\n };\r\n vueI18n.__disableEmitter = () => {\r\n const __composer = composer;\r\n __composer[DisableEmitter] && __composer[DisableEmitter]();\r\n };\r\n }\r\n return vueI18n;\r\n }\r\n}\r\n/* eslint-enable @typescript-eslint/no-explicit-any */\n\nconst baseFormatProps = {\r\n tag: {\r\n type: [String, Object]\r\n },\r\n locale: {\r\n type: String\r\n },\r\n scope: {\r\n type: String,\r\n // NOTE: avoid https://github.com/microsoft/rushstack/issues/1050\r\n validator: (val /* ComponetI18nScope */) => val === 'parent' || val === 'global',\r\n default: 'parent' /* ComponetI18nScope */\r\n },\r\n i18n: {\r\n type: Object\r\n }\r\n};\n\nfunction getInterpolateArg(\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n{ slots }, // SetupContext,\r\nkeys) {\r\n if (keys.length === 1 && keys[0] === 'default') {\r\n // default slot with list\r\n const ret = slots.default ? slots.default() : [];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n return ret.reduce((slot, current) => {\r\n return (slot = [\r\n ...slot,\r\n ...(isArray(current.children) ? current.children : [current])\r\n ]);\r\n }, []);\r\n }\r\n else {\r\n // named slots\r\n return keys.reduce((arg, key) => {\r\n const slot = slots[key];\r\n if (slot) {\r\n arg[key] = slot();\r\n }\r\n return arg;\r\n }, {});\r\n }\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getFragmentableTag(tag) {\r\n return Fragment ;\r\n}\n\n/**\r\n * Translation Component\r\n *\r\n * @remarks\r\n * See the following items for property about details\r\n *\r\n * @VueI18nSee [TranslationProps](component#translationprops)\r\n * @VueI18nSee [BaseFormatProps](component#baseformatprops)\r\n * @VueI18nSee [Component Interpolation](../guide/advanced/component)\r\n *\r\n * @example\r\n * ```html\r\n *
\r\n * \r\n * \r\n * {{ $t('tos') }}\r\n * \r\n * \r\n *
\r\n * ```\r\n * ```js\r\n * import { createApp } from 'vue'\r\n * import { createI18n } from 'vue-i18n'\r\n *\r\n * const messages = {\r\n * en: {\r\n * tos: 'Term of Service',\r\n * term: 'I accept xxx {0}.'\r\n * },\r\n * ja: {\r\n * tos: '利用規約',\r\n * term: '私は xxx の{0}に同意します。'\r\n * }\r\n * }\r\n *\r\n * const i18n = createI18n({\r\n * locale: 'en',\r\n * messages\r\n * })\r\n *\r\n * const app = createApp({\r\n * data: {\r\n * url: '/term'\r\n * }\r\n * }).use(i18n).mount('#app')\r\n * ```\r\n *\r\n * @VueI18nComponent\r\n */\r\nconst Translation = /* defineComponent */ {\r\n /* eslint-disable */\r\n name: 'i18n-t',\r\n props: assign({\r\n keypath: {\r\n type: String,\r\n required: true\r\n },\r\n plural: {\r\n type: [Number, String],\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n validator: (val) => isNumber(val) || !isNaN(val)\r\n }\r\n }, baseFormatProps),\r\n /* eslint-enable */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setup(props, context) {\r\n const { slots, attrs } = context;\r\n // NOTE: avoid https://github.com/microsoft/rushstack/issues/1050\r\n const i18n = props.i18n ||\r\n useI18n({\r\n useScope: props.scope,\r\n __useComponent: true\r\n });\r\n return () => {\r\n const keys = Object.keys(slots).filter(key => key !== '_');\r\n const options = {};\r\n if (props.locale) {\r\n options.locale = props.locale;\r\n }\r\n if (props.plural !== undefined) {\r\n options.plural = isString(props.plural) ? +props.plural : props.plural;\r\n }\r\n const arg = getInterpolateArg(context, keys);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const children = i18n[TransrateVNodeSymbol](props.keypath, arg, options);\r\n const assignedAttrs = assign({}, attrs);\r\n const tag = isString(props.tag) || isObject(props.tag)\r\n ? props.tag\r\n : getFragmentableTag();\r\n return h(tag, assignedAttrs, children);\r\n };\r\n }\r\n};\n\nfunction isVNode(target) {\r\n return isArray(target) && !isString(target[0]);\r\n}\r\nfunction renderFormatter(props, context, slotKeys, partFormatter) {\r\n const { slots, attrs } = context;\r\n return () => {\r\n const options = { part: true };\r\n let overrides = {};\r\n if (props.locale) {\r\n options.locale = props.locale;\r\n }\r\n if (isString(props.format)) {\r\n options.key = props.format;\r\n }\r\n else if (isObject(props.format)) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n if (isString(props.format.key)) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n options.key = props.format.key;\r\n }\r\n // Filter out number format options only\r\n overrides = Object.keys(props.format).reduce((options, prop) => {\r\n return slotKeys.includes(prop)\r\n ? assign({}, options, { [prop]: props.format[prop] }) // eslint-disable-line @typescript-eslint/no-explicit-any\r\n : options;\r\n }, {});\r\n }\r\n const parts = partFormatter(...[props.value, options, overrides]);\r\n let children = [options.key];\r\n if (isArray(parts)) {\r\n children = parts.map((part, index) => {\r\n const slot = slots[part.type];\r\n const node = slot\r\n ? slot({ [part.type]: part.value, index, parts })\r\n : [part.value];\r\n if (isVNode(node)) {\r\n node[0].key = `${part.type}-${index}`;\r\n }\r\n return node;\r\n });\r\n }\r\n else if (isString(parts)) {\r\n children = [parts];\r\n }\r\n const assignedAttrs = assign({}, attrs);\r\n const tag = isString(props.tag) || isObject(props.tag)\r\n ? props.tag\r\n : getFragmentableTag();\r\n return h(tag, assignedAttrs, children);\r\n };\r\n}\n\n/**\r\n * Number Format Component\r\n *\r\n * @remarks\r\n * See the following items for property about details\r\n *\r\n * @VueI18nSee [FormattableProps](component#formattableprops)\r\n * @VueI18nSee [BaseFormatProps](component#baseformatprops)\r\n * @VueI18nSee [Custom Formatting](../guide/essentials/number#custom-formatting)\r\n *\r\n * @VueI18nDanger\r\n * Not supported IE, due to no support `Intl.NumberFormat#formatToParts` in [IE](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/formatToParts)\r\n *\r\n * If you want to use it, you need to use [polyfill](https://github.com/formatjs/formatjs/tree/main/packages/intl-numberformat)\r\n *\r\n * @VueI18nComponent\r\n */\r\nconst NumberFormat = /* defineComponent */ {\r\n /* eslint-disable */\r\n name: 'i18n-n',\r\n props: assign({\r\n value: {\r\n type: Number,\r\n required: true\r\n },\r\n format: {\r\n type: [String, Object]\r\n }\r\n }, baseFormatProps),\r\n /* eslint-enable */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setup(props, context) {\r\n const i18n = props.i18n ||\r\n useI18n({ useScope: 'parent', __useComponent: true });\r\n return renderFormatter(props, context, NUMBER_FORMAT_OPTIONS_KEYS, (...args) => \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n i18n[NumberPartsSymbol](...args));\r\n }\r\n};\n\n/**\r\n * Datetime Format Component\r\n *\r\n * @remarks\r\n * See the following items for property about details\r\n *\r\n * @VueI18nSee [FormattableProps](component#formattableprops)\r\n * @VueI18nSee [BaseFormatProps](component#baseformatprops)\r\n * @VueI18nSee [Custom Formatting](../guide/essentials/datetime#custom-formatting)\r\n *\r\n * @VueI18nDanger\r\n * Not supported IE, due to no support `Intl.DateTimeFormat#formatToParts` in [IE](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatToParts)\r\n *\r\n * If you want to use it, you need to use [polyfill](https://github.com/formatjs/formatjs/tree/main/packages/intl-datetimeformat)\r\n *\r\n * @VueI18nComponent\r\n */\r\nconst DatetimeFormat = /*defineComponent */ {\r\n /* eslint-disable */\r\n name: 'i18n-d',\r\n props: assign({\r\n value: {\r\n type: [Number, Date],\r\n required: true\r\n },\r\n format: {\r\n type: [String, Object]\r\n }\r\n }, baseFormatProps),\r\n /* eslint-enable */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setup(props, context) {\r\n const i18n = props.i18n ||\r\n useI18n({ useScope: 'parent', __useComponent: true });\r\n return renderFormatter(props, context, DATETIME_FORMAT_OPTIONS_KEYS, (...args) => \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n i18n[DatetimePartsSymbol](...args));\r\n }\r\n};\n\nfunction getComposer$2(i18n, instance) {\r\n const i18nInternal = i18n;\r\n if (i18n.mode === 'composition') {\r\n return (i18nInternal.__getInstance(instance) || i18n.global);\r\n }\r\n else {\r\n const vueI18n = i18nInternal.__getInstance(instance);\r\n return vueI18n != null\r\n ? vueI18n.__composer\r\n : i18n.global.__composer;\r\n }\r\n}\r\nfunction vTDirective(i18n) {\r\n const _process = (binding) => {\r\n const { instance, modifiers, value } = binding;\r\n /* istanbul ignore if */\r\n if (!instance || !instance.$) {\r\n throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);\r\n }\r\n const composer = getComposer$2(i18n, instance.$);\r\n if ((process.env.NODE_ENV !== 'production') && modifiers.preserve) {\r\n warn(getWarnMessage(I18nWarnCodes.NOT_SUPPORTED_PRESERVE));\r\n }\r\n const parsedValue = parseValue(value);\r\n return [\r\n Reflect.apply(composer.t, composer, [...makeParams(parsedValue)]),\r\n composer\r\n ];\r\n };\r\n const register = (el, binding) => {\r\n const [textContent, composer] = _process(binding);\r\n if (inBrowser && i18n.global === composer) {\r\n // global scope only\r\n el.__i18nWatcher = watch(composer.locale, () => {\r\n binding.instance && binding.instance.$forceUpdate();\r\n });\r\n }\r\n el.__composer = composer;\r\n el.textContent = textContent;\r\n };\r\n const unregister = (el) => {\r\n if (inBrowser && el.__i18nWatcher) {\r\n el.__i18nWatcher();\r\n el.__i18nWatcher = undefined;\r\n delete el.__i18nWatcher;\r\n }\r\n if (el.__composer) {\r\n el.__composer = undefined;\r\n delete el.__composer;\r\n }\r\n };\r\n const update = (el, { value }) => {\r\n if (el.__composer) {\r\n const composer = el.__composer;\r\n const parsedValue = parseValue(value);\r\n el.textContent = Reflect.apply(composer.t, composer, [\r\n ...makeParams(parsedValue)\r\n ]);\r\n }\r\n };\r\n const getSSRProps = (binding) => {\r\n const [textContent] = _process(binding);\r\n return { textContent };\r\n };\r\n return {\r\n created: register,\r\n unmounted: unregister,\r\n beforeUpdate: update,\r\n getSSRProps\r\n };\r\n}\r\nfunction parseValue(value) {\r\n if (isString(value)) {\r\n return { path: value };\r\n }\r\n else if (isPlainObject(value)) {\r\n if (!('path' in value)) {\r\n throw createI18nError(I18nErrorCodes.REQUIRED_VALUE, 'path');\r\n }\r\n return value;\r\n }\r\n else {\r\n throw createI18nError(I18nErrorCodes.INVALID_VALUE);\r\n }\r\n}\r\nfunction makeParams(value) {\r\n const { path, locale, args, choice, plural } = value;\r\n const options = {};\r\n const named = args || {};\r\n if (isString(locale)) {\r\n options.locale = locale;\r\n }\r\n if (isNumber(choice)) {\r\n options.plural = choice;\r\n }\r\n if (isNumber(plural)) {\r\n options.plural = plural;\r\n }\r\n return [path, named, options];\r\n}\n\nfunction apply(app, i18n, ...options) {\r\n const pluginOptions = isPlainObject(options[0])\r\n ? options[0]\r\n : {};\r\n const useI18nComponentName = !!pluginOptions.useI18nComponentName;\r\n const globalInstall = isBoolean(pluginOptions.globalInstall)\r\n ? pluginOptions.globalInstall\r\n : true;\r\n if ((process.env.NODE_ENV !== 'production') && globalInstall && useI18nComponentName) {\r\n warn(getWarnMessage(I18nWarnCodes.COMPONENT_NAME_LEGACY_COMPATIBLE, {\r\n name: Translation.name\r\n }));\r\n }\r\n if (globalInstall) {\r\n // install components\r\n app.component(!useI18nComponentName ? Translation.name : 'i18n', Translation);\r\n app.component(NumberFormat.name, NumberFormat);\r\n app.component(DatetimeFormat.name, DatetimeFormat);\r\n }\r\n // install directive\r\n {\r\n app.directive('t', vTDirective(i18n));\r\n }\r\n}\n\nconst VUE_I18N_COMPONENT_TYPES = 'vue-i18n: composer properties';\r\nlet devtoolsApi;\r\nasync function enableDevTools(app, i18n) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n setupDevtoolsPlugin({\r\n id: \"vue-devtools-plugin-vue-i18n\" /* PLUGIN */,\r\n label: VueDevToolsLabels[\"vue-devtools-plugin-vue-i18n\" /* PLUGIN */],\r\n packageName: 'vue-i18n',\r\n homepage: 'https://vue-i18n.intlify.dev',\r\n logo: 'https://vue-i18n.intlify.dev/vue-i18n-devtools-logo.png',\r\n componentStateTypes: [VUE_I18N_COMPONENT_TYPES],\r\n app: app // eslint-disable-line @typescript-eslint/no-explicit-any\r\n }, api => {\r\n devtoolsApi = api;\r\n api.on.visitComponentTree(({ componentInstance, treeNode }) => {\r\n updateComponentTreeTags(componentInstance, treeNode, i18n);\r\n });\r\n api.on.inspectComponent(({ componentInstance, instanceData }) => {\r\n if (componentInstance.vnode.el &&\r\n componentInstance.vnode.el.__VUE_I18N__ &&\r\n instanceData) {\r\n if (i18n.mode === 'legacy') {\r\n // ignore global scope on legacy mode\r\n if (componentInstance.vnode.el.__VUE_I18N__ !==\r\n i18n.global.__composer) {\r\n inspectComposer(instanceData, componentInstance.vnode.el.__VUE_I18N__);\r\n }\r\n }\r\n else {\r\n inspectComposer(instanceData, componentInstance.vnode.el.__VUE_I18N__);\r\n }\r\n }\r\n });\r\n api.addInspector({\r\n id: \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */,\r\n label: VueDevToolsLabels[\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */],\r\n icon: 'language',\r\n treeFilterPlaceholder: VueDevToolsPlaceholders[\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */]\r\n });\r\n api.on.getInspectorTree(payload => {\r\n if (payload.app === app &&\r\n payload.inspectorId === \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */) {\r\n registerScope(payload, i18n);\r\n }\r\n });\r\n const roots = new Map();\r\n api.on.getInspectorState(async (payload) => {\r\n if (payload.app === app &&\r\n payload.inspectorId === \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */) {\r\n api.unhighlightElement();\r\n inspectScope(payload, i18n);\r\n if (payload.nodeId === 'global') {\r\n if (!roots.has(payload.app)) {\r\n const [root] = await api.getComponentInstances(payload.app);\r\n roots.set(payload.app, root);\r\n }\r\n api.highlightElement(roots.get(payload.app));\r\n }\r\n else {\r\n const instance = getComponentInstance(payload.nodeId, i18n);\r\n instance && api.highlightElement(instance);\r\n }\r\n }\r\n });\r\n api.on.editInspectorState(payload => {\r\n if (payload.app === app &&\r\n payload.inspectorId === \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */) {\r\n editScope(payload, i18n);\r\n }\r\n });\r\n api.addTimelineLayer({\r\n id: \"vue-i18n-timeline\" /* TIMELINE */,\r\n label: VueDevToolsLabels[\"vue-i18n-timeline\" /* TIMELINE */],\r\n color: VueDevToolsTimelineColors[\"vue-i18n-timeline\" /* TIMELINE */]\r\n });\r\n resolve(true);\r\n });\r\n }\r\n catch (e) {\r\n console.error(e);\r\n reject(false);\r\n }\r\n });\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getI18nScopeLable(instance) {\r\n return (instance.type.name ||\r\n instance.type.displayName ||\r\n instance.type.__file ||\r\n 'Anonymous');\r\n}\r\nfunction updateComponentTreeTags(instance, // eslint-disable-line @typescript-eslint/no-explicit-any\r\ntreeNode, i18n) {\r\n // prettier-ignore\r\n const global = i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n if (instance && instance.vnode.el && instance.vnode.el.__VUE_I18N__) {\r\n // add custom tags local scope only\r\n if (instance.vnode.el.__VUE_I18N__ !== global) {\r\n const tag = {\r\n label: `i18n (${getI18nScopeLable(instance)} Scope)`,\r\n textColor: 0x000000,\r\n backgroundColor: 0xffcd19\r\n };\r\n treeNode.tags.push(tag);\r\n }\r\n }\r\n}\r\nfunction inspectComposer(instanceData, composer) {\r\n const type = VUE_I18N_COMPONENT_TYPES;\r\n instanceData.state.push({\r\n type,\r\n key: 'locale',\r\n editable: true,\r\n value: composer.locale.value\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'availableLocales',\r\n editable: false,\r\n value: composer.availableLocales\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'fallbackLocale',\r\n editable: true,\r\n value: composer.fallbackLocale.value\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'inheritLocale',\r\n editable: true,\r\n value: composer.inheritLocale\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'messages',\r\n editable: false,\r\n value: getLocaleMessageValue(composer.messages.value)\r\n });\r\n {\r\n instanceData.state.push({\r\n type,\r\n key: 'datetimeFormats',\r\n editable: false,\r\n value: composer.datetimeFormats.value\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'numberFormats',\r\n editable: false,\r\n value: composer.numberFormats.value\r\n });\r\n }\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getLocaleMessageValue(messages) {\r\n const value = {};\r\n Object.keys(messages).forEach((key) => {\r\n const v = messages[key];\r\n if (isFunction(v) && 'source' in v) {\r\n value[key] = getMessageFunctionDetails(v);\r\n }\r\n else if (isObject(v)) {\r\n value[key] = getLocaleMessageValue(v);\r\n }\r\n else {\r\n value[key] = v;\r\n }\r\n });\r\n return value;\r\n}\r\nconst ESC = {\r\n '<': '<',\r\n '>': '>',\r\n '\"': '"',\r\n '&': '&'\r\n};\r\nfunction escape(s) {\r\n return s.replace(/[<>\"&]/g, escapeChar);\r\n}\r\nfunction escapeChar(a) {\r\n return ESC[a] || a;\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getMessageFunctionDetails(func) {\r\n const argString = func.source ? `(\"${escape(func.source)}\")` : `(?)`;\r\n return {\r\n _custom: {\r\n type: 'function',\r\n display: `ƒ ${argString}`\r\n }\r\n };\r\n}\r\nfunction registerScope(payload, i18n) {\r\n payload.rootNodes.push({\r\n id: 'global',\r\n label: 'Global Scope'\r\n });\r\n // prettier-ignore\r\n const global = i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n for (const [keyInstance, instance] of i18n.__instances) {\r\n // prettier-ignore\r\n const composer = i18n.mode === 'composition'\r\n ? instance\r\n : instance.__composer;\r\n if (global === composer) {\r\n continue;\r\n }\r\n payload.rootNodes.push({\r\n id: composer.id.toString(),\r\n label: `${getI18nScopeLable(keyInstance)} Scope`\r\n });\r\n }\r\n}\r\nfunction getComponentInstance(nodeId, i18n) {\r\n let instance = null;\r\n if (nodeId !== 'global') {\r\n for (const [component, composer] of i18n.__instances.entries()) {\r\n if (composer.id.toString() === nodeId) {\r\n instance = component;\r\n break;\r\n }\r\n }\r\n }\r\n return instance;\r\n}\r\nfunction getComposer$1(nodeId, i18n) {\r\n if (nodeId === 'global') {\r\n return i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n }\r\n else {\r\n const instance = Array.from(i18n.__instances.values()).find(item => item.id.toString() === nodeId);\r\n if (instance) {\r\n return i18n.mode === 'composition'\r\n ? instance\r\n : instance.__composer;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n}\r\nfunction inspectScope(payload, i18n\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n) {\r\n const composer = getComposer$1(payload.nodeId, i18n);\r\n if (composer) {\r\n // TODO:\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n payload.state = makeScopeInspectState(composer);\r\n }\r\n return null;\r\n}\r\nfunction makeScopeInspectState(composer) {\r\n const state = {};\r\n const localeType = 'Locale related info';\r\n const localeStates = [\r\n {\r\n type: localeType,\r\n key: 'locale',\r\n editable: true,\r\n value: composer.locale.value\r\n },\r\n {\r\n type: localeType,\r\n key: 'fallbackLocale',\r\n editable: true,\r\n value: composer.fallbackLocale.value\r\n },\r\n {\r\n type: localeType,\r\n key: 'availableLocales',\r\n editable: false,\r\n value: composer.availableLocales\r\n },\r\n {\r\n type: localeType,\r\n key: 'inheritLocale',\r\n editable: true,\r\n value: composer.inheritLocale\r\n }\r\n ];\r\n state[localeType] = localeStates;\r\n const localeMessagesType = 'Locale messages info';\r\n const localeMessagesStates = [\r\n {\r\n type: localeMessagesType,\r\n key: 'messages',\r\n editable: false,\r\n value: getLocaleMessageValue(composer.messages.value)\r\n }\r\n ];\r\n state[localeMessagesType] = localeMessagesStates;\r\n {\r\n const datetimeFormatsType = 'Datetime formats info';\r\n const datetimeFormatsStates = [\r\n {\r\n type: datetimeFormatsType,\r\n key: 'datetimeFormats',\r\n editable: false,\r\n value: composer.datetimeFormats.value\r\n }\r\n ];\r\n state[datetimeFormatsType] = datetimeFormatsStates;\r\n const numberFormatsType = 'Datetime formats info';\r\n const numberFormatsStates = [\r\n {\r\n type: numberFormatsType,\r\n key: 'numberFormats',\r\n editable: false,\r\n value: composer.numberFormats.value\r\n }\r\n ];\r\n state[numberFormatsType] = numberFormatsStates;\r\n }\r\n return state;\r\n}\r\nfunction addTimelineEvent(event, payload) {\r\n if (devtoolsApi) {\r\n let groupId;\r\n if (payload && 'groupId' in payload) {\r\n groupId = payload.groupId;\r\n delete payload.groupId;\r\n }\r\n devtoolsApi.addTimelineEvent({\r\n layerId: \"vue-i18n-timeline\" /* TIMELINE */,\r\n event: {\r\n title: event,\r\n groupId,\r\n time: Date.now(),\r\n meta: {},\r\n data: payload || {},\r\n logType: event === \"compile-error\" /* COMPILE_ERROR */\r\n ? 'error'\r\n : event === \"fallback\" /* FALBACK */ ||\r\n event === \"missing\" /* MISSING */\r\n ? 'warning'\r\n : 'default'\r\n }\r\n });\r\n }\r\n}\r\nfunction editScope(payload, i18n) {\r\n const composer = getComposer$1(payload.nodeId, i18n);\r\n if (composer) {\r\n const [field] = payload.path;\r\n if (field === 'locale' && isString(payload.state.value)) {\r\n composer.locale.value = payload.state.value;\r\n }\r\n else if (field === 'fallbackLocale' &&\r\n (isString(payload.state.value) ||\r\n isArray(payload.state.value) ||\r\n isObject(payload.state.value))) {\r\n composer.fallbackLocale.value = payload.state.value;\r\n }\r\n else if (field === 'inheritLocale' && isBoolean(payload.state.value)) {\r\n composer.inheritLocale = payload.state.value;\r\n }\r\n }\r\n}\n\n/**\r\n * Supports compatibility for legacy vue-i18n APIs\r\n * This mixin is used when we use vue-i18n@v9.x or later\r\n */\r\nfunction defineMixin(vuei18n, composer, i18n) {\r\n return {\r\n beforeCreate() {\r\n const instance = getCurrentInstance();\r\n /* istanbul ignore if */\r\n if (!instance) {\r\n throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);\r\n }\r\n const options = this.$options;\r\n if (options.i18n) {\r\n const optionsI18n = options.i18n;\r\n if (options.__i18n) {\r\n optionsI18n.__i18n = options.__i18n;\r\n }\r\n optionsI18n.__root = composer;\r\n if (this === this.$root) {\r\n this.$i18n = mergeToRoot(vuei18n, optionsI18n);\r\n }\r\n else {\r\n optionsI18n.__injectWithOption = true;\r\n this.$i18n = createVueI18n(optionsI18n);\r\n }\r\n }\r\n else if (options.__i18n) {\r\n if (this === this.$root) {\r\n this.$i18n = mergeToRoot(vuei18n, options);\r\n }\r\n else {\r\n this.$i18n = createVueI18n({\r\n __i18n: options.__i18n,\r\n __injectWithOption: true,\r\n __root: composer\r\n });\r\n }\r\n }\r\n else {\r\n // set global\r\n this.$i18n = vuei18n;\r\n }\r\n if (options.__i18nGlobal) {\r\n adjustI18nResources(composer, options, options);\r\n }\r\n vuei18n.__onComponentInstanceCreated(this.$i18n);\r\n i18n.__setInstance(instance, this.$i18n);\r\n // defines vue-i18n legacy APIs\r\n this.$t = (...args) => this.$i18n.t(...args);\r\n this.$rt = (...args) => this.$i18n.rt(...args);\r\n this.$tc = (...args) => this.$i18n.tc(...args);\r\n this.$te = (key, locale) => this.$i18n.te(key, locale);\r\n this.$d = (...args) => this.$i18n.d(...args);\r\n this.$n = (...args) => this.$i18n.n(...args);\r\n this.$tm = (key) => this.$i18n.tm(key);\r\n },\r\n mounted() {\r\n /* istanbul ignore if */\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) &&\r\n !false &&\r\n this.$el &&\r\n this.$i18n) {\r\n this.$el.__VUE_I18N__ = this.$i18n.__composer;\r\n const emitter = (this.__v_emitter =\r\n createEmitter());\r\n const _vueI18n = this.$i18n;\r\n _vueI18n.__enableEmitter && _vueI18n.__enableEmitter(emitter);\r\n emitter.on('*', addTimelineEvent);\r\n }\r\n },\r\n unmounted() {\r\n const instance = getCurrentInstance();\r\n /* istanbul ignore if */\r\n if (!instance) {\r\n throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);\r\n }\r\n /* istanbul ignore if */\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) &&\r\n !false &&\r\n this.$el &&\r\n this.$el.__VUE_I18N__) {\r\n if (this.__v_emitter) {\r\n this.__v_emitter.off('*', addTimelineEvent);\r\n delete this.__v_emitter;\r\n }\r\n if (this.$i18n) {\r\n const _vueI18n = this.$i18n;\r\n _vueI18n.__disableEmitter && _vueI18n.__disableEmitter();\r\n delete this.$el.__VUE_I18N__;\r\n }\r\n }\r\n delete this.$t;\r\n delete this.$rt;\r\n delete this.$tc;\r\n delete this.$te;\r\n delete this.$d;\r\n delete this.$n;\r\n delete this.$tm;\r\n i18n.__deleteInstance(instance);\r\n delete this.$i18n;\r\n }\r\n };\r\n}\r\nfunction mergeToRoot(root, options) {\r\n root.locale = options.locale || root.locale;\r\n root.fallbackLocale = options.fallbackLocale || root.fallbackLocale;\r\n root.missing = options.missing || root.missing;\r\n root.silentTranslationWarn =\r\n options.silentTranslationWarn || root.silentFallbackWarn;\r\n root.silentFallbackWarn =\r\n options.silentFallbackWarn || root.silentFallbackWarn;\r\n root.formatFallbackMessages =\r\n options.formatFallbackMessages || root.formatFallbackMessages;\r\n root.postTranslation = options.postTranslation || root.postTranslation;\r\n root.warnHtmlInMessage = options.warnHtmlInMessage || root.warnHtmlInMessage;\r\n root.escapeParameterHtml =\r\n options.escapeParameterHtml || root.escapeParameterHtml;\r\n root.sync = options.sync || root.sync;\r\n root.__composer[SetPluralRulesSymbol](options.pluralizationRules || root.pluralizationRules);\r\n const messages = getLocaleMessages(root.locale, {\r\n messages: options.messages,\r\n __i18n: options.__i18n\r\n });\r\n Object.keys(messages).forEach(locale => root.mergeLocaleMessage(locale, messages[locale]));\r\n if (options.datetimeFormats) {\r\n Object.keys(options.datetimeFormats).forEach(locale => root.mergeDateTimeFormat(locale, options.datetimeFormats[locale]));\r\n }\r\n if (options.numberFormats) {\r\n Object.keys(options.numberFormats).forEach(locale => root.mergeNumberFormat(locale, options.numberFormats[locale]));\r\n }\r\n return root;\r\n}\n\n/**\r\n * Injection key for {@link useI18n}\r\n *\r\n * @remarks\r\n * The global injection key for I18n instances with `useI18n`. this injection key is used in Web Components.\r\n * Specify the i18n instance created by {@link createI18n} together with `provide` function.\r\n *\r\n * @VueI18nGeneral\r\n */\r\nconst I18nInjectionKey = \r\n/* #__PURE__*/ makeSymbol('global-vue-i18n');\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\r\nfunction createI18n(options = {}, VueI18nLegacy) {\r\n // prettier-ignore\r\n const __legacyMode = __VUE_I18N_LEGACY_API__ && isBoolean(options.legacy)\r\n ? options.legacy\r\n : __VUE_I18N_LEGACY_API__;\r\n // prettier-ignore\r\n const __globalInjection = isBoolean(options.globalInjection)\r\n ? options.globalInjection\r\n : true;\r\n // prettier-ignore\r\n const __allowComposition = __VUE_I18N_LEGACY_API__ && __legacyMode\r\n ? !!options.allowComposition\r\n : true;\r\n const __instances = new Map();\r\n const [globalScope, __global] = createGlobal(options, __legacyMode);\r\n const symbol = makeSymbol((process.env.NODE_ENV !== 'production') ? 'vue-i18n' : '');\r\n function __getInstance(component) {\r\n return __instances.get(component) || null;\r\n }\r\n function __setInstance(component, instance) {\r\n __instances.set(component, instance);\r\n }\r\n function __deleteInstance(component) {\r\n __instances.delete(component);\r\n }\r\n {\r\n const i18n = {\r\n // mode\r\n get mode() {\r\n return __VUE_I18N_LEGACY_API__ && __legacyMode\r\n ? 'legacy'\r\n : 'composition';\r\n },\r\n // allowComposition\r\n get allowComposition() {\r\n return __allowComposition;\r\n },\r\n // install plugin\r\n async install(app, ...options) {\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) &&\r\n !false) {\r\n app.__VUE_I18N__ = i18n;\r\n }\r\n // setup global provider\r\n app.__VUE_I18N_SYMBOL__ = symbol;\r\n app.provide(app.__VUE_I18N_SYMBOL__, i18n);\r\n // global method and properties injection for Composition API\r\n if (!__legacyMode && __globalInjection) {\r\n injectGlobalFields(app, i18n.global);\r\n }\r\n // install built-in components and directive\r\n if (__VUE_I18N_FULL_INSTALL__) {\r\n apply(app, i18n, ...options);\r\n }\r\n // setup mixin for Legacy API\r\n if (__VUE_I18N_LEGACY_API__ && __legacyMode) {\r\n app.mixin(defineMixin(__global, __global.__composer, i18n));\r\n }\r\n // release global scope\r\n const unmountApp = app.unmount;\r\n app.unmount = () => {\r\n i18n.dispose();\r\n unmountApp();\r\n };\r\n // setup vue-devtools plugin\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) && !false) {\r\n const ret = await enableDevTools(app, i18n);\r\n if (!ret) {\r\n throw createI18nError(I18nErrorCodes.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN);\r\n }\r\n const emitter = createEmitter();\r\n if (__legacyMode) {\r\n const _vueI18n = __global;\r\n _vueI18n.__enableEmitter && _vueI18n.__enableEmitter(emitter);\r\n }\r\n else {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _composer = __global;\r\n _composer[EnableEmitter] && _composer[EnableEmitter](emitter);\r\n }\r\n emitter.on('*', addTimelineEvent);\r\n }\r\n },\r\n // global accessor\r\n get global() {\r\n return __global;\r\n },\r\n dispose() {\r\n globalScope.stop();\r\n },\r\n // @internal\r\n __instances,\r\n // @internal\r\n __getInstance,\r\n // @internal\r\n __setInstance,\r\n // @internal\r\n __deleteInstance\r\n };\r\n return i18n;\r\n }\r\n}\r\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\r\nfunction useI18n(options = {}) {\r\n const instance = getCurrentInstance();\r\n if (instance == null) {\r\n throw createI18nError(I18nErrorCodes.MUST_BE_CALL_SETUP_TOP);\r\n }\r\n if (!instance.isCE &&\r\n instance.appContext.app != null &&\r\n !instance.appContext.app.__VUE_I18N_SYMBOL__) {\r\n throw createI18nError(I18nErrorCodes.NOT_INSLALLED);\r\n }\r\n const i18n = getI18nInstance(instance);\r\n const global = getGlobalComposer(i18n);\r\n const componentOptions = getComponentOptions(instance);\r\n const scope = getScope(options, componentOptions);\r\n if (__VUE_I18N_LEGACY_API__) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n if (i18n.mode === 'legacy' && !options.__useComponent) {\r\n if (!i18n.allowComposition) {\r\n throw createI18nError(I18nErrorCodes.NOT_AVAILABLE_IN_LEGACY_MODE);\r\n }\r\n return useI18nForLegacy(instance, scope, global, options);\r\n }\r\n }\r\n if (scope === 'global') {\r\n adjustI18nResources(global, options, componentOptions);\r\n return global;\r\n }\r\n if (scope === 'parent') {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n let composer = getComposer(i18n, instance, options.__useComponent);\r\n if (composer == null) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(getWarnMessage(I18nWarnCodes.NOT_FOUND_PARENT_SCOPE));\r\n }\r\n composer = global;\r\n }\r\n return composer;\r\n }\r\n const i18nInternal = i18n;\r\n let composer = i18nInternal.__getInstance(instance);\r\n if (composer == null) {\r\n const composerOptions = assign({}, options);\r\n if ('__i18n' in componentOptions) {\r\n composerOptions.__i18n = componentOptions.__i18n;\r\n }\r\n if (global) {\r\n composerOptions.__root = global;\r\n }\r\n composer = createComposer(composerOptions);\r\n setupLifeCycle(i18nInternal, instance, composer);\r\n i18nInternal.__setInstance(instance, composer);\r\n }\r\n return composer;\r\n}\r\n/**\r\n * Cast to VueI18n legacy compatible type\r\n *\r\n * @remarks\r\n * This API is provided only with [vue-i18n-bridge](https://vue-i18n.intlify.dev/guide/migration/ways.html#what-is-vue-i18n-bridge).\r\n *\r\n * The purpose of this function is to convert an {@link I18n} instance created with {@link createI18n | createI18n(legacy: true)} into a `vue-i18n@v8.x` compatible instance of `new VueI18n` in a TypeScript environment.\r\n *\r\n * @param i18n - An instance of {@link I18n}\r\n * @returns A i18n instance which is casted to {@link VueI18n} type\r\n *\r\n * @VueI18nTip\r\n * :new: provided by **vue-i18n-bridge only**\r\n *\r\n * @VueI18nGeneral\r\n */\r\nconst castToVueI18n = (i18n\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n) => {\r\n if (!(__VUE_I18N_BRIDGE__ in i18n)) {\r\n throw createI18nError(I18nErrorCodes.NOT_COMPATIBLE_LEGACY_VUE_I18N);\r\n }\r\n return i18n;\r\n};\r\nfunction createGlobal(options, legacyMode, VueI18nLegacy // eslint-disable-line @typescript-eslint/no-explicit-any\r\n) {\r\n const scope = effectScope();\r\n {\r\n const obj = __VUE_I18N_LEGACY_API__ && legacyMode\r\n ? scope.run(() => createVueI18n(options))\r\n : scope.run(() => createComposer(options));\r\n if (obj == null) {\r\n throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);\r\n }\r\n return [scope, obj];\r\n }\r\n}\r\nfunction getI18nInstance(instance) {\r\n {\r\n const i18n = inject(!instance.isCE\r\n ? instance.appContext.app.__VUE_I18N_SYMBOL__\r\n : I18nInjectionKey);\r\n /* istanbul ignore if */\r\n if (!i18n) {\r\n throw createI18nError(!instance.isCE\r\n ? I18nErrorCodes.UNEXPECTED_ERROR\r\n : I18nErrorCodes.NOT_INSLALLED_WITH_PROVIDE);\r\n }\r\n return i18n;\r\n }\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getScope(options, componentOptions) {\r\n // prettier-ignore\r\n return isEmptyObject(options)\r\n ? ('__i18n' in componentOptions)\r\n ? 'local'\r\n : 'global'\r\n : !options.useScope\r\n ? 'local'\r\n : options.useScope;\r\n}\r\nfunction getGlobalComposer(i18n) {\r\n // prettier-ignore\r\n return i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer\r\n ;\r\n}\r\nfunction getComposer(i18n, target, useComponent = false) {\r\n let composer = null;\r\n const root = target.root;\r\n let current = target.parent;\r\n while (current != null) {\r\n const i18nInternal = i18n;\r\n if (i18n.mode === 'composition') {\r\n composer = i18nInternal.__getInstance(current);\r\n }\r\n else {\r\n if (__VUE_I18N_LEGACY_API__) {\r\n const vueI18n = i18nInternal.__getInstance(current);\r\n if (vueI18n != null) {\r\n composer = vueI18n\r\n .__composer;\r\n if (useComponent &&\r\n composer &&\r\n !composer[InejctWithOption] // eslint-disable-line @typescript-eslint/no-explicit-any\r\n ) {\r\n composer = null;\r\n }\r\n }\r\n }\r\n }\r\n if (composer != null) {\r\n break;\r\n }\r\n if (root === current) {\r\n break;\r\n }\r\n current = current.parent;\r\n }\r\n return composer;\r\n}\r\nfunction setupLifeCycle(i18n, target, composer) {\r\n let emitter = null;\r\n {\r\n onMounted(() => {\r\n // inject composer instance to DOM for intlify-devtools\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) &&\r\n !false &&\r\n target.vnode.el) {\r\n target.vnode.el.__VUE_I18N__ = composer;\r\n emitter = createEmitter();\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _composer = composer;\r\n _composer[EnableEmitter] && _composer[EnableEmitter](emitter);\r\n emitter.on('*', addTimelineEvent);\r\n }\r\n }, target);\r\n onUnmounted(() => {\r\n // remove composer instance from DOM for intlify-devtools\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) &&\r\n !false &&\r\n target.vnode.el &&\r\n target.vnode.el.__VUE_I18N__) {\r\n emitter && emitter.off('*', addTimelineEvent);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _composer = composer;\r\n _composer[DisableEmitter] && _composer[DisableEmitter]();\r\n delete target.vnode.el.__VUE_I18N__;\r\n }\r\n i18n.__deleteInstance(target);\r\n }, target);\r\n }\r\n}\r\nfunction useI18nForLegacy(instance, scope, root, options = {} // eslint-disable-line @typescript-eslint/no-explicit-any\r\n) {\r\n const isLocale = scope === 'local';\r\n const _composer = shallowRef(null);\r\n if (isLocale &&\r\n instance.proxy &&\r\n !(instance.proxy.$options.i18n || instance.proxy.$options.__i18n)) {\r\n throw createI18nError(I18nErrorCodes.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);\r\n }\r\n const _inheritLocale = isBoolean(options.inheritLocale)\r\n ? options.inheritLocale\r\n : true;\r\n const _locale = ref(\r\n // prettier-ignore\r\n isLocale && _inheritLocale\r\n ? root.locale.value\r\n : isString(options.locale)\r\n ? options.locale\r\n : DEFAULT_LOCALE);\r\n const _fallbackLocale = ref(\r\n // prettier-ignore\r\n isLocale && _inheritLocale\r\n ? root.fallbackLocale.value\r\n : isString(options.fallbackLocale) ||\r\n isArray(options.fallbackLocale) ||\r\n isPlainObject(options.fallbackLocale) ||\r\n options.fallbackLocale === false\r\n ? options.fallbackLocale\r\n : _locale.value);\r\n const _messages = ref(getLocaleMessages(_locale.value, options));\r\n // prettier-ignore\r\n const _datetimeFormats = ref(isPlainObject(options.datetimeFormats)\r\n ? options.datetimeFormats\r\n : { [_locale.value]: {} });\r\n // prettier-ignore\r\n const _numberFormats = ref(isPlainObject(options.numberFormats)\r\n ? options.numberFormats\r\n : { [_locale.value]: {} });\r\n // prettier-ignore\r\n const _missingWarn = isLocale\r\n ? root.missingWarn\r\n : isBoolean(options.missingWarn) || isRegExp(options.missingWarn)\r\n ? options.missingWarn\r\n : true;\r\n // prettier-ignore\r\n const _fallbackWarn = isLocale\r\n ? root.fallbackWarn\r\n : isBoolean(options.fallbackWarn) || isRegExp(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : true;\r\n // prettier-ignore\r\n const _fallbackRoot = isLocale\r\n ? root.fallbackRoot\r\n : isBoolean(options.fallbackRoot)\r\n ? options.fallbackRoot\r\n : true;\r\n // configure fall back to root\r\n const _fallbackFormat = !!options.fallbackFormat;\r\n // runtime missing\r\n const _missing = isFunction(options.missing) ? options.missing : null;\r\n // postTranslation handler\r\n const _postTranslation = isFunction(options.postTranslation)\r\n ? options.postTranslation\r\n : null;\r\n // prettier-ignore\r\n const _warnHtmlMessage = isLocale\r\n ? root.warnHtmlMessage\r\n : isBoolean(options.warnHtmlMessage)\r\n ? options.warnHtmlMessage\r\n : true;\r\n const _escapeParameter = !!options.escapeParameter;\r\n // prettier-ignore\r\n const _modifiers = isLocale\r\n ? root.modifiers\r\n : isPlainObject(options.modifiers)\r\n ? options.modifiers\r\n : {};\r\n // pluralRules\r\n const _pluralRules = options.pluralRules || (isLocale && root.pluralRules);\r\n // track reactivity\r\n function trackReactivityValues() {\r\n return [\r\n _locale.value,\r\n _fallbackLocale.value,\r\n _messages.value,\r\n _datetimeFormats.value,\r\n _numberFormats.value\r\n ];\r\n }\r\n // locale\r\n const locale = computed({\r\n get: () => {\r\n return _composer.value ? _composer.value.locale.value : _locale.value;\r\n },\r\n set: val => {\r\n if (_composer.value) {\r\n _composer.value.locale.value = val;\r\n }\r\n _locale.value = val;\r\n }\r\n });\r\n // fallbackLocale\r\n const fallbackLocale = computed({\r\n get: () => {\r\n return _composer.value\r\n ? _composer.value.fallbackLocale.value\r\n : _fallbackLocale.value;\r\n },\r\n set: val => {\r\n if (_composer.value) {\r\n _composer.value.fallbackLocale.value = val;\r\n }\r\n _fallbackLocale.value = val;\r\n }\r\n });\r\n // messages\r\n const messages = computed(() => {\r\n if (_composer.value) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n return _composer.value.messages.value;\r\n }\r\n else {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n return _messages.value;\r\n }\r\n });\r\n const datetimeFormats = computed(() => _datetimeFormats.value);\r\n const numberFormats = computed(() => _numberFormats.value);\r\n function getPostTranslationHandler() {\r\n return _composer.value\r\n ? _composer.value.getPostTranslationHandler()\r\n : _postTranslation;\r\n }\r\n function setPostTranslationHandler(handler) {\r\n if (_composer.value) {\r\n _composer.value.setPostTranslationHandler(handler);\r\n }\r\n }\r\n function getMissingHandler() {\r\n return _composer.value ? _composer.value.getMissingHandler() : _missing;\r\n }\r\n function setMissingHandler(handler) {\r\n if (_composer.value) {\r\n _composer.value.setMissingHandler(handler);\r\n }\r\n }\r\n function warpWithDeps(fn) {\r\n trackReactivityValues();\r\n return fn();\r\n }\r\n function t(...args) {\r\n return _composer.value\r\n ? warpWithDeps(() => Reflect.apply(_composer.value.t, null, [...args]))\r\n : warpWithDeps(() => '');\r\n }\r\n function rt(...args) {\r\n return _composer.value\r\n ? Reflect.apply(_composer.value.rt, null, [...args])\r\n : '';\r\n }\r\n function d(...args) {\r\n return _composer.value\r\n ? warpWithDeps(() => Reflect.apply(_composer.value.d, null, [...args]))\r\n : warpWithDeps(() => '');\r\n }\r\n function n(...args) {\r\n return _composer.value\r\n ? warpWithDeps(() => Reflect.apply(_composer.value.n, null, [...args]))\r\n : warpWithDeps(() => '');\r\n }\r\n function tm(key) {\r\n return _composer.value ? _composer.value.tm(key) : {};\r\n }\r\n function te(key, locale) {\r\n return _composer.value ? _composer.value.te(key, locale) : false;\r\n }\r\n function getLocaleMessage(locale) {\r\n return _composer.value ? _composer.value.getLocaleMessage(locale) : {};\r\n }\r\n function setLocaleMessage(locale, message) {\r\n if (_composer.value) {\r\n _composer.value.setLocaleMessage(locale, message);\r\n _messages.value[locale] = message;\r\n }\r\n }\r\n function mergeLocaleMessage(locale, message) {\r\n if (_composer.value) {\r\n _composer.value.mergeLocaleMessage(locale, message);\r\n }\r\n }\r\n function getDateTimeFormat(locale) {\r\n return _composer.value ? _composer.value.getDateTimeFormat(locale) : {};\r\n }\r\n function setDateTimeFormat(locale, format) {\r\n if (_composer.value) {\r\n _composer.value.setDateTimeFormat(locale, format);\r\n _datetimeFormats.value[locale] = format;\r\n }\r\n }\r\n function mergeDateTimeFormat(locale, format) {\r\n if (_composer.value) {\r\n _composer.value.mergeDateTimeFormat(locale, format);\r\n }\r\n }\r\n function getNumberFormat(locale) {\r\n return _composer.value ? _composer.value.getNumberFormat(locale) : {};\r\n }\r\n function setNumberFormat(locale, format) {\r\n if (_composer.value) {\r\n _composer.value.setNumberFormat(locale, format);\r\n _numberFormats.value[locale] = format;\r\n }\r\n }\r\n function mergeNumberFormat(locale, format) {\r\n if (_composer.value) {\r\n _composer.value.mergeNumberFormat(locale, format);\r\n }\r\n }\r\n const wrapper = {\r\n get id() {\r\n return _composer.value ? _composer.value.id : -1;\r\n },\r\n locale,\r\n fallbackLocale,\r\n messages,\r\n datetimeFormats,\r\n numberFormats,\r\n get inheritLocale() {\r\n return _composer.value ? _composer.value.inheritLocale : _inheritLocale;\r\n },\r\n set inheritLocale(val) {\r\n if (_composer.value) {\r\n _composer.value.inheritLocale = val;\r\n }\r\n },\r\n get availableLocales() {\r\n return _composer.value\r\n ? _composer.value.availableLocales\r\n : Object.keys(_messages.value);\r\n },\r\n get modifiers() {\r\n return (_composer.value ? _composer.value.modifiers : _modifiers);\r\n },\r\n get pluralRules() {\r\n return (_composer.value ? _composer.value.pluralRules : _pluralRules);\r\n },\r\n get isGlobal() {\r\n return _composer.value ? _composer.value.isGlobal : false;\r\n },\r\n get missingWarn() {\r\n return _composer.value ? _composer.value.missingWarn : _missingWarn;\r\n },\r\n set missingWarn(val) {\r\n if (_composer.value) {\r\n _composer.value.missingWarn = val;\r\n }\r\n },\r\n get fallbackWarn() {\r\n return _composer.value ? _composer.value.fallbackWarn : _fallbackWarn;\r\n },\r\n set fallbackWarn(val) {\r\n if (_composer.value) {\r\n _composer.value.missingWarn = val;\r\n }\r\n },\r\n get fallbackRoot() {\r\n return _composer.value ? _composer.value.fallbackRoot : _fallbackRoot;\r\n },\r\n set fallbackRoot(val) {\r\n if (_composer.value) {\r\n _composer.value.fallbackRoot = val;\r\n }\r\n },\r\n get fallbackFormat() {\r\n return _composer.value ? _composer.value.fallbackFormat : _fallbackFormat;\r\n },\r\n set fallbackFormat(val) {\r\n if (_composer.value) {\r\n _composer.value.fallbackFormat = val;\r\n }\r\n },\r\n get warnHtmlMessage() {\r\n return _composer.value\r\n ? _composer.value.warnHtmlMessage\r\n : _warnHtmlMessage;\r\n },\r\n set warnHtmlMessage(val) {\r\n if (_composer.value) {\r\n _composer.value.warnHtmlMessage = val;\r\n }\r\n },\r\n get escapeParameter() {\r\n return _composer.value\r\n ? _composer.value.escapeParameter\r\n : _escapeParameter;\r\n },\r\n set escapeParameter(val) {\r\n if (_composer.value) {\r\n _composer.value.escapeParameter = val;\r\n }\r\n },\r\n t,\r\n getPostTranslationHandler,\r\n setPostTranslationHandler,\r\n getMissingHandler,\r\n setMissingHandler,\r\n rt,\r\n d,\r\n n,\r\n tm,\r\n te,\r\n getLocaleMessage,\r\n setLocaleMessage,\r\n mergeLocaleMessage,\r\n getDateTimeFormat,\r\n setDateTimeFormat,\r\n mergeDateTimeFormat,\r\n getNumberFormat,\r\n setNumberFormat,\r\n mergeNumberFormat\r\n };\r\n function sync(composer) {\r\n composer.locale.value = _locale.value;\r\n composer.fallbackLocale.value = _fallbackLocale.value;\r\n Object.keys(_messages.value).forEach(locale => {\r\n composer.mergeLocaleMessage(locale, _messages.value[locale]);\r\n });\r\n Object.keys(_datetimeFormats.value).forEach(locale => {\r\n composer.mergeDateTimeFormat(locale, _datetimeFormats.value[locale]);\r\n });\r\n Object.keys(_numberFormats.value).forEach(locale => {\r\n composer.mergeNumberFormat(locale, _numberFormats.value[locale]);\r\n });\r\n composer.escapeParameter = _escapeParameter;\r\n composer.fallbackFormat = _fallbackFormat;\r\n composer.fallbackRoot = _fallbackRoot;\r\n composer.fallbackWarn = _fallbackWarn;\r\n composer.missingWarn = _missingWarn;\r\n composer.warnHtmlMessage = _warnHtmlMessage;\r\n }\r\n onBeforeMount(() => {\r\n if (instance.proxy == null || instance.proxy.$i18n == null) {\r\n throw createI18nError(I18nErrorCodes.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const composer = (_composer.value = instance.proxy.$i18n\r\n .__composer);\r\n if (scope === 'global') {\r\n _locale.value = composer.locale.value;\r\n _fallbackLocale.value = composer.fallbackLocale.value;\r\n _messages.value = composer.messages.value;\r\n _datetimeFormats.value = composer.datetimeFormats.value;\r\n _numberFormats.value = composer.numberFormats.value;\r\n }\r\n else if (isLocale) {\r\n sync(composer);\r\n }\r\n });\r\n return wrapper;\r\n}\r\nconst globalExportProps = [\r\n 'locale',\r\n 'fallbackLocale',\r\n 'availableLocales'\r\n];\r\nconst globalExportMethods = ['t', 'rt', 'd', 'n', 'tm'] ;\r\nfunction injectGlobalFields(app, composer) {\r\n const i18n = Object.create(null);\r\n globalExportProps.forEach(prop => {\r\n const desc = Object.getOwnPropertyDescriptor(composer, prop);\r\n if (!desc) {\r\n throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);\r\n }\r\n const wrap = isRef(desc.value) // check computed props\r\n ? {\r\n get() {\r\n return desc.value.value;\r\n },\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n set(val) {\r\n desc.value.value = val;\r\n }\r\n }\r\n : {\r\n get() {\r\n return desc.get && desc.get();\r\n }\r\n };\r\n Object.defineProperty(i18n, prop, wrap);\r\n });\r\n app.config.globalProperties.$i18n = i18n;\r\n globalExportMethods.forEach(method => {\r\n const desc = Object.getOwnPropertyDescriptor(composer, method);\r\n if (!desc || !desc.value) {\r\n throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);\r\n }\r\n Object.defineProperty(app.config.globalProperties, `$${method}`, desc);\r\n });\r\n}\n\n// register message compiler at vue-i18n\r\nregisterMessageCompiler(compileToFunction);\r\n// register message resolver at vue-i18n\r\nregisterMessageResolver(resolveValue);\r\n// register fallback locale at vue-i18n\r\nregisterLocaleFallbacker(fallbackWithLocaleChain);\r\n{\r\n initFeatureFlags();\r\n}\r\n// NOTE: experimental !!\r\nif ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {\r\n const target = getGlobalThis();\r\n target.__INTLIFY__ = true;\r\n setDevToolsHook(target.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__);\r\n}\r\nif ((process.env.NODE_ENV !== 'production')) ;\n\nexport { DatetimeFormat, I18nInjectionKey, NumberFormat, Translation, VERSION, castToVueI18n, createI18n, useI18n, vTDirective };\n"],"names":["VERSION","code$1","__EXTEND_POINT__","inc$1","code","inc","I18nErrorCodes","UNEXPECTED_RETURN_TYPE","INVALID_ARGUMENT","MUST_BE_CALL_SETUP_TOP","NOT_INSLALLED","NOT_AVAILABLE_IN_LEGACY_MODE","REQUIRED_VALUE","INVALID_VALUE","CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN","NOT_INSLALLED_WITH_PROVIDE","UNEXPECTED_ERROR","NOT_COMPATIBLE_LEGACY_VUE_I18N","BRIDGE_SUPPORT_VUE_2_ONLY","MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION","NOT_AVAILABLE_COMPOSITION_IN_LEGACY","createI18nError","args","undefined","TransrateVNodeSymbol","DatetimePartsSymbol","NumberPartsSymbol","SetPluralRulesSymbol","InejctWithOption","handleFlatJson","obj","key","includes","subKeys","split","lastIndex","length","currentObj","i","getLocaleMessages","locale","options","messages","__i18n","messageResolver","flatJson","ret","forEach","custom","resource","deepCopy","JSON","parse","isNotObjectOrIsArray","val","src","des","getComponentOptions","instance","type","adjustI18nResources","global","componentOptions","value","__i18nGlobal","locales","Object","keys","mergeLocaleMessage","datetimeFormats","mergeDateTimeFormat","numberFormats","mergeNumberFormat","createTextNode","DEVTOOLS_META","composerID","defineCoreMissingHandler","missing","ctx","getMetaInfo","meta","createComposer","VueI18nLegacy","__root","_isGlobal","_inheritLocale","inheritLocale","_locale","_fallbackLocale","fallbackLocale","_messages","_datetimeFormats","_numberFormats","_missingWarn","missingWarn","_fallbackWarn","fallbackWarn","_fallbackRoot","fallbackRoot","_fallbackFormat","fallbackFormat","_missing","_runtimeMissing","_postTranslation","postTranslation","_warnHtmlMessage","warnHtmlMessage","_escapeParameter","escapeParameter","_modifiers","modifiers","_context","_pluralRules","pluralRules","ctxOptions","version","unresolving","__meta","framework","__datetimeFormatters","__numberFormatters","getCoreContext","get","set","wrapWithDeps","fn","argumentParser","warnType","fallbackSuccess","fallbackFail","successCondition","__INTLIFY_PROD_DEVTOOLS__","fallbackContext","arg2","t","context","Reflect","apply","root","processor","normalize","values","map","String","interpolate","getLocaleMessage","composer","id","availableLocales","sort","isGlobal","setLocaleMessage","message","getPostTranslationHandler","setPostTranslationHandler","handler","getMissingHandler","setMissingHandler","rules","rt","arg1","arg3","resolvedMessage","te","tm","targetLocaleMessages","messageValue","resolveMessages","d","n","getDateTimeFormat","setDateTimeFormat","format","getNumberFormat","setNumberFormat","__injectWithOption","createVueI18n","silentTranslationWarn","silentFallbackWarn","formatFallbackMessages","pluralizationRules","warnHtmlInMessage","escapeParameterHtml","sync","sharedMessages","reduce","convertComposerOptions","vueI18n","formatter","preserveDirectiveContent","__composer","list","named","tc","plural","getChoiceIndex","choice","choicesLength","__onComponentInstanceCreated","target","componentInstanceCreatedListener","baseFormatProps","tag","scope","validator","default","i18n","getFragmentableTag","Translation","name","props","keypath","required","Number","isNaN","setup","slots","attrs","useI18n","useScope","__useComponent","filter","arg","slot","current","children","getInterpolateArg","assignedAttrs","h","renderFormatter","slotKeys","partFormatter","part","overrides","prop","parts","index","node","NumberFormat","DatetimeFormat","Date","parseValue","path","makeParams","mergeToRoot","I18nInjectionKey","createI18n","__legacyMode","__VUE_I18N_LEGACY_API__","legacy","__globalInjection","globalInjection","__allowComposition","allowComposition","__instances","Map","globalScope","__global","legacyMode","run","createGlobal","symbol","mode","install","app","__VUE_I18N_SYMBOL__","provide","create","globalExportProps","desc","getOwnPropertyDescriptor","wrap","defineProperty","config","globalProperties","$i18n","globalExportMethods","method","injectGlobalFields","__VUE_I18N_FULL_INSTALL__","pluginOptions","useI18nComponentName","globalInstall","component","directive","_process","binding","$","i18nInternal","__getInstance","getComposer$2","parsedValue","created","el","textContent","__i18nWatcher","$forceUpdate","unmounted","beforeUpdate","getSSRProps","vTDirective","mixin","vuei18n","beforeCreate","this","$options","optionsI18n","$root","__setInstance","$t","$rt","$tc","$te","$d","$n","$tm","mounted","__deleteInstance","defineMixin","unmountApp","unmount","dispose","stop","delete","isCE","appContext","getI18nInstance","getGlobalComposer","getScope","isLocale","_composer","proxy","warpWithDeps","wrapper","useI18nForLegacy","useComponent","parent","getComposer","composerOptions","setupLifeCycle","needWarn","initFeatureFlags","__INTLIFY__","__INTLIFY_DEVTOOLS_GLOBAL_HOOK__"],"sourceRoot":""}