@bigbinary/neeto-approvals-frontend 0.2.5 → 0.2.7

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.
@@ -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/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 '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#39;',\n '/': '&#x2F;'\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 '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n \"'\": '&#39;',\n '\"': '&quot;'\n};\nvar unes = {\n '&amp;': '&',\n '&#38;': '&',\n '&lt;': '<',\n '&#60;': '<',\n '&gt;': '>',\n '&#62;': '>',\n '&apos;': \"'\",\n '&#39;': \"'\",\n '&quot;': '\"',\n '&#34;': '\"'\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, 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 required\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 required\n className=\"w-full\"\n label={t(\"inputs.labels.lastName\")}\n name=\"lastName\"\n placeholder={t(\"inputs.placeholders.lastName\")}\n />\n <Input\n required\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 EVERYONE_VISIBILITY = {\n label: t(\"select.visibility.everyone\"),\n value: \"everyone\",\n};\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n visibility: EVERYONE_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","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 required\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 required\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 required\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 required\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, dirty }) => (\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 required\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 disabled={!dirty}\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","EVERYONE_VISIBILITY","TEMPLATE_FORM_INITIAL_VALUES","description","visibility","TEMPLATE_FORM_VALIDATION_SCHEMA","test","isEditorEmpty","matches","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","dirty","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/@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","../node_modules/@bigbinary/neeto-cist/index.js","../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(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 searchTerm: \"\",\n sortBy: \"\",\n orderBy: \"\",\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(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.common.field\"),\n })\n ),\n })\n ),\n});\n\nexport const STATUS_UPDATED_BY = {\n rejected: t(\"neetoApprovals.common.rejectedBy\"),\n approved: t(\"neetoApprovals.common.approvedBy\"),\n cancelled: t(\"neetoApprovals.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.page !== 1) {\n handleTablePagination(pageProperties.page - 1, pageProperties.pageSize);\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 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 { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { useQuery } from \"react-query\";\n\nimport approversApi from \"apis/approvers\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\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 useMutationWithInvalidation(approversApi.create, {\n keysToInvalidate: [QUERY_KEYS.APPROVERS, QUERY_KEYS.VIEWS],\n ...options,\n });\n\nconst useUpdateApprover = options =>\n useMutationWithInvalidation(approversApi.update, {\n keysToInvalidate: [QUERY_KEYS.APPROVERS],\n ...options,\n });\n\nconst useDeleteApprover = options =>\n useMutationWithInvalidation(approversApi.destroy, {\n keysToInvalidate: [QUERY_KEYS.APPROVERS, QUERY_KEYS.VIEWS],\n ...options,\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 page: Number(urlParams.get(\"page\")) || DEFAULT_PAGE_INDEX,\n pageSize: Number(urlParams.get(\"size\")) || DEFAULT_PAGE_SIZE,\n });\n\n const history = useHistory();\n\n const handleTablePagination = useCallback(\n (page, pageSize) => {\n urlParams.set(\"page\", page);\n urlParams.set(\"size\", pageSize);\n history.push({ search: urlParams.toString() });\n setPageProperties({ page, pageSize });\n },\n [urlParams, history]\n );\n\n useEffect(() => {\n const page = urlParams.get(\"page\") || DEFAULT_PAGE_INDEX;\n const pageSize = urlParams.get(\"size\") || DEFAULT_PAGE_SIZE;\n\n setPageProperties({\n page: Number(page),\n pageSize: 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(\"neetoApprovals.validations.limitExceeded\", {\n what: t(\"neetoApprovals.inputs.labels.firstName\")?.toLocaleLowerCase(),\n limit: MAX_NAME_LENGTH,\n })\n )\n .required(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.firstName\"),\n })\n ),\n lastName: yup\n .string()\n .trim()\n .max(\n MAX_NAME_LENGTH,\n t(\"neetoApprovals.validations.limitExceeded\", {\n what: t(\"neetoApprovals.inputs.labels.lastName\")?.toLocaleLowerCase(),\n limit: MAX_NAME_LENGTH,\n })\n )\n .required(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.lastName\"),\n })\n ),\n email: yup\n .string()\n .email()\n .required(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.common.email\"),\n })\n ),\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, onClose }}>\n <Pane.Header>\n <Typography style=\"h2\">\n {isEmpty(initialData)\n ? t(\"neetoApprovals.typography.newApprover\")\n : t(\"neetoApprovals.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 required\n className=\"w-full\"\n label={t(\"neetoApprovals.inputs.labels.firstName\")}\n name=\"firstName\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.firstName\")}\n ref={inputReference}\n />\n <Input\n required\n className=\"w-full\"\n label={t(\"neetoApprovals.inputs.labels.lastName\")}\n name=\"lastName\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.lastName\")}\n />\n <Input\n required\n className=\"w-full\"\n label={t(\"neetoApprovals.common.email\")}\n name=\"email\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.email\")}\n />\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex gap-x-2\">\n <Button\n label={t(\"neetoApprovals.buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"neetoApprovals.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.pageSize);\n\n const onSubmit = approver =>\n createApprover(\n { approver },\n {\n onSuccess: () => {\n const lastPageNumber = getLastPageNumber();\n lastPageNumber !== pageProperties.page &&\n handleTablePagination(lastPageNumber, pageProperties.pageSize);\n setIsNewApproverPaneOpen(false);\n },\n }\n );\n\n return (\n <Form\n {...{ isLoading, onSubmit }}\n isOpen={isNewApproverPaneOpen}\n onClose={() => setIsNewApproverPaneOpen(false)}\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 i18next from \"i18next\";\nimport { MenuHorizontal } from \"neetoicons\";\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(\"neetoApprovals.common.name\"),\n },\n {\n dataIndex: \"email\",\n key: \"email\",\n sorter: true,\n title: i18next.t(\"neetoApprovals.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 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(approver)}\n >\n {i18next.t(\"neetoApprovals.common.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"approvers-delete-button\"\n onClick={() => onDeleteClick(approver)}\n >\n {i18next.t(\"neetoApprovals.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=\"neetoApprovals.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 TableWrapper from \"neetomolecules/TableWrapper\";\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 orderBy: sorter.order,\n });\n };\n\n const noDataProps = {\n primaryButtonProps: {\n label: t(\"neetoApprovals.common.add_\", {\n what: t(\n \"neetoApprovals.common.template\",\n SINGULAR\n )?.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(\"neetoApprovals.common.notFound_\", { what: entity })}\n {...(!filters.searchTerm && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper\n className=\"mt-12\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <NeetoUITable\n fixedHeight\n columnData={columns}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n handlePageChange={handleTablePagination}\n rowData={items}\n paginationProps={{\n hideOnSinglePage: items?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n {...{ totalCount, ...otherProps }}\n />\n </TableWrapper>\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 debouncedSearchTerm = useDebounce(filters.searchTerm, 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, searchTerm: debouncedSearchTerm.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(\n \"neetoApprovals.common.approver\",\n PLURAL\n )?.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(\"neetoApprovals.buttons.delete\")}\n message={\n <Trans\n i18nKey=\"neetoApprovals.alerts.deleting_\"\n values={{\n what: t(\n \"neetoApprovals.common.approver\",\n SINGULAR\n )?.toLocaleLowerCase(),\n name: approverToDelete?.name,\n }}\n />\n }\n title={t(\"neetoApprovals.common.delete_\", {\n what: t(\n \"neetoApprovals.common.approver\",\n SINGULAR\n )?.toLocaleLowerCase(),\n })}\n onClose={() => setApproverToDelete(\"\")}\n onSubmit={() => handleDelete(approverToDelete?.id)}\n />\n </>\n );\n};\n\nexport default Approvers;\n","import { curryN, isNil, complement, isEmpty, curry, either, equals, concat, slice, findLast, findLastIndex, count, fromPairs, toPairs, path } from 'ramda';\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _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}\n\nfunction _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}\n\nfunction _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}\n\nfunction _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}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _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}\n\n/**\n * @template {Function} T\n * @param {T} func\n * @returns {T}\n */\nvar nullSafe = function nullSafe(func) {\n return (\n // @ts-ignore\n curryN(func.length, function () {\n var _ref;\n var dataArg = (_ref = func.length - 1, _ref < 0 || arguments.length <= _ref ? undefined : arguments[_ref]);\n return isNil(dataArg) ? dataArg : func.apply(void 0, arguments);\n })\n );\n};\nvar noop = function noop() {};\nvar toLabelAndValue = function toLabelAndValue(string) {\n return {\n label: string,\n value: string\n };\n};\n\n// eslint-disable-next-line default-param-last\nvar getRandomInt = function getRandomInt() {\n var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.MAX_SAFE_INTEGER;\n var b = arguments.length > 1 ? arguments[1] : undefined;\n if (b) {\n a = Math.ceil(a);\n b = Math.floor(b);\n } else {\n b = a;\n a = 0;\n }\n return Math.floor(Math.random() * (b - a) + a);\n};\nvar randomPick = function randomPick() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var randomNumber = getRandomInt(0, args.length);\n return args[randomNumber];\n};\nvar dynamicArray = function dynamicArray(count, elementGenerator) {\n return Array.from({\n length: count\n }, function (_, index) {\n return elementGenerator(index);\n });\n};\nvar isNotEmpty = /*#__PURE__*/complement(isEmpty);\nvar notEquals = /*#__PURE__*/curry(function (x, y) {\n return x !== y;\n});\nvar isNot = notEquals;\nvar isNotPresent = /*#__PURE__*/either(isNil, isEmpty);\nvar isPresent = /*#__PURE__*/complement(isNotPresent);\nvar notEqualsDeep = /*#__PURE__*/complement(equals);\nvar isNotEqualDeep = notEqualsDeep;\n\nvar slugify = function slugify(string) {\n return string.toString().toLowerCase().replace(/\\s+/g, \"-\") // Replace spaces with -\n .replace(/&/g, \"-and-\") // Replace & with 'and'\n .replace(/[^\\w-]+/g, \"\") // Remove all non-word characters\n .replace(/--+/g, \"-\") // Replace multiple - with single -\n .replace(/^-+/, \"\") // Trim - from start of text\n .replace(/-+$/, \"\");\n}; // Trim - from end of text\n\nvar humanize = function humanize(string) {\n string = string.replace(/[_-]+/g, \" \").replace(/\\s{2,}/g, \" \").replace(/([a-z\\d])([A-Z])/g, \"$1\" + \" \" + \"$2\").replace(/([A-Z]+)([A-Z][a-z\\d]+)/g, \"$1\" + \" \" + \"$2\").toLowerCase().trim();\n string = string.charAt(0).toUpperCase() + string.slice(1);\n return string;\n};\nvar snakeToCamelCase = function snakeToCamelCase(string) {\n return string.replace(/(_\\w)/g, function (letter) {\n return letter[1].toUpperCase();\n });\n};\nvar camelToSnakeCase = function camelToSnakeCase(string) {\n return string.replace(/[A-Z]/g, function (letter) {\n return \"_\".concat(letter.toLowerCase());\n });\n};\nvar capitalize = function capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\nvar truncate = function truncate(string, length) {\n return string.length > length ? concat(slice(0, length, string), \"...\") : string;\n};\nvar _slugify = /*#__PURE__*/nullSafe(slugify);\nvar _humanize = /*#__PURE__*/nullSafe(humanize);\nvar _snakeToCamelCase = /*#__PURE__*/nullSafe(snakeToCamelCase);\nvar _camelToSnakeCase = /*#__PURE__*/nullSafe(camelToSnakeCase);\nvar _capitalize = /*#__PURE__*/nullSafe(capitalize);\nvar _truncate = function _truncate(string, length) {\n return isNil(string) ? string : truncate(string, length);\n};\n\nvar matchesImpl = function matchesImpl(pattern, object) {\n var __parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : object;\n if (object === pattern) return true;\n if (typeof pattern === \"function\" && pattern(object, __parent)) return true;\n if (isNil(pattern) || isNil(object)) return false;\n if (_typeof(pattern) !== \"object\") return false;\n return Object.entries(pattern).every(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n return matchesImpl(value, object[key], __parent);\n });\n};\nvar transformObjectDeep = function transformObjectDeep(object, keyValueTransformer) {\n var objectPreProcessor = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;\n if (objectPreProcessor && typeof objectPreProcessor === \"function\") {\n object = objectPreProcessor(object);\n }\n if (Array.isArray(object)) {\n return object.map(function (obj) {\n return transformObjectDeep(obj, keyValueTransformer, objectPreProcessor);\n });\n } else if (object === null || _typeof(object) !== \"object\") {\n return object;\n }\n return Object.fromEntries(Object.entries(object).map(function (_ref3) {\n var _ref4 = _slicedToArray(_ref3, 2),\n key = _ref4[0],\n value = _ref4[1];\n return keyValueTransformer(key, transformObjectDeep(value, keyValueTransformer, objectPreProcessor));\n }));\n};\nvar keysToCamelCase = function keysToCamelCase(object) {\n return transformObjectDeep(object, function (key, value) {\n return [snakeToCamelCase(key), value];\n });\n};\nvar keysToSnakeCase = function keysToSnakeCase(object) {\n return transformObjectDeep(object, function (key, value) {\n return [camelToSnakeCase(key), value];\n });\n};\nvar serializeKeysToSnakeCase = function serializeKeysToSnakeCase(object) {\n return transformObjectDeep(object, function (key, value) {\n return [camelToSnakeCase(key), value];\n }, function (object) {\n return typeof (object === null || object === void 0 ? void 0 : object.toJSON) === \"function\" ? object.toJSON() : object;\n });\n};\nvar preprocessForSerialization = function preprocessForSerialization(object) {\n return transformObjectDeep(object, function (key, value) {\n return [key, value];\n }, function (object) {\n return typeof (object === null || object === void 0 ? void 0 : object.toJSON) === \"function\" ? object.toJSON() : object;\n });\n};\nvar deepFreezeObject = function deepFreezeObject(object) {\n if (object && _typeof(object) === \"object\" && !Object.isFrozen(object)) {\n Object.keys(object).forEach(function (property) {\n return deepFreezeObject(object[property]);\n });\n Object.freeze(object);\n }\n return object;\n};\nvar matches = /*#__PURE__*/curry(function (pattern, object) {\n return matchesImpl(pattern, object);\n});\nvar filterNonNull = function filterNonNull(object) {\n return Object.fromEntries(Object.entries(object).filter(function (_ref5) {\n var _ref6 = _slicedToArray(_ref5, 2),\n v = _ref6[1];\n return !isNil(v);\n }).map(function (_ref7) {\n var _ref8 = _slicedToArray(_ref7, 2),\n k = _ref8[0],\n v = _ref8[1];\n return [k, _typeof(v) === \"object\" && !Array.isArray(v) ? filterNonNull(v) : v];\n }));\n};\nvar _filterNonNull = nullSafe(filterNonNull);\n\nfunction _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}\n\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\n\nfunction _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\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; }\nvar removeById = /*#__PURE__*/curry(function (id, array) {\n return array.filter(function (item) {\n return item.id !== id;\n });\n});\nvar findById = /*#__PURE__*/curry(function (id, array) {\n return array.find(function (item) {\n return item.id === id;\n });\n});\nvar replaceById = /*#__PURE__*/curry(function (id, newItem, array) {\n return array.map(function (item) {\n return item.id === id ? newItem : item;\n });\n});\nvar modifyById = /*#__PURE__*/curry(function (id, modifier, array) {\n return array.map(function (item) {\n return item.id === id ? modifier(item) : item;\n });\n});\nvar findBy = /*#__PURE__*/curry(function (pattern, array) {\n return array.find(matches(pattern));\n});\nvar removeBy = /*#__PURE__*/curry(function (pattern, array) {\n return array.filter(complement(matches(pattern)));\n});\nvar replaceBy = /*#__PURE__*/curry(function (pattern, newItem, array) {\n return array.map(function (item) {\n return matches(pattern, item) ? newItem : item;\n });\n});\nvar modifyBy = /*#__PURE__*/curry(function (pattern, modifier, array) {\n return array.map(function (item) {\n return matches(pattern, item) ? modifier(item) : item;\n });\n});\nvar existsById = /*#__PURE__*/curry(function (id, array) {\n return array.some(function (item) {\n return item.id === id;\n });\n});\nvar existsBy = /*#__PURE__*/curry(function (pattern, array) {\n return array.some(matches(pattern));\n});\nvar findLastBy = /*#__PURE__*/curry(function (pattern, array) {\n return findLast(matches(pattern), array);\n});\nvar findIndexById = /*#__PURE__*/curry(function (id, array) {\n return array.findIndex(function (item) {\n return item.id === id;\n });\n});\nvar findIndexBy = /*#__PURE__*/curry(function (pattern, array) {\n return array.findIndex(matches(pattern));\n});\nvar findLastIndexBy = /*#__PURE__*/curry(function (pattern, array) {\n return findLastIndex(matches(pattern), array);\n});\nvar filterBy = /*#__PURE__*/curry(function (pattern, array) {\n return array.filter(matches(pattern));\n});\nvar countBy = /*#__PURE__*/curry(function (pattern, array) {\n return count(matches(pattern), array);\n});\nvar copyKeys = /*#__PURE__*/curry(function (keyMap, objectArray) {\n return objectArray.map(function (object) {\n var shallowCopy = _objectSpread({}, object);\n for (var source in keyMap) {\n shallowCopy[keyMap[source]] = object[source];\n }\n return shallowCopy;\n });\n});\nvar renameKeys = /*#__PURE__*/curry(function (keyMap, objectArray) {\n return objectArray.map(function (object) {\n var shallowCopy = _objectSpread({}, object);\n for (var source in keyMap) {\n shallowCopy[keyMap[source]] = object[source];\n delete shallowCopy[source];\n }\n return shallowCopy;\n });\n});\nvar copyKeysDeep = /*#__PURE__*/curry(function (keyMap, objectArray) {\n var copyKeysSingleObject = function copyKeysSingleObject(object, keyMap) {\n var root = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : object;\n return _objectSpread(_objectSpread({}, object), fromPairs(toPairs(keyMap).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n destination = _ref2[0],\n source = _ref2[1];\n if (typeof source === \"function\") {\n return [destination, source(object[destination], root)];\n } else if (Array.isArray(source)) {\n return [destination, path(source, root)];\n } else if (_typeof(source) === \"object\") {\n return [destination, copyKeysSingleObject(object[destination], source, root)];\n }\n return [destination, object[source]];\n })));\n };\n return objectArray.map(function (object) {\n return copyKeysSingleObject(object, keyMap);\n });\n});\nvar _removeById = /*#__PURE__*/nullSafe(removeById);\nvar _findById = /*#__PURE__*/nullSafe(findById);\nvar _replaceById = /*#__PURE__*/nullSafe(replaceById);\nvar _modifyById = /*#__PURE__*/nullSafe(modifyById);\nvar _findBy = /*#__PURE__*/nullSafe(findBy);\nvar _removeBy = /*#__PURE__*/nullSafe(removeBy);\nvar _replaceBy = /*#__PURE__*/nullSafe(replaceBy);\nvar _modifyBy = /*#__PURE__*/nullSafe(modifyBy);\nvar _existsById = /*#__PURE__*/nullSafe(existsById);\nvar _existsBy = /*#__PURE__*/nullSafe(existsBy);\nvar _findLastBy = /*#__PURE__*/nullSafe(findLastBy);\nvar _findIndexById = /*#__PURE__*/nullSafe(findIndexById);\nvar _findIndexBy = /*#__PURE__*/nullSafe(findIndexBy);\nvar _findLastIndexBy = /*#__PURE__*/nullSafe(findLastIndexBy);\nvar _filterBy = /*#__PURE__*/nullSafe(filterBy);\nvar _countBy = /*#__PURE__*/nullSafe(countBy);\nvar _copyKeys = /*#__PURE__*/nullSafe(copyKeys);\nvar _renameKeys = /*#__PURE__*/nullSafe(renameKeys);\nvar _copyKeysDeep = /*#__PURE__*/nullSafe(copyKeysDeep);\n\nexport { _camelToSnakeCase, _capitalize, _copyKeys, _copyKeysDeep, _countBy, _existsBy, _existsById, _filterBy, _filterNonNull, _findBy, _findById, _findIndexBy, _findIndexById, _findLastBy, _findLastIndexBy, _humanize, _modifyBy, _modifyById, _removeBy, _removeById, _renameKeys, _replaceBy, _replaceById, _slugify, _snakeToCamelCase, _truncate, camelToSnakeCase, capitalize, copyKeys, copyKeysDeep, countBy, deepFreezeObject, dynamicArray, existsBy, existsById, filterBy, filterNonNull, findBy, findById, findIndexBy, findIndexById, findLastBy, findLastIndexBy, getRandomInt, humanize, isNot, isNotEmpty, isNotEqualDeep, isNotPresent, isPresent, keysToCamelCase, keysToSnakeCase, matches, modifyBy, modifyById, noop, notEquals, notEqualsDeep, nullSafe, preprocessForSerialization, randomPick, removeBy, removeById, renameKeys, replaceBy, replaceById, serializeKeysToSnakeCase, slugify, snakeToCamelCase, toLabelAndValue, transformObjectDeep, truncate };\n//# sourceMappingURL=index.js.map\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 { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { useQuery } from \"react-query\";\n\nimport requestsApi from \"apis/requests\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchRequests = ({ requestUrl, params = {}, options = {} }) =>\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 useMutationWithInvalidation(requestsApi.update, {\n keysToInvalidate: [QUERY_KEYS.REQUESTS, QUERY_KEYS.VIEWS],\n ...options,\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 { findBy, isPresent } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { globalProps } from \"neetocommons/initializers\";\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(\"neetoApprovals.common.pending\"), value: \"PENDING\" },\n TEMPLATES: {\n label: t(\"neetoApprovals.common.template\", PLURAL),\n value: \"TEMPLATES\",\n },\n HISTORY: { label: t(\"neetoApprovals.common.history\"), value: \"HISTORY\" },\n APPROVERS: {\n label: t(\"neetoApprovals.common.approver\", PLURAL),\n value: \"APPROVERS\",\n },\n});\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\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(\"neetoApprovals.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(\"neetoApprovals.common.title\"),\n },\n {\n dataIndex: \"status\",\n key: \"status\",\n sorter: true,\n width: \"25%\",\n title: t(\"neetoApprovals.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(\"neetoApprovals.common.created\"),\n render: createdAt => dateFormat.fromNow(timeInZone(createdAt)),\n },\n];\n","import React, { useEffect, useState } from \"react\";\n\nimport { capitalize, noop } from \"neetocist\";\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(\"neetoApprovals.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(\"neetoApprovals.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(\"neetoApprovals.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(\"neetoApprovals.common.note\")}\n value={note}\n placeholder={t(\"neetoApprovals.inputs.placeholders.add_\", {\n what: t(\"neetoApprovals.common.note\")?.toLocaleLowerCase(),\n })}\n onChange={withEventTargetValue(setNote)}\n />\n )}\n {!isPending && note && (\n <div className=\"w-full space-y-2\">\n <Label>{t(\"neetoApprovals.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(\"neetoApprovals.buttons.approve\")}\n loading={isLoading}\n type=\"submit\"\n onClick={() => handleSubmit(STATUSES.approved)}\n />\n <Button\n label={t(\"neetoApprovals.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 { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\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 debouncedSearchTerm = useDebounce(filters.searchTerm, 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 params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled],\n },\n options: {\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 orderBy: 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.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={approvalHistories}\n {...{ totalCount }}\n handlePageChange={handleTablePagination}\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(\"neetoApprovals.common.notFound_\", {\n what: t(\n \"neetoApprovals.common.record\",\n PLURAL\n )?.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 { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\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 debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handleTablePagination } = usePaginate();\n const { t } = useTranslation();\n\n const { data: { requests: pendingRequests = {}, totalCount = 0 } = {} } =\n useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.pending],\n },\n options: {\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 orderBy: 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.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={pendingRequests}\n {...{ totalCount }}\n handlePageChange={handleTablePagination}\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(\"neetoApprovals.common.notFound_\", {\n what: t(\n \"neetoApprovals.common.pendingApproval\",\n PLURAL\n )?.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 { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { useQuery } 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 useMutationWithInvalidation(templatesApi.create, {\n keysToInvalidate: [QUERY_KEYS.TEMPLATES, QUERY_KEYS.VIEWS],\n ...options,\n });\n\nconst useUpdateTemplate = options =>\n useMutationWithInvalidation(templatesApi.update, {\n keysToInvalidate: [\n QUERY_KEYS.TEMPLATES,\n (_, { id }) => [QUERY_KEYS.SHOW_TEMPLATE, id],\n ],\n ...options,\n });\n\nconst useDeleteTemplate = options =>\n useMutationWithInvalidation(templatesApi.destroy, {\n keysToInvalidate: [QUERY_KEYS.TEMPLATES, QUERY_KEYS.VIEWS],\n ...options,\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 EVERYONE_VISIBILITY = {\n label: t(\"neetoApprovals.select.visibility.everyone\"),\n value: \"everyone\",\n};\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n visibility: EVERYONE_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(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.common.name\"),\n })\n ),\n approver: yup.object().required(t(\"neetoApprovals.validations.approver\")),\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\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(\"neetoApprovals.validations.pleaseEnter_\", {\n what: t(\"neetoApprovals.common.variable\")?.toLocaleLowerCase(),\n })\n )\n .matches(\n VALID_VARIABLE_NAME_REGEX,\n t(\"neetoApprovals.validations.variableName\")\n ),\n })\n ),\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(\"neetoApprovals.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 required\n name={`variables[${index}][variable]`}\n label={t(\"neetoApprovals.common.variable_\", {\n number: index + 1,\n })}\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 style=\"link\"\n label={t(\"neetoApprovals.common.add_\", {\n what: t(\"neetoApprovals.common.variable\"),\n })}\n onClick={() => push({ variable: \"\" })}\n />\n </div>\n )}\n </FieldArray>\n </div>\n <FormikEditor\n required\n key={variables}\n label={t(\"neetoApprovals.inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={editorVariables}\n placeholder={t(\"neetoApprovals.inputs.placeholders.enter_\", {\n what: t(\"neetoApprovals.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 { isPresent, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\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(\"neetoApprovals.common.add_\", {\n what: t(\n \"neetoApprovals.common.approvalTemplate\",\n SINGULAR\n ).toLocaleLowerCase(),\n })\n : t(\"neetoApprovals.common.edit_\", {\n what: t(\n \"neetoApprovals.common.approvalTemplate\",\n SINGULAR\n ).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 required\n className=\"w-1/2\"\n label={t(\"neetoApprovals.common.name\")}\n name=\"name\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.name\")}\n />\n <Textarea\n className=\"w-full\"\n label={t(\"neetoApprovals.inputs.labels.description\")}\n name=\"description\"\n placeholder={t(\n \"neetoApprovals.inputs.placeholders.description\"\n )}\n />\n <div className=\"flex space-x-6\">\n <Select\n required\n label={t(\"neetoApprovals.inputs.labels.approver\")}\n name=\"approver\"\n options={approvers.map(approver => ({\n label: approver.name,\n value: approver.id,\n }))}\n placeholder={t(\"neetoApprovals.inputs.placeholders.select_\", {\n what: t(\n \"neetoApprovals.common.approver\",\n SINGULAR\n )?.toLocaleLowerCase(),\n })}\n />\n <Select\n label={t(\"neetoApprovals.common.visibility\")}\n name=\"visibility\"\n options={[...visibilityOptions, EVERYONE_VISIBILITY]}\n placeholder={t(\"neetoApprovals.inputs.placeholders.select_\", {\n what: t(\n \"neetoApprovals.common.visibility\"\n )?.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(\"neetoApprovals.buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"neetoApprovals.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 { capitalize } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\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\">\n {t(\"neetoApprovals.common.templateDetails\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <Field label={t(\"neetoApprovals.common.name\")} value={name} />\n <Field\n label={t(\"neetoApprovals.inputs.labels.description\")}\n value={description}\n />\n <Field\n label={t(\"neetoApprovals.common.approver\", SINGULAR)}\n value={approverName}\n />\n <Field\n label={t(\"neetoApprovals.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(\"neetoApprovals.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(\"neetoApprovals.common.name\"),\n },\n {\n dataIndex: \"visibility\",\n key: \"visibility\",\n title: i18next.t(\"neetoApprovals.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(\"neetoApprovals.common.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"approvers-delete-button\"\n onClick={() => onDeleteClick(template)}\n >\n {i18next.t(\"neetoApprovals.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 debouncedSearchTerm = useDebounce(filters.searchTerm, 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, searchTerm: debouncedSearchTerm.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(\n \"neetoApprovals.common.template\",\n PLURAL\n )?.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(\"neetoApprovals.buttons.delete\")}\n message={\n <Trans\n i18nKey=\"neetoApprovals.alerts.deleting_\"\n values={{\n what: t(\n \"neetoApprovals.common.template\",\n SINGULAR\n )?.toLocaleLowerCase(),\n name: selectedTemplate?.name,\n }}\n />\n }\n title={t(\"neetoApprovals.common.delete_\", {\n what: t(\n \"neetoApprovals.common.template\",\n SINGULAR\n )?.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(\"neetoApprovals.common.add_\", {\n what: t(\n \"neetoApprovals.common.approver\",\n SINGULAR\n ).toLocaleLowerCase(),\n })}\n onClick={() => setIsNewApproverPaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"neetoApprovals.inputs.placeholders.search_\", {\n what: t(\"neetoApprovals.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(\"neetoApprovals.common.add_\", {\n what: t(\n \"neetoApprovals.common.approvalTemplate\",\n SINGULAR\n ).toLocaleLowerCase(),\n })}\n onClick={() => setIsNewTemplatePaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"neetoApprovals.inputs.placeholders.search_\", {\n what: t(\"neetoApprovals.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 { findBy } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\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(\"neetoApprovals.common.approval\", PLURAL)}\n searchProps={\n currentTab?.searchPlaceholder && {\n onChange: event =>\n setFilters(assoc(\"searchTerm\", event.target.value)),\n value: filters.searchTerm,\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 { findById, isPresent } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\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(\"neetoApprovals.common.add_\", {\n what: t(\n \"neetoApprovals.common.approval\",\n SINGULAR\n )?.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, dirty }) => (\n <>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n <Select\n label={t(\"neetoApprovals.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>\n {t(\"neetoApprovals.inputs.labels.variableMapping\")}\n </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 required\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(\"neetoApprovals.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 disabled={!dirty}\n label={t(\"neetoApprovals.buttons.saveChanges\")}\n loading={isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"neetoApprovals.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 { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { useQuery, useQueryClient } from \"react-query\";\n\nimport publicRequestsApi from \"apis/public/requests\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchPublicRequest = ({ requestId }, options) =>\n useQuery(\n [QUERY_KEYS.SHOW_PUBLIC_REQUEST, requestId],\n () => publicRequestsApi.show(requestId),\n { ...options }\n );\n\nconst useAcceptPendingRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutationWithInvalidation(publicRequestsApi.accept, {\n keysToInvalidate: [\n QUERY_KEYS.SHOW_PUBLIC_REQUEST,\n QUERY_KEYS.REQUESTS,\n QUERY_KEYS.VIEWS,\n ],\n ...options,\n });\n};\n\nconst useDeclinePendingRequest = options => {\n const queryClient = useQueryClient();\n\n return useMutationWithInvalidation(publicRequestsApi.decline, {\n keysToInvalidate: [\n QUERY_KEYS.SHOW_PUBLIC_REQUEST,\n QUERY_KEYS.REQUESTS,\n QUERY_KEYS.VIEWS,\n ],\n ...options,\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(\"neetoApprovals.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(\"neetoApprovals.common.note\")}\n placeholder={t(\"neetoApprovals.inputs.placeholders.add_\", {\n what: t(\"neetoApprovals.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(\"neetoApprovals.buttons.approve\")}\n onClick={() =>\n acceptPendingRequest({\n id: approvalRequest.id,\n note,\n })\n }\n loading={isAccepting}\n />\n <Button\n label={t(\"neetoApprovals.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=\"neetoApprovals.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(\"neetoApprovals.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","toPrimitive","toPropertyKey","_arrayWithHoles","_iterableToArrayLimit","_arrayLikeToArray","_unsupportedIterableToArray","arrayLikeToArray","_nonIterableRest","_slicedToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","BASE_URL","TEMPLATE_URL","concat","routes","home","approvals","approvers","pending","history","templates","index","edit","URLSearchParams","window","location","search","DEFAULT_PAGE_SIZE","DEFAULT_FILTER_VALUES","searchTerm","sortBy","orderBy","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","t","what","STATUS_UPDATED_BY","handleEmptyPage","data","pageProperties","handleTablePagination","isEmpty","page","pageSize","fetch","params","axios","get","create","payload","post","update","_ref","id","put","approver","destroy","_ref2","approverId","approversApi","QUERY_KEYS","APPROVERS","TEMPLATES","REQUESTS","SHOW_TEMPLATE","SHOW_PUBLIC_REQUEST","VIEWS","useFetchApprovers","arguments","length","undefined","options","useQuery","_objectSpread","select","response","keepPreviousData","onSuccess","_params$onSuccess","call","useCreateApprover","useMutationWithInvalidation","keysToInvalidate","useUpdateApprover","useDeleteApprover","useUrlSearchParams","_useLocation","useLocation","useMemo","usePaginate","urlParams","_useState","useState","Number","DEFAULT_PAGE_INDEX","_useState2","setPageProperties","useHistory","useCallback","set","push","toString","useEffect","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","useRef","_useTranslation","useTranslation","React","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","buttonProps","icon","MenuHorizontal","position","strategy","objectWithoutPropertiesLoose","renderNoDataHelpText","entity","url","Trans","i18nKey","values","components","a","Link","target","to","pathname","Table","items","filters","setFilters","setIsPaneOpen","helpDocUrl","otherProps","_objectWithoutProperties","_excluded","_usePaginate","columns","handleTableChange","__","field","order","noDataProps","primaryButtonProps","SINGULAR","helpText","NoData","_extends","TableWrapper","hasPagination","NeetoUITable","fixedHeight","currentPageNumber","defaultPageSize","handlePageChange","rowData","paginationProps","hideOnSinglePage","onChange","Approvers","_t3","approverToEdit","_useState3","_useState4","approverToDelete","setApproverToDelete","debouncedSearchTerm","useDebounce","_useFetchApprovers","_useFetchApprovers$da","_useFetchApprovers$da2","_useFetchApprovers$da3","_useFetchApprovers$da4","isApproverLoading","_useDeleteApprover","deleteApprover","isDeleting","split","PLURAL","handleDelete","PageLoader","Alert","isSubmitting","submitButtonLabel","curryN","isNil","either","complement","curry","request","requestsApi","useFetchRequests","requestUrl","_ref$params","_ref$options","_options$onSuccess","requests","useUpdateRequest","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","size","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","arrayWithoutHoles","iterableToArray","nonIterableSpread","VALID_VARIABLE_NAME_REGEX","EVERYONE_VISIBILITY","TEMPLATE_FORM_INITIAL_VALUES","description","visibility","TEMPLATE_FORM_VALIDATION_SCHEMA","test","isEditorEmpty","matches","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","dirty","accept","patch","decline","publicRequestsApi","useFetchPublicRequest","requestId","useAcceptPendingRequest","useQueryClient","useDeclinePendingRequest","Public","_useParams","useParams","_useFetchPublicReques","approvalRequest","_useFetchPublicReques2","_useFetchPublicReques3","_useFetchPublicReques4","_useAcceptPendingRequ","acceptPendingRequest","isAccepting","_useDeclinePendingReq","declinePendingRequest","isDeclining","calloutStyle","hideTextArea","Callout"],"mappings":"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"}