@bigbinary/neeto-approvals-frontend 0.2.1 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +48 -34
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +46 -35
- package/dist/index.js.map +1 -1
- package/package.json +2 -1
- package/types.d.ts +2 -0
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/i18next/dist/esm/i18next.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/void-elements/index.js","../node_modules/html-parse-stringify/dist/html-parse-stringify.module.js","../node_modules/html-escaper/esm/index.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/react-i18next/dist/es/context.js","../node_modules/react-i18next/dist/es/utils.js","../node_modules/react-i18next/dist/es/Trans.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/react-i18next/dist/es/useTranslation.js","../src/common/i18n.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/common/routes.js","../src/components/Approvals/constants.js","../src/common/utils.js","../src/apis/approvers.js","../src/common/queryConstants.js","../src/hooks/reactQuery/approvers/useApproversApi.js","../src/hooks/useUrlSearchParams.js","../src/hooks/usePaginate.js","../src/components/Approvals/Approvers/constants.js","../src/components/Approvals/Approvers/Form.jsx","../src/components/Approvals/Approvers/Create.jsx","../src/components/Approvals/Approvers/Edit.jsx","../src/components/Approvals/Approvers/utils/columnData.jsx","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../src/utils.jsx","../src/components/Approvals/TableWithActions.jsx","../src/components/Approvals/Approvers/index.jsx","../src/apis/requests.js","../src/hooks/reactQuery/requests/useRequestsApi.js","../src/components/Approvals/History/constants.jsx","../src/components/Approvals/ApprovalDetailsPane.jsx","../src/components/Approvals/utils.js","../src/components/Approvals/History/index.jsx","../src/components/Approvals/PendingRequests/constants.js","../src/components/Approvals/PendingRequests/index.jsx","../src/apis/templates.js","../src/hooks/reactQuery/templates/useTemplatesApi.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../src/components/Approvals/Templates/constants.js","../src/components/Approvals/Templates/DynamicBlock.jsx","../src/components/Approvals/Templates/Form.jsx","../src/components/Approvals/Templates/utils/index.js","../src/components/Approvals/Templates/Create.jsx","../src/components/Approvals/Templates/Edit.jsx","../src/components/Approvals/Templates/Show/Field.jsx","../src/components/Approvals/Templates/Show/index.jsx","../src/components/Approvals/Templates/utils/columnData.jsx","../src/components/Approvals/Templates/index.jsx","../src/components/Approvals/createRoutes.jsx","../src/components/Approvals/Header.jsx","../src/apis/views.js","../src/hooks/reactQuery/views/useViewsApi.js","../src/components/Approvals/Tab.jsx","../src/components/Approvals/index.jsx","../src/components/Approvals/CreateRequestForm.jsx","../src/apis/public/requests.js","../src/hooks/reactQuery/public/requests/useApprovalRequest.js","../src/components/Approvals/Public/index.jsx","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js"],"sourcesContent":["export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Logger);\n this.init(concreteLogger, options);\n }\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread$6(_objectSpread$6({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }, {\n key: \"clone\",\n value: function clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n }]);\n return Logger;\n}();\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n this.observers = {};\n }\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\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 key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n 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\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n return matched;\n}\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n current = current[paths[i]];\n }\n return current;\n}\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n var _super = _createSuper$3(ResourceStore);\n function ResourceStore(data) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n _classCallCheck(this, ResourceStore);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n return _this;\n }\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$5(_objectSpread$5({}, pack), resources);\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$5(_objectSpread$5({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n var _super = _createSuper$2(Translator);\n function Translator(services) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Translator);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n if (key === undefined || key === null) {\n return false;\n }\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (_typeof(options) === 'object') options = _objectSpread$4({}, options);\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n var namespace = namespaces[namespaces.length - 1];\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 if (returnDetails) {\n return {\n res: \"\".concat(namespace).concat(nsSeparator).concat(key),\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n if (returnDetails) {\n return {\n res: key,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return key;\n }\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$4(_objectSpread$4({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n return r;\n }\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$4(_objectSpread$4({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$4(_objectSpread$4({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n 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 var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$4(_objectSpread$4({}, options), {\n interpolation: _objectSpread$4(_objectSpread$4({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (!options.lng && this.options.compatibilityAPI !== 'v1' && resolved && resolved.res) options.lng = resolved.usedLng;\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n return null;\n }\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$4({\n i18nResolved: resolved\n }, options) : options, this);\n }\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n 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 var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n var possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n }]);\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n return p.join('-');\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n var cleanedLng = _this.formatLanguageCode(code);\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n var lngOnly = _this.getLanguagePartFromCode(code);\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng === lngOnly) return supportedLng;\n if (supportedLng.indexOf('-') < 0 && lngOnly.indexOf('-') < 0) return;\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n 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 fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\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}\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, PluralResolver);\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n this.rules = createRules();\n }\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (!rule) {\n return [];\n }\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n return this.getSuffixRetroCompatible(rule, count);\n }\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\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 var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction deepFindWithDefaults(data, defaultData, key) {\n var keySeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '.';\n var ignoreJSONStructure = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var path = getPathWithDefaults(data, defaultData, key);\n if (!path && ignoreJSONStructure && typeof key === 'string') {\n path = deepFind(data, key, keySeparator);\n if (path === undefined) path = deepFind(defaultData, key, keySeparator);\n }\n return path;\n}\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Interpolator);\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n this.init(options);\n }\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = deepFindWithDefaults(data, defaultData, key, _this.options.keySeparator, _this.options.ignoreJSONStructure);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: key\n })) : path;\n }\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(deepFindWithDefaults(data, defaultData, k, _this.options.keySeparator, _this.options.ignoreJSONStructure), f, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: k\n }));\n };\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && Object.prototype.hasOwnProperty.call(options, matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n replaces++;\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n var clonedOptions;\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n var matchedSingleQuotes = optionsString.match(/'/g);\n var matchedDoubleQuotes = optionsString.match(/\"/g);\n if (matchedSingleQuotes && matchedSingleQuotes.length % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n delete clonedOptions.defaultValue;\n return key;\n }\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n clonedOptions = _objectSpread$3({}, options);\n clonedOptions = clonedOptions.replace && typeof clonedOptions.replace !== 'string' ? clonedOptions.replace : clonedOptions;\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n var doReduce = false;\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n }]);\n return Interpolator;\n}();\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\nfunction createCachedFormatter(fn) {\n var cache = {};\n return function invokeFormatter(val, lng, options) {\n var key = lng + JSON.stringify(options);\n var formatter = cache[key];\n if (!formatter) {\n formatter = fn(lng, options);\n cache[key] = formatter;\n }\n return formatter(val);\n };\n}\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Formatter);\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n currency: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2(_objectSpread$2({}, opt), {}, {\n style: 'currency'\n }));\n return function (val) {\n return formatter.format(val);\n };\n }),\n datetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.DateTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n relativetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.RelativeTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val, opt.range || 'day');\n };\n }),\n list: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.ListFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n })\n };\n this.init(options);\n }\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"addCached\",\n value: function addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng) {\n var _this = this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var formats = _format.split(this.formatSeparator);\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n if (_this.formats[formatName]) {\n var formatted = mem;\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$2(_objectSpread$2(_objectSpread$2({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n return mem;\n }, value);\n return result;\n }\n }]);\n return Formatter;\n}();\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n var _super = _createSuper$1(Connector);\n function Connector(backend, store, services) {\n var _this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n _classCallCheck(this, Connector);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n _this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n _this.state = {};\n _this.queue = [];\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n if (loadedKeys.length) {\n loadedKeys.forEach(function (n) {\n if (loaded[l][n] === undefined) loaded[l][n] = true;\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n this.readingCalls++;\n var resolver = function resolver(err, data) {\n _this3.readingCalls--;\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n if (err && data && tried < _this3.maxRetries) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n };\n var fc = this.backend[fcName].bind(this.backend);\n if (fc.length === 2) {\n try {\n var r = fc(lng, ns);\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return resolver(null, data);\n })[\"catch\"](resolver);\n } else {\n resolver(null, r);\n }\n } catch (err) {\n resolver(err);\n }\n return;\n }\n return fc(lng, ns, resolver);\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\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 if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n var clb = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : function () {};\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend && this.backend.create) {\n var opts = _objectSpread$1(_objectSpread$1({}, options), {}, {\n isUpdate: isUpdate\n });\n var fc = this.backend.create.bind(this.backend);\n if (fc.length < 6) {\n try {\n var r;\n if (fc.length === 5) {\n r = fc(languages, namespace, key, fallbackValue, opts);\n } else {\n r = fc(languages, namespace, key, fallbackValue);\n }\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return clb(null, data);\n })[\"catch\"](clb);\n } else {\n clb(null, r);\n }\n } catch (err) {\n clb(err);\n }\n } else {\n fc(languages, namespace, key, fallbackValue, clb, opts);\n }\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n 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, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n return options;\n}\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction noop() {}\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n var _super = _createSuper(I18n);\n function I18n() {\n var _this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n _classCallCheck(this, I18n);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!options.defaultNS && options.defaultNS !== false && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n var defOpts = get();\n this.options = _objectSpread(_objectSpread(_objectSpread({}, defOpts), this.options), transformOptions(options));\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread(_objectSpread({}, defOpts.interpolation), this.options.interpolation);\n }\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n var formatter;\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n if (s.languageDetector.init) s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n return _this2;\n };\n });\n var deferred = defer();\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\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 if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n _this4.setResolvedLanguage(l);\n };\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n _this4.translator.changeLanguage(l);\n _this4.isLanguageChangingTo = undefined;\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\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 var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector && _this4.services.languageDetector.cacheUserLanguage) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n _this4.loadResources(l, function (err) {\n done(err, l);\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 if (this.services.languageDetector.detect.length === 0) {\n this.services.languageDetector.detect().then(setLng);\n } else {\n this.services.languageDetector.detect(setLng);\n }\n } else {\n setLng(lng);\n }\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n var fixedT = function fixedT(key, opts) {\n var options;\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey;\n if (options.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(function (k) {\n return \"\".concat(options.keyPrefix).concat(keySeparator).concat(k);\n });\n } else {\n resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n }\n return _this5.t(resultKey, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n var lng = options.lng || this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n var deferred = defer();\n if (!this.options.ns) {\n if (callback) callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n var languageUtils = this.services && this.services.languageUtils || new LanguageUtil(get());\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var mergedOptions = _objectSpread(_objectSpread(_objectSpread({}, this.options), options), {\n isClone: true\n });\n var clone = new I18n(mergedOptions);\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n return I18n;\n}(EventEmitter);\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar dir = instance.dir;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport { changeLanguage, createInstance, instance as default, dir, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\n\nvar arr = [];\nvar each = arr.forEach;\nvar slice = arr.slice;\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\n// eslint-disable-next-line no-control-regex\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\nvar serializeCookie = function serializeCookie(name, val, options) {\n var opt = options || {};\n opt.path = opt.path || '/';\n var value = encodeURIComponent(val);\n var str = \"\".concat(name, \"=\").concat(value);\n if (opt.maxAge > 0) {\n var maxAge = opt.maxAge - 0;\n if (Number.isNaN(maxAge)) throw new Error('maxAge should be a Number');\n str += \"; Max-Age=\".concat(Math.floor(maxAge));\n }\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n str += \"; Domain=\".concat(opt.domain);\n }\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n str += \"; Path=\".concat(opt.path);\n }\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n str += \"; Expires=\".concat(opt.expires.toUTCString());\n }\n if (opt.httpOnly) str += '; HttpOnly';\n if (opt.secure) str += '; Secure';\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string' ? opt.sameSite.toLowerCase() : opt.sameSite;\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n return str;\n};\nvar cookie = {\n create: function create(name, value, minutes, domain) {\n var cookieOptions = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n path: '/',\n sameSite: 'strict'\n };\n if (minutes) {\n cookieOptions.expires = new Date();\n cookieOptions.expires.setTime(cookieOptions.expires.getTime() + minutes * 60 * 1000);\n }\n if (domain) cookieOptions.domain = domain;\n document.cookie = serializeCookie(name, encodeURIComponent(value), cookieOptions);\n },\n read: function read(name) {\n var nameEQ = \"\".concat(name, \"=\");\n var ca = document.cookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) === ' ') {\n c = c.substring(1, c.length);\n }\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\n }\n return null;\n },\n remove: function remove(name) {\n this.create(name, '', -1);\n }\n};\nvar cookie$1 = {\n name: 'cookie',\n lookup: function lookup(options) {\n var found;\n if (options.lookupCookie && typeof document !== 'undefined') {\n var c = cookie.read(options.lookupCookie);\n if (c) found = c;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupCookie && typeof document !== 'undefined') {\n cookie.create(options.lookupCookie, lng, options.cookieMinutes, options.cookieDomain, options.cookieOptions);\n }\n }\n};\n\nvar querystring = {\n name: 'querystring',\n lookup: function lookup(options) {\n var found;\n if (typeof window !== 'undefined') {\n var search = window.location.search;\n if (!window.location.search && window.location.hash && window.location.hash.indexOf('?') > -1) {\n search = window.location.hash.substring(window.location.hash.indexOf('?'));\n }\n var query = search.substring(1);\n var params = query.split('&');\n for (var i = 0; i < params.length; i++) {\n var pos = params[i].indexOf('=');\n if (pos > 0) {\n var key = params[i].substring(0, pos);\n if (key === options.lookupQuerystring) {\n found = params[i].substring(pos + 1);\n }\n }\n }\n }\n return found;\n }\n};\n\nvar hasLocalStorageSupport = null;\nvar localStorageAvailable = function localStorageAvailable() {\n if (hasLocalStorageSupport !== null) return hasLocalStorageSupport;\n try {\n hasLocalStorageSupport = window !== 'undefined' && window.localStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.localStorage.setItem(testKey, 'foo');\n window.localStorage.removeItem(testKey);\n } catch (e) {\n hasLocalStorageSupport = false;\n }\n return hasLocalStorageSupport;\n};\nvar localStorage = {\n name: 'localStorage',\n lookup: function lookup(options) {\n var found;\n if (options.lookupLocalStorage && localStorageAvailable()) {\n var lng = window.localStorage.getItem(options.lookupLocalStorage);\n if (lng) found = lng;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupLocalStorage && localStorageAvailable()) {\n window.localStorage.setItem(options.lookupLocalStorage, lng);\n }\n }\n};\n\nvar hasSessionStorageSupport = null;\nvar sessionStorageAvailable = function sessionStorageAvailable() {\n if (hasSessionStorageSupport !== null) return hasSessionStorageSupport;\n try {\n hasSessionStorageSupport = window !== 'undefined' && window.sessionStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.sessionStorage.setItem(testKey, 'foo');\n window.sessionStorage.removeItem(testKey);\n } catch (e) {\n hasSessionStorageSupport = false;\n }\n return hasSessionStorageSupport;\n};\nvar sessionStorage = {\n name: 'sessionStorage',\n lookup: function lookup(options) {\n var found;\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n var lng = window.sessionStorage.getItem(options.lookupSessionStorage);\n if (lng) found = lng;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n window.sessionStorage.setItem(options.lookupSessionStorage, lng);\n }\n }\n};\n\nvar navigator$1 = {\n name: 'navigator',\n lookup: function lookup(options) {\n var found = [];\n if (typeof navigator !== 'undefined') {\n if (navigator.languages) {\n // chrome only; not an array, so can't use .push.apply instead of iterating\n for (var i = 0; i < navigator.languages.length; i++) {\n found.push(navigator.languages[i]);\n }\n }\n if (navigator.userLanguage) {\n found.push(navigator.userLanguage);\n }\n if (navigator.language) {\n found.push(navigator.language);\n }\n }\n return found.length > 0 ? found : undefined;\n }\n};\n\nvar htmlTag = {\n name: 'htmlTag',\n lookup: function lookup(options) {\n var found;\n var htmlTag = options.htmlTag || (typeof document !== 'undefined' ? document.documentElement : null);\n if (htmlTag && typeof htmlTag.getAttribute === 'function') {\n found = htmlTag.getAttribute('lang');\n }\n return found;\n }\n};\n\nvar path = {\n name: 'path',\n lookup: function lookup(options) {\n var found;\n if (typeof window !== 'undefined') {\n var language = window.location.pathname.match(/\\/([a-zA-Z-]*)/g);\n if (language instanceof Array) {\n if (typeof options.lookupFromPathIndex === 'number') {\n if (typeof language[options.lookupFromPathIndex] !== 'string') {\n return undefined;\n }\n found = language[options.lookupFromPathIndex].replace('/', '');\n } else {\n found = language[0].replace('/', '');\n }\n }\n }\n return found;\n }\n};\n\nvar subdomain = {\n name: 'subdomain',\n lookup: function lookup(options) {\n // If given get the subdomain index else 1\n var lookupFromSubdomainIndex = typeof options.lookupFromSubdomainIndex === 'number' ? options.lookupFromSubdomainIndex + 1 : 1;\n // get all matches if window.location. is existing\n // first item of match is the match itself and the second is the first group macht which sould be the first subdomain match\n // is the hostname no public domain get the or option of localhost\n var language = typeof window !== 'undefined' && window.location && window.location.hostname && window.location.hostname.match(/^(\\w{2,5})\\.(([a-z0-9-]{1,63}\\.[a-z]{2,6})|localhost)/i);\n\n // if there is no match (null) return undefined\n if (!language) return undefined;\n // return the given group match\n return language[lookupFromSubdomainIndex];\n }\n};\n\nfunction getDefaults() {\n return {\n order: ['querystring', 'cookie', 'localStorage', 'sessionStorage', 'navigator', 'htmlTag'],\n lookupQuerystring: 'lng',\n lookupCookie: 'i18next',\n lookupLocalStorage: 'i18nextLng',\n lookupSessionStorage: 'i18nextLng',\n // cache user language\n caches: ['localStorage'],\n excludeCacheFor: ['cimode']\n // cookieMinutes: 10,\n // cookieDomain: 'myDomain'\n };\n}\nvar Browser = /*#__PURE__*/function () {\n function Browser(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Browser);\n this.type = 'languageDetector';\n this.detectors = {};\n this.init(services, options);\n }\n _createClass(Browser, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n this.services = services;\n this.options = defaults(options, this.options || {}, getDefaults());\n\n // backwards compatibility\n if (this.options.lookupFromUrlIndex) this.options.lookupFromPathIndex = this.options.lookupFromUrlIndex;\n this.i18nOptions = i18nOptions;\n this.addDetector(cookie$1);\n this.addDetector(querystring);\n this.addDetector(localStorage);\n this.addDetector(sessionStorage);\n this.addDetector(navigator$1);\n this.addDetector(htmlTag);\n this.addDetector(path);\n this.addDetector(subdomain);\n }\n }, {\n key: \"addDetector\",\n value: function addDetector(detector) {\n this.detectors[detector.name] = detector;\n }\n }, {\n key: \"detect\",\n value: function detect(detectionOrder) {\n var _this = this;\n if (!detectionOrder) detectionOrder = this.options.order;\n var detected = [];\n detectionOrder.forEach(function (detectorName) {\n if (_this.detectors[detectorName]) {\n var lookup = _this.detectors[detectorName].lookup(_this.options);\n if (lookup && typeof lookup === 'string') lookup = [lookup];\n if (lookup) detected = detected.concat(lookup);\n }\n });\n if (this.services.languageUtils.getBestMatchFromCodes) return detected; // new i18next v19.5.0\n return detected.length > 0 ? detected[0] : null; // a little backward compatibility\n }\n }, {\n key: \"cacheUserLanguage\",\n value: function cacheUserLanguage(lng, caches) {\n var _this2 = this;\n if (!caches) caches = this.options.caches;\n if (!caches) return;\n if (this.options.excludeCacheFor && this.options.excludeCacheFor.indexOf(lng) > -1) return;\n caches.forEach(function (cacheName) {\n if (_this2.detectors[cacheName]) _this2.detectors[cacheName].cacheUserLanguage(lng, _this2.options);\n });\n }\n }]);\n return Browser;\n}();\nBrowser.type = 'languageDetector';\n\nexport { Browser as default };\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","/**\n * This file automatically generated from `pre-publish.js`.\n * Do not manually edit.\n */\n\nmodule.exports = {\n \"area\": true,\n \"base\": true,\n \"br\": true,\n \"col\": true,\n \"embed\": true,\n \"hr\": true,\n \"img\": true,\n \"input\": true,\n \"link\": true,\n \"meta\": true,\n \"param\": true,\n \"source\": true,\n \"track\": true,\n \"wbr\": true\n};\n","import e from\"void-elements\";var t=/\\s([^'\"/\\s><]+?)[\\s/>]|([^\\s=]+)=\\s?(\".*?\"|'.*?')/g;function n(n){var r={type:\"tag\",name:\"\",voidElement:!1,attrs:{},children:[]},i=n.match(/<\\/?([^\\s]+?)[/\\s>]/);if(i&&(r.name=i[1],(e[i[1]]||\"/\"===n.charAt(n.length-2))&&(r.voidElement=!0),r.name.startsWith(\"!--\"))){var s=n.indexOf(\"--\\x3e\");return{type:\"comment\",comment:-1!==s?n.slice(4,s):\"\"}}for(var a=new RegExp(t),c=null;null!==(c=a.exec(n));)if(c[0].trim())if(c[1]){var o=c[1].trim(),l=[o,\"\"];o.indexOf(\"=\")>-1&&(l=o.split(\"=\")),r.attrs[l[0]]=l[1],a.lastIndex--}else c[2]&&(r.attrs[c[2]]=c[3].trim().substring(1,c[3].length-1));return r}var r=/<[a-zA-Z0-9\\-\\!\\/](?:\"[^\"]*\"|'[^']*'|[^'\">])*>/g,i=/^\\s*$/,s=Object.create(null);function a(e,t){switch(t.type){case\"text\":return e+t.content;case\"tag\":return e+=\"<\"+t.name+(t.attrs?function(e){var t=[];for(var n in e)t.push(n+'=\"'+e[n]+'\"');return t.length?\" \"+t.join(\" \"):\"\"}(t.attrs):\"\")+(t.voidElement?\"/>\":\">\"),t.voidElement?e:e+t.children.reduce(a,\"\")+\"</\"+t.name+\">\";case\"comment\":return e+\"\\x3c!--\"+t.comment+\"--\\x3e\"}}var c={parse:function(e,t){t||(t={}),t.components||(t.components=s);var a,c=[],o=[],l=-1,m=!1;if(0!==e.indexOf(\"<\")){var u=e.indexOf(\"<\");c.push({type:\"text\",content:-1===u?e:e.substring(0,u)})}return e.replace(r,function(r,s){if(m){if(r!==\"</\"+a.name+\">\")return;m=!1}var u,f=\"/\"!==r.charAt(1),h=r.startsWith(\"\\x3c!--\"),p=s+r.length,d=e.charAt(p);if(h){var v=n(r);return l<0?(c.push(v),c):((u=o[l]).children.push(v),c)}if(f&&(l++,\"tag\"===(a=n(r)).type&&t.components[a.name]&&(a.type=\"component\",m=!0),a.voidElement||m||!d||\"<\"===d||a.children.push({type:\"text\",content:e.slice(p,e.indexOf(\"<\",p))}),0===l&&c.push(a),(u=o[l-1])&&u.children.push(a),o[l]=a),(!f||a.voidElement)&&(l>-1&&(a.voidElement||a.name===r.slice(2,-1))&&(l--,a=-1===l?c:o[l]),!m&&\"<\"!==d&&d)){u=-1===l?c:o[l].children;var x=e.indexOf(\"<\",p),g=e.slice(p,-1===x?void 0:x);i.test(g)&&(g=\" \"),(x>-1&&l+u.length>=0||\" \"!==g)&&u.push({type:\"text\",content:g})}}),c},stringify:function(e){return e.reduce(function(e,t){return e+a(\"\",t)},\"\")}};export default c;\n//# sourceMappingURL=html-parse-stringify.module.js.map\n","/**\n * Copyright (C) 2017-present by Andrea Giammarchi - @WebReflection\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\nvar replace = ''.replace;\n\nvar ca = /[&<>'\"]/g;\nvar es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;\n\nvar esca = {\n '&': '&',\n '<': '<',\n '>': '>',\n \"'\": ''',\n '\"': '"'\n};\nvar unes = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"'\n};\n\nexport function escape(es) {\n return replace.call(es, ca, pe);\n};\n\nexport function unescape(un) {\n return replace.call(un, es, cape);\n};\n\nfunction pe(m) {\n return esca[m];\n}\n\nfunction cape(m) {\n return unes[m];\n}\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport React from 'react';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true\n};\nvar i18nInstance;\nexport var I18nContext = React.createContext();\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n\n this.usedNamespaces = {};\n }\n\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n\n return ReportNamespaces;\n}();\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","export function warn() {\n if (console && console.warn) {\n var _console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (typeof args[0] === 'string') args[0] = \"react-i18next:: \".concat(args[0]);\n\n (_console = console).warn.apply(_console, args);\n }\n}\nvar alreadyWarned = {};\nexport function warnOnce() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (typeof args[0] === 'string' && alreadyWarned[args[0]]) return;\n if (typeof args[0] === 'string') alreadyWarned[args[0]] = new Date();\n warn.apply(void 0, args);\n}\nexport function loadNamespaces(i18n, ns, cb) {\n i18n.loadNamespaces(ns, function () {\n if (i18n.isInitialized) {\n cb();\n } else {\n var initialized = function initialized() {\n setTimeout(function () {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n\n i18n.on('initialized', initialized);\n }\n });\n}\n\nfunction oldI18nextHasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var lng = i18n.languages[0];\n var fallbackLng = i18n.options ? i18n.options.fallbackLng : false;\n var lastLng = i18n.languages[i18n.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = i18n.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18n.services.backendConnector.backend && i18n.isLanguageChangingTo && !loadNotPending(i18n.isLanguageChangingTo, ns)) return false;\n if (i18n.hasResourceBundle(lng, ns)) return true;\n if (!i18n.services.backendConnector.backend || i18n.options.resources && !i18n.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n}\n\nexport function hasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce('i18n.languages were undefined or empty', i18n.languages);\n return true;\n }\n\n var isNewerI18next = i18n.options.ignoreJSONStructure !== undefined;\n\n if (!isNewerI18next) {\n return oldI18nextHasLoadedNamespace(ns, i18n, options);\n }\n\n return i18n.hasLoadedNamespace(ns, {\n precheck: function precheck(i18nInstance, loadNotPending) {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n}\nexport function getDisplayName(Component) {\n return Component.displayName || Component.name || (typeof Component === 'string' && Component.length > 0 ? Component : 'Unknown');\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nvar _excluded = [\"format\"],\n _excluded2 = [\"children\", \"count\", \"parent\", \"i18nKey\", \"context\", \"tOptions\", \"values\", \"defaults\", \"components\", \"ns\", \"i18n\", \"t\", \"shouldUnescape\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport React, { useContext } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { unescape } from 'html-escaper';\nimport { getI18n, I18nContext, getDefaults } from './context';\nimport { warn, warnOnce } from './utils';\n\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n var base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\n\nfunction getChildren(node) {\n if (!node) return [];\n return node && node.children ? node.children : node.props && node.props.children;\n}\n\nfunction hasValidReactChildren(children) {\n if (Object.prototype.toString.call(children) !== '[object Array]') return false;\n return children.every(function (child) {\n return React.isValidElement(child);\n });\n}\n\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\n\nfunction mergeProps(source, target) {\n var newTarget = _objectSpread({}, target);\n\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\n\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n var stringNode = '';\n var childrenArray = getAsArray(children);\n var keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach(function (child, childIndex) {\n if (typeof child === 'string') {\n stringNode += \"\".concat(child);\n } else if (React.isValidElement(child)) {\n var childPropsCount = Object.keys(child.props).length;\n var shouldKeepChild = keepArray.indexOf(child.type) > -1;\n var childChildren = child.props.children;\n\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += \"<\".concat(child.type, \"/>\");\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += \"<\".concat(childIndex, \"></\").concat(childIndex, \">\");\n } else if (child.props.i18nIsDynamicList) {\n stringNode += \"<\".concat(childIndex, \"></\").concat(childIndex, \">\");\n } else if (shouldKeepChild && childPropsCount === 1 && typeof childChildren === 'string') {\n stringNode += \"<\".concat(child.type, \">\").concat(childChildren, \"</\").concat(child.type, \">\");\n } else {\n var content = nodesToString(childChildren, i18nOptions);\n stringNode += \"<\".concat(childIndex, \">\").concat(content, \"</\").concat(childIndex, \">\");\n }\n } else if (child === null) {\n warn(\"Trans: the passed in value is invalid - seems you passed in a null child.\");\n } else if (_typeof(child) === 'object') {\n var format = child.format,\n clone = _objectWithoutProperties(child, _excluded);\n\n var keys = Object.keys(clone);\n\n if (keys.length === 1) {\n var value = format ? \"\".concat(keys[0], \", \").concat(format) : keys[0];\n stringNode += \"{{\".concat(value, \"}}\");\n } else {\n warn(\"react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.\", child);\n }\n } else {\n warn(\"Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.\", child);\n }\n });\n return stringNode;\n}\n\nfunction renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, shouldUnescape) {\n if (targetString === '') return [];\n var keepArray = i18nOptions.transKeepBasicHtmlNodesFor || [];\n var emptyChildrenButNeedsHandling = targetString && new RegExp(keepArray.join('|')).test(targetString);\n if (!children && !emptyChildrenButNeedsHandling) return [targetString];\n var data = {};\n\n function getData(childs) {\n var childrenArray = getAsArray(childs);\n childrenArray.forEach(function (child) {\n if (typeof child === 'string') return;\n if (hasChildren(child)) getData(getChildren(child));else if (_typeof(child) === 'object' && !React.isValidElement(child)) Object.assign(data, child);\n });\n }\n\n getData(children);\n var ast = HTML.parse(\"<0>\".concat(targetString, \"</0>\"));\n\n var opts = _objectSpread(_objectSpread({}, data), combinedTOpts);\n\n function renderInner(child, node, rootReactNode) {\n var childs = getChildren(child);\n var mappedChildren = mapAST(childs, node.children, rootReactNode);\n return hasValidReactChildren(childs) && mappedChildren.length === 0 ? childs : mappedChildren;\n }\n\n function pushTranslatedJSX(child, inner, mem, i, isVoid) {\n if (child.dummy) child.children = inner;\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), isVoid ? undefined : inner));\n }\n\n function mapAST(reactNode, astNode, rootReactNode) {\n var reactNodes = getAsArray(reactNode);\n var astNodes = getAsArray(astNode);\n return astNodes.reduce(function (mem, node, i) {\n var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n\n if (node.type === 'tag') {\n var tmp = reactNodes[parseInt(node.name, 10)];\n if (!tmp && rootReactNode.length === 1 && rootReactNode[0][node.name]) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n var child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n var isElement = React.isValidElement(child);\n var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && _typeof(child) === 'object' && child.dummy && !isElement;\n var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n\n if (typeof child === 'string') {\n var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n var inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n var _inner = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), _inner));\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n var _inner2 = renderInner(child, node, rootReactNode);\n\n pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(React.createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }));\n } else {\n var _inner3 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(React.createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _inner3));\n }\n } else if (node.voidElement) {\n mem.push(\"<\".concat(node.name, \" />\"));\n } else {\n var _inner4 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(\"<\".concat(node.name, \">\").concat(_inner4, \"</\").concat(node.name, \">\"));\n }\n } else if (_typeof(child) === 'object' && !isElement) {\n var content = node.children[0] ? translationContent : null;\n if (content) mem.push(content);\n } else if (node.children.length === 1 && translationContent) {\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), translationContent));\n } else {\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n })));\n }\n } else if (node.type === 'text') {\n var wrapTextNodes = i18nOptions.transWrapTextNodes;\n\n var _content = shouldUnescape ? unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n\n if (wrapTextNodes) {\n mem.push(React.createElement(wrapTextNodes, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _content));\n } else {\n mem.push(_content);\n }\n }\n\n return mem;\n }, []);\n }\n\n var result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\n\nexport function Trans(_ref) {\n var children = _ref.children,\n count = _ref.count,\n parent = _ref.parent,\n i18nKey = _ref.i18nKey,\n context = _ref.context,\n _ref$tOptions = _ref.tOptions,\n tOptions = _ref$tOptions === void 0 ? {} : _ref$tOptions,\n values = _ref.values,\n defaults = _ref.defaults,\n components = _ref.components,\n ns = _ref.ns,\n i18nFromProps = _ref.i18n,\n tFromProps = _ref.t,\n shouldUnescape = _ref.shouldUnescape,\n additionalProps = _objectWithoutProperties(_ref, _excluded2);\n\n var _ref2 = useContext(I18nContext) || {},\n i18nFromContext = _ref2.i18n,\n defaultNSFromContext = _ref2.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n\n var t = tFromProps || i18n.t.bind(i18n) || function (k) {\n return k;\n };\n\n if (context) tOptions.context = context;\n\n var reactI18nextOptions = _objectSpread(_objectSpread({}, getDefaults()), i18n.options && i18n.options.react);\n\n var namespaces = ns || t.ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n var defaultValue = defaults || nodesToString(children, reactI18nextOptions) || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n var hashTransKey = reactI18nextOptions.hashTransKey;\n var key = i18nKey || (hashTransKey ? hashTransKey(defaultValue) : defaultValue);\n var interpolationOverride = values ? tOptions.interpolation : {\n interpolation: _objectSpread(_objectSpread({}, tOptions.interpolation), {}, {\n prefix: '#$?',\n suffix: '?$#'\n })\n };\n\n var combinedTOpts = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, tOptions), {}, {\n count: count\n }, values), interpolationOverride), {}, {\n defaultValue: defaultValue,\n ns: namespaces\n });\n\n var translation = key ? t(key, combinedTOpts) : defaultValue;\n var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? React.createElement(useAsParent, additionalProps, content) : content;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils';\nexport function useTranslation(ns) {\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nFromProps = props.i18n;\n\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n,\n defaultNSFromContext = _ref.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n\n var notReadyT = function notReadyT(k) {\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n\n var retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n\n var i18nOptions = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), i18n.options.react), props);\n\n var useSuspense = i18nOptions.useSuspense,\n keyPrefix = i18nOptions.keyPrefix;\n var namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n var ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(function (n) {\n return hasLoadedNamespace(n, i18n, i18nOptions);\n });\n\n function getT() {\n return i18n.getFixedT(null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n\n var _useState = useState(getT),\n _useState2 = _slicedToArray(_useState, 2),\n t = _useState2[0],\n setT = _useState2[1];\n\n var isMounted = useRef(true);\n useEffect(function () {\n var bindI18n = i18nOptions.bindI18n,\n bindI18nStore = i18nOptions.bindI18nStore;\n isMounted.current = true;\n\n if (!ready && !useSuspense) {\n loadNamespaces(i18n, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n }\n\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return function () {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(function (e) {\n return i18n.off(e, boundReset);\n });\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(function (e) {\n return i18n.store.off(e, boundReset);\n });\n };\n }, [i18n, namespaces.join()]);\n var isInitial = useRef(true);\n useEffect(function () {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n\n isInitial.current = false;\n }, [i18n]);\n var ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(function (resolve) {\n loadNamespaces(i18n, namespaces, function () {\n resolve();\n });\n });\n}","import i18n from \"i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\nimport { initReactI18next } from \"react-i18next\";\nimport { en, fr } from \"translations\";\n\ni18n\n .use(LanguageDetector)\n .use(initReactI18next)\n .init({\n resources: {\n en: { translation: en },\n fr: { translation: fr },\n },\n fallbackLng: \"en\",\n detection: { order: [\"navigator\"] },\n });\n\nexport default i18n;\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export const BASE_URL = \"neeto_approvals\";\nexport const TEMPLATE_URL = `${BASE_URL}/templates`;\n\nexport const routes = {\n home: \"/\",\n approvals: \"/approvals/\",\n approvers: \"approvers\",\n pending: \"pending\",\n history: \"history\",\n templates: {\n index: \"templates\",\n new: \"templates/new\",\n edit: \"templates/:id/edit\",\n },\n public: \"approvals/public/request/:id\",\n};\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const URL_PARAMS = new URLSearchParams(window.location.search);\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_PAGE_SIZE = 8;\n\nexport const DEFAULT_FILTER_VALUES = {\n search: \"\",\n sortBy: \"\",\n sortDirection: \"\",\n};\n\nexport const SEARCH_DELAY = 750;\n\nexport const STATUSES = {\n approved: \"approved\",\n rejected: \"rejected\",\n pending: \"pending\",\n cancelled: \"cancelled\",\n};\n\nexport const STATUS_TAG_STYLE = {\n pending: \"primary\",\n approved: \"success\",\n rejected: \"danger\",\n cancelled: \"warning\",\n};\n\nexport const APPROVAL_REQUEST_FORM_INITIAL_VALUES = {\n message: \"\",\n variables: [],\n};\n\nexport const APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({\n variables: yup.array().of(\n yup.object().shape({\n variable: yup\n .string()\n .trim()\n .required(t(\"validations.required\", { what: t(\"common.field\") })),\n })\n ),\n});\n\nexport const STATUS_UPDATED_BY = {\n rejected: t(\"common.rejectedBy\"),\n approved: t(\"common.approvedBy\"),\n cancelled: t(\"common.cancelledBy\"),\n};\n","import { isEmpty } from \"ramda\";\n\nexport const hasPermission = (permissions = \"\") => {\n const type = typeof permissions;\n const userPermissions = window.globalProps?.permissions ?? [];\n\n if (Object.is(type, \"string\")) {\n return userPermissions.includes(permissions);\n } else if (Array.isArray(permissions)) {\n return permissions.some(permission => userPermissions.includes(permission));\n }\n\n return false;\n};\n\nexport const isOverflown = ({\n clientWidth,\n clientHeight,\n scrollWidth,\n scrollHeight,\n}) => scrollHeight > clientHeight || scrollWidth > clientWidth;\n\nexport const getScrollBarWidth = () => {\n const innerElement = document.createElement(\"p\");\n innerElement.classList.add(\"neeto-approvals-scrollbar__inner\");\n\n const outerElement = document.createElement(\"div\");\n outerElement.classList.add(\"neeto-approvals-scrollbar__outer\");\n\n outerElement.appendChild(innerElement);\n document.body.appendChild(outerElement);\n\n const w1 = innerElement.offsetWidth;\n outerElement.style.overflow = \"scroll\";\n let w2 = innerElement.offsetWidth;\n if (w1 === w2) w2 = outerElement.clientWidth;\n\n document.body.removeChild(outerElement);\n\n return w1 - w2;\n};\n\nexport const handleEmptyPage = (\n data,\n pageProperties,\n handleTablePagination\n) => {\n if (isEmpty(data) && pageProperties.index !== 1) {\n handleTablePagination(pageProperties.index - 1, pageProperties.size);\n }\n};\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = params => axios.get(`${BASE_URL}/approvers`, { params });\n\nconst create = payload => axios.post(`${BASE_URL}/approvers`, payload);\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/approvers/${id}`, { approver: payload });\n\nconst destroy = ({ approverId }) =>\n axios.delete(`${BASE_URL}/approvers/${approverId}`);\n\nconst approversApi = { create, fetch, update, destroy };\n\nexport default approversApi;\n","export const DEFAULT_STALE_TIME = 300_000; // 5 minutes\n\nexport const QUERY_KEYS = {\n APPROVERS: \"neeto-approvals-approvers\",\n TEMPLATES: \"neeto-approvals-templates\",\n REQUESTS: \"neeto-approvals-requests\",\n SHOW_TEMPLATE: \"neeto-approvals-show-template\",\n SHOW_PUBLIC_REQUEST: \"neeto-approvals-show-public-request\",\n VIEWS: \"neeto-approvals-views\",\n};\n","import approversApi from \"apis/approvers\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\nimport { useQuery, useMutation, useQueryClient } from \"react-query\";\n\nconst useFetchApprovers = (params = {}, options = {}) =>\n useQuery([QUERY_KEYS.APPROVERS, params], () => approversApi.fetch(params), {\n select: response => response.data || response,\n keepPreviousData: true,\n onSuccess: ({ approvers }) => params?.onSuccess?.(approvers),\n ...options,\n });\n\nconst useCreateApprover = options => {\n const queryClient = useQueryClient();\n\n return useMutation(approversApi.create, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.APPROVERS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess();\n },\n });\n};\n\nconst useUpdateApprover = options => {\n const queryClient = useQueryClient();\n\n return useMutation(approversApi.update, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.APPROVERS);\n options?.onSuccess();\n },\n });\n};\n\nconst useDeleteApprover = options => {\n const queryClient = useQueryClient();\n\n return useMutation(approversApi.destroy, {\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.APPROVERS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess();\n },\n });\n};\n\nexport {\n useCreateApprover,\n useFetchApprovers,\n useUpdateApprover,\n useDeleteApprover,\n};\n","import { useMemo } from \"react\";\n\nimport { useLocation } from \"react-router-dom\";\n\nconst useUrlSearchParams = () => {\n const { search } = useLocation();\n\n return useMemo(() => new URLSearchParams(search), [search]);\n};\n\nexport default useUrlSearchParams;\n","import { useCallback, useEffect, useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_PAGE_SIZE } from \"components/Approvals/constants\";\n\nimport useUrlSearchParams from \"./useUrlSearchParams\";\n\nconst usePaginate = () => {\n const urlParams = useUrlSearchParams();\n\n const [pageProperties, setPageProperties] = useState({\n index: Number(urlParams.get(\"page\")) || DEFAULT_PAGE_INDEX,\n size: Number(urlParams.get(\"size\")) || DEFAULT_PAGE_SIZE,\n });\n\n const history = useHistory();\n\n const handleTablePagination = useCallback(\n (index, size) => {\n urlParams.set(\"page\", index);\n urlParams.set(\"size\", size);\n history.push({ search: urlParams.toString() });\n setPageProperties({ index, size });\n },\n [urlParams, history]\n );\n\n useEffect(() => {\n const pageIndex = urlParams.get(\"page\") || DEFAULT_PAGE_INDEX;\n const pageSize = urlParams.get(\"size\") || DEFAULT_PAGE_SIZE;\n\n setPageProperties({\n index: Number(pageIndex),\n size: Number(pageSize),\n });\n }, [urlParams]);\n\n return { pageProperties, handleTablePagination };\n};\n\nexport default usePaginate;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst MAX_NAME_LENGTH = 40;\n\nexport const APPROVER_FORM_INITIAL_VALUES = {\n firstName: \"\",\n lastName: \"\",\n email: \"\",\n};\n\nexport const APPROVER_FORM_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .max(\n MAX_NAME_LENGTH,\n t(\"validations.limitExceeded\", {\n what: t(\"inputs.labels.firstName\")?.toLocaleLowerCase(),\n limit: MAX_NAME_LENGTH,\n })\n )\n .required(\n t(\"validations.required\", {\n what: t(\"inputs.labels.firstName\"),\n })\n ),\n lastName: yup\n .string()\n .trim()\n .max(\n MAX_NAME_LENGTH,\n t(\"validations.limitExceeded\", {\n what: t(\"inputs.labels.lastName\")?.toLocaleLowerCase(),\n limit: MAX_NAME_LENGTH,\n })\n )\n .required(t(\"validations.required\", { what: t(\"inputs.labels.lastName\") })),\n email: yup\n .string()\n .email()\n .required(t(\"validations.required\", { what: t(\"common.email\") })),\n});\n","import React, { useRef } from \"react\";\n\nimport { Pane, Button, Typography } from \"neetoui\";\nimport { Input, Form as FormikForm } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n APPROVER_FORM_INITIAL_VALUES,\n APPROVER_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\n\nconst Form = ({ isOpen, onClose, onSubmit, initialData = {}, isLoading }) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n return (\n <Pane initialFocusRef={inputReference} isOpen={isOpen} onClose={onClose}>\n <Pane.Header>\n <Typography style=\"h2\">\n {isEmpty(initialData)\n ? t(\"typography.newApprover\")\n : t(\"typography.editApprover\")}\n </Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n initialValues: initialData || APPROVER_FORM_INITIAL_VALUES,\n validationSchema: APPROVER_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n <Input\n className=\"w-full\"\n label={t(\"inputs.labels.firstName\")}\n name=\"firstName\"\n placeholder={t(\"inputs.placeholders.firstName\")}\n ref={inputReference}\n />\n <Input\n className=\"w-full\"\n label={t(\"inputs.labels.lastName\")}\n name=\"lastName\"\n placeholder={t(\"inputs.placeholders.lastName\")}\n />\n <Input\n className=\"w-full\"\n label={t(\"common.email\")}\n name=\"email\"\n placeholder={t(\"inputs.placeholders.email\")}\n />\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"buttons.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import React from \"react\";\n\nimport { useCreateApprover } from \"hooks/reactQuery/approvers/useApproversApi\";\n\nimport Form from \"./Form\";\n\nconst Create = ({\n isNewApproverPaneOpen,\n setIsNewApproverPaneOpen,\n pageProperties,\n handleTablePagination,\n totalCount,\n}) => {\n const { mutate: createApprover, isLoading } = useCreateApprover();\n\n const getLastPageNumber = () =>\n Math.ceil((totalCount + 1) / pageProperties.size);\n\n const onSubmit = approver =>\n createApprover(\n { approver },\n {\n onSuccess: () => {\n const lastPageNumber = getLastPageNumber();\n lastPageNumber !== pageProperties.index &&\n handleTablePagination(lastPageNumber, pageProperties.size);\n setIsNewApproverPaneOpen(false);\n },\n }\n );\n\n return (\n <Form\n isLoading={isLoading}\n isOpen={isNewApproverPaneOpen}\n onClose={() => setIsNewApproverPaneOpen(false)}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default React.memo(Create);\n","import React from \"react\";\n\nimport { useUpdateApprover } from \"hooks/reactQuery/approvers/useApproversApi\";\n\nimport Form from \"./Form\";\n\nconst Edit = ({ approver, setApproverToEdit }) => {\n const { mutate: updateApprover, isLoading } = useUpdateApprover();\n\n const onSubmit = ({ firstName, lastName, email }) =>\n updateApprover(\n {\n id: approver.id,\n payload: { firstName, lastName, email },\n },\n { onSuccess: () => setApproverToEdit(\"\") }\n );\n\n return (\n <Form\n initialData={approver}\n isLoading={isLoading}\n isOpen={!!approver}\n onClose={() => setApproverToEdit(\"\")}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default React.memo(Edit);\n","import React from \"react\";\n\nimport { MenuHorizontal } from \"@bigbinary/neeto-icons\";\nimport i18next from \"i18next\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"common.name\"),\n },\n {\n dataIndex: \"email\",\n key: \"email\",\n sorter: true,\n title: i18next.t(\"common.email\"),\n },\n {\n key: \"actions\",\n ellipsis: true,\n render: (_, approver) => (\n <div\n className=\"flex flex-row items-center justify-end space-x-3\"\n onClick={event => event.stopPropagation()}\n >\n <Dropdown\n autoWidth\n className=\"flex-shrink-0\"\n icon={MenuHorizontal}\n position=\"bottom-end\"\n strategy=\"fixed\"\n buttonProps={{\n style: \"text\",\n }}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"approvers-edit-button\"\n onClick={() => onEditClick(approver)}\n >\n {i18next.t(\"common.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"approvers-delete-button\"\n onClick={() => onDeleteClick(approver)}\n >\n {i18next.t(\"common.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n ),\n },\n];\n\nexport default columnData;\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","import React from \"react\";\n\nimport { Trans } from \"react-i18next\";\nimport { Link } from \"react-router-dom\";\n\nexport const renderNoDataHelpText = ({ entity, url }) => (\n <Trans\n i18nKey=\"common.noDataHelpText\"\n values={{ entity }}\n components={{\n a: (\n <Link\n className=\"neeto-ui-text-primary-600 underline\"\n target=\"_blank\"\n to={{ pathname: url }}\n />\n ),\n }}\n />\n);\n","import React from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport usePaginate from \"hooks/usePaginate\";\nimport { renderNoDataHelpText } from \"utils\";\n\nimport { DEFAULT_PAGE_SIZE } from \"./constants\";\n\nconst Table = ({\n entity,\n columnData,\n items,\n totalCount,\n filters,\n setFilters,\n setIsPaneOpen,\n helpDocUrl,\n onEditClick,\n onDeleteClick,\n ...otherProps\n}) => {\n const { pageProperties, handleTablePagination } = usePaginate();\n\n const { t } = useTranslation();\n\n const columns = columnData({ onEditClick, onDeleteClick });\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: sorter.field,\n sortDirection: sorter.order,\n });\n };\n\n const noDataProps = {\n primaryButtonProps: {\n label: t(\"common.add_\", {\n what: t(\"common.template\", SINGULAR)?.toLocaleLowerCase(),\n }),\n onClick: () => setIsPaneOpen(true),\n },\n helpText: renderNoDataHelpText({ entity, url: helpDocUrl }),\n };\n\n if (isEmpty(items)) {\n return (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"common.notFound_\", { what: entity })}\n {...(!filters.search && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <div className=\"neeto-approvals__table-wrapper\">\n <NeetoUITable\n fixedHeight\n columnData={columns}\n currentPageNumber={pageProperties.index}\n defaultPageSize={pageProperties.size}\n handlePageChange={(index, size) => handleTablePagination(index, size)}\n rowData={items}\n paginationProps={{\n hideOnSinglePage: items?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n {...{ totalCount, ...otherProps }}\n />\n </div>\n );\n};\n\nexport default Table;\n","import React, { useState } from \"react\";\n\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteApprover,\n useFetchApprovers,\n} from \"hooks/reactQuery/approvers/useApproversApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport columnData from \"./utils/columnData\";\n\nimport { SEARCH_DELAY } from \"../constants\";\nimport Table from \"../TableWithActions\";\n\nconst Approvers = ({\n filters,\n isNewApproverPaneOpen,\n setIsNewApproverPaneOpen,\n helpDocUrl,\n setFilters,\n}) => {\n const [approverToEdit, setApproverToEdit] = useState(\"\");\n const [approverToDelete, setApproverToDelete] = useState(\"\");\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n\n const { pageProperties, handleTablePagination } = usePaginate();\n\n const { t } = useTranslation();\n\n const {\n data: { approvers = [], totalCount = 0 } = {},\n isLoading: isApproverLoading,\n } = useFetchApprovers(\n { ...pageProperties, ...filters, search: debouncedSearch.trim() },\n {\n onSuccess: approvers => {\n handleEmptyPage(approvers, pageProperties, handleTablePagination);\n },\n }\n );\n\n const { mutate: deleteApprover, isLoading: isDeleting } = useDeleteApprover();\n\n const onEditClick = approver => {\n const name = approver.name.split(\" \");\n setApproverToEdit({\n ...approver,\n firstName: name[0],\n lastName: name[1],\n });\n };\n\n const onDeleteClick = approver => {\n setApproverToDelete(approver);\n };\n\n const entity = t(\"common.approver\", PLURAL)?.toLocaleLowerCase();\n\n const handleDelete = approverId => {\n deleteApprover({ approverId });\n setApproverToDelete(\"\");\n };\n\n return (\n <>\n {isApproverLoading ? (\n <PageLoader />\n ) : (\n <Table\n items={approvers}\n setIsPaneOpen={setIsNewApproverPaneOpen}\n {...{\n columnData,\n entity,\n filters,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n setFilters,\n totalCount,\n }}\n />\n )}\n <Create\n {...{\n handleTablePagination,\n isNewApproverPaneOpen,\n pageProperties,\n setIsNewApproverPaneOpen,\n totalCount,\n }}\n />\n <Edit approver={approverToEdit} {...{ setApproverToEdit }} />\n <Alert\n isOpen={!!approverToDelete}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"buttons.delete\")}\n message={\n <Trans\n i18nKey=\"alerts.deleting_\"\n values={{\n what: t(\"common.approver\", SINGULAR)?.toLocaleLowerCase(),\n name: approverToDelete?.name,\n }}\n />\n }\n title={t(\"common.delete_\", {\n what: t(\"common.approver\", SINGULAR)?.toLocaleLowerCase(),\n })}\n onClose={() => setApproverToDelete(\"\")}\n onSubmit={() => handleDelete(approverToDelete?.id)}\n />\n </>\n );\n};\n\nexport default Approvers;\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = (params, url) => axios.get(url, { params });\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/requests/${id}`, { request: payload });\n\nconst requestsApi = { fetch, update };\n\nexport default requestsApi;\n","import requestsApi from \"apis/requests\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\nimport { useMutation, useQuery, useQueryClient } from \"react-query\";\n\nconst useFetchRequests = (params = {}, options = {}, requestUrl) =>\n useQuery(\n [QUERY_KEYS.REQUESTS, params],\n () => requestsApi.fetch(params, requestUrl),\n {\n select: response => response.data || response,\n keepPreviousData: true,\n onSuccess: ({ requests }) => options.onSuccess?.(requests),\n ...options,\n }\n );\n\nconst useUpdateRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutation(requestsApi.update, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.REQUESTS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nexport { useFetchRequests, useUpdateRequest };\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { capitalize } from \"neetocommons/pure\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Button, Tag } from \"neetoui\";\n\nimport { STATUS_TAG_STYLE } from \"../constants\";\n\nexport const HISTORY_TABLE_COLUMNS = [\n {\n dataIndex: \"approvalLabel\",\n key: \"approvalLabel\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.id\"),\n render: (approvalLabel, { requestableUrl }) => {\n const url = new URL(requestableUrl || window.location.origin);\n\n return <Button label={approvalLabel} style=\"link\" to={url.pathname} />;\n },\n },\n {\n dataIndex: \"title\",\n key: \"title\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.title\"),\n },\n {\n dataIndex: \"status\",\n key: \"status\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.status\"),\n render: status => (\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n ),\n },\n {\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.created\"),\n render: createdAt => dateFormat.fromNow(createdAt),\n },\n];\n","import React, { useEffect, useState } from \"react\";\n\nimport { capitalize, noop } from \"neetocommons/pure\";\nimport { dateFormat, withEventTargetValue } from \"neetocommons/utils\";\nimport { EditorContent } from \"neetoeditor\";\nimport { Button, Label, Pane, Tag, Textarea, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { STATUSES, STATUS_TAG_STYLE, STATUS_UPDATED_BY } from \"./constants\";\n\nconst MemoizedEditorContent = React.memo(EditorContent);\n\nconst ApprovalsDetails = ({\n isOpen,\n onClose,\n approvalDetails,\n isPending = false,\n onSubmit = noop,\n isLoading = false,\n}) => {\n const { t } = useTranslation();\n const {\n title,\n status = \"\",\n message,\n createdAt,\n approverName,\n approverEmail,\n note: initialNote = \"\",\n requesterName,\n requesterEmail,\n } = approvalDetails;\n\n const [note, setNote] = useState(initialNote);\n\n useEffect(() => {\n setNote(initialNote);\n }, [initialNote]);\n\n const requesterOrApproverDetails =\n status === STATUSES.cancelled\n ? `${requesterName} (${requesterEmail})`\n : `${approverName} (${approverEmail})`;\n\n const isCurrentUserApprover =\n window.globalProps?.user?.email === approverEmail;\n\n const getStatusLabel = () => {\n if (isPending) {\n return t(\"common.waitingFor\");\n }\n\n return STATUS_UPDATED_BY[status];\n };\n\n const handleOnClose = () => {\n setNote(\"\");\n onClose();\n };\n\n const handleSubmit = status => {\n onSubmit({ status, note, approvedAt: new Date() });\n };\n\n return (\n <Pane {...{ isOpen }} size=\"large\" onClose={handleOnClose}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">{title}</Typography>\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <div className=\"w-full divide-y border px-3\">\n <div className=\"flex space-x-10 p-2\">\n <Label>{getStatusLabel()}</Label>\n <Typography style=\"body2\">{requesterOrApproverDetails}</Typography>\n </div>\n <div className=\"flex space-x-10 p-2\">\n <Label>{t(\"common.created\")}</Label>\n <Typography>{dateFormat.extended(createdAt)}</Typography>\n </div>\n </div>\n <div className=\"w-full space-y-2\">\n <Label>{t(\"inputs.labels.message\")}</Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 p-4\"\n content={message}\n />\n </div>\n {isPending && isCurrentUserApprover && (\n <Textarea\n className=\"w-full\"\n disabled={!isPending}\n label={t(\"common.note\")}\n value={note}\n placeholder={t(\"inputs.placeholders.add_\", {\n what: t(\"common.note\")?.toLocaleLowerCase(),\n })}\n onChange={withEventTargetValue(setNote)}\n />\n )}\n {!isPending && note && (\n <div className=\"w-full space-y-2\">\n <Label>{t(\"common.note\")}</Label>\n <div className=\"neeto-ui-bg-gray-100 p-4\">{note}</div>\n </div>\n )}\n </Pane.Body>\n {isPending && isCurrentUserApprover && (\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.approve\")}\n loading={isLoading}\n type=\"submit\"\n onClick={() => handleSubmit(STATUSES.approved)}\n />\n <Button\n label={t(\"buttons.decline\")}\n loading={isLoading}\n style=\"text\"\n onClick={() => handleSubmit(STATUSES.rejected)}\n />\n </Pane.Footer>\n )}\n </Pane>\n );\n};\n\nexport default ApprovalsDetails;\n","import { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { findBy, isPresent } from \"neetocommons/pure\";\n\nexport const updateApprovalDetails = ({ requestsData, approvalDetails }) => {\n if (isPresent(requestsData?.requests) && isPresent(approvalDetails)) {\n const request =\n findBy({ id: approvalDetails.id }, requestsData.requests) || {};\n\n return request;\n }\n\n return {};\n};\n\nexport const getApprovalFilter = () => ({\n PENDING: { label: t(\"common.pending\"), value: \"PENDING\" },\n TEMPLATES: { label: t(\"common.template\", PLURAL), value: \"TEMPLATES\" },\n HISTORY: { label: t(\"common.history\"), value: \"HISTORY\" },\n APPROVERS: { label: t(\"common.approver\", PLURAL), value: \"APPROVERS\" },\n});\n","import React, { useState } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { camelToSnakeCase, isPresent } from \"neetocommons/pure\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"./constants\";\n\nimport ApprovalsDetails from \"../ApprovalDetailsPane\";\nimport {\n DEFAULT_FILTER_VALUES,\n DEFAULT_PAGE_SIZE,\n SEARCH_DELAY,\n STATUSES,\n} from \"../constants\";\nimport { updateApprovalDetails } from \"../utils\";\n\nconst History = ({ requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n const { pageProperties, handleTablePagination } = usePaginate();\n const [approvalDetails, setApprovalDetails] = useState({});\n const { t } = useTranslation();\n\n const { data: { requests: approvalHistories = {}, totalCount = 0 } = {} } =\n useFetchRequests(\n {\n ...pageProperties,\n ...filters,\n search: debouncedSearch.trim(),\n status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled],\n },\n {\n onSuccess: requests => {\n handleEmptyPage(requests, pageProperties, handleTablePagination);\n setApprovalDetails(approvalDetails =>\n updateApprovalDetails({ requestsData: requests, approvalDetails })\n );\n },\n },\n requestUrl\n );\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field),\n sortDirection: sorter.order,\n });\n };\n\n return (\n <>\n {!isEmpty(approvalHistories) ? (\n <div className=\"neeto-approvals__table-wrapper\">\n <Table\n allowRowClick\n fixedHeight\n columnData={HISTORY_TABLE_COLUMNS}\n currentPageNumber={pageProperties.index}\n defaultPageSize={pageProperties.size}\n rowData={approvalHistories}\n {...{ totalCount }}\n handlePageChange={(index, size) =>\n handleTablePagination(index, size)\n }\n paginationProps={{\n hideOnSinglePage:\n approvalHistories?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </div>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"common.notFound_\", {\n what: t(\"common.record\", PLURAL)?.toLocaleLowerCase(),\n })}\n />\n </div>\n )}\n <ApprovalsDetails\n {...{ approvalDetails }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default History;\n","import { removeBy } from \"@bigbinary/neeto-commons-frontend/pure\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"../History/constants\";\n\nexport const PENDING_TABLE_COLUMNS = removeBy(\n { key: \"status\" },\n HISTORY_TABLE_COLUMNS\n);\n","import React, { useState } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { camelToSnakeCase, isPresent } from \"neetocommons/pure\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useFetchRequests,\n useUpdateRequest,\n} from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { PENDING_TABLE_COLUMNS } from \"./constants\";\n\nimport ApprovalsDetails from \"../ApprovalDetailsPane\";\nimport {\n DEFAULT_FILTER_VALUES,\n DEFAULT_PAGE_SIZE,\n SEARCH_DELAY,\n STATUSES,\n} from \"../constants\";\n\nconst PendingRequests = ({ requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [approvalDetails, setApprovalDetails] = useState({});\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n const { pageProperties, handleTablePagination } = usePaginate();\n const { t } = useTranslation();\n\n const { data: { requests: pendingRequests = {}, totalCount = 0 } = {} } =\n useFetchRequests(\n {\n ...pageProperties,\n ...filters,\n search: debouncedSearch.trim(),\n status: [STATUSES.pending],\n },\n {\n onSuccess: requests => {\n handleEmptyPage(requests, pageProperties, handleTablePagination);\n },\n },\n requestUrl\n );\n\n const { mutate: updatePendingRequest, isLoading } = useUpdateRequest();\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field),\n sortDirection: sorter.order,\n });\n };\n\n const onSubmit = payload =>\n updatePendingRequest(\n { id: approvalDetails.id, payload },\n { onSuccess: () => setApprovalDetails({}) }\n );\n\n return (\n <>\n {!isEmpty(pendingRequests) ? (\n <div className=\"neeto-approvals__table-wrapper\">\n <Table\n allowRowClick\n fixedHeight\n columnData={PENDING_TABLE_COLUMNS}\n currentPageNumber={pageProperties.index}\n defaultPageSize={pageProperties.size}\n rowData={pendingRequests}\n {...{ totalCount }}\n handlePageChange={(index, size) =>\n handleTablePagination(index, size)\n }\n paginationProps={{\n hideOnSinglePage: pendingRequests?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </div>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"common.notFound_\", {\n what: t(\"common.pendingApproval\", PLURAL)?.toLocaleLowerCase(),\n })}\n />\n </div>\n )}\n <ApprovalsDetails\n isPending\n {...{ approvalDetails, isLoading, onSubmit }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default PendingRequests;\n","import axios from \"axios\";\nimport { BASE_URL, TEMPLATE_URL } from \"common/routes\";\n\nconst fetch = params => axios.get(TEMPLATE_URL, { params });\n\nconst show = id => axios.get(`${TEMPLATE_URL}/${id}`);\n\nconst create = ({ url = TEMPLATE_URL, payload }) => axios.post(url, payload);\n\nconst update = ({ id, payload, url = BASE_URL }) =>\n axios.put(`${url}/${id}`, payload);\n\nconst destroy = ({ templateId }) =>\n axios.delete(`${TEMPLATE_URL}/${templateId}`);\n\nconst templatesApi = { create, fetch, update, destroy, show };\n\nexport default templatesApi;\n","import { useQuery, useMutation, useQueryClient } from \"react-query\";\n\nimport templatesApi from \"apis/templates\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchTemplates = (params = {}, options = {}) =>\n useQuery([QUERY_KEYS.TEMPLATES, params], () => templatesApi.fetch(params), {\n select: response => response.data || response,\n keepPreviousData: true,\n onSuccess: ({ templates }) => params?.onSuccess?.(templates),\n ...options,\n });\n\nconst useFetchTemplate = ({ templateId }) =>\n useQuery([QUERY_KEYS.SHOW_TEMPLATE, templateId], () =>\n templatesApi.show(templateId)\n );\n\nconst useCreateTemplate = options => {\n const queryClient = useQueryClient();\n\n return useMutation(templatesApi.create, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.TEMPLATES);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nconst useUpdateTemplate = options => {\n const queryClient = useQueryClient();\n\n return useMutation(templatesApi.update, {\n ...options,\n onSuccess: (_, { id }) => {\n queryClient.invalidateQueries(QUERY_KEYS.TEMPLATES);\n queryClient.invalidateQueries([QUERY_KEYS.SHOW_TEMPLATE, id]);\n options?.onSuccess?.();\n },\n });\n};\n\nconst useDeleteTemplate = options => {\n const queryClient = useQueryClient();\n\n return useMutation(templatesApi.destroy, {\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.TEMPLATES);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nexport {\n useCreateTemplate,\n useFetchTemplates,\n useUpdateTemplate,\n useDeleteTemplate,\n useFetchTemplate,\n};\n","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nconst VALID_VARIABLE_NAME_REGEX = /^[a-z](?:\\w*[a-z0-9])*$/i;\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n visibility: \"\",\n approver: \"\",\n variables: [],\n message: \"\",\n};\n\nexport const TEMPLATE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .trim()\n .required(t(\"validations.required\", { what: t(\"common.name\") })),\n approver: yup.object().required(t(\"validations.approver\")),\n message: yup\n .string()\n .test(\n \"message\",\n t(\"validations.required\", { what: t(\"inputs.labels.message\") }),\n content => !isEditorEmpty(content)\n ),\n variables: yup.array().of(\n yup.object().shape({\n variable: yup\n .string()\n .trim()\n .required(\n t(\"validations.pleaseEnter_\", {\n what: t(\"common.variable\")?.toLocaleLowerCase(),\n })\n )\n .matches(VALID_VARIABLE_NAME_REGEX, t(\"validations.variableName\")),\n })\n ),\n});\n\nexport const EVERYONE_VISIBILITY = {\n label: t(\"select.visibility.everyone\"),\n value: \"everyone\",\n};\n","import React from \"react\";\n\nimport { FieldArray, useFormikContext } from \"formik\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Delete } from \"neetoicons\";\nimport { Button, Label } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DynamicBlock = () => {\n const { t } = useTranslation();\n const {\n values: { variables = [] },\n } = useFormikContext();\n\n const editorVariables = variables.map(({ variable }, index) => {\n const variableValue = variable || `variable_${index + 1}`;\n\n return { key: variableValue, label: variableValue };\n });\n\n return (\n <>\n <div className=\"space-y-2 \">\n <Label>{t(\"inputs.labels.variableMapping\")}</Label>\n <FieldArray name=\"variables\">\n {({ remove, push }) => (\n <div className=\"neeto-ui-bg-gray-100 w-full p-3\">\n <div className=\"grid grid-cols-2 gap-4\">\n {variables?.map((_, index) => (\n <div className=\"mb-2 flex space-x-2\" key={index}>\n <Input\n autoFocus\n label={t(\"common.variable_\", { number: index + 1 })}\n name={`variables[${index}][variable]`}\n />\n <Button\n className=\"my-5\"\n icon={Delete}\n style=\"text\"\n onClick={() => remove(index)}\n />\n </div>\n ))}\n </div>\n <Button\n label={t(\"common.add_\", { what: t(\"common.variable\") })}\n style=\"link\"\n onClick={() => push({ variable: \"\" })}\n />\n </div>\n )}\n </FieldArray>\n </div>\n <FormikEditor\n key={variables}\n label={t(\"inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={editorVariables}\n placeholder={t(\"inputs.placeholders.enter_\", {\n what: t(\"inputs.labels.message\"),\n })}\n shouldUpdate={(nextProps, prevProps) =>\n nextProps.variables !== prevProps.variables\n }\n />\n </>\n );\n};\n\nexport default DynamicBlock;\n","import React, { useRef } from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { isPresent, noop } from \"neetocommons/pure\";\nimport { Button, Pane, Typography } from \"neetoui\";\nimport { Form as FormikForm, Input, Select, Textarea } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchApprovers } from \"hooks/reactQuery/approvers/useApproversApi\";\n\nimport {\n EVERYONE_VISIBILITY,\n TEMPLATE_FORM_INITIAL_VALUES,\n TEMPLATE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport DynamicBlock from \"./DynamicBlock\";\n\nconst Form = ({\n isOpen,\n onClose,\n initialData = {},\n onSubmit = noop,\n isLoading = false,\n visibilityOptions,\n}) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n const { data: { approvers = [] } = {} } = useFetchApprovers();\n\n const header = isEmpty(initialData)\n ? t(\"common.add_\", {\n what: t(\"common.approvalTemplate\", SINGULAR).toLocaleLowerCase(),\n })\n : t(\"common.edit_\", {\n what: t(\"common.approvalTemplate\", SINGULAR).toLocaleLowerCase(),\n });\n\n return (\n <Pane\n initialFocusRef={inputReference}\n size=\"large\"\n {...{ isOpen, onClose }}\n >\n <Pane.Header>\n <Typography style=\"h2\">{header}</Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n enableReinitialize: true,\n initialValues: isPresent(initialData)\n ? initialData\n : TEMPLATE_FORM_INITIAL_VALUES,\n validationSchema: TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <>\n <Pane.Body>\n <div className=\"flex w-full flex-col space-y-6\">\n <Input\n autoFocus\n className=\"w-1/2\"\n label={t(\"common.name\")}\n name=\"name\"\n placeholder={t(\"inputs.placeholders.name\")}\n />\n <Textarea\n className=\"w-full\"\n label={t(\"inputs.labels.description\")}\n name=\"description\"\n placeholder={t(\"inputs.placeholders.description\")}\n />\n <div className=\"flex space-x-6\">\n <Select\n label={t(\"inputs.labels.approver\")}\n name=\"approver\"\n options={approvers.map(approver => ({\n label: approver.name,\n value: approver.id,\n }))}\n placeholder={t(\"inputs.placeholders.select_\", {\n what: t(\"common.approver\", SINGULAR)?.toLocaleLowerCase(),\n })}\n />\n <Select\n label={t(\"common.visibility\")}\n name=\"visibility\"\n options={[...visibilityOptions, EVERYONE_VISIBILITY]}\n placeholder={t(\"inputs.placeholders.select_\", {\n what: t(\"common.visibility\")?.toLocaleLowerCase(),\n })}\n />\n </div>\n <DynamicBlock />\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"buttons.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import { fromPairs } from \"ramda\";\n\nimport { EVERYONE_VISIBILITY } from \"../constants\";\n\nexport const buildTemplatePayload = template => {\n const { variables, visibility, approver } = template;\n const indexedVariables = variables.map(({ variable }, index) => [\n `variable${index + 1}`,\n variable,\n ]);\n\n const payload = {\n template: {\n ...template,\n accessibleId: visibility.value || visibility,\n approverId: approver.value,\n variables: fromPairs(indexedVariables),\n },\n };\n\n return payload;\n};\n\nexport const generateInitialData = template => ({\n ...template,\n visibility: template.accessibleId || EVERYONE_VISIBILITY.value,\n approver: {\n label: template.approverName,\n value: template.approverId,\n },\n variables:\n template.variables &&\n Object.values(template.variables).map(variable => ({ variable })),\n});\n","import React from \"react\";\n\nimport { useCreateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\nimport { buildTemplatePayload } from \"./utils\";\n\nconst Create = ({ visibilityOptions, templateUrl, isOpen, onClose }) => {\n const { mutate: createTemplate, isLoading } = useCreateTemplate();\n\n const onSubmit = template => {\n const payload = buildTemplatePayload(template);\n createTemplate({ url: templateUrl, payload }, { onSuccess: onClose });\n };\n\n return (\n <Form {...{ isLoading, isOpen, onClose, onSubmit, visibilityOptions }} />\n );\n};\n\nexport default Create;\n","import React from \"react\";\n\nimport { useUpdateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\nimport { buildTemplatePayload, generateInitialData } from \"./utils\";\n\nconst Edit = ({\n visibilityOptions,\n templateUrl,\n template,\n setTemplate,\n isOpen,\n onClose,\n}) => {\n const { mutate: updateTemplate, isLoading: isUpdating } = useUpdateTemplate({\n onSuccess: () => setTemplate({}),\n });\n\n const onSubmit = template => {\n const payload = buildTemplatePayload(template);\n updateTemplate({ id: template.id, payload, url: templateUrl });\n };\n\n return (\n <Form\n initialData={generateInitialData(template)}\n isLoading={isUpdating}\n {...{ isOpen, onClose, onSubmit, visibilityOptions }}\n />\n );\n};\n\nexport default Edit;\n","import React from \"react\";\n\nimport { Label } from \"neetoui\";\n\nconst Field = ({ label, value }) => (\n <div className=\"flex flex-col items-start justify-center\">\n <Label className=\"mb-1 font-normal\">{label}</Label>\n <p className=\"neeto-ui-text-gray-800 break-words text-base font-medium\">\n {value}\n </p>\n </div>\n);\n\nexport default React.memo(Field);\n","import React from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { capitalize } from \"neetocommons/pure\";\nimport { EditorContent } from \"neetoeditor\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Field from \"./Field\";\n\nimport { EVERYONE_VISIBILITY } from \"../constants\";\n\nconst MemoizedEditorContent = React.memo(EditorContent);\n\nconst TemplateDetails = ({ isOpen, onClose, template }) => {\n const { t } = useTranslation();\n const { name, description, approverName, accessible, variables, message } =\n template;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">{t(\"common.templateDetails\")}</Typography>\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <Field label={t(\"common.name\")} value={name} />\n <Field label={t(\"inputs.labels.description\")} value={description} />\n <Field label={t(\"common.approver\", SINGULAR)} value={approverName} />\n <Field\n label={t(\"common.visibility\")}\n value={accessible?.label || EVERYONE_VISIBILITY.label}\n />\n {Object.entries(variables || {})?.map(([variable, value]) => (\n <Field key={value} label={capitalize(variable)} {...{ value }} />\n ))}\n <div className=\"flex w-full flex-col space-y-4\">\n <Label className=\"mb-1 font-normal\">\n {t(\"inputs.labels.message\")}\n </Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={message}\n />\n </div>\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default TemplateDetails;\n","import React from \"react\";\n\nimport i18next from \"i18next\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport { EVERYONE_VISIBILITY } from \"../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"common.name\"),\n },\n {\n dataIndex: \"visibility\",\n key: \"visibility\",\n title: i18next.t(\"common.visibility\"),\n render: (_, { accessible }) =>\n accessible?.label || EVERYONE_VISIBILITY.label,\n },\n {\n key: \"actions\",\n ellipsis: true,\n render: (_, template) => (\n <div\n className=\"flex flex-row items-center justify-end space-x-3\"\n onClick={event => event.stopPropagation()}\n >\n <Dropdown\n autoWidth\n buttonProps={{ style: \"text\" }}\n className=\"flex-shrink-0\"\n icon={MenuHorizontal}\n position=\"bottom-end\"\n strategy=\"fixed\"\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"approvers-edit-button\"\n onClick={() => onEditClick(template)}\n >\n {i18next.t(\"common.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"approvers-delete-button\"\n onClick={() => onDeleteClick(template)}\n >\n {i18next.t(\"common.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n ),\n },\n];\n\nexport default columnData;\n","import React, { useEffect, useState } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n} from \"hooks/reactQuery/templates/useTemplatesApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport TemplateDetails from \"./Show\";\nimport columnData from \"./utils/columnData\";\n\nimport { SEARCH_DELAY } from \"../constants\";\nimport Table from \"../TableWithActions\";\n\nconst Templates = ({\n filters,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewTemplatePaneOpen,\n helpDocUrl,\n ...otherProps\n}) => {\n const [selectedTemplate, setSelectedTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isEditPaneOpen, setIsEditPaneOpen] = useState(false);\n const [isShowPaneOpen, setIsShowPaneOpen] = useState(false);\n\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n\n const { pageProperties, handleTablePagination } = usePaginate();\n\n const { t } = useTranslation();\n\n const {\n data: { templates = [], totalCount = 0 } = {},\n isLoading: isTemplateLoading,\n } = useFetchTemplates(\n { ...pageProperties, ...filters, search: debouncedSearch.trim() },\n {\n onSuccess: templates => {\n handleEmptyPage(templates, pageProperties, handleTablePagination);\n },\n }\n );\n\n const { mutate: deleteTemplate, isLoading: isDeleting } = useDeleteTemplate();\n\n useEffect(() => {\n if (isEmpty(selectedTemplate)) {\n setIsDeleteAlertOpen(false);\n setIsEditPaneOpen(false);\n setIsShowPaneOpen(false);\n }\n }, [selectedTemplate]);\n\n const onEditClick = template => {\n setSelectedTemplate(template);\n setIsEditPaneOpen(true);\n };\n\n const onRowClick = (_, templateDetails) => {\n setSelectedTemplate(templateDetails);\n setIsShowPaneOpen(true);\n };\n\n const onDeleteClick = template => {\n setSelectedTemplate(template);\n setIsDeleteAlertOpen(true);\n };\n\n const handleDelete = templateId => {\n deleteTemplate({ templateId });\n setSelectedTemplate({});\n };\n\n const entity = t(\"common.template\", PLURAL)?.toLocaleLowerCase();\n\n return (\n <>\n {isTemplateLoading ? (\n <PageLoader />\n ) : (\n <Table\n items={templates}\n setIsPaneOpen={setIsNewTemplatePaneOpen}\n {...{\n columnData,\n entity,\n filters,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n onRowClick,\n setFilters,\n totalCount,\n }}\n />\n )}\n <Create\n isOpen={isNewTemplatePaneOpen}\n onClose={() => setIsNewTemplatePaneOpen(false)}\n {...otherProps}\n />\n <Edit\n isOpen={isEditPaneOpen}\n setTemplate={setSelectedTemplate}\n template={selectedTemplate}\n {...otherProps}\n onClose={() => setIsEditPaneOpen(false)}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"buttons.delete\")}\n message={\n <Trans\n i18nKey=\"alerts.deleting_\"\n values={{\n what: t(\"common.template\", SINGULAR)?.toLocaleLowerCase(),\n name: selectedTemplate?.name,\n }}\n />\n }\n title={t(\"common.delete_\", {\n what: t(\"common.template\", SINGULAR)?.toLocaleLowerCase(),\n })}\n onClose={() => setSelectedTemplate({})}\n onSubmit={() => handleDelete(selectedTemplate?.id)}\n />\n <TemplateDetails\n isOpen={isShowPaneOpen}\n template={selectedTemplate}\n onClose={() => setSelectedTemplate({})}\n />\n </>\n );\n};\n\nexport default Templates;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport { routes } from \"common/routes\";\n\nimport Approvers from \"./Approvers\";\nimport History from \"./History\";\nimport PendingRequests from \"./PendingRequests\";\nimport Templates from \"./Templates\";\n\nexport const createRoutes = ({\n config,\n filters,\n isNewApproverPaneOpen,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewApproverPaneOpen,\n setIsNewTemplatePaneOpen,\n}) => [\n {\n component: () => (\n <Approvers\n {...{\n filters,\n isNewApproverPaneOpen,\n setFilters,\n setIsNewApproverPaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.approvers}`,\n actionBlock: () => (\n <Button\n label={t(\"common.add_\", {\n what: t(\"common.approver\", SINGULAR).toLocaleLowerCase(),\n })}\n onClick={() => setIsNewApproverPaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"inputs.placeholders.search_\", {\n what: t(\"common.approver\", PLURAL).toLocaleLowerCase(),\n }),\n },\n {\n component: () => (\n <Templates\n {...{\n filters,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewTemplatePaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.templates.index}`,\n actionBlock: () => (\n <Button\n label={t(\"common.add_\", {\n what: t(\"common.approvalTemplate\", SINGULAR).toLocaleLowerCase(),\n })}\n onClick={() => setIsNewTemplatePaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"inputs.placeholders.search_\", {\n what: t(\"common.template\", PLURAL).toLocaleLowerCase(),\n }),\n },\n {\n component: () => <PendingRequests {...config} />,\n path: `${config.approvalsPath}${routes.pending}`,\n },\n {\n component: () => <History {...config} />,\n path: `${config.approvalsPath}${routes.history}`,\n },\n];\n","import React from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { findBy } from \"neetocommons/pure\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst Header = ({ appRoutes, breadcrumbs, filters, setFilters }) => {\n const { t } = useTranslation();\n\n const { pathname } = useLocation();\n\n const currentTab = findBy({ path: pathname }, appRoutes);\n\n return (\n <NeetoHeader\n actionBlock={currentTab?.actionBlock?.()}\n title={t(\"common.approval\", PLURAL)}\n searchProps={\n currentTab?.searchPlaceholder && {\n onChange: event => setFilters(assoc(\"search\", event.target.value)),\n value: filters.search,\n placeholder: currentTab?.searchPlaceholder,\n }\n }\n {...{ breadcrumbs }}\n />\n );\n};\n\nexport default Header;\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = () => axios.get(`${BASE_URL}/views`);\n\nconst viewsApi = { fetch };\n\nexport default viewsApi;\n","import viewsApi from \"apis/views\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\nimport { useQuery } from \"react-query\";\n\nconst useFetchViews = (options = {}) =>\n useQuery([QUERY_KEYS.VIEWS], () => viewsApi.fetch(), {\n select: response => response.data || response,\n ...options,\n });\n\nexport { useFetchViews };\n","import React from \"react\";\n\nimport { Tab as NeetoUITab } from \"neetoui\";\nimport { keys } from \"ramda\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\nimport { useFetchViews } from \"hooks/reactQuery/views/useViewsApi\";\n\nimport { getApprovalFilter } from \"./utils\";\n\nconst Tab = ({ approvalsPath }) => {\n const { pathname } = useLocation();\n\n const history = useHistory();\n\n const approvalFilter = getApprovalFilter();\n const approvalFilterKeys = keys(approvalFilter);\n const category = pathname.split(routes.approvals)[1]?.toLocaleUpperCase();\n\n const isActive = filter => category.includes(filter);\n\n const getRoute = filter => `${approvalsPath}${filter.toLowerCase()}`;\n\n const { data: { views = {} } = {} } = useFetchViews();\n\n return (\n <NeetoUITab>\n {approvalFilterKeys.map(filter => (\n <NeetoUITab.Item\n active={isActive(filter)}\n count={views[filter?.toLocaleLowerCase()]}\n key={filter}\n label={approvalFilter[filter].label}\n onClick={() => history.push(getRoute(filter))}\n >\n {approvalFilter[filter].label} (\n {views[filter?.toLocaleLowerCase()] || 0})\n </NeetoUITab.Item>\n ))}\n </NeetoUITab>\n );\n};\n\nexport default Tab;\n","import React, { useState } from \"react\";\n\nimport Container from \"neetomolecules/Container\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\n\nimport { DEFAULT_FILTER_VALUES } from \"./constants\";\nimport { createRoutes } from \"./createRoutes\";\nimport Header from \"./Header\";\nimport Tabs from \"./Tab\";\n\nconst Approvals = ({ config }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [isNewTemplatePaneOpen, setIsNewTemplatePaneOpen] = useState(false);\n const [isNewApproverPaneOpen, setIsNewApproverPaneOpen] = useState(false);\n\n const appRoutes = createRoutes({\n config,\n filters,\n isNewApproverPaneOpen,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewApproverPaneOpen,\n setIsNewTemplatePaneOpen,\n });\n\n return (\n <div className=\"neeto-approvals\">\n <Container>\n <Header {...{ appRoutes, filters, setFilters, ...config }} />\n <Tabs approvalsPath={config.approvalsPath} />\n <Switch>\n {appRoutes.map(({ path, component }) => (\n <Route exact {...{ component, path }} key={path} />\n ))}\n <Redirect\n exact\n from={config.approvalsPath}\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n to={`${config.approvalsPath}${routes.pending}`}\n />\n </Switch>\n </Container>\n </div>\n );\n};\n\nexport default Approvals;\n","import React, { useState } from \"react\";\n\nimport { FieldArray } from \"formik\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { findById, isPresent } from \"neetocommons/pure\";\nimport { EditorContent, substituteVariables } from \"neetoeditor\";\nimport { Pane, Button, Typography, Select, Label } from \"neetoui\";\nimport { Form as FormikForm, Input } from \"neetoui/formik\";\nimport { modify } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTemplates } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport {\n APPROVAL_REQUEST_FORM_INITIAL_VALUES,\n APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\n\nconst Form = ({ isOpen, setIsPaneOpen, onSubmit, isLoading }) => {\n const [selectedTemplateData, setSelectedTemplateData] = useState({});\n const { t } = useTranslation();\n const variables = Object.values(selectedTemplateData?.variables || {});\n\n const { data: { templates = [] } = {} } = useFetchTemplates();\n\n const templateOptions = templates.map(template => ({\n label: template.name,\n value: template.id,\n }));\n\n const handleTemplateChange = (selectedTemplate, setFieldValue, resetForm) => {\n resetForm();\n const template = findById(selectedTemplate.value, templates);\n setSelectedTemplateData(template);\n setFieldValue(\"message\", template.message);\n const variables = Object.values(template.variables);\n if (isPresent(variables)) {\n variables.forEach((_, index) =>\n setFieldValue(`variables[${index}].variable`, \"\")\n );\n } else {\n setFieldValue(\"variables\", []);\n }\n };\n\n const onClose = () => {\n setIsPaneOpen(false);\n setSelectedTemplateData({});\n };\n\n const parseVariables = variableValues =>\n variables.map((variable, index) => ({\n key: variable,\n value: variableValues[index]?.[\"variable\"],\n }));\n\n const handleSubmit = values => {\n const parsedVariables = parseVariables(values.variables);\n\n const parsedMessage = {\n message: modify(\n \"message\",\n message => substituteVariables(message, parsedVariables),\n values\n ).message,\n };\n\n onSubmit(parsedMessage, selectedTemplateData, onClose);\n };\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"common.add_\", {\n what: t(\"common.approval\", SINGULAR)?.toLocaleLowerCase(),\n })}\n </Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n onSubmit: handleSubmit,\n initialValues: APPROVAL_REQUEST_FORM_INITIAL_VALUES,\n validationSchema: APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA,\n }}\n >\n {({ setFieldValue, values, resetForm }) => (\n <>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n <Select\n label={t(\"select.approval\")}\n options={templateOptions}\n onChange={selectedTemplate =>\n handleTemplateChange(\n selectedTemplate,\n setFieldValue,\n resetForm\n )\n }\n />\n {isPresent(variables) && (\n <div className=\"space-y-2\">\n <Label>{t(\"inputs.labels.variableMapping\")}</Label>\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 neeto-ui-rounded-lg space-y-4 border p-3\">\n <FieldArray name=\"variables\">\n {() =>\n variables.map((variable, index) => (\n <Input\n className=\"w-full\"\n key={variable}\n label={variable}\n name={`variables[${index}][variable]`}\n />\n ))\n }\n </FieldArray>\n </div>\n </div>\n )}\n {selectedTemplateData?.message && (\n <div className=\"space-y-2\">\n <Label>{t(\"inputs.labels.message\")}</Label>\n <EditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={selectedTemplateData?.message}\n name=\"message\"\n variables={parseVariables(values?.variables)}\n />\n </div>\n )}\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"buttons.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </>\n )}\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst show = id => axios.get(`${BASE_URL}/public/requests/${id}`);\n\nconst accept = ({ id, note }) =>\n axios.patch(`${BASE_URL}/public/requests/${id}/accept`, { note });\n\nconst decline = ({ id, note }) =>\n axios.patch(`${BASE_URL}/public/requests/${id}/decline`, { note });\n\nconst publicRequestsApi = { show, accept, decline };\n\nexport default publicRequestsApi;\n","import publicRequestsApi from \"apis/public/requests\";\nimport { DEFAULT_STALE_TIME, QUERY_KEYS } from \"common/queryConstants\";\nimport { useMutation, useQuery, useQueryClient } from \"react-query\";\n\nconst useFetchPublicRequest = ({ requestId }, options) =>\n useQuery(\n [QUERY_KEYS.SHOW_PUBLIC_REQUEST, requestId],\n () => publicRequestsApi.show(requestId),\n {\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n }\n );\n\nconst useAcceptPendingRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutation(publicRequestsApi.accept, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.SHOW_PUBLIC_REQUEST);\n queryClient.invalidateQueries(QUERY_KEYS.REQUESTS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nconst useDeclinePendingRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutation(publicRequestsApi.decline, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.SHOW_PUBLIC_REQUEST);\n queryClient.invalidateQueries(QUERY_KEYS.REQUESTS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nexport {\n useFetchPublicRequest,\n useAcceptPendingRequest,\n useDeclinePendingRequest,\n};\n","import { PLURAL } from \"neetocommons/constants\";\nimport Header from \"neetomolecules/Header\";\nimport Container from \"neetomolecules/Container\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { EditorContent } from \"neetoeditor\";\n\nimport { Button, Callout, Textarea, Typography } from \"neetoui\";\n\nimport {\n useFetchPublicRequest,\n useAcceptPendingRequest,\n useDeclinePendingRequest,\n} from \"hooks/reactQuery/public/requests/useApprovalRequest\";\nimport React, { useState } from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport { STATUSES } from \"../constants\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { isEmpty } from \"ramda\";\nimport { withEventTargetValue } from \"neetocommons/utils\";\n\nconst Public = () => {\n const [note, setNote] = useState(\"\");\n\n const { id } = useParams();\n const { t } = useTranslation();\n\n const { data: { approvalRequest = {} } = {}, isLoading } =\n useFetchPublicRequest(\n { requestId: id },\n {\n onSuccess: ({ approvalRequest: { note } }) => {\n note && setNote(note);\n },\n }\n );\n\n const { mutate: acceptPendingRequest, isLoading: isAccepting } =\n useAcceptPendingRequest();\n const { mutate: declinePendingRequest, isLoading: isDeclining } =\n useDeclinePendingRequest();\n\n const calloutStyle =\n approvalRequest.status === STATUSES.approved ? \"success\" : \"danger\";\n const hideTextArea =\n approvalRequest.status !== STATUSES.pending && isEmpty(note);\n\n if (isLoading) {\n return (\n <div className=\"h-screen items-center justify-center\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <Container>\n <Header title={t(\"common.approval\", PLURAL)} />\n <div className=\"flex h-screen w-full flex-col items-center\">\n <div className=\"neeto-ui-shadow-s w-2/5 rounded border p-6\">\n {approvalRequest ? (\n <div className=\"flex w-full flex-col space-y-6\">\n <Typography style=\"h2\">{approvalRequest.title}</Typography>\n <EditorContent content={approvalRequest.message} />\n {!hideTextArea && (\n <Textarea\n label={t(\"common.note\")}\n placeholder={t(\"inputs.placeholders.add_\", {\n what: t(\"common.note\")?.toLocaleLowerCase(),\n })}\n value={note}\n disabled={approvalRequest.status !== STATUSES.pending}\n onChange={withEventTargetValue(setNote)}\n />\n )}\n {approvalRequest.status === STATUSES.pending ? (\n <div className=\"mx-auto mt-8 flex space-x-6\">\n <Button\n label={t(\"buttons.approve\")}\n onClick={() =>\n acceptPendingRequest({\n id: approvalRequest.id,\n note,\n })\n }\n loading={isAccepting}\n />\n <Button\n label={t(\"buttons.decline\")}\n onClick={() =>\n declinePendingRequest({\n id: approvalRequest.id,\n note,\n })\n }\n style=\"secondary\"\n loading={isDeclining}\n />\n </div>\n ) : (\n <Callout style={calloutStyle}>\n <Typography style=\"body1\">\n <Trans\n i18nKey=\"typography.approvalRequest\"\n values={{\n status: approvalRequest.status,\n }}\n />\n </Typography>\n </Callout>\n )}\n </div>\n ) : (\n <Typography style=\"h4\" className=\"text-center\">\n {t(\"common.notFound\")}\n </Typography>\n )}\n </div>\n </div>\n </Container>\n );\n};\n\nexport default Public;\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n"],"names":["_typeof","_classCallCheck","_toPrimitive","_toPropertyKey","toPrimitive","_defineProperties","toPropertyKey","_createClass","setPrototypeOf","assertThisInitialized","_defineProperty","_arrayWithHoles","_iterableToArray","_arrayLikeToArray","_unsupportedIterableToArray","arrayLikeToArray","_nonIterableRest","arrayWithHoles","iterableToArray","unsupportedIterableToArray","nonIterableRest","ownKeys$6","_objectSpread$6","ownKeys$5","_objectSpread$5","ownKeys$4","_objectSpread$4","ownKeys$3","_objectSpread$3","ownKeys$2","_objectSpread$2","ownKeys$1","_objectSpread$1","ownKeys","_objectSpread","t","getDefaults","_objectWithoutPropertiesLoose","_objectWithoutProperties","objectWithoutPropertiesLoose","n","e","React","_excluded","HTML","useContext","_iterableToArrayLimit","_slicedToArray","iterableToArrayLimit","useState","useRef","useEffect","i18n","use","LanguageDetector","initReactI18next","init","resources","en","translation","fr","fallbackLng","detection","order","BASE_URL","TEMPLATE_URL","concat","routes","home","approvals","approvers","pending","history","templates","index","edit","URLSearchParams","window","location","search","DEFAULT_PAGE_SIZE","DEFAULT_FILTER_VALUES","sortBy","sortDirection","SEARCH_DELAY","STATUSES","approved","rejected","cancelled","STATUS_TAG_STYLE","APPROVAL_REQUEST_FORM_INITIAL_VALUES","message","variables","APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA","yup","object","shape","array","of","variable","string","trim","required","what","STATUS_UPDATED_BY","handleEmptyPage","data","pageProperties","handleTablePagination","isEmpty","size","fetch","params","axios","get","create","payload","post","update","_ref","id","put","approver","destroy","_ref2","approverId","approversApi","DEFAULT_STALE_TIME","QUERY_KEYS","APPROVERS","TEMPLATES","REQUESTS","SHOW_TEMPLATE","SHOW_PUBLIC_REQUEST","VIEWS","useFetchApprovers","arguments","length","undefined","options","useQuery","select","response","keepPreviousData","onSuccess","_params$onSuccess","call","useCreateApprover","queryClient","useQueryClient","useMutation","invalidateQueries","useUpdateApprover","useDeleteApprover","useUrlSearchParams","_useLocation","useLocation","useMemo","usePaginate","urlParams","_useState","Number","DEFAULT_PAGE_INDEX","_useState2","setPageProperties","useHistory","useCallback","set","push","toString","pageIndex","pageSize","MAX_NAME_LENGTH","APPROVER_FORM_INITIAL_VALUES","firstName","lastName","email","APPROVER_FORM_VALIDATION_SCHEMA","max","_t","toLocaleLowerCase","limit","_t2","Form","isOpen","onClose","onSubmit","_ref$initialData","initialData","isLoading","inputReference","_useTranslation","useTranslation","createElement","Pane","initialFocusRef","Header","Typography","style","FormikForm","formikProps","initialValues","validationSchema","Fragment","Body","className","Input","label","name","placeholder","ref","Footer","Button","loading","type","onClick","Create","isNewApproverPaneOpen","setIsNewApproverPaneOpen","totalCount","_useCreateApprover","createApprover","mutate","getLastPageNumber","Math","ceil","lastPageNumber","memo","Edit","setApproverToEdit","_useUpdateApprover","updateApprover","Menu","Dropdown","MenuItem","columnData","onEditClick","onDeleteClick","dataIndex","key","sorter","title","i18next","ellipsis","render","_","event","stopPropagation","autoWidth","icon","MenuHorizontal","position","strategy","buttonProps","renderNoDataHelpText","entity","url","Trans","i18nKey","values","components","a","Link","target","to","pathname","Table","items","filters","setFilters","setIsPaneOpen","helpDocUrl","otherProps","_usePaginate","columns","handleTableChange","__","field","noDataProps","primaryButtonProps","SINGULAR","helpText","NoData","_extends","NeetoUITable","fixedHeight","currentPageNumber","defaultPageSize","handlePageChange","rowData","paginationProps","hideOnSinglePage","onChange","Approvers","_t3","approverToEdit","_useState3","_useState4","approverToDelete","setApproverToDelete","debouncedSearch","useDebounce","_useFetchApprovers","_useFetchApprovers$da","_useFetchApprovers$da2","_useFetchApprovers$da3","_useFetchApprovers$da4","isApproverLoading","_useDeleteApprover","deleteApprover","isDeleting","split","PLURAL","handleDelete","PageLoader","Alert","isSubmitting","submitButtonLabel","request","requestsApi","useFetchRequests","requestUrl","_options$onSuccess","requests","useUpdateRequest","_options$onSuccess2","HISTORY_TABLE_COLUMNS","width","approvalLabel","requestableUrl","URL","origin","status","Tag","capitalize","createdAt","dateFormat","fromNow","MemoizedEditorContent","EditorContent","ApprovalsDetails","_window$globalProps","_window$globalProps$u","approvalDetails","_ref$isPending","isPending","_ref$onSubmit","noop","_ref$isLoading","_approvalDetails$stat","approverName","approverEmail","_approvalDetails$note","note","initialNote","requesterName","requesterEmail","setNote","requesterOrApproverDetails","isCurrentUserApprover","globalProps","user","getStatusLabel","handleOnClose","handleSubmit","approvedAt","Date","Label","extended","content","Textarea","disabled","value","withEventTargetValue","updateApprovalDetails","requestsData","isPresent","findBy","getApprovalFilter","PENDING","HISTORY","History","setApprovalDetails","_useFetchRequests","_useFetchRequests$dat","_useFetchRequests$dat2","_useFetchRequests$dat3","approvalHistories","_useFetchRequests$dat4","camelToSnakeCase","allowRowClick","onRowClick","PENDING_TABLE_COLUMNS","removeBy","PendingRequests","pendingRequests","_useUpdateRequest","updatePendingRequest","show","_ref$url","_ref2$url","_ref3","templateId","templatesApi","useFetchTemplates","useCreateTemplate","useUpdateTemplate","useDeleteTemplate","_options$onSuccess3","arrayWithoutHoles","nonIterableSpread","VALID_VARIABLE_NAME_REGEX","TEMPLATE_FORM_INITIAL_VALUES","description","visibility","TEMPLATE_FORM_VALIDATION_SCHEMA","test","isEditorEmpty","matches","EVERYONE_VISIBILITY","DynamicBlock","_useFormikContext","useFormikContext","_useFormikContext$val","editorVariables","map","variableValue","FieldArray","remove","autoFocus","number","Delete","FormikEditor","rows","shouldUpdate","nextProps","prevProps","visibilityOptions","header","enableReinitialize","Select","_toConsumableArray","buildTemplatePayload","template","indexedVariables","accessibleId","fromPairs","generateInitialData","Object","templateUrl","_useCreateTemplate","createTemplate","setTemplate","_useUpdateTemplate","updateTemplate","isUpdating","Field","TemplateDetails","_Object$entries","accessible","entries","Templates","isNewTemplatePaneOpen","setIsNewTemplatePaneOpen","selectedTemplate","setSelectedTemplate","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","isEditPaneOpen","setIsEditPaneOpen","_useState7","_useState8","isShowPaneOpen","setIsShowPaneOpen","_useFetchTemplates","_useFetchTemplates$da","_useFetchTemplates$da2","_useFetchTemplates$da3","_useFetchTemplates$da4","isTemplateLoading","_useDeleteTemplate","deleteTemplate","templateDetails","createRoutes","config","component","path","approvalsPath","actionBlock","searchPlaceholder","_currentTab$actionBlo","appRoutes","breadcrumbs","currentTab","NeetoHeader","searchProps","assoc","viewsApi","useFetchViews","Tab","_pathname$split$","approvalFilter","approvalFilterKeys","keys","category","toLocaleUpperCase","isActive","filter","includes","getRoute","toLowerCase","_useFetchViews","_useFetchViews$data","_useFetchViews$data2","_useFetchViews$data2$","views","NeetoUITab","Item","active","count","Approvals","Container","Tabs","Switch","Route","exact","Redirect","from","selectedTemplateData","setSelectedTemplateData","templateOptions","handleTemplateChange","setFieldValue","resetForm","findById","forEach","parseVariables","variableValues","_variableValues$index","parsedVariables","parsedMessage","modify","substituteVariables","accept","patch","decline","publicRequestsApi","useFetchPublicRequest","requestId","staleTime","useAcceptPendingRequest","useDeclinePendingRequest","Public","_useParams","useParams","_useFetchPublicReques","approvalRequest","_useFetchPublicReques2","_useFetchPublicReques3","_useFetchPublicReques4","_useAcceptPendingRequ","acceptPendingRequest","isAccepting","_useDeclinePendingReq","declinePendingRequest","isDeclining","calloutStyle","hideTextArea","Callout"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/i18next/dist/esm/i18next.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/void-elements/index.js","../node_modules/html-parse-stringify/dist/html-parse-stringify.module.js","../node_modules/html-escaper/esm/index.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/react-i18next/dist/es/context.js","../node_modules/react-i18next/dist/es/utils.js","../node_modules/react-i18next/dist/es/Trans.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/react-i18next/dist/es/useTranslation.js","../src/common/i18n.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/common/routes.js","../src/components/Approvals/constants.js","../src/common/utils.js","../src/apis/approvers.js","../src/common/queryConstants.js","../src/hooks/reactQuery/approvers/useApproversApi.js","../src/hooks/useUrlSearchParams.js","../src/hooks/usePaginate.js","../src/components/Approvals/Approvers/constants.js","../src/components/Approvals/Approvers/Form.jsx","../src/components/Approvals/Approvers/Create.jsx","../src/components/Approvals/Approvers/Edit.jsx","../src/components/Approvals/Approvers/utils/columnData.jsx","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../src/utils.jsx","../src/components/Approvals/TableWithActions.jsx","../src/components/Approvals/Approvers/index.jsx","../src/apis/requests.js","../src/hooks/reactQuery/requests/useRequestsApi.js","../src/components/Approvals/utils.js","../src/components/Approvals/History/constants.jsx","../src/components/Approvals/ApprovalDetailsPane.jsx","../src/components/Approvals/History/index.jsx","../src/components/Approvals/PendingRequests/constants.js","../src/components/Approvals/PendingRequests/index.jsx","../src/apis/templates.js","../src/hooks/reactQuery/templates/useTemplatesApi.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../src/components/Approvals/Templates/constants.js","../src/components/Approvals/Templates/DynamicBlock.jsx","../src/components/Approvals/Templates/Form.jsx","../src/components/Approvals/Templates/utils/index.js","../src/components/Approvals/Templates/Create.jsx","../src/components/Approvals/Templates/Edit.jsx","../src/components/Approvals/Templates/Show/Field.jsx","../src/components/Approvals/Templates/Show/index.jsx","../src/components/Approvals/Templates/utils/columnData.jsx","../src/components/Approvals/Templates/index.jsx","../src/components/Approvals/createRoutes.jsx","../src/components/Approvals/Header.jsx","../src/apis/views.js","../src/hooks/reactQuery/views/useViewsApi.js","../src/components/Approvals/Tab.jsx","../src/components/Approvals/index.jsx","../src/components/Approvals/CreateRequestForm.jsx","../src/apis/public/requests.js","../src/hooks/reactQuery/public/requests/useApprovalRequest.js","../src/components/Approvals/Public/index.jsx","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js"],"sourcesContent":["export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Logger);\n this.init(concreteLogger, options);\n }\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread$6(_objectSpread$6({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }, {\n key: \"clone\",\n value: function clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n }]);\n return Logger;\n}();\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n this.observers = {};\n }\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\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 key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n 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\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n return matched;\n}\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n current = current[paths[i]];\n }\n return current;\n}\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n var _super = _createSuper$3(ResourceStore);\n function ResourceStore(data) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n _classCallCheck(this, ResourceStore);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n return _this;\n }\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$5(_objectSpread$5({}, pack), resources);\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$5(_objectSpread$5({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n var _super = _createSuper$2(Translator);\n function Translator(services) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Translator);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n if (key === undefined || key === null) {\n return false;\n }\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (_typeof(options) === 'object') options = _objectSpread$4({}, options);\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n var namespace = namespaces[namespaces.length - 1];\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 if (returnDetails) {\n return {\n res: \"\".concat(namespace).concat(nsSeparator).concat(key),\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n if (returnDetails) {\n return {\n res: key,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return key;\n }\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$4(_objectSpread$4({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n return r;\n }\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$4(_objectSpread$4({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$4(_objectSpread$4({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n 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 var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$4(_objectSpread$4({}, options), {\n interpolation: _objectSpread$4(_objectSpread$4({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (!options.lng && this.options.compatibilityAPI !== 'v1' && resolved && resolved.res) options.lng = resolved.usedLng;\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n return null;\n }\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$4({\n i18nResolved: resolved\n }, options) : options, this);\n }\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n 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 var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n var possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n }]);\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n return p.join('-');\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n var cleanedLng = _this.formatLanguageCode(code);\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n var lngOnly = _this.getLanguagePartFromCode(code);\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng === lngOnly) return supportedLng;\n if (supportedLng.indexOf('-') < 0 && lngOnly.indexOf('-') < 0) return;\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n 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 fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\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}\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, PluralResolver);\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n this.rules = createRules();\n }\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (!rule) {\n return [];\n }\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n return this.getSuffixRetroCompatible(rule, count);\n }\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\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 var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction deepFindWithDefaults(data, defaultData, key) {\n var keySeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '.';\n var ignoreJSONStructure = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var path = getPathWithDefaults(data, defaultData, key);\n if (!path && ignoreJSONStructure && typeof key === 'string') {\n path = deepFind(data, key, keySeparator);\n if (path === undefined) path = deepFind(defaultData, key, keySeparator);\n }\n return path;\n}\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Interpolator);\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n this.init(options);\n }\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = deepFindWithDefaults(data, defaultData, key, _this.options.keySeparator, _this.options.ignoreJSONStructure);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: key\n })) : path;\n }\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(deepFindWithDefaults(data, defaultData, k, _this.options.keySeparator, _this.options.ignoreJSONStructure), f, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: k\n }));\n };\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && Object.prototype.hasOwnProperty.call(options, matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n replaces++;\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n var clonedOptions;\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n var matchedSingleQuotes = optionsString.match(/'/g);\n var matchedDoubleQuotes = optionsString.match(/\"/g);\n if (matchedSingleQuotes && matchedSingleQuotes.length % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n delete clonedOptions.defaultValue;\n return key;\n }\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n clonedOptions = _objectSpread$3({}, options);\n clonedOptions = clonedOptions.replace && typeof clonedOptions.replace !== 'string' ? clonedOptions.replace : clonedOptions;\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n var doReduce = false;\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n }]);\n return Interpolator;\n}();\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\nfunction createCachedFormatter(fn) {\n var cache = {};\n return function invokeFormatter(val, lng, options) {\n var key = lng + JSON.stringify(options);\n var formatter = cache[key];\n if (!formatter) {\n formatter = fn(lng, options);\n cache[key] = formatter;\n }\n return formatter(val);\n };\n}\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Formatter);\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n currency: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2(_objectSpread$2({}, opt), {}, {\n style: 'currency'\n }));\n return function (val) {\n return formatter.format(val);\n };\n }),\n datetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.DateTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n relativetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.RelativeTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val, opt.range || 'day');\n };\n }),\n list: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.ListFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n })\n };\n this.init(options);\n }\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"addCached\",\n value: function addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng) {\n var _this = this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var formats = _format.split(this.formatSeparator);\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n if (_this.formats[formatName]) {\n var formatted = mem;\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$2(_objectSpread$2(_objectSpread$2({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n return mem;\n }, value);\n return result;\n }\n }]);\n return Formatter;\n}();\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n var _super = _createSuper$1(Connector);\n function Connector(backend, store, services) {\n var _this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n _classCallCheck(this, Connector);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n _this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n _this.state = {};\n _this.queue = [];\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n if (loadedKeys.length) {\n loadedKeys.forEach(function (n) {\n if (loaded[l][n] === undefined) loaded[l][n] = true;\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n this.readingCalls++;\n var resolver = function resolver(err, data) {\n _this3.readingCalls--;\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n if (err && data && tried < _this3.maxRetries) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n };\n var fc = this.backend[fcName].bind(this.backend);\n if (fc.length === 2) {\n try {\n var r = fc(lng, ns);\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return resolver(null, data);\n })[\"catch\"](resolver);\n } else {\n resolver(null, r);\n }\n } catch (err) {\n resolver(err);\n }\n return;\n }\n return fc(lng, ns, resolver);\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\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 if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n var clb = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : function () {};\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend && this.backend.create) {\n var opts = _objectSpread$1(_objectSpread$1({}, options), {}, {\n isUpdate: isUpdate\n });\n var fc = this.backend.create.bind(this.backend);\n if (fc.length < 6) {\n try {\n var r;\n if (fc.length === 5) {\n r = fc(languages, namespace, key, fallbackValue, opts);\n } else {\n r = fc(languages, namespace, key, fallbackValue);\n }\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return clb(null, data);\n })[\"catch\"](clb);\n } else {\n clb(null, r);\n }\n } catch (err) {\n clb(err);\n }\n } else {\n fc(languages, namespace, key, fallbackValue, clb, opts);\n }\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n 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, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n return options;\n}\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction noop() {}\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n var _super = _createSuper(I18n);\n function I18n() {\n var _this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n _classCallCheck(this, I18n);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!options.defaultNS && options.defaultNS !== false && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n var defOpts = get();\n this.options = _objectSpread(_objectSpread(_objectSpread({}, defOpts), this.options), transformOptions(options));\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread(_objectSpread({}, defOpts.interpolation), this.options.interpolation);\n }\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n var formatter;\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n if (s.languageDetector.init) s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n return _this2;\n };\n });\n var deferred = defer();\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\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 if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n _this4.setResolvedLanguage(l);\n };\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n _this4.translator.changeLanguage(l);\n _this4.isLanguageChangingTo = undefined;\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\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 var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector && _this4.services.languageDetector.cacheUserLanguage) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n _this4.loadResources(l, function (err) {\n done(err, l);\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 if (this.services.languageDetector.detect.length === 0) {\n this.services.languageDetector.detect().then(setLng);\n } else {\n this.services.languageDetector.detect(setLng);\n }\n } else {\n setLng(lng);\n }\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n var fixedT = function fixedT(key, opts) {\n var options;\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey;\n if (options.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(function (k) {\n return \"\".concat(options.keyPrefix).concat(keySeparator).concat(k);\n });\n } else {\n resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n }\n return _this5.t(resultKey, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n var lng = options.lng || this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n var deferred = defer();\n if (!this.options.ns) {\n if (callback) callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n var languageUtils = this.services && this.services.languageUtils || new LanguageUtil(get());\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var mergedOptions = _objectSpread(_objectSpread(_objectSpread({}, this.options), options), {\n isClone: true\n });\n var clone = new I18n(mergedOptions);\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n return I18n;\n}(EventEmitter);\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar dir = instance.dir;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport { changeLanguage, createInstance, instance as default, dir, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\n\nvar arr = [];\nvar each = arr.forEach;\nvar slice = arr.slice;\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\n// eslint-disable-next-line no-control-regex\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\nvar serializeCookie = function serializeCookie(name, val, options) {\n var opt = options || {};\n opt.path = opt.path || '/';\n var value = encodeURIComponent(val);\n var str = \"\".concat(name, \"=\").concat(value);\n if (opt.maxAge > 0) {\n var maxAge = opt.maxAge - 0;\n if (Number.isNaN(maxAge)) throw new Error('maxAge should be a Number');\n str += \"; Max-Age=\".concat(Math.floor(maxAge));\n }\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n str += \"; Domain=\".concat(opt.domain);\n }\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n str += \"; Path=\".concat(opt.path);\n }\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n str += \"; Expires=\".concat(opt.expires.toUTCString());\n }\n if (opt.httpOnly) str += '; HttpOnly';\n if (opt.secure) str += '; Secure';\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string' ? opt.sameSite.toLowerCase() : opt.sameSite;\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n return str;\n};\nvar cookie = {\n create: function create(name, value, minutes, domain) {\n var cookieOptions = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n path: '/',\n sameSite: 'strict'\n };\n if (minutes) {\n cookieOptions.expires = new Date();\n cookieOptions.expires.setTime(cookieOptions.expires.getTime() + minutes * 60 * 1000);\n }\n if (domain) cookieOptions.domain = domain;\n document.cookie = serializeCookie(name, encodeURIComponent(value), cookieOptions);\n },\n read: function read(name) {\n var nameEQ = \"\".concat(name, \"=\");\n var ca = document.cookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) === ' ') {\n c = c.substring(1, c.length);\n }\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\n }\n return null;\n },\n remove: function remove(name) {\n this.create(name, '', -1);\n }\n};\nvar cookie$1 = {\n name: 'cookie',\n lookup: function lookup(options) {\n var found;\n if (options.lookupCookie && typeof document !== 'undefined') {\n var c = cookie.read(options.lookupCookie);\n if (c) found = c;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupCookie && typeof document !== 'undefined') {\n cookie.create(options.lookupCookie, lng, options.cookieMinutes, options.cookieDomain, options.cookieOptions);\n }\n }\n};\n\nvar querystring = {\n name: 'querystring',\n lookup: function lookup(options) {\n var found;\n if (typeof window !== 'undefined') {\n var search = window.location.search;\n if (!window.location.search && window.location.hash && window.location.hash.indexOf('?') > -1) {\n search = window.location.hash.substring(window.location.hash.indexOf('?'));\n }\n var query = search.substring(1);\n var params = query.split('&');\n for (var i = 0; i < params.length; i++) {\n var pos = params[i].indexOf('=');\n if (pos > 0) {\n var key = params[i].substring(0, pos);\n if (key === options.lookupQuerystring) {\n found = params[i].substring(pos + 1);\n }\n }\n }\n }\n return found;\n }\n};\n\nvar hasLocalStorageSupport = null;\nvar localStorageAvailable = function localStorageAvailable() {\n if (hasLocalStorageSupport !== null) return hasLocalStorageSupport;\n try {\n hasLocalStorageSupport = window !== 'undefined' && window.localStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.localStorage.setItem(testKey, 'foo');\n window.localStorage.removeItem(testKey);\n } catch (e) {\n hasLocalStorageSupport = false;\n }\n return hasLocalStorageSupport;\n};\nvar localStorage = {\n name: 'localStorage',\n lookup: function lookup(options) {\n var found;\n if (options.lookupLocalStorage && localStorageAvailable()) {\n var lng = window.localStorage.getItem(options.lookupLocalStorage);\n if (lng) found = lng;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupLocalStorage && localStorageAvailable()) {\n window.localStorage.setItem(options.lookupLocalStorage, lng);\n }\n }\n};\n\nvar hasSessionStorageSupport = null;\nvar sessionStorageAvailable = function sessionStorageAvailable() {\n if (hasSessionStorageSupport !== null) return hasSessionStorageSupport;\n try {\n hasSessionStorageSupport = window !== 'undefined' && window.sessionStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.sessionStorage.setItem(testKey, 'foo');\n window.sessionStorage.removeItem(testKey);\n } catch (e) {\n hasSessionStorageSupport = false;\n }\n return hasSessionStorageSupport;\n};\nvar sessionStorage = {\n name: 'sessionStorage',\n lookup: function lookup(options) {\n var found;\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n var lng = window.sessionStorage.getItem(options.lookupSessionStorage);\n if (lng) found = lng;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n window.sessionStorage.setItem(options.lookupSessionStorage, lng);\n }\n }\n};\n\nvar navigator$1 = {\n name: 'navigator',\n lookup: function lookup(options) {\n var found = [];\n if (typeof navigator !== 'undefined') {\n if (navigator.languages) {\n // chrome only; not an array, so can't use .push.apply instead of iterating\n for (var i = 0; i < navigator.languages.length; i++) {\n found.push(navigator.languages[i]);\n }\n }\n if (navigator.userLanguage) {\n found.push(navigator.userLanguage);\n }\n if (navigator.language) {\n found.push(navigator.language);\n }\n }\n return found.length > 0 ? found : undefined;\n }\n};\n\nvar htmlTag = {\n name: 'htmlTag',\n lookup: function lookup(options) {\n var found;\n var htmlTag = options.htmlTag || (typeof document !== 'undefined' ? document.documentElement : null);\n if (htmlTag && typeof htmlTag.getAttribute === 'function') {\n found = htmlTag.getAttribute('lang');\n }\n return found;\n }\n};\n\nvar path = {\n name: 'path',\n lookup: function lookup(options) {\n var found;\n if (typeof window !== 'undefined') {\n var language = window.location.pathname.match(/\\/([a-zA-Z-]*)/g);\n if (language instanceof Array) {\n if (typeof options.lookupFromPathIndex === 'number') {\n if (typeof language[options.lookupFromPathIndex] !== 'string') {\n return undefined;\n }\n found = language[options.lookupFromPathIndex].replace('/', '');\n } else {\n found = language[0].replace('/', '');\n }\n }\n }\n return found;\n }\n};\n\nvar subdomain = {\n name: 'subdomain',\n lookup: function lookup(options) {\n // If given get the subdomain index else 1\n var lookupFromSubdomainIndex = typeof options.lookupFromSubdomainIndex === 'number' ? options.lookupFromSubdomainIndex + 1 : 1;\n // get all matches if window.location. is existing\n // first item of match is the match itself and the second is the first group macht which sould be the first subdomain match\n // is the hostname no public domain get the or option of localhost\n var language = typeof window !== 'undefined' && window.location && window.location.hostname && window.location.hostname.match(/^(\\w{2,5})\\.(([a-z0-9-]{1,63}\\.[a-z]{2,6})|localhost)/i);\n\n // if there is no match (null) return undefined\n if (!language) return undefined;\n // return the given group match\n return language[lookupFromSubdomainIndex];\n }\n};\n\nfunction getDefaults() {\n return {\n order: ['querystring', 'cookie', 'localStorage', 'sessionStorage', 'navigator', 'htmlTag'],\n lookupQuerystring: 'lng',\n lookupCookie: 'i18next',\n lookupLocalStorage: 'i18nextLng',\n lookupSessionStorage: 'i18nextLng',\n // cache user language\n caches: ['localStorage'],\n excludeCacheFor: ['cimode']\n // cookieMinutes: 10,\n // cookieDomain: 'myDomain'\n };\n}\nvar Browser = /*#__PURE__*/function () {\n function Browser(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Browser);\n this.type = 'languageDetector';\n this.detectors = {};\n this.init(services, options);\n }\n _createClass(Browser, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n this.services = services;\n this.options = defaults(options, this.options || {}, getDefaults());\n\n // backwards compatibility\n if (this.options.lookupFromUrlIndex) this.options.lookupFromPathIndex = this.options.lookupFromUrlIndex;\n this.i18nOptions = i18nOptions;\n this.addDetector(cookie$1);\n this.addDetector(querystring);\n this.addDetector(localStorage);\n this.addDetector(sessionStorage);\n this.addDetector(navigator$1);\n this.addDetector(htmlTag);\n this.addDetector(path);\n this.addDetector(subdomain);\n }\n }, {\n key: \"addDetector\",\n value: function addDetector(detector) {\n this.detectors[detector.name] = detector;\n }\n }, {\n key: \"detect\",\n value: function detect(detectionOrder) {\n var _this = this;\n if (!detectionOrder) detectionOrder = this.options.order;\n var detected = [];\n detectionOrder.forEach(function (detectorName) {\n if (_this.detectors[detectorName]) {\n var lookup = _this.detectors[detectorName].lookup(_this.options);\n if (lookup && typeof lookup === 'string') lookup = [lookup];\n if (lookup) detected = detected.concat(lookup);\n }\n });\n if (this.services.languageUtils.getBestMatchFromCodes) return detected; // new i18next v19.5.0\n return detected.length > 0 ? detected[0] : null; // a little backward compatibility\n }\n }, {\n key: \"cacheUserLanguage\",\n value: function cacheUserLanguage(lng, caches) {\n var _this2 = this;\n if (!caches) caches = this.options.caches;\n if (!caches) return;\n if (this.options.excludeCacheFor && this.options.excludeCacheFor.indexOf(lng) > -1) return;\n caches.forEach(function (cacheName) {\n if (_this2.detectors[cacheName]) _this2.detectors[cacheName].cacheUserLanguage(lng, _this2.options);\n });\n }\n }]);\n return Browser;\n}();\nBrowser.type = 'languageDetector';\n\nexport { Browser as default };\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","/**\n * This file automatically generated from `pre-publish.js`.\n * Do not manually edit.\n */\n\nmodule.exports = {\n \"area\": true,\n \"base\": true,\n \"br\": true,\n \"col\": true,\n \"embed\": true,\n \"hr\": true,\n \"img\": true,\n \"input\": true,\n \"link\": true,\n \"meta\": true,\n \"param\": true,\n \"source\": true,\n \"track\": true,\n \"wbr\": true\n};\n","import e from\"void-elements\";var t=/\\s([^'\"/\\s><]+?)[\\s/>]|([^\\s=]+)=\\s?(\".*?\"|'.*?')/g;function n(n){var r={type:\"tag\",name:\"\",voidElement:!1,attrs:{},children:[]},i=n.match(/<\\/?([^\\s]+?)[/\\s>]/);if(i&&(r.name=i[1],(e[i[1]]||\"/\"===n.charAt(n.length-2))&&(r.voidElement=!0),r.name.startsWith(\"!--\"))){var s=n.indexOf(\"--\\x3e\");return{type:\"comment\",comment:-1!==s?n.slice(4,s):\"\"}}for(var a=new RegExp(t),c=null;null!==(c=a.exec(n));)if(c[0].trim())if(c[1]){var o=c[1].trim(),l=[o,\"\"];o.indexOf(\"=\")>-1&&(l=o.split(\"=\")),r.attrs[l[0]]=l[1],a.lastIndex--}else c[2]&&(r.attrs[c[2]]=c[3].trim().substring(1,c[3].length-1));return r}var r=/<[a-zA-Z0-9\\-\\!\\/](?:\"[^\"]*\"|'[^']*'|[^'\">])*>/g,i=/^\\s*$/,s=Object.create(null);function a(e,t){switch(t.type){case\"text\":return e+t.content;case\"tag\":return e+=\"<\"+t.name+(t.attrs?function(e){var t=[];for(var n in e)t.push(n+'=\"'+e[n]+'\"');return t.length?\" \"+t.join(\" \"):\"\"}(t.attrs):\"\")+(t.voidElement?\"/>\":\">\"),t.voidElement?e:e+t.children.reduce(a,\"\")+\"</\"+t.name+\">\";case\"comment\":return e+\"\\x3c!--\"+t.comment+\"--\\x3e\"}}var c={parse:function(e,t){t||(t={}),t.components||(t.components=s);var a,c=[],o=[],l=-1,m=!1;if(0!==e.indexOf(\"<\")){var u=e.indexOf(\"<\");c.push({type:\"text\",content:-1===u?e:e.substring(0,u)})}return e.replace(r,function(r,s){if(m){if(r!==\"</\"+a.name+\">\")return;m=!1}var u,f=\"/\"!==r.charAt(1),h=r.startsWith(\"\\x3c!--\"),p=s+r.length,d=e.charAt(p);if(h){var v=n(r);return l<0?(c.push(v),c):((u=o[l]).children.push(v),c)}if(f&&(l++,\"tag\"===(a=n(r)).type&&t.components[a.name]&&(a.type=\"component\",m=!0),a.voidElement||m||!d||\"<\"===d||a.children.push({type:\"text\",content:e.slice(p,e.indexOf(\"<\",p))}),0===l&&c.push(a),(u=o[l-1])&&u.children.push(a),o[l]=a),(!f||a.voidElement)&&(l>-1&&(a.voidElement||a.name===r.slice(2,-1))&&(l--,a=-1===l?c:o[l]),!m&&\"<\"!==d&&d)){u=-1===l?c:o[l].children;var x=e.indexOf(\"<\",p),g=e.slice(p,-1===x?void 0:x);i.test(g)&&(g=\" \"),(x>-1&&l+u.length>=0||\" \"!==g)&&u.push({type:\"text\",content:g})}}),c},stringify:function(e){return e.reduce(function(e,t){return e+a(\"\",t)},\"\")}};export default c;\n//# sourceMappingURL=html-parse-stringify.module.js.map\n","/**\n * Copyright (C) 2017-present by Andrea Giammarchi - @WebReflection\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\nvar replace = ''.replace;\n\nvar ca = /[&<>'\"]/g;\nvar es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;\n\nvar esca = {\n '&': '&',\n '<': '<',\n '>': '>',\n \"'\": ''',\n '\"': '"'\n};\nvar unes = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"'\n};\n\nexport function escape(es) {\n return replace.call(es, ca, pe);\n};\n\nexport function unescape(un) {\n return replace.call(un, es, cape);\n};\n\nfunction pe(m) {\n return esca[m];\n}\n\nfunction cape(m) {\n return unes[m];\n}\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport React from 'react';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true\n};\nvar i18nInstance;\nexport var I18nContext = React.createContext();\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n\n this.usedNamespaces = {};\n }\n\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n\n return ReportNamespaces;\n}();\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","export function warn() {\n if (console && console.warn) {\n var _console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (typeof args[0] === 'string') args[0] = \"react-i18next:: \".concat(args[0]);\n\n (_console = console).warn.apply(_console, args);\n }\n}\nvar alreadyWarned = {};\nexport function warnOnce() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (typeof args[0] === 'string' && alreadyWarned[args[0]]) return;\n if (typeof args[0] === 'string') alreadyWarned[args[0]] = new Date();\n warn.apply(void 0, args);\n}\nexport function loadNamespaces(i18n, ns, cb) {\n i18n.loadNamespaces(ns, function () {\n if (i18n.isInitialized) {\n cb();\n } else {\n var initialized = function initialized() {\n setTimeout(function () {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n\n i18n.on('initialized', initialized);\n }\n });\n}\n\nfunction oldI18nextHasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var lng = i18n.languages[0];\n var fallbackLng = i18n.options ? i18n.options.fallbackLng : false;\n var lastLng = i18n.languages[i18n.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = i18n.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18n.services.backendConnector.backend && i18n.isLanguageChangingTo && !loadNotPending(i18n.isLanguageChangingTo, ns)) return false;\n if (i18n.hasResourceBundle(lng, ns)) return true;\n if (!i18n.services.backendConnector.backend || i18n.options.resources && !i18n.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n}\n\nexport function hasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce('i18n.languages were undefined or empty', i18n.languages);\n return true;\n }\n\n var isNewerI18next = i18n.options.ignoreJSONStructure !== undefined;\n\n if (!isNewerI18next) {\n return oldI18nextHasLoadedNamespace(ns, i18n, options);\n }\n\n return i18n.hasLoadedNamespace(ns, {\n precheck: function precheck(i18nInstance, loadNotPending) {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n}\nexport function getDisplayName(Component) {\n return Component.displayName || Component.name || (typeof Component === 'string' && Component.length > 0 ? Component : 'Unknown');\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nvar _excluded = [\"format\"],\n _excluded2 = [\"children\", \"count\", \"parent\", \"i18nKey\", \"context\", \"tOptions\", \"values\", \"defaults\", \"components\", \"ns\", \"i18n\", \"t\", \"shouldUnescape\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport React, { useContext } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { unescape } from 'html-escaper';\nimport { getI18n, I18nContext, getDefaults } from './context';\nimport { warn, warnOnce } from './utils';\n\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n var base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\n\nfunction getChildren(node) {\n if (!node) return [];\n return node && node.children ? node.children : node.props && node.props.children;\n}\n\nfunction hasValidReactChildren(children) {\n if (Object.prototype.toString.call(children) !== '[object Array]') return false;\n return children.every(function (child) {\n return React.isValidElement(child);\n });\n}\n\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\n\nfunction mergeProps(source, target) {\n var newTarget = _objectSpread({}, target);\n\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\n\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n var stringNode = '';\n var childrenArray = getAsArray(children);\n var keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach(function (child, childIndex) {\n if (typeof child === 'string') {\n stringNode += \"\".concat(child);\n } else if (React.isValidElement(child)) {\n var childPropsCount = Object.keys(child.props).length;\n var shouldKeepChild = keepArray.indexOf(child.type) > -1;\n var childChildren = child.props.children;\n\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += \"<\".concat(child.type, \"/>\");\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += \"<\".concat(childIndex, \"></\").concat(childIndex, \">\");\n } else if (child.props.i18nIsDynamicList) {\n stringNode += \"<\".concat(childIndex, \"></\").concat(childIndex, \">\");\n } else if (shouldKeepChild && childPropsCount === 1 && typeof childChildren === 'string') {\n stringNode += \"<\".concat(child.type, \">\").concat(childChildren, \"</\").concat(child.type, \">\");\n } else {\n var content = nodesToString(childChildren, i18nOptions);\n stringNode += \"<\".concat(childIndex, \">\").concat(content, \"</\").concat(childIndex, \">\");\n }\n } else if (child === null) {\n warn(\"Trans: the passed in value is invalid - seems you passed in a null child.\");\n } else if (_typeof(child) === 'object') {\n var format = child.format,\n clone = _objectWithoutProperties(child, _excluded);\n\n var keys = Object.keys(clone);\n\n if (keys.length === 1) {\n var value = format ? \"\".concat(keys[0], \", \").concat(format) : keys[0];\n stringNode += \"{{\".concat(value, \"}}\");\n } else {\n warn(\"react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.\", child);\n }\n } else {\n warn(\"Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.\", child);\n }\n });\n return stringNode;\n}\n\nfunction renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, shouldUnescape) {\n if (targetString === '') return [];\n var keepArray = i18nOptions.transKeepBasicHtmlNodesFor || [];\n var emptyChildrenButNeedsHandling = targetString && new RegExp(keepArray.join('|')).test(targetString);\n if (!children && !emptyChildrenButNeedsHandling) return [targetString];\n var data = {};\n\n function getData(childs) {\n var childrenArray = getAsArray(childs);\n childrenArray.forEach(function (child) {\n if (typeof child === 'string') return;\n if (hasChildren(child)) getData(getChildren(child));else if (_typeof(child) === 'object' && !React.isValidElement(child)) Object.assign(data, child);\n });\n }\n\n getData(children);\n var ast = HTML.parse(\"<0>\".concat(targetString, \"</0>\"));\n\n var opts = _objectSpread(_objectSpread({}, data), combinedTOpts);\n\n function renderInner(child, node, rootReactNode) {\n var childs = getChildren(child);\n var mappedChildren = mapAST(childs, node.children, rootReactNode);\n return hasValidReactChildren(childs) && mappedChildren.length === 0 ? childs : mappedChildren;\n }\n\n function pushTranslatedJSX(child, inner, mem, i, isVoid) {\n if (child.dummy) child.children = inner;\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), isVoid ? undefined : inner));\n }\n\n function mapAST(reactNode, astNode, rootReactNode) {\n var reactNodes = getAsArray(reactNode);\n var astNodes = getAsArray(astNode);\n return astNodes.reduce(function (mem, node, i) {\n var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n\n if (node.type === 'tag') {\n var tmp = reactNodes[parseInt(node.name, 10)];\n if (!tmp && rootReactNode.length === 1 && rootReactNode[0][node.name]) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n var child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n var isElement = React.isValidElement(child);\n var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && _typeof(child) === 'object' && child.dummy && !isElement;\n var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n\n if (typeof child === 'string') {\n var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n var inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n var _inner = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), _inner));\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n var _inner2 = renderInner(child, node, rootReactNode);\n\n pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(React.createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }));\n } else {\n var _inner3 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(React.createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _inner3));\n }\n } else if (node.voidElement) {\n mem.push(\"<\".concat(node.name, \" />\"));\n } else {\n var _inner4 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(\"<\".concat(node.name, \">\").concat(_inner4, \"</\").concat(node.name, \">\"));\n }\n } else if (_typeof(child) === 'object' && !isElement) {\n var content = node.children[0] ? translationContent : null;\n if (content) mem.push(content);\n } else if (node.children.length === 1 && translationContent) {\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), translationContent));\n } else {\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n })));\n }\n } else if (node.type === 'text') {\n var wrapTextNodes = i18nOptions.transWrapTextNodes;\n\n var _content = shouldUnescape ? unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n\n if (wrapTextNodes) {\n mem.push(React.createElement(wrapTextNodes, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _content));\n } else {\n mem.push(_content);\n }\n }\n\n return mem;\n }, []);\n }\n\n var result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\n\nexport function Trans(_ref) {\n var children = _ref.children,\n count = _ref.count,\n parent = _ref.parent,\n i18nKey = _ref.i18nKey,\n context = _ref.context,\n _ref$tOptions = _ref.tOptions,\n tOptions = _ref$tOptions === void 0 ? {} : _ref$tOptions,\n values = _ref.values,\n defaults = _ref.defaults,\n components = _ref.components,\n ns = _ref.ns,\n i18nFromProps = _ref.i18n,\n tFromProps = _ref.t,\n shouldUnescape = _ref.shouldUnescape,\n additionalProps = _objectWithoutProperties(_ref, _excluded2);\n\n var _ref2 = useContext(I18nContext) || {},\n i18nFromContext = _ref2.i18n,\n defaultNSFromContext = _ref2.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n\n var t = tFromProps || i18n.t.bind(i18n) || function (k) {\n return k;\n };\n\n if (context) tOptions.context = context;\n\n var reactI18nextOptions = _objectSpread(_objectSpread({}, getDefaults()), i18n.options && i18n.options.react);\n\n var namespaces = ns || t.ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n var defaultValue = defaults || nodesToString(children, reactI18nextOptions) || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n var hashTransKey = reactI18nextOptions.hashTransKey;\n var key = i18nKey || (hashTransKey ? hashTransKey(defaultValue) : defaultValue);\n var interpolationOverride = values ? tOptions.interpolation : {\n interpolation: _objectSpread(_objectSpread({}, tOptions.interpolation), {}, {\n prefix: '#$?',\n suffix: '?$#'\n })\n };\n\n var combinedTOpts = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, tOptions), {}, {\n count: count\n }, values), interpolationOverride), {}, {\n defaultValue: defaultValue,\n ns: namespaces\n });\n\n var translation = key ? t(key, combinedTOpts) : defaultValue;\n var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? React.createElement(useAsParent, additionalProps, content) : content;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils';\nexport function useTranslation(ns) {\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nFromProps = props.i18n;\n\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n,\n defaultNSFromContext = _ref.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n\n var notReadyT = function notReadyT(k) {\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n\n var retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n\n var i18nOptions = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), i18n.options.react), props);\n\n var useSuspense = i18nOptions.useSuspense,\n keyPrefix = i18nOptions.keyPrefix;\n var namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n var ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(function (n) {\n return hasLoadedNamespace(n, i18n, i18nOptions);\n });\n\n function getT() {\n return i18n.getFixedT(null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n\n var _useState = useState(getT),\n _useState2 = _slicedToArray(_useState, 2),\n t = _useState2[0],\n setT = _useState2[1];\n\n var isMounted = useRef(true);\n useEffect(function () {\n var bindI18n = i18nOptions.bindI18n,\n bindI18nStore = i18nOptions.bindI18nStore;\n isMounted.current = true;\n\n if (!ready && !useSuspense) {\n loadNamespaces(i18n, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n }\n\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return function () {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(function (e) {\n return i18n.off(e, boundReset);\n });\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(function (e) {\n return i18n.store.off(e, boundReset);\n });\n };\n }, [i18n, namespaces.join()]);\n var isInitial = useRef(true);\n useEffect(function () {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n\n isInitial.current = false;\n }, [i18n]);\n var ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(function (resolve) {\n loadNamespaces(i18n, namespaces, function () {\n resolve();\n });\n });\n}","import i18n from \"i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\nimport { initReactI18next } from \"react-i18next\";\nimport { en, fr } from \"translations\";\n\ni18n\n .use(LanguageDetector)\n .use(initReactI18next)\n .init({\n resources: {\n en: { translation: en },\n fr: { translation: fr },\n },\n fallbackLng: \"en\",\n detection: { order: [\"navigator\"] },\n });\n\nexport default i18n;\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export const BASE_URL = \"neeto_approvals\";\nexport const TEMPLATE_URL = `${BASE_URL}/templates`;\n\nexport const routes = {\n home: \"/\",\n approvals: \"/approvals/\",\n approvers: \"approvers\",\n pending: \"pending\",\n history: \"history\",\n templates: {\n index: \"templates\",\n new: \"templates/new\",\n edit: \"templates/:id/edit\",\n },\n public: \"approvals/public/request/:id\",\n};\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const URL_PARAMS = new URLSearchParams(window.location.search);\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_PAGE_SIZE = 8;\n\nexport const DEFAULT_FILTER_VALUES = {\n search: \"\",\n sortBy: \"\",\n sortDirection: \"\",\n};\n\nexport const SEARCH_DELAY = 750;\n\nexport const STATUSES = {\n approved: \"approved\",\n rejected: \"rejected\",\n pending: \"pending\",\n cancelled: \"cancelled\",\n};\n\nexport const STATUS_TAG_STYLE = {\n pending: \"primary\",\n approved: \"success\",\n rejected: \"danger\",\n cancelled: \"warning\",\n};\n\nexport const APPROVAL_REQUEST_FORM_INITIAL_VALUES = {\n message: \"\",\n variables: [],\n};\n\nexport const APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({\n variables: yup.array().of(\n yup.object().shape({\n variable: yup\n .string()\n .trim()\n .required(t(\"validations.required\", { what: t(\"common.field\") })),\n })\n ),\n});\n\nexport const STATUS_UPDATED_BY = {\n rejected: t(\"common.rejectedBy\"),\n approved: t(\"common.approvedBy\"),\n cancelled: t(\"common.cancelledBy\"),\n};\n","import { isEmpty } from \"ramda\";\n\nexport const hasPermission = (permissions = \"\") => {\n const type = typeof permissions;\n const userPermissions = window.globalProps?.permissions ?? [];\n\n if (Object.is(type, \"string\")) {\n return userPermissions.includes(permissions);\n } else if (Array.isArray(permissions)) {\n return permissions.some(permission => userPermissions.includes(permission));\n }\n\n return false;\n};\n\nexport const isOverflown = ({\n clientWidth,\n clientHeight,\n scrollWidth,\n scrollHeight,\n}) => scrollHeight > clientHeight || scrollWidth > clientWidth;\n\nexport const getScrollBarWidth = () => {\n const innerElement = document.createElement(\"p\");\n innerElement.classList.add(\"neeto-approvals-scrollbar__inner\");\n\n const outerElement = document.createElement(\"div\");\n outerElement.classList.add(\"neeto-approvals-scrollbar__outer\");\n\n outerElement.appendChild(innerElement);\n document.body.appendChild(outerElement);\n\n const w1 = innerElement.offsetWidth;\n outerElement.style.overflow = \"scroll\";\n let w2 = innerElement.offsetWidth;\n if (w1 === w2) w2 = outerElement.clientWidth;\n\n document.body.removeChild(outerElement);\n\n return w1 - w2;\n};\n\nexport const handleEmptyPage = (\n data,\n pageProperties,\n handleTablePagination\n) => {\n if (isEmpty(data) && pageProperties.index !== 1) {\n handleTablePagination(pageProperties.index - 1, pageProperties.size);\n }\n};\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = params => axios.get(`${BASE_URL}/approvers`, { params });\n\nconst create = payload => axios.post(`${BASE_URL}/approvers`, payload);\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/approvers/${id}`, { approver: payload });\n\nconst destroy = ({ approverId }) =>\n axios.delete(`${BASE_URL}/approvers/${approverId}`);\n\nconst approversApi = { create, fetch, update, destroy };\n\nexport default approversApi;\n","export const DEFAULT_STALE_TIME = 300_000; // 5 minutes\n\nexport const QUERY_KEYS = {\n APPROVERS: \"neeto-approvals-approvers\",\n TEMPLATES: \"neeto-approvals-templates\",\n REQUESTS: \"neeto-approvals-requests\",\n SHOW_TEMPLATE: \"neeto-approvals-show-template\",\n SHOW_PUBLIC_REQUEST: \"neeto-approvals-show-public-request\",\n VIEWS: \"neeto-approvals-views\",\n};\n","import approversApi from \"apis/approvers\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\nimport { useQuery, useMutation, useQueryClient } from \"react-query\";\n\nconst useFetchApprovers = (params = {}, options = {}) =>\n useQuery([QUERY_KEYS.APPROVERS, params], () => approversApi.fetch(params), {\n select: response => response.data || response,\n keepPreviousData: true,\n onSuccess: ({ approvers }) => params?.onSuccess?.(approvers),\n ...options,\n });\n\nconst useCreateApprover = options => {\n const queryClient = useQueryClient();\n\n return useMutation(approversApi.create, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.APPROVERS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess();\n },\n });\n};\n\nconst useUpdateApprover = options => {\n const queryClient = useQueryClient();\n\n return useMutation(approversApi.update, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.APPROVERS);\n options?.onSuccess();\n },\n });\n};\n\nconst useDeleteApprover = options => {\n const queryClient = useQueryClient();\n\n return useMutation(approversApi.destroy, {\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.APPROVERS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess();\n },\n });\n};\n\nexport {\n useCreateApprover,\n useFetchApprovers,\n useUpdateApprover,\n useDeleteApprover,\n};\n","import { useMemo } from \"react\";\n\nimport { useLocation } from \"react-router-dom\";\n\nconst useUrlSearchParams = () => {\n const { search } = useLocation();\n\n return useMemo(() => new URLSearchParams(search), [search]);\n};\n\nexport default useUrlSearchParams;\n","import { useCallback, useEffect, useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_PAGE_SIZE } from \"components/Approvals/constants\";\n\nimport useUrlSearchParams from \"./useUrlSearchParams\";\n\nconst usePaginate = () => {\n const urlParams = useUrlSearchParams();\n\n const [pageProperties, setPageProperties] = useState({\n index: Number(urlParams.get(\"page\")) || DEFAULT_PAGE_INDEX,\n size: Number(urlParams.get(\"size\")) || DEFAULT_PAGE_SIZE,\n });\n\n const history = useHistory();\n\n const handleTablePagination = useCallback(\n (index, size) => {\n urlParams.set(\"page\", index);\n urlParams.set(\"size\", size);\n history.push({ search: urlParams.toString() });\n setPageProperties({ index, size });\n },\n [urlParams, history]\n );\n\n useEffect(() => {\n const pageIndex = urlParams.get(\"page\") || DEFAULT_PAGE_INDEX;\n const pageSize = urlParams.get(\"size\") || DEFAULT_PAGE_SIZE;\n\n setPageProperties({\n index: Number(pageIndex),\n size: Number(pageSize),\n });\n }, [urlParams]);\n\n return { pageProperties, handleTablePagination };\n};\n\nexport default usePaginate;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst MAX_NAME_LENGTH = 40;\n\nexport const APPROVER_FORM_INITIAL_VALUES = {\n firstName: \"\",\n lastName: \"\",\n email: \"\",\n};\n\nexport const APPROVER_FORM_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .max(\n MAX_NAME_LENGTH,\n t(\"validations.limitExceeded\", {\n what: t(\"inputs.labels.firstName\")?.toLocaleLowerCase(),\n limit: MAX_NAME_LENGTH,\n })\n )\n .required(\n t(\"validations.required\", {\n what: t(\"inputs.labels.firstName\"),\n })\n ),\n lastName: yup\n .string()\n .trim()\n .max(\n MAX_NAME_LENGTH,\n t(\"validations.limitExceeded\", {\n what: t(\"inputs.labels.lastName\")?.toLocaleLowerCase(),\n limit: MAX_NAME_LENGTH,\n })\n )\n .required(t(\"validations.required\", { what: t(\"inputs.labels.lastName\") })),\n email: yup\n .string()\n .email()\n .required(t(\"validations.required\", { what: t(\"common.email\") })),\n});\n","import React, { useRef } from \"react\";\n\nimport { Pane, Button, Typography } from \"neetoui\";\nimport { Input, Form as FormikForm } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n APPROVER_FORM_INITIAL_VALUES,\n APPROVER_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\n\nconst Form = ({ isOpen, onClose, onSubmit, initialData = {}, isLoading }) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n return (\n <Pane initialFocusRef={inputReference} isOpen={isOpen} onClose={onClose}>\n <Pane.Header>\n <Typography style=\"h2\">\n {isEmpty(initialData)\n ? t(\"typography.newApprover\")\n : t(\"typography.editApprover\")}\n </Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n initialValues: initialData || APPROVER_FORM_INITIAL_VALUES,\n validationSchema: APPROVER_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n <Input\n className=\"w-full\"\n label={t(\"inputs.labels.firstName\")}\n name=\"firstName\"\n placeholder={t(\"inputs.placeholders.firstName\")}\n ref={inputReference}\n />\n <Input\n className=\"w-full\"\n label={t(\"inputs.labels.lastName\")}\n name=\"lastName\"\n placeholder={t(\"inputs.placeholders.lastName\")}\n />\n <Input\n className=\"w-full\"\n label={t(\"common.email\")}\n name=\"email\"\n placeholder={t(\"inputs.placeholders.email\")}\n />\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"buttons.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import React from \"react\";\n\nimport { useCreateApprover } from \"hooks/reactQuery/approvers/useApproversApi\";\n\nimport Form from \"./Form\";\n\nconst Create = ({\n isNewApproverPaneOpen,\n setIsNewApproverPaneOpen,\n pageProperties,\n handleTablePagination,\n totalCount,\n}) => {\n const { mutate: createApprover, isLoading } = useCreateApprover();\n\n const getLastPageNumber = () =>\n Math.ceil((totalCount + 1) / pageProperties.size);\n\n const onSubmit = approver =>\n createApprover(\n { approver },\n {\n onSuccess: () => {\n const lastPageNumber = getLastPageNumber();\n lastPageNumber !== pageProperties.index &&\n handleTablePagination(lastPageNumber, pageProperties.size);\n setIsNewApproverPaneOpen(false);\n },\n }\n );\n\n return (\n <Form\n isLoading={isLoading}\n isOpen={isNewApproverPaneOpen}\n onClose={() => setIsNewApproverPaneOpen(false)}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default React.memo(Create);\n","import React from \"react\";\n\nimport { useUpdateApprover } from \"hooks/reactQuery/approvers/useApproversApi\";\n\nimport Form from \"./Form\";\n\nconst Edit = ({ approver, setApproverToEdit }) => {\n const { mutate: updateApprover, isLoading } = useUpdateApprover();\n\n const onSubmit = ({ firstName, lastName, email }) =>\n updateApprover(\n {\n id: approver.id,\n payload: { firstName, lastName, email },\n },\n { onSuccess: () => setApproverToEdit(\"\") }\n );\n\n return (\n <Form\n initialData={approver}\n isLoading={isLoading}\n isOpen={!!approver}\n onClose={() => setApproverToEdit(\"\")}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default React.memo(Edit);\n","import React from \"react\";\n\nimport { MenuHorizontal } from \"@bigbinary/neeto-icons\";\nimport i18next from \"i18next\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"common.name\"),\n },\n {\n dataIndex: \"email\",\n key: \"email\",\n sorter: true,\n title: i18next.t(\"common.email\"),\n },\n {\n key: \"actions\",\n ellipsis: true,\n render: (_, approver) => (\n <div\n className=\"flex flex-row items-center justify-end space-x-3\"\n onClick={event => event.stopPropagation()}\n >\n <Dropdown\n autoWidth\n className=\"flex-shrink-0\"\n icon={MenuHorizontal}\n position=\"bottom-end\"\n strategy=\"fixed\"\n buttonProps={{\n style: \"text\",\n }}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"approvers-edit-button\"\n onClick={() => onEditClick(approver)}\n >\n {i18next.t(\"common.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"approvers-delete-button\"\n onClick={() => onDeleteClick(approver)}\n >\n {i18next.t(\"common.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n ),\n },\n];\n\nexport default columnData;\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","import React from \"react\";\n\nimport { Trans } from \"react-i18next\";\nimport { Link } from \"react-router-dom\";\n\nexport const renderNoDataHelpText = ({ entity, url }) => (\n <Trans\n i18nKey=\"common.noDataHelpText\"\n values={{ entity }}\n components={{\n a: (\n <Link\n className=\"neeto-ui-text-primary-600 underline\"\n target=\"_blank\"\n to={{ pathname: url }}\n />\n ),\n }}\n />\n);\n","import React from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport usePaginate from \"hooks/usePaginate\";\nimport { renderNoDataHelpText } from \"utils\";\n\nimport { DEFAULT_PAGE_SIZE } from \"./constants\";\n\nconst Table = ({\n entity,\n columnData,\n items,\n totalCount,\n filters,\n setFilters,\n setIsPaneOpen,\n helpDocUrl,\n onEditClick,\n onDeleteClick,\n ...otherProps\n}) => {\n const { pageProperties, handleTablePagination } = usePaginate();\n\n const { t } = useTranslation();\n\n const columns = columnData({ onEditClick, onDeleteClick });\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: sorter.field,\n sortDirection: sorter.order,\n });\n };\n\n const noDataProps = {\n primaryButtonProps: {\n label: t(\"common.add_\", {\n what: t(\"common.template\", SINGULAR)?.toLocaleLowerCase(),\n }),\n onClick: () => setIsPaneOpen(true),\n },\n helpText: renderNoDataHelpText({ entity, url: helpDocUrl }),\n };\n\n if (isEmpty(items)) {\n return (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"common.notFound_\", { what: entity })}\n {...(!filters.search && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <div className=\"neeto-approvals__table-wrapper\">\n <NeetoUITable\n fixedHeight\n columnData={columns}\n currentPageNumber={pageProperties.index}\n defaultPageSize={pageProperties.size}\n handlePageChange={(index, size) => handleTablePagination(index, size)}\n rowData={items}\n paginationProps={{\n hideOnSinglePage: items?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n {...{ totalCount, ...otherProps }}\n />\n </div>\n );\n};\n\nexport default Table;\n","import React, { useState } from \"react\";\n\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteApprover,\n useFetchApprovers,\n} from \"hooks/reactQuery/approvers/useApproversApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport columnData from \"./utils/columnData\";\n\nimport { SEARCH_DELAY } from \"../constants\";\nimport Table from \"../TableWithActions\";\n\nconst Approvers = ({\n filters,\n isNewApproverPaneOpen,\n setIsNewApproverPaneOpen,\n helpDocUrl,\n setFilters,\n}) => {\n const [approverToEdit, setApproverToEdit] = useState(\"\");\n const [approverToDelete, setApproverToDelete] = useState(\"\");\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n\n const { pageProperties, handleTablePagination } = usePaginate();\n\n const { t } = useTranslation();\n\n const {\n data: { approvers = [], totalCount = 0 } = {},\n isLoading: isApproverLoading,\n } = useFetchApprovers(\n { ...pageProperties, ...filters, search: debouncedSearch.trim() },\n {\n onSuccess: approvers => {\n handleEmptyPage(approvers, pageProperties, handleTablePagination);\n },\n }\n );\n\n const { mutate: deleteApprover, isLoading: isDeleting } = useDeleteApprover();\n\n const onEditClick = approver => {\n const name = approver.name.split(\" \");\n setApproverToEdit({\n ...approver,\n firstName: name[0],\n lastName: name[1],\n });\n };\n\n const onDeleteClick = approver => {\n setApproverToDelete(approver);\n };\n\n const entity = t(\"common.approver\", PLURAL)?.toLocaleLowerCase();\n\n const handleDelete = approverId => {\n deleteApprover({ approverId });\n setApproverToDelete(\"\");\n };\n\n return (\n <>\n {isApproverLoading ? (\n <PageLoader />\n ) : (\n <Table\n items={approvers}\n setIsPaneOpen={setIsNewApproverPaneOpen}\n {...{\n columnData,\n entity,\n filters,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n setFilters,\n totalCount,\n }}\n />\n )}\n <Create\n {...{\n handleTablePagination,\n isNewApproverPaneOpen,\n pageProperties,\n setIsNewApproverPaneOpen,\n totalCount,\n }}\n />\n <Edit approver={approverToEdit} {...{ setApproverToEdit }} />\n <Alert\n isOpen={!!approverToDelete}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"buttons.delete\")}\n message={\n <Trans\n i18nKey=\"alerts.deleting_\"\n values={{\n what: t(\"common.approver\", SINGULAR)?.toLocaleLowerCase(),\n name: approverToDelete?.name,\n }}\n />\n }\n title={t(\"common.delete_\", {\n what: t(\"common.approver\", SINGULAR)?.toLocaleLowerCase(),\n })}\n onClose={() => setApproverToDelete(\"\")}\n onSubmit={() => handleDelete(approverToDelete?.id)}\n />\n </>\n );\n};\n\nexport default Approvers;\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = (params, url) => axios.get(url, { params });\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/requests/${id}`, { request: payload });\n\nconst requestsApi = { fetch, update };\n\nexport default requestsApi;\n","import requestsApi from \"apis/requests\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\nimport { useMutation, useQuery, useQueryClient } from \"react-query\";\n\nconst useFetchRequests = (params = {}, options = {}, requestUrl) =>\n useQuery(\n [QUERY_KEYS.REQUESTS, params],\n () => requestsApi.fetch(params, requestUrl),\n {\n select: response => response.data || response,\n keepPreviousData: true,\n onSuccess: ({ requests }) => options.onSuccess?.(requests),\n ...options,\n }\n );\n\nconst useUpdateRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutation(requestsApi.update, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.REQUESTS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nexport { useFetchRequests, useUpdateRequest };\n","import dayjs from \"dayjs\";\nimport timezone from \"dayjs/plugin/timezone\";\nimport utc from \"dayjs/plugin/utc\";\nimport { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { findBy, isPresent } from \"neetocommons/pure\";\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\n\nexport const updateApprovalDetails = ({ requestsData, approvalDetails }) => {\n if (isPresent(requestsData?.requests) && isPresent(approvalDetails)) {\n const request =\n findBy({ id: approvalDetails.id }, requestsData.requests) || {};\n\n return request;\n }\n\n return {};\n};\n\nexport const timeInZone = time => {\n globalProps.user?.timeZone && dayjs.tz.setDefault(globalProps.user?.timeZone);\n\n return dayjs(time).tz();\n};\n\nexport const getApprovalFilter = () => ({\n PENDING: { label: t(\"common.pending\"), value: \"PENDING\" },\n TEMPLATES: { label: t(\"common.template\", PLURAL), value: \"TEMPLATES\" },\n HISTORY: { label: t(\"common.history\"), value: \"HISTORY\" },\n APPROVERS: { label: t(\"common.approver\", PLURAL), value: \"APPROVERS\" },\n});\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { capitalize } from \"neetocommons/pure\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Button, Tag } from \"neetoui\";\n\nimport { STATUS_TAG_STYLE } from \"../constants\";\nimport { timeInZone } from \"../utils\";\n\nexport const HISTORY_TABLE_COLUMNS = [\n {\n dataIndex: \"approvalLabel\",\n key: \"approvalLabel\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.id\"),\n render: (approvalLabel, { requestableUrl }) => {\n const url = new URL(requestableUrl || window.location.origin);\n\n return <Button label={approvalLabel} style=\"link\" to={url.pathname} />;\n },\n },\n {\n dataIndex: \"title\",\n key: \"title\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.title\"),\n },\n {\n dataIndex: \"status\",\n key: \"status\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.status\"),\n render: status => (\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n ),\n },\n {\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n sorter: true,\n width: \"25%\",\n title: t(\"common.created\"),\n render: createdAt => dateFormat.fromNow(timeInZone(createdAt)),\n },\n];\n","import React, { useEffect, useState } from \"react\";\n\nimport { capitalize, noop } from \"neetocommons/pure\";\nimport { dateFormat, withEventTargetValue } from \"neetocommons/utils\";\nimport { EditorContent } from \"neetoeditor\";\nimport { Button, Label, Pane, Tag, Textarea, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { STATUSES, STATUS_TAG_STYLE, STATUS_UPDATED_BY } from \"./constants\";\nimport { timeInZone } from \"./utils\";\n\nconst MemoizedEditorContent = React.memo(EditorContent);\n\nconst ApprovalsDetails = ({\n isOpen,\n onClose,\n approvalDetails,\n isPending = false,\n onSubmit = noop,\n isLoading = false,\n}) => {\n const { t } = useTranslation();\n const {\n title,\n status = \"\",\n message,\n createdAt,\n approverName,\n approverEmail,\n note: initialNote = \"\",\n requesterName,\n requesterEmail,\n } = approvalDetails;\n\n const [note, setNote] = useState(initialNote);\n\n useEffect(() => {\n setNote(initialNote);\n }, [initialNote]);\n\n const requesterOrApproverDetails =\n status === STATUSES.cancelled\n ? `${requesterName} (${requesterEmail})`\n : `${approverName} (${approverEmail})`;\n\n const isCurrentUserApprover =\n window.globalProps?.user?.email === approverEmail;\n\n const getStatusLabel = () => {\n if (isPending) {\n return t(\"common.waitingFor\");\n }\n\n return STATUS_UPDATED_BY[status];\n };\n\n const handleOnClose = () => {\n setNote(\"\");\n onClose();\n };\n\n const handleSubmit = status => {\n onSubmit({ status, note, approvedAt: new Date() });\n };\n\n return (\n <Pane {...{ isOpen }} size=\"large\" onClose={handleOnClose}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">{title}</Typography>\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <div className=\"w-full divide-y border px-3\">\n <div className=\"flex space-x-10 p-2\">\n <Label>{getStatusLabel()}</Label>\n <Typography style=\"body2\">{requesterOrApproverDetails}</Typography>\n </div>\n <div className=\"flex space-x-10 p-2\">\n <Label>{t(\"common.created\")}</Label>\n <Typography>\n {dateFormat.extended(timeInZone(createdAt))}\n </Typography>\n </div>\n </div>\n <div className=\"w-full space-y-2\">\n <Label>{t(\"inputs.labels.message\")}</Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 p-4\"\n content={message}\n />\n </div>\n {isPending && isCurrentUserApprover && (\n <Textarea\n className=\"w-full\"\n disabled={!isPending}\n label={t(\"common.note\")}\n value={note}\n placeholder={t(\"inputs.placeholders.add_\", {\n what: t(\"common.note\")?.toLocaleLowerCase(),\n })}\n onChange={withEventTargetValue(setNote)}\n />\n )}\n {!isPending && note && (\n <div className=\"w-full space-y-2\">\n <Label>{t(\"common.note\")}</Label>\n <div className=\"neeto-ui-bg-gray-100 p-4\">{note}</div>\n </div>\n )}\n </Pane.Body>\n {isPending && isCurrentUserApprover && (\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.approve\")}\n loading={isLoading}\n type=\"submit\"\n onClick={() => handleSubmit(STATUSES.approved)}\n />\n <Button\n label={t(\"buttons.decline\")}\n loading={isLoading}\n style=\"text\"\n onClick={() => handleSubmit(STATUSES.rejected)}\n />\n </Pane.Footer>\n )}\n </Pane>\n );\n};\n\nexport default ApprovalsDetails;\n","import React, { useState } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { camelToSnakeCase, isPresent } from \"neetocommons/pure\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"./constants\";\n\nimport ApprovalsDetails from \"../ApprovalDetailsPane\";\nimport {\n DEFAULT_FILTER_VALUES,\n DEFAULT_PAGE_SIZE,\n SEARCH_DELAY,\n STATUSES,\n} from \"../constants\";\nimport { updateApprovalDetails } from \"../utils\";\n\nconst History = ({ requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n const { pageProperties, handleTablePagination } = usePaginate();\n const [approvalDetails, setApprovalDetails] = useState({});\n const { t } = useTranslation();\n\n const { data: { requests: approvalHistories = {}, totalCount = 0 } = {} } =\n useFetchRequests(\n {\n ...pageProperties,\n ...filters,\n search: debouncedSearch.trim(),\n status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled],\n },\n {\n onSuccess: requests => {\n handleEmptyPage(requests, pageProperties, handleTablePagination);\n setApprovalDetails(approvalDetails =>\n updateApprovalDetails({ requestsData: requests, approvalDetails })\n );\n },\n },\n requestUrl\n );\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field),\n sortDirection: sorter.order,\n });\n };\n\n return (\n <>\n {!isEmpty(approvalHistories) ? (\n <div className=\"neeto-approvals__table-wrapper\">\n <Table\n allowRowClick\n fixedHeight\n columnData={HISTORY_TABLE_COLUMNS}\n currentPageNumber={pageProperties.index}\n defaultPageSize={pageProperties.size}\n rowData={approvalHistories}\n {...{ totalCount }}\n handlePageChange={(index, size) =>\n handleTablePagination(index, size)\n }\n paginationProps={{\n hideOnSinglePage:\n approvalHistories?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </div>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"common.notFound_\", {\n what: t(\"common.record\", PLURAL)?.toLocaleLowerCase(),\n })}\n />\n </div>\n )}\n <ApprovalsDetails\n {...{ approvalDetails }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default History;\n","import { removeBy } from \"@bigbinary/neeto-commons-frontend/pure\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"../History/constants\";\n\nexport const PENDING_TABLE_COLUMNS = removeBy(\n { key: \"status\" },\n HISTORY_TABLE_COLUMNS\n);\n","import React, { useState } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { camelToSnakeCase, isPresent } from \"neetocommons/pure\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useFetchRequests,\n useUpdateRequest,\n} from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { PENDING_TABLE_COLUMNS } from \"./constants\";\n\nimport ApprovalsDetails from \"../ApprovalDetailsPane\";\nimport {\n DEFAULT_FILTER_VALUES,\n DEFAULT_PAGE_SIZE,\n SEARCH_DELAY,\n STATUSES,\n} from \"../constants\";\n\nconst PendingRequests = ({ requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [approvalDetails, setApprovalDetails] = useState({});\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n const { pageProperties, handleTablePagination } = usePaginate();\n const { t } = useTranslation();\n\n const { data: { requests: pendingRequests = {}, totalCount = 0 } = {} } =\n useFetchRequests(\n {\n ...pageProperties,\n ...filters,\n search: debouncedSearch.trim(),\n status: [STATUSES.pending],\n },\n {\n onSuccess: requests => {\n handleEmptyPage(requests, pageProperties, handleTablePagination);\n },\n },\n requestUrl\n );\n\n const { mutate: updatePendingRequest, isLoading } = useUpdateRequest();\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field),\n sortDirection: sorter.order,\n });\n };\n\n const onSubmit = payload =>\n updatePendingRequest(\n { id: approvalDetails.id, payload },\n { onSuccess: () => setApprovalDetails({}) }\n );\n\n return (\n <>\n {!isEmpty(pendingRequests) ? (\n <div className=\"neeto-approvals__table-wrapper\">\n <Table\n allowRowClick\n fixedHeight\n columnData={PENDING_TABLE_COLUMNS}\n currentPageNumber={pageProperties.index}\n defaultPageSize={pageProperties.size}\n rowData={pendingRequests}\n {...{ totalCount }}\n handlePageChange={(index, size) =>\n handleTablePagination(index, size)\n }\n paginationProps={{\n hideOnSinglePage: pendingRequests?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </div>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"common.notFound_\", {\n what: t(\"common.pendingApproval\", PLURAL)?.toLocaleLowerCase(),\n })}\n />\n </div>\n )}\n <ApprovalsDetails\n isPending\n {...{ approvalDetails, isLoading, onSubmit }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default PendingRequests;\n","import axios from \"axios\";\nimport { BASE_URL, TEMPLATE_URL } from \"common/routes\";\n\nconst fetch = params => axios.get(TEMPLATE_URL, { params });\n\nconst show = id => axios.get(`${TEMPLATE_URL}/${id}`);\n\nconst create = ({ url = TEMPLATE_URL, payload }) => axios.post(url, payload);\n\nconst update = ({ id, payload, url = BASE_URL }) =>\n axios.put(`${url}/${id}`, payload);\n\nconst destroy = ({ templateId }) =>\n axios.delete(`${TEMPLATE_URL}/${templateId}`);\n\nconst templatesApi = { create, fetch, update, destroy, show };\n\nexport default templatesApi;\n","import { useQuery, useMutation, useQueryClient } from \"react-query\";\n\nimport templatesApi from \"apis/templates\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchTemplates = (params = {}, options = {}) =>\n useQuery([QUERY_KEYS.TEMPLATES, params], () => templatesApi.fetch(params), {\n select: response => response.data || response,\n keepPreviousData: true,\n onSuccess: ({ templates }) => params?.onSuccess?.(templates),\n ...options,\n });\n\nconst useFetchTemplate = ({ templateId }) =>\n useQuery([QUERY_KEYS.SHOW_TEMPLATE, templateId], () =>\n templatesApi.show(templateId)\n );\n\nconst useCreateTemplate = options => {\n const queryClient = useQueryClient();\n\n return useMutation(templatesApi.create, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.TEMPLATES);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nconst useUpdateTemplate = options => {\n const queryClient = useQueryClient();\n\n return useMutation(templatesApi.update, {\n ...options,\n onSuccess: (_, { id }) => {\n queryClient.invalidateQueries(QUERY_KEYS.TEMPLATES);\n queryClient.invalidateQueries([QUERY_KEYS.SHOW_TEMPLATE, id]);\n options?.onSuccess?.();\n },\n });\n};\n\nconst useDeleteTemplate = options => {\n const queryClient = useQueryClient();\n\n return useMutation(templatesApi.destroy, {\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.TEMPLATES);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nexport {\n useCreateTemplate,\n useFetchTemplates,\n useUpdateTemplate,\n useDeleteTemplate,\n useFetchTemplate,\n};\n","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nconst VALID_VARIABLE_NAME_REGEX = /^[a-z](?:\\w*[a-z0-9])*$/i;\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n visibility: \"\",\n approver: \"\",\n variables: [],\n message: \"\",\n};\n\nexport const TEMPLATE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .trim()\n .required(t(\"validations.required\", { what: t(\"common.name\") })),\n approver: yup.object().required(t(\"validations.approver\")),\n message: yup\n .string()\n .test(\n \"message\",\n t(\"validations.required\", { what: t(\"inputs.labels.message\") }),\n content => !isEditorEmpty(content)\n ),\n variables: yup.array().of(\n yup.object().shape({\n variable: yup\n .string()\n .trim()\n .required(\n t(\"validations.pleaseEnter_\", {\n what: t(\"common.variable\")?.toLocaleLowerCase(),\n })\n )\n .matches(VALID_VARIABLE_NAME_REGEX, t(\"validations.variableName\")),\n })\n ),\n});\n\nexport const EVERYONE_VISIBILITY = {\n label: t(\"select.visibility.everyone\"),\n value: \"everyone\",\n};\n","import React from \"react\";\n\nimport { FieldArray, useFormikContext } from \"formik\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Delete } from \"neetoicons\";\nimport { Button, Label } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DynamicBlock = () => {\n const { t } = useTranslation();\n const {\n values: { variables = [] },\n } = useFormikContext();\n\n const editorVariables = variables.map(({ variable }, index) => {\n const variableValue = variable || `variable_${index + 1}`;\n\n return { key: variableValue, label: variableValue };\n });\n\n return (\n <>\n <div className=\"space-y-2 \">\n <Label>{t(\"inputs.labels.variableMapping\")}</Label>\n <FieldArray name=\"variables\">\n {({ remove, push }) => (\n <div className=\"neeto-ui-bg-gray-100 w-full p-3\">\n <div className=\"grid grid-cols-2 gap-4\">\n {variables?.map((_, index) => (\n <div className=\"mb-2 flex space-x-2\" key={index}>\n <Input\n autoFocus\n label={t(\"common.variable_\", { number: index + 1 })}\n name={`variables[${index}][variable]`}\n />\n <Button\n className=\"my-5\"\n icon={Delete}\n style=\"text\"\n onClick={() => remove(index)}\n />\n </div>\n ))}\n </div>\n <Button\n label={t(\"common.add_\", { what: t(\"common.variable\") })}\n style=\"link\"\n onClick={() => push({ variable: \"\" })}\n />\n </div>\n )}\n </FieldArray>\n </div>\n <FormikEditor\n key={variables}\n label={t(\"inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={editorVariables}\n placeholder={t(\"inputs.placeholders.enter_\", {\n what: t(\"inputs.labels.message\"),\n })}\n shouldUpdate={(nextProps, prevProps) =>\n nextProps.variables !== prevProps.variables\n }\n />\n </>\n );\n};\n\nexport default DynamicBlock;\n","import React, { useRef } from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { isPresent, noop } from \"neetocommons/pure\";\nimport { Button, Pane, Typography } from \"neetoui\";\nimport { Form as FormikForm, Input, Select, Textarea } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchApprovers } from \"hooks/reactQuery/approvers/useApproversApi\";\n\nimport {\n EVERYONE_VISIBILITY,\n TEMPLATE_FORM_INITIAL_VALUES,\n TEMPLATE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport DynamicBlock from \"./DynamicBlock\";\n\nconst Form = ({\n isOpen,\n onClose,\n initialData = {},\n onSubmit = noop,\n isLoading = false,\n visibilityOptions,\n}) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n const { data: { approvers = [] } = {} } = useFetchApprovers();\n\n const header = isEmpty(initialData)\n ? t(\"common.add_\", {\n what: t(\"common.approvalTemplate\", SINGULAR).toLocaleLowerCase(),\n })\n : t(\"common.edit_\", {\n what: t(\"common.approvalTemplate\", SINGULAR).toLocaleLowerCase(),\n });\n\n return (\n <Pane\n initialFocusRef={inputReference}\n size=\"large\"\n {...{ isOpen, onClose }}\n >\n <Pane.Header>\n <Typography style=\"h2\">{header}</Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n enableReinitialize: true,\n initialValues: isPresent(initialData)\n ? initialData\n : TEMPLATE_FORM_INITIAL_VALUES,\n validationSchema: TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <>\n <Pane.Body>\n <div className=\"flex w-full flex-col space-y-6\">\n <Input\n autoFocus\n className=\"w-1/2\"\n label={t(\"common.name\")}\n name=\"name\"\n placeholder={t(\"inputs.placeholders.name\")}\n />\n <Textarea\n className=\"w-full\"\n label={t(\"inputs.labels.description\")}\n name=\"description\"\n placeholder={t(\"inputs.placeholders.description\")}\n />\n <div className=\"flex space-x-6\">\n <Select\n label={t(\"inputs.labels.approver\")}\n name=\"approver\"\n options={approvers.map(approver => ({\n label: approver.name,\n value: approver.id,\n }))}\n placeholder={t(\"inputs.placeholders.select_\", {\n what: t(\"common.approver\", SINGULAR)?.toLocaleLowerCase(),\n })}\n />\n <Select\n label={t(\"common.visibility\")}\n name=\"visibility\"\n options={[...visibilityOptions, EVERYONE_VISIBILITY]}\n placeholder={t(\"inputs.placeholders.select_\", {\n what: t(\"common.visibility\")?.toLocaleLowerCase(),\n })}\n />\n </div>\n <DynamicBlock />\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"buttons.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import { fromPairs } from \"ramda\";\n\nimport { EVERYONE_VISIBILITY } from \"../constants\";\n\nexport const buildTemplatePayload = template => {\n const { variables, visibility, approver } = template;\n const indexedVariables = variables.map(({ variable }, index) => [\n `variable${index + 1}`,\n variable,\n ]);\n\n const payload = {\n template: {\n ...template,\n accessibleId: visibility.value || visibility,\n approverId: approver.value,\n variables: fromPairs(indexedVariables),\n },\n };\n\n return payload;\n};\n\nexport const generateInitialData = template => ({\n ...template,\n visibility: template.accessibleId || EVERYONE_VISIBILITY.value,\n approver: {\n label: template.approverName,\n value: template.approverId,\n },\n variables:\n template.variables &&\n Object.values(template.variables).map(variable => ({ variable })),\n});\n","import React from \"react\";\n\nimport { useCreateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\nimport { buildTemplatePayload } from \"./utils\";\n\nconst Create = ({ visibilityOptions, templateUrl, isOpen, onClose }) => {\n const { mutate: createTemplate, isLoading } = useCreateTemplate();\n\n const onSubmit = template => {\n const payload = buildTemplatePayload(template);\n createTemplate({ url: templateUrl, payload }, { onSuccess: onClose });\n };\n\n return (\n <Form {...{ isLoading, isOpen, onClose, onSubmit, visibilityOptions }} />\n );\n};\n\nexport default Create;\n","import React from \"react\";\n\nimport { useUpdateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\nimport { buildTemplatePayload, generateInitialData } from \"./utils\";\n\nconst Edit = ({\n visibilityOptions,\n templateUrl,\n template,\n setTemplate,\n isOpen,\n onClose,\n}) => {\n const { mutate: updateTemplate, isLoading: isUpdating } = useUpdateTemplate({\n onSuccess: () => setTemplate({}),\n });\n\n const onSubmit = template => {\n const payload = buildTemplatePayload(template);\n updateTemplate({ id: template.id, payload, url: templateUrl });\n };\n\n return (\n <Form\n initialData={generateInitialData(template)}\n isLoading={isUpdating}\n {...{ isOpen, onClose, onSubmit, visibilityOptions }}\n />\n );\n};\n\nexport default Edit;\n","import React from \"react\";\n\nimport { Label } from \"neetoui\";\n\nconst Field = ({ label, value }) => (\n <div className=\"flex flex-col items-start justify-center\">\n <Label className=\"mb-1 font-normal\">{label}</Label>\n <p className=\"neeto-ui-text-gray-800 break-words text-base font-medium\">\n {value}\n </p>\n </div>\n);\n\nexport default React.memo(Field);\n","import React from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { capitalize } from \"neetocommons/pure\";\nimport { EditorContent } from \"neetoeditor\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Field from \"./Field\";\n\nimport { EVERYONE_VISIBILITY } from \"../constants\";\n\nconst MemoizedEditorContent = React.memo(EditorContent);\n\nconst TemplateDetails = ({ isOpen, onClose, template }) => {\n const { t } = useTranslation();\n const { name, description, approverName, accessible, variables, message } =\n template;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">{t(\"common.templateDetails\")}</Typography>\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <Field label={t(\"common.name\")} value={name} />\n <Field label={t(\"inputs.labels.description\")} value={description} />\n <Field label={t(\"common.approver\", SINGULAR)} value={approverName} />\n <Field\n label={t(\"common.visibility\")}\n value={accessible?.label || EVERYONE_VISIBILITY.label}\n />\n {Object.entries(variables || {})?.map(([variable, value]) => (\n <Field key={value} label={capitalize(variable)} {...{ value }} />\n ))}\n <div className=\"flex w-full flex-col space-y-4\">\n <Label className=\"mb-1 font-normal\">\n {t(\"inputs.labels.message\")}\n </Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={message}\n />\n </div>\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default TemplateDetails;\n","import React from \"react\";\n\nimport i18next from \"i18next\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport { EVERYONE_VISIBILITY } from \"../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"common.name\"),\n },\n {\n dataIndex: \"visibility\",\n key: \"visibility\",\n title: i18next.t(\"common.visibility\"),\n render: (_, { accessible }) =>\n accessible?.label || EVERYONE_VISIBILITY.label,\n },\n {\n key: \"actions\",\n ellipsis: true,\n render: (_, template) => (\n <div\n className=\"flex flex-row items-center justify-end space-x-3\"\n onClick={event => event.stopPropagation()}\n >\n <Dropdown\n autoWidth\n buttonProps={{ style: \"text\" }}\n className=\"flex-shrink-0\"\n icon={MenuHorizontal}\n position=\"bottom-end\"\n strategy=\"fixed\"\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"approvers-edit-button\"\n onClick={() => onEditClick(template)}\n >\n {i18next.t(\"common.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"approvers-delete-button\"\n onClick={() => onDeleteClick(template)}\n >\n {i18next.t(\"common.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n ),\n },\n];\n\nexport default columnData;\n","import React, { useEffect, useState } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n} from \"hooks/reactQuery/templates/useTemplatesApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport TemplateDetails from \"./Show\";\nimport columnData from \"./utils/columnData\";\n\nimport { SEARCH_DELAY } from \"../constants\";\nimport Table from \"../TableWithActions\";\n\nconst Templates = ({\n filters,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewTemplatePaneOpen,\n helpDocUrl,\n ...otherProps\n}) => {\n const [selectedTemplate, setSelectedTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isEditPaneOpen, setIsEditPaneOpen] = useState(false);\n const [isShowPaneOpen, setIsShowPaneOpen] = useState(false);\n\n const debouncedSearch = useDebounce(filters.search, SEARCH_DELAY);\n\n const { pageProperties, handleTablePagination } = usePaginate();\n\n const { t } = useTranslation();\n\n const {\n data: { templates = [], totalCount = 0 } = {},\n isLoading: isTemplateLoading,\n } = useFetchTemplates(\n { ...pageProperties, ...filters, search: debouncedSearch.trim() },\n {\n onSuccess: templates => {\n handleEmptyPage(templates, pageProperties, handleTablePagination);\n },\n }\n );\n\n const { mutate: deleteTemplate, isLoading: isDeleting } = useDeleteTemplate();\n\n useEffect(() => {\n if (isEmpty(selectedTemplate)) {\n setIsDeleteAlertOpen(false);\n setIsEditPaneOpen(false);\n setIsShowPaneOpen(false);\n }\n }, [selectedTemplate]);\n\n const onEditClick = template => {\n setSelectedTemplate(template);\n setIsEditPaneOpen(true);\n };\n\n const onRowClick = (_, templateDetails) => {\n setSelectedTemplate(templateDetails);\n setIsShowPaneOpen(true);\n };\n\n const onDeleteClick = template => {\n setSelectedTemplate(template);\n setIsDeleteAlertOpen(true);\n };\n\n const handleDelete = templateId => {\n deleteTemplate({ templateId });\n setSelectedTemplate({});\n };\n\n const entity = t(\"common.template\", PLURAL)?.toLocaleLowerCase();\n\n return (\n <>\n {isTemplateLoading ? (\n <PageLoader />\n ) : (\n <Table\n items={templates}\n setIsPaneOpen={setIsNewTemplatePaneOpen}\n {...{\n columnData,\n entity,\n filters,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n onRowClick,\n setFilters,\n totalCount,\n }}\n />\n )}\n <Create\n isOpen={isNewTemplatePaneOpen}\n onClose={() => setIsNewTemplatePaneOpen(false)}\n {...otherProps}\n />\n <Edit\n isOpen={isEditPaneOpen}\n setTemplate={setSelectedTemplate}\n template={selectedTemplate}\n {...otherProps}\n onClose={() => setIsEditPaneOpen(false)}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"buttons.delete\")}\n message={\n <Trans\n i18nKey=\"alerts.deleting_\"\n values={{\n what: t(\"common.template\", SINGULAR)?.toLocaleLowerCase(),\n name: selectedTemplate?.name,\n }}\n />\n }\n title={t(\"common.delete_\", {\n what: t(\"common.template\", SINGULAR)?.toLocaleLowerCase(),\n })}\n onClose={() => setSelectedTemplate({})}\n onSubmit={() => handleDelete(selectedTemplate?.id)}\n />\n <TemplateDetails\n isOpen={isShowPaneOpen}\n template={selectedTemplate}\n onClose={() => setSelectedTemplate({})}\n />\n </>\n );\n};\n\nexport default Templates;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport { routes } from \"common/routes\";\n\nimport Approvers from \"./Approvers\";\nimport History from \"./History\";\nimport PendingRequests from \"./PendingRequests\";\nimport Templates from \"./Templates\";\n\nexport const createRoutes = ({\n config,\n filters,\n isNewApproverPaneOpen,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewApproverPaneOpen,\n setIsNewTemplatePaneOpen,\n}) => [\n {\n component: () => (\n <Approvers\n {...{\n filters,\n isNewApproverPaneOpen,\n setFilters,\n setIsNewApproverPaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.approvers}`,\n actionBlock: () => (\n <Button\n label={t(\"common.add_\", {\n what: t(\"common.approver\", SINGULAR).toLocaleLowerCase(),\n })}\n onClick={() => setIsNewApproverPaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"inputs.placeholders.search_\", {\n what: t(\"common.approver\", PLURAL).toLocaleLowerCase(),\n }),\n },\n {\n component: () => (\n <Templates\n {...{\n filters,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewTemplatePaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.templates.index}`,\n actionBlock: () => (\n <Button\n label={t(\"common.add_\", {\n what: t(\"common.approvalTemplate\", SINGULAR).toLocaleLowerCase(),\n })}\n onClick={() => setIsNewTemplatePaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"inputs.placeholders.search_\", {\n what: t(\"common.template\", PLURAL).toLocaleLowerCase(),\n }),\n },\n {\n component: () => <PendingRequests {...config} />,\n path: `${config.approvalsPath}${routes.pending}`,\n },\n {\n component: () => <History {...config} />,\n path: `${config.approvalsPath}${routes.history}`,\n },\n];\n","import React from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { findBy } from \"neetocommons/pure\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst Header = ({ appRoutes, breadcrumbs, filters, setFilters }) => {\n const { t } = useTranslation();\n\n const { pathname } = useLocation();\n\n const currentTab = findBy({ path: pathname }, appRoutes);\n\n return (\n <NeetoHeader\n actionBlock={currentTab?.actionBlock?.()}\n title={t(\"common.approval\", PLURAL)}\n searchProps={\n currentTab?.searchPlaceholder && {\n onChange: event => setFilters(assoc(\"search\", event.target.value)),\n value: filters.search,\n placeholder: currentTab?.searchPlaceholder,\n }\n }\n {...{ breadcrumbs }}\n />\n );\n};\n\nexport default Header;\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = () => axios.get(`${BASE_URL}/views`);\n\nconst viewsApi = { fetch };\n\nexport default viewsApi;\n","import viewsApi from \"apis/views\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\nimport { useQuery } from \"react-query\";\n\nconst useFetchViews = (options = {}) =>\n useQuery([QUERY_KEYS.VIEWS], () => viewsApi.fetch(), {\n select: response => response.data || response,\n ...options,\n });\n\nexport { useFetchViews };\n","import React from \"react\";\n\nimport { Tab as NeetoUITab } from \"neetoui\";\nimport { keys } from \"ramda\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\nimport { useFetchViews } from \"hooks/reactQuery/views/useViewsApi\";\n\nimport { getApprovalFilter } from \"./utils\";\n\nconst Tab = ({ approvalsPath }) => {\n const { pathname } = useLocation();\n\n const history = useHistory();\n\n const approvalFilter = getApprovalFilter();\n const approvalFilterKeys = keys(approvalFilter);\n const category = pathname.split(routes.approvals)[1]?.toLocaleUpperCase();\n\n const isActive = filter => category.includes(filter);\n\n const getRoute = filter => `${approvalsPath}${filter.toLowerCase()}`;\n\n const { data: { views = {} } = {} } = useFetchViews();\n\n return (\n <NeetoUITab>\n {approvalFilterKeys.map(filter => (\n <NeetoUITab.Item\n active={isActive(filter)}\n count={views[filter?.toLocaleLowerCase()]}\n key={filter}\n label={approvalFilter[filter].label}\n onClick={() => history.push(getRoute(filter))}\n >\n {approvalFilter[filter].label} (\n {views[filter?.toLocaleLowerCase()] || 0})\n </NeetoUITab.Item>\n ))}\n </NeetoUITab>\n );\n};\n\nexport default Tab;\n","import React, { useState } from \"react\";\n\nimport Container from \"neetomolecules/Container\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\n\nimport { DEFAULT_FILTER_VALUES } from \"./constants\";\nimport { createRoutes } from \"./createRoutes\";\nimport Header from \"./Header\";\nimport Tabs from \"./Tab\";\n\nconst Approvals = ({ config }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [isNewTemplatePaneOpen, setIsNewTemplatePaneOpen] = useState(false);\n const [isNewApproverPaneOpen, setIsNewApproverPaneOpen] = useState(false);\n\n const appRoutes = createRoutes({\n config,\n filters,\n isNewApproverPaneOpen,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewApproverPaneOpen,\n setIsNewTemplatePaneOpen,\n });\n\n return (\n <div className=\"neeto-approvals\">\n <Container>\n <Header {...{ appRoutes, filters, setFilters, ...config }} />\n <Tabs approvalsPath={config.approvalsPath} />\n <Switch>\n {appRoutes.map(({ path, component }) => (\n <Route exact {...{ component, path }} key={path} />\n ))}\n <Redirect\n exact\n from={config.approvalsPath}\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n to={`${config.approvalsPath}${routes.pending}`}\n />\n </Switch>\n </Container>\n </div>\n );\n};\n\nexport default Approvals;\n","import React, { useState } from \"react\";\n\nimport { FieldArray } from \"formik\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { findById, isPresent } from \"neetocommons/pure\";\nimport { EditorContent, substituteVariables } from \"neetoeditor\";\nimport { Pane, Button, Typography, Select, Label } from \"neetoui\";\nimport { Form as FormikForm, Input } from \"neetoui/formik\";\nimport { modify } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTemplates } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport {\n APPROVAL_REQUEST_FORM_INITIAL_VALUES,\n APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\n\nconst Form = ({ isOpen, setIsPaneOpen, onSubmit, isLoading }) => {\n const [selectedTemplateData, setSelectedTemplateData] = useState({});\n const { t } = useTranslation();\n const variables = Object.values(selectedTemplateData?.variables || {});\n\n const { data: { templates = [] } = {} } = useFetchTemplates();\n\n const templateOptions = templates.map(template => ({\n label: template.name,\n value: template.id,\n }));\n\n const handleTemplateChange = (selectedTemplate, setFieldValue, resetForm) => {\n resetForm();\n const template = findById(selectedTemplate.value, templates);\n setSelectedTemplateData(template);\n setFieldValue(\"message\", template.message);\n const variables = Object.values(template.variables);\n if (isPresent(variables)) {\n variables.forEach((_, index) =>\n setFieldValue(`variables[${index}].variable`, \"\")\n );\n } else {\n setFieldValue(\"variables\", []);\n }\n };\n\n const onClose = () => {\n setIsPaneOpen(false);\n setSelectedTemplateData({});\n };\n\n const parseVariables = variableValues =>\n variables.map((variable, index) => ({\n key: variable,\n value: variableValues[index]?.[\"variable\"],\n }));\n\n const handleSubmit = values => {\n const parsedVariables = parseVariables(values.variables);\n\n const parsedMessage = {\n message: modify(\n \"message\",\n message => substituteVariables(message, parsedVariables),\n values\n ).message,\n };\n\n onSubmit(parsedMessage, selectedTemplateData, onClose);\n };\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"common.add_\", {\n what: t(\"common.approval\", SINGULAR)?.toLocaleLowerCase(),\n })}\n </Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n onSubmit: handleSubmit,\n initialValues: APPROVAL_REQUEST_FORM_INITIAL_VALUES,\n validationSchema: APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA,\n }}\n >\n {({ setFieldValue, values, resetForm }) => (\n <>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n <Select\n label={t(\"select.approval\")}\n options={templateOptions}\n onChange={selectedTemplate =>\n handleTemplateChange(\n selectedTemplate,\n setFieldValue,\n resetForm\n )\n }\n />\n {isPresent(variables) && (\n <div className=\"space-y-2\">\n <Label>{t(\"inputs.labels.variableMapping\")}</Label>\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 neeto-ui-rounded-lg space-y-4 border p-3\">\n <FieldArray name=\"variables\">\n {() =>\n variables.map((variable, index) => (\n <Input\n className=\"w-full\"\n key={variable}\n label={variable}\n name={`variables[${index}][variable]`}\n />\n ))\n }\n </FieldArray>\n </div>\n </div>\n )}\n {selectedTemplateData?.message && (\n <div className=\"space-y-2\">\n <Label>{t(\"inputs.labels.message\")}</Label>\n <EditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={selectedTemplateData?.message}\n name=\"message\"\n variables={parseVariables(values?.variables)}\n />\n </div>\n )}\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"buttons.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </>\n )}\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst show = id => axios.get(`${BASE_URL}/public/requests/${id}`);\n\nconst accept = ({ id, note }) =>\n axios.patch(`${BASE_URL}/public/requests/${id}/accept`, { note });\n\nconst decline = ({ id, note }) =>\n axios.patch(`${BASE_URL}/public/requests/${id}/decline`, { note });\n\nconst publicRequestsApi = { show, accept, decline };\n\nexport default publicRequestsApi;\n","import publicRequestsApi from \"apis/public/requests\";\nimport { DEFAULT_STALE_TIME, QUERY_KEYS } from \"common/queryConstants\";\nimport { useMutation, useQuery, useQueryClient } from \"react-query\";\n\nconst useFetchPublicRequest = ({ requestId }, options) =>\n useQuery(\n [QUERY_KEYS.SHOW_PUBLIC_REQUEST, requestId],\n () => publicRequestsApi.show(requestId),\n {\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n }\n );\n\nconst useAcceptPendingRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutation(publicRequestsApi.accept, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.SHOW_PUBLIC_REQUEST);\n queryClient.invalidateQueries(QUERY_KEYS.REQUESTS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nconst useDeclinePendingRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutation(publicRequestsApi.decline, {\n ...options,\n onSuccess: () => {\n queryClient.invalidateQueries(QUERY_KEYS.SHOW_PUBLIC_REQUEST);\n queryClient.invalidateQueries(QUERY_KEYS.REQUESTS);\n queryClient.invalidateQueries(QUERY_KEYS.VIEWS);\n options?.onSuccess?.();\n },\n });\n};\n\nexport {\n useFetchPublicRequest,\n useAcceptPendingRequest,\n useDeclinePendingRequest,\n};\n","import { PLURAL } from \"neetocommons/constants\";\nimport Header from \"neetomolecules/Header\";\nimport Container from \"neetomolecules/Container\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { EditorContent } from \"neetoeditor\";\n\nimport { Button, Callout, Textarea, Typography } from \"neetoui\";\n\nimport {\n useFetchPublicRequest,\n useAcceptPendingRequest,\n useDeclinePendingRequest,\n} from \"hooks/reactQuery/public/requests/useApprovalRequest\";\nimport React, { useState } from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport { STATUSES } from \"../constants\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { isEmpty } from \"ramda\";\nimport { withEventTargetValue } from \"neetocommons/utils\";\n\nconst Public = () => {\n const [note, setNote] = useState(\"\");\n\n const { id } = useParams();\n const { t } = useTranslation();\n\n const { data: { approvalRequest = {} } = {}, isLoading } =\n useFetchPublicRequest(\n { requestId: id },\n {\n onSuccess: ({ approvalRequest: { note } }) => {\n note && setNote(note);\n },\n }\n );\n\n const { mutate: acceptPendingRequest, isLoading: isAccepting } =\n useAcceptPendingRequest();\n const { mutate: declinePendingRequest, isLoading: isDeclining } =\n useDeclinePendingRequest();\n\n const calloutStyle =\n approvalRequest.status === STATUSES.approved ? \"success\" : \"danger\";\n const hideTextArea =\n approvalRequest.status !== STATUSES.pending && isEmpty(note);\n\n if (isLoading) {\n return (\n <div className=\"h-screen items-center justify-center\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <Container>\n <Header title={t(\"common.approval\", PLURAL)} />\n <div className=\"flex h-screen w-full flex-col items-center\">\n <div className=\"neeto-ui-shadow-s w-2/5 rounded border p-6\">\n {approvalRequest ? (\n <div className=\"flex w-full flex-col space-y-6\">\n <Typography style=\"h2\">{approvalRequest.title}</Typography>\n <EditorContent content={approvalRequest.message} />\n {!hideTextArea && (\n <Textarea\n label={t(\"common.note\")}\n placeholder={t(\"inputs.placeholders.add_\", {\n what: t(\"common.note\")?.toLocaleLowerCase(),\n })}\n value={note}\n disabled={approvalRequest.status !== STATUSES.pending}\n onChange={withEventTargetValue(setNote)}\n />\n )}\n {approvalRequest.status === STATUSES.pending ? (\n <div className=\"mx-auto mt-8 flex space-x-6\">\n <Button\n label={t(\"buttons.approve\")}\n onClick={() =>\n acceptPendingRequest({\n id: approvalRequest.id,\n note,\n })\n }\n loading={isAccepting}\n />\n <Button\n label={t(\"buttons.decline\")}\n onClick={() =>\n declinePendingRequest({\n id: approvalRequest.id,\n note,\n })\n }\n style=\"secondary\"\n loading={isDeclining}\n />\n </div>\n ) : (\n <Callout style={calloutStyle}>\n <Typography style=\"body1\">\n <Trans\n i18nKey=\"typography.approvalRequest\"\n values={{\n status: approvalRequest.status,\n }}\n />\n </Typography>\n </Callout>\n )}\n </div>\n ) : (\n <Typography style=\"h4\" className=\"text-center\">\n {t(\"common.notFound\")}\n </Typography>\n )}\n </div>\n </div>\n </Container>\n );\n};\n\nexport default Public;\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n"],"names":["_typeof","_classCallCheck","_toPrimitive","_toPropertyKey","toPrimitive","_defineProperties","toPropertyKey","_createClass","setPrototypeOf","assertThisInitialized","_defineProperty","_arrayWithHoles","_iterableToArray","_arrayLikeToArray","_unsupportedIterableToArray","arrayLikeToArray","_nonIterableRest","arrayWithHoles","iterableToArray","unsupportedIterableToArray","nonIterableRest","ownKeys$6","_objectSpread$6","ownKeys$5","_objectSpread$5","ownKeys$4","_objectSpread$4","ownKeys$3","_objectSpread$3","ownKeys$2","_objectSpread$2","ownKeys$1","_objectSpread$1","ownKeys","_objectSpread","t","getDefaults","_objectWithoutPropertiesLoose","_objectWithoutProperties","objectWithoutPropertiesLoose","n","e","React","_excluded","HTML","useContext","_iterableToArrayLimit","_slicedToArray","iterableToArrayLimit","useState","useRef","useEffect","i18n","use","LanguageDetector","initReactI18next","init","resources","en","translation","fr","fallbackLng","detection","order","BASE_URL","TEMPLATE_URL","concat","routes","home","approvals","approvers","pending","history","templates","index","edit","URLSearchParams","window","location","search","DEFAULT_PAGE_SIZE","DEFAULT_FILTER_VALUES","sortBy","sortDirection","SEARCH_DELAY","STATUSES","approved","rejected","cancelled","STATUS_TAG_STYLE","APPROVAL_REQUEST_FORM_INITIAL_VALUES","message","variables","APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA","yup","object","shape","array","of","variable","string","trim","required","what","STATUS_UPDATED_BY","handleEmptyPage","data","pageProperties","handleTablePagination","isEmpty","size","fetch","params","axios","get","create","payload","post","update","_ref","id","put","approver","destroy","_ref2","approverId","approversApi","DEFAULT_STALE_TIME","QUERY_KEYS","APPROVERS","TEMPLATES","REQUESTS","SHOW_TEMPLATE","SHOW_PUBLIC_REQUEST","VIEWS","useFetchApprovers","arguments","length","undefined","options","useQuery","select","response","keepPreviousData","onSuccess","_params$onSuccess","call","useCreateApprover","queryClient","useQueryClient","useMutation","invalidateQueries","useUpdateApprover","useDeleteApprover","useUrlSearchParams","_useLocation","useLocation","useMemo","usePaginate","urlParams","_useState","Number","DEFAULT_PAGE_INDEX","_useState2","setPageProperties","useHistory","useCallback","set","push","toString","pageIndex","pageSize","MAX_NAME_LENGTH","APPROVER_FORM_INITIAL_VALUES","firstName","lastName","email","APPROVER_FORM_VALIDATION_SCHEMA","max","_t","toLocaleLowerCase","limit","_t2","Form","isOpen","onClose","onSubmit","_ref$initialData","initialData","isLoading","inputReference","_useTranslation","useTranslation","createElement","Pane","initialFocusRef","Header","Typography","style","FormikForm","formikProps","initialValues","validationSchema","Fragment","Body","className","Input","label","name","placeholder","ref","Footer","Button","loading","type","onClick","Create","isNewApproverPaneOpen","setIsNewApproverPaneOpen","totalCount","_useCreateApprover","createApprover","mutate","getLastPageNumber","Math","ceil","lastPageNumber","memo","Edit","setApproverToEdit","_useUpdateApprover","updateApprover","Menu","Dropdown","MenuItem","columnData","onEditClick","onDeleteClick","dataIndex","key","sorter","title","i18next","ellipsis","render","_","event","stopPropagation","autoWidth","icon","MenuHorizontal","position","strategy","buttonProps","renderNoDataHelpText","entity","url","Trans","i18nKey","values","components","a","Link","target","to","pathname","Table","items","filters","setFilters","setIsPaneOpen","helpDocUrl","otherProps","_usePaginate","columns","handleTableChange","__","field","noDataProps","primaryButtonProps","SINGULAR","helpText","NoData","_extends","NeetoUITable","fixedHeight","currentPageNumber","defaultPageSize","handlePageChange","rowData","paginationProps","hideOnSinglePage","onChange","Approvers","_t3","approverToEdit","_useState3","_useState4","approverToDelete","setApproverToDelete","debouncedSearch","useDebounce","_useFetchApprovers","_useFetchApprovers$da","_useFetchApprovers$da2","_useFetchApprovers$da3","_useFetchApprovers$da4","isApproverLoading","_useDeleteApprover","deleteApprover","isDeleting","split","PLURAL","handleDelete","PageLoader","Alert","isSubmitting","submitButtonLabel","request","requestsApi","useFetchRequests","requestUrl","_options$onSuccess","requests","useUpdateRequest","_options$onSuccess2","dayjs","extend","utc","timezone","updateApprovalDetails","requestsData","approvalDetails","isPresent","findBy","timeInZone","time","_globalProps$user","_globalProps$user2","globalProps","user","timeZone","tz","setDefault","getApprovalFilter","PENDING","value","HISTORY","HISTORY_TABLE_COLUMNS","width","approvalLabel","requestableUrl","URL","origin","status","Tag","capitalize","createdAt","dateFormat","fromNow","MemoizedEditorContent","EditorContent","ApprovalsDetails","_window$globalProps","_window$globalProps$u","_ref$isPending","isPending","_ref$onSubmit","noop","_ref$isLoading","_approvalDetails$stat","approverName","approverEmail","_approvalDetails$note","note","initialNote","requesterName","requesterEmail","setNote","requesterOrApproverDetails","isCurrentUserApprover","getStatusLabel","handleOnClose","handleSubmit","approvedAt","Date","Label","extended","content","Textarea","disabled","withEventTargetValue","History","setApprovalDetails","_useFetchRequests","_useFetchRequests$dat","_useFetchRequests$dat2","_useFetchRequests$dat3","approvalHistories","_useFetchRequests$dat4","camelToSnakeCase","allowRowClick","onRowClick","PENDING_TABLE_COLUMNS","removeBy","PendingRequests","pendingRequests","_useUpdateRequest","updatePendingRequest","show","_ref$url","_ref2$url","_ref3","templateId","templatesApi","useFetchTemplates","useCreateTemplate","useUpdateTemplate","useDeleteTemplate","_options$onSuccess3","arrayWithoutHoles","nonIterableSpread","VALID_VARIABLE_NAME_REGEX","TEMPLATE_FORM_INITIAL_VALUES","description","visibility","TEMPLATE_FORM_VALIDATION_SCHEMA","test","isEditorEmpty","matches","EVERYONE_VISIBILITY","DynamicBlock","_useFormikContext","useFormikContext","_useFormikContext$val","editorVariables","map","variableValue","FieldArray","remove","autoFocus","number","Delete","FormikEditor","rows","shouldUpdate","nextProps","prevProps","visibilityOptions","header","enableReinitialize","Select","_toConsumableArray","buildTemplatePayload","template","indexedVariables","accessibleId","fromPairs","generateInitialData","Object","templateUrl","_useCreateTemplate","createTemplate","setTemplate","_useUpdateTemplate","updateTemplate","isUpdating","Field","TemplateDetails","_Object$entries","accessible","entries","Templates","isNewTemplatePaneOpen","setIsNewTemplatePaneOpen","selectedTemplate","setSelectedTemplate","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","isEditPaneOpen","setIsEditPaneOpen","_useState7","_useState8","isShowPaneOpen","setIsShowPaneOpen","_useFetchTemplates","_useFetchTemplates$da","_useFetchTemplates$da2","_useFetchTemplates$da3","_useFetchTemplates$da4","isTemplateLoading","_useDeleteTemplate","deleteTemplate","templateDetails","createRoutes","config","component","path","approvalsPath","actionBlock","searchPlaceholder","_currentTab$actionBlo","appRoutes","breadcrumbs","currentTab","NeetoHeader","searchProps","assoc","viewsApi","useFetchViews","Tab","_pathname$split$","approvalFilter","approvalFilterKeys","keys","category","toLocaleUpperCase","isActive","filter","includes","getRoute","toLowerCase","_useFetchViews","_useFetchViews$data","_useFetchViews$data2","_useFetchViews$data2$","views","NeetoUITab","Item","active","count","Approvals","Container","Tabs","Switch","Route","exact","Redirect","from","selectedTemplateData","setSelectedTemplateData","templateOptions","handleTemplateChange","setFieldValue","resetForm","findById","forEach","parseVariables","variableValues","_variableValues$index","parsedVariables","parsedMessage","modify","substituteVariables","accept","patch","decline","publicRequestsApi","useFetchPublicRequest","requestId","staleTime","useAcceptPendingRequest","useDeclinePendingRequest","Public","_useParams","useParams","_useFetchPublicReques","approvalRequest","_useFetchPublicReques2","_useFetchPublicReques3","_useFetchPublicReques4","_useAcceptPendingRequ","acceptPendingRequest","isAccepting","_useDeclinePendingReq","declinePendingRequest","isDeclining","calloutStyle","hideTextArea","Callout"],"mappings":"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"}
|