{"version":3,"sources":["webpack:///./node_modules/vue-i18n/dist/vue-i18n.esm.js"],"names":["numberFormatKeys","warn","msg","err","console","stack","error","isObject","obj","toString","Object","prototype","OBJECT_STRING","isPlainObject","call","isNull","val","undefined","parseArgs","args","len","arguments","length","locale","params","Array","isArray","looseClone","JSON","parse","stringify","remove","arr","item","index","indexOf","splice","includes","hasOwnProperty","hasOwn","key","merge","target","arguments$1","output","i","source","looseEqual","a","b","isObjectA","isObjectB","String","isArrayA","isArrayB","every","e","keysA","keys","keysB","extend","Vue","defineProperty","get","this","_i18n","$t","values","i18n","$i18n","_t","apply","_getMessages","concat","$tc","choice","_tc","$te","_te","$d","value","ref","d","$n","n","mixin","beforeCreate","options","$options","__i18n","VueI18n","localeMessages","forEach","resource","mergeLocaleMessage","_i18nWatcher","watchI18nData","$root","root","formatter","fallbackLocale","formatFallbackMessages","silentTranslationWarn","silentFallbackWarn","pluralizationRules","preserveDirectiveContent","localeMessages$1","messages","sharedMessages","sync","_localeWatcher","watchLocale","parent","beforeMount","subscribeDataChanging","_subscribing","beforeDestroy","self","$nextTick","unsubscribeDataChanging","destroyVM","interpolationComponent","name","functional","props","tag","type","path","required","places","render","h","data","slots","children","onlyHasDefaultPlace","useLegacyPlaces","default","prop","Boolean","createParamsFromPlaces","filter","child","text","trim","everyPlace","vnodeHasPlaceAttribute","reduce","assignChildPlace","assignChildIndex","assign","attrs","place","vnode","numberComponent","Number","format","acc","parts","_ntp","map","part","slot","scopedSlots","staticClass","bind","el","binding","assert","t","update","oldVNode","context","localeEqual","oldValue","_localeMessage","getLocaleMessage","unbind","vm","modifiers","preserve","textContent","_vt","_locale","ref$1","ref$2","parseValue","tc","makeParams","push","install","_Vue","installed","version","split","directive","component","strats","config","optionMergeStrategies","parentVal","childVal","BaseFormatter","_caches","create","interpolate","message","tokens","compile","RE_TOKEN_LIST_VALUE","RE_TOKEN_NAMED_VALUE","position","char","sub","isClosed","test","compiled","mode","token","parseInt","APPEND","PUSH","INC_SUB_PATH_DEPTH","PUSH_SUB_PATH","BEFORE_PATH","IN_PATH","BEFORE_IDENT","IN_IDENT","IN_SUB_PATH","IN_SINGLE_QUOTE","IN_DOUBLE_QUOTE","AFTER_PATH","ERROR","pathStateMachine","literalValueRE","isLiteral","exp","stripQuotes","str","charCodeAt","slice","getPathCharType","ch","code","formatSubPath","trimmed","charAt","isNaN","parse$1","c","newChar","transition","action","typeMap","subPathDepth","actions","maybeUnescapeQuote","nextChar","I18nPath","_cache","parsePath","hit","getPathValue","paths","last","availabilities","htmlTagMatcher","linkKeyMatcher","linkKeyPrefixMatcher","bracketsMatcher","defaultModifiers","toLocaleUpperCase","toLocaleLowerCase","substr","defaultFormatter","this$1","window","dateTimeFormats","numberFormats","_vm","_formatter","_modifiers","_missing","missing","_root","_sync","_fallbackRoot","fallbackRoot","_formatFallbackMessages","_silentTranslationWarn","_silentFallbackWarn","_dateTimeFormatters","_numberFormatters","_path","_dataListeners","_preserveDirectiveContent","_warnHtmlInMessage","warnHtmlInMessage","_postTranslation","postTranslation","_exist","_checkLocaleMessage","_initVM","prototypeAccessors","configurable","availableLocales","level","fn","pop","ret","join","silent","$destroy","$watch","nextTick","$forceUpdate","deep","$set","immediate","_getDateTimeFormats","_getNumberFormats","sort","set","_localeChainCache","fallback","handler","orgLevel","_warnDefault","result","interpolateMode","missingRet","parsedArgs","_render","_isFallbackRoot","_isSilentFallbackWarn","RegExp","_isSilentFallback","_isSilentTranslationWarn","_interpolate","host","visitedLinkStack","pathRet","_link","matches","match","idx","link","linkKeyPrefixMatches","linkPrefix","formatterName","linkPlaceholder","replace","translated","Error","_translate","_appendItemToChain","chain","blocks","follow","_appendLocaleToChain","_appendBlockToChain","block","_getLocaleChain","start","defaults","res","step","_i","predefined","fetchChoice","choices","getChoiceIndex","choicesLength","defaultImpl","_choice","_choicesLength","Math","abs","min","te","setLocaleMessage","getDateTimeFormat","setDateTimeFormat","_clearDateTimeFormat","mergeDateTimeFormat","id","_localizeDateTime","formats","Intl","DateTimeFormat","_d","getNumberFormat","setNumberFormat","_clearNumberFormat","mergeNumberFormat","_getNumberFormatter","NumberFormat","_n","numberFormat","nf","formatToParts","defineProperties","intlDefined","dateTimeFormat"],"mappings":"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","file":"js/npm.vue-i18n.35a1ef3edd7c0984a4b8.1741903125656.js","sourcesContent":["/*!\n * vue-i18n v8.17.4 \n * (c) 2020 kazuya kawaguchi\n * Released under the MIT License.\n */\n/* */\n\n/**\n * constants\n */\n\nvar numberFormatKeys = [\n 'style',\n 'currency',\n 'currencyDisplay',\n 'useGrouping',\n 'minimumIntegerDigits',\n 'minimumFractionDigits',\n 'maximumFractionDigits',\n 'minimumSignificantDigits',\n 'maximumSignificantDigits',\n 'localeMatcher',\n 'formatMatcher',\n 'unit'\n];\n\n/**\n * utilities\n */\n\nfunction warn (msg, err) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.warn(err.stack);\n }\n }\n}\n\nfunction error (msg, err) {\n if (typeof console !== 'undefined') {\n console.error('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.error(err.stack);\n }\n }\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nvar toString = Object.prototype.toString;\nvar OBJECT_STRING = '[object Object]';\nfunction isPlainObject (obj) {\n return toString.call(obj) === OBJECT_STRING\n}\n\nfunction isNull (val) {\n return val === null || val === undefined\n}\n\nfunction parseArgs () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var locale = null;\n var params = null;\n if (args.length === 1) {\n if (isObject(args[0]) || Array.isArray(args[0])) {\n params = args[0];\n } else if (typeof args[0] === 'string') {\n locale = args[0];\n }\n } else if (args.length === 2) {\n if (typeof args[0] === 'string') {\n locale = args[0];\n }\n /* istanbul ignore if */\n if (isObject(args[1]) || Array.isArray(args[1])) {\n params = args[1];\n }\n }\n\n return { locale: locale, params: params }\n}\n\nfunction looseClone (obj) {\n return JSON.parse(JSON.stringify(obj))\n}\n\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\nfunction includes (arr, item) {\n return !!~arr.indexOf(item)\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\nfunction merge (target) {\n var arguments$1 = arguments;\n\n var output = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments$1[i];\n if (source !== undefined && source !== null) {\n var key = (void 0);\n for (key in source) {\n if (hasOwn(source, key)) {\n if (isObject(source[key])) {\n output[key] = merge(output[key], source[key]);\n } else {\n output[key] = source[key];\n }\n }\n }\n }\n }\n return output\n}\n\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/* */\n\nfunction extend (Vue) {\n if (!Vue.prototype.hasOwnProperty('$i18n')) {\n // $FlowFixMe\n Object.defineProperty(Vue.prototype, '$i18n', {\n get: function get () { return this._i18n }\n });\n }\n\n Vue.prototype.$t = function (key) {\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n\n var i18n = this.$i18n;\n return i18n._t.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this ].concat( values ))\n };\n\n Vue.prototype.$tc = function (key, choice) {\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n\n var i18n = this.$i18n;\n return i18n._tc.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this, choice ].concat( values ))\n };\n\n Vue.prototype.$te = function (key, locale) {\n var i18n = this.$i18n;\n return i18n._te(key, i18n.locale, i18n._getMessages(), locale)\n };\n\n Vue.prototype.$d = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).d.apply(ref, [ value ].concat( args ))\n };\n\n Vue.prototype.$n = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).n.apply(ref, [ value ].concat( args ))\n };\n}\n\n/* */\n\nvar mixin = {\n beforeCreate: function beforeCreate () {\n var options = this.$options;\n options.i18n = options.i18n || (options.__i18n ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n if (options.__i18n) {\n try {\n var localeMessages = {};\n options.__i18n.forEach(function (resource) {\n localeMessages = merge(localeMessages, JSON.parse(resource));\n });\n Object.keys(localeMessages).forEach(function (locale) {\n options.i18n.mergeLocaleMessage(locale, localeMessages[locale]);\n });\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n error(\"Cannot parse locale messages via custom blocks.\", e);\n }\n }\n }\n this._i18n = options.i18n;\n this._i18nWatcher = this._i18n.watchI18nData();\n } else if (isPlainObject(options.i18n)) {\n // component local i18n\n if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n options.i18n.root = this.$root;\n options.i18n.formatter = this.$root.$i18n.formatter;\n options.i18n.fallbackLocale = this.$root.$i18n.fallbackLocale;\n options.i18n.formatFallbackMessages = this.$root.$i18n.formatFallbackMessages;\n options.i18n.silentTranslationWarn = this.$root.$i18n.silentTranslationWarn;\n options.i18n.silentFallbackWarn = this.$root.$i18n.silentFallbackWarn;\n options.i18n.pluralizationRules = this.$root.$i18n.pluralizationRules;\n options.i18n.preserveDirectiveContent = this.$root.$i18n.preserveDirectiveContent;\n }\n\n // init locale messages via custom blocks\n if (options.__i18n) {\n try {\n var localeMessages$1 = {};\n options.__i18n.forEach(function (resource) {\n localeMessages$1 = merge(localeMessages$1, JSON.parse(resource));\n });\n options.i18n.messages = localeMessages$1;\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Cannot parse locale messages via custom blocks.\", e);\n }\n }\n }\n\n var ref = options.i18n;\n var sharedMessages = ref.sharedMessages;\n if (sharedMessages && isPlainObject(sharedMessages)) {\n options.i18n.messages = merge(options.i18n.messages, sharedMessages);\n }\n\n this._i18n = new VueI18n(options.i18n);\n this._i18nWatcher = this._i18n.watchI18nData();\n\n if (options.i18n.sync === undefined || !!options.i18n.sync) {\n this._localeWatcher = this.$i18n.watchLocale();\n }\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Cannot be interpreted 'i18n' option.\");\n }\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n // root i18n\n this._i18n = this.$root.$i18n;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n // parent i18n\n this._i18n = options.parent.$i18n;\n }\n },\n\n beforeMount: function beforeMount () {\n var options = this.$options;\n options.i18n = options.i18n || (options.__i18n ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (isPlainObject(options.i18n)) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Cannot be interpreted 'i18n' option.\");\n }\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n }\n },\n\n beforeDestroy: function beforeDestroy () {\n if (!this._i18n) { return }\n\n var self = this;\n this.$nextTick(function () {\n if (self._subscribing) {\n self._i18n.unsubscribeDataChanging(self);\n delete self._subscribing;\n }\n\n if (self._i18nWatcher) {\n self._i18nWatcher();\n self._i18n.destroyVM();\n delete self._i18nWatcher;\n }\n\n if (self._localeWatcher) {\n self._localeWatcher();\n delete self._localeWatcher;\n }\n\n self._i18n = null;\n });\n }\n};\n\n/* */\n\nvar interpolationComponent = {\n name: 'i18n',\n functional: true,\n props: {\n tag: {\n type: String\n },\n path: {\n type: String,\n required: true\n },\n locale: {\n type: String\n },\n places: {\n type: [Array, Object]\n }\n },\n render: function render (h, ref) {\n var data = ref.data;\n var parent = ref.parent;\n var props = ref.props;\n var slots = ref.slots;\n\n var $i18n = parent.$i18n;\n if (!$i18n) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot find VueI18n instance!');\n }\n return\n }\n\n var path = props.path;\n var locale = props.locale;\n var places = props.places;\n var params = slots();\n var children = $i18n.i(\n path,\n locale,\n onlyHasDefaultPlace(params) || places\n ? useLegacyPlaces(params.default, places)\n : params\n );\n\n var tag = props.tag || 'span';\n return tag ? h(tag, data, children) : children\n }\n};\n\nfunction onlyHasDefaultPlace (params) {\n var prop;\n for (prop in params) {\n if (prop !== 'default') { return false }\n }\n return Boolean(prop)\n}\n\nfunction useLegacyPlaces (children, places) {\n var params = places ? createParamsFromPlaces(places) : {};\n\n if (!children) { return params }\n\n // Filter empty text nodes\n children = children.filter(function (child) {\n return child.tag || child.text.trim() !== ''\n });\n\n var everyPlace = children.every(vnodeHasPlaceAttribute);\n if (process.env.NODE_ENV !== 'production' && everyPlace) {\n warn('`place` attribute is deprecated in next major version. Please switch to Vue slots.');\n }\n\n return children.reduce(\n everyPlace ? assignChildPlace : assignChildIndex,\n params\n )\n}\n\nfunction createParamsFromPlaces (places) {\n if (process.env.NODE_ENV !== 'production') {\n warn('`places` prop is deprecated in next major version. Please switch to Vue slots.');\n }\n\n return Array.isArray(places)\n ? places.reduce(assignChildIndex, {})\n : Object.assign({}, places)\n}\n\nfunction assignChildPlace (params, child) {\n if (child.data && child.data.attrs && child.data.attrs.place) {\n params[child.data.attrs.place] = child;\n }\n return params\n}\n\nfunction assignChildIndex (params, child, index) {\n params[index] = child;\n return params\n}\n\nfunction vnodeHasPlaceAttribute (vnode) {\n return Boolean(vnode.data && vnode.data.attrs && vnode.data.attrs.place)\n}\n\n/* */\n\nvar numberComponent = {\n name: 'i18n-n',\n functional: true,\n props: {\n tag: {\n type: String,\n default: 'span'\n },\n value: {\n type: Number,\n required: true\n },\n format: {\n type: [String, Object]\n },\n locale: {\n type: String\n }\n },\n render: function render (h, ref) {\n var props = ref.props;\n var parent = ref.parent;\n var data = ref.data;\n\n var i18n = parent.$i18n;\n\n if (!i18n) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot find VueI18n instance!');\n }\n return null\n }\n\n var key = null;\n var options = null;\n\n if (typeof props.format === 'string') {\n key = props.format;\n } else if (isObject(props.format)) {\n if (props.format.key) {\n key = props.format.key;\n }\n\n // Filter out number format options only\n options = Object.keys(props.format).reduce(function (acc, prop) {\n var obj;\n\n if (includes(numberFormatKeys, prop)) {\n return Object.assign({}, acc, ( obj = {}, obj[prop] = props.format[prop], obj ))\n }\n return acc\n }, null);\n }\n\n var locale = props.locale || i18n.locale;\n var parts = i18n._ntp(props.value, locale, key, options);\n\n var values = parts.map(function (part, index) {\n var obj;\n\n var slot = data.scopedSlots && data.scopedSlots[part.type];\n return slot ? slot(( obj = {}, obj[part.type] = part.value, obj.index = index, obj.parts = parts, obj )) : part.value\n });\n\n return h(props.tag, {\n attrs: data.attrs,\n 'class': data['class'],\n staticClass: data.staticClass\n }, values)\n }\n};\n\n/* */\n\nfunction bind (el, binding, vnode) {\n if (!assert(el, vnode)) { return }\n\n t(el, binding, vnode);\n}\n\nfunction update (el, binding, vnode, oldVNode) {\n if (!assert(el, vnode)) { return }\n\n var i18n = vnode.context.$i18n;\n if (localeEqual(el, vnode) &&\n (looseEqual(binding.value, binding.oldValue) &&\n looseEqual(el._localeMessage, i18n.getLocaleMessage(i18n.locale)))) { return }\n\n t(el, binding, vnode);\n}\n\nfunction unbind (el, binding, vnode, oldVNode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return\n }\n\n var i18n = vnode.context.$i18n || {};\n if (!binding.modifiers.preserve && !i18n.preserveDirectiveContent) {\n el.textContent = '';\n }\n el._vt = undefined;\n delete el['_vt'];\n el._locale = undefined;\n delete el['_locale'];\n el._localeMessage = undefined;\n delete el['_localeMessage'];\n}\n\nfunction assert (el, vnode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return false\n }\n\n if (!vm.$i18n) {\n warn('VueI18n instance does not exists in Vue instance');\n return false\n }\n\n return true\n}\n\nfunction localeEqual (el, vnode) {\n var vm = vnode.context;\n return el._locale === vm.$i18n.locale\n}\n\nfunction t (el, binding, vnode) {\n var ref$1, ref$2;\n\n var value = binding.value;\n\n var ref = parseValue(value);\n var path = ref.path;\n var locale = ref.locale;\n var args = ref.args;\n var choice = ref.choice;\n if (!path && !locale && !args) {\n warn('value type not supported');\n return\n }\n\n if (!path) {\n warn('`path` is required in v-t directive');\n return\n }\n\n var vm = vnode.context;\n if (choice) {\n el._vt = el.textContent = (ref$1 = vm.$i18n).tc.apply(ref$1, [ path, choice ].concat( makeParams(locale, args) ));\n } else {\n el._vt = el.textContent = (ref$2 = vm.$i18n).t.apply(ref$2, [ path ].concat( makeParams(locale, args) ));\n }\n el._locale = vm.$i18n.locale;\n el._localeMessage = vm.$i18n.getLocaleMessage(vm.$i18n.locale);\n}\n\nfunction parseValue (value) {\n var path;\n var locale;\n var args;\n var choice;\n\n if (typeof value === 'string') {\n path = value;\n } else if (isPlainObject(value)) {\n path = value.path;\n locale = value.locale;\n args = value.args;\n choice = value.choice;\n }\n\n return { path: path, locale: locale, args: args, choice: choice }\n}\n\nfunction makeParams (locale, args) {\n var params = [];\n\n locale && params.push(locale);\n if (args && (Array.isArray(args) || isPlainObject(args))) {\n params.push(args);\n }\n\n return params\n}\n\nvar Vue;\n\nfunction install (_Vue) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && install.installed && _Vue === Vue) {\n warn('already installed.');\n return\n }\n install.installed = true;\n\n Vue = _Vue;\n\n var version = (Vue.version && Number(Vue.version.split('.')[0])) || -1;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && version < 2) {\n warn((\"vue-i18n (\" + (install.version) + \") need to use Vue 2.0 or later (Vue: \" + (Vue.version) + \").\"));\n return\n }\n\n extend(Vue);\n Vue.mixin(mixin);\n Vue.directive('t', { bind: bind, update: update, unbind: unbind });\n Vue.component(interpolationComponent.name, interpolationComponent);\n Vue.component(numberComponent.name, numberComponent);\n\n // use simple mergeStrategies to prevent i18n instance lose '__proto__'\n var strats = Vue.config.optionMergeStrategies;\n strats.i18n = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n };\n}\n\n/* */\n\nvar BaseFormatter = function BaseFormatter () {\n this._caches = Object.create(null);\n};\n\nBaseFormatter.prototype.interpolate = function interpolate (message, values) {\n if (!values) {\n return [message]\n }\n var tokens = this._caches[message];\n if (!tokens) {\n tokens = parse(message);\n this._caches[message] = tokens;\n }\n return compile(tokens, values)\n};\n\n\n\nvar RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nvar RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\n\nfunction parse (format) {\n var tokens = [];\n var position = 0;\n\n var text = '';\n while (position < format.length) {\n var char = format[position++];\n if (char === '{') {\n if (text) {\n tokens.push({ type: 'text', value: text });\n }\n\n text = '';\n var sub = '';\n char = format[position++];\n while (char !== undefined && char !== '}') {\n sub += char;\n char = format[position++];\n }\n var isClosed = char === '}';\n\n var type = RE_TOKEN_LIST_VALUE.test(sub)\n ? 'list'\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\n ? 'named'\n : 'unknown';\n tokens.push({ value: sub, type: type });\n } else if (char === '%') {\n // when found rails i18n syntax, skip text capture\n if (format[(position)] !== '{') {\n text += char;\n }\n } else {\n text += char;\n }\n }\n\n text && tokens.push({ type: 'text', value: text });\n\n return tokens\n}\n\nfunction compile (tokens, values) {\n var compiled = [];\n var index = 0;\n\n var mode = Array.isArray(values)\n ? 'list'\n : isObject(values)\n ? 'named'\n : 'unknown';\n if (mode === 'unknown') { return compiled }\n\n while (index < tokens.length) {\n var token = tokens[index];\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break\n case 'named':\n if (mode === 'named') {\n compiled.push((values)[token.value]);\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Type of token '\" + (token.type) + \"' and format of value '\" + mode + \"' don't match!\"));\n }\n }\n break\n case 'unknown':\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Detect 'unknown' type of token!\");\n }\n break\n }\n index++;\n }\n\n return compiled\n}\n\n/* */\n\n/**\n * Path parser\n * - Inspired:\n * Vue.js Path parser\n */\n\n// actions\nvar APPEND = 0;\nvar PUSH = 1;\nvar INC_SUB_PATH_DEPTH = 2;\nvar PUSH_SUB_PATH = 3;\n\n// states\nvar BEFORE_PATH = 0;\nvar IN_PATH = 1;\nvar BEFORE_IDENT = 2;\nvar IN_IDENT = 3;\nvar IN_SUB_PATH = 4;\nvar IN_SINGLE_QUOTE = 5;\nvar IN_DOUBLE_QUOTE = 6;\nvar AFTER_PATH = 7;\nvar ERROR = 8;\n\nvar pathStateMachine = [];\n\npathStateMachine[BEFORE_PATH] = {\n 'ws': [BEFORE_PATH],\n 'ident': [IN_IDENT, APPEND],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[IN_PATH] = {\n 'ws': [IN_PATH],\n '.': [BEFORE_IDENT],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[BEFORE_IDENT] = {\n 'ws': [BEFORE_IDENT],\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND]\n};\n\npathStateMachine[IN_IDENT] = {\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND],\n 'ws': [IN_PATH, PUSH],\n '.': [BEFORE_IDENT, PUSH],\n '[': [IN_SUB_PATH, PUSH],\n 'eof': [AFTER_PATH, PUSH]\n};\n\npathStateMachine[IN_SUB_PATH] = {\n \"'\": [IN_SINGLE_QUOTE, APPEND],\n '\"': [IN_DOUBLE_QUOTE, APPEND],\n '[': [IN_SUB_PATH, INC_SUB_PATH_DEPTH],\n ']': [IN_PATH, PUSH_SUB_PATH],\n 'eof': ERROR,\n 'else': [IN_SUB_PATH, APPEND]\n};\n\npathStateMachine[IN_SINGLE_QUOTE] = {\n \"'\": [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_SINGLE_QUOTE, APPEND]\n};\n\npathStateMachine[IN_DOUBLE_QUOTE] = {\n '\"': [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_DOUBLE_QUOTE, APPEND]\n};\n\n/**\n * Check if an expression is a literal value.\n */\n\nvar literalValueRE = /^\\s?(?:true|false|-?[\\d.]+|'[^']*'|\"[^\"]*\")\\s?$/;\nfunction isLiteral (exp) {\n return literalValueRE.test(exp)\n}\n\n/**\n * Strip quotes from a string\n */\n\nfunction stripQuotes (str) {\n var a = str.charCodeAt(0);\n var b = str.charCodeAt(str.length - 1);\n return a === b && (a === 0x22 || a === 0x27)\n ? str.slice(1, -1)\n : str\n}\n\n/**\n * Determine the type of a character in a keypath.\n */\n\nfunction getPathCharType (ch) {\n if (ch === undefined || ch === null) { return 'eof' }\n\n var code = ch.charCodeAt(0);\n\n switch (code) {\n case 0x5B: // [\n case 0x5D: // ]\n case 0x2E: // .\n case 0x22: // \"\n case 0x27: // '\n return ch\n\n case 0x5F: // _\n case 0x24: // $\n case 0x2D: // -\n return 'ident'\n\n case 0x09: // Tab\n case 0x0A: // Newline\n case 0x0D: // Return\n case 0xA0: // No-break space\n case 0xFEFF: // Byte Order Mark\n case 0x2028: // Line Separator\n case 0x2029: // Paragraph Separator\n return 'ws'\n }\n\n return 'ident'\n}\n\n/**\n * Format a subPath, return its plain form if it is\n * a literal string or number. Otherwise prepend the\n * dynamic indicator (*).\n */\n\nfunction formatSubPath (path) {\n var trimmed = path.trim();\n // invalid leading 0\n if (path.charAt(0) === '0' && isNaN(path)) { return false }\n\n return isLiteral(trimmed) ? stripQuotes(trimmed) : '*' + trimmed\n}\n\n/**\n * Parse a string path into an array of segments\n */\n\nfunction parse$1 (path) {\n var keys = [];\n var index = -1;\n var mode = BEFORE_PATH;\n var subPathDepth = 0;\n var c;\n var key;\n var newChar;\n var type;\n var transition;\n var action;\n var typeMap;\n var actions = [];\n\n actions[PUSH] = function () {\n if (key !== undefined) {\n keys.push(key);\n key = undefined;\n }\n };\n\n actions[APPEND] = function () {\n if (key === undefined) {\n key = newChar;\n } else {\n key += newChar;\n }\n };\n\n actions[INC_SUB_PATH_DEPTH] = function () {\n actions[APPEND]();\n subPathDepth++;\n };\n\n actions[PUSH_SUB_PATH] = function () {\n if (subPathDepth > 0) {\n subPathDepth--;\n mode = IN_SUB_PATH;\n actions[APPEND]();\n } else {\n subPathDepth = 0;\n if (key === undefined) { return false }\n key = formatSubPath(key);\n if (key === false) {\n return false\n } else {\n actions[PUSH]();\n }\n }\n };\n\n function maybeUnescapeQuote () {\n var nextChar = path[index + 1];\n if ((mode === IN_SINGLE_QUOTE && nextChar === \"'\") ||\n (mode === IN_DOUBLE_QUOTE && nextChar === '\"')) {\n index++;\n newChar = '\\\\' + nextChar;\n actions[APPEND]();\n return true\n }\n }\n\n while (mode !== null) {\n index++;\n c = path[index];\n\n if (c === '\\\\' && maybeUnescapeQuote()) {\n continue\n }\n\n type = getPathCharType(c);\n typeMap = pathStateMachine[mode];\n transition = typeMap[type] || typeMap['else'] || ERROR;\n\n if (transition === ERROR) {\n return // parse error\n }\n\n mode = transition[0];\n action = actions[transition[1]];\n if (action) {\n newChar = transition[2];\n newChar = newChar === undefined\n ? c\n : newChar;\n if (action() === false) {\n return\n }\n }\n\n if (mode === AFTER_PATH) {\n return keys\n }\n }\n}\n\n\n\n\n\nvar I18nPath = function I18nPath () {\n this._cache = Object.create(null);\n};\n\n/**\n * External parse that check for a cache hit first\n */\nI18nPath.prototype.parsePath = function parsePath (path) {\n var hit = this._cache[path];\n if (!hit) {\n hit = parse$1(path);\n if (hit) {\n this._cache[path] = hit;\n }\n }\n return hit || []\n};\n\n/**\n * Get path value from path string\n */\nI18nPath.prototype.getPathValue = function getPathValue (obj, path) {\n if (!isObject(obj)) { return null }\n\n var paths = this.parsePath(path);\n if (paths.length === 0) {\n return null\n } else {\n var length = paths.length;\n var last = obj;\n var i = 0;\n while (i < length) {\n var value = last[paths[i]];\n if (value === undefined) {\n return null\n }\n last = value;\n i++;\n }\n\n return last\n }\n};\n\n/* */\n\n\n\nvar htmlTagMatcher = /<\\/?[\\w\\s=\"/.':;#-\\/]+>/;\nvar linkKeyMatcher = /(?:@(?:\\.[a-z]+)?:(?:[\\w\\-_|.]+|\\([\\w\\-_|.]+\\)))/g;\nvar linkKeyPrefixMatcher = /^@(?:\\.([a-z]+))?:/;\nvar bracketsMatcher = /[()]/g;\nvar defaultModifiers = {\n 'upper': function (str) { return str.toLocaleUpperCase(); },\n 'lower': function (str) { return str.toLocaleLowerCase(); },\n 'capitalize': function (str) { return (\"\" + (str.charAt(0).toLocaleUpperCase()) + (str.substr(1))); }\n};\n\nvar defaultFormatter = new BaseFormatter();\n\nvar VueI18n = function VueI18n (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #290\n /* istanbul ignore if */\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n var locale = options.locale || 'en-US';\n var fallbackLocale = options.fallbackLocale === false\n ? false\n : options.fallbackLocale || 'en-US';\n var messages = options.messages || {};\n var dateTimeFormats = options.dateTimeFormats || {};\n var numberFormats = options.numberFormats || {};\n\n this._vm = null;\n this._formatter = options.formatter || defaultFormatter;\n this._modifiers = options.modifiers || {};\n this._missing = options.missing || null;\n this._root = options.root || null;\n this._sync = options.sync === undefined ? true : !!options.sync;\n this._fallbackRoot = options.fallbackRoot === undefined\n ? true\n : !!options.fallbackRoot;\n this._formatFallbackMessages = options.formatFallbackMessages === undefined\n ? false\n : !!options.formatFallbackMessages;\n this._silentTranslationWarn = options.silentTranslationWarn === undefined\n ? false\n : options.silentTranslationWarn;\n this._silentFallbackWarn = options.silentFallbackWarn === undefined\n ? false\n : !!options.silentFallbackWarn;\n this._dateTimeFormatters = {};\n this._numberFormatters = {};\n this._path = new I18nPath();\n this._dataListeners = [];\n this._preserveDirectiveContent = options.preserveDirectiveContent === undefined\n ? false\n : !!options.preserveDirectiveContent;\n this.pluralizationRules = options.pluralizationRules || {};\n this._warnHtmlInMessage = options.warnHtmlInMessage || 'off';\n this._postTranslation = options.postTranslation || null;\n\n this._exist = function (message, key) {\n if (!message || !key) { return false }\n if (!isNull(this$1._path.getPathValue(message, key))) { return true }\n // fallback for flat key\n if (message[key]) { return true }\n return false\n };\n\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n\n this._initVM({\n locale: locale,\n fallbackLocale: fallbackLocale,\n messages: messages,\n dateTimeFormats: dateTimeFormats,\n numberFormats: numberFormats\n });\n};\n\nvar prototypeAccessors = { vm: { configurable: true },messages: { configurable: true },dateTimeFormats: { configurable: true },numberFormats: { configurable: true },availableLocales: { configurable: true },locale: { configurable: true },fallbackLocale: { configurable: true },formatFallbackMessages: { configurable: true },missing: { configurable: true },formatter: { configurable: true },silentTranslationWarn: { configurable: true },silentFallbackWarn: { configurable: true },preserveDirectiveContent: { configurable: true },warnHtmlInMessage: { configurable: true },postTranslation: { configurable: true } };\n\nVueI18n.prototype._checkLocaleMessage = function _checkLocaleMessage (locale, level, message) {\n var paths = [];\n\n var fn = function (level, locale, message, paths) {\n if (isPlainObject(message)) {\n Object.keys(message).forEach(function (key) {\n var val = message[key];\n if (isPlainObject(val)) {\n paths.push(key);\n paths.push('.');\n fn(level, locale, val, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push(key);\n fn(level, locale, val, paths);\n paths.pop();\n }\n });\n } else if (Array.isArray(message)) {\n message.forEach(function (item, index) {\n if (isPlainObject(item)) {\n paths.push((\"[\" + index + \"]\"));\n paths.push('.');\n fn(level, locale, item, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push((\"[\" + index + \"]\"));\n fn(level, locale, item, paths);\n paths.pop();\n }\n });\n } else if (typeof message === 'string') {\n var ret = htmlTagMatcher.test(message);\n if (ret) {\n var msg = \"Detected HTML in message '\" + message + \"' of keypath '\" + (paths.join('')) + \"' at '\" + locale + \"'. Consider component interpolation with '' to avoid XSS. See https://bit.ly/2ZqJzkp\";\n if (level === 'warn') {\n warn(msg);\n } else if (level === 'error') {\n error(msg);\n }\n }\n }\n };\n\n fn(level, locale, message, paths);\n};\n\nVueI18n.prototype._initVM = function _initVM (data) {\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n this._vm = new Vue({ data: data });\n Vue.config.silent = silent;\n};\n\nVueI18n.prototype.destroyVM = function destroyVM () {\n this._vm.$destroy();\n};\n\nVueI18n.prototype.subscribeDataChanging = function subscribeDataChanging (vm) {\n this._dataListeners.push(vm);\n};\n\nVueI18n.prototype.unsubscribeDataChanging = function unsubscribeDataChanging (vm) {\n remove(this._dataListeners, vm);\n};\n\nVueI18n.prototype.watchI18nData = function watchI18nData () {\n var self = this;\n return this._vm.$watch('$data', function () {\n var i = self._dataListeners.length;\n while (i--) {\n Vue.nextTick(function () {\n self._dataListeners[i] && self._dataListeners[i].$forceUpdate();\n });\n }\n }, { deep: true })\n};\n\nVueI18n.prototype.watchLocale = function watchLocale () {\n /* istanbul ignore if */\n if (!this._sync || !this._root) { return null }\n var target = this._vm;\n return this._root.$i18n.vm.$watch('locale', function (val) {\n target.$set(target, 'locale', val);\n target.$forceUpdate();\n }, { immediate: true })\n};\n\nprototypeAccessors.vm.get = function () { return this._vm };\n\nprototypeAccessors.messages.get = function () { return looseClone(this._getMessages()) };\nprototypeAccessors.dateTimeFormats.get = function () { return looseClone(this._getDateTimeFormats()) };\nprototypeAccessors.numberFormats.get = function () { return looseClone(this._getNumberFormats()) };\nprototypeAccessors.availableLocales.get = function () { return Object.keys(this.messages).sort() };\n\nprototypeAccessors.locale.get = function () { return this._vm.locale };\nprototypeAccessors.locale.set = function (locale) {\n this._vm.$set(this._vm, 'locale', locale);\n};\n\nprototypeAccessors.fallbackLocale.get = function () { return this._vm.fallbackLocale };\nprototypeAccessors.fallbackLocale.set = function (locale) {\n this._localeChainCache = {};\n this._vm.$set(this._vm, 'fallbackLocale', locale);\n};\n\nprototypeAccessors.formatFallbackMessages.get = function () { return this._formatFallbackMessages };\nprototypeAccessors.formatFallbackMessages.set = function (fallback) { this._formatFallbackMessages = fallback; };\n\nprototypeAccessors.missing.get = function () { return this._missing };\nprototypeAccessors.missing.set = function (handler) { this._missing = handler; };\n\nprototypeAccessors.formatter.get = function () { return this._formatter };\nprototypeAccessors.formatter.set = function (formatter) { this._formatter = formatter; };\n\nprototypeAccessors.silentTranslationWarn.get = function () { return this._silentTranslationWarn };\nprototypeAccessors.silentTranslationWarn.set = function (silent) { this._silentTranslationWarn = silent; };\n\nprototypeAccessors.silentFallbackWarn.get = function () { return this._silentFallbackWarn };\nprototypeAccessors.silentFallbackWarn.set = function (silent) { this._silentFallbackWarn = silent; };\n\nprototypeAccessors.preserveDirectiveContent.get = function () { return this._preserveDirectiveContent };\nprototypeAccessors.preserveDirectiveContent.set = function (preserve) { this._preserveDirectiveContent = preserve; };\n\nprototypeAccessors.warnHtmlInMessage.get = function () { return this._warnHtmlInMessage };\nprototypeAccessors.warnHtmlInMessage.set = function (level) {\n var this$1 = this;\n\n var orgLevel = this._warnHtmlInMessage;\n this._warnHtmlInMessage = level;\n if (orgLevel !== level && (level === 'warn' || level === 'error')) {\n var messages = this._getMessages();\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n};\n\nprototypeAccessors.postTranslation.get = function () { return this._postTranslation };\nprototypeAccessors.postTranslation.set = function (handler) { this._postTranslation = handler; };\n\nVueI18n.prototype._getMessages = function _getMessages () { return this._vm.messages };\nVueI18n.prototype._getDateTimeFormats = function _getDateTimeFormats () { return this._vm.dateTimeFormats };\nVueI18n.prototype._getNumberFormats = function _getNumberFormats () { return this._vm.numberFormats };\n\nVueI18n.prototype._warnDefault = function _warnDefault (locale, key, result, vm, values, interpolateMode) {\n if (!isNull(result)) { return result }\n if (this._missing) {\n var missingRet = this._missing.apply(null, [locale, key, vm, values]);\n if (typeof missingRet === 'string') {\n return missingRet\n }\n } else {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key)) {\n warn(\n \"Cannot translate the value of keypath '\" + key + \"'. \" +\n 'Use the value of keypath as default.'\n );\n }\n }\n\n if (this._formatFallbackMessages) {\n var parsedArgs = parseArgs.apply(void 0, values);\n return this._render(key, interpolateMode, parsedArgs.params, key)\n } else {\n return key\n }\n};\n\nVueI18n.prototype._isFallbackRoot = function _isFallbackRoot (val) {\n return !val && !isNull(this._root) && this._fallbackRoot\n};\n\nVueI18n.prototype._isSilentFallbackWarn = function _isSilentFallbackWarn (key) {\n return this._silentFallbackWarn instanceof RegExp\n ? this._silentFallbackWarn.test(key)\n : this._silentFallbackWarn\n};\n\nVueI18n.prototype._isSilentFallback = function _isSilentFallback (locale, key) {\n return this._isSilentFallbackWarn(key) && (this._isFallbackRoot() || locale !== this.fallbackLocale)\n};\n\nVueI18n.prototype._isSilentTranslationWarn = function _isSilentTranslationWarn (key) {\n return this._silentTranslationWarn instanceof RegExp\n ? this._silentTranslationWarn.test(key)\n : this._silentTranslationWarn\n};\n\nVueI18n.prototype._interpolate = function _interpolate (\n locale,\n message,\n key,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n if (!message) { return null }\n\n var pathRet = this._path.getPathValue(message, key);\n if (Array.isArray(pathRet) || isPlainObject(pathRet)) { return pathRet }\n\n var ret;\n if (isNull(pathRet)) {\n /* istanbul ignore else */\n if (isPlainObject(message)) {\n ret = message[key];\n if (typeof ret !== 'string') {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallback(locale, key)) {\n warn((\"Value of key '\" + key + \"' is not a string!\"));\n }\n return null\n }\n } else {\n return null\n }\n } else {\n /* istanbul ignore else */\n if (typeof pathRet === 'string') {\n ret = pathRet;\n } else {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallback(locale, key)) {\n warn((\"Value of key '\" + key + \"' is not a string!\"));\n }\n return null\n }\n }\n\n // Check for the existence of links within the translated string\n if (ret.indexOf('@:') >= 0 || ret.indexOf('@.') >= 0) {\n ret = this._link(locale, message, ret, host, 'raw', values, visitedLinkStack);\n }\n\n return this._render(ret, interpolateMode, values, key)\n};\n\nVueI18n.prototype._link = function _link (\n locale,\n message,\n str,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n var ret = str;\n\n // Match all the links within the local\n // We are going to replace each of\n // them with its translation\n var matches = ret.match(linkKeyMatcher);\n for (var idx in matches) {\n // ie compatible: filter custom array\n // prototype method\n if (!matches.hasOwnProperty(idx)) {\n continue\n }\n var link = matches[idx];\n var linkKeyPrefixMatches = link.match(linkKeyPrefixMatcher);\n var linkPrefix = linkKeyPrefixMatches[0];\n var formatterName = linkKeyPrefixMatches[1];\n\n // Remove the leading @:, @.case: and the brackets\n var linkPlaceholder = link.replace(linkPrefix, '').replace(bracketsMatcher, '');\n\n if (includes(visitedLinkStack, linkPlaceholder)) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Circular reference found. \\\"\" + link + \"\\\" is already visited in the chain of \" + (visitedLinkStack.reverse().join(' <- '))));\n }\n return ret\n }\n visitedLinkStack.push(linkPlaceholder);\n\n // Translate the link\n var translated = this._interpolate(\n locale, message, linkPlaceholder, host,\n interpolateMode === 'raw' ? 'string' : interpolateMode,\n interpolateMode === 'raw' ? undefined : values,\n visitedLinkStack\n );\n\n if (this._isFallbackRoot(translated)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(linkPlaceholder)) {\n warn((\"Fall back to translate the link placeholder '\" + linkPlaceholder + \"' with root locale.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n var root = this._root.$i18n;\n translated = root._translate(\n root._getMessages(), root.locale, root.fallbackLocale,\n linkPlaceholder, host, interpolateMode, values\n );\n }\n translated = this._warnDefault(\n locale, linkPlaceholder, translated, host,\n Array.isArray(values) ? values : [values],\n interpolateMode\n );\n\n if (this._modifiers.hasOwnProperty(formatterName)) {\n translated = this._modifiers[formatterName](translated);\n } else if (defaultModifiers.hasOwnProperty(formatterName)) {\n translated = defaultModifiers[formatterName](translated);\n }\n\n visitedLinkStack.pop();\n\n // Replace the link with the translated\n ret = !translated ? ret : ret.replace(link, translated);\n }\n\n return ret\n};\n\nVueI18n.prototype._render = function _render (message, interpolateMode, values, path) {\n var ret = this._formatter.interpolate(message, values, path);\n\n // If the custom formatter refuses to work - apply the default one\n if (!ret) {\n ret = defaultFormatter.interpolate(message, values, path);\n }\n\n // if interpolateMode is **not** 'string' ('row'),\n // return the compiled data (e.g. ['foo', VNode, 'bar']) with formatter\n return interpolateMode === 'string' && typeof ret !== 'string' ? ret.join('') : ret\n};\n\nVueI18n.prototype._appendItemToChain = function _appendItemToChain (chain, item, blocks) {\n var follow = false;\n if (!includes(chain, item)) {\n follow = true;\n if (item) {\n follow = item[item.length - 1] !== '!';\n item = item.replace(/!/g, '');\n chain.push(item);\n if (blocks && blocks[item]) {\n follow = blocks[item];\n }\n }\n }\n return follow\n};\n\nVueI18n.prototype._appendLocaleToChain = function _appendLocaleToChain (chain, locale, blocks) {\n var follow;\n var tokens = locale.split('-');\n do {\n var item = tokens.join('-');\n follow = this._appendItemToChain(chain, item, blocks);\n tokens.splice(-1, 1);\n } while (tokens.length && (follow === true))\n return follow\n};\n\nVueI18n.prototype._appendBlockToChain = function _appendBlockToChain (chain, block, blocks) {\n var follow = true;\n for (var i = 0; (i < block.length) && (typeof follow === 'boolean'); i++) {\n var locale = block[i];\n follow = this._appendLocaleToChain(chain, locale, blocks);\n }\n return follow\n};\n\nVueI18n.prototype._getLocaleChain = function _getLocaleChain (start, fallbackLocale) {\n if (start === '') { return [] }\n\n if (!this._localeChainCache) {\n this._localeChainCache = {};\n }\n\n var chain = this._localeChainCache[start];\n if (!chain) {\n if (!fallbackLocale) {\n fallbackLocale = this.fallbackLocale;\n }\n chain = [];\n\n // first block defined by start\n var block = [start];\n\n // while any intervening block found\n while (Array.isArray(block)) {\n block = this._appendBlockToChain(\n chain,\n block,\n fallbackLocale\n );\n }\n\n // last block defined by default\n var defaults;\n if (Array.isArray(fallbackLocale)) {\n defaults = fallbackLocale;\n } else if (fallbackLocale instanceof Object) {\n if (fallbackLocale['default']) {\n defaults = fallbackLocale['default'];\n } else {\n defaults = null;\n }\n } else {\n defaults = fallbackLocale;\n }\n\n // convert defaults to array\n if (typeof defaults === 'string') {\n block = [defaults];\n } else {\n block = defaults;\n }\n if (block) {\n this._appendBlockToChain(\n chain,\n block,\n null\n );\n }\n this._localeChainCache[start] = chain;\n }\n return chain\n};\n\nVueI18n.prototype._translate = function _translate (\n messages,\n locale,\n fallback,\n key,\n host,\n interpolateMode,\n args\n) {\n var chain = this._getLocaleChain(locale, fallback);\n var res;\n for (var i = 0; i < chain.length; i++) {\n var step = chain[i];\n res =\n this._interpolate(step, messages[step], key, host, interpolateMode, args, [key]);\n if (!isNull(res)) {\n if (step !== locale && process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to translate the keypath '\" + key + \"' with '\" + step + \"' locale.\"));\n }\n return res\n }\n }\n return null\n};\n\nVueI18n.prototype._t = function _t (key, _locale, messages, host) {\n var ref;\n\n var values = [], len = arguments.length - 4;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 4 ];\n if (!key) { return '' }\n\n var parsedArgs = parseArgs.apply(void 0, values);\n var locale = parsedArgs.locale || _locale;\n\n var ret = this._translate(\n messages, locale, this.fallbackLocale, key,\n host, 'string', parsedArgs.params\n );\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to translate the keypath '\" + key + \"' with root locale.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return (ref = this._root).$t.apply(ref, [ key ].concat( values ))\n } else {\n ret = this._warnDefault(locale, key, ret, host, values, 'string');\n if (this._postTranslation && ret !== null && ret !== undefined) {\n ret = this._postTranslation(ret, key);\n }\n return ret\n }\n};\n\nVueI18n.prototype.t = function t (key) {\n var ref;\n\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n return (ref = this)._t.apply(ref, [ key, this.locale, this._getMessages(), null ].concat( values ))\n};\n\nVueI18n.prototype._i = function _i (key, locale, messages, host, values) {\n var ret =\n this._translate(messages, locale, this.fallbackLocale, key, host, 'raw', values);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key)) {\n warn((\"Fall back to interpolate the keypath '\" + key + \"' with root locale.\"));\n }\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.i(key, locale, values)\n } else {\n return this._warnDefault(locale, key, ret, host, [values], 'raw')\n }\n};\n\nVueI18n.prototype.i = function i (key, locale, values) {\n /* istanbul ignore if */\n if (!key) { return '' }\n\n if (typeof locale !== 'string') {\n locale = this.locale;\n }\n\n return this._i(key, locale, this._getMessages(), null, values)\n};\n\nVueI18n.prototype._tc = function _tc (\n key,\n _locale,\n messages,\n host,\n choice\n) {\n var ref;\n\n var values = [], len = arguments.length - 5;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 5 ];\n if (!key) { return '' }\n if (choice === undefined) {\n choice = 1;\n }\n\n var predefined = { 'count': choice, 'n': choice };\n var parsedArgs = parseArgs.apply(void 0, values);\n parsedArgs.params = Object.assign(predefined, parsedArgs.params);\n values = parsedArgs.locale === null ? [parsedArgs.params] : [parsedArgs.locale, parsedArgs.params];\n return this.fetchChoice((ref = this)._t.apply(ref, [ key, _locale, messages, host ].concat( values )), choice)\n};\n\nVueI18n.prototype.fetchChoice = function fetchChoice (message, choice) {\n /* istanbul ignore if */\n if (!message && typeof message !== 'string') { return null }\n var choices = message.split('|');\n\n choice = this.getChoiceIndex(choice, choices.length);\n if (!choices[choice]) { return message }\n return choices[choice].trim()\n};\n\n/**\n * @param choice {number} a choice index given by the input to $tc: `$tc('path.to.rule', choiceIndex)`\n * @param choicesLength {number} an overall amount of available choices\n * @returns a final choice index\n*/\nVueI18n.prototype.getChoiceIndex = function getChoiceIndex (choice, choicesLength) {\n // Default (old) getChoiceIndex implementation - english-compatible\n var defaultImpl = function (_choice, _choicesLength) {\n _choice = Math.abs(_choice);\n\n if (_choicesLength === 2) {\n return _choice\n ? _choice > 1\n ? 1\n : 0\n : 1\n }\n\n return _choice ? Math.min(_choice, 2) : 0\n };\n\n if (this.locale in this.pluralizationRules) {\n return this.pluralizationRules[this.locale].apply(this, [choice, choicesLength])\n } else {\n return defaultImpl(choice, choicesLength)\n }\n};\n\nVueI18n.prototype.tc = function tc (key, choice) {\n var ref;\n\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n return (ref = this)._tc.apply(ref, [ key, this.locale, this._getMessages(), null, choice ].concat( values ))\n};\n\nVueI18n.prototype._te = function _te (key, locale, messages) {\n var args = [], len = arguments.length - 3;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 3 ];\n\n var _locale = parseArgs.apply(void 0, args).locale || locale;\n return this._exist(messages[_locale], key)\n};\n\nVueI18n.prototype.te = function te (key, locale) {\n return this._te(key, this.locale, this._getMessages(), locale)\n};\n\nVueI18n.prototype.getLocaleMessage = function getLocaleMessage (locale) {\n return looseClone(this._vm.messages[locale] || {})\n};\n\nVueI18n.prototype.setLocaleMessage = function setLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, message);\n};\n\nVueI18n.prototype.mergeLocaleMessage = function mergeLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, merge({}, this._vm.messages[locale] || {}, message));\n};\n\nVueI18n.prototype.getDateTimeFormat = function getDateTimeFormat (locale) {\n return looseClone(this._vm.dateTimeFormats[locale] || {})\n};\n\nVueI18n.prototype.setDateTimeFormat = function setDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, format);\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype.mergeDateTimeFormat = function mergeDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, merge(this._vm.dateTimeFormats[locale] || {}, format));\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype._clearDateTimeFormat = function _clearDateTimeFormat (locale, format) {\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._dateTimeFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._dateTimeFormatters[id];\n }\n};\n\nVueI18n.prototype._localizeDateTime = function _localizeDateTime (\n value,\n locale,\n fallback,\n dateTimeFormats,\n key\n) {\n var _locale = locale;\n var formats = dateTimeFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = dateTimeFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' datetime formats from '\" + current + \"' datetime formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n var id = _locale + \"__\" + key;\n var formatter = this._dateTimeFormatters[id];\n if (!formatter) {\n formatter = this._dateTimeFormatters[id] = new Intl.DateTimeFormat(_locale, format);\n }\n return formatter.format(value)\n }\n};\n\nVueI18n.prototype._d = function _d (value, locale, key) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !VueI18n.availabilities.dateTimeFormat) {\n warn('Cannot format a Date value due to not supported Intl.DateTimeFormat.');\n return ''\n }\n\n if (!key) {\n return new Intl.DateTimeFormat(locale).format(value)\n }\n\n var ret =\n this._localizeDateTime(value, locale, this.fallbackLocale, this._getDateTimeFormats(), key);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to datetime localization of root: key '\" + key + \"'.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.d(value, key, locale)\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.d = function d (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n\n if (args.length === 1) {\n if (typeof args[0] === 'string') {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n }\n } else if (args.length === 2) {\n if (typeof args[0] === 'string') {\n key = args[0];\n }\n if (typeof args[1] === 'string') {\n locale = args[1];\n }\n }\n\n return this._d(value, locale, key)\n};\n\nVueI18n.prototype.getNumberFormat = function getNumberFormat (locale) {\n return looseClone(this._vm.numberFormats[locale] || {})\n};\n\nVueI18n.prototype.setNumberFormat = function setNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, format);\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype.mergeNumberFormat = function mergeNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, merge(this._vm.numberFormats[locale] || {}, format));\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype._clearNumberFormat = function _clearNumberFormat (locale, format) {\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._numberFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._numberFormatters[id];\n }\n};\n\nVueI18n.prototype._getNumberFormatter = function _getNumberFormatter (\n value,\n locale,\n fallback,\n numberFormats,\n key,\n options\n) {\n var _locale = locale;\n var formats = numberFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = numberFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' number formats from '\" + current + \"' number formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n\n var formatter;\n if (options) {\n // If options specified - create one time number formatter\n formatter = new Intl.NumberFormat(_locale, Object.assign({}, format, options));\n } else {\n var id = _locale + \"__\" + key;\n formatter = this._numberFormatters[id];\n if (!formatter) {\n formatter = this._numberFormatters[id] = new Intl.NumberFormat(_locale, format);\n }\n }\n return formatter\n }\n};\n\nVueI18n.prototype._n = function _n (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot format a Number value due to not supported Intl.NumberFormat.');\n }\n return ''\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.format(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.format(value);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to number localization of root: key '\" + key + \"'.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.n(value, Object.assign({}, { key: key, locale: locale }, options))\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.n = function n (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n var options = null;\n\n if (args.length === 1) {\n if (typeof args[0] === 'string') {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n\n // Filter out number format options only\n options = Object.keys(args[0]).reduce(function (acc, key) {\n var obj;\n\n if (includes(numberFormatKeys, key)) {\n return Object.assign({}, acc, ( obj = {}, obj[key] = args[0][key], obj ))\n }\n return acc\n }, null);\n }\n } else if (args.length === 2) {\n if (typeof args[0] === 'string') {\n key = args[0];\n }\n if (typeof args[1] === 'string') {\n locale = args[1];\n }\n }\n\n return this._n(value, locale, key, options)\n};\n\nVueI18n.prototype._ntp = function _ntp (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot format to parts a Number value due to not supported Intl.NumberFormat.');\n }\n return []\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.formatToParts(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.formatToParts(value);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key)) {\n warn((\"Fall back to format number to parts of root: key '\" + key + \"' .\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n._ntp(value, locale, key, options)\n } else {\n return ret || []\n }\n};\n\nObject.defineProperties( VueI18n.prototype, prototypeAccessors );\n\nvar availabilities;\n// $FlowFixMe\nObject.defineProperty(VueI18n, 'availabilities', {\n get: function get () {\n if (!availabilities) {\n var intlDefined = typeof Intl !== 'undefined';\n availabilities = {\n dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',\n numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'\n };\n }\n\n return availabilities\n }\n});\n\nVueI18n.install = install;\nVueI18n.version = '8.17.4';\n\nexport default VueI18n;\n"],"sourceRoot":""}