{"version":3,"file":"vendors-d2eb5610.xxxxxxxx.bundle.js","mappings":"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","sources":["webpack://iadviser/./node_modules/css-loader/dist/runtime/api.js","webpack://iadviser/./node_modules/css-loader/dist/runtime/getUrl.js","webpack://iadviser/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://iadviser/./node_modules/deepmerge/dist/cjs.js","webpack://iadviser/./node_modules/html-loader/dist/runtime/getUrl.js","webpack://iadviser/./node_modules/i18next-xhr-backend/dist/commonjs/ajax.js","webpack://iadviser/./node_modules/i18next-xhr-backend/dist/commonjs/index.js","webpack://iadviser/./node_modules/i18next-xhr-backend/dist/commonjs/utils.js","webpack://iadviser/./node_modules/i18next-xhr-backend/index.js","webpack://iadviser/./node_modules/i18next/dist/es/logger.js","webpack://iadviser/./node_modules/i18next/dist/es/EventEmitter.js","webpack://iadviser/./node_modules/i18next/dist/es/utils.js","webpack://iadviser/./node_modules/i18next/dist/es/ResourceStore.js","webpack://iadviser/./node_modules/i18next/dist/es/postProcessor.js","webpack://iadviser/./node_modules/i18next/dist/es/Translator.js","webpack://iadviser/./node_modules/i18next/dist/es/LanguageUtils.js","webpack://iadviser/./node_modules/i18next/dist/es/PluralResolver.js","webpack://iadviser/./node_modules/i18next/dist/es/Interpolator.js","webpack://iadviser/./node_modules/i18next/dist/es/BackendConnector.js","webpack://iadviser/./node_modules/i18next/dist/es/defaults.js","webpack://iadviser/./node_modules/i18next/dist/es/i18next.js","webpack://iadviser/./node_modules/i18next/dist/es/index.js","webpack://iadviser/./node_modules/ieee754/index.js"],"sourcesContent":["\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n return Array.isArray(val) ? [] : {}\n}\n\nfunction cloneIfNecessary(value, optionsArgument) {\n var clone = optionsArgument && optionsArgument.clone === true;\n return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value\n}\n\nfunction defaultArrayMerge(target, source, optionsArgument) {\n var destination = target.slice();\n source.forEach(function(e, i) {\n if (typeof destination[i] === 'undefined') {\n destination[i] = cloneIfNecessary(e, optionsArgument);\n } else if (isMergeableObject(e)) {\n destination[i] = deepmerge(target[i], e, optionsArgument);\n } else if (target.indexOf(e) === -1) {\n destination.push(cloneIfNecessary(e, optionsArgument));\n }\n });\n return destination\n}\n\nfunction mergeObject(target, source, optionsArgument) {\n var destination = {};\n if (isMergeableObject(target)) {\n Object.keys(target).forEach(function(key) {\n destination[key] = cloneIfNecessary(target[key], optionsArgument);\n });\n }\n Object.keys(source).forEach(function(key) {\n if (!isMergeableObject(source[key]) || !target[key]) {\n destination[key] = cloneIfNecessary(source[key], optionsArgument);\n } else {\n destination[key] = deepmerge(target[key], source[key], optionsArgument);\n }\n });\n return destination\n}\n\nfunction deepmerge(target, source, optionsArgument) {\n var sourceIsArray = Array.isArray(source);\n var targetIsArray = Array.isArray(target);\n var options = optionsArgument || { arrayMerge: defaultArrayMerge };\n var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n if (!sourceAndTargetTypesMatch) {\n return cloneIfNecessary(source, optionsArgument)\n } else if (sourceIsArray) {\n var arrayMerge = options.arrayMerge || defaultArrayMerge;\n return arrayMerge(target, source, optionsArgument)\n } else {\n return mergeObject(target, source, optionsArgument)\n }\n}\n\ndeepmerge.all = function deepmergeAll(array, optionsArgument) {\n if (!Array.isArray(array) || array.length < 2) {\n throw new Error('first argument should be an array with at least two elements')\n }\n\n // we are sure there are at least 2 values, so it is safe to have no initial value\n return array.reduce(function(prev, next) {\n return deepmerge(prev, next, optionsArgument)\n })\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n // eslint-disable-next-line no-param-reassign\n options = {};\n }\n\n if (!url) {\n return url;\n } // eslint-disable-next-line no-underscore-dangle, no-param-reassign\n\n\n url = String(url.__esModule ? url.default : url);\n\n if (options.hash) {\n // eslint-disable-next-line no-param-reassign\n url += options.hash;\n }\n\n if (options.maybeNeedQuotes && /[\\t\\n\\f\\r \"'=<>`]/.test(url)) {\n return \"\\\"\".concat(url, \"\\\"\");\n }\n\n return url;\n};","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nfunction addQueryString(url, params) {\n if (params && (typeof params === 'undefined' ? 'undefined' : _typeof(params)) === 'object') {\n var queryString = '',\n e = encodeURIComponent;\n\n // Must encode data\n for (var paramName in params) {\n queryString += '&' + e(paramName) + '=' + e(params[paramName]);\n }\n\n if (!queryString) {\n return url;\n }\n\n url = url + (url.indexOf('?') !== -1 ? '&' : '?') + queryString.slice(1);\n }\n\n return url;\n}\n\n// https://gist.github.com/Xeoncross/7663273\nfunction ajax(url, options, callback, data, cache) {\n\n if (data && (typeof data === 'undefined' ? 'undefined' : _typeof(data)) === 'object') {\n if (!cache) {\n data['_t'] = new Date();\n }\n // URL encoded form data must be in querystring format\n data = addQueryString('', data).slice(1);\n }\n\n if (options.queryStringParams) {\n url = addQueryString(url, options.queryStringParams);\n }\n\n try {\n var x;\n if (XMLHttpRequest) {\n x = new XMLHttpRequest();\n } else {\n x = new ActiveXObject('MSXML2.XMLHTTP.3.0');\n }\n x.open(data ? 'POST' : 'GET', url, 1);\n if (!options.crossDomain) {\n x.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\n }\n x.withCredentials = !!options.withCredentials;\n if (data) {\n x.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');\n }\n if (x.overrideMimeType) {\n x.overrideMimeType(\"application/json\");\n }\n var h = options.customHeaders;\n if (h) {\n for (var i in h) {\n x.setRequestHeader(i, h[i]);\n }\n }\n x.onreadystatechange = function () {\n x.readyState > 3 && callback && callback(x.responseText, x);\n };\n x.send(data);\n } catch (e) {\n console && console.log(e);\n }\n}\n\nexports.default = ajax;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _utils = require('./utils.js');\n\nvar utils = _interopRequireWildcard(_utils);\n\nvar _ajax = require('./ajax.js');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction getDefaults() {\n return {\n loadPath: '/locales/{{lng}}/{{ns}}.json',\n addPath: '/locales/add/{{lng}}/{{ns}}',\n allowMultiLoading: false,\n parse: JSON.parse,\n crossDomain: false,\n ajax: _ajax2.default\n };\n}\n\nvar Backend = function () {\n function Backend(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Backend);\n\n this.init(services, options);\n\n this.type = 'backend';\n }\n\n _createClass(Backend, [{\n key: 'init',\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n this.services = services;\n this.options = utils.defaults(options, this.options || {}, getDefaults());\n }\n }, {\n key: 'readMulti',\n value: function readMulti(languages, namespaces, callback) {\n var loadPath = this.options.loadPath;\n if (typeof this.options.loadPath === 'function') {\n loadPath = this.options.loadPath(languages, namespaces);\n }\n\n var url = this.services.interpolator.interpolate(loadPath, { lng: languages.join('+'), ns: namespaces.join('+') });\n\n this.loadUrl(url, callback);\n }\n }, {\n key: 'read',\n value: function read(language, namespace, callback) {\n var loadPath = this.options.loadPath;\n if (typeof this.options.loadPath === 'function') {\n loadPath = this.options.loadPath([language], [namespace]);\n }\n\n var url = this.services.interpolator.interpolate(loadPath, { lng: language, ns: namespace });\n\n this.loadUrl(url, callback);\n }\n }, {\n key: 'loadUrl',\n value: function loadUrl(url, callback) {\n var _this = this;\n\n this.options.ajax(url, this.options, function (data, xhr) {\n if (xhr.status >= 500 && xhr.status < 600) return callback('failed loading ' + url, true /* retry */);\n if (xhr.status >= 400 && xhr.status < 500) return callback('failed loading ' + url, false /* no retry */);\n\n var ret = void 0,\n err = void 0;\n try {\n ret = _this.options.parse(data, url);\n } catch (e) {\n err = 'failed parsing ' + url + ' to json';\n }\n if (err) return callback(err, false);\n callback(null, ret);\n });\n }\n }, {\n key: 'create',\n value: function create(languages, namespace, key, fallbackValue) {\n var _this2 = this;\n\n if (typeof languages === 'string') languages = [languages];\n\n var payload = {};\n payload[key] = fallbackValue || '';\n\n languages.forEach(function (lng) {\n var url = _this2.services.interpolator.interpolate(_this2.options.addPath, { lng: lng, ns: namespace });\n\n _this2.options.ajax(url, _this2.options, function (data, xhr) {\n //const statusCode = xhr.status.toString();\n // TODO: if statusCode === 4xx do log\n }, payload);\n });\n }\n }]);\n\n return Backend;\n}();\n\nBackend.type = 'backend';\n\nexports.default = Backend;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.defaults = defaults;\nexports.extend = extend;\nvar arr = [];\nvar each = arr.forEach;\nvar slice = arr.slice;\n\nfunction defaults(obj) {\n each.call(slice.call(arguments, 1), function (source) {\n if (source) {\n for (var prop in source) {\n if (obj[prop] === undefined) obj[prop] = source[prop];\n }\n }\n });\n return obj;\n}\n\nfunction extend(obj) {\n each.call(slice.call(arguments, 1), function (source) {\n if (source) {\n for (var prop in source) {\n obj[prop] = source[prop];\n }\n }\n });\n return obj;\n}","/* eslint no-var: 0 */\nvar main = require('./dist/commonjs/index.js').default;\n\nmodule.exports = main;\nmodule.exports.default = main;\n","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nvar consoleLogger = {\n type: 'logger',\n\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 var _console;\n\n /* eslint no-console: 0 */\n if (console && console[type]) (_console = console)[type].apply(_console, _toConsumableArray(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 Logger.prototype.init = function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n };\n\n Logger.prototype.setDebug = function setDebug(bool) {\n this.debug = bool;\n };\n\n Logger.prototype.log = function log() {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return this.forward(args, 'log', '', true);\n };\n\n Logger.prototype.warn = function warn() {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return this.forward(args, 'warn', '', true);\n };\n\n Logger.prototype.error = function error() {\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return this.forward(args, 'error', '');\n };\n\n Logger.prototype.deprecate = function deprecate() {\n for (var _len4 = arguments.length, args = 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 Logger.prototype.forward = function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = '' + prefix + this.prefix + ' ' + args[0];\n return this.logger[lvl](args);\n };\n\n Logger.prototype.create = function create(moduleName) {\n return new Logger(this.logger, _extends({ prefix: this.prefix + ':' + moduleName + ':' }, this.options));\n };\n\n return Logger;\n}();\n\nexport default new Logger();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n\n this.observers = {};\n }\n\n EventEmitter.prototype.on = function on(events, listener) {\n var _this = this;\n\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n _this.observers[event].push(listener);\n });\n return this;\n };\n\n EventEmitter.prototype.off = function off(event, listener) {\n var _this2 = this;\n\n if (!this.observers[event]) {\n return;\n }\n\n this.observers[event].forEach(function () {\n if (!listener) {\n delete _this2.observers[event];\n } else {\n var index = _this2.observers[event].indexOf(listener);\n if (index > -1) {\n _this2.observers[event].splice(index, 1);\n }\n }\n });\n };\n\n EventEmitter.prototype.emit = function emit(event) {\n for (var _len = arguments.length, args = 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(undefined, args);\n });\n }\n\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n };\n\n return EventEmitter;\n}();\n\nexport default EventEmitter;","// http://lea.verou.me/2016/12/resolve-promises-externally-with-this-one-weird-trick/\nexport function defer() {\n var res = void 0;\n var rej = void 0;\n\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n\n promise.resolve = res;\n promise.reject = rej;\n\n return promise;\n}\n\nexport function makeString(object) {\n if (object == null) return '';\n /* eslint prefer-template: 0 */\n return '' + object;\n}\n\nexport function 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 while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n object = object[key];\n }\n\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\n\nexport function 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}\n\nexport function 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}\n\nexport function 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}\n\nexport function deepExtend(target, source, overwrite) {\n /* eslint no-restricted-syntax: 0 */\n for (var prop in source) {\n if (prop in target) {\n // If we reached a leaf string in target or source then replace with source or skip depending on the 'overwrite' switch\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 return target;\n}\n\nexport function regexEscape(str) {\n /* eslint no-useless-escape: 0 */\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\n\n/* eslint-disable */\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\n/* eslint-enable */\n\nexport function 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}","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nimport EventEmitter from './EventEmitter.js';\nimport * as utils from './utils.js';\n\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n\n function ResourceStore(data) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { ns: ['translation'], defaultNS: 'translation' };\n\n _classCallCheck(this, ResourceStore);\n\n var _this = _possibleConstructorReturn(this, _EventEmitter.call(this));\n\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n return _this;\n }\n\n ResourceStore.prototype.addNamespaces = function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n };\n\n ResourceStore.prototype.removeNamespaces = function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n };\n\n ResourceStore.prototype.getResource = function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n\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 return utils.getPath(this.data, path);\n };\n\n ResourceStore.prototype.addResource = function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : { silent: false };\n\n var keySeparator = this.options.keySeparator;\n if (keySeparator === undefined) keySeparator = '.';\n\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\n utils.setPath(this.data, path, value);\n\n if (!options.silent) this.emit('added', lng, ns, key, value);\n };\n\n ResourceStore.prototype.addResources = function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : { silent: false };\n\n /* eslint no-restricted-syntax: 0 */\n for (var m in resources) {\n if (typeof resources[m] === 'string') this.addResource(lng, ns, m, resources[m], { silent: true });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n };\n\n ResourceStore.prototype.addResourceBundle = function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : { silent: false };\n\n var path = [lng, ns];\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\n var pack = utils.getPath(this.data, path) || {};\n\n if (deep) {\n utils.deepExtend(pack, resources, overwrite);\n } else {\n pack = _extends({}, pack, resources);\n }\n\n utils.setPath(this.data, path, pack);\n\n if (!options.silent) this.emit('added', lng, ns, resources);\n };\n\n ResourceStore.prototype.removeResourceBundle = function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n\n this.emit('removed', lng, ns);\n };\n\n ResourceStore.prototype.hasResourceBundle = function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n };\n\n ResourceStore.prototype.getResourceBundle = function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n\n // COMPATIBILITY: remove extend in v2.1.0\n if (this.options.compatibilityAPI === 'v1') return _extends({}, this.getResource(lng, ns));\n\n return this.getResource(lng, ns);\n };\n\n ResourceStore.prototype.getDataByLanguage = function getDataByLanguage(lng) {\n return this.data[lng];\n };\n\n ResourceStore.prototype.toJSON = function toJSON() {\n return this.data;\n };\n\n return ResourceStore;\n}(EventEmitter);\n\nexport default ResourceStore;","export default {\n processors: {},\n\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\n return value;\n }\n};","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nimport baseLogger from './logger.js';\nimport EventEmitter from './EventEmitter.js';\nimport postProcessor from './postProcessor.js';\nimport * as utils from './utils.js';\n\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n\n function Translator(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Translator);\n\n var _this = _possibleConstructorReturn(this, _EventEmitter.call(this));\n\n utils.copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat'], services, _this);\n\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n\n Translator.prototype.changeLanguage = function changeLanguage(lng) {\n if (lng) this.language = lng;\n };\n\n Translator.prototype.exists = function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { interpolation: {} };\n\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n };\n\n Translator.prototype.extractFromKey = function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n\n var namespaces = options.ns || this.options.defaultNS;\n if (nsSeparator && key.indexOf(nsSeparator) > -1) {\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 if (typeof namespaces === 'string') namespaces = [namespaces];\n\n return {\n key: key,\n namespaces: namespaces\n };\n };\n\n Translator.prototype.translate = function translate(keys, options) {\n var _this2 = this;\n\n if ((typeof options === 'undefined' ? 'undefined' : _typeof(options)) !== 'object' && this.options.overloadTranslationOptionHandler) {\n /* eslint prefer-rest-params: 0 */\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (!options) options = {};\n\n // non valid keys handling\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n\n // separators\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n\n // get namespace(s)\n\n var _extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _extractFromKey.key,\n namespaces = _extractFromKey.namespaces;\n\n var namespace = namespaces[namespaces.length - 1];\n\n // return key on CIMode\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n return namespace + nsSeparator + key;\n }\n\n return key;\n }\n\n // resolve from store\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\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\n // object\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n return this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, options) : 'key \\'' + key + ' (' + this.language + ')\\' returned an object instead of string.';\n }\n\n // if we got a separator we loop over children - else we just return object as is\n // as having it set to false means no hierarchy so no lookup for nested values\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {}; // apply child translation on a copy\n\n /* eslint no-restricted-syntax: 0 */\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = '' + newKeyToUse + keySeparator + m;\n copy[m] = this.translate(deepKey, _extends({}, options, { joinArrays: false, ns: namespaces }));\n if (copy[m] === deepKey) copy[m] = res[m]; // if nothing found use orginal value as fallback\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n // array special treatment\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options);\n } else {\n // string, empty or null\n var usedDefault = false;\n var usedKey = false;\n\n // fallback value\n if (!this.isValidLookup(res) && options.defaultValue !== undefined) {\n usedDefault = true;\n\n if (options.count !== undefined) {\n var suffix = this.pluralResolver.getSuffix(lng, options.count);\n res = options['defaultValue' + suffix];\n }\n if (!res) res = options.defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n\n // save missing\n var updateMissing = options.defaultValue && options.defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? options.defaultValue : res);\n\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\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) {\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, updateMissing ? options.defaultValue : res, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, updateMissing ? options.defaultValue : res, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n\n if (this.options.saveMissing) {\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (l) {\n var plurals = _this2.pluralResolver.getPluralFormsOfKey(l, key);\n\n plurals.forEach(function (p) {\n return send([l], p);\n });\n });\n } else {\n send(lngs, key);\n }\n }\n }\n\n // extend\n res = this.extendTranslation(res, keys, options, resolved);\n\n // append namespace if still key\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = namespace + ':' + key;\n\n // parseMissingKeyHandler\n if (usedKey && this.options.parseMissingKeyHandler) res = this.options.parseMissingKeyHandler(res);\n }\n\n // return\n return res;\n };\n\n Translator.prototype.extendTranslation = function extendTranslation(res, key, options, resolved) {\n var _this3 = this;\n\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, options, resolved.usedLng, resolved.usedNS, resolved.usedKey, { resolved: resolved });\n } else if (!options.skipInterpolation) {\n // i18next.parsing\n if (options.interpolation) this.interpolator.init(_extends({}, options, { interpolation: _extends({}, this.options.interpolation, options.interpolation) }));\n\n // interpolate\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _extends({}, this.options.interpolation.defaultVariables, data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n\n // nesting\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n return _this3.translate.apply(_this3, arguments);\n }, options);\n\n if (options.interpolation) this.interpolator.reset();\n }\n\n // post process\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, options, this);\n }\n\n return res;\n };\n\n Translator.prototype.resolve = function resolve(keys) {\n var _this4 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var found = void 0;\n var usedKey = void 0; // plain key\n var exactUsedKey = void 0; // key with context / plural\n var usedLng = void 0;\n var usedNS = void 0;\n\n if (typeof keys === 'string') keys = [keys];\n\n // forEach possible key\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n var extracted = _this4.extractFromKey(k, options);\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\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsContextHandling = options.context !== undefined && typeof options.context === 'string' && options.context !== '';\n\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n\n var finalKey = key;\n var finalKeys = [finalKey];\n\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix = void 0;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count);\n\n // fallback for plural if context not found\n if (needsPluralHandling && needsContextHandling) finalKeys.push(finalKey + pluralSuffix);\n\n // get key for context if needed\n if (needsContextHandling) finalKeys.push(finalKey += '' + _this4.options.contextSeparator + options.context);\n\n // get key for plural if needed\n if (needsPluralHandling) finalKeys.push(finalKey += pluralSuffix);\n }\n\n // iterate over finalKeys starting with most specific pluralkey (-> contextkey only) -> singularkey only\n var possibleKey = void 0;\n /* eslint no-cond-assign: 0 */\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\n return { res: found, usedKey: usedKey, exactUsedKey: exactUsedKey, usedLng: usedLng, usedNS: usedNS };\n };\n\n Translator.prototype.isValidLookup = function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n };\n\n Translator.prototype.getResource = function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\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 return Translator;\n}(EventEmitter);\n\nexport default Translator;","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nimport baseLogger from './logger.js';\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\n this.whitelist = this.options.whitelist || false;\n this.logger = baseLogger.create('languageUtils');\n }\n\n LanguageUtil.prototype.getScriptPartFromCode = function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n return this.formatLanguageCode(p.join('-'));\n };\n\n LanguageUtil.prototype.getLanguagePartFromCode = function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n };\n\n LanguageUtil.prototype.formatLanguageCode = function formatLanguageCode(code) {\n // http://www.iana.org/assignments/language-tags/language-tags.xhtml\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\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\n // if lenght 2 guess it's a country\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\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 LanguageUtil.prototype.isWhitelisted = function isWhitelisted(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitWhitelist) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.whitelist || !this.whitelist.length || this.whitelist.indexOf(code) > -1;\n };\n\n LanguageUtil.prototype.getFallbackCodes = function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n\n if (!code) return fallbacks.default || [];\n\n // asume we have an object defining fallbacks\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.default;\n\n return found || [];\n };\n\n LanguageUtil.prototype.toResolveHierarchy = function toResolveHierarchy(code, fallbackCode) {\n var _this = this;\n\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this.isWhitelisted(c)) {\n codes.push(c);\n } else {\n _this.logger.warn('rejecting non-whitelisted language code: ' + 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(_this.formatLanguageCode(fc));\n });\n\n return codes;\n };\n\n return LanguageUtil;\n}();\n\nexport default LanguageUtil;","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nimport baseLogger from './logger.js';\n\n// definition http://translate.sourceforge.net/wiki/l10n/pluralforms\n/* eslint-disable */\nvar sets = [{ lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'ti', 'tr', 'uz', 'wa'], nr: [1, 2], fc: 1 }, { 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', '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'], nr: [1, 2], fc: 2 }, { lngs: ['ay', 'bo', 'cgg', 'fa', 'id', 'ja', 'jbo', 'ka', 'kk', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'], nr: [1], fc: 3 }, { lngs: ['be', 'bs', 'dz', 'hr', 'ru', 'sr', 'uk'], nr: [1, 2, 5], fc: 4 }, { lngs: ['ar'], nr: [0, 1, 2, 3, 11, 100], fc: 5 }, { lngs: ['cs', 'sk'], nr: [1, 2, 5], fc: 6 }, { lngs: ['csb', 'pl'], nr: [1, 2, 5], fc: 7 }, { lngs: ['cy'], nr: [1, 2, 3, 8], fc: 8 }, { lngs: ['fr'], nr: [1, 2], fc: 9 }, { lngs: ['ga'], nr: [1, 2, 3, 7, 11], fc: 10 }, { lngs: ['gd'], nr: [1, 2, 3, 20], fc: 11 }, { lngs: ['is'], nr: [1, 2], fc: 12 }, { lngs: ['jv'], nr: [0, 1], fc: 13 }, { lngs: ['kw'], nr: [1, 2, 3, 4], fc: 14 }, { lngs: ['lt'], nr: [1, 2, 10], fc: 15 }, { lngs: ['lv'], nr: [1, 2, 0], fc: 16 }, { lngs: ['mk'], nr: [1, 2], fc: 17 }, { lngs: ['mnk'], nr: [0, 1, 2], fc: 18 }, { lngs: ['mt'], nr: [1, 2, 11, 20], fc: 19 }, { lngs: ['or'], nr: [2, 1], fc: 2 }, { lngs: ['ro'], nr: [1, 2, 20], fc: 20 }, { lngs: ['sl'], nr: [5, 1, 2, 3], fc: 21 }, { lngs: ['he'], nr: [1, 2, 20, 21], 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 ? 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};\n/* eslint-enable */\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\n this.logger = baseLogger.create('pluralResolver');\n\n this.rules = createRules();\n }\n\n PluralResolver.prototype.addRule = function addRule(lng, obj) {\n this.rules[lng] = obj;\n };\n\n PluralResolver.prototype.getRule = function getRule(code) {\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n };\n\n PluralResolver.prototype.needsPlural = function needsPlural(code) {\n var rule = this.getRule(code);\n\n return rule && rule.numbers.length > 1;\n };\n\n PluralResolver.prototype.getPluralFormsOfKey = function getPluralFormsOfKey(code, key) {\n var _this = this;\n\n var ret = [];\n\n var rule = this.getRule(code);\n\n if (!rule) return ret;\n\n rule.numbers.forEach(function (n) {\n var suffix = _this.getSuffix(code, n);\n ret.push('' + key + suffix);\n });\n\n return ret;\n };\n\n PluralResolver.prototype.getSuffix = function getSuffix(code, count) {\n var _this2 = this;\n\n var rule = this.getRule(code);\n\n if (rule) {\n // if (rule.numbers.length === 1) return ''; // only singular\n\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n\n // special treatment for lngs only having singular and plural\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 // COMPATIBILITY JSON\n // v1\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return '_plural_' + suffix.toString();\n return returnSuffix();\n } else if ( /* v2 */this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if ( /* v3 - gettext index */this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n\n this.logger.warn('no plural rule found for: ' + code);\n return '';\n };\n\n return PluralResolver;\n}();\n\nexport default PluralResolver;","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nimport * as utils from './utils.js';\nimport baseLogger from './logger.js';\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\n this.init(options, true);\n }\n\n /* eslint no-param-reassign: 0 */\n\n\n Interpolator.prototype.init = function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var reset = arguments[1];\n\n if (reset) {\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n }\n if (!options.interpolation) options.interpolation = { escapeValue: true };\n\n var iOpts = options.interpolation;\n\n this.escape = iOpts.escape !== undefined ? iOpts.escape : utils.escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n\n this.prefix = iOpts.prefix ? utils.regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? utils.regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n\n this.nestingPrefix = iOpts.nestingPrefix ? utils.regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || utils.regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? utils.regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || utils.regexEscape(')');\n\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n\n // the regexp\n this.resetRegExp();\n };\n\n Interpolator.prototype.reset = function reset() {\n if (this.options) this.init(this.options);\n };\n\n Interpolator.prototype.resetRegExp = function resetRegExp() {\n // the regexp\n var regexpStr = this.prefix + '(.+?)' + this.suffix;\n this.regexp = new RegExp(regexpStr, 'g');\n\n var regexpUnescapeStr = '' + this.prefix + this.unescapePrefix + '(.+?)' + this.unescapeSuffix + this.suffix;\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n\n var nestingRegexpStr = this.nestingPrefix + '(.+?)' + this.nestingSuffix;\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n };\n\n Interpolator.prototype.interpolate = function interpolate(str, data, lng, options) {\n var _this = this;\n\n var match = void 0;\n var value = void 0;\n var replaces = void 0;\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) return utils.getPath(data, key);\n\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n\n return _this.format(utils.getPath(data, k), f, lng);\n };\n\n this.resetRegExp();\n\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n\n replaces = 0;\n // unescape if has unescapePrefix/Suffix\n /* eslint no-cond-assign: 0 */\n while (match = this.regexpUnescape.exec(str)) {\n value = handleFormat(match[1].trim());\n str = str.replace(match[0], value);\n this.regexpUnescape.lastIndex = 0;\n replaces++;\n if (replaces >= this.maxReplaces) {\n break;\n }\n }\n\n replaces = 0;\n // regular escape on demand\n while (match = this.regexp.exec(str)) {\n value = handleFormat(match[1].trim());\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else {\n this.logger.warn('missed to pass in variable ' + match[1] + ' for interpolating ' + str);\n value = '';\n }\n } else if (typeof value !== 'string' && !this.useRawValueToEscape) {\n value = utils.makeString(value);\n }\n value = this.escapeValue ? regexSafe(this.escape(value)) : regexSafe(value);\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n replaces++;\n if (replaces >= this.maxReplaces) {\n break;\n }\n }\n return str;\n };\n\n Interpolator.prototype.nest = function nest(str, fc) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n var match = void 0;\n var value = void 0;\n\n var clonedOptions = _extends({}, options);\n clonedOptions.applyPostProcessor = false; // avoid post processing on nested lookup\n\n // if value is something like \"myKey\": \"lorem $(anotherKey, { \"count\": {{aValueInOptions}} })\"\n function handleHasOptions(key, inheritedOptions) {\n if (key.indexOf(',') < 0) return key;\n\n var p = key.split(',');\n key = p.shift();\n var optionsString = p.join(',');\n optionsString = this.interpolate(optionsString, clonedOptions);\n optionsString = optionsString.replace(/'/g, '\"');\n\n try {\n clonedOptions = JSON.parse(optionsString);\n\n if (inheritedOptions) clonedOptions = _extends({}, inheritedOptions, clonedOptions);\n } catch (e) {\n this.logger.error('failed parsing options string in nesting for key ' + key, e);\n }\n\n return key;\n }\n\n // regular escape on demand\n while (match = this.nestingRegexp.exec(str)) {\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n\n // is only the nesting key (key1 = '$(key2)') return the value without stringify\n if (value && match[0] === str && typeof value !== 'string') return value;\n\n // no string to include or empty\n if (typeof value !== 'string') value = utils.makeString(value);\n if (!value) {\n this.logger.warn('missed to resolve ' + match[1] + ' for nesting ' + str);\n value = '';\n }\n // Nested keys should not be escaped by default #854\n // value = this.escapeValue ? regexSafe(utils.escape(value)) : regexSafe(value);\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n };\n\n return Interpolator;\n}();\n\nexport default Interpolator;","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nimport * as utils from './utils.js';\nimport baseLogger from './logger.js';\nimport EventEmitter from './EventEmitter.js';\n\nfunction remove(arr, what) {\n var found = arr.indexOf(what);\n\n while (found !== -1) {\n arr.splice(found, 1);\n found = arr.indexOf(what);\n }\n}\n\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n\n function Connector(backend, store, services) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n _classCallCheck(this, Connector);\n\n var _this = _possibleConstructorReturn(this, _EventEmitter.call(this));\n\n _this.backend = backend;\n _this.store = store;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n\n _this.state = {};\n _this.queue = [];\n\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n\n Connector.prototype.queueLoad = function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n\n // find what needs to be loaded\n var toLoad = [];\n var pending = [];\n var toLoadLanguages = [];\n var toLoadNamespaces = [];\n\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n\n namespaces.forEach(function (ns) {\n var name = lng + '|' + ns;\n\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2; // loaded\n } else if (_this2.state[name] < 0) {\n // nothing to do for err\n } else if (_this2.state[name] === 1) {\n if (pending.indexOf(name) < 0) pending.push(name);\n } else {\n _this2.state[name] = 1; // pending\n\n hasAllNamespaces = false;\n\n if (pending.indexOf(name) < 0) pending.push(name);\n if (toLoad.indexOf(name) < 0) toLoad.push(name);\n if (toLoadNamespaces.indexOf(ns) < 0) toLoadNamespaces.push(ns);\n }\n });\n\n if (!hasAllNamespaces) toLoadLanguages.push(lng);\n });\n\n if (toLoad.length || pending.length) {\n this.queue.push({\n pending: pending,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n\n return {\n toLoad: toLoad,\n pending: pending,\n toLoadLanguages: toLoadLanguages,\n toLoadNamespaces: toLoadNamespaces\n };\n };\n\n Connector.prototype.loaded = function loaded(name, err, data) {\n var _name$split = name.split('|'),\n _name$split2 = _slicedToArray(_name$split, 2),\n lng = _name$split2[0],\n ns = _name$split2[1];\n\n if (err) this.emit('failedLoading', lng, ns, err);\n\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n\n // set loaded\n this.state[name] = err ? -1 : 2;\n\n // consolidated loading done in this run - only emit once for a loaded namespace\n var loaded = {};\n\n // callback if ready\n this.queue.forEach(function (q) {\n utils.pushPath(q.loaded, [lng], ns);\n remove(q.pending, name);\n\n if (err) q.errors.push(err);\n\n if (q.pending.length === 0 && !q.done) {\n // only do once per loaded -> this.emit('loaded', q.loaded);\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = [];\n if (q.loaded[l].length) {\n q.loaded[l].forEach(function (ns) {\n if (loaded[l].indexOf(ns) < 0) loaded[l].push(ns);\n });\n }\n });\n\n /* eslint no-param-reassign: 0 */\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n\n // emit consolidated loaded event\n this.emit('loaded', loaded);\n\n // remove done load requests\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n };\n\n Connector.prototype.read = function read(lng, ns, fcName) {\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n\n var _this3 = this;\n\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 250;\n var callback = arguments[5];\n\n if (!lng.length) return callback(null, {}); // noting to load\n\n return this.backend[fcName](lng, ns, function (err, data) {\n if (err && data /* = retryFlag */ && tried < 5) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n });\n };\n\n /* eslint consistent-return: 0 */\n\n\n Connector.prototype.prepareLoading = function prepareLoading(languages, namespaces) {\n var _this4 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments[3];\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\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback(); // nothing to load and no pendings...callback now\n return null; // pendings will trigger callback\n }\n\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n };\n\n Connector.prototype.load = function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n };\n\n Connector.prototype.reload = function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, { reload: true }, callback);\n };\n\n Connector.prototype.loadOne = function loadOne(name) {\n var _this5 = this;\n\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n\n var _name$split3 = name.split('|'),\n _name$split4 = _slicedToArray(_name$split3, 2),\n lng = _name$split4[0],\n ns = _name$split4[1];\n\n this.read(lng, ns, 'read', null, null, function (err, data) {\n if (err) _this5.logger.warn(prefix + 'loading namespace ' + ns + ' for language ' + lng + ' failed', err);\n if (!err && data) _this5.logger.log(prefix + 'loaded namespace ' + ns + ' for language ' + lng, data);\n\n _this5.loaded(name, err, data);\n });\n };\n\n Connector.prototype.saveMissing = function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n\n if (this.backend && this.backend.create) {\n this.backend.create(languages, namespace, key, fallbackValue, null /* unused callback */, _extends({}, options, {\n isUpdate: isUpdate\n }));\n }\n\n // write to store to avoid resending\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n };\n\n return Connector;\n}(EventEmitter);\n\nexport default Connector;","export { get };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false, // string or array of namespaces\n\n whitelist: false, // array with whitelisted languages\n nonExplicitWhitelist: false,\n load: 'all', // | currentOnly | languageOnly\n preload: false, // array with preload languages\n\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n\n partialBundledLanguages: false, // allow bundling certain languages that are not remotely fetched\n saveMissing: false, // enable to send missing values\n updateMissing: false, // enable to update default values if different from translated value (only useful on initial development, or when keeping code as source of truth)\n saveMissingTo: 'fallback', // 'current' || 'all'\n saveMissingPlurals: true, // will save all forms not only singular key\n missingKeyHandler: false, // function(lng, ns, key, fallbackValue) -> override if prefer on handling\n missingInterpolationHandler: false, // function(str, match)\n\n postProcess: false, // string or array of postProcessor names\n returnNull: true, // allows null value as valid translation\n returnEmptyString: true, // allows empty string value as valid translation\n returnObjects: false,\n joinArrays: false, // or string to join array\n returnedObjectHandler: function returnedObjectHandler() {}, // function(key, value, options) triggered if key returns object but returnObjects is set to false\n parseMissingKeyHandler: false, // function(key) parsed a key that was not found in t() before returning\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 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 return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n // prefixEscaped: '{{',\n // suffixEscaped: '}}',\n // unescapeSuffix: '',\n unescapePrefix: '-',\n\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n // nestingPrefixEscaped: '$t(',\n // nestingSuffixEscaped: ')',\n // defaultVariables: undefined // object that can have values to interpolate on - extends passed in interpolation data\n maxReplaces: 1000 // max replaces to prevent endless loop\n }\n };\n}\n\n/* eslint no-param-reassign: 0 */\nexport function transformOptions(options) {\n // create namespace object if namespace is passed in as string\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 // extend whitelist with cimode\n if (options.whitelist && options.whitelist.indexOf('cimode') < 0) {\n options.whitelist = options.whitelist.concat(['cimode']);\n }\n\n return options;\n}","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nimport baseLogger from './logger.js';\nimport EventEmitter from './EventEmitter.js';\nimport ResourceStore from './ResourceStore.js';\nimport Translator from './Translator.js';\nimport LanguageUtils from './LanguageUtils.js';\nimport PluralResolver from './PluralResolver.js';\nimport Interpolator from './Interpolator.js';\nimport BackendConnector from './BackendConnector.js';\nimport { get as getDefaults, transformOptions } from './defaults.js';\nimport postProcessor from './postProcessor.js';\nimport { defer } from './utils.js';\n\nfunction noop() {}\n\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n\n function I18n() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments[1];\n\n _classCallCheck(this, I18n);\n\n var _this = _possibleConstructorReturn(this, _EventEmitter.call(this));\n\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = { external: [] };\n\n if (callback && !_this.isInitialized && !options.isClone) {\n // https://github.com/i18next/i18next/issues/879\n if (!_this.options.initImmediate) {\n var _ret;\n\n _this.init(options, callback);\n return _ret = _this, _possibleConstructorReturn(_this, _ret);\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n\n I18n.prototype.init = function init() {\n var _this2 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments[1];\n\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n this.options = _extends({}, getDefaults(), this.options, transformOptions(options));\n\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n\n // init services\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 lu = new LanguageUtils(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n\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 s.interpolator = new Interpolator(this.options);\n\n s.backendConnector = new BackendConnector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n // pipe events from backendConnector\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = 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 // pipe events from translator\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = 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\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n\n // append api\n var storeApi = ['getResource', 'addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _store;\n\n return (_store = _this2.store)[fcName].apply(_store, arguments);\n };\n });\n\n var deferred = defer();\n\n var load = function load() {\n _this2.changeLanguage(_this2.options.lng, function (err, t) {\n _this2.isInitialized = true;\n _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n\n deferred.resolve(t); // not rejecting on err (as err is only a loading translation failed warning)\n callback(err, t);\n });\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 /* eslint consistent-return: 0 */\n\n\n I18n.prototype.loadResources = function loadResources() {\n var _this3 = this;\n\n var callback = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : noop;\n\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (this.language && this.language.toLowerCase() === 'cimode') return callback(); // avoid loading resources for cimode\n\n var toLoad = [];\n\n var append = function append(lng) {\n if (!lng) return;\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n\n if (!this.language) {\n // at least load fallbacks in this case\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(this.language);\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, callback);\n } else {\n callback(null);\n }\n };\n\n I18n.prototype.reloadResources = 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 () {\n deferred.resolve();\n callback(null);\n });\n return deferred;\n };\n\n I18n.prototype.use = function use(module) {\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 === '3rdParty') {\n this.modules.external.push(module);\n }\n\n return this;\n };\n\n I18n.prototype.changeLanguage = function changeLanguage(lng, callback) {\n var _this4 = this;\n\n var deferred = defer();\n\n var done = function done(err, l) {\n _this4.translator.changeLanguage(l);\n\n if (l) {\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\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(l) {\n if (l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n\n if (_this4.services.languageDetector) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n\n _this4.loadResources(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 I18n.prototype.getFixedT = function getFixedT(lng, ns) {\n var _this5 = this;\n\n var fixedT = function fixedT(key, opts) {\n for (var _len3 = arguments.length, rest = Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n\n var options = _extends({}, opts);\n if ((typeof opts === 'undefined' ? 'undefined' : _typeof(opts)) !== 'object') {\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n }\n\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n return _this5.t(key, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n return fixedT;\n };\n\n I18n.prototype.t = function t() {\n var _translator;\n\n return this.translator && (_translator = this.translator).translate.apply(_translator, arguments);\n };\n\n I18n.prototype.exists = function exists() {\n var _translator2;\n\n return this.translator && (_translator2 = this.translator).exists.apply(_translator2, arguments);\n };\n\n I18n.prototype.setDefaultNamespace = function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n };\n\n I18n.prototype.loadNamespaces = function loadNamespaces(ns, callback) {\n var _this6 = this;\n\n var deferred = defer();\n\n if (!this.options.ns) {\n callback && callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n\n ns.forEach(function (n) {\n if (_this6.options.ns.indexOf(n) < 0) _this6.options.ns.push(n);\n });\n\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n\n return deferred;\n };\n\n I18n.prototype.loadLanguages = function loadLanguages(lngs, callback) {\n var deferred = defer();\n\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n // Exit early if all given languages are already preloaded\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\n return deferred;\n };\n\n I18n.prototype.dir = function dir(lng) {\n if (!lng) lng = this.languages && this.languages.length > 0 ? this.languages[0] : this.language;\n if (!lng) return 'rtl';\n\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', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam'];\n\n return rtlLngs.indexOf(this.services.languageUtils.getLanguagePartFromCode(lng)) >= 0 ? 'rtl' : 'ltr';\n };\n\n /* eslint class-methods-use-this: 0 */\n\n\n I18n.prototype.createInstance = function createInstance() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments[1];\n\n return new I18n(options, callback);\n };\n\n I18n.prototype.cloneInstance = function cloneInstance() {\n var _this7 = 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 = _extends({}, this.options, options, { isClone: true });\n var clone = new I18n(mergedOptions);\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this7[m];\n });\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = 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; // sync options\n\n return clone;\n };\n\n return I18n;\n}(EventEmitter);\n\nexport default new I18n();","import i18next from './i18next.js';\n\nexport default i18next;\n\nexport var changeLanguage = i18next.changeLanguage.bind(i18next);\nexport var cloneInstance = i18next.cloneInstance.bind(i18next);\nexport var createInstance = i18next.createInstance.bind(i18next);\nexport var dir = i18next.dir.bind(i18next);\nexport var exists = i18next.exists.bind(i18next);\nexport var getFixedT = i18next.getFixedT.bind(i18next);\nexport var init = i18next.init.bind(i18next);\nexport var loadLanguages = i18next.loadLanguages.bind(i18next);\nexport var loadNamespaces = i18next.loadNamespaces.bind(i18next);\nexport var loadResources = i18next.loadResources.bind(i18next);\nexport var off = i18next.off.bind(i18next);\nexport var on = i18next.on.bind(i18next);\nexport var setDefaultNamespace = i18next.setDefaultNamespace.bind(i18next);\nexport var t = i18next.t.bind(i18next);\nexport var use = i18next.use.bind(i18next);","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n"],"names":["module","exports","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","length","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","id","_k","push","url","options","String","__esModule","default","test","slice","hash","needQuotes","replace","cssMapping","btoa","base64","unescape","encodeURIComponent","JSON","stringify","data","sourceMapping","isMergeableObject","value","isNonNullObject","stringValue","Object","prototype","call","$$typeof","REACT_ELEMENT_TYPE","isReactElement","isSpecial","Symbol","for","cloneIfNecessary","optionsArgument","val","clone","deepmerge","Array","isArray","defaultArrayMerge","target","source","destination","forEach","e","indexOf","sourceIsArray","arrayMerge","keys","key","mergeObject","all","array","Error","reduce","prev","next","deepmerge_1","maybeNeedQuotes","defineProperty","_typeof","iterator","obj","constructor","addQueryString","params","queryString","paramName","callback","cache","Date","queryStringParams","x","XMLHttpRequest","ActiveXObject","open","crossDomain","setRequestHeader","withCredentials","overrideMimeType","h","customHeaders","onreadystatechange","readyState","responseText","send","console","log","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","Constructor","protoProps","staticProps","utils","newObj","hasOwnProperty","_interopRequireWildcard","_ajax2","Backend","services","arguments","instance","TypeError","_classCallCheck","init","type","defaults","loadPath","addPath","allowMultiLoading","parse","ajax","languages","namespaces","interpolator","interpolate","lng","ns","loadUrl","language","namespace","_this","xhr","status","ret","err","fallbackValue","_this2","payload","each","prop","extend","arr","main","_extends","assign","consoleLogger","args","output","warn","error","_console","apply","arr2","from","_toConsumableArray","Logger","concreteLogger","prefix","logger","debug","setDebug","bool","_len","_key","forward","_len2","_key2","_len3","_key3","deprecate","_len4","_key4","lvl","debugOnly","create","moduleName","EventEmitter","observers","on","events","listener","split","event","off","index","splice","emit","observer","defer","res","rej","promise","Promise","resolve","reject","makeString","object","getLastOfPath","path","Empty","cleanKey","canNotTraverseDeeper","stack","shift","setPath","newValue","_getLastOfPath","getPath","_getLastOfPath3","deepExtend","overwrite","regexEscape","str","_entityMap","s","ResourceStore","_EventEmitter","defaultNS","self","ReferenceError","_possibleConstructorReturn","keySeparator","subClass","superClass","setPrototypeOf","getOwnPropertyNames","getOwnPropertyDescriptor","_defaults","_inherits","addNamespaces","removeNamespaces","getResource","addResource","silent","addResources","resources","m","addResourceBundle","deep","pack","removeResourceBundle","hasResourceBundle","getResourceBundle","compatibilityAPI","getDataByLanguage","toJSON","processors","addPostProcessor","name","handle","translator","processor","process","Translator","t","changeLanguage","exists","interpolation","resolved","extractFromKey","nsSeparator","parts","translate","overloadTranslationOptionHandler","_extractFromKey","appendNamespaceToCIMode","toLowerCase","resUsedKey","usedKey","resExactUsedKey","exactUsedKey","resType","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","returnObjects","returnedObjectHandler","resTypeIsArray","copy","newKeyToUse","deepKey","extendTranslation","usedDefault","isValidLookup","defaultValue","count","suffix","pluralResolver","getSuffix","updateMissing","lngs","fallbackLngs","languageUtils","getFallbackCodes","fallbackLng","saveMissingTo","toResolveHierarchy","l","missingKeyHandler","backendConnector","saveMissing","needsPluralHandling","saveMissingPlurals","getPluralFormsOfKey","p","appendNamespaceToMissingKey","parseMissingKeyHandler","_this3","usedLng","usedNS","skipInterpolation","defaultVariables","nest","reset","postProcess","postProcessorNames","applyPostProcessor","postProcessor","_this4","found","extracted","fallbackNS","needsContextHandling","context","codes","code","finalKey","finalKeys","addLookupKeys","pluralSuffix","contextSeparator","possibleKey","pop","returnNull","returnEmptyString","resourceStore","capitalize","string","charAt","toUpperCase","LanguageUtil","whitelist","getScriptPartFromCode","formatLanguageCode","getLanguagePartFromCode","specialCases","lowerCaseLng","part","cleanCode","isWhitelisted","load","nonExplicitWhitelist","fallbacks","fallbackCode","fallbackCodes","addCode","c","fc","sets","nr","_rulesPluralsTypes","n","Number","PluralResolver","rules","set","numbers","plurals","addRule","getRule","needsPlural","rule","idx","noAbs","Math","abs","simplifyPluralSuffix","returnSuffix","prepend","compatibilityJSON","Interpolator","format","escapeValue","iOpts","escape","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapePrefix","unescapeSuffix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","maxReplaces","resetRegExp","regexpStr","regexp","RegExp","regexpUnescapeStr","regexpUnescape","nestingRegexpStr","nestingRegexp","match","replaces","regexSafe","handleFormat","trim","f","missingInterpolationHandler","exec","lastIndex","temp","clonedOptions","handleHasOptions","inheritedOptions","optionsString","_slicedToArray","_arr","_n","_d","_e","_s","_i","done","sliceIterator","Connector","backend","store","state","queue","queueLoad","toLoad","pending","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","reload","loaded","errors","_name$split","_name$split2","q","_getLastOfPath2","what","remove","filter","read","fcName","tried","wait","setTimeout","prepareLoading","loadOne","_this5","_name$split3","_name$split4","isUpdate","transformOptions","noop","I18n","external","isInitialized","isClone","initImmediate","createClassOnDemand","ClassOrObject","preload","pluralSeparator","partialBundledLanguages","tDescription","_format","lu","LanguageUtils","BackendConnector","languageDetector","detection","_store","deferred","loadResources","append","reloadResources","use","setLng","cacheUserLanguage","async","detect","getFixedT","fixedT","opts","rest","_translator","_translator2","setDefaultNamespace","loadNamespaces","_this6","loadLanguages","preloaded","newLngs","dir","createInstance","cloneInstance","_this7","mergedOptions","i18next","bind","buffer","offset","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","d","NaN","Infinity","pow","write","rt","isNaN","floor","LN2"],"sourceRoot":""}