@bigbinary/neeto-approvals-frontend 0.2.6 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -1
- package/dist/index.cjs.js +552 -5109
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +504 -5062
- package/dist/index.js.map +1 -1
- package/package.json +6 -3
- package/src/translations/en.json +96 -0
- package/src/translations/fr.json +89 -0
- package/src/translations/index.js +4 -0
- package/types.d.ts +13 -5
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/i18next/dist/esm/i18next.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/i18next-browser-languagedetector/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/void-elements/index.js","../node_modules/html-parse-stringify/dist/html-parse-stringify.module.js","../node_modules/html-escaper/esm/index.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/react-i18next/dist/es/context.js","../node_modules/react-i18next/dist/es/utils.js","../node_modules/react-i18next/dist/es/Trans.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/react-i18next/dist/es/useTranslation.js","../src/common/i18n.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/common/routes.js","../src/components/Approvals/constants.js","../src/common/utils.js","../src/apis/approvers.js","../src/common/queryConstants.js","../src/hooks/reactQuery/approvers/useApproversApi.js","../src/hooks/useUrlSearchParams.js","../src/hooks/usePaginate.js","../src/components/Approvals/Approvers/constants.js","../src/components/Approvals/Approvers/Form.jsx","../src/components/Approvals/Approvers/Create.jsx","../src/components/Approvals/Approvers/Edit.jsx","../src/components/Approvals/Approvers/utils/columnData.jsx","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../src/utils.jsx","../src/components/Approvals/TableWithActions.jsx","../src/components/Approvals/Approvers/index.jsx","../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(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Logger);\n this.init(concreteLogger, options);\n }\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread$6(_objectSpread$6({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }, {\n key: \"clone\",\n value: function clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n }]);\n return Logger;\n}();\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n this.observers = {};\n }\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n return matched;\n}\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n current = current[paths[i]];\n }\n return current;\n}\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n var _super = _createSuper$3(ResourceStore);\n function ResourceStore(data) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n _classCallCheck(this, ResourceStore);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n return _this;\n }\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$5(_objectSpread$5({}, pack), resources);\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$5(_objectSpread$5({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n var _super = _createSuper$2(Translator);\n function Translator(services) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Translator);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n if (key === undefined || key === null) {\n return false;\n }\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (_typeof(options) === 'object') options = _objectSpread$4({}, options);\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n if (returnDetails) {\n return {\n res: \"\".concat(namespace).concat(nsSeparator).concat(key),\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n if (returnDetails) {\n return {\n res: key,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return key;\n }\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$4(_objectSpread$4({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n return r;\n }\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$4(_objectSpread$4({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$4(_objectSpread$4({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$4(_objectSpread$4({}, options), {\n interpolation: _objectSpread$4(_objectSpread$4({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (!options.lng && this.options.compatibilityAPI !== 'v1' && resolved && resolved.res) options.lng = resolved.usedLng;\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n return null;\n }\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$4({\n i18nResolved: resolved\n }, options) : options, this);\n }\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n var extracted = _this4.extractFromKey(k, options);\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n var possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n }]);\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n return p.join('-');\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n var cleanedLng = _this.formatLanguageCode(code);\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n var lngOnly = _this.getLanguagePartFromCode(code);\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng === lngOnly) return supportedLng;\n if (supportedLng.indexOf('-') < 0 && lngOnly.indexOf('-') < 0) return;\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, PluralResolver);\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n this.rules = createRules();\n }\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (!rule) {\n return [];\n }\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n return this.getSuffixRetroCompatible(rule, count);\n }\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction deepFindWithDefaults(data, defaultData, key) {\n var keySeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '.';\n var ignoreJSONStructure = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var path = getPathWithDefaults(data, defaultData, key);\n if (!path && ignoreJSONStructure && typeof key === 'string') {\n path = deepFind(data, key, keySeparator);\n if (path === undefined) path = deepFind(defaultData, key, keySeparator);\n }\n return path;\n}\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Interpolator);\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n this.init(options);\n }\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = deepFindWithDefaults(data, defaultData, key, _this.options.keySeparator, _this.options.ignoreJSONStructure);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: key\n })) : path;\n }\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(deepFindWithDefaults(data, defaultData, k, _this.options.keySeparator, _this.options.ignoreJSONStructure), f, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: k\n }));\n };\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && Object.prototype.hasOwnProperty.call(options, matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n replaces++;\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n var clonedOptions;\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n var matchedSingleQuotes = optionsString.match(/'/g);\n var matchedDoubleQuotes = optionsString.match(/\"/g);\n if (matchedSingleQuotes && matchedSingleQuotes.length % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n delete clonedOptions.defaultValue;\n return key;\n }\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n clonedOptions = _objectSpread$3({}, options);\n clonedOptions = clonedOptions.replace && typeof clonedOptions.replace !== 'string' ? clonedOptions.replace : clonedOptions;\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n var doReduce = false;\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n }]);\n return Interpolator;\n}();\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\nfunction createCachedFormatter(fn) {\n var cache = {};\n return function invokeFormatter(val, lng, options) {\n var key = lng + JSON.stringify(options);\n var formatter = cache[key];\n if (!formatter) {\n formatter = fn(lng, options);\n cache[key] = formatter;\n }\n return formatter(val);\n };\n}\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Formatter);\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n currency: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2(_objectSpread$2({}, opt), {}, {\n style: 'currency'\n }));\n return function (val) {\n return formatter.format(val);\n };\n }),\n datetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.DateTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n relativetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.RelativeTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val, opt.range || 'day');\n };\n }),\n list: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.ListFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n })\n };\n this.init(options);\n }\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"addCached\",\n value: function addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng) {\n var _this = this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var formats = _format.split(this.formatSeparator);\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n if (_this.formats[formatName]) {\n var formatted = mem;\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$2(_objectSpread$2(_objectSpread$2({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n return mem;\n }, value);\n return result;\n }\n }]);\n return Formatter;\n}();\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n var _super = _createSuper$1(Connector);\n function Connector(backend, store, services) {\n var _this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n _classCallCheck(this, Connector);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n _this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n _this.state = {};\n _this.queue = [];\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n if (loadedKeys.length) {\n loadedKeys.forEach(function (n) {\n if (loaded[l][n] === undefined) loaded[l][n] = true;\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n this.readingCalls++;\n var resolver = function resolver(err, data) {\n _this3.readingCalls--;\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n if (err && data && tried < _this3.maxRetries) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n };\n var fc = this.backend[fcName].bind(this.backend);\n if (fc.length === 2) {\n try {\n var r = fc(lng, ns);\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return resolver(null, data);\n })[\"catch\"](resolver);\n } else {\n resolver(null, r);\n }\n } catch (err) {\n resolver(err);\n }\n return;\n }\n return fc(lng, ns, resolver);\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n var clb = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : function () {};\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend && this.backend.create) {\n var opts = _objectSpread$1(_objectSpread$1({}, options), {}, {\n isUpdate: isUpdate\n });\n var fc = this.backend.create.bind(this.backend);\n if (fc.length < 6) {\n try {\n var r;\n if (fc.length === 5) {\n r = fc(languages, namespace, key, fallbackValue, opts);\n } else {\n r = fc(languages, namespace, key, fallbackValue);\n }\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return clb(null, data);\n })[\"catch\"](clb);\n } else {\n clb(null, r);\n }\n } catch (err) {\n clb(err);\n }\n } else {\n fc(languages, namespace, key, fallbackValue, clb, opts);\n }\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n return options;\n}\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction noop() {}\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n var _super = _createSuper(I18n);\n function I18n() {\n var _this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n _classCallCheck(this, I18n);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!options.defaultNS && options.defaultNS !== false && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n var defOpts = get();\n this.options = _objectSpread(_objectSpread(_objectSpread({}, defOpts), this.options), transformOptions(options));\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread(_objectSpread({}, defOpts.interpolation), this.options.interpolation);\n }\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n var formatter;\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n if (s.languageDetector.init) s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n return _this2;\n };\n });\n var deferred = defer();\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n var append = function append(lng) {\n if (!lng) return;\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n _this4.setResolvedLanguage(l);\n };\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n _this4.translator.changeLanguage(l);\n _this4.isLanguageChangingTo = undefined;\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector && _this4.services.languageDetector.cacheUserLanguage) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n if (this.services.languageDetector.detect.length === 0) {\n this.services.languageDetector.detect().then(setLng);\n } else {\n this.services.languageDetector.detect(setLng);\n }\n } else {\n setLng(lng);\n }\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n var fixedT = function fixedT(key, opts) {\n var options;\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey;\n if (options.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(function (k) {\n return \"\".concat(options.keyPrefix).concat(keySeparator).concat(k);\n });\n } else {\n resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n }\n return _this5.t(resultKey, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n var lng = options.lng || this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n var deferred = defer();\n if (!this.options.ns) {\n if (callback) callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n var languageUtils = this.services && this.services.languageUtils || new LanguageUtil(get());\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var mergedOptions = _objectSpread(_objectSpread(_objectSpread({}, this.options), options), {\n isClone: true\n });\n var clone = new I18n(mergedOptions);\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n return I18n;\n}(EventEmitter);\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar dir = instance.dir;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport { changeLanguage, createInstance, instance as default, dir, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\n\nvar arr = [];\nvar each = arr.forEach;\nvar slice = arr.slice;\nfunction defaults(obj) {\n each.call(slice.call(arguments, 1), function (source) {\n if (source) {\n for (var prop in source) {\n if (obj[prop] === undefined) obj[prop] = source[prop];\n }\n }\n });\n return obj;\n}\n\n// eslint-disable-next-line no-control-regex\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\nvar serializeCookie = function serializeCookie(name, val, options) {\n var opt = options || {};\n opt.path = opt.path || '/';\n var value = encodeURIComponent(val);\n var str = \"\".concat(name, \"=\").concat(value);\n if (opt.maxAge > 0) {\n var maxAge = opt.maxAge - 0;\n if (Number.isNaN(maxAge)) throw new Error('maxAge should be a Number');\n str += \"; Max-Age=\".concat(Math.floor(maxAge));\n }\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n str += \"; Domain=\".concat(opt.domain);\n }\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n str += \"; Path=\".concat(opt.path);\n }\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n str += \"; Expires=\".concat(opt.expires.toUTCString());\n }\n if (opt.httpOnly) str += '; HttpOnly';\n if (opt.secure) str += '; Secure';\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string' ? opt.sameSite.toLowerCase() : opt.sameSite;\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n return str;\n};\nvar cookie = {\n create: function create(name, value, minutes, domain) {\n var cookieOptions = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n path: '/',\n sameSite: 'strict'\n };\n if (minutes) {\n cookieOptions.expires = new Date();\n cookieOptions.expires.setTime(cookieOptions.expires.getTime() + minutes * 60 * 1000);\n }\n if (domain) cookieOptions.domain = domain;\n document.cookie = serializeCookie(name, encodeURIComponent(value), cookieOptions);\n },\n read: function read(name) {\n var nameEQ = \"\".concat(name, \"=\");\n var ca = document.cookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) === ' ') {\n c = c.substring(1, c.length);\n }\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\n }\n return null;\n },\n remove: function remove(name) {\n this.create(name, '', -1);\n }\n};\nvar cookie$1 = {\n name: 'cookie',\n lookup: function lookup(options) {\n var found;\n if (options.lookupCookie && typeof document !== 'undefined') {\n var c = cookie.read(options.lookupCookie);\n if (c) found = c;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupCookie && typeof document !== 'undefined') {\n cookie.create(options.lookupCookie, lng, options.cookieMinutes, options.cookieDomain, options.cookieOptions);\n }\n }\n};\n\nvar querystring = {\n name: 'querystring',\n lookup: function lookup(options) {\n var found;\n if (typeof window !== 'undefined') {\n var search = window.location.search;\n if (!window.location.search && window.location.hash && window.location.hash.indexOf('?') > -1) {\n search = window.location.hash.substring(window.location.hash.indexOf('?'));\n }\n var query = search.substring(1);\n var params = query.split('&');\n for (var i = 0; i < params.length; i++) {\n var pos = params[i].indexOf('=');\n if (pos > 0) {\n var key = params[i].substring(0, pos);\n if (key === options.lookupQuerystring) {\n found = params[i].substring(pos + 1);\n }\n }\n }\n }\n return found;\n }\n};\n\nvar hasLocalStorageSupport = null;\nvar localStorageAvailable = function localStorageAvailable() {\n if (hasLocalStorageSupport !== null) return hasLocalStorageSupport;\n try {\n hasLocalStorageSupport = window !== 'undefined' && window.localStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.localStorage.setItem(testKey, 'foo');\n window.localStorage.removeItem(testKey);\n } catch (e) {\n hasLocalStorageSupport = false;\n }\n return hasLocalStorageSupport;\n};\nvar localStorage = {\n name: 'localStorage',\n lookup: function lookup(options) {\n var found;\n if (options.lookupLocalStorage && localStorageAvailable()) {\n var lng = window.localStorage.getItem(options.lookupLocalStorage);\n if (lng) found = lng;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupLocalStorage && localStorageAvailable()) {\n window.localStorage.setItem(options.lookupLocalStorage, lng);\n }\n }\n};\n\nvar hasSessionStorageSupport = null;\nvar sessionStorageAvailable = function sessionStorageAvailable() {\n if (hasSessionStorageSupport !== null) return hasSessionStorageSupport;\n try {\n hasSessionStorageSupport = window !== 'undefined' && window.sessionStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.sessionStorage.setItem(testKey, 'foo');\n window.sessionStorage.removeItem(testKey);\n } catch (e) {\n hasSessionStorageSupport = false;\n }\n return hasSessionStorageSupport;\n};\nvar sessionStorage = {\n name: 'sessionStorage',\n lookup: function lookup(options) {\n var found;\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n var lng = window.sessionStorage.getItem(options.lookupSessionStorage);\n if (lng) found = lng;\n }\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n window.sessionStorage.setItem(options.lookupSessionStorage, lng);\n }\n }\n};\n\nvar navigator$1 = {\n name: 'navigator',\n lookup: function lookup(options) {\n var found = [];\n if (typeof navigator !== 'undefined') {\n if (navigator.languages) {\n // chrome only; not an array, so can't use .push.apply instead of iterating\n for (var i = 0; i < navigator.languages.length; i++) {\n found.push(navigator.languages[i]);\n }\n }\n if (navigator.userLanguage) {\n found.push(navigator.userLanguage);\n }\n if (navigator.language) {\n found.push(navigator.language);\n }\n }\n return found.length > 0 ? found : undefined;\n }\n};\n\nvar htmlTag = {\n name: 'htmlTag',\n lookup: function lookup(options) {\n var found;\n var htmlTag = options.htmlTag || (typeof document !== 'undefined' ? document.documentElement : null);\n if (htmlTag && typeof htmlTag.getAttribute === 'function') {\n found = htmlTag.getAttribute('lang');\n }\n return found;\n }\n};\n\nvar path = {\n name: 'path',\n lookup: function lookup(options) {\n var found;\n if (typeof window !== 'undefined') {\n var language = window.location.pathname.match(/\\/([a-zA-Z-]*)/g);\n if (language instanceof Array) {\n if (typeof options.lookupFromPathIndex === 'number') {\n if (typeof language[options.lookupFromPathIndex] !== 'string') {\n return undefined;\n }\n found = language[options.lookupFromPathIndex].replace('/', '');\n } else {\n found = language[0].replace('/', '');\n }\n }\n }\n return found;\n }\n};\n\nvar subdomain = {\n name: 'subdomain',\n lookup: function lookup(options) {\n // If given get the subdomain index else 1\n var lookupFromSubdomainIndex = typeof options.lookupFromSubdomainIndex === 'number' ? options.lookupFromSubdomainIndex + 1 : 1;\n // get all matches if window.location. is existing\n // first item of match is the match itself and the second is the first group macht which sould be the first subdomain match\n // is the hostname no public domain get the or option of localhost\n var language = typeof window !== 'undefined' && window.location && window.location.hostname && window.location.hostname.match(/^(\\w{2,5})\\.(([a-z0-9-]{1,63}\\.[a-z]{2,6})|localhost)/i);\n\n // if there is no match (null) return undefined\n if (!language) return undefined;\n // return the given group match\n return language[lookupFromSubdomainIndex];\n }\n};\n\nfunction getDefaults() {\n return {\n order: ['querystring', 'cookie', 'localStorage', 'sessionStorage', 'navigator', 'htmlTag'],\n lookupQuerystring: 'lng',\n lookupCookie: 'i18next',\n lookupLocalStorage: 'i18nextLng',\n lookupSessionStorage: 'i18nextLng',\n // cache user language\n caches: ['localStorage'],\n excludeCacheFor: ['cimode']\n // cookieMinutes: 10,\n // cookieDomain: 'myDomain'\n };\n}\nvar Browser = /*#__PURE__*/function () {\n function Browser(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Browser);\n this.type = 'languageDetector';\n this.detectors = {};\n this.init(services, options);\n }\n _createClass(Browser, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n this.services = services;\n this.options = defaults(options, this.options || {}, getDefaults());\n\n // backwards compatibility\n if (this.options.lookupFromUrlIndex) this.options.lookupFromPathIndex = this.options.lookupFromUrlIndex;\n this.i18nOptions = i18nOptions;\n this.addDetector(cookie$1);\n this.addDetector(querystring);\n this.addDetector(localStorage);\n this.addDetector(sessionStorage);\n this.addDetector(navigator$1);\n this.addDetector(htmlTag);\n this.addDetector(path);\n this.addDetector(subdomain);\n }\n }, {\n key: \"addDetector\",\n value: function addDetector(detector) {\n this.detectors[detector.name] = detector;\n }\n }, {\n key: \"detect\",\n value: function detect(detectionOrder) {\n var _this = this;\n if (!detectionOrder) detectionOrder = this.options.order;\n var detected = [];\n detectionOrder.forEach(function (detectorName) {\n if (_this.detectors[detectorName]) {\n var lookup = _this.detectors[detectorName].lookup(_this.options);\n if (lookup && typeof lookup === 'string') lookup = [lookup];\n if (lookup) detected = detected.concat(lookup);\n }\n });\n if (this.services.languageUtils.getBestMatchFromCodes) return detected; // new i18next v19.5.0\n return detected.length > 0 ? detected[0] : null; // a little backward compatibility\n }\n }, {\n key: \"cacheUserLanguage\",\n value: function cacheUserLanguage(lng, caches) {\n var _this2 = this;\n if (!caches) caches = this.options.caches;\n if (!caches) return;\n if (this.options.excludeCacheFor && this.options.excludeCacheFor.indexOf(lng) > -1) return;\n caches.forEach(function (cacheName) {\n if (_this2.detectors[cacheName]) _this2.detectors[cacheName].cacheUserLanguage(lng, _this2.options);\n });\n }\n }]);\n return Browser;\n}();\nBrowser.type = 'languageDetector';\n\nexport { Browser as default };\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","/**\n * This file automatically generated from `pre-publish.js`.\n * Do not manually edit.\n */\n\nmodule.exports = {\n \"area\": true,\n \"base\": true,\n \"br\": true,\n \"col\": true,\n \"embed\": true,\n \"hr\": true,\n \"img\": true,\n \"input\": true,\n \"link\": true,\n \"meta\": true,\n \"param\": true,\n \"source\": true,\n \"track\": true,\n \"wbr\": true\n};\n","import e from\"void-elements\";var t=/\\s([^'\"/\\s><]+?)[\\s/>]|([^\\s=]+)=\\s?(\".*?\"|'.*?')/g;function n(n){var r={type:\"tag\",name:\"\",voidElement:!1,attrs:{},children:[]},i=n.match(/<\\/?([^\\s]+?)[/\\s>]/);if(i&&(r.name=i[1],(e[i[1]]||\"/\"===n.charAt(n.length-2))&&(r.voidElement=!0),r.name.startsWith(\"!--\"))){var s=n.indexOf(\"--\\x3e\");return{type:\"comment\",comment:-1!==s?n.slice(4,s):\"\"}}for(var a=new RegExp(t),c=null;null!==(c=a.exec(n));)if(c[0].trim())if(c[1]){var o=c[1].trim(),l=[o,\"\"];o.indexOf(\"=\")>-1&&(l=o.split(\"=\")),r.attrs[l[0]]=l[1],a.lastIndex--}else c[2]&&(r.attrs[c[2]]=c[3].trim().substring(1,c[3].length-1));return r}var r=/<[a-zA-Z0-9\\-\\!\\/](?:\"[^\"]*\"|'[^']*'|[^'\">])*>/g,i=/^\\s*$/,s=Object.create(null);function a(e,t){switch(t.type){case\"text\":return e+t.content;case\"tag\":return e+=\"<\"+t.name+(t.attrs?function(e){var t=[];for(var n in e)t.push(n+'=\"'+e[n]+'\"');return t.length?\" \"+t.join(\" \"):\"\"}(t.attrs):\"\")+(t.voidElement?\"/>\":\">\"),t.voidElement?e:e+t.children.reduce(a,\"\")+\"</\"+t.name+\">\";case\"comment\":return e+\"\\x3c!--\"+t.comment+\"--\\x3e\"}}var c={parse:function(e,t){t||(t={}),t.components||(t.components=s);var a,c=[],o=[],l=-1,m=!1;if(0!==e.indexOf(\"<\")){var u=e.indexOf(\"<\");c.push({type:\"text\",content:-1===u?e:e.substring(0,u)})}return e.replace(r,function(r,s){if(m){if(r!==\"</\"+a.name+\">\")return;m=!1}var u,f=\"/\"!==r.charAt(1),h=r.startsWith(\"\\x3c!--\"),p=s+r.length,d=e.charAt(p);if(h){var v=n(r);return l<0?(c.push(v),c):((u=o[l]).children.push(v),c)}if(f&&(l++,\"tag\"===(a=n(r)).type&&t.components[a.name]&&(a.type=\"component\",m=!0),a.voidElement||m||!d||\"<\"===d||a.children.push({type:\"text\",content:e.slice(p,e.indexOf(\"<\",p))}),0===l&&c.push(a),(u=o[l-1])&&u.children.push(a),o[l]=a),(!f||a.voidElement)&&(l>-1&&(a.voidElement||a.name===r.slice(2,-1))&&(l--,a=-1===l?c:o[l]),!m&&\"<\"!==d&&d)){u=-1===l?c:o[l].children;var x=e.indexOf(\"<\",p),g=e.slice(p,-1===x?void 0:x);i.test(g)&&(g=\" \"),(x>-1&&l+u.length>=0||\" \"!==g)&&u.push({type:\"text\",content:g})}}),c},stringify:function(e){return e.reduce(function(e,t){return e+a(\"\",t)},\"\")}};export default c;\n//# sourceMappingURL=html-parse-stringify.module.js.map\n","/**\n * Copyright (C) 2017-present by Andrea Giammarchi - @WebReflection\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\nvar replace = ''.replace;\n\nvar ca = /[&<>'\"]/g;\nvar es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;\n\nvar esca = {\n '&': '&',\n '<': '<',\n '>': '>',\n \"'\": ''',\n '\"': '"'\n};\nvar unes = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"'\n};\n\nexport function escape(es) {\n return replace.call(es, ca, pe);\n};\n\nexport function unescape(un) {\n return replace.call(un, es, cape);\n};\n\nfunction pe(m) {\n return esca[m];\n}\n\nfunction cape(m) {\n return unes[m];\n}\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport React from 'react';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true\n};\nvar i18nInstance;\nexport var I18nContext = React.createContext();\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n\n this.usedNamespaces = {};\n }\n\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n\n return ReportNamespaces;\n}();\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","export function warn() {\n if (console && console.warn) {\n var _console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (typeof args[0] === 'string') args[0] = \"react-i18next:: \".concat(args[0]);\n\n (_console = console).warn.apply(_console, args);\n }\n}\nvar alreadyWarned = {};\nexport function warnOnce() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (typeof args[0] === 'string' && alreadyWarned[args[0]]) return;\n if (typeof args[0] === 'string') alreadyWarned[args[0]] = new Date();\n warn.apply(void 0, args);\n}\nexport function loadNamespaces(i18n, ns, cb) {\n i18n.loadNamespaces(ns, function () {\n if (i18n.isInitialized) {\n cb();\n } else {\n var initialized = function initialized() {\n setTimeout(function () {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n\n i18n.on('initialized', initialized);\n }\n });\n}\n\nfunction oldI18nextHasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var lng = i18n.languages[0];\n var fallbackLng = i18n.options ? i18n.options.fallbackLng : false;\n var lastLng = i18n.languages[i18n.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = i18n.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18n.services.backendConnector.backend && i18n.isLanguageChangingTo && !loadNotPending(i18n.isLanguageChangingTo, ns)) return false;\n if (i18n.hasResourceBundle(lng, ns)) return true;\n if (!i18n.services.backendConnector.backend || i18n.options.resources && !i18n.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n}\n\nexport function hasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce('i18n.languages were undefined or empty', i18n.languages);\n return true;\n }\n\n var isNewerI18next = i18n.options.ignoreJSONStructure !== undefined;\n\n if (!isNewerI18next) {\n return oldI18nextHasLoadedNamespace(ns, i18n, options);\n }\n\n return i18n.hasLoadedNamespace(ns, {\n precheck: function precheck(i18nInstance, loadNotPending) {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n}\nexport function getDisplayName(Component) {\n return Component.displayName || Component.name || (typeof Component === 'string' && Component.length > 0 ? Component : 'Unknown');\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nvar _excluded = [\"format\"],\n _excluded2 = [\"children\", \"count\", \"parent\", \"i18nKey\", \"context\", \"tOptions\", \"values\", \"defaults\", \"components\", \"ns\", \"i18n\", \"t\", \"shouldUnescape\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport React, { useContext } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { unescape } from 'html-escaper';\nimport { getI18n, I18nContext, getDefaults } from './context';\nimport { warn, warnOnce } from './utils';\n\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n var base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\n\nfunction getChildren(node) {\n if (!node) return [];\n return node && node.children ? node.children : node.props && node.props.children;\n}\n\nfunction hasValidReactChildren(children) {\n if (Object.prototype.toString.call(children) !== '[object Array]') return false;\n return children.every(function (child) {\n return React.isValidElement(child);\n });\n}\n\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\n\nfunction mergeProps(source, target) {\n var newTarget = _objectSpread({}, target);\n\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\n\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n var stringNode = '';\n var childrenArray = getAsArray(children);\n var keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach(function (child, childIndex) {\n if (typeof child === 'string') {\n stringNode += \"\".concat(child);\n } else if (React.isValidElement(child)) {\n var childPropsCount = Object.keys(child.props).length;\n var shouldKeepChild = keepArray.indexOf(child.type) > -1;\n var childChildren = child.props.children;\n\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += \"<\".concat(child.type, \"/>\");\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += \"<\".concat(childIndex, \"></\").concat(childIndex, \">\");\n } else if (child.props.i18nIsDynamicList) {\n stringNode += \"<\".concat(childIndex, \"></\").concat(childIndex, \">\");\n } else if (shouldKeepChild && childPropsCount === 1 && typeof childChildren === 'string') {\n stringNode += \"<\".concat(child.type, \">\").concat(childChildren, \"</\").concat(child.type, \">\");\n } else {\n var content = nodesToString(childChildren, i18nOptions);\n stringNode += \"<\".concat(childIndex, \">\").concat(content, \"</\").concat(childIndex, \">\");\n }\n } else if (child === null) {\n warn(\"Trans: the passed in value is invalid - seems you passed in a null child.\");\n } else if (_typeof(child) === 'object') {\n var format = child.format,\n clone = _objectWithoutProperties(child, _excluded);\n\n var keys = Object.keys(clone);\n\n if (keys.length === 1) {\n var value = format ? \"\".concat(keys[0], \", \").concat(format) : keys[0];\n stringNode += \"{{\".concat(value, \"}}\");\n } else {\n warn(\"react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.\", child);\n }\n } else {\n warn(\"Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.\", child);\n }\n });\n return stringNode;\n}\n\nfunction renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, shouldUnescape) {\n if (targetString === '') return [];\n var keepArray = i18nOptions.transKeepBasicHtmlNodesFor || [];\n var emptyChildrenButNeedsHandling = targetString && new RegExp(keepArray.join('|')).test(targetString);\n if (!children && !emptyChildrenButNeedsHandling) return [targetString];\n var data = {};\n\n function getData(childs) {\n var childrenArray = getAsArray(childs);\n childrenArray.forEach(function (child) {\n if (typeof child === 'string') return;\n if (hasChildren(child)) getData(getChildren(child));else if (_typeof(child) === 'object' && !React.isValidElement(child)) Object.assign(data, child);\n });\n }\n\n getData(children);\n var ast = HTML.parse(\"<0>\".concat(targetString, \"</0>\"));\n\n var opts = _objectSpread(_objectSpread({}, data), combinedTOpts);\n\n function renderInner(child, node, rootReactNode) {\n var childs = getChildren(child);\n var mappedChildren = mapAST(childs, node.children, rootReactNode);\n return hasValidReactChildren(childs) && mappedChildren.length === 0 ? childs : mappedChildren;\n }\n\n function pushTranslatedJSX(child, inner, mem, i, isVoid) {\n if (child.dummy) child.children = inner;\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), isVoid ? undefined : inner));\n }\n\n function mapAST(reactNode, astNode, rootReactNode) {\n var reactNodes = getAsArray(reactNode);\n var astNodes = getAsArray(astNode);\n return astNodes.reduce(function (mem, node, i) {\n var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n\n if (node.type === 'tag') {\n var tmp = reactNodes[parseInt(node.name, 10)];\n if (!tmp && rootReactNode.length === 1 && rootReactNode[0][node.name]) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n var child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n var isElement = React.isValidElement(child);\n var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && _typeof(child) === 'object' && child.dummy && !isElement;\n var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n\n if (typeof child === 'string') {\n var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n var inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n var _inner = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), _inner));\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n var _inner2 = renderInner(child, node, rootReactNode);\n\n pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(React.createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }));\n } else {\n var _inner3 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(React.createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _inner3));\n }\n } else if (node.voidElement) {\n mem.push(\"<\".concat(node.name, \" />\"));\n } else {\n var _inner4 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(\"<\".concat(node.name, \">\").concat(_inner4, \"</\").concat(node.name, \">\"));\n }\n } else if (_typeof(child) === 'object' && !isElement) {\n var content = node.children[0] ? translationContent : null;\n if (content) mem.push(content);\n } else if (node.children.length === 1 && translationContent) {\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), translationContent));\n } else {\n mem.push(React.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n })));\n }\n } else if (node.type === 'text') {\n var wrapTextNodes = i18nOptions.transWrapTextNodes;\n\n var _content = shouldUnescape ? unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n\n if (wrapTextNodes) {\n mem.push(React.createElement(wrapTextNodes, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _content));\n } else {\n mem.push(_content);\n }\n }\n\n return mem;\n }, []);\n }\n\n var result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\n\nexport function Trans(_ref) {\n var children = _ref.children,\n count = _ref.count,\n parent = _ref.parent,\n i18nKey = _ref.i18nKey,\n context = _ref.context,\n _ref$tOptions = _ref.tOptions,\n tOptions = _ref$tOptions === void 0 ? {} : _ref$tOptions,\n values = _ref.values,\n defaults = _ref.defaults,\n components = _ref.components,\n ns = _ref.ns,\n i18nFromProps = _ref.i18n,\n tFromProps = _ref.t,\n shouldUnescape = _ref.shouldUnescape,\n additionalProps = _objectWithoutProperties(_ref, _excluded2);\n\n var _ref2 = useContext(I18nContext) || {},\n i18nFromContext = _ref2.i18n,\n defaultNSFromContext = _ref2.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n\n var t = tFromProps || i18n.t.bind(i18n) || function (k) {\n return k;\n };\n\n if (context) tOptions.context = context;\n\n var reactI18nextOptions = _objectSpread(_objectSpread({}, getDefaults()), i18n.options && i18n.options.react);\n\n var namespaces = ns || t.ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n var defaultValue = defaults || nodesToString(children, reactI18nextOptions) || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n var hashTransKey = reactI18nextOptions.hashTransKey;\n var key = i18nKey || (hashTransKey ? hashTransKey(defaultValue) : defaultValue);\n var interpolationOverride = values ? tOptions.interpolation : {\n interpolation: _objectSpread(_objectSpread({}, tOptions.interpolation), {}, {\n prefix: '#$?',\n suffix: '?$#'\n })\n };\n\n var combinedTOpts = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, tOptions), {}, {\n count: count\n }, values), interpolationOverride), {}, {\n defaultValue: defaultValue,\n ns: namespaces\n });\n\n var translation = key ? t(key, combinedTOpts) : defaultValue;\n var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? React.createElement(useAsParent, additionalProps, content) : content;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils';\nexport function useTranslation(ns) {\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nFromProps = props.i18n;\n\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n,\n defaultNSFromContext = _ref.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n\n var notReadyT = function notReadyT(k) {\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n\n var retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n\n var i18nOptions = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), i18n.options.react), props);\n\n var useSuspense = i18nOptions.useSuspense,\n keyPrefix = i18nOptions.keyPrefix;\n var namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n var ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(function (n) {\n return hasLoadedNamespace(n, i18n, i18nOptions);\n });\n\n function getT() {\n return i18n.getFixedT(null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n\n var _useState = useState(getT),\n _useState2 = _slicedToArray(_useState, 2),\n t = _useState2[0],\n setT = _useState2[1];\n\n var isMounted = useRef(true);\n useEffect(function () {\n var bindI18n = i18nOptions.bindI18n,\n bindI18nStore = i18nOptions.bindI18nStore;\n isMounted.current = true;\n\n if (!ready && !useSuspense) {\n loadNamespaces(i18n, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n }\n\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return function () {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(function (e) {\n return i18n.off(e, boundReset);\n });\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(function (e) {\n return i18n.store.off(e, boundReset);\n });\n };\n }, [i18n, namespaces.join()]);\n var isInitial = useRef(true);\n useEffect(function () {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n\n isInitial.current = false;\n }, [i18n]);\n var ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(function (resolve) {\n loadNamespaces(i18n, namespaces, function () {\n resolve();\n });\n });\n}","import i18n from \"i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\nimport { initReactI18next } from \"react-i18next\";\nimport { en, fr } from \"translations\";\n\ni18n\n .use(LanguageDetector)\n .use(initReactI18next)\n .init({\n resources: {\n en: { translation: en },\n fr: { translation: fr },\n },\n fallbackLng: \"en\",\n detection: { order: [\"navigator\"] },\n });\n\nexport default i18n;\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export const BASE_URL = \"neeto_approvals\";\nexport const TEMPLATE_URL = `${BASE_URL}/templates`;\n\nexport const routes = {\n home: \"/\",\n approvals: \"/approvals/\",\n approvers: \"approvers\",\n pending: \"pending\",\n history: \"history\",\n templates: {\n index: \"templates\",\n new: \"templates/new\",\n edit: \"templates/:id/edit\",\n },\n public: \"approvals/public/request/:id\",\n};\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const URL_PARAMS = new URLSearchParams(window.location.search);\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_PAGE_SIZE = 8;\n\nexport const DEFAULT_FILTER_VALUES = {\n search: \"\",\n sortBy: \"\",\n sortDirection: \"\",\n};\n\nexport const SEARCH_DELAY = 750;\n\nexport const STATUSES = {\n approved: \"approved\",\n rejected: \"rejected\",\n pending: \"pending\",\n cancelled: \"cancelled\",\n};\n\nexport const STATUS_TAG_STYLE = {\n pending: \"primary\",\n approved: \"success\",\n rejected: \"danger\",\n cancelled: \"warning\",\n};\n\nexport const APPROVAL_REQUEST_FORM_INITIAL_VALUES = {\n message: \"\",\n variables: [],\n};\n\nexport const APPROVAL_REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({\n variables: yup.array().of(\n yup.object().shape({\n variable: yup\n .string()\n .trim()\n .required(\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.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(\"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.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 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 sortDirection: 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.search && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper\n className=\"mt-12\"\n hasPagination={totalCount > pageProperties.size}\n >\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 </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 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(\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 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 { 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 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(\"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 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(\"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 { 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(\"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 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(\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 => 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 { 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 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(\"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","_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","capitalize","ownKeys$3","_objectSpread$3","ownKeys$2","_objectSpread$2","ownKeys$1","_objectSpread$1","ownKeys","_objectSpread","noop","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","buttonProps","icon","MenuHorizontal","position","strategy","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","TableWrapper","hasPagination","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","curryN","isNil","either","complement","curry","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","createdAt","dateFormat","fromNow","MemoizedEditorContent","EditorContent","ApprovalsDetails","_window$globalProps","_window$globalProps$u","_ref$isPending","isPending","_ref$onSubmit","_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","../node_modules/@bigbinary/neeto-cist/index.js","../src/common/utils.js","../src/common/constants.js","../src/apis/requests.js","../src/common/queryConstants.js","../src/hooks/reactQuery/requests/useRequestsApi.js","../src/hooks/useUrlSearchParams.js","../src/hooks/usePaginate.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","../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/apis/templates.js","../src/hooks/reactQuery/templates/useTemplatesApi.js","../src/apis/approvers.js","../src/hooks/reactQuery/approvers/useApproversApi.js","../src/components/Approvals/Templates/constants.js","../src/components/Approvals/Templates/MessageEditor.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/utils.jsx","../src/components/Approvals/TableWithActions.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 routes = {\n home: \"/\",\n approvals: \"/approvals/\",\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\";\n\nexport const URL_PARAMS = new URLSearchParams(window.location.search);\n\nexport const DEFAULT_RADIX = 10;\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 additionalInfo: \"\",\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 { 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 { 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","export const MANAGE_MEMBER_PERMISSIONS = [\n \"members.manage_members\",\n \"agents.manage_agents\",\n];\nexport const DEFAULT_PERMISSION = true; // Until we add permission prop to all neeto apps, this is the default permission.\n\nexport const BASE_URL = \"neeto_approvals\";\nexport const TEMPLATE_URL = `${BASE_URL}/templates`;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"common/constants\";\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","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 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 { 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, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useHistory } from \"react-router-dom\";\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 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});\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 additionalInfo,\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 {additionalInfo && (\n <div className=\"w-full space-y-2\">\n <Label>{t(\"neetoApprovals.inputs.labels.additionalInfo\")}</Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 p-4\"\n content={additionalInfo}\n />\n </div>\n )}\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 { DEFAULT_PAGE_SIZE, 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 { DEFAULT_FILTER_VALUES, SEARCH_DELAY, STATUSES } 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 { DEFAULT_PAGE_SIZE, 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 { DEFAULT_FILTER_VALUES, SEARCH_DELAY, STATUSES } 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","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 axios from \"axios\";\n\nimport { BASE_URL, TEMPLATE_URL } from \"common/constants\";\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 axios from \"axios\";\n\nimport { BASE_URL } from \"common/constants\";\n\nconst fetch = params => axios.get(`${BASE_URL}/approvers`, { params });\n\nconst approversApi = { fetch };\n\nexport default approversApi;\n","import { 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\nexport { useFetchApprovers };\n","import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n approver: \"\",\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});\n","import React from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport { FormikEditor } from \"neetoeditor\";\n\nconst MessageEditor = withT(({ t, placeholders = [] }) => (\n <FormikEditor\n required\n label={t(\"neetoApprovals.inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={placeholders}\n placeholder={t(\"neetoApprovals.inputs.placeholders.enter_\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n })}\n />\n));\n\nexport default MessageEditor;\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 TEMPLATE_FORM_INITIAL_VALUES,\n TEMPLATE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport MessageEditor from \"./MessageEditor\";\n\nconst Form = ({\n isOpen,\n onClose,\n initialData = {},\n onSubmit = noop,\n isLoading = false,\n placeholders,\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.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR).toLocaleLowerCase(),\n })\n : t(\"neetoApprovals.common.edit_\", {\n what: t(\"neetoApprovals.common.template\", 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 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 </div>\n <MessageEditor {...{ placeholders }} />\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","export const buildTemplatePayload = template => {\n const { approver } = template;\n\n const payload = {\n template: { ...template, approverId: approver.value },\n };\n\n return payload;\n};\n\nexport const generateInitialData = template => ({\n ...template,\n approver: {\n label: template.approverName,\n value: template.approverId,\n },\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 = ({ templateUrl, isOpen, onClose, templatePlaceholders }) => {\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\n placeholders={templatePlaceholders}\n {...{ isLoading, isOpen, onClose, onSubmit }}\n />\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 templateUrl,\n template,\n setTemplate,\n isOpen,\n onClose,\n templatePlaceholders,\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 placeholders={templatePlaceholders}\n {...{ isOpen, onClose, onSubmit }}\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\nconst MemoizedEditorContent = React.memo(EditorContent);\n\nconst TemplateDetails = ({ isOpen, onClose, template }) => {\n const { t } = useTranslation();\n const { name, description, approverName, message } = 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 <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 { SINGULAR } from \"neetocommons/constants\";\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: \"approverName\",\n key: \"approverName\",\n title: i18next.t(\"neetoApprovals.common.approver\", SINGULAR),\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 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 { DEFAULT_PAGE_SIZE, 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\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.addNew_\", {\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, { 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 {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n },\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 History from \"./History\";\nimport PendingRequests from \"./PendingRequests\";\nimport Templates from \"./Templates\";\n\nexport const createRoutes = ({\n config,\n filters,\n isNewTemplatePaneOpen,\n setFilters,\n setIsNewTemplatePaneOpen,\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.addNew_\", {\n what: t(\n \"neetoApprovals.common.template\",\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\";\n\nimport { BASE_URL } from \"common/constants\";\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\n const appRoutes = createRoutes({\n config,\n filters,\n isNewTemplatePaneOpen,\n setFilters,\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 { SINGULAR } from \"neetocommons/constants\";\nimport { findById } from \"neetocommons/pure\";\nimport { EditorContent, FormikEditor } from \"neetoeditor\";\nimport { Pane, Button, Typography, Select, Label } from \"neetoui\";\nimport { Form as FormikForm } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTemplates } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport { APPROVAL_REQUEST_FORM_INITIAL_VALUES } from \"./constants\";\n\nconst Form = ({\n isOpen,\n setIsPaneOpen,\n onSubmit,\n isLoading,\n requestableId = \"\",\n}) => {\n const [selectedTemplateData, setSelectedTemplateData] = useState({});\n const { t } = useTranslation();\n\n const { data: { templates = [] } = {} } = useFetchTemplates({\n requestableId,\n });\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.parsedMessage || template.message);\n };\n\n const onClose = () => {\n setIsPaneOpen(false);\n setSelectedTemplateData({});\n };\n\n const handleSubmit = values =>\n onSubmit(values, selectedTemplateData, onClose);\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 }}\n >\n {({ setFieldValue, 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 {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 name=\"message\"\n content={\n selectedTemplateData?.parsedMessage ||\n selectedTemplateData?.message\n }\n />\n </div>\n )}\n <FormikEditor\n label={t(\"neetoApprovals.inputs.labels.additionalInfo\")}\n name=\"additionalInfo\"\n rows={3}\n placeholder={t(\"neetoApprovals.inputs.placeholders.enter_\", {\n what: t(\n \"neetoApprovals.inputs.labels.additionalInfo\"\n )?.toLocaleLowerCase(),\n })}\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/constants\";\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","routes","home","approvals","pending","history","templates","index","edit","URLSearchParams","window","location","search","DEFAULT_FILTER_VALUES","searchTerm","sortBy","orderBy","SEARCH_DELAY","STATUSES","approved","rejected","cancelled","STATUS_TAG_STYLE","APPROVAL_REQUEST_FORM_INITIAL_VALUES","message","additionalInfo","STATUS_UPDATED_BY","t","curryN","isNil","either","isEmpty","complement","curry","handleEmptyPage","data","pageProperties","handleTablePagination","page","pageSize","BASE_URL","TEMPLATE_URL","concat","fetch","params","url","axios","get","update","_ref","id","payload","put","request","requestsApi","QUERY_KEYS","APPROVERS","TEMPLATES","REQUESTS","SHOW_TEMPLATE","SHOW_PUBLIC_REQUEST","VIEWS","useFetchRequests","requestUrl","_ref$params","_ref$options","options","useQuery","_objectSpread","select","response","keepPreviousData","onSuccess","_ref2","_options$onSuccess","requests","call","useUpdateRequest","useMutationWithInvalidation","keysToInvalidate","useUrlSearchParams","_useLocation","useLocation","useMemo","usePaginate","urlParams","_useState","useState","Number","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","_useState2","setPageProperties","useHistory","useCallback","set","push","toString","useEffect","dayjs","extend","utc","timezone","updateApprovalDetails","requestsData","approvalDetails","isPresent","findBy","timeInZone","time","_globalProps$user","_globalProps$user2","globalProps","user","timeZone","tz","setDefault","getApprovalFilter","PENDING","label","value","PLURAL","HISTORY","HISTORY_TABLE_COLUMNS","dataIndex","key","sorter","width","title","render","approvalLabel","requestableUrl","URL","origin","React","createElement","Button","style","to","pathname","status","Tag","capitalize","createdAt","dateFormat","fromNow","MemoizedEditorContent","memo","EditorContent","ApprovalsDetails","_window$globalProps","_window$globalProps$u","_t","isOpen","onClose","_ref$isPending","isPending","_ref$onSubmit","onSubmit","noop","_ref$isLoading","isLoading","_useTranslation","useTranslation","_approvalDetails$stat","approverName","approverEmail","_approvalDetails$note","note","initialNote","requesterName","requesterEmail","setNote","requesterOrApproverDetails","isCurrentUserApprover","email","getStatusLabel","handleOnClose","handleSubmit","approvedAt","Date","Pane","size","Header","className","Typography","Body","Label","extended","content","Textarea","disabled","placeholder","what","toLocaleLowerCase","onChange","withEventTargetValue","Footer","loading","type","onClick","History","filters","setFilters","debouncedSearchTerm","useDebounce","_usePaginate","_useState3","_useState4","setApprovalDetails","_useFetchRequests","trim","_useFetchRequests$dat","_useFetchRequests$dat2","_useFetchRequests$dat3","approvalHistories","_useFetchRequests$dat4","totalCount","handleTableChange","_","__","camelToSnakeCase","field","order","Fragment","Table","allowRowClick","fixedHeight","columnData","currentPageNumber","defaultPageSize","rowData","handlePageChange","paginationProps","hideOnSinglePage","length","onRowClick","NoData","PENDING_TABLE_COLUMNS","removeBy","PendingRequests","pendingRequests","_useUpdateRequest","updatePendingRequest","mutate","objectWithoutPropertiesLoose","show","create","_ref$url","post","_ref2$url","destroy","_ref3","templateId","templatesApi","useFetchTemplates","arguments","undefined","_params$onSuccess","useCreateTemplate","useUpdateTemplate","useDeleteTemplate","approversApi","useFetchApprovers","approvers","TEMPLATE_FORM_INITIAL_VALUES","name","description","approver","TEMPLATE_FORM_VALIDATION_SCHEMA","yup","object","shape","string","required","test","isEditorEmpty","MessageEditor","withT","_ref$placeholders","placeholders","FormikEditor","rows","variables","Form","_ref$initialData","initialData","inputReference","useRef","_useFetchApprovers","_useFetchApprovers$da","_useFetchApprovers$da2","_useFetchApprovers$da3","header","SINGULAR","initialFocusRef","FormikForm","formikProps","enableReinitialize","initialValues","validationSchema","Input","autoFocus","Select","map","buildTemplatePayload","template","approverId","generateInitialData","Create","templateUrl","templatePlaceholders","_useCreateTemplate","createTemplate","Edit","setTemplate","_useUpdateTemplate","updateTemplate","isUpdating","Field","TemplateDetails","Menu","Dropdown","MenuItem","onEditClick","onDeleteClick","i18next","ellipsis","event","stopPropagation","autoWidth","buttonProps","icon","MenuHorizontal","position","strategy","renderNoDataHelpText","entity","Trans","i18nKey","values","components","a","Link","target","items","setIsPaneOpen","helpDocUrl","otherProps","_objectWithoutProperties","_excluded","columns","noDataProps","primaryButtonProps","helpText","_extends","TableWrapper","hasPagination","NeetoUITable","Templates","_t2","_t3","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","isDeleting","templateDetails","handleDelete","PageLoader","Alert","isSubmitting","submitButtonLabel","createRoutes","config","component","path","approvalsPath","actionBlock","searchPlaceholder","_currentTab$actionBlo","appRoutes","breadcrumbs","currentTab","NeetoHeader","searchProps","assoc","viewsApi","useFetchViews","Tab","_pathname$split$","approvalFilter","approvalFilterKeys","keys","category","split","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","_ref$requestableId","requestableId","selectedTemplateData","setSelectedTemplateData","templateOptions","handleTemplateChange","setFieldValue","resetForm","findById","parsedMessage","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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"}
|