{"version":3,"file":"js-respond/2025.04.02.6/i18n.f7e88f5ef8c059fe32c2.js","mappings":"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","sources":["webpack://pc-frontend-respond/./node_modules/react-i18next/dist/es/I18nextProvider.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack://pc-frontend-respond/./node_modules/react-i18next/dist/es/Trans.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://pc-frontend-respond/./node_modules/react-i18next/dist/es/unescape.js","webpack://pc-frontend-respond/./node_modules/react-i18next/dist/es/context.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://pc-frontend-respond/./node_modules/react-i18next/dist/es/useTranslation.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://pc-frontend-respond/./node_modules/react-i18next/dist/es/utils.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://pc-frontend-respond/./node_modules/i18next/dist/esm/i18next.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toArray.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://pc-frontend-respond/./node_modules/i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://pc-frontend-respond/./node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/typeof.js"],"sourcesContent":["import { createElement, useMemo } from 'react';\nimport { I18nContext } from './context';\nexport function I18nextProvider(_ref) {\n var i18n = _ref.i18n,\n defaultNS = _ref.defaultNS,\n children = _ref.children;\n var value = useMemo(function () {\n return {\n i18n: i18n,\n defaultNS: defaultNS\n };\n }, [i18n, defaultNS]);\n return createElement(I18nContext.Provider, {\n value: value\n }, children);\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nvar _excluded = [\"format\"],\n _excluded2 = [\"children\", \"count\", \"parent\", \"i18nKey\", \"context\", \"tOptions\", \"values\", \"defaults\", \"components\", \"ns\", \"i18n\", \"t\", \"shouldUnescape\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { useContext, isValidElement, cloneElement, createElement } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { getI18n, I18nContext, getDefaults } from './context';\nimport { warn, warnOnce } from './utils';\n\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n var base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\n\nfunction getChildren(node) {\n if (!node) return [];\n return node.props ? node.props.children : node.children;\n}\n\nfunction hasValidReactChildren(children) {\n if (Object.prototype.toString.call(children) !== '[object Array]') return false;\n return children.every(function (child) {\n return isValidElement(child);\n });\n}\n\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\n\nfunction mergeProps(source, target) {\n var newTarget = _objectSpread({}, target);\n\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\n\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n var stringNode = '';\n var childrenArray = getAsArray(children);\n var keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach(function (child, childIndex) {\n if (typeof child === 'string') {\n stringNode += \"\".concat(child);\n } else if (isValidElement(child)) {\n var childPropsCount = Object.keys(child.props).length;\n var shouldKeepChild = keepArray.indexOf(child.type) > -1;\n var childChildren = child.props.children;\n\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += \"<\".concat(child.type, \"/>\");\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += \"<\".concat(childIndex, \">\");\n } else if (child.props.i18nIsDynamicList) {\n stringNode += \"<\".concat(childIndex, \">\");\n } else if (shouldKeepChild && childPropsCount === 1 && typeof childChildren === 'string') {\n stringNode += \"<\".concat(child.type, \">\").concat(childChildren, \"\");\n } else {\n var content = nodesToString(childChildren, i18nOptions);\n stringNode += \"<\".concat(childIndex, \">\").concat(content, \"\");\n }\n } else if (child === null) {\n warn(\"Trans: the passed in value is invalid - seems you passed in a null child.\");\n } else if (_typeof(child) === 'object') {\n var format = child.format,\n clone = _objectWithoutProperties(child, _excluded);\n\n var keys = Object.keys(clone);\n\n if (keys.length === 1) {\n var value = format ? \"\".concat(keys[0], \", \").concat(format) : keys[0];\n stringNode += \"{{\".concat(value, \"}}\");\n } else {\n warn(\"react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.\", child);\n }\n } else {\n warn(\"Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.\", child);\n }\n });\n return stringNode;\n}\n\nfunction renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, shouldUnescape) {\n if (targetString === '') return [];\n var keepArray = i18nOptions.transKeepBasicHtmlNodesFor || [];\n var emptyChildrenButNeedsHandling = targetString && new RegExp(keepArray.join('|')).test(targetString);\n if (!children && !emptyChildrenButNeedsHandling) return [targetString];\n var data = {};\n\n function getData(childs) {\n var childrenArray = getAsArray(childs);\n childrenArray.forEach(function (child) {\n if (typeof child === 'string') return;\n if (hasChildren(child)) getData(getChildren(child));else if (_typeof(child) === 'object' && !isValidElement(child)) Object.assign(data, child);\n });\n }\n\n getData(children);\n var ast = HTML.parse(\"<0>\".concat(targetString, \"\"));\n\n var opts = _objectSpread(_objectSpread({}, data), combinedTOpts);\n\n function renderInner(child, node, rootReactNode) {\n var childs = getChildren(child);\n var mappedChildren = mapAST(childs, node.children, rootReactNode);\n return hasValidReactChildren(childs) && mappedChildren.length === 0 ? childs : mappedChildren;\n }\n\n function pushTranslatedJSX(child, inner, mem, i, isVoid) {\n if (child.dummy) child.children = inner;\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), isVoid ? undefined : inner));\n }\n\n function mapAST(reactNode, astNode, rootReactNode) {\n var reactNodes = getAsArray(reactNode);\n var astNodes = getAsArray(astNode);\n return astNodes.reduce(function (mem, node, i) {\n var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n\n if (node.type === 'tag') {\n var tmp = reactNodes[parseInt(node.name, 10)];\n if (!tmp && rootReactNode.length === 1 && rootReactNode[0][node.name]) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n var child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n var isElement = isValidElement(child);\n var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && _typeof(child) === 'object' && child.dummy && !isElement;\n var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n\n if (typeof child === 'string') {\n var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n var inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n var _inner = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), _inner));\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n var _inner2 = renderInner(child, node, rootReactNode);\n\n pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }));\n } else {\n var _inner3 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _inner3));\n }\n } else if (node.voidElement) {\n mem.push(\"<\".concat(node.name, \" />\"));\n } else {\n var _inner4 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(\"<\".concat(node.name, \">\").concat(_inner4, \"\"));\n }\n } else if (_typeof(child) === 'object' && !isElement) {\n var content = node.children[0] ? translationContent : null;\n if (content) mem.push(content);\n } else if (node.children.length === 1 && translationContent) {\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), translationContent));\n } else {\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n })));\n }\n } else if (node.type === 'text') {\n var wrapTextNodes = i18nOptions.transWrapTextNodes;\n\n var _content = shouldUnescape ? i18nOptions.unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n\n if (wrapTextNodes) {\n mem.push(createElement(wrapTextNodes, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _content));\n } else {\n mem.push(_content);\n }\n }\n\n return mem;\n }, []);\n }\n\n var result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\n\nexport function Trans(_ref) {\n var children = _ref.children,\n count = _ref.count,\n parent = _ref.parent,\n i18nKey = _ref.i18nKey,\n context = _ref.context,\n _ref$tOptions = _ref.tOptions,\n tOptions = _ref$tOptions === void 0 ? {} : _ref$tOptions,\n values = _ref.values,\n defaults = _ref.defaults,\n components = _ref.components,\n ns = _ref.ns,\n i18nFromProps = _ref.i18n,\n tFromProps = _ref.t,\n shouldUnescape = _ref.shouldUnescape,\n additionalProps = _objectWithoutProperties(_ref, _excluded2);\n\n var _ref2 = useContext(I18nContext) || {},\n i18nFromContext = _ref2.i18n,\n defaultNSFromContext = _ref2.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n\n var t = tFromProps || i18n.t.bind(i18n) || function (k) {\n return k;\n };\n\n if (context) tOptions.context = context;\n\n var reactI18nextOptions = _objectSpread(_objectSpread({}, getDefaults()), i18n.options && i18n.options.react);\n\n var namespaces = ns || t.ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n var defaultValue = defaults || nodesToString(children, reactI18nextOptions) || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n var hashTransKey = reactI18nextOptions.hashTransKey;\n var key = i18nKey || (hashTransKey ? hashTransKey(defaultValue) : defaultValue);\n var interpolationOverride = values ? tOptions.interpolation : {\n interpolation: _objectSpread(_objectSpread({}, tOptions.interpolation), {}, {\n prefix: '#$?',\n suffix: '?$#'\n })\n };\n\n var combinedTOpts = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, tOptions), {}, {\n count: count\n }, values), interpolationOverride), {}, {\n defaultValue: defaultValue,\n ns: namespaces\n });\n\n var translation = key ? t(key, combinedTOpts) : defaultValue;\n var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? createElement(useAsParent, additionalProps, content) : content;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nvar htmlEntities = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"',\n ' ': ' ',\n ' ': ' ',\n '©': '©',\n '©': '©',\n '®': '®',\n '®': '®',\n '…': '…',\n '…': '…',\n '/': '/',\n '/': '/'\n};\n\nvar unescapeHtmlEntity = function unescapeHtmlEntity(m) {\n return htmlEntities[m];\n};\n\nexport var unescape = function unescape(text) {\n return text.replace(matchHtmlEntity, unescapeHtmlEntity);\n};","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createContext } from 'react';\nimport { unescape } from './unescape';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true,\n unescape: unescape\n};\nvar i18nInstance;\nexport var I18nContext = createContext();\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n\n this.usedNamespaces = {};\n }\n\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n\n return ReportNamespaces;\n}();\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils';\n\nvar usePrevious = function usePrevious(value, ignore) {\n var ref = useRef();\n useEffect(function () {\n ref.current = ignore ? ref.current : value;\n }, [value, ignore]);\n return ref.current;\n};\n\nexport function useTranslation(ns) {\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nFromProps = props.i18n;\n\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n,\n defaultNSFromContext = _ref.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n\n var notReadyT = function notReadyT(k) {\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n\n var retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n\n var i18nOptions = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), i18n.options.react), props);\n\n var useSuspense = i18nOptions.useSuspense,\n keyPrefix = i18nOptions.keyPrefix;\n var namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n var ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(function (n) {\n return hasLoadedNamespace(n, i18n, i18nOptions);\n });\n\n function getT() {\n return i18n.getFixedT(null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n\n var _useState = useState(getT),\n _useState2 = _slicedToArray(_useState, 2),\n t = _useState2[0],\n setT = _useState2[1];\n\n var joinedNS = namespaces.join();\n var previousJoinedNS = usePrevious(joinedNS);\n var isMounted = useRef(true);\n useEffect(function () {\n var bindI18n = i18nOptions.bindI18n,\n bindI18nStore = i18nOptions.bindI18nStore;\n isMounted.current = true;\n\n if (!ready && !useSuspense) {\n loadNamespaces(i18n, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n }\n\n if (ready && previousJoinedNS && previousJoinedNS !== joinedNS && isMounted.current) {\n setT(getT);\n }\n\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return function () {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(function (e) {\n return i18n.off(e, boundReset);\n });\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(function (e) {\n return i18n.store.off(e, boundReset);\n });\n };\n }, [i18n, joinedNS]);\n var isInitial = useRef(true);\n useEffect(function () {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n\n isInitial.current = false;\n }, [i18n, keyPrefix]);\n var ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(function (resolve) {\n loadNamespaces(i18n, namespaces, function () {\n resolve();\n });\n });\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","export function warn() {\n if (console && console.warn) {\n var _console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (typeof args[0] === 'string') args[0] = \"react-i18next:: \".concat(args[0]);\n\n (_console = console).warn.apply(_console, args);\n }\n}\nvar alreadyWarned = {};\nexport function warnOnce() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (typeof args[0] === 'string' && alreadyWarned[args[0]]) return;\n if (typeof args[0] === 'string') alreadyWarned[args[0]] = new Date();\n warn.apply(void 0, args);\n}\nexport function loadNamespaces(i18n, ns, cb) {\n i18n.loadNamespaces(ns, function () {\n if (i18n.isInitialized) {\n cb();\n } else {\n var initialized = function initialized() {\n setTimeout(function () {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n\n i18n.on('initialized', initialized);\n }\n });\n}\n\nfunction oldI18nextHasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var lng = i18n.languages[0];\n var fallbackLng = i18n.options ? i18n.options.fallbackLng : false;\n var lastLng = i18n.languages[i18n.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = i18n.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18n.services.backendConnector.backend && i18n.isLanguageChangingTo && !loadNotPending(i18n.isLanguageChangingTo, ns)) return false;\n if (i18n.hasResourceBundle(lng, ns)) return true;\n if (!i18n.services.backendConnector.backend || i18n.options.resources && !i18n.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n}\n\nexport function hasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce('i18n.languages were undefined or empty', i18n.languages);\n return true;\n }\n\n var isNewerI18next = i18n.options.ignoreJSONStructure !== undefined;\n\n if (!isNewerI18next) {\n return oldI18nextHasLoadedNamespace(ns, i18n, options);\n }\n\n return i18n.hasLoadedNamespace(ns, {\n precheck: function precheck(i18nInstance, loadNotPending) {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n}\nexport function getDisplayName(Component) {\n return Component.displayName || Component.name || (typeof Component === 'string' && Component.length > 0 ? Component : 'Unknown');\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\n\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Logger);\n\n this.init(concreteLogger, options);\n }\n\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread(_objectSpread({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }, {\n key: \"clone\",\n value: function clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n }]);\n\n return Logger;\n}();\n\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n\n this.observers = {};\n }\n\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n\n if (!listener) {\n delete this.observers[event];\n return;\n }\n\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\n\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\n\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n\n if (value !== undefined) {\n return value;\n }\n\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n\n return matched;\n}\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n\n current = current[paths[i]];\n }\n\n return current;\n}\n\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n\n var _super = _createSuper(ResourceStore);\n\n function ResourceStore(data) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n\n _classCallCheck(this, ResourceStore);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.data = data || {};\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n\n return _this;\n }\n\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = this.options.keySeparator;\n if (keySeparator === undefined) keySeparator = '.';\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$1(_objectSpread$1({}, pack), resources);\n }\n\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$1(_objectSpread$1({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\n\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n\n var _super = _createSuper$1(Translator);\n\n function Translator(services) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Translator);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n\n if (key === undefined || key === null) {\n return false;\n }\n\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n\n if (returnDetails) {\n resolved.res = \"\".concat(namespace).concat(nsSeparator).concat(key);\n return resolved;\n }\n\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n\n if (returnDetails) {\n resolved.res = key;\n return resolved;\n }\n\n return key;\n }\n\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$2(_objectSpread$2({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n\n return r;\n }\n\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$2(_objectSpread$2({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$2(_objectSpread$2({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n\n var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n\n _this2.emit('missingKey', l, namespace, k, res);\n };\n\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$2(_objectSpread$2({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$2(_objectSpread$2({}, options), {\n interpolation: _objectSpread$2(_objectSpread$2({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$2(_objectSpread$2({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n\n return null;\n }\n\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$2({\n i18nResolved: resolved\n }, options) : options, this);\n }\n\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n\n var extracted = _this4.extractFromKey(k, options);\n\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n\n var possibleKey;\n\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n\n return false;\n }\n }]);\n\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\n\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n\n return p.join('-');\n }\n\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n\n var cleanedLng = _this.formatLanguageCode(code);\n\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n\n var lngOnly = _this.getLanguagePartFromCode(code);\n\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n\n var addCode = function addCode(c) {\n if (!c) return;\n\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\n\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\n\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, PluralResolver);\n\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n\n this.rules = createRules();\n }\n\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n\n if (!rule) {\n return [];\n }\n\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n\n return this.getSuffixRetroCompatible(rule, count);\n }\n\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$3(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Interpolator);\n\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n\n this.init(options);\n }\n\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = getPathWithDefaults(data, defaultData, key);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: key\n })) : path;\n }\n\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(getPathWithDefaults(data, defaultData, k), f, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: k\n }));\n };\n\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && options.hasOwnProperty(matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n\n replaces++;\n\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n\n var clonedOptions = _objectSpread$3({}, options);\n\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n var matchedSingleQuotes = optionsString.match(/'/g);\n var matchedDoubleQuotes = optionsString.match(/\"/g);\n\n if (matchedSingleQuotes && matchedSingleQuotes.length % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n\n delete clonedOptions.defaultValue;\n return key;\n }\n\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n var doReduce = false;\n\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n\n return str;\n }\n }]);\n\n return Interpolator;\n}();\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\n\nfunction createCachedFormatter(fn) {\n var cache = {};\n return function invokeFormatter(val, lng, options) {\n var key = lng + JSON.stringify(options);\n var formatter = cache[key];\n\n if (!formatter) {\n formatter = fn(lng, options);\n cache[key] = formatter;\n }\n\n return formatter(val);\n };\n}\n\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Formatter);\n\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter(function (lng, options) {\n var formatter = new Intl.NumberFormat(lng, options);\n return function (val) {\n return formatter.format(val);\n };\n }),\n currency: createCachedFormatter(function (lng, options) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$4(_objectSpread$4({}, options), {}, {\n style: 'currency'\n }));\n return function (val) {\n return formatter.format(val);\n };\n }),\n datetime: createCachedFormatter(function (lng, options) {\n var formatter = new Intl.DateTimeFormat(lng, _objectSpread$4({}, options));\n return function (val) {\n return formatter.format(val);\n };\n }),\n relativetime: createCachedFormatter(function (lng, options) {\n var formatter = new Intl.RelativeTimeFormat(lng, _objectSpread$4({}, options));\n return function (val) {\n return formatter.format(val, options.range || 'day');\n };\n }),\n list: createCachedFormatter(function (lng, options) {\n var formatter = new Intl.ListFormat(lng, _objectSpread$4({}, options));\n return function (val) {\n return formatter.format(val);\n };\n })\n };\n this.init(options);\n }\n\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"addCached\",\n value: function addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng, options) {\n var _this = this;\n\n var formats = _format.split(this.formatSeparator);\n\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n\n if (_this.formats[formatName]) {\n var formatted = mem;\n\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$4(_objectSpread$4(_objectSpread$4({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n\n return mem;\n }, value);\n return result;\n }\n }]);\n\n return Formatter;\n}();\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\n\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n\n var _super = _createSuper$2(Connector);\n\n function Connector(backend, store, services) {\n var _this;\n\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n _classCallCheck(this, Connector);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n _this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n _this.state = {};\n _this.queue = [];\n\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n\n return _this;\n }\n\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n\n if (loadedKeys.length) {\n loadedKeys.forEach(function (ns) {\n if (loaded[l][ns] === undefined) loaded[l][ns] = true;\n });\n }\n });\n q.done = true;\n\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n\n this.readingCalls++;\n return this.backend[fcName](lng, ns, function (err, data) {\n _this3.readingCalls--;\n\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n\n if (err && data && tried < _this3.maxRetries) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n\n callback(err, data);\n });\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n\n if (key === undefined || key === null || key === '') return;\n\n if (this.backend && this.backend.create) {\n this.backend.create(languages, namespace, key, fallbackValue, null, _objectSpread$5(_objectSpread$5({}, options), {}, {\n isUpdate: isUpdate\n }));\n }\n\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n\n return options;\n}\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction noop() {}\n\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\n\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n\n var _super = _createSuper$3(I18n);\n\n function I18n() {\n var _this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n _classCallCheck(this, I18n);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n\n return _this;\n }\n\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n\n if (!options.defaultNS && options.defaultNS !== false && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n\n var defOpts = get();\n this.options = _objectSpread$6(_objectSpread$6(_objectSpread$6({}, defOpts), this.options), transformOptions(options));\n\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread$6(_objectSpread$6({}, defOpts.interpolation), this.options.interpolation);\n }\n\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n\n var formatter;\n\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n s.languageDetector.init(s, this.options.detection, this.options);\n }\n\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n\n return _this2;\n };\n });\n var deferred = defer();\n\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n\n _this2.emit('initialized', _this2.options);\n\n deferred.resolve(t);\n callback(err, t);\n };\n\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n\n var append = function append(lng) {\n if (!lng) return;\n\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n\n _this4.setResolvedLanguage(l);\n };\n\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n\n _this4.translator.changeLanguage(l);\n\n _this4.isLanguageChangingTo = undefined;\n\n _this4.emit('languageChanged', l);\n\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n this.services.languageDetector.detect(setLng);\n } else {\n setLng(lng);\n }\n\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n\n var fixedT = function fixedT(key, opts) {\n var options;\n\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread$6({}, opts);\n }\n\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n return _this5.t(resultKey, options);\n };\n\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n\n var lng = this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n\n return loadState === -1 || loadState === 2;\n };\n\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n\n var deferred = defer();\n\n if (!this.options.ns) {\n callback && callback();\n return Promise.resolve();\n }\n\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n return rtlLngs.indexOf(this.services.languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n\n var mergedOptions = _objectSpread$6(_objectSpread$6(_objectSpread$6({}, this.options), options), {\n isClone: true\n });\n\n var clone = new I18n(mergedOptions);\n\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread$6({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n\n return I18n;\n}(EventEmitter);\n\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\n\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport default instance;\nexport { changeLanguage, createInstance, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}"],"names":["I18nextProvider","_ref","i18n","defaultNS","children","value","useMemo","createElement","Provider","_objectWithoutProperties","source","excluded","key","i","target","sourceKeys","Object","keys","length","indexOf","getOwnPropertySymbols","sourceSymbolKeys","prototype","propertyIsEnumerable","call","_excluded","_excluded2","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","getOwnPropertyDescriptors","defineProperties","defineProperty","hasChildren","node","checkLength","base","props","getChildren","getAsArray","data","Array","isArray","nodesToString","i18nOptions","stringNode","childrenArray","keepArray","transSupportBasicHtmlNodes","transKeepBasicHtmlNodesFor","child","childIndex","concat","isValidElement","childPropsCount","shouldKeepChild","type","childChildren","i18nIsDynamicList","content","format","clone","Trans","count","parent","i18nKey","context","_ref$tOptions","tOptions","values","defaults","components","ns","i18nFromProps","tFromProps","t","shouldUnescape","additionalProps","_ref2","useContext","i18nFromContext","defaultNSFromContext","bind","k","reactI18nextOptions","options","react","namespaces","defaultValue","transEmptyNodeValue","hashTransKey","interpolationOverride","interpolation","prefix","suffix","combinedTOpts","targetString","emptyChildrenButNeedsHandling","RegExp","join","test","getData","childs","assign","ast","parse","opts","renderInner","rootReactNode","mappedChildren","mapAST","toString","every","hasValidReactChildren","pushTranslatedJSX","inner","mem","isVoid","dummy","cloneElement","undefined","reactNode","astNode","reactNodes","reduce","newTarget","translationContent","services","interpolator","interpolate","language","tmp","parseInt","name","attrs","isElement","isValidTranslationWithChildren","voidElement","isEmptyTransWithHTML","isKnownComponent","hasOwnProperty","_inner","Number","isNaN","parseFloat","_inner3","_inner4","wrapTextNodes","transWrapTextNodes","_content","unescape","renderNodes","useAsParent","defaultTransParent","_defineProperties","descriptor","configurable","writable","toPropertyKey","matchHtmlEntity","htmlEntities","unescapeHtmlEntity","m","i18nInstance","defaultOptions","bindI18n","bindI18nStore","useSuspense","text","replace","I18nContext","createContext","getDefaults","ReportNamespaces","instance","Constructor","TypeError","_classCallCheck","this","usedNamespaces","protoProps","_this","getI18n","initReactI18next","init","setDefaults","setI18n","_arrayLikeToArray","arr","len","arr2","usePrevious","ignore","ref","useRef","useEffect","current","useTranslation","reportNamespaces","notReadyT","retNotReady","ready","wait","keyPrefix","addUsedNamespaces","isInitialized","initializedStoreOnce","n","getT","getFixedT","nsMode","_useState2","useState","r","l","Symbol","iterator","e","u","a","f","o","next","done","minLen","slice","constructor","from","setT","joinedNS","previousJoinedNS","isMounted","boundReset","on","store","split","off","isInitial","ret","Promise","resolve","warn","console","_console","_len","args","_key","alreadyWarned","warnOnce","_len2","_key2","Date","loadNamespaces","cb","initialized","setTimeout","hasLoadedNamespace","languages","ignoreJSONStructure","precheck","loadNotPending","backendConnector","backend","isLanguageChangingTo","lng","fallbackLng","lastLng","toLowerCase","loadState","state","hasResourceBundle","resources","partialBundledLanguages","oldI18nextHasLoadedNamespace","_typeof","toPrimitive","String","_createClass","staticProps","_assertThisInitialized","self","ReferenceError","_setPrototypeOf","p","setPrototypeOf","__proto__","_inherits","subClass","superClass","create","_possibleConstructorReturn","_getPrototypeOf","getPrototypeOf","_defineProperty","obj","consoleLogger","log","output","error","baseLogger","Logger","concreteLogger","logger","debug","bool","forward","_len3","_key3","_len4","_key4","lvl","debugOnly","moduleName","EventEmitter","observers","events","listener","event","observer","defer","res","rej","promise","reject","makeString","getLastOfPath","path","Empty","cleanKey","canNotTraverseDeeper","stack","shift","setPath","newValue","_getLastOfPath","getPath","_getLastOfPath3","getPathWithDefaults","defaultData","deepExtend","overwrite","prop","regexEscape","str","_entityMap","s","isIE10","window","navigator","userAgentData","userAgent","chars","ownKeys$1","_objectSpread$1","deepFind","keySeparator","paths","j","mix","endsWith","joinedPath","ResourceStore","_EventEmitter","Derived","hasNativeReflectConstruct","_super","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","NewTarget","index","splice","silent","addNamespaces","emit","addResource","deep","pack","removeNamespaces","getResource","compatibilityAPI","getDataByLanguage","find","v","postProcessor","processors","addPostProcessor","module","handle","translator","processor","process","ownKeys$2","_objectSpread$2","checkedLoadedFor","Translator","_isNativeReflectConstruct$1","resolved","nsSeparator","wouldCheckForNsInKey","seemsNaturalLanguage","userDefinedKeySeparator","userDefinedNsSeparator","possibleChars","c","map","matched","ki","substring","looksLikeObjectPath","match","nestingRegexp","parts","lastKey","_this2","overloadTranslationOptionHandler","returnDetails","_this$extractFromKey","extractFromKey","namespace","appendNamespaceToCIMode","resUsedKey","usedKey","resExactUsedKey","exactUsedKey","resType","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","returnObjects","returnedObjectHandler","resTypeIsArray","copy","newKeyToUse","deepKey","translate","extendTranslation","usedDefault","needsPluralHandling","hasDefaultValue","defaultValueSuffix","pluralResolver","getSuffix","isValidLookup","resForMissing","missingKeyNoValueFallbackToKey","updateMissing","fk","lngs","fallbackLngs","languageUtils","getFallbackCodes","saveMissingTo","toResolveHierarchy","send","specificDefaultValue","defaultForMissing","missingKeyHandler","saveMissing","saveMissingPlurals","getSuffixes","appendNamespaceToMissingKey","parseMissingKeyHandler","_this3","defaultVariables","usedLng","usedNS","skipInterpolation","nestBef","skipOnVariables","nb","na","nest","reset","postProcess","postProcessorNames","applyPostProcessor","postProcessPassResolved","i18nResolved","found","_this4","extracted","fallbackNS","needsZeroSuffixLookup","ordinal","shouldUseIntlApi","needsContextHandling","codes","utils","code","possibleKey","finalKeys","addLookupKeys","pluralSuffix","zeroSuffix","pluralSeparator","contextKey","contextSeparator","pop","returnNull","returnEmptyString","resourceStore","option","capitalize","string","charAt","toUpperCase","LanguageUtil","supportedLngs","formatLanguageCode","specialCases","lowerCaseLng","part","cleanCode","load","nonExplicitSupportedLngs","getLanguagePartFromCode","cleanedLng","isSupportedCode","lngOnly","supportedLng","fallbacks","getScriptPartFromCode","fallbackCode","fallbackCodes","addCode","fc","sets","nr","_rulesPluralsTypes","deprecatedJsonVersions","suffixesOrder","zero","one","two","few","many","other","PluralResolver","rules","compatibilityJSON","Intl","PluralRules","set","numbers","plurals","_unused","rule","getRule","resolvedOptions","pluralCategories","sort","pluralCategory1","pluralCategory2","pluralCategory","prepend","number","select","getSuffixRetroCompatible","idx","noAbs","Math","abs","simplifyPluralSuffix","returnSuffix","includes","ownKeys$3","_objectSpread$3","Interpolator","escapeValue","iOpts","escape","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapePrefix","unescapeSuffix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","resetRegExp","regexpStr","regexp","regexpUnescapeStr","regexpUnescape","nestingRegexpStr","replaces","regexSafe","val","handleFormat","interpolationkey","trim","missingInterpolationHandler","regex","safeValue","todo","exec","matchedVar","temp","lastIndex","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","matchedSingleQuotes","matchedDoubleQuotes","JSON","formatters","doReduce","elem","ownKeys$4","_objectSpread$4","createCachedFormatter","fn","cache","stringify","formatter","Formatter","formats","NumberFormat","currency","style","datetime","DateTimeFormat","relativetime","RelativeTimeFormat","range","list","ListFormat","_format","_parseFormatStr","formatStr","formatName","formatOptions","optStr","opt","_opt$split2","iter","parseFormatStr","formatted","valOptions","formatParams","locale","ownKeys$5","_objectSpread$5","Connector","_isNativeReflectConstruct$2","waitingReads","maxParallelReads","readingCalls","maxRetries","retryTimeout","queue","callback","toLoad","pending","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","reload","pendingCount","loaded","errors","err","addResourceBundle","q","_getLastOfPath2","removePending","loadedKeys","fcName","tried","read","queueLoad","loadOne","prepareLoading","_this5","fallbackValue","isUpdate","transformOptions","ownKeys$6","_objectSpread$6","noop","I18n","_isNativeReflectConstruct$3","inst","modules","external","getOwnPropertyNames","isClone","initImmediate","defOpts","preload","tDescription","createClassOnDemand","ClassOrObject","lu","languageDetector","detection","_this2$store","_this2$store2","deferred","finish","changeLanguage","usedCallback","append","resolvedLanguage","setResolvedLanguage","Error","li","lngInLngs","hasLanguageSomeTranslations","setLngProps","setLng","getBestMatchFromCodes","cacheUserLanguage","loadResources","async","detect","fixedT","rest","resultKey","_this$translator","_this$translator2","exists","_this6","preResult","_this7","preloaded","newLngs","_this8","mergedOptions","createInstance","reloadResources","use","setDefaultNamespace","loadLanguages"],"sourceRoot":""}