{"version":3,"sources":["webpack:///./node_modules/vue-i18n/dist/vue-i18n.esm-bundler.js"],"names":["VERSION","initFeatureFlags","needWarn","__VUE_I18N_FULL_INSTALL__","__VUE_I18N_LEGACY_API__","__VUE_I18N_PROD_DEVTOOLS__","__INTLIFY_PROD_DEVTOOLS__","createI18nError","code","args","undefined","DEVTOOLS_META","TransrateVNodeSymbol","DatetimePartsSymbol","NumberPartsSymbol","EnableEmitter","DisableEmitter","SetPluralRulesSymbol","InejctWithOption","composerID","defineCoreMissingHandler","missing","ctx","locale","key","type","getLocaleMessages","options","messages","__i18n","ret","forEach","resource","deepCopy","flatJson","isNotObjectOrIsArray","val","src","des","getMetaInfo","instance","createComposer","__root","_isGlobal","_inheritLocale","inheritLocale","_locale","value","_fallbackLocale","fallbackLocale","_messages","_datetimeFormats","datetimeFormats","_numberFormats","numberFormats","_missingWarn","missingWarn","_fallbackWarn","fallbackWarn","_fallbackRoot","fallbackRoot","_fallbackFormat","fallbackFormat","_missing","_runtimeMissing","_postTranslation","postTranslation","_warnHtmlMessage","warnHtmlMessage","_escapeParameter","escapeParameter","_modifiers","modifiers","_context","_pluralRules","pluralRules","getCoreContext","version","unresolving","__datetimeFormatters","__numberFormatters","__v_emitter","__meta","framework","trackReactivityValues","get","set","getPostTranslationHandler","setPostTranslationHandler","handler","getMissingHandler","setMissingHandler","wrapWithDeps","fn","argumentParser","warnType","fallbackSuccess","fallbackFail","successCondition","arg2","t","context","root","rt","arg1","arg3","resolvedMessage","d","n","normalize","values","map","interpolate","processor","transrateVNode","numberParts","datetimeParts","setPluralRules","rules","te","targetLocale","message","getLocaleMessage","resolveMessages","locales","i","length","targetLocaleMessages","messageValue","tm","setLocaleMessage","mergeLocaleMessage","getDateTimeFormat","setDateTimeFormat","format","mergeDateTimeFormat","getNumberFormat","setNumberFormat","mergeNumberFormat","composer","id","Object","keys","sort","__injectWithOption","convertComposerOptions","silentTranslationWarn","silentFallbackWarn","formatFallbackMessages","pluralizationRules","warnHtmlInMessage","escapeParameterHtml","sync","sharedMessages","reduce","createVueI18n","vueI18n","availableLocales","__composer","list","named","plural","choice","choicesLength","target","componentInstanceCreatedListener","baseFormatProps","tag","String","scope","validator","default","i18n","Translation","name","props","keypath","required","Number","isNaN","slots","attrs","useI18n","useScope","__useComponent","filter","arg","getInterpolateArg","children","assignedAttrs","slot","renderFormatter","slotKeys","partFormatter","part","overrides","prop","includes","parts","index","NUMBER_FORMAT_KEYS","NumberFormat","DATETIME_FORMAT_KEYS","DatetimeFormat","Date","getComposer$2","i18nInternal","mode","__getInstance","global","vTDirective","bind","el","$","parsedValue","parseValue","textContent","makeParams","beforeMount","beforeUpdate","path","apply","app","pluginOptions","useI18nComponentName","globalInstall","component","directive","VUE_I18N_COMPONENT_TYPES","devtoolsApi","async","enableDevTools","Promise","resolve","reject","label","packageName","homepage","logo","componentStateTypes","api","on","visitComponentTree","componentInstance","treeNode","updateComponentTreeTags","inspectComponent","instanceData","vnode","__VUE_I18N__","inspectComposer","addInspector","icon","treeFilterPlaceholder","getInspectorTree","payload","inspectorId","registerScope","getInspectorState","inspectScope","editInspectorState","editScope","addTimelineLayer","color","e","console","error","displayName","__file","textColor","backgroundColor","tags","push","state","editable","getLocaleMessageValue","v","getMessageFunctionDetails","ESC","escape","s","replace","escapeChar","a","func","argString","source","_custom","display","rootNodes","keyInstance","__instances","toString","getComposer$1","nodeId","Array","from","find","item","makeScopeInspectState","localeType","localeStates","localeMessagesType","localeMessagesStates","datetimeFormatsType","datetimeFormatsStates","numberFormatsType","numberFormatsStates","addTimelineEvent","event","groupId","layerId","title","time","now","meta","data","logType","field","defineMixin","vuei18n","this","$options","optionsI18n","$root","$i18n","mergeToRoot","__onComponentInstanceCreated","__setInstance","$t","$rt","$tc","tc","$te","$d","$n","$tm","$el","emitter","_vueI18n","__enableEmitter","off","__disableEmitter","__deleteInstance","createI18n","__legacyMode","legacy","__globalInjection","globalInjection","Map","__global","symbol","__VUE_I18N_SYMBOL__","provide","injectGlobalFields","mixin","_composer","delete","appContext","__i18nGlobal","getComposer","composerOptions","setupLifeCycle","useComponent","current","parent","globalExportProps","globalExportMethods","create","desc","getOwnPropertyDescriptor","wrap","defineProperty","config","globalProperties","method","__INTLIFY__","__INTLIFY_DEVTOOLS_GLOBAL_HOOK__"],"mappings":"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","file":"js/npm.vue-i18n.58214a12.js","sourcesContent":["/*!\n * vue-i18n v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\nimport { getGlobalThis, format, makeSymbol, isPlainObject, isArray, hasOwn, isObject, isBoolean, isString, isRegExp, isFunction, assign, isNumber, warn, createEmitter, isEmptyObject } from '@intlify/shared';\nimport { createCompileError, handleFlatJson, createCoreContext, updateFallbackLocale, resolveValue, clearDateTimeFormat, clearNumberFormat, setAdditionalMeta, NOT_REOSLVED, isTranslateFallbackWarn, isTranslateMissingWarn, parseTranslateArgs, translate, MISSING_RESOLVE_VALUE, parseDateTimeArgs, datetime, parseNumberArgs, number, getLocaleChain, registerMessageCompiler, compileToFunction, setDevToolsHook } from '@intlify/core-base';\nimport { ref, getCurrentInstance, computed, watch, createVNode, Text, h, Fragment, inject, onMounted, onUnmounted, 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.1.9';\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 __VUE_I18N_PROD_DEVTOOLS__ !== 'boolean') {\r\n needWarn = true;\r\n getGlobalThis().__VUE_I18N_PROD_DEVTOOLS__ = false;\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') && typeof true === 'boolean') {\r\n needWarn = true;\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\nconst warnMessages = {\r\n [6 /* FALLBACK_TO_ROOT */]: `Fall back to {type} '{key}' with root locale.`,\r\n [7 /* NOT_SUPPORTED_PRESERVE */]: `Not supported 'preserve'.`,\r\n [8 /* NOT_SUPPORTED_FORMATTER */]: `Not supported 'formatter'.`,\r\n [9 /* NOT_SUPPORTED_PRESERVE_DIRECTIVE */]: `Not supported 'preserveDirectiveContent'.`,\r\n [10 /* NOT_SUPPORTED_GET_CHOICE_INDEX */]: `Not supported 'getChoiceIndex'.`,\r\n [11 /* COMPONENT_NAME_LEGACY_COMPATIBLE */]: `Component name legacy compatible: '{name}' -> 'i18n'`,\r\n [12 /* 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\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 [14 /* UNEXPECTED_RETURN_TYPE */]: 'Unexpected return type in composer',\r\n [15 /* INVALID_ARGUMENT */]: 'Invalid argument',\r\n [16 /* MUST_BE_CALL_SETUP_TOP */]: 'Must be called at the top of a `setup` function',\r\n [17 /* NOT_INSLALLED */]: 'Need to install with `app.use` function',\r\n [22 /* UNEXPECTED_ERROR */]: 'Unexpected error',\r\n [18 /* NOT_AVAILABLE_IN_LEGACY_MODE */]: 'Not available in legacy mode',\r\n [19 /* REQUIRED_VALUE */]: `Required in value: {0}`,\r\n [20 /* INVALID_VALUE */]: `Invalid value`,\r\n [21 /* CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN */]: `Cannot setup vue-devtools plugin`\r\n};\n\nconst DEVTOOLS_META = '__INTLIFY_META__';\r\nconst TransrateVNodeSymbol = makeSymbol('__transrateVNode');\r\nconst DatetimePartsSymbol = makeSymbol('__datetimeParts');\r\nconst NumberPartsSymbol = makeSymbol('__numberParts');\r\nconst EnableEmitter = makeSymbol('__enableEmitter');\r\nconst DisableEmitter = makeSymbol('__disableEmitter');\r\nconst SetPluralRulesSymbol = makeSymbol('__setPluralRules');\r\nmakeSymbol('__intlifyMeta');\r\nconst InejctWithOption = makeSymbol('__injectWithOption');\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\nfunction getLocaleMessages(locale, options) {\r\n const { messages, __i18n } = 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(({ locale, resource }) => {\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 }\r\n // handle messages for flat json\r\n if (options.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\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(20 /* 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// for Intlify DevTools\r\nconst getMetaInfo = /* #__PURE__*/ () => {\r\n const instance = getCurrentInstance();\r\n return instance && instance.type[DEVTOOLS_META] // eslint-disable-line @typescript-eslint/no-explicit-any\r\n ? { [DEVTOOLS_META]: instance.type[DEVTOOLS_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\nfunction createComposer(options = {}) {\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 : 'en-US');\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 const _datetimeFormats = ref(isPlainObject(options.datetimeFormats)\r\n ? options.datetimeFormats\r\n : { [_locale.value]: {} });\r\n const _numberFormats = ref(isPlainObject(options.numberFormats)\r\n ? options.numberFormats\r\n : { [_locale.value]: {} });\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 let _warnHtmlMessage = 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 function getCoreContext() {\r\n return createCoreContext({\r\n version: VERSION,\r\n locale: _locale.value,\r\n fallbackLocale: _fallbackLocale.value,\r\n messages: _messages.value,\r\n datetimeFormats: _datetimeFormats.value,\r\n numberFormats: _numberFormats.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 __datetimeFormatters: isPlainObject(_context)\r\n ? _context.__datetimeFormatters\r\n : undefined,\r\n __numberFormatters: isPlainObject(_context)\r\n ? _context.__numberFormatters\r\n : undefined,\r\n __v_emitter: isPlainObject(_context)\r\n ? _context.__v_emitter\r\n : undefined,\r\n __meta: { framework: 'vue' }\r\n });\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 // 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 = computed(() => _datetimeFormats.value);\r\n // numberFormats\r\n const numberFormats = 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 === false;\r\n }\r\n function 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 ret = fn(_context);\r\n }\r\n finally {\r\n setAdditionalMeta(null);\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(6 /* 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(14 /* UNEXPECTED_RETURN_TYPE */);\r\n }\r\n }\r\n // t\r\n function t(...args) {\r\n return wrapWithDeps(context => translate(context, ...args), () => parseTranslateArgs(...args), 'translate', root => root.t(...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(15 /* 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 => datetime(context, ...args), () => parseDateTimeArgs(...args), 'datetime format', root => root.d(...args), () => MISSING_RESOLVE_VALUE, val => isString(val));\r\n }\r\n // n\r\n function n(...args) {\r\n return wrapWithDeps(context => number(context, ...args), () => parseNumberArgs(...args), 'number format', root => root.n(...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) ? createVNode(Text, null, val, 0) : 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 = translate(_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 => [createVNode(Text, null, key, 0)], val => isArray(val));\r\n }\r\n // numberParts, using for `i18n-n` component\r\n function numberParts(...args) {\r\n return wrapWithDeps(context => number(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 => datetime(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 resolveValue(message, key) !== null;\r\n }\r\n function resolveMessages(key) {\r\n let messages = null;\r\n const locales = getLocaleChain(_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 = resolveValue(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) {\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 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 datetimeFormats,\r\n numberFormats,\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 rt,\r\n d,\r\n n,\r\n te,\r\n tm,\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 getPostTranslationHandler,\r\n setPostTranslationHandler,\r\n getMissingHandler,\r\n setMissingHandler,\r\n [TransrateVNodeSymbol]: transrateVNode,\r\n [NumberPartsSymbol]: numberParts,\r\n [DatetimePartsSymbol]: datetimeParts,\r\n [SetPluralRulesSymbol]: setPluralRules,\r\n [InejctWithOption]: options.__injectWithOption // eslint-disable-line @typescript-eslint/no-explicit-any\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}\n\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 : 'en-US';\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(8 /* NOT_SUPPORTED_FORMATTER */));\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && options.preserveDirectiveContent) {\r\n warn(getWarnMessage(9 /* 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 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\nfunction createVueI18n(options = {}) {\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(8 /* 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(8 /* 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(9 /* 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(9 /* 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(15 /* 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 || {}, options);\r\n },\r\n rt(...args) {\r\n return composer.rt(...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(15 /* 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 || {}, options);\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 composer.d(...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 composer.n(...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(10 /* 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 // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const __composer = composer;\r\n __composer[EnableEmitter] && __composer[EnableEmitter](emitter);\r\n };\r\n vueI18n.__disableEmitter = () => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const __composer = composer;\r\n __composer[DisableEmitter] && __composer[DisableEmitter]();\r\n };\r\n }\r\n return vueI18n;\r\n}\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 validator: (val) => val === 'parent' || val === 'global',\r\n default: 'parent'\r\n },\r\n i18n: {\r\n type: Object\r\n }\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 = {\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 setup(props, context) {\r\n const { slots, attrs } = context;\r\n const i18n = props.i18n ||\r\n useI18n({\r\n useScope: props.scope,\r\n __useComponent: true\r\n });\r\n const keys = Object.keys(slots).filter(key => key !== '_');\r\n return () => {\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 // prettier-ignore\r\n return isString(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : isObject(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : h(Fragment, assignedAttrs, children);\r\n };\r\n }\r\n};\r\nfunction getInterpolateArg({ slots }, keys) {\r\n if (keys.length === 1 && keys[0] === 'default') {\r\n // default slot only\r\n return slots.default ? slots.default() : [];\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}\n\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 return slot\r\n ? slot({ [part.type]: part.value, index, parts })\r\n : [part.value];\r\n });\r\n }\r\n else if (isString(parts)) {\r\n children = [parts];\r\n }\r\n const assignedAttrs = assign({}, attrs);\r\n // prettier-ignore\r\n return isString(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : isObject(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : h(Fragment, assignedAttrs, children);\r\n };\r\n}\n\nconst NUMBER_FORMAT_KEYS = [\r\n 'localeMatcher',\r\n 'style',\r\n 'unit',\r\n 'unitDisplay',\r\n 'currency',\r\n 'currencyDisplay',\r\n 'useGrouping',\r\n 'numberingSystem',\r\n 'minimumIntegerDigits',\r\n 'minimumFractionDigits',\r\n 'maximumFractionDigits',\r\n 'minimumSignificantDigits',\r\n 'maximumSignificantDigits',\r\n 'notation',\r\n 'formatMatcher'\r\n];\r\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 = {\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 setup(props, context) {\r\n const i18n = props.i18n ||\r\n useI18n({ useScope: 'parent', __useComponent: true });\r\n return renderFormatter(props, context, NUMBER_FORMAT_KEYS, (...args) => \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n i18n[NumberPartsSymbol](...args));\r\n }\r\n};\n\nconst DATETIME_FORMAT_KEYS = [\r\n 'dateStyle',\r\n 'timeStyle',\r\n 'fractionalSecondDigits',\r\n 'calendar',\r\n 'dayPeriod',\r\n 'numberingSystem',\r\n 'localeMatcher',\r\n 'timeZone',\r\n 'hour12',\r\n 'hourCycle',\r\n 'formatMatcher',\r\n 'weekday',\r\n 'era',\r\n 'year',\r\n 'month',\r\n 'day',\r\n 'hour',\r\n 'minute',\r\n 'second',\r\n 'timeZoneName'\r\n];\r\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 = {\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 setup(props, context) {\r\n const i18n = props.i18n ||\r\n useI18n({ useScope: 'parent', __useComponent: true });\r\n return renderFormatter(props, context, DATETIME_FORMAT_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 bind = (el, { instance, value, modifiers }) => {\r\n /* istanbul ignore if */\r\n if (!instance || !instance.$) {\r\n throw createI18nError(22 /* 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(7 /* NOT_SUPPORTED_PRESERVE */));\r\n }\r\n const parsedValue = parseValue(value);\r\n el.textContent = composer.t(...makeParams(parsedValue));\r\n };\r\n return {\r\n beforeMount: bind,\r\n beforeUpdate: bind\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(19 /* REQUIRED_VALUE */, 'path');\r\n }\r\n return value;\r\n }\r\n else {\r\n throw createI18nError(20 /* 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(11 /* 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 app.directive('t', vTDirective(i18n));\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\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.__VUE_I18N__ && 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 api.on.getInspectorState(payload => {\r\n if (payload.app === app &&\r\n payload.inspectorId === \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */) {\r\n inspectScope(payload, i18n);\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\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.__VUE_I18N__) {\r\n // add custom tags local scope only\r\n if (instance.vnode.el.__VUE_I18N__ !== global) {\r\n const label = instance.type.name || instance.type.displayName || instance.type.__file;\r\n const tag = {\r\n label: `i18n (${label} 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 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// 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 const label = keyInstance.type.name ||\r\n keyInstance.type.displayName ||\r\n keyInstance.type.__file;\r\n payload.rootNodes.push({\r\n id: composer.id.toString(),\r\n label: `${label} Scope`\r\n });\r\n }\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 const composer = getComposer$1(payload.nodeId, i18n);\r\n if (composer) {\r\n payload.state = makeScopeInspectState(composer);\r\n }\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 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 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// supports compatibility for legacy vue-i18n APIs\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(22 /* 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 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_I18N_PROD_DEVTOOLS__) && !false) {\r\n this.$el.__VUE_I18N__ = this.$i18n.__composer;\r\n const emitter = (this.__v_emitter = 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 beforeUnmount() {\r\n const instance = getCurrentInstance();\r\n /* istanbul ignore if */\r\n if (!instance) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n /* istanbul ignore if */\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) && !false) {\r\n if (this.__v_emitter) {\r\n this.__v_emitter.off('*', addTimelineEvent);\r\n delete this.__v_emitter;\r\n }\r\n const _vueI18n = this.$i18n;\r\n _vueI18n.__disableEmitter && _vueI18n.__disableEmitter();\r\n delete this.$el.__VUE_I18N__;\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 * Vue I18n factory\r\n *\r\n * @param options - An options, see the {@link I18nOptions}\r\n *\r\n * @returns {@link I18n} instance\r\n *\r\n * @remarks\r\n * If you use Legacy API mode, you need toto specify {@link VueI18nOptions} and `legacy: true` option.\r\n *\r\n * If you use composition API mode, you need to specify {@link ComposerOptions}.\r\n *\r\n * @VueI18nSee [Getting Started](../guide/)\r\n * @VueI18nSee [Composition API](../guide/advanced/composition)\r\n *\r\n * @example\r\n * case: for Legacy API\r\n * ```js\r\n * import { createApp } from 'vue'\r\n * import { createI18n } from 'vue-i18n'\r\n *\r\n * // call with I18n option\r\n * const i18n = createI18n({\r\n * locale: 'ja',\r\n * messages: {\r\n * en: { ... },\r\n * ja: { ... }\r\n * }\r\n * })\r\n *\r\n * const App = {\r\n * // ...\r\n * }\r\n *\r\n * const app = createApp(App)\r\n *\r\n * // install!\r\n * app.use(i18n)\r\n * app.mount('#app')\r\n * ```\r\n *\r\n * @example\r\n * case: for composition API\r\n * ```js\r\n * import { createApp } from 'vue'\r\n * import { createI18n, useI18n } from 'vue-i18n'\r\n *\r\n * // call with I18n option\r\n * const i18n = createI18n({\r\n * legacy: false, // you must specify 'legacy: false' option\r\n * locale: 'ja',\r\n * messages: {\r\n * en: { ... },\r\n * ja: { ... }\r\n * }\r\n * })\r\n *\r\n * const App = {\r\n * setup() {\r\n * // ...\r\n * const { t } = useI18n({ ... })\r\n * return { ... , t }\r\n * }\r\n * }\r\n *\r\n * const app = createApp(App)\r\n *\r\n * // install!\r\n * app.use(i18n)\r\n * app.mount('#app')\r\n * ```\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction createI18n(options = {}) {\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 const __globalInjection = !!options.globalInjection;\r\n const __instances = new Map();\r\n // prettier-ignore\r\n const __global = __VUE_I18N_LEGACY_API__ && __legacyMode\r\n ? createVueI18n(options)\r\n : createComposer(options);\r\n const symbol = makeSymbol((process.env.NODE_ENV !== 'production') ? 'vue-i18n' : '');\r\n const i18n = {\r\n // mode\r\n get mode() {\r\n // prettier-ignore\r\n return __VUE_I18N_LEGACY_API__\r\n ? __legacyMode\r\n ? 'legacy'\r\n : 'composition'\r\n : 'composition';\r\n },\r\n // install plugin\r\n async install(app, ...options) {\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) && !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 // setup vue-devtools plugin\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) && !false) {\r\n const ret = await enableDevTools(app, i18n);\r\n if (!ret) {\r\n throw createI18nError(21 /* 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 // @internal\r\n __instances,\r\n // @internal\r\n __getInstance(component) {\r\n return __instances.get(component) || null;\r\n },\r\n // @internal\r\n __setInstance(component, instance) {\r\n __instances.set(component, instance);\r\n },\r\n // @internal\r\n __deleteInstance(component) {\r\n __instances.delete(component);\r\n }\r\n };\r\n return i18n;\r\n}\r\n/**\r\n * Use Composition API for Vue I18n\r\n *\r\n * @param options - An options, see {@link UseI18nOptions}\r\n *\r\n * @returns {@link Composer} instance\r\n *\r\n * @remarks\r\n * This function is mainly used by `setup`.\r\n *\r\n * If options are specified, Composer instance is created for each component and you can be localized on the component.\r\n *\r\n * If options are not specified, you can be localized using the global Composer.\r\n *\r\n * @example\r\n * case: Component resource base localization\r\n * ```html\r\n * \r\n *\r\n * \r\n * ```\r\n *\r\n * @VueI18nComposition\r\n */\r\nfunction useI18n(options = {}) {\r\n const instance = getCurrentInstance();\r\n if (instance == null) {\r\n throw createI18nError(16 /* MUST_BE_CALL_SETUP_TOP */);\r\n }\r\n if (!instance.appContext.app.__VUE_I18N_SYMBOL__) {\r\n throw createI18nError(17 /* NOT_INSLALLED */);\r\n }\r\n const i18n = inject(instance.appContext.app.__VUE_I18N_SYMBOL__);\r\n /* istanbul ignore if */\r\n if (!i18n) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n // prettier-ignore\r\n const global = i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n // prettier-ignore\r\n const scope = isEmptyObject(options)\r\n ? ('__i18n' in instance.type)\r\n ? 'local'\r\n : 'global'\r\n : !options.useScope\r\n ? 'local'\r\n : options.useScope;\r\n if (scope === 'global') {\r\n let messages = isObject(options.messages) ? options.messages : {};\r\n if ('__i18nGlobal' in instance.type) {\r\n messages = getLocaleMessages(global.locale.value, {\r\n messages,\r\n __i18n: instance.type.__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 // 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 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(12 /* NOT_FOUND_PARENT_SCOPE */));\r\n }\r\n composer = global;\r\n }\r\n return composer;\r\n }\r\n // scope 'local' case\r\n if (i18n.mode === 'legacy') {\r\n throw createI18nError(18 /* NOT_AVAILABLE_IN_LEGACY_MODE */);\r\n }\r\n const i18nInternal = i18n;\r\n let composer = i18nInternal.__getInstance(instance);\r\n if (composer == null) {\r\n const type = instance.type;\r\n const composerOptions = assign({}, options);\r\n if (type.__i18n) {\r\n composerOptions.__i18n = type.__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\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 const vueI18n = i18nInternal.__getInstance(current);\r\n if (vueI18n != null) {\r\n composer = vueI18n\r\n .__composer;\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n if (useComponent && composer && !composer[InejctWithOption]) {\r\n composer = null;\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 onMounted(() => {\r\n // inject composer instance to DOM for intlify-devtools\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_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_I18N_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\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(22 /* 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(22 /* 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{\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, NumberFormat, Translation, VERSION, createI18n, useI18n, vTDirective };\n"],"sourceRoot":""}