@bigbinary/neeto-team-members-frontend 2.2.4

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../node_modules/i18next/dist/esm/i18next.js","../node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js","../node_modules/void-elements/index.js","../node_modules/html-parse-stringify/dist/html-parse-stringify.module.js","../node_modules/react-i18next/dist/es/unescape.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/dist/es/useTranslation.js","../src/common/i18n.js","../src/common/utils.js","../src/common/constants.js","../node_modules/react-query/es/core/subscribable.js","../node_modules/react-query/es/core/utils.js","../node_modules/react-query/es/core/focusManager.js","../node_modules/react-query/es/core/onlineManager.js","../node_modules/react-query/es/core/retryer.js","../node_modules/react-query/es/core/notifyManager.js","../node_modules/react-query/es/core/logger.js","../node_modules/react-query/es/core/query.js","../node_modules/react-query/es/core/queryCache.js","../node_modules/react-query/es/core/mutation.js","../node_modules/react-query/es/core/mutationCache.js","../node_modules/react-query/es/core/infiniteQueryBehavior.js","../node_modules/react-query/es/core/queryClient.js","../node_modules/react-query/es/core/queryObserver.js","../node_modules/react-query/es/core/mutationObserver.js","../node_modules/react-query/es/react/reactBatchedUpdates.js","../node_modules/react-query/es/react/setBatchUpdatesFn.js","../node_modules/react-query/es/react/logger.js","../node_modules/react-query/es/react/setLogger.js","../node_modules/react-query/es/react/QueryClientProvider.js","../node_modules/react-query/es/react/QueryErrorResetBoundary.js","../node_modules/react-query/es/react/utils.js","../node_modules/react-query/es/react/useMutation.js","../node_modules/react-query/es/react/useBaseQuery.js","../node_modules/react-query/es/react/useQuery.js","../src/apis/queryClient.js","../node_modules/react-query/devtools/index.js","../src/components/Common/withReactQuery.jsx","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/tslib/tslib.es6.js","../node_modules/file-selector/dist/es5/file.js","../node_modules/file-selector/dist/es5/file-selector.js","../node_modules/attr-accept/dist/es/index.js","../node_modules/react-dropzone/dist/es/utils/index.js","../node_modules/react-dropzone/dist/es/index.js","../src/components/Invitations/Csv/Uploader.jsx","../src/components/Invitations/Csv/constants.js","../src/components/Invitations/Csv/Uploads.jsx","../src/components/Invitations/Csv/index.jsx","../src/components/Invitations/Normal/InviteLink.jsx","../src/components/Invitations/Normal/index.jsx","../src/components/Invitations/index.jsx","../src/common/routes.js","../src/apis/permissions.js","../src/common/queryConstants.js","../src/hooks/roles/usePermissionsApi.jsx","../src/apis/organization_roles.js","../src/hooks/roles/useRolesApi.jsx","../node_modules/react-scroll-sync/dist/index.js","../src/components/Roles/Header/helpers.js","../src/components/Roles/AddRoleButton.jsx","../src/components/Roles/Header/index.jsx","../src/components/Roles/helpers.js","../src/components/Roles/constants.js","../src/components/Roles/Permissions.jsx","../src/components/Roles/New.jsx","../src/components/Common/EmptyState/EmptyStateSVG.js","../src/components/Common/EmptyState/index.jsx","../src/components/Roles/Table/constants.js","../src/components/Roles/Table/Row.jsx","../src/components/Roles/Table/TableHeader.jsx","../src/components/Roles/Delete.jsx","../src/components/Roles/Edit.jsx","../src/components/Roles/Table/Columns.jsx","../src/components/Roles/Table/Sidebar/helpers.jsx","../src/components/Roles/Table/Sidebar/ToggleDropdown.jsx","../src/components/Roles/Table/Sidebar/index.jsx","../src/components/Roles/Table/index.jsx","../src/components/Roles/index.jsx","../src/apis/teams.js","../src/hooks/teams/useTeamsApi.jsx","../src/components/TeamMembers/ActionBlock/Header.jsx","../src/components/TeamMembers/ActionBlock/SubHeader.jsx","../src/components/TeamMembers/constants.js","../src/components/TeamMembers/helpers.jsx","../src/components/TeamMembers/ManageMember/constants.js","../src/components/TeamMembers/ManageMember/helpers.js","../src/components/TeamMembers/ManageMember/index.jsx","../src/components/TeamMembers/Menu.jsx","../src/components/TeamMembers/index.jsx"],"sourcesContent":["import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\n\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Logger);\n\n this.init(concreteLogger, options);\n }\n\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread(_objectSpread({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }]);\n\n return Logger;\n}();\n\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n\n this.observers = {};\n }\n\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n\n if (!listener) {\n delete this.observers[event];\n return;\n }\n\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\n\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\n\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n\n if (value !== undefined) {\n return value;\n }\n\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#39;',\n '/': '&#x2F;'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n\n return matched;\n}\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n\n current = current[paths[i]];\n }\n\n return current;\n}\n\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n\n var _super = _createSuper(ResourceStore);\n\n function ResourceStore(data) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n\n _classCallCheck(this, ResourceStore);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.data = data || {};\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n\n return _this;\n }\n\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = this.options.keySeparator;\n if (keySeparator === undefined) keySeparator = '.';\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$1(_objectSpread$1({}, pack), resources);\n }\n\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$1(_objectSpread$1({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\n\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n\n var _super = _createSuper$1(Translator);\n\n function Translator(services) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Translator);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n\n if (key === undefined || key === null) {\n return false;\n }\n\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n\n if (returnDetails) {\n resolved.res = \"\".concat(namespace).concat(nsSeparator).concat(key);\n return resolved;\n }\n\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n\n if (returnDetails) {\n resolved.res = key;\n return resolved;\n }\n\n return key;\n }\n\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$2(_objectSpread$2({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n\n return r;\n }\n\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$2(_objectSpread$2({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$2(_objectSpread$2({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n\n var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n\n _this2.emit('missingKey', l, namespace, k, res);\n };\n\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$2(_objectSpread$2({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$2(_objectSpread$2({}, options), {\n interpolation: _objectSpread$2(_objectSpread$2({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$2(_objectSpread$2({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n\n return null;\n }\n\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$2({\n i18nResolved: resolved\n }, options) : options, this);\n }\n\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n\n var extracted = _this4.extractFromKey(k, options);\n\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n\n var possibleKey;\n\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n\n return false;\n }\n }]);\n\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\n\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n\n return p.join('-');\n }\n\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n\n var cleanedLng = _this.formatLanguageCode(code);\n\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n\n var lngOnly = _this.getLanguagePartFromCode(code);\n\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n\n var addCode = function addCode(c) {\n if (!c) return;\n\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\n\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\n\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, PluralResolver);\n\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n\n this.rules = createRules();\n }\n\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n\n if (!rule) {\n return [];\n }\n\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n\n return this.getSuffixRetroCompatible(rule, count);\n }\n\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$3(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Interpolator);\n\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n\n this.init(options);\n }\n\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = getPathWithDefaults(data, defaultData, key);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: key\n })) : path;\n }\n\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(getPathWithDefaults(data, defaultData, k), f, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: k\n }));\n };\n\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && options.hasOwnProperty(matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n\n replaces++;\n\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n\n var clonedOptions = _objectSpread$3({}, options);\n\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n 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\n delete clonedOptions.defaultValue;\n return key;\n }\n\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n var doReduce = false;\n\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n\n return str;\n }\n }]);\n\n return Interpolator;\n}();\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\n\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Formatter);\n\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: function number(val, lng, options) {\n return new Intl.NumberFormat(lng, options).format(val);\n },\n currency: function currency(val, lng, options) {\n return new Intl.NumberFormat(lng, _objectSpread$4(_objectSpread$4({}, options), {}, {\n style: 'currency'\n })).format(val);\n },\n datetime: function datetime(val, lng, options) {\n return new Intl.DateTimeFormat(lng, _objectSpread$4({}, options)).format(val);\n },\n relativetime: function relativetime(val, lng, options) {\n return new Intl.RelativeTimeFormat(lng, _objectSpread$4({}, options)).format(val, options.range || 'day');\n },\n list: function list(val, lng, options) {\n return new Intl.ListFormat(lng, _objectSpread$4({}, options)).format(val);\n }\n };\n this.init(options);\n }\n\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng, options) {\n var _this = this;\n\n var formats = _format.split(this.formatSeparator);\n\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n\n if (_this.formats[formatName]) {\n var formatted = mem;\n\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$4(_objectSpread$4(_objectSpread$4({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n\n return mem;\n }, value);\n return result;\n }\n }]);\n\n return Formatter;\n}();\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\n\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n\n var _super = _createSuper$2(Connector);\n\n function Connector(backend, store, services) {\n var _this;\n\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n _classCallCheck(this, Connector);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.state = {};\n _this.queue = [];\n\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n\n return _this;\n }\n\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n\n if (loadedKeys.length) {\n loadedKeys.forEach(function (ns) {\n if (loaded[l][ns] === undefined) loaded[l][ns] = true;\n });\n }\n });\n q.done = true;\n\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 350;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n\n this.readingCalls++;\n return this.backend[fcName](lng, ns, function (err, data) {\n _this3.readingCalls--;\n\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n\n if (err && data && tried < 5) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n\n callback(err, data);\n });\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n\n if (key === undefined || key === null || key === '') return;\n\n if (this.backend && this.backend.create) {\n this.backend.create(languages, namespace, key, fallbackValue, null, _objectSpread$5(_objectSpread$5({}, options), {}, {\n isUpdate: isUpdate\n }));\n }\n\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n\n return options;\n}\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction noop() {}\n\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\n\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n\n var _super = _createSuper$3(I18n);\n\n function I18n() {\n var _this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n _classCallCheck(this, I18n);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n\n return _this;\n }\n\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n\n if (!options.defaultNS && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n\n var defOpts = get();\n this.options = _objectSpread$6(_objectSpread$6(_objectSpread$6({}, defOpts), this.options), transformOptions(options));\n\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread$6(_objectSpread$6({}, defOpts.interpolation), this.options.interpolation);\n }\n\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n\n var formatter;\n\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n s.languageDetector.init(s, this.options.detection, this.options);\n }\n\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n\n return _this2;\n };\n });\n var deferred = defer();\n\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n\n _this2.emit('initialized', _this2.options);\n\n deferred.resolve(t);\n callback(err, t);\n };\n\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n\n var append = function append(lng) {\n if (!lng) return;\n\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n\n _this4.setResolvedLanguage(l);\n };\n\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n\n _this4.translator.changeLanguage(l);\n\n _this4.isLanguageChangingTo = undefined;\n\n _this4.emit('languageChanged', l);\n\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n this.services.languageDetector.detect(setLng);\n } else {\n setLng(lng);\n }\n\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n\n var fixedT = function fixedT(key, opts) {\n var options;\n\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread$6({}, opts);\n }\n\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n return _this5.t(resultKey, options);\n };\n\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n\n var lng = this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n\n return loadState === -1 || loadState === 2;\n };\n\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n\n var deferred = defer();\n\n if (!this.options.ns) {\n callback && callback();\n return Promise.resolve();\n }\n\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n return rtlLngs.indexOf(this.services.languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n\n var mergedOptions = _objectSpread$6(_objectSpread$6(_objectSpread$6({}, this.options), options), {\n isClone: true\n });\n\n var clone = new I18n(mergedOptions);\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread$6({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n\n return I18n;\n}(EventEmitter);\n\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\n\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport default instance;\nexport { changeLanguage, createInstance, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","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]+$/;\n\nvar serializeCookie = function serializeCookie(name, val, options) {\n var opt = options || {};\n opt.path = opt.path || '/';\n var value = encodeURIComponent(val);\n var str = name + '=' + value;\n\n if (opt.maxAge > 0) {\n var maxAge = opt.maxAge - 0;\n if (isNaN(maxAge)) throw new Error('maxAge should be a Number');\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) str += '; HttpOnly';\n if (opt.secure) str += '; Secure';\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string' ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n\n case 'lax':\n str += '; SameSite=Lax';\n break;\n\n case 'strict':\n str += '; SameSite=Strict';\n break;\n\n case 'none':\n str += '; SameSite=None';\n break;\n\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n};\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\n if (minutes) {\n cookieOptions.expires = new Date();\n cookieOptions.expires.setTime(cookieOptions.expires.getTime() + minutes * 60 * 1000);\n }\n\n if (domain) cookieOptions.domain = domain;\n document.cookie = serializeCookie(name, encodeURIComponent(value), cookieOptions);\n },\n read: function read(name) {\n var nameEQ = name + '=';\n var ca = document.cookie.split(';');\n\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n\n while (c.charAt(0) === ' ') {\n c = c.substring(1, c.length);\n }\n\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\n }\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\n if (options.lookupCookie && typeof document !== 'undefined') {\n var c = cookie.read(options.lookupCookie);\n if (c) found = c;\n }\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\n if (typeof window !== 'undefined') {\n var search = window.location.search;\n\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\n var query = search.substring(1);\n var params = query.split('&');\n\n for (var i = 0; i < params.length; i++) {\n var pos = params[i].indexOf('=');\n\n if (pos > 0) {\n var key = params[i].substring(0, pos);\n\n if (key === options.lookupQuerystring) {\n found = params[i].substring(pos + 1);\n }\n }\n }\n }\n\n return found;\n }\n};\n\nvar hasLocalStorageSupport = null;\n\nvar localStorageAvailable = function localStorageAvailable() {\n if (hasLocalStorageSupport !== null) return hasLocalStorageSupport;\n\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\n return hasLocalStorageSupport;\n};\n\nvar localStorage = {\n name: 'localStorage',\n lookup: function lookup(options) {\n var found;\n\n if (options.lookupLocalStorage && localStorageAvailable()) {\n var lng = window.localStorage.getItem(options.lookupLocalStorage);\n if (lng) found = lng;\n }\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;\n\nvar sessionStorageAvailable = function sessionStorageAvailable() {\n if (hasSessionStorageSupport !== null) return hasSessionStorageSupport;\n\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\n return hasSessionStorageSupport;\n};\n\nvar sessionStorage = {\n name: 'sessionStorage',\n lookup: function lookup(options) {\n var found;\n\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n var lng = window.sessionStorage.getItem(options.lookupSessionStorage);\n if (lng) found = lng;\n }\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\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\n if (navigator.userLanguage) {\n found.push(navigator.userLanguage);\n }\n\n if (navigator.language) {\n found.push(navigator.language);\n }\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\n if (htmlTag && typeof htmlTag.getAttribute === 'function') {\n found = htmlTag.getAttribute('lang');\n }\n\n return found;\n }\n};\n\nvar path = {\n name: 'path',\n lookup: function lookup(options) {\n var found;\n\n if (typeof window !== 'undefined') {\n var language = window.location.pathname.match(/\\/([a-zA-Z-]*)/g);\n\n if (language instanceof Array) {\n if (typeof options.lookupFromPathIndex === 'number') {\n if (typeof language[options.lookupFromPathIndex] !== 'string') {\n return undefined;\n }\n\n found = language[options.lookupFromPathIndex].replace('/', '');\n } else {\n found = language[0].replace('/', '');\n }\n }\n }\n\n return found;\n }\n};\n\nvar subdomain = {\n name: 'subdomain',\n lookup: function lookup(options) {\n var found;\n\n if (typeof window !== 'undefined') {\n var language = window.location.href.match(/(?:http[s]*\\:\\/\\/)*(.*?)\\.(?=[^\\/]*\\..{2,5})/gi);\n\n if (language instanceof Array) {\n if (typeof options.lookupFromSubdomainIndex === 'number') {\n found = language[options.lookupFromSubdomainIndex].replace('http://', '').replace('https://', '').replace('.', '');\n } else {\n found = language[0].replace('http://', '').replace('https://', '').replace('.', '');\n }\n }\n }\n\n return found;\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'] //cookieMinutes: 10,\n //cookieDomain: 'myDomain'\n\n };\n}\n\nvar Browser = /*#__PURE__*/function () {\n function Browser(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Browser);\n\n this.type = 'languageDetector';\n this.detectors = {};\n this.init(services, options);\n }\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()); // backwards compatibility\n\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\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\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\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\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\n return Browser;\n}();\n\nBrowser.type = 'languageDetector';\n\nexport { Browser as default };\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","var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230);/g;\nvar htmlEntities = {\n '&amp;': '&',\n '&#38;': '&',\n '&lt;': '<',\n '&#60;': '<',\n '&gt;': '>',\n '&#62;': '>',\n '&apos;': \"'\",\n '&#39;': \"'\",\n '&quot;': '\"',\n '&#34;': '\"',\n '&nbsp;': ' ',\n '&#160;': ' ',\n '&copy;': '©',\n '&#169;': '©',\n '&reg;': '®',\n '&#174;': '®',\n '&hellip;': '…',\n '&#8230;': '…'\n};\n\nvar unescapeHtmlEntity = function unescapeHtmlEntity(m) {\n return htmlEntities[m];\n};\n\nexport var unescape = function unescape(text) {\n return text.replace(matchHtmlEntity, unescapeHtmlEntity);\n};","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createContext } from 'react';\nimport { unescape } from './unescape';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true,\n unescape: unescape\n};\nvar i18nInstance;\nexport var I18nContext = createContext();\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n\n this.usedNamespaces = {};\n }\n\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n\n return ReportNamespaces;\n}();\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","export 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 { useContext, isValidElement, cloneElement, createElement } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { getI18n, I18nContext, getDefaults } from './context';\nimport { warn, warnOnce } from './utils';\n\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n var base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\n\nfunction getChildren(node) {\n if (!node) return [];\n return node && 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 isValidElement(child);\n });\n}\n\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\n\nfunction mergeProps(source, target) {\n var newTarget = _objectSpread({}, target);\n\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\n\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n var stringNode = '';\n var childrenArray = getAsArray(children);\n var keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach(function (child, childIndex) {\n if (typeof child === 'string') {\n stringNode += \"\".concat(child);\n } else if (isValidElement(child)) {\n var childPropsCount = Object.keys(child.props).length;\n var shouldKeepChild = keepArray.indexOf(child.type) > -1;\n var childChildren = child.props.children;\n\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += \"<\".concat(child.type, \"/>\");\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += \"<\".concat(childIndex, \"></\").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' && !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(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), isVoid ? undefined : inner));\n }\n\n function mapAST(reactNode, astNode, rootReactNode) {\n var reactNodes = getAsArray(reactNode);\n var astNodes = getAsArray(astNode);\n return astNodes.reduce(function (mem, node, i) {\n var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n\n if (node.type === 'tag') {\n var tmp = reactNodes[parseInt(node.name, 10)];\n if (!tmp && rootReactNode.length === 1 && rootReactNode[0][node.name]) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n var child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n var isElement = isValidElement(child);\n var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && _typeof(child) === 'object' && child.dummy && !isElement;\n var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n\n if (typeof child === 'string') {\n var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n var inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n var _inner = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), _inner));\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n var _inner2 = renderInner(child, node, rootReactNode);\n\n pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }));\n } else {\n var _inner3 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(createElement(node.name, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _inner3));\n }\n } else if (node.voidElement) {\n mem.push(\"<\".concat(node.name, \" />\"));\n } else {\n var _inner4 = mapAST(reactNodes, node.children, rootReactNode);\n\n mem.push(\"<\".concat(node.name, \">\").concat(_inner4, \"</\").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(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n }), translationContent));\n } else {\n mem.push(cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {\n key: i\n })));\n }\n } else if (node.type === 'text') {\n var wrapTextNodes = i18nOptions.transWrapTextNodes;\n\n var _content = shouldUnescape ? i18nOptions.unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n\n if (wrapTextNodes) {\n mem.push(createElement(wrapTextNodes, {\n key: \"\".concat(node.name, \"-\").concat(i)\n }, _content));\n } else {\n mem.push(_content);\n }\n }\n\n return mem;\n }, []);\n }\n\n var result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\n\nexport function Trans(_ref) {\n var children = _ref.children,\n count = _ref.count,\n parent = _ref.parent,\n i18nKey = _ref.i18nKey,\n context = _ref.context,\n _ref$tOptions = _ref.tOptions,\n tOptions = _ref$tOptions === void 0 ? {} : _ref$tOptions,\n values = _ref.values,\n defaults = _ref.defaults,\n components = _ref.components,\n ns = _ref.ns,\n i18nFromProps = _ref.i18n,\n tFromProps = _ref.t,\n shouldUnescape = _ref.shouldUnescape,\n additionalProps = _objectWithoutProperties(_ref, _excluded2);\n\n var _ref2 = useContext(I18nContext) || {},\n i18nFromContext = _ref2.i18n,\n defaultNSFromContext = _ref2.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n\n var t = tFromProps || i18n.t.bind(i18n) || function (k) {\n return k;\n };\n\n if (context) tOptions.context = context;\n\n var reactI18nextOptions = _objectSpread(_objectSpread({}, getDefaults()), i18n.options && i18n.options.react);\n\n var namespaces = ns || t.ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n var defaultValue = defaults || nodesToString(children, reactI18nextOptions) || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n var hashTransKey = reactI18nextOptions.hashTransKey;\n var key = i18nKey || (hashTransKey ? hashTransKey(defaultValue) : defaultValue);\n var interpolationOverride = values ? tOptions.interpolation : {\n interpolation: _objectSpread(_objectSpread({}, tOptions.interpolation), {}, {\n prefix: '#$?',\n suffix: '?$#'\n })\n };\n\n var combinedTOpts = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, tOptions), {}, {\n count: count\n }, values), interpolationOverride), {}, {\n defaultValue: defaultValue,\n ns: namespaces\n });\n\n var translation = key ? t(key, combinedTOpts) : defaultValue;\n var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? createElement(useAsParent, additionalProps, content) : content;\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils';\n\nvar usePrevious = function usePrevious(value, ignore) {\n var ref = useRef();\n useEffect(function () {\n ref.current = ignore ? ref.current : value;\n }, [value, ignore]);\n return ref.current;\n};\n\nexport function useTranslation(ns) {\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nFromProps = props.i18n;\n\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n,\n defaultNSFromContext = _ref.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n\n var notReadyT = function notReadyT(k) {\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n\n var retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n\n var i18nOptions = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), i18n.options.react), props);\n\n var useSuspense = i18nOptions.useSuspense,\n keyPrefix = i18nOptions.keyPrefix;\n var namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n var ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(function (n) {\n return hasLoadedNamespace(n, i18n, i18nOptions);\n });\n\n function getT() {\n return i18n.getFixedT(null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n\n var _useState = useState(getT),\n _useState2 = _slicedToArray(_useState, 2),\n t = _useState2[0],\n setT = _useState2[1];\n\n var joinedNS = namespaces.join();\n var previousJoinedNS = usePrevious(joinedNS);\n var isMounted = useRef(true);\n useEffect(function () {\n var bindI18n = i18nOptions.bindI18n,\n bindI18nStore = i18nOptions.bindI18nStore;\n isMounted.current = true;\n\n if (!ready && !useSuspense) {\n loadNamespaces(i18n, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n }\n\n if (ready && previousJoinedNS && previousJoinedNS !== joinedNS && isMounted.current) {\n setT(getT);\n }\n\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return function () {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(function (e) {\n return i18n.off(e, boundReset);\n });\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(function (e) {\n return i18n.store.off(e, boundReset);\n });\n };\n }, [i18n, joinedNS]);\n var isInitial = useRef(true);\n useEffect(function () {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n\n isInitial.current = false;\n }, [i18n]);\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 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(\"ntm-scrollbar__inner\");\n\n const outerElement = document.createElement(\"div\");\n outerElement.classList.add(\"ntm-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","export const SINGULAR = { count: 1 };\nexport const PLURAL = { count: 2 };\nexport const MANAGE_MEMBER_PERMISSIONS = [\n \"members.manage_members\",\n \"agents.manage_agents\",\n];\n","export var Subscribable = /*#__PURE__*/function () {\n function Subscribable() {\n this.listeners = [];\n }\n\n var _proto = Subscribable.prototype;\n\n _proto.subscribe = function subscribe(listener) {\n var _this = this;\n\n var callback = listener || function () {\n return undefined;\n };\n\n this.listeners.push(callback);\n this.onSubscribe();\n return function () {\n _this.listeners = _this.listeners.filter(function (x) {\n return x !== callback;\n });\n\n _this.onUnsubscribe();\n };\n };\n\n _proto.hasListeners = function hasListeners() {\n return this.listeners.length > 0;\n };\n\n _proto.onSubscribe = function onSubscribe() {// Do nothing\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {// Do nothing\n };\n\n return Subscribable;\n}();","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// TYPES\n// UTILS\nexport var isServer = typeof window === 'undefined';\nexport function noop() {\n return undefined;\n}\nexport function functionalUpdate(updater, input) {\n return typeof updater === 'function' ? updater(input) : updater;\n}\nexport function isValidTimeout(value) {\n return typeof value === 'number' && value >= 0 && value !== Infinity;\n}\nexport function ensureQueryKeyArray(value) {\n return Array.isArray(value) ? value : [value];\n}\nexport function difference(array1, array2) {\n return array1.filter(function (x) {\n return array2.indexOf(x) === -1;\n });\n}\nexport function replaceAt(array, index, value) {\n var copy = array.slice(0);\n copy[index] = value;\n return copy;\n}\nexport function timeUntilStale(updatedAt, staleTime) {\n return Math.max(updatedAt + (staleTime || 0) - Date.now(), 0);\n}\nexport function parseQueryArgs(arg1, arg2, arg3) {\n if (!isQueryKey(arg1)) {\n return arg1;\n }\n\n if (typeof arg2 === 'function') {\n return _extends({}, arg3, {\n queryKey: arg1,\n queryFn: arg2\n });\n }\n\n return _extends({}, arg2, {\n queryKey: arg1\n });\n}\nexport function parseMutationArgs(arg1, arg2, arg3) {\n if (isQueryKey(arg1)) {\n if (typeof arg2 === 'function') {\n return _extends({}, arg3, {\n mutationKey: arg1,\n mutationFn: arg2\n });\n }\n\n return _extends({}, arg2, {\n mutationKey: arg1\n });\n }\n\n if (typeof arg1 === 'function') {\n return _extends({}, arg2, {\n mutationFn: arg1\n });\n }\n\n return _extends({}, arg1);\n}\nexport function parseFilterArgs(arg1, arg2, arg3) {\n return isQueryKey(arg1) ? [_extends({}, arg2, {\n queryKey: arg1\n }), arg3] : [arg1 || {}, arg2];\n}\nexport function parseMutationFilterArgs(arg1, arg2) {\n return isQueryKey(arg1) ? _extends({}, arg2, {\n mutationKey: arg1\n }) : arg1;\n}\nexport function mapQueryStatusFilter(active, inactive) {\n if (active === true && inactive === true || active == null && inactive == null) {\n return 'all';\n } else if (active === false && inactive === false) {\n return 'none';\n } else {\n // At this point, active|inactive can only be true|false or false|true\n // so, when only one value is provided, the missing one has to be the negated value\n var isActive = active != null ? active : !inactive;\n return isActive ? 'active' : 'inactive';\n }\n}\nexport function matchQuery(filters, query) {\n var active = filters.active,\n exact = filters.exact,\n fetching = filters.fetching,\n inactive = filters.inactive,\n predicate = filters.predicate,\n queryKey = filters.queryKey,\n stale = filters.stale;\n\n if (isQueryKey(queryKey)) {\n if (exact) {\n if (query.queryHash !== hashQueryKeyByOptions(queryKey, query.options)) {\n return false;\n }\n } else if (!partialMatchKey(query.queryKey, queryKey)) {\n return false;\n }\n }\n\n var queryStatusFilter = mapQueryStatusFilter(active, inactive);\n\n if (queryStatusFilter === 'none') {\n return false;\n } else if (queryStatusFilter !== 'all') {\n var isActive = query.isActive();\n\n if (queryStatusFilter === 'active' && !isActive) {\n return false;\n }\n\n if (queryStatusFilter === 'inactive' && isActive) {\n return false;\n }\n }\n\n if (typeof stale === 'boolean' && query.isStale() !== stale) {\n return false;\n }\n\n if (typeof fetching === 'boolean' && query.isFetching() !== fetching) {\n return false;\n }\n\n if (predicate && !predicate(query)) {\n return false;\n }\n\n return true;\n}\nexport function matchMutation(filters, mutation) {\n var exact = filters.exact,\n fetching = filters.fetching,\n predicate = filters.predicate,\n mutationKey = filters.mutationKey;\n\n if (isQueryKey(mutationKey)) {\n if (!mutation.options.mutationKey) {\n return false;\n }\n\n if (exact) {\n if (hashQueryKey(mutation.options.mutationKey) !== hashQueryKey(mutationKey)) {\n return false;\n }\n } else if (!partialMatchKey(mutation.options.mutationKey, mutationKey)) {\n return false;\n }\n }\n\n if (typeof fetching === 'boolean' && mutation.state.status === 'loading' !== fetching) {\n return false;\n }\n\n if (predicate && !predicate(mutation)) {\n return false;\n }\n\n return true;\n}\nexport function hashQueryKeyByOptions(queryKey, options) {\n var hashFn = (options == null ? void 0 : options.queryKeyHashFn) || hashQueryKey;\n return hashFn(queryKey);\n}\n/**\n * Default query keys hash function.\n */\n\nexport function hashQueryKey(queryKey) {\n var asArray = ensureQueryKeyArray(queryKey);\n return stableValueHash(asArray);\n}\n/**\n * Hashes the value into a stable hash.\n */\n\nexport function stableValueHash(value) {\n return JSON.stringify(value, function (_, val) {\n return isPlainObject(val) ? Object.keys(val).sort().reduce(function (result, key) {\n result[key] = val[key];\n return result;\n }, {}) : val;\n });\n}\n/**\n * Checks if key `b` partially matches with key `a`.\n */\n\nexport function partialMatchKey(a, b) {\n return partialDeepEqual(ensureQueryKeyArray(a), ensureQueryKeyArray(b));\n}\n/**\n * Checks if `b` partially matches with `a`.\n */\n\nexport function partialDeepEqual(a, b) {\n if (a === b) {\n return true;\n }\n\n if (typeof a !== typeof b) {\n return false;\n }\n\n if (a && b && typeof a === 'object' && typeof b === 'object') {\n return !Object.keys(b).some(function (key) {\n return !partialDeepEqual(a[key], b[key]);\n });\n }\n\n return false;\n}\n/**\n * This function returns `a` if `b` is deeply equal.\n * If not, it will replace any deeply equal children of `b` with those of `a`.\n * This can be used for structural sharing between JSON values for example.\n */\n\nexport function replaceEqualDeep(a, b) {\n if (a === b) {\n return a;\n }\n\n var array = Array.isArray(a) && Array.isArray(b);\n\n if (array || isPlainObject(a) && isPlainObject(b)) {\n var aSize = array ? a.length : Object.keys(a).length;\n var bItems = array ? b : Object.keys(b);\n var bSize = bItems.length;\n var copy = array ? [] : {};\n var equalItems = 0;\n\n for (var i = 0; i < bSize; i++) {\n var key = array ? i : bItems[i];\n copy[key] = replaceEqualDeep(a[key], b[key]);\n\n if (copy[key] === a[key]) {\n equalItems++;\n }\n }\n\n return aSize === bSize && equalItems === aSize ? a : copy;\n }\n\n return b;\n}\n/**\n * Shallow compare objects. Only works with objects that always have the same properties.\n */\n\nexport function shallowEqualObjects(a, b) {\n if (a && !b || b && !a) {\n return false;\n }\n\n for (var key in a) {\n if (a[key] !== b[key]) {\n return false;\n }\n }\n\n return true;\n} // Copied from: https://github.com/jonschlinkert/is-plain-object\n\nexport function isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n } // If has modified constructor\n\n\n var ctor = o.constructor;\n\n if (typeof ctor === 'undefined') {\n return true;\n } // If has modified prototype\n\n\n var prot = ctor.prototype;\n\n if (!hasObjectPrototype(prot)) {\n return false;\n } // If constructor does not have an Object-specific method\n\n\n if (!prot.hasOwnProperty('isPrototypeOf')) {\n return false;\n } // Most likely a plain Object\n\n\n return true;\n}\n\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nexport function isQueryKey(value) {\n return typeof value === 'string' || Array.isArray(value);\n}\nexport function isError(value) {\n return value instanceof Error;\n}\nexport function sleep(timeout) {\n return new Promise(function (resolve) {\n setTimeout(resolve, timeout);\n });\n}\n/**\n * Schedules a microtask.\n * This can be useful to schedule state updates after rendering.\n */\n\nexport function scheduleMicrotask(callback) {\n Promise.resolve().then(callback).catch(function (error) {\n return setTimeout(function () {\n throw error;\n });\n });\n}\nexport function getAbortController() {\n if (typeof AbortController === 'function') {\n return new AbortController();\n }\n}","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { Subscribable } from './subscribable';\nimport { isServer } from './utils';\nexport var FocusManager = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(FocusManager, _Subscribable);\n\n function FocusManager() {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n\n _this.setup = function (onFocus) {\n var _window;\n\n if (!isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {\n var listener = function listener() {\n return onFocus();\n }; // Listen to visibillitychange and focus\n\n\n window.addEventListener('visibilitychange', listener, false);\n window.addEventListener('focus', listener, false);\n return function () {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('visibilitychange', listener);\n window.removeEventListener('focus', listener);\n };\n }\n };\n\n return _this;\n }\n\n var _proto = FocusManager.prototype;\n\n _proto.onSubscribe = function onSubscribe() {\n if (!this.cleanup) {\n this.setEventListener(this.setup);\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.hasListeners()) {\n var _this$cleanup;\n\n (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);\n this.cleanup = undefined;\n }\n };\n\n _proto.setEventListener = function setEventListener(setup) {\n var _this$cleanup2,\n _this2 = this;\n\n this.setup = setup;\n (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);\n this.cleanup = setup(function (focused) {\n if (typeof focused === 'boolean') {\n _this2.setFocused(focused);\n } else {\n _this2.onFocus();\n }\n });\n };\n\n _proto.setFocused = function setFocused(focused) {\n this.focused = focused;\n\n if (focused) {\n this.onFocus();\n }\n };\n\n _proto.onFocus = function onFocus() {\n this.listeners.forEach(function (listener) {\n listener();\n });\n };\n\n _proto.isFocused = function isFocused() {\n if (typeof this.focused === 'boolean') {\n return this.focused;\n } // document global can be unavailable in react native\n\n\n if (typeof document === 'undefined') {\n return true;\n }\n\n return [undefined, 'visible', 'prerender'].includes(document.visibilityState);\n };\n\n return FocusManager;\n}(Subscribable);\nexport var focusManager = new FocusManager();","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { Subscribable } from './subscribable';\nimport { isServer } from './utils';\nexport var OnlineManager = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(OnlineManager, _Subscribable);\n\n function OnlineManager() {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n\n _this.setup = function (onOnline) {\n var _window;\n\n if (!isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {\n var listener = function listener() {\n return onOnline();\n }; // Listen to online\n\n\n window.addEventListener('online', listener, false);\n window.addEventListener('offline', listener, false);\n return function () {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('online', listener);\n window.removeEventListener('offline', listener);\n };\n }\n };\n\n return _this;\n }\n\n var _proto = OnlineManager.prototype;\n\n _proto.onSubscribe = function onSubscribe() {\n if (!this.cleanup) {\n this.setEventListener(this.setup);\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.hasListeners()) {\n var _this$cleanup;\n\n (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);\n this.cleanup = undefined;\n }\n };\n\n _proto.setEventListener = function setEventListener(setup) {\n var _this$cleanup2,\n _this2 = this;\n\n this.setup = setup;\n (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);\n this.cleanup = setup(function (online) {\n if (typeof online === 'boolean') {\n _this2.setOnline(online);\n } else {\n _this2.onOnline();\n }\n });\n };\n\n _proto.setOnline = function setOnline(online) {\n this.online = online;\n\n if (online) {\n this.onOnline();\n }\n };\n\n _proto.onOnline = function onOnline() {\n this.listeners.forEach(function (listener) {\n listener();\n });\n };\n\n _proto.isOnline = function isOnline() {\n if (typeof this.online === 'boolean') {\n return this.online;\n }\n\n if (typeof navigator === 'undefined' || typeof navigator.onLine === 'undefined') {\n return true;\n }\n\n return navigator.onLine;\n };\n\n return OnlineManager;\n}(Subscribable);\nexport var onlineManager = new OnlineManager();","import { focusManager } from './focusManager';\nimport { onlineManager } from './onlineManager';\nimport { sleep } from './utils';\n\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1000 * Math.pow(2, failureCount), 30000);\n}\n\nexport function isCancelable(value) {\n return typeof (value == null ? void 0 : value.cancel) === 'function';\n}\nexport var CancelledError = function CancelledError(options) {\n this.revert = options == null ? void 0 : options.revert;\n this.silent = options == null ? void 0 : options.silent;\n};\nexport function isCancelledError(value) {\n return value instanceof CancelledError;\n} // CLASS\n\nexport var Retryer = function Retryer(config) {\n var _this = this;\n\n var cancelRetry = false;\n var cancelFn;\n var continueFn;\n var promiseResolve;\n var promiseReject;\n this.abort = config.abort;\n\n this.cancel = function (cancelOptions) {\n return cancelFn == null ? void 0 : cancelFn(cancelOptions);\n };\n\n this.cancelRetry = function () {\n cancelRetry = true;\n };\n\n this.continueRetry = function () {\n cancelRetry = false;\n };\n\n this.continue = function () {\n return continueFn == null ? void 0 : continueFn();\n };\n\n this.failureCount = 0;\n this.isPaused = false;\n this.isResolved = false;\n this.isTransportCancelable = false;\n this.promise = new Promise(function (outerResolve, outerReject) {\n promiseResolve = outerResolve;\n promiseReject = outerReject;\n });\n\n var resolve = function resolve(value) {\n if (!_this.isResolved) {\n _this.isResolved = true;\n config.onSuccess == null ? void 0 : config.onSuccess(value);\n continueFn == null ? void 0 : continueFn();\n promiseResolve(value);\n }\n };\n\n var reject = function reject(value) {\n if (!_this.isResolved) {\n _this.isResolved = true;\n config.onError == null ? void 0 : config.onError(value);\n continueFn == null ? void 0 : continueFn();\n promiseReject(value);\n }\n };\n\n var pause = function pause() {\n return new Promise(function (continueResolve) {\n continueFn = continueResolve;\n _this.isPaused = true;\n config.onPause == null ? void 0 : config.onPause();\n }).then(function () {\n continueFn = undefined;\n _this.isPaused = false;\n config.onContinue == null ? void 0 : config.onContinue();\n });\n }; // Create loop function\n\n\n var run = function run() {\n // Do nothing if already resolved\n if (_this.isResolved) {\n return;\n }\n\n var promiseOrValue; // Execute query\n\n try {\n promiseOrValue = config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n } // Create callback to cancel this fetch\n\n\n cancelFn = function cancelFn(cancelOptions) {\n if (!_this.isResolved) {\n reject(new CancelledError(cancelOptions));\n _this.abort == null ? void 0 : _this.abort(); // Cancel transport if supported\n\n if (isCancelable(promiseOrValue)) {\n try {\n promiseOrValue.cancel();\n } catch (_unused) {}\n }\n }\n }; // Check if the transport layer support cancellation\n\n\n _this.isTransportCancelable = isCancelable(promiseOrValue);\n Promise.resolve(promiseOrValue).then(resolve).catch(function (error) {\n var _config$retry, _config$retryDelay;\n\n // Stop if the fetch is already resolved\n if (_this.isResolved) {\n return;\n } // Do we need to retry the request?\n\n\n var retry = (_config$retry = config.retry) != null ? _config$retry : 3;\n var retryDelay = (_config$retryDelay = config.retryDelay) != null ? _config$retryDelay : defaultRetryDelay;\n var delay = typeof retryDelay === 'function' ? retryDelay(_this.failureCount, error) : retryDelay;\n var shouldRetry = retry === true || typeof retry === 'number' && _this.failureCount < retry || typeof retry === 'function' && retry(_this.failureCount, error);\n\n if (cancelRetry || !shouldRetry) {\n // We are done if the query does not need to be retried\n reject(error);\n return;\n }\n\n _this.failureCount++; // Notify on fail\n\n config.onFail == null ? void 0 : config.onFail(_this.failureCount, error); // Delay\n\n sleep(delay) // Pause if the document is not visible or when the device is offline\n .then(function () {\n if (!focusManager.isFocused() || !onlineManager.isOnline()) {\n return pause();\n }\n }).then(function () {\n if (cancelRetry) {\n reject(error);\n } else {\n run();\n }\n });\n });\n }; // Start loop\n\n\n run();\n};","import { scheduleMicrotask } from './utils'; // TYPES\n\n// CLASS\nexport var NotifyManager = /*#__PURE__*/function () {\n function NotifyManager() {\n this.queue = [];\n this.transactions = 0;\n\n this.notifyFn = function (callback) {\n callback();\n };\n\n this.batchNotifyFn = function (callback) {\n callback();\n };\n }\n\n var _proto = NotifyManager.prototype;\n\n _proto.batch = function batch(callback) {\n var result;\n this.transactions++;\n\n try {\n result = callback();\n } finally {\n this.transactions--;\n\n if (!this.transactions) {\n this.flush();\n }\n }\n\n return result;\n };\n\n _proto.schedule = function schedule(callback) {\n var _this = this;\n\n if (this.transactions) {\n this.queue.push(callback);\n } else {\n scheduleMicrotask(function () {\n _this.notifyFn(callback);\n });\n }\n }\n /**\n * All calls to the wrapped function will be batched.\n */\n ;\n\n _proto.batchCalls = function batchCalls(callback) {\n var _this2 = this;\n\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this2.schedule(function () {\n callback.apply(void 0, args);\n });\n };\n };\n\n _proto.flush = function flush() {\n var _this3 = this;\n\n var queue = this.queue;\n this.queue = [];\n\n if (queue.length) {\n scheduleMicrotask(function () {\n _this3.batchNotifyFn(function () {\n queue.forEach(function (callback) {\n _this3.notifyFn(callback);\n });\n });\n });\n }\n }\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n ;\n\n _proto.setNotifyFunction = function setNotifyFunction(fn) {\n this.notifyFn = fn;\n }\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n ;\n\n _proto.setBatchNotifyFunction = function setBatchNotifyFunction(fn) {\n this.batchNotifyFn = fn;\n };\n\n return NotifyManager;\n}(); // SINGLETON\n\nexport var notifyManager = new NotifyManager();","// TYPES\n// FUNCTIONS\nvar logger = console;\nexport function getLogger() {\n return logger;\n}\nexport function setLogger(newLogger) {\n logger = newLogger;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { getAbortController, functionalUpdate, isValidTimeout, noop, replaceEqualDeep, timeUntilStale, ensureQueryKeyArray } from './utils';\nimport { notifyManager } from './notifyManager';\nimport { getLogger } from './logger';\nimport { Retryer, isCancelledError } from './retryer'; // TYPES\n\n// CLASS\nexport var Query = /*#__PURE__*/function () {\n function Query(config) {\n this.abortSignalConsumed = false;\n this.hadObservers = false;\n this.defaultOptions = config.defaultOptions;\n this.setOptions(config.options);\n this.observers = [];\n this.cache = config.cache;\n this.queryKey = config.queryKey;\n this.queryHash = config.queryHash;\n this.initialState = config.state || this.getDefaultState(this.options);\n this.state = this.initialState;\n this.meta = config.meta;\n this.scheduleGc();\n }\n\n var _proto = Query.prototype;\n\n _proto.setOptions = function setOptions(options) {\n var _this$options$cacheTi;\n\n this.options = _extends({}, this.defaultOptions, options);\n this.meta = options == null ? void 0 : options.meta; // Default to 5 minutes if not cache time is set\n\n this.cacheTime = Math.max(this.cacheTime || 0, (_this$options$cacheTi = this.options.cacheTime) != null ? _this$options$cacheTi : 5 * 60 * 1000);\n };\n\n _proto.setDefaultOptions = function setDefaultOptions(options) {\n this.defaultOptions = options;\n };\n\n _proto.scheduleGc = function scheduleGc() {\n var _this = this;\n\n this.clearGcTimeout();\n\n if (isValidTimeout(this.cacheTime)) {\n this.gcTimeout = setTimeout(function () {\n _this.optionalRemove();\n }, this.cacheTime);\n }\n };\n\n _proto.clearGcTimeout = function clearGcTimeout() {\n if (this.gcTimeout) {\n clearTimeout(this.gcTimeout);\n this.gcTimeout = undefined;\n }\n };\n\n _proto.optionalRemove = function optionalRemove() {\n if (!this.observers.length) {\n if (this.state.isFetching) {\n if (this.hadObservers) {\n this.scheduleGc();\n }\n } else {\n this.cache.remove(this);\n }\n }\n };\n\n _proto.setData = function setData(updater, options) {\n var _this$options$isDataE, _this$options;\n\n var prevData = this.state.data; // Get the new data\n\n var data = functionalUpdate(updater, prevData); // Use prev data if an isDataEqual function is defined and returns `true`\n\n if ((_this$options$isDataE = (_this$options = this.options).isDataEqual) == null ? void 0 : _this$options$isDataE.call(_this$options, prevData, data)) {\n data = prevData;\n } else if (this.options.structuralSharing !== false) {\n // Structurally share data between prev and new data if needed\n data = replaceEqualDeep(prevData, data);\n } // Set data and mark it as cached\n\n\n this.dispatch({\n data: data,\n type: 'success',\n dataUpdatedAt: options == null ? void 0 : options.updatedAt\n });\n return data;\n };\n\n _proto.setState = function setState(state, setStateOptions) {\n this.dispatch({\n type: 'setState',\n state: state,\n setStateOptions: setStateOptions\n });\n };\n\n _proto.cancel = function cancel(options) {\n var _this$retryer;\n\n var promise = this.promise;\n (_this$retryer = this.retryer) == null ? void 0 : _this$retryer.cancel(options);\n return promise ? promise.then(noop).catch(noop) : Promise.resolve();\n };\n\n _proto.destroy = function destroy() {\n this.clearGcTimeout();\n this.cancel({\n silent: true\n });\n };\n\n _proto.reset = function reset() {\n this.destroy();\n this.setState(this.initialState);\n };\n\n _proto.isActive = function isActive() {\n return this.observers.some(function (observer) {\n return observer.options.enabled !== false;\n });\n };\n\n _proto.isFetching = function isFetching() {\n return this.state.isFetching;\n };\n\n _proto.isStale = function isStale() {\n return this.state.isInvalidated || !this.state.dataUpdatedAt || this.observers.some(function (observer) {\n return observer.getCurrentResult().isStale;\n });\n };\n\n _proto.isStaleByTime = function isStaleByTime(staleTime) {\n if (staleTime === void 0) {\n staleTime = 0;\n }\n\n return this.state.isInvalidated || !this.state.dataUpdatedAt || !timeUntilStale(this.state.dataUpdatedAt, staleTime);\n };\n\n _proto.onFocus = function onFocus() {\n var _this$retryer2;\n\n var observer = this.observers.find(function (x) {\n return x.shouldFetchOnWindowFocus();\n });\n\n if (observer) {\n observer.refetch();\n } // Continue fetch if currently paused\n\n\n (_this$retryer2 = this.retryer) == null ? void 0 : _this$retryer2.continue();\n };\n\n _proto.onOnline = function onOnline() {\n var _this$retryer3;\n\n var observer = this.observers.find(function (x) {\n return x.shouldFetchOnReconnect();\n });\n\n if (observer) {\n observer.refetch();\n } // Continue fetch if currently paused\n\n\n (_this$retryer3 = this.retryer) == null ? void 0 : _this$retryer3.continue();\n };\n\n _proto.addObserver = function addObserver(observer) {\n if (this.observers.indexOf(observer) === -1) {\n this.observers.push(observer);\n this.hadObservers = true; // Stop the query from being garbage collected\n\n this.clearGcTimeout();\n this.cache.notify({\n type: 'observerAdded',\n query: this,\n observer: observer\n });\n }\n };\n\n _proto.removeObserver = function removeObserver(observer) {\n if (this.observers.indexOf(observer) !== -1) {\n this.observers = this.observers.filter(function (x) {\n return x !== observer;\n });\n\n if (!this.observers.length) {\n // If the transport layer does not support cancellation\n // we'll let the query continue so the result can be cached\n if (this.retryer) {\n if (this.retryer.isTransportCancelable || this.abortSignalConsumed) {\n this.retryer.cancel({\n revert: true\n });\n } else {\n this.retryer.cancelRetry();\n }\n }\n\n if (this.cacheTime) {\n this.scheduleGc();\n } else {\n this.cache.remove(this);\n }\n }\n\n this.cache.notify({\n type: 'observerRemoved',\n query: this,\n observer: observer\n });\n }\n };\n\n _proto.getObserversCount = function getObserversCount() {\n return this.observers.length;\n };\n\n _proto.invalidate = function invalidate() {\n if (!this.state.isInvalidated) {\n this.dispatch({\n type: 'invalidate'\n });\n }\n };\n\n _proto.fetch = function fetch(options, fetchOptions) {\n var _this2 = this,\n _this$options$behavio,\n _context$fetchOptions,\n _abortController$abor;\n\n if (this.state.isFetching) {\n if (this.state.dataUpdatedAt && (fetchOptions == null ? void 0 : fetchOptions.cancelRefetch)) {\n // Silently cancel current fetch if the user wants to cancel refetches\n this.cancel({\n silent: true\n });\n } else if (this.promise) {\n var _this$retryer4;\n\n // make sure that retries that were potentially cancelled due to unmounts can continue\n (_this$retryer4 = this.retryer) == null ? void 0 : _this$retryer4.continueRetry(); // Return current promise if we are already fetching\n\n return this.promise;\n }\n } // Update config if passed, otherwise the config from the last execution is used\n\n\n if (options) {\n this.setOptions(options);\n } // Use the options from the first observer with a query function if no function is found.\n // This can happen when the query is hydrated or created with setQueryData.\n\n\n if (!this.options.queryFn) {\n var observer = this.observers.find(function (x) {\n return x.options.queryFn;\n });\n\n if (observer) {\n this.setOptions(observer.options);\n }\n }\n\n var queryKey = ensureQueryKeyArray(this.queryKey);\n var abortController = getAbortController(); // Create query function context\n\n var queryFnContext = {\n queryKey: queryKey,\n pageParam: undefined,\n meta: this.meta\n };\n Object.defineProperty(queryFnContext, 'signal', {\n enumerable: true,\n get: function get() {\n if (abortController) {\n _this2.abortSignalConsumed = true;\n return abortController.signal;\n }\n\n return undefined;\n }\n }); // Create fetch function\n\n var fetchFn = function fetchFn() {\n if (!_this2.options.queryFn) {\n return Promise.reject('Missing queryFn');\n }\n\n _this2.abortSignalConsumed = false;\n return _this2.options.queryFn(queryFnContext);\n }; // Trigger behavior hook\n\n\n var context = {\n fetchOptions: fetchOptions,\n options: this.options,\n queryKey: queryKey,\n state: this.state,\n fetchFn: fetchFn,\n meta: this.meta\n };\n\n if ((_this$options$behavio = this.options.behavior) == null ? void 0 : _this$options$behavio.onFetch) {\n var _this$options$behavio2;\n\n (_this$options$behavio2 = this.options.behavior) == null ? void 0 : _this$options$behavio2.onFetch(context);\n } // Store state in case the current fetch needs to be reverted\n\n\n this.revertState = this.state; // Set to fetching state if not already in it\n\n if (!this.state.isFetching || this.state.fetchMeta !== ((_context$fetchOptions = context.fetchOptions) == null ? void 0 : _context$fetchOptions.meta)) {\n var _context$fetchOptions2;\n\n this.dispatch({\n type: 'fetch',\n meta: (_context$fetchOptions2 = context.fetchOptions) == null ? void 0 : _context$fetchOptions2.meta\n });\n } // Try to fetch the data\n\n\n this.retryer = new Retryer({\n fn: context.fetchFn,\n abort: abortController == null ? void 0 : (_abortController$abor = abortController.abort) == null ? void 0 : _abortController$abor.bind(abortController),\n onSuccess: function onSuccess(data) {\n _this2.setData(data); // Notify cache callback\n\n\n _this2.cache.config.onSuccess == null ? void 0 : _this2.cache.config.onSuccess(data, _this2); // Remove query after fetching if cache time is 0\n\n if (_this2.cacheTime === 0) {\n _this2.optionalRemove();\n }\n },\n onError: function onError(error) {\n // Optimistically update state if needed\n if (!(isCancelledError(error) && error.silent)) {\n _this2.dispatch({\n type: 'error',\n error: error\n });\n }\n\n if (!isCancelledError(error)) {\n // Notify cache callback\n _this2.cache.config.onError == null ? void 0 : _this2.cache.config.onError(error, _this2); // Log error\n\n getLogger().error(error);\n } // Remove query after fetching if cache time is 0\n\n\n if (_this2.cacheTime === 0) {\n _this2.optionalRemove();\n }\n },\n onFail: function onFail() {\n _this2.dispatch({\n type: 'failed'\n });\n },\n onPause: function onPause() {\n _this2.dispatch({\n type: 'pause'\n });\n },\n onContinue: function onContinue() {\n _this2.dispatch({\n type: 'continue'\n });\n },\n retry: context.options.retry,\n retryDelay: context.options.retryDelay\n });\n this.promise = this.retryer.promise;\n return this.promise;\n };\n\n _proto.dispatch = function dispatch(action) {\n var _this3 = this;\n\n this.state = this.reducer(this.state, action);\n notifyManager.batch(function () {\n _this3.observers.forEach(function (observer) {\n observer.onQueryUpdate(action);\n });\n\n _this3.cache.notify({\n query: _this3,\n type: 'queryUpdated',\n action: action\n });\n });\n };\n\n _proto.getDefaultState = function getDefaultState(options) {\n var data = typeof options.initialData === 'function' ? options.initialData() : options.initialData;\n var hasInitialData = typeof options.initialData !== 'undefined';\n var initialDataUpdatedAt = hasInitialData ? typeof options.initialDataUpdatedAt === 'function' ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;\n var hasData = typeof data !== 'undefined';\n return {\n data: data,\n dataUpdateCount: 0,\n dataUpdatedAt: hasData ? initialDataUpdatedAt != null ? initialDataUpdatedAt : Date.now() : 0,\n error: null,\n errorUpdateCount: 0,\n errorUpdatedAt: 0,\n fetchFailureCount: 0,\n fetchMeta: null,\n isFetching: false,\n isInvalidated: false,\n isPaused: false,\n status: hasData ? 'success' : 'idle'\n };\n };\n\n _proto.reducer = function reducer(state, action) {\n var _action$meta, _action$dataUpdatedAt;\n\n switch (action.type) {\n case 'failed':\n return _extends({}, state, {\n fetchFailureCount: state.fetchFailureCount + 1\n });\n\n case 'pause':\n return _extends({}, state, {\n isPaused: true\n });\n\n case 'continue':\n return _extends({}, state, {\n isPaused: false\n });\n\n case 'fetch':\n return _extends({}, state, {\n fetchFailureCount: 0,\n fetchMeta: (_action$meta = action.meta) != null ? _action$meta : null,\n isFetching: true,\n isPaused: false\n }, !state.dataUpdatedAt && {\n error: null,\n status: 'loading'\n });\n\n case 'success':\n return _extends({}, state, {\n data: action.data,\n dataUpdateCount: state.dataUpdateCount + 1,\n dataUpdatedAt: (_action$dataUpdatedAt = action.dataUpdatedAt) != null ? _action$dataUpdatedAt : Date.now(),\n error: null,\n fetchFailureCount: 0,\n isFetching: false,\n isInvalidated: false,\n isPaused: false,\n status: 'success'\n });\n\n case 'error':\n var error = action.error;\n\n if (isCancelledError(error) && error.revert && this.revertState) {\n return _extends({}, this.revertState);\n }\n\n return _extends({}, state, {\n error: error,\n errorUpdateCount: state.errorUpdateCount + 1,\n errorUpdatedAt: Date.now(),\n fetchFailureCount: state.fetchFailureCount + 1,\n isFetching: false,\n isPaused: false,\n status: 'error'\n });\n\n case 'invalidate':\n return _extends({}, state, {\n isInvalidated: true\n });\n\n case 'setState':\n return _extends({}, state, action.state);\n\n default:\n return state;\n }\n };\n\n return Query;\n}();","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { hashQueryKeyByOptions, matchQuery, parseFilterArgs } from './utils';\nimport { Query } from './query';\nimport { notifyManager } from './notifyManager';\nimport { Subscribable } from './subscribable';\n// CLASS\nexport var QueryCache = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(QueryCache, _Subscribable);\n\n function QueryCache(config) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.config = config || {};\n _this.queries = [];\n _this.queriesMap = {};\n return _this;\n }\n\n var _proto = QueryCache.prototype;\n\n _proto.build = function build(client, options, state) {\n var _options$queryHash;\n\n var queryKey = options.queryKey;\n var queryHash = (_options$queryHash = options.queryHash) != null ? _options$queryHash : hashQueryKeyByOptions(queryKey, options);\n var query = this.get(queryHash);\n\n if (!query) {\n query = new Query({\n cache: this,\n queryKey: queryKey,\n queryHash: queryHash,\n options: client.defaultQueryOptions(options),\n state: state,\n defaultOptions: client.getQueryDefaults(queryKey),\n meta: options.meta\n });\n this.add(query);\n }\n\n return query;\n };\n\n _proto.add = function add(query) {\n if (!this.queriesMap[query.queryHash]) {\n this.queriesMap[query.queryHash] = query;\n this.queries.push(query);\n this.notify({\n type: 'queryAdded',\n query: query\n });\n }\n };\n\n _proto.remove = function remove(query) {\n var queryInMap = this.queriesMap[query.queryHash];\n\n if (queryInMap) {\n query.destroy();\n this.queries = this.queries.filter(function (x) {\n return x !== query;\n });\n\n if (queryInMap === query) {\n delete this.queriesMap[query.queryHash];\n }\n\n this.notify({\n type: 'queryRemoved',\n query: query\n });\n }\n };\n\n _proto.clear = function clear() {\n var _this2 = this;\n\n notifyManager.batch(function () {\n _this2.queries.forEach(function (query) {\n _this2.remove(query);\n });\n });\n };\n\n _proto.get = function get(queryHash) {\n return this.queriesMap[queryHash];\n };\n\n _proto.getAll = function getAll() {\n return this.queries;\n };\n\n _proto.find = function find(arg1, arg2) {\n var _parseFilterArgs = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs[0];\n\n if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n\n return this.queries.find(function (query) {\n return matchQuery(filters, query);\n });\n };\n\n _proto.findAll = function findAll(arg1, arg2) {\n var _parseFilterArgs2 = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs2[0];\n\n return Object.keys(filters).length > 0 ? this.queries.filter(function (query) {\n return matchQuery(filters, query);\n }) : this.queries;\n };\n\n _proto.notify = function notify(event) {\n var _this3 = this;\n\n notifyManager.batch(function () {\n _this3.listeners.forEach(function (listener) {\n listener(event);\n });\n });\n };\n\n _proto.onFocus = function onFocus() {\n var _this4 = this;\n\n notifyManager.batch(function () {\n _this4.queries.forEach(function (query) {\n query.onFocus();\n });\n });\n };\n\n _proto.onOnline = function onOnline() {\n var _this5 = this;\n\n notifyManager.batch(function () {\n _this5.queries.forEach(function (query) {\n query.onOnline();\n });\n });\n };\n\n return QueryCache;\n}(Subscribable);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { getLogger } from './logger';\nimport { notifyManager } from './notifyManager';\nimport { Retryer } from './retryer';\nimport { noop } from './utils'; // TYPES\n\n// CLASS\nexport var Mutation = /*#__PURE__*/function () {\n function Mutation(config) {\n this.options = _extends({}, config.defaultOptions, config.options);\n this.mutationId = config.mutationId;\n this.mutationCache = config.mutationCache;\n this.observers = [];\n this.state = config.state || getDefaultState();\n this.meta = config.meta;\n }\n\n var _proto = Mutation.prototype;\n\n _proto.setState = function setState(state) {\n this.dispatch({\n type: 'setState',\n state: state\n });\n };\n\n _proto.addObserver = function addObserver(observer) {\n if (this.observers.indexOf(observer) === -1) {\n this.observers.push(observer);\n }\n };\n\n _proto.removeObserver = function removeObserver(observer) {\n this.observers = this.observers.filter(function (x) {\n return x !== observer;\n });\n };\n\n _proto.cancel = function cancel() {\n if (this.retryer) {\n this.retryer.cancel();\n return this.retryer.promise.then(noop).catch(noop);\n }\n\n return Promise.resolve();\n };\n\n _proto.continue = function _continue() {\n if (this.retryer) {\n this.retryer.continue();\n return this.retryer.promise;\n }\n\n return this.execute();\n };\n\n _proto.execute = function execute() {\n var _this = this;\n\n var data;\n var restored = this.state.status === 'loading';\n var promise = Promise.resolve();\n\n if (!restored) {\n this.dispatch({\n type: 'loading',\n variables: this.options.variables\n });\n promise = promise.then(function () {\n // Notify cache callback\n _this.mutationCache.config.onMutate == null ? void 0 : _this.mutationCache.config.onMutate(_this.state.variables, _this);\n }).then(function () {\n return _this.options.onMutate == null ? void 0 : _this.options.onMutate(_this.state.variables);\n }).then(function (context) {\n if (context !== _this.state.context) {\n _this.dispatch({\n type: 'loading',\n context: context,\n variables: _this.state.variables\n });\n }\n });\n }\n\n return promise.then(function () {\n return _this.executeMutation();\n }).then(function (result) {\n data = result; // Notify cache callback\n\n _this.mutationCache.config.onSuccess == null ? void 0 : _this.mutationCache.config.onSuccess(data, _this.state.variables, _this.state.context, _this);\n }).then(function () {\n return _this.options.onSuccess == null ? void 0 : _this.options.onSuccess(data, _this.state.variables, _this.state.context);\n }).then(function () {\n return _this.options.onSettled == null ? void 0 : _this.options.onSettled(data, null, _this.state.variables, _this.state.context);\n }).then(function () {\n _this.dispatch({\n type: 'success',\n data: data\n });\n\n return data;\n }).catch(function (error) {\n // Notify cache callback\n _this.mutationCache.config.onError == null ? void 0 : _this.mutationCache.config.onError(error, _this.state.variables, _this.state.context, _this); // Log error\n\n getLogger().error(error);\n return Promise.resolve().then(function () {\n return _this.options.onError == null ? void 0 : _this.options.onError(error, _this.state.variables, _this.state.context);\n }).then(function () {\n return _this.options.onSettled == null ? void 0 : _this.options.onSettled(undefined, error, _this.state.variables, _this.state.context);\n }).then(function () {\n _this.dispatch({\n type: 'error',\n error: error\n });\n\n throw error;\n });\n });\n };\n\n _proto.executeMutation = function executeMutation() {\n var _this2 = this,\n _this$options$retry;\n\n this.retryer = new Retryer({\n fn: function fn() {\n if (!_this2.options.mutationFn) {\n return Promise.reject('No mutationFn found');\n }\n\n return _this2.options.mutationFn(_this2.state.variables);\n },\n onFail: function onFail() {\n _this2.dispatch({\n type: 'failed'\n });\n },\n onPause: function onPause() {\n _this2.dispatch({\n type: 'pause'\n });\n },\n onContinue: function onContinue() {\n _this2.dispatch({\n type: 'continue'\n });\n },\n retry: (_this$options$retry = this.options.retry) != null ? _this$options$retry : 0,\n retryDelay: this.options.retryDelay\n });\n return this.retryer.promise;\n };\n\n _proto.dispatch = function dispatch(action) {\n var _this3 = this;\n\n this.state = reducer(this.state, action);\n notifyManager.batch(function () {\n _this3.observers.forEach(function (observer) {\n observer.onMutationUpdate(action);\n });\n\n _this3.mutationCache.notify(_this3);\n });\n };\n\n return Mutation;\n}();\nexport function getDefaultState() {\n return {\n context: undefined,\n data: undefined,\n error: null,\n failureCount: 0,\n isPaused: false,\n status: 'idle',\n variables: undefined\n };\n}\n\nfunction reducer(state, action) {\n switch (action.type) {\n case 'failed':\n return _extends({}, state, {\n failureCount: state.failureCount + 1\n });\n\n case 'pause':\n return _extends({}, state, {\n isPaused: true\n });\n\n case 'continue':\n return _extends({}, state, {\n isPaused: false\n });\n\n case 'loading':\n return _extends({}, state, {\n context: action.context,\n data: undefined,\n error: null,\n isPaused: false,\n status: 'loading',\n variables: action.variables\n });\n\n case 'success':\n return _extends({}, state, {\n data: action.data,\n error: null,\n status: 'success',\n isPaused: false\n });\n\n case 'error':\n return _extends({}, state, {\n data: undefined,\n error: action.error,\n failureCount: state.failureCount + 1,\n isPaused: false,\n status: 'error'\n });\n\n case 'setState':\n return _extends({}, state, action.state);\n\n default:\n return state;\n }\n}","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { notifyManager } from './notifyManager';\nimport { Mutation } from './mutation';\nimport { matchMutation, noop } from './utils';\nimport { Subscribable } from './subscribable'; // TYPES\n\n// CLASS\nexport var MutationCache = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(MutationCache, _Subscribable);\n\n function MutationCache(config) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.config = config || {};\n _this.mutations = [];\n _this.mutationId = 0;\n return _this;\n }\n\n var _proto = MutationCache.prototype;\n\n _proto.build = function build(client, options, state) {\n var mutation = new Mutation({\n mutationCache: this,\n mutationId: ++this.mutationId,\n options: client.defaultMutationOptions(options),\n state: state,\n defaultOptions: options.mutationKey ? client.getMutationDefaults(options.mutationKey) : undefined,\n meta: options.meta\n });\n this.add(mutation);\n return mutation;\n };\n\n _proto.add = function add(mutation) {\n this.mutations.push(mutation);\n this.notify(mutation);\n };\n\n _proto.remove = function remove(mutation) {\n this.mutations = this.mutations.filter(function (x) {\n return x !== mutation;\n });\n mutation.cancel();\n this.notify(mutation);\n };\n\n _proto.clear = function clear() {\n var _this2 = this;\n\n notifyManager.batch(function () {\n _this2.mutations.forEach(function (mutation) {\n _this2.remove(mutation);\n });\n });\n };\n\n _proto.getAll = function getAll() {\n return this.mutations;\n };\n\n _proto.find = function find(filters) {\n if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n\n return this.mutations.find(function (mutation) {\n return matchMutation(filters, mutation);\n });\n };\n\n _proto.findAll = function findAll(filters) {\n return this.mutations.filter(function (mutation) {\n return matchMutation(filters, mutation);\n });\n };\n\n _proto.notify = function notify(mutation) {\n var _this3 = this;\n\n notifyManager.batch(function () {\n _this3.listeners.forEach(function (listener) {\n listener(mutation);\n });\n });\n };\n\n _proto.onFocus = function onFocus() {\n this.resumePausedMutations();\n };\n\n _proto.onOnline = function onOnline() {\n this.resumePausedMutations();\n };\n\n _proto.resumePausedMutations = function resumePausedMutations() {\n var pausedMutations = this.mutations.filter(function (x) {\n return x.state.isPaused;\n });\n return notifyManager.batch(function () {\n return pausedMutations.reduce(function (promise, mutation) {\n return promise.then(function () {\n return mutation.continue().catch(noop);\n });\n }, Promise.resolve());\n });\n };\n\n return MutationCache;\n}(Subscribable);","import { isCancelable } from './retryer';\nimport { getAbortController } from './utils';\nexport function infiniteQueryBehavior() {\n return {\n onFetch: function onFetch(context) {\n context.fetchFn = function () {\n var _context$fetchOptions, _context$fetchOptions2, _context$fetchOptions3, _context$fetchOptions4, _context$state$data, _context$state$data2;\n\n var refetchPage = (_context$fetchOptions = context.fetchOptions) == null ? void 0 : (_context$fetchOptions2 = _context$fetchOptions.meta) == null ? void 0 : _context$fetchOptions2.refetchPage;\n var fetchMore = (_context$fetchOptions3 = context.fetchOptions) == null ? void 0 : (_context$fetchOptions4 = _context$fetchOptions3.meta) == null ? void 0 : _context$fetchOptions4.fetchMore;\n var pageParam = fetchMore == null ? void 0 : fetchMore.pageParam;\n var isFetchingNextPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'forward';\n var isFetchingPreviousPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'backward';\n var oldPages = ((_context$state$data = context.state.data) == null ? void 0 : _context$state$data.pages) || [];\n var oldPageParams = ((_context$state$data2 = context.state.data) == null ? void 0 : _context$state$data2.pageParams) || [];\n var abortController = getAbortController();\n var abortSignal = abortController == null ? void 0 : abortController.signal;\n var newPageParams = oldPageParams;\n var cancelled = false; // Get query function\n\n var queryFn = context.options.queryFn || function () {\n return Promise.reject('Missing queryFn');\n };\n\n var buildNewPages = function buildNewPages(pages, param, page, previous) {\n newPageParams = previous ? [param].concat(newPageParams) : [].concat(newPageParams, [param]);\n return previous ? [page].concat(pages) : [].concat(pages, [page]);\n }; // Create function to fetch a page\n\n\n var fetchPage = function fetchPage(pages, manual, param, previous) {\n if (cancelled) {\n return Promise.reject('Cancelled');\n }\n\n if (typeof param === 'undefined' && !manual && pages.length) {\n return Promise.resolve(pages);\n }\n\n var queryFnContext = {\n queryKey: context.queryKey,\n signal: abortSignal,\n pageParam: param,\n meta: context.meta\n };\n var queryFnResult = queryFn(queryFnContext);\n var promise = Promise.resolve(queryFnResult).then(function (page) {\n return buildNewPages(pages, param, page, previous);\n });\n\n if (isCancelable(queryFnResult)) {\n var promiseAsAny = promise;\n promiseAsAny.cancel = queryFnResult.cancel;\n }\n\n return promise;\n };\n\n var promise; // Fetch first page?\n\n if (!oldPages.length) {\n promise = fetchPage([]);\n } // Fetch next page?\n else if (isFetchingNextPage) {\n var manual = typeof pageParam !== 'undefined';\n var param = manual ? pageParam : getNextPageParam(context.options, oldPages);\n promise = fetchPage(oldPages, manual, param);\n } // Fetch previous page?\n else if (isFetchingPreviousPage) {\n var _manual = typeof pageParam !== 'undefined';\n\n var _param = _manual ? pageParam : getPreviousPageParam(context.options, oldPages);\n\n promise = fetchPage(oldPages, _manual, _param, true);\n } // Refetch pages\n else {\n (function () {\n newPageParams = [];\n var manual = typeof context.options.getNextPageParam === 'undefined';\n var shouldFetchFirstPage = refetchPage && oldPages[0] ? refetchPage(oldPages[0], 0, oldPages) : true; // Fetch first page\n\n promise = shouldFetchFirstPage ? fetchPage([], manual, oldPageParams[0]) : Promise.resolve(buildNewPages([], oldPageParams[0], oldPages[0])); // Fetch remaining pages\n\n var _loop = function _loop(i) {\n promise = promise.then(function (pages) {\n var shouldFetchNextPage = refetchPage && oldPages[i] ? refetchPage(oldPages[i], i, oldPages) : true;\n\n if (shouldFetchNextPage) {\n var _param2 = manual ? oldPageParams[i] : getNextPageParam(context.options, pages);\n\n return fetchPage(pages, manual, _param2);\n }\n\n return Promise.resolve(buildNewPages(pages, oldPageParams[i], oldPages[i]));\n });\n };\n\n for (var i = 1; i < oldPages.length; i++) {\n _loop(i);\n }\n })();\n }\n\n var finalPromise = promise.then(function (pages) {\n return {\n pages: pages,\n pageParams: newPageParams\n };\n });\n var finalPromiseAsAny = finalPromise;\n\n finalPromiseAsAny.cancel = function () {\n cancelled = true;\n abortController == null ? void 0 : abortController.abort();\n\n if (isCancelable(promise)) {\n promise.cancel();\n }\n };\n\n return finalPromise;\n };\n }\n };\n}\nexport function getNextPageParam(options, pages) {\n return options.getNextPageParam == null ? void 0 : options.getNextPageParam(pages[pages.length - 1], pages);\n}\nexport function getPreviousPageParam(options, pages) {\n return options.getPreviousPageParam == null ? void 0 : options.getPreviousPageParam(pages[0], pages);\n}\n/**\n * Checks if there is a next page.\n * Returns `undefined` if it cannot be determined.\n */\n\nexport function hasNextPage(options, pages) {\n if (options.getNextPageParam && Array.isArray(pages)) {\n var nextPageParam = getNextPageParam(options, pages);\n return typeof nextPageParam !== 'undefined' && nextPageParam !== null && nextPageParam !== false;\n }\n}\n/**\n * Checks if there is a previous page.\n * Returns `undefined` if it cannot be determined.\n */\n\nexport function hasPreviousPage(options, pages) {\n if (options.getPreviousPageParam && Array.isArray(pages)) {\n var previousPageParam = getPreviousPageParam(options, pages);\n return typeof previousPageParam !== 'undefined' && previousPageParam !== null && previousPageParam !== false;\n }\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { hashQueryKey, noop, parseFilterArgs, parseQueryArgs, partialMatchKey, hashQueryKeyByOptions } from './utils';\nimport { QueryCache } from './queryCache';\nimport { MutationCache } from './mutationCache';\nimport { focusManager } from './focusManager';\nimport { onlineManager } from './onlineManager';\nimport { notifyManager } from './notifyManager';\nimport { infiniteQueryBehavior } from './infiniteQueryBehavior';\n// CLASS\nexport var QueryClient = /*#__PURE__*/function () {\n function QueryClient(config) {\n if (config === void 0) {\n config = {};\n }\n\n this.queryCache = config.queryCache || new QueryCache();\n this.mutationCache = config.mutationCache || new MutationCache();\n this.defaultOptions = config.defaultOptions || {};\n this.queryDefaults = [];\n this.mutationDefaults = [];\n }\n\n var _proto = QueryClient.prototype;\n\n _proto.mount = function mount() {\n var _this = this;\n\n this.unsubscribeFocus = focusManager.subscribe(function () {\n if (focusManager.isFocused() && onlineManager.isOnline()) {\n _this.mutationCache.onFocus();\n\n _this.queryCache.onFocus();\n }\n });\n this.unsubscribeOnline = onlineManager.subscribe(function () {\n if (focusManager.isFocused() && onlineManager.isOnline()) {\n _this.mutationCache.onOnline();\n\n _this.queryCache.onOnline();\n }\n });\n };\n\n _proto.unmount = function unmount() {\n var _this$unsubscribeFocu, _this$unsubscribeOnli;\n\n (_this$unsubscribeFocu = this.unsubscribeFocus) == null ? void 0 : _this$unsubscribeFocu.call(this);\n (_this$unsubscribeOnli = this.unsubscribeOnline) == null ? void 0 : _this$unsubscribeOnli.call(this);\n };\n\n _proto.isFetching = function isFetching(arg1, arg2) {\n var _parseFilterArgs = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs[0];\n\n filters.fetching = true;\n return this.queryCache.findAll(filters).length;\n };\n\n _proto.isMutating = function isMutating(filters) {\n return this.mutationCache.findAll(_extends({}, filters, {\n fetching: true\n })).length;\n };\n\n _proto.getQueryData = function getQueryData(queryKey, filters) {\n var _this$queryCache$find;\n\n return (_this$queryCache$find = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find.state.data;\n };\n\n _proto.getQueriesData = function getQueriesData(queryKeyOrFilters) {\n return this.getQueryCache().findAll(queryKeyOrFilters).map(function (_ref) {\n var queryKey = _ref.queryKey,\n state = _ref.state;\n var data = state.data;\n return [queryKey, data];\n });\n };\n\n _proto.setQueryData = function setQueryData(queryKey, updater, options) {\n var parsedOptions = parseQueryArgs(queryKey);\n var defaultedOptions = this.defaultQueryOptions(parsedOptions);\n return this.queryCache.build(this, defaultedOptions).setData(updater, options);\n };\n\n _proto.setQueriesData = function setQueriesData(queryKeyOrFilters, updater, options) {\n var _this2 = this;\n\n return notifyManager.batch(function () {\n return _this2.getQueryCache().findAll(queryKeyOrFilters).map(function (_ref2) {\n var queryKey = _ref2.queryKey;\n return [queryKey, _this2.setQueryData(queryKey, updater, options)];\n });\n });\n };\n\n _proto.getQueryState = function getQueryState(queryKey, filters) {\n var _this$queryCache$find2;\n\n return (_this$queryCache$find2 = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find2.state;\n };\n\n _proto.removeQueries = function removeQueries(arg1, arg2) {\n var _parseFilterArgs2 = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs2[0];\n\n var queryCache = this.queryCache;\n notifyManager.batch(function () {\n queryCache.findAll(filters).forEach(function (query) {\n queryCache.remove(query);\n });\n });\n };\n\n _proto.resetQueries = function resetQueries(arg1, arg2, arg3) {\n var _this3 = this;\n\n var _parseFilterArgs3 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs3[0],\n options = _parseFilterArgs3[1];\n\n var queryCache = this.queryCache;\n\n var refetchFilters = _extends({}, filters, {\n active: true\n });\n\n return notifyManager.batch(function () {\n queryCache.findAll(filters).forEach(function (query) {\n query.reset();\n });\n return _this3.refetchQueries(refetchFilters, options);\n });\n };\n\n _proto.cancelQueries = function cancelQueries(arg1, arg2, arg3) {\n var _this4 = this;\n\n var _parseFilterArgs4 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs4[0],\n _parseFilterArgs4$ = _parseFilterArgs4[1],\n cancelOptions = _parseFilterArgs4$ === void 0 ? {} : _parseFilterArgs4$;\n\n if (typeof cancelOptions.revert === 'undefined') {\n cancelOptions.revert = true;\n }\n\n var promises = notifyManager.batch(function () {\n return _this4.queryCache.findAll(filters).map(function (query) {\n return query.cancel(cancelOptions);\n });\n });\n return Promise.all(promises).then(noop).catch(noop);\n };\n\n _proto.invalidateQueries = function invalidateQueries(arg1, arg2, arg3) {\n var _ref3,\n _filters$refetchActiv,\n _filters$refetchInact,\n _this5 = this;\n\n var _parseFilterArgs5 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs5[0],\n options = _parseFilterArgs5[1];\n\n var refetchFilters = _extends({}, filters, {\n // if filters.refetchActive is not provided and filters.active is explicitly false,\n // e.g. invalidateQueries({ active: false }), we don't want to refetch active queries\n active: (_ref3 = (_filters$refetchActiv = filters.refetchActive) != null ? _filters$refetchActiv : filters.active) != null ? _ref3 : true,\n inactive: (_filters$refetchInact = filters.refetchInactive) != null ? _filters$refetchInact : false\n });\n\n return notifyManager.batch(function () {\n _this5.queryCache.findAll(filters).forEach(function (query) {\n query.invalidate();\n });\n\n return _this5.refetchQueries(refetchFilters, options);\n });\n };\n\n _proto.refetchQueries = function refetchQueries(arg1, arg2, arg3) {\n var _this6 = this;\n\n var _parseFilterArgs6 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs6[0],\n options = _parseFilterArgs6[1];\n\n var promises = notifyManager.batch(function () {\n return _this6.queryCache.findAll(filters).map(function (query) {\n return query.fetch(undefined, _extends({}, options, {\n meta: {\n refetchPage: filters == null ? void 0 : filters.refetchPage\n }\n }));\n });\n });\n var promise = Promise.all(promises).then(noop);\n\n if (!(options == null ? void 0 : options.throwOnError)) {\n promise = promise.catch(noop);\n }\n\n return promise;\n };\n\n _proto.fetchQuery = function fetchQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n var defaultedOptions = this.defaultQueryOptions(parsedOptions); // https://github.com/tannerlinsley/react-query/issues/652\n\n if (typeof defaultedOptions.retry === 'undefined') {\n defaultedOptions.retry = false;\n }\n\n var query = this.queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(defaultedOptions.staleTime) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n };\n\n _proto.prefetchQuery = function prefetchQuery(arg1, arg2, arg3) {\n return this.fetchQuery(arg1, arg2, arg3).then(noop).catch(noop);\n };\n\n _proto.fetchInfiniteQuery = function fetchInfiniteQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n parsedOptions.behavior = infiniteQueryBehavior();\n return this.fetchQuery(parsedOptions);\n };\n\n _proto.prefetchInfiniteQuery = function prefetchInfiniteQuery(arg1, arg2, arg3) {\n return this.fetchInfiniteQuery(arg1, arg2, arg3).then(noop).catch(noop);\n };\n\n _proto.cancelMutations = function cancelMutations() {\n var _this7 = this;\n\n var promises = notifyManager.batch(function () {\n return _this7.mutationCache.getAll().map(function (mutation) {\n return mutation.cancel();\n });\n });\n return Promise.all(promises).then(noop).catch(noop);\n };\n\n _proto.resumePausedMutations = function resumePausedMutations() {\n return this.getMutationCache().resumePausedMutations();\n };\n\n _proto.executeMutation = function executeMutation(options) {\n return this.mutationCache.build(this, options).execute();\n };\n\n _proto.getQueryCache = function getQueryCache() {\n return this.queryCache;\n };\n\n _proto.getMutationCache = function getMutationCache() {\n return this.mutationCache;\n };\n\n _proto.getDefaultOptions = function getDefaultOptions() {\n return this.defaultOptions;\n };\n\n _proto.setDefaultOptions = function setDefaultOptions(options) {\n this.defaultOptions = options;\n };\n\n _proto.setQueryDefaults = function setQueryDefaults(queryKey, options) {\n var result = this.queryDefaults.find(function (x) {\n return hashQueryKey(queryKey) === hashQueryKey(x.queryKey);\n });\n\n if (result) {\n result.defaultOptions = options;\n } else {\n this.queryDefaults.push({\n queryKey: queryKey,\n defaultOptions: options\n });\n }\n };\n\n _proto.getQueryDefaults = function getQueryDefaults(queryKey) {\n var _this$queryDefaults$f;\n\n return queryKey ? (_this$queryDefaults$f = this.queryDefaults.find(function (x) {\n return partialMatchKey(queryKey, x.queryKey);\n })) == null ? void 0 : _this$queryDefaults$f.defaultOptions : undefined;\n };\n\n _proto.setMutationDefaults = function setMutationDefaults(mutationKey, options) {\n var result = this.mutationDefaults.find(function (x) {\n return hashQueryKey(mutationKey) === hashQueryKey(x.mutationKey);\n });\n\n if (result) {\n result.defaultOptions = options;\n } else {\n this.mutationDefaults.push({\n mutationKey: mutationKey,\n defaultOptions: options\n });\n }\n };\n\n _proto.getMutationDefaults = function getMutationDefaults(mutationKey) {\n var _this$mutationDefault;\n\n return mutationKey ? (_this$mutationDefault = this.mutationDefaults.find(function (x) {\n return partialMatchKey(mutationKey, x.mutationKey);\n })) == null ? void 0 : _this$mutationDefault.defaultOptions : undefined;\n };\n\n _proto.defaultQueryOptions = function defaultQueryOptions(options) {\n if (options == null ? void 0 : options._defaulted) {\n return options;\n }\n\n var defaultedOptions = _extends({}, this.defaultOptions.queries, this.getQueryDefaults(options == null ? void 0 : options.queryKey), options, {\n _defaulted: true\n });\n\n if (!defaultedOptions.queryHash && defaultedOptions.queryKey) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(defaultedOptions.queryKey, defaultedOptions);\n }\n\n return defaultedOptions;\n };\n\n _proto.defaultQueryObserverOptions = function defaultQueryObserverOptions(options) {\n return this.defaultQueryOptions(options);\n };\n\n _proto.defaultMutationOptions = function defaultMutationOptions(options) {\n if (options == null ? void 0 : options._defaulted) {\n return options;\n }\n\n return _extends({}, this.defaultOptions.mutations, this.getMutationDefaults(options == null ? void 0 : options.mutationKey), options, {\n _defaulted: true\n });\n };\n\n _proto.clear = function clear() {\n this.queryCache.clear();\n this.mutationCache.clear();\n };\n\n return QueryClient;\n}();","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { isServer, isValidTimeout, noop, replaceEqualDeep, shallowEqualObjects, timeUntilStale } from './utils';\nimport { notifyManager } from './notifyManager';\nimport { focusManager } from './focusManager';\nimport { Subscribable } from './subscribable';\nimport { getLogger } from './logger';\nimport { isCancelledError } from './retryer';\nexport var QueryObserver = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(QueryObserver, _Subscribable);\n\n function QueryObserver(client, options) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.client = client;\n _this.options = options;\n _this.trackedProps = [];\n _this.selectError = null;\n\n _this.bindMethods();\n\n _this.setOptions(options);\n\n return _this;\n }\n\n var _proto = QueryObserver.prototype;\n\n _proto.bindMethods = function bindMethods() {\n this.remove = this.remove.bind(this);\n this.refetch = this.refetch.bind(this);\n };\n\n _proto.onSubscribe = function onSubscribe() {\n if (this.listeners.length === 1) {\n this.currentQuery.addObserver(this);\n\n if (shouldFetchOnMount(this.currentQuery, this.options)) {\n this.executeFetch();\n }\n\n this.updateTimers();\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.listeners.length) {\n this.destroy();\n }\n };\n\n _proto.shouldFetchOnReconnect = function shouldFetchOnReconnect() {\n return shouldFetchOn(this.currentQuery, this.options, this.options.refetchOnReconnect);\n };\n\n _proto.shouldFetchOnWindowFocus = function shouldFetchOnWindowFocus() {\n return shouldFetchOn(this.currentQuery, this.options, this.options.refetchOnWindowFocus);\n };\n\n _proto.destroy = function destroy() {\n this.listeners = [];\n this.clearTimers();\n this.currentQuery.removeObserver(this);\n };\n\n _proto.setOptions = function setOptions(options, notifyOptions) {\n var prevOptions = this.options;\n var prevQuery = this.currentQuery;\n this.options = this.client.defaultQueryObserverOptions(options);\n\n if (typeof this.options.enabled !== 'undefined' && typeof this.options.enabled !== 'boolean') {\n throw new Error('Expected enabled to be a boolean');\n } // Keep previous query key if the user does not supply one\n\n\n if (!this.options.queryKey) {\n this.options.queryKey = prevOptions.queryKey;\n }\n\n this.updateQuery();\n var mounted = this.hasListeners(); // Fetch if there are subscribers\n\n if (mounted && shouldFetchOptionally(this.currentQuery, prevQuery, this.options, prevOptions)) {\n this.executeFetch();\n } // Update result\n\n\n this.updateResult(notifyOptions); // Update stale interval if needed\n\n if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || this.options.staleTime !== prevOptions.staleTime)) {\n this.updateStaleTimeout();\n }\n\n var nextRefetchInterval = this.computeRefetchInterval(); // Update refetch interval if needed\n\n if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || nextRefetchInterval !== this.currentRefetchInterval)) {\n this.updateRefetchInterval(nextRefetchInterval);\n }\n };\n\n _proto.getOptimisticResult = function getOptimisticResult(options) {\n var defaultedOptions = this.client.defaultQueryObserverOptions(options);\n var query = this.client.getQueryCache().build(this.client, defaultedOptions);\n return this.createResult(query, defaultedOptions);\n };\n\n _proto.getCurrentResult = function getCurrentResult() {\n return this.currentResult;\n };\n\n _proto.trackResult = function trackResult(result, defaultedOptions) {\n var _this2 = this;\n\n var trackedResult = {};\n\n var trackProp = function trackProp(key) {\n if (!_this2.trackedProps.includes(key)) {\n _this2.trackedProps.push(key);\n }\n };\n\n Object.keys(result).forEach(function (key) {\n Object.defineProperty(trackedResult, key, {\n configurable: false,\n enumerable: true,\n get: function get() {\n trackProp(key);\n return result[key];\n }\n });\n });\n\n if (defaultedOptions.useErrorBoundary || defaultedOptions.suspense) {\n trackProp('error');\n }\n\n return trackedResult;\n };\n\n _proto.getNextResult = function getNextResult(options) {\n var _this3 = this;\n\n return new Promise(function (resolve, reject) {\n var unsubscribe = _this3.subscribe(function (result) {\n if (!result.isFetching) {\n unsubscribe();\n\n if (result.isError && (options == null ? void 0 : options.throwOnError)) {\n reject(result.error);\n } else {\n resolve(result);\n }\n }\n });\n });\n };\n\n _proto.getCurrentQuery = function getCurrentQuery() {\n return this.currentQuery;\n };\n\n _proto.remove = function remove() {\n this.client.getQueryCache().remove(this.currentQuery);\n };\n\n _proto.refetch = function refetch(options) {\n return this.fetch(_extends({}, options, {\n meta: {\n refetchPage: options == null ? void 0 : options.refetchPage\n }\n }));\n };\n\n _proto.fetchOptimistic = function fetchOptimistic(options) {\n var _this4 = this;\n\n var defaultedOptions = this.client.defaultQueryObserverOptions(options);\n var query = this.client.getQueryCache().build(this.client, defaultedOptions);\n return query.fetch().then(function () {\n return _this4.createResult(query, defaultedOptions);\n });\n };\n\n _proto.fetch = function fetch(fetchOptions) {\n var _this5 = this;\n\n return this.executeFetch(fetchOptions).then(function () {\n _this5.updateResult();\n\n return _this5.currentResult;\n });\n };\n\n _proto.executeFetch = function executeFetch(fetchOptions) {\n // Make sure we reference the latest query as the current one might have been removed\n this.updateQuery(); // Fetch\n\n var promise = this.currentQuery.fetch(this.options, fetchOptions);\n\n if (!(fetchOptions == null ? void 0 : fetchOptions.throwOnError)) {\n promise = promise.catch(noop);\n }\n\n return promise;\n };\n\n _proto.updateStaleTimeout = function updateStaleTimeout() {\n var _this6 = this;\n\n this.clearStaleTimeout();\n\n if (isServer || this.currentResult.isStale || !isValidTimeout(this.options.staleTime)) {\n return;\n }\n\n var time = timeUntilStale(this.currentResult.dataUpdatedAt, this.options.staleTime); // The timeout is sometimes triggered 1 ms before the stale time expiration.\n // To mitigate this issue we always add 1 ms to the timeout.\n\n var timeout = time + 1;\n this.staleTimeoutId = setTimeout(function () {\n if (!_this6.currentResult.isStale) {\n _this6.updateResult();\n }\n }, timeout);\n };\n\n _proto.computeRefetchInterval = function computeRefetchInterval() {\n var _this$options$refetch;\n\n return typeof this.options.refetchInterval === 'function' ? this.options.refetchInterval(this.currentResult.data, this.currentQuery) : (_this$options$refetch = this.options.refetchInterval) != null ? _this$options$refetch : false;\n };\n\n _proto.updateRefetchInterval = function updateRefetchInterval(nextInterval) {\n var _this7 = this;\n\n this.clearRefetchInterval();\n this.currentRefetchInterval = nextInterval;\n\n if (isServer || this.options.enabled === false || !isValidTimeout(this.currentRefetchInterval) || this.currentRefetchInterval === 0) {\n return;\n }\n\n this.refetchIntervalId = setInterval(function () {\n if (_this7.options.refetchIntervalInBackground || focusManager.isFocused()) {\n _this7.executeFetch();\n }\n }, this.currentRefetchInterval);\n };\n\n _proto.updateTimers = function updateTimers() {\n this.updateStaleTimeout();\n this.updateRefetchInterval(this.computeRefetchInterval());\n };\n\n _proto.clearTimers = function clearTimers() {\n this.clearStaleTimeout();\n this.clearRefetchInterval();\n };\n\n _proto.clearStaleTimeout = function clearStaleTimeout() {\n if (this.staleTimeoutId) {\n clearTimeout(this.staleTimeoutId);\n this.staleTimeoutId = undefined;\n }\n };\n\n _proto.clearRefetchInterval = function clearRefetchInterval() {\n if (this.refetchIntervalId) {\n clearInterval(this.refetchIntervalId);\n this.refetchIntervalId = undefined;\n }\n };\n\n _proto.createResult = function createResult(query, options) {\n var prevQuery = this.currentQuery;\n var prevOptions = this.options;\n var prevResult = this.currentResult;\n var prevResultState = this.currentResultState;\n var prevResultOptions = this.currentResultOptions;\n var queryChange = query !== prevQuery;\n var queryInitialState = queryChange ? query.state : this.currentQueryInitialState;\n var prevQueryResult = queryChange ? this.currentResult : this.previousQueryResult;\n var state = query.state;\n var dataUpdatedAt = state.dataUpdatedAt,\n error = state.error,\n errorUpdatedAt = state.errorUpdatedAt,\n isFetching = state.isFetching,\n status = state.status;\n var isPreviousData = false;\n var isPlaceholderData = false;\n var data; // Optimistically set result in fetching state if needed\n\n if (options.optimisticResults) {\n var mounted = this.hasListeners();\n var fetchOnMount = !mounted && shouldFetchOnMount(query, options);\n var fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);\n\n if (fetchOnMount || fetchOptionally) {\n isFetching = true;\n\n if (!dataUpdatedAt) {\n status = 'loading';\n }\n }\n } // Keep previous data if needed\n\n\n if (options.keepPreviousData && !state.dataUpdateCount && (prevQueryResult == null ? void 0 : prevQueryResult.isSuccess) && status !== 'error') {\n data = prevQueryResult.data;\n dataUpdatedAt = prevQueryResult.dataUpdatedAt;\n status = prevQueryResult.status;\n isPreviousData = true;\n } // Select data if needed\n else if (options.select && typeof state.data !== 'undefined') {\n // Memoize select result\n if (prevResult && state.data === (prevResultState == null ? void 0 : prevResultState.data) && options.select === this.selectFn) {\n data = this.selectResult;\n } else {\n try {\n this.selectFn = options.select;\n data = options.select(state.data);\n\n if (options.structuralSharing !== false) {\n data = replaceEqualDeep(prevResult == null ? void 0 : prevResult.data, data);\n }\n\n this.selectResult = data;\n this.selectError = null;\n } catch (selectError) {\n getLogger().error(selectError);\n this.selectError = selectError;\n }\n }\n } // Use query data\n else {\n data = state.data;\n } // Show placeholder data if needed\n\n\n if (typeof options.placeholderData !== 'undefined' && typeof data === 'undefined' && (status === 'loading' || status === 'idle')) {\n var placeholderData; // Memoize placeholder data\n\n if ((prevResult == null ? void 0 : prevResult.isPlaceholderData) && options.placeholderData === (prevResultOptions == null ? void 0 : prevResultOptions.placeholderData)) {\n placeholderData = prevResult.data;\n } else {\n placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData() : options.placeholderData;\n\n if (options.select && typeof placeholderData !== 'undefined') {\n try {\n placeholderData = options.select(placeholderData);\n\n if (options.structuralSharing !== false) {\n placeholderData = replaceEqualDeep(prevResult == null ? void 0 : prevResult.data, placeholderData);\n }\n\n this.selectError = null;\n } catch (selectError) {\n getLogger().error(selectError);\n this.selectError = selectError;\n }\n }\n }\n\n if (typeof placeholderData !== 'undefined') {\n status = 'success';\n data = placeholderData;\n isPlaceholderData = true;\n }\n }\n\n if (this.selectError) {\n error = this.selectError;\n data = this.selectResult;\n errorUpdatedAt = Date.now();\n status = 'error';\n }\n\n var result = {\n status: status,\n isLoading: status === 'loading',\n isSuccess: status === 'success',\n isError: status === 'error',\n isIdle: status === 'idle',\n data: data,\n dataUpdatedAt: dataUpdatedAt,\n error: error,\n errorUpdatedAt: errorUpdatedAt,\n failureCount: state.fetchFailureCount,\n errorUpdateCount: state.errorUpdateCount,\n isFetched: state.dataUpdateCount > 0 || state.errorUpdateCount > 0,\n isFetchedAfterMount: state.dataUpdateCount > queryInitialState.dataUpdateCount || state.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching: isFetching,\n isRefetching: isFetching && status !== 'loading',\n isLoadingError: status === 'error' && state.dataUpdatedAt === 0,\n isPlaceholderData: isPlaceholderData,\n isPreviousData: isPreviousData,\n isRefetchError: status === 'error' && state.dataUpdatedAt !== 0,\n isStale: isStale(query, options),\n refetch: this.refetch,\n remove: this.remove\n };\n return result;\n };\n\n _proto.shouldNotifyListeners = function shouldNotifyListeners(result, prevResult) {\n if (!prevResult) {\n return true;\n }\n\n var _this$options = this.options,\n notifyOnChangeProps = _this$options.notifyOnChangeProps,\n notifyOnChangePropsExclusions = _this$options.notifyOnChangePropsExclusions;\n\n if (!notifyOnChangeProps && !notifyOnChangePropsExclusions) {\n return true;\n }\n\n if (notifyOnChangeProps === 'tracked' && !this.trackedProps.length) {\n return true;\n }\n\n var includedProps = notifyOnChangeProps === 'tracked' ? this.trackedProps : notifyOnChangeProps;\n return Object.keys(result).some(function (key) {\n var typedKey = key;\n var changed = result[typedKey] !== prevResult[typedKey];\n var isIncluded = includedProps == null ? void 0 : includedProps.some(function (x) {\n return x === key;\n });\n var isExcluded = notifyOnChangePropsExclusions == null ? void 0 : notifyOnChangePropsExclusions.some(function (x) {\n return x === key;\n });\n return changed && !isExcluded && (!includedProps || isIncluded);\n });\n };\n\n _proto.updateResult = function updateResult(notifyOptions) {\n var prevResult = this.currentResult;\n this.currentResult = this.createResult(this.currentQuery, this.options);\n this.currentResultState = this.currentQuery.state;\n this.currentResultOptions = this.options; // Only notify if something has changed\n\n if (shallowEqualObjects(this.currentResult, prevResult)) {\n return;\n } // Determine which callbacks to trigger\n\n\n var defaultNotifyOptions = {\n cache: true\n };\n\n if ((notifyOptions == null ? void 0 : notifyOptions.listeners) !== false && this.shouldNotifyListeners(this.currentResult, prevResult)) {\n defaultNotifyOptions.listeners = true;\n }\n\n this.notify(_extends({}, defaultNotifyOptions, notifyOptions));\n };\n\n _proto.updateQuery = function updateQuery() {\n var query = this.client.getQueryCache().build(this.client, this.options);\n\n if (query === this.currentQuery) {\n return;\n }\n\n var prevQuery = this.currentQuery;\n this.currentQuery = query;\n this.currentQueryInitialState = query.state;\n this.previousQueryResult = this.currentResult;\n\n if (this.hasListeners()) {\n prevQuery == null ? void 0 : prevQuery.removeObserver(this);\n query.addObserver(this);\n }\n };\n\n _proto.onQueryUpdate = function onQueryUpdate(action) {\n var notifyOptions = {};\n\n if (action.type === 'success') {\n notifyOptions.onSuccess = true;\n } else if (action.type === 'error' && !isCancelledError(action.error)) {\n notifyOptions.onError = true;\n }\n\n this.updateResult(notifyOptions);\n\n if (this.hasListeners()) {\n this.updateTimers();\n }\n };\n\n _proto.notify = function notify(notifyOptions) {\n var _this8 = this;\n\n notifyManager.batch(function () {\n // First trigger the configuration callbacks\n if (notifyOptions.onSuccess) {\n _this8.options.onSuccess == null ? void 0 : _this8.options.onSuccess(_this8.currentResult.data);\n _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(_this8.currentResult.data, null);\n } else if (notifyOptions.onError) {\n _this8.options.onError == null ? void 0 : _this8.options.onError(_this8.currentResult.error);\n _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(undefined, _this8.currentResult.error);\n } // Then trigger the listeners\n\n\n if (notifyOptions.listeners) {\n _this8.listeners.forEach(function (listener) {\n listener(_this8.currentResult);\n });\n } // Then the cache listeners\n\n\n if (notifyOptions.cache) {\n _this8.client.getQueryCache().notify({\n query: _this8.currentQuery,\n type: 'observerResultsUpdated'\n });\n }\n });\n };\n\n return QueryObserver;\n}(Subscribable);\n\nfunction shouldLoadOnMount(query, options) {\n return options.enabled !== false && !query.state.dataUpdatedAt && !(query.state.status === 'error' && options.retryOnMount === false);\n}\n\nfunction shouldFetchOnMount(query, options) {\n return shouldLoadOnMount(query, options) || query.state.dataUpdatedAt > 0 && shouldFetchOn(query, options, options.refetchOnMount);\n}\n\nfunction shouldFetchOn(query, options, field) {\n if (options.enabled !== false) {\n var value = typeof field === 'function' ? field(query) : field;\n return value === 'always' || value !== false && isStale(query, options);\n }\n\n return false;\n}\n\nfunction shouldFetchOptionally(query, prevQuery, options, prevOptions) {\n return options.enabled !== false && (query !== prevQuery || prevOptions.enabled === false) && (!options.suspense || query.state.status !== 'error') && isStale(query, options);\n}\n\nfunction isStale(query, options) {\n return query.isStaleByTime(options.staleTime);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { getDefaultState } from './mutation';\nimport { notifyManager } from './notifyManager';\nimport { Subscribable } from './subscribable';\n// CLASS\nexport var MutationObserver = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(MutationObserver, _Subscribable);\n\n function MutationObserver(client, options) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.client = client;\n\n _this.setOptions(options);\n\n _this.bindMethods();\n\n _this.updateResult();\n\n return _this;\n }\n\n var _proto = MutationObserver.prototype;\n\n _proto.bindMethods = function bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n };\n\n _proto.setOptions = function setOptions(options) {\n this.options = this.client.defaultMutationOptions(options);\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.listeners.length) {\n var _this$currentMutation;\n\n (_this$currentMutation = this.currentMutation) == null ? void 0 : _this$currentMutation.removeObserver(this);\n }\n };\n\n _proto.onMutationUpdate = function onMutationUpdate(action) {\n this.updateResult(); // Determine which callbacks to trigger\n\n var notifyOptions = {\n listeners: true\n };\n\n if (action.type === 'success') {\n notifyOptions.onSuccess = true;\n } else if (action.type === 'error') {\n notifyOptions.onError = true;\n }\n\n this.notify(notifyOptions);\n };\n\n _proto.getCurrentResult = function getCurrentResult() {\n return this.currentResult;\n };\n\n _proto.reset = function reset() {\n this.currentMutation = undefined;\n this.updateResult();\n this.notify({\n listeners: true\n });\n };\n\n _proto.mutate = function mutate(variables, options) {\n this.mutateOptions = options;\n\n if (this.currentMutation) {\n this.currentMutation.removeObserver(this);\n }\n\n this.currentMutation = this.client.getMutationCache().build(this.client, _extends({}, this.options, {\n variables: typeof variables !== 'undefined' ? variables : this.options.variables\n }));\n this.currentMutation.addObserver(this);\n return this.currentMutation.execute();\n };\n\n _proto.updateResult = function updateResult() {\n var state = this.currentMutation ? this.currentMutation.state : getDefaultState();\n\n var result = _extends({}, state, {\n isLoading: state.status === 'loading',\n isSuccess: state.status === 'success',\n isError: state.status === 'error',\n isIdle: state.status === 'idle',\n mutate: this.mutate,\n reset: this.reset\n });\n\n this.currentResult = result;\n };\n\n _proto.notify = function notify(options) {\n var _this2 = this;\n\n notifyManager.batch(function () {\n // First trigger the mutate callbacks\n if (_this2.mutateOptions) {\n if (options.onSuccess) {\n _this2.mutateOptions.onSuccess == null ? void 0 : _this2.mutateOptions.onSuccess(_this2.currentResult.data, _this2.currentResult.variables, _this2.currentResult.context);\n _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(_this2.currentResult.data, null, _this2.currentResult.variables, _this2.currentResult.context);\n } else if (options.onError) {\n _this2.mutateOptions.onError == null ? void 0 : _this2.mutateOptions.onError(_this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);\n _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(undefined, _this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);\n }\n } // Then trigger the listeners\n\n\n if (options.listeners) {\n _this2.listeners.forEach(function (listener) {\n listener(_this2.currentResult);\n });\n }\n });\n };\n\n return MutationObserver;\n}(Subscribable);","import ReactDOM from 'react-dom';\nexport var unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates;","import { notifyManager } from '../core';\nimport { unstable_batchedUpdates } from './reactBatchedUpdates';\nnotifyManager.setBatchNotifyFunction(unstable_batchedUpdates);","export var logger = console;","import { setLogger } from '../core';\nimport { logger } from './logger';\nsetLogger(logger);","import React from 'react';\nvar defaultContext = /*#__PURE__*/React.createContext(undefined);\nvar QueryClientSharingContext = /*#__PURE__*/React.createContext(false); // if contextSharing is on, we share the first and at least one\n// instance of the context across the window\n// to ensure that if React Query is used across\n// different bundles or microfrontends they will\n// all use the same **instance** of context, regardless\n// of module scoping.\n\nfunction getQueryClientContext(contextSharing) {\n if (contextSharing && typeof window !== 'undefined') {\n if (!window.ReactQueryClientContext) {\n window.ReactQueryClientContext = defaultContext;\n }\n\n return window.ReactQueryClientContext;\n }\n\n return defaultContext;\n}\n\nexport var useQueryClient = function useQueryClient() {\n var queryClient = React.useContext(getQueryClientContext(React.useContext(QueryClientSharingContext)));\n\n if (!queryClient) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one');\n }\n\n return queryClient;\n};\nexport var QueryClientProvider = function QueryClientProvider(_ref) {\n var client = _ref.client,\n _ref$contextSharing = _ref.contextSharing,\n contextSharing = _ref$contextSharing === void 0 ? false : _ref$contextSharing,\n children = _ref.children;\n React.useEffect(function () {\n client.mount();\n return function () {\n client.unmount();\n };\n }, [client]);\n var Context = getQueryClientContext(contextSharing);\n return /*#__PURE__*/React.createElement(QueryClientSharingContext.Provider, {\n value: contextSharing\n }, /*#__PURE__*/React.createElement(Context.Provider, {\n value: client\n }, children));\n};","import React from 'react'; // CONTEXT\n\nfunction createValue() {\n var _isReset = false;\n return {\n clearReset: function clearReset() {\n _isReset = false;\n },\n reset: function reset() {\n _isReset = true;\n },\n isReset: function isReset() {\n return _isReset;\n }\n };\n}\n\nvar QueryErrorResetBoundaryContext = /*#__PURE__*/React.createContext(createValue()); // HOOK\n\nexport var useQueryErrorResetBoundary = function useQueryErrorResetBoundary() {\n return React.useContext(QueryErrorResetBoundaryContext);\n}; // COMPONENT\n\nexport var QueryErrorResetBoundary = function QueryErrorResetBoundary(_ref) {\n var children = _ref.children;\n var value = React.useMemo(function () {\n return createValue();\n }, []);\n return /*#__PURE__*/React.createElement(QueryErrorResetBoundaryContext.Provider, {\n value: value\n }, typeof children === 'function' ? children(value) : children);\n};","export function shouldThrowError(suspense, _useErrorBoundary, params) {\n // Allow useErrorBoundary function to override throwing behavior on a per-error basis\n if (typeof _useErrorBoundary === 'function') {\n return _useErrorBoundary.apply(void 0, params);\n } // Allow useErrorBoundary to override suspense's throwing behavior\n\n\n if (typeof _useErrorBoundary === 'boolean') return _useErrorBoundary; // If suspense is enabled default to throwing errors\n\n return !!suspense;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React from 'react';\nimport { notifyManager } from '../core/notifyManager';\nimport { noop, parseMutationArgs } from '../core/utils';\nimport { MutationObserver } from '../core/mutationObserver';\nimport { useQueryClient } from './QueryClientProvider';\nimport { shouldThrowError } from './utils'; // HOOK\n\nexport function useMutation(arg1, arg2, arg3) {\n var mountedRef = React.useRef(false);\n\n var _React$useState = React.useState(0),\n forceUpdate = _React$useState[1];\n\n var options = parseMutationArgs(arg1, arg2, arg3);\n var queryClient = useQueryClient();\n var obsRef = React.useRef();\n\n if (!obsRef.current) {\n obsRef.current = new MutationObserver(queryClient, options);\n } else {\n obsRef.current.setOptions(options);\n }\n\n var currentResult = obsRef.current.getCurrentResult();\n React.useEffect(function () {\n mountedRef.current = true;\n var unsubscribe = obsRef.current.subscribe(notifyManager.batchCalls(function () {\n if (mountedRef.current) {\n forceUpdate(function (x) {\n return x + 1;\n });\n }\n }));\n return function () {\n mountedRef.current = false;\n unsubscribe();\n };\n }, []);\n var mutate = React.useCallback(function (variables, mutateOptions) {\n obsRef.current.mutate(variables, mutateOptions).catch(noop);\n }, []);\n\n if (currentResult.error && shouldThrowError(undefined, obsRef.current.options.useErrorBoundary, [currentResult.error])) {\n throw currentResult.error;\n }\n\n return _extends({}, currentResult, {\n mutate: mutate,\n mutateAsync: currentResult.mutate\n });\n}","import React from 'react';\nimport { notifyManager } from '../core/notifyManager';\nimport { useQueryErrorResetBoundary } from './QueryErrorResetBoundary';\nimport { useQueryClient } from './QueryClientProvider';\nimport { shouldThrowError } from './utils';\nexport function useBaseQuery(options, Observer) {\n var mountedRef = React.useRef(false);\n\n var _React$useState = React.useState(0),\n forceUpdate = _React$useState[1];\n\n var queryClient = useQueryClient();\n var errorResetBoundary = useQueryErrorResetBoundary();\n var defaultedOptions = queryClient.defaultQueryObserverOptions(options); // Make sure results are optimistically set in fetching state before subscribing or updating options\n\n defaultedOptions.optimisticResults = true; // Include callbacks in batch renders\n\n if (defaultedOptions.onError) {\n defaultedOptions.onError = notifyManager.batchCalls(defaultedOptions.onError);\n }\n\n if (defaultedOptions.onSuccess) {\n defaultedOptions.onSuccess = notifyManager.batchCalls(defaultedOptions.onSuccess);\n }\n\n if (defaultedOptions.onSettled) {\n defaultedOptions.onSettled = notifyManager.batchCalls(defaultedOptions.onSettled);\n }\n\n if (defaultedOptions.suspense) {\n // Always set stale time when using suspense to prevent\n // fetching again when directly mounting after suspending\n if (typeof defaultedOptions.staleTime !== 'number') {\n defaultedOptions.staleTime = 1000;\n } // Set cache time to 1 if the option has been set to 0\n // when using suspense to prevent infinite loop of fetches\n\n\n if (defaultedOptions.cacheTime === 0) {\n defaultedOptions.cacheTime = 1;\n }\n }\n\n if (defaultedOptions.suspense || defaultedOptions.useErrorBoundary) {\n // Prevent retrying failed query if the error boundary has not been reset yet\n if (!errorResetBoundary.isReset()) {\n defaultedOptions.retryOnMount = false;\n }\n }\n\n var _React$useState2 = React.useState(function () {\n return new Observer(queryClient, defaultedOptions);\n }),\n observer = _React$useState2[0];\n\n var result = observer.getOptimisticResult(defaultedOptions);\n React.useEffect(function () {\n mountedRef.current = true;\n errorResetBoundary.clearReset();\n var unsubscribe = observer.subscribe(notifyManager.batchCalls(function () {\n if (mountedRef.current) {\n forceUpdate(function (x) {\n return x + 1;\n });\n }\n })); // Update result to make sure we did not miss any query updates\n // between creating the observer and subscribing to it.\n\n observer.updateResult();\n return function () {\n mountedRef.current = false;\n unsubscribe();\n };\n }, [errorResetBoundary, observer]);\n React.useEffect(function () {\n // Do not notify on updates because of changes in the options because\n // these changes should already be reflected in the optimistic result.\n observer.setOptions(defaultedOptions, {\n listeners: false\n });\n }, [defaultedOptions, observer]); // Handle suspense\n\n if (defaultedOptions.suspense && result.isLoading) {\n throw observer.fetchOptimistic(defaultedOptions).then(function (_ref) {\n var data = _ref.data;\n defaultedOptions.onSuccess == null ? void 0 : defaultedOptions.onSuccess(data);\n defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(data, null);\n }).catch(function (error) {\n errorResetBoundary.clearReset();\n defaultedOptions.onError == null ? void 0 : defaultedOptions.onError(error);\n defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(undefined, error);\n });\n } // Handle error boundary\n\n\n if (result.isError && !errorResetBoundary.isReset() && !result.isFetching && shouldThrowError(defaultedOptions.suspense, defaultedOptions.useErrorBoundary, [result.error, observer.getCurrentQuery()])) {\n throw result.error;\n } // Handle result property usage tracking\n\n\n if (defaultedOptions.notifyOnChangeProps === 'tracked') {\n result = observer.trackResult(result, defaultedOptions);\n }\n\n return result;\n}","import { QueryObserver } from '../core';\nimport { parseQueryArgs } from '../core/utils';\nimport { useBaseQuery } from './useBaseQuery'; // HOOK\n\nexport function useQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n return useBaseQuery(parsedOptions, QueryObserver);\n}","import { QueryCache, QueryClient } from \"react-query\";\n\nconst queryClient = new QueryClient({\n queryCache: new QueryCache(),\n});\n\nexport default queryClient;\n","if (process.env.NODE_ENV !== 'development') {\n module.exports = {\n ReactQueryDevtools: function () {\n return null\n },\n ReactQueryDevtoolsPanel: function () {\n return null\n },\n }\n} else {\n module.exports = require('./development')\n}\n","import React from \"react\";\n\nimport queryClient from \"apis/queryClient\";\nimport { QueryClientProvider } from \"react-query\";\nimport { ReactQueryDevtools } from \"react-query/devtools\";\n\nconst withReactQuery = Component => {\n const QueryWrapper = props => (\n <QueryClientProvider client={queryClient}>\n <Component {...props} />\n <ReactQueryDevtools initialIsOpen={false} position=\"bottom-right\" />\n </QueryClientProvider>\n );\n return QueryWrapper;\n};\n\nexport default withReactQuery;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","export var COMMON_MIME_TYPES = new Map([\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types\n ['aac', 'audio/aac'],\n ['abw', 'application/x-abiword'],\n ['arc', 'application/x-freearc'],\n ['avif', 'image/avif'],\n ['avi', 'video/x-msvideo'],\n ['azw', 'application/vnd.amazon.ebook'],\n ['bin', 'application/octet-stream'],\n ['bmp', 'image/bmp'],\n ['bz', 'application/x-bzip'],\n ['bz2', 'application/x-bzip2'],\n ['cda', 'application/x-cdf'],\n ['csh', 'application/x-csh'],\n ['css', 'text/css'],\n ['csv', 'text/csv'],\n ['doc', 'application/msword'],\n ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],\n ['eot', 'application/vnd.ms-fontobject'],\n ['epub', 'application/epub+zip'],\n ['gz', 'application/gzip'],\n ['gif', 'image/gif'],\n ['heic', 'image/heic'],\n ['heif', 'image/heif'],\n ['htm', 'text/html'],\n ['html', 'text/html'],\n ['ico', 'image/vnd.microsoft.icon'],\n ['ics', 'text/calendar'],\n ['jar', 'application/java-archive'],\n ['jpeg', 'image/jpeg'],\n ['jpg', 'image/jpeg'],\n ['js', 'text/javascript'],\n ['json', 'application/json'],\n ['jsonld', 'application/ld+json'],\n ['mid', 'audio/midi'],\n ['midi', 'audio/midi'],\n ['mjs', 'text/javascript'],\n ['mp3', 'audio/mpeg'],\n ['mp4', 'video/mp4'],\n ['mpeg', 'video/mpeg'],\n ['mpkg', 'application/vnd.apple.installer+xml'],\n ['odp', 'application/vnd.oasis.opendocument.presentation'],\n ['ods', 'application/vnd.oasis.opendocument.spreadsheet'],\n ['odt', 'application/vnd.oasis.opendocument.text'],\n ['oga', 'audio/ogg'],\n ['ogv', 'video/ogg'],\n ['ogx', 'application/ogg'],\n ['opus', 'audio/opus'],\n ['otf', 'font/otf'],\n ['png', 'image/png'],\n ['pdf', 'application/pdf'],\n ['php', 'application/x-httpd-php'],\n ['ppt', 'application/vnd.ms-powerpoint'],\n ['pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation'],\n ['rar', 'application/vnd.rar'],\n ['rtf', 'application/rtf'],\n ['sh', 'application/x-sh'],\n ['svg', 'image/svg+xml'],\n ['swf', 'application/x-shockwave-flash'],\n ['tar', 'application/x-tar'],\n ['tif', 'image/tiff'],\n ['tiff', 'image/tiff'],\n ['ts', 'video/mp2t'],\n ['ttf', 'font/ttf'],\n ['txt', 'text/plain'],\n ['vsd', 'application/vnd.visio'],\n ['wav', 'audio/wav'],\n ['weba', 'audio/webm'],\n ['webm', 'video/webm'],\n ['webp', 'image/webp'],\n ['woff', 'font/woff'],\n ['woff2', 'font/woff2'],\n ['xhtml', 'application/xhtml+xml'],\n ['xls', 'application/vnd.ms-excel'],\n ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],\n ['xml', 'application/xml'],\n ['xul', 'application/vnd.mozilla.xul+xml'],\n ['zip', 'application/zip'],\n ['7z', 'application/x-7z-compressed'],\n // Others\n ['mkv', 'video/x-matroska'],\n ['mov', 'video/quicktime'],\n ['msg', 'application/vnd.ms-outlook']\n]);\nexport function toFileWithPath(file, path) {\n var f = withMimeType(file);\n if (typeof f.path !== 'string') { // on electron, path is already set to the absolute path\n var webkitRelativePath = file.webkitRelativePath;\n Object.defineProperty(f, 'path', {\n value: typeof path === 'string'\n ? path\n // If <input webkitdirectory> is set,\n // the File will have a {webkitRelativePath} property\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory\n : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0\n ? webkitRelativePath\n : file.name,\n writable: false,\n configurable: false,\n enumerable: true\n });\n }\n return f;\n}\nfunction withMimeType(file) {\n var name = file.name;\n var hasExtension = name && name.lastIndexOf('.') !== -1;\n if (hasExtension && !file.type) {\n var ext = name.split('.')\n .pop().toLowerCase();\n var type = COMMON_MIME_TYPES.get(ext);\n if (type) {\n Object.defineProperty(file, 'type', {\n value: type,\n writable: false,\n configurable: false,\n enumerable: true\n });\n }\n }\n return file;\n}\n//# sourceMappingURL=file.js.map","import { __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { toFileWithPath } from './file';\nvar FILES_TO_IGNORE = [\n // Thumbnail cache files for macOS and Windows\n '.DS_Store',\n 'Thumbs.db' // Windows\n];\n/**\n * Convert a DragEvent's DataTrasfer object to a list of File objects\n * NOTE: If some of the items are folders,\n * everything will be flattened and placed in the same list but the paths will be kept as a {path} property.\n *\n * EXPERIMENTAL: A list of https://developer.mozilla.org/en-US/docs/Web/API/FileSystemHandle objects can also be passed as an arg\n * and a list of File objects will be returned.\n *\n * @param evt\n */\nexport function fromEvent(evt) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (isObject(evt) && isDataTransfer(evt.dataTransfer)) {\n return [2 /*return*/, getDataTransferFiles(evt.dataTransfer, evt.type)];\n }\n else if (isChangeEvt(evt)) {\n return [2 /*return*/, getInputFiles(evt)];\n }\n else if (Array.isArray(evt) && evt.every(function (item) { return 'getFile' in item && typeof item.getFile === 'function'; })) {\n return [2 /*return*/, getFsHandleFiles(evt)];\n }\n return [2 /*return*/, []];\n });\n });\n}\nfunction isDataTransfer(value) {\n return isObject(value);\n}\nfunction isChangeEvt(value) {\n return isObject(value) && isObject(value.target);\n}\nfunction isObject(v) {\n return typeof v === 'object' && v !== null;\n}\nfunction getInputFiles(evt) {\n return fromList(evt.target.files).map(function (file) { return toFileWithPath(file); });\n}\n// Ee expect each handle to be https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileHandle\nfunction getFsHandleFiles(handles) {\n return __awaiter(this, void 0, void 0, function () {\n var files;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, Promise.all(handles.map(function (h) { return h.getFile(); }))];\n case 1:\n files = _a.sent();\n return [2 /*return*/, files.map(function (file) { return toFileWithPath(file); })];\n }\n });\n });\n}\nfunction getDataTransferFiles(dt, type) {\n return __awaiter(this, void 0, void 0, function () {\n var items, files;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!dt.items) return [3 /*break*/, 2];\n items = fromList(dt.items)\n .filter(function (item) { return item.kind === 'file'; });\n // According to https://html.spec.whatwg.org/multipage/dnd.html#dndevents,\n // only 'dragstart' and 'drop' has access to the data (source node)\n if (type !== 'drop') {\n return [2 /*return*/, items];\n }\n return [4 /*yield*/, Promise.all(items.map(toFilePromises))];\n case 1:\n files = _a.sent();\n return [2 /*return*/, noIgnoredFiles(flatten(files))];\n case 2: return [2 /*return*/, noIgnoredFiles(fromList(dt.files)\n .map(function (file) { return toFileWithPath(file); }))];\n }\n });\n });\n}\nfunction noIgnoredFiles(files) {\n return files.filter(function (file) { return FILES_TO_IGNORE.indexOf(file.name) === -1; });\n}\n// IE11 does not support Array.from()\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from#Browser_compatibility\n// https://developer.mozilla.org/en-US/docs/Web/API/FileList\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItemList\nfunction fromList(items) {\n if (items === null) {\n return [];\n }\n var files = [];\n // tslint:disable: prefer-for-of\n for (var i = 0; i < items.length; i++) {\n var file = items[i];\n files.push(file);\n }\n return files;\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem\nfunction toFilePromises(item) {\n if (typeof item.webkitGetAsEntry !== 'function') {\n return fromDataTransferItem(item);\n }\n var entry = item.webkitGetAsEntry();\n // Safari supports dropping an image node from a different window and can be retrieved using\n // the DataTransferItem.getAsFile() API\n // NOTE: FileSystemEntry.file() throws if trying to get the file\n if (entry && entry.isDirectory) {\n return fromDirEntry(entry);\n }\n return fromDataTransferItem(item);\n}\nfunction flatten(items) {\n return items.reduce(function (acc, files) { return __spreadArray(__spreadArray([], __read(acc), false), __read((Array.isArray(files) ? flatten(files) : [files])), false); }, []);\n}\nfunction fromDataTransferItem(item) {\n var file = item.getAsFile();\n if (!file) {\n return Promise.reject(\"\".concat(item, \" is not a File\"));\n }\n var fwp = toFileWithPath(file);\n return Promise.resolve(fwp);\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemEntry\nfunction fromEntry(entry) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/, entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry)];\n });\n });\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry\nfunction fromDirEntry(entry) {\n var reader = entry.createReader();\n return new Promise(function (resolve, reject) {\n var entries = [];\n function readEntries() {\n var _this = this;\n // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry/createReader\n // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryReader/readEntries\n reader.readEntries(function (batch) { return __awaiter(_this, void 0, void 0, function () {\n var files, err_1, items;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!batch.length) return [3 /*break*/, 5];\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, Promise.all(entries)];\n case 2:\n files = _a.sent();\n resolve(files);\n return [3 /*break*/, 4];\n case 3:\n err_1 = _a.sent();\n reject(err_1);\n return [3 /*break*/, 4];\n case 4: return [3 /*break*/, 6];\n case 5:\n items = Promise.all(batch.map(fromEntry));\n entries.push(items);\n // Continue reading\n readEntries();\n _a.label = 6;\n case 6: return [2 /*return*/];\n }\n });\n }); }, function (err) {\n reject(err);\n });\n }\n readEntries();\n });\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileEntry\nfunction fromFileEntry(entry) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/, new Promise(function (resolve, reject) {\n entry.file(function (file) {\n var fwp = toFileWithPath(file, entry.fullPath);\n resolve(fwp);\n }, function (err) {\n reject(err);\n });\n })];\n });\n });\n}\n//# sourceMappingURL=file-selector.js.map","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (file, acceptedFiles) {\n if (file && acceptedFiles) {\n var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(',');\n var fileName = file.name || '';\n var mimeType = (file.type || '').toLowerCase();\n var baseMimeType = mimeType.replace(/\\/.*$/, '');\n return acceptedFilesArray.some(function (type) {\n var validType = type.trim().toLowerCase();\n\n if (validType.charAt(0) === '.') {\n return fileName.toLowerCase().endsWith(validType);\n } else if (validType.endsWith('/*')) {\n // This is something like a image/* mime type\n return baseMimeType === validType.replace(/\\/.*$/, '');\n }\n\n return mimeType === validType;\n });\n }\n\n return true;\n};","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { 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\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport accepts from \"attr-accept\"; // Error codes\n\nexport var FILE_INVALID_TYPE = \"file-invalid-type\";\nexport var FILE_TOO_LARGE = \"file-too-large\";\nexport var FILE_TOO_SMALL = \"file-too-small\";\nexport var TOO_MANY_FILES = \"too-many-files\";\nexport var ErrorCode = {\n FileInvalidType: FILE_INVALID_TYPE,\n FileTooLarge: FILE_TOO_LARGE,\n FileTooSmall: FILE_TOO_SMALL,\n TooManyFiles: TOO_MANY_FILES\n}; // File Errors\n\nexport var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) {\n accept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept;\n var messageSuffix = Array.isArray(accept) ? \"one of \".concat(accept.join(\", \")) : accept;\n return {\n code: FILE_INVALID_TYPE,\n message: \"File type must be \".concat(messageSuffix)\n };\n};\nexport var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) {\n return {\n code: FILE_TOO_LARGE,\n message: \"File is larger than \".concat(maxSize, \" \").concat(maxSize === 1 ? \"byte\" : \"bytes\")\n };\n};\nexport var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) {\n return {\n code: FILE_TOO_SMALL,\n message: \"File is smaller than \".concat(minSize, \" \").concat(minSize === 1 ? \"byte\" : \"bytes\")\n };\n};\nexport var TOO_MANY_FILES_REJECTION = {\n code: TOO_MANY_FILES,\n message: \"Too many files\"\n}; // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with\n// that MIME type will always be accepted\n\nexport function fileAccepted(file, accept) {\n var isAcceptable = file.type === \"application/x-moz-file\" || accepts(file, accept);\n return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)];\n}\nexport function fileMatchSize(file, minSize, maxSize) {\n if (isDefined(file.size)) {\n if (isDefined(minSize) && isDefined(maxSize)) {\n if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];\n } else if (isDefined(minSize) && file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];else if (isDefined(maxSize) && file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n }\n\n return [true, null];\n}\n\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\n/**\n *\n * @param {object} options\n * @param {File[]} options.files\n * @param {string|string[]} [options.accept]\n * @param {number} [options.minSize]\n * @param {number} [options.maxSize]\n * @param {boolean} [options.multiple]\n * @param {number} [options.maxFiles]\n * @param {(f: File) => FileError|FileError[]|null} [options.validator]\n * @returns\n */\n\n\nexport function allFilesAccepted(_ref) {\n var files = _ref.files,\n accept = _ref.accept,\n minSize = _ref.minSize,\n maxSize = _ref.maxSize,\n multiple = _ref.multiple,\n maxFiles = _ref.maxFiles,\n validator = _ref.validator;\n\n if (!multiple && files.length > 1 || multiple && maxFiles >= 1 && files.length > maxFiles) {\n return false;\n }\n\n return files.every(function (file) {\n var _fileAccepted = fileAccepted(file, accept),\n _fileAccepted2 = _slicedToArray(_fileAccepted, 1),\n accepted = _fileAccepted2[0];\n\n var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n _fileMatchSize2 = _slicedToArray(_fileMatchSize, 1),\n sizeMatch = _fileMatchSize2[0];\n\n var customErrors = validator ? validator(file) : null;\n return accepted && sizeMatch && !customErrors;\n });\n} // React's synthetic events has event.isPropagationStopped,\n// but to remain compatibility with other libs (Preact) fall back\n// to check event.cancelBubble\n\nexport function isPropagationStopped(event) {\n if (typeof event.isPropagationStopped === \"function\") {\n return event.isPropagationStopped();\n } else if (typeof event.cancelBubble !== \"undefined\") {\n return event.cancelBubble;\n }\n\n return false;\n}\nexport function isEvtWithFiles(event) {\n if (!event.dataTransfer) {\n return !!event.target && !!event.target.files;\n } // https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/types\n // https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Recommended_drag_types#file\n\n\n return Array.prototype.some.call(event.dataTransfer.types, function (type) {\n return type === \"Files\" || type === \"application/x-moz-file\";\n });\n}\nexport function isKindFile(item) {\n return _typeof(item) === \"object\" && item !== null && item.kind === \"file\";\n} // allow the entire document to be a drag target\n\nexport function onDocumentDragOver(event) {\n event.preventDefault();\n}\n\nfunction isIe(userAgent) {\n return userAgent.indexOf(\"MSIE\") !== -1 || userAgent.indexOf(\"Trident/\") !== -1;\n}\n\nfunction isEdge(userAgent) {\n return userAgent.indexOf(\"Edge/\") !== -1;\n}\n\nexport function isIeOrEdge() {\n var userAgent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.navigator.userAgent;\n return isIe(userAgent) || isEdge(userAgent);\n}\n/**\n * This is intended to be used to compose event handlers\n * They are executed in order until one of them calls `event.isPropagationStopped()`.\n * Note that the check is done on the first invoke too,\n * meaning that if propagation was stopped before invoking the fns,\n * no handlers will be executed.\n *\n * @param {Function} fns the event hanlder functions\n * @return {Function} the event handler to add to an element\n */\n\nexport function composeEventHandlers() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n return fns.some(function (fn) {\n if (!isPropagationStopped(event) && fn) {\n fn.apply(void 0, [event].concat(args));\n }\n\n return isPropagationStopped(event);\n });\n };\n}\n/**\n * canUseFileSystemAccessAPI checks if the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API)\n * is supported by the browser.\n * @returns {boolean}\n */\n\nexport function canUseFileSystemAccessAPI() {\n return \"showOpenFilePicker\" in window;\n}\n/**\n * Convert the `{accept}` dropzone prop to the\n * `{types}` option for https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n *\n * @param {AcceptProp} accept\n * @returns {{accept: string[]}[]}\n */\n\nexport function pickerOptionsFromAccept(accept) {\n if (isDefined(accept)) {\n var acceptForPicker = Object.entries(accept).filter(function (_ref2) {\n var _ref3 = _slicedToArray(_ref2, 2),\n mimeType = _ref3[0],\n ext = _ref3[1];\n\n var ok = true;\n\n if (!isMIMEType(mimeType)) {\n console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.\"));\n ok = false;\n }\n\n if (!Array.isArray(ext) || !ext.every(isExt)) {\n console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because an invalid file extension was provided.\"));\n ok = false;\n }\n\n return ok;\n }).reduce(function (agg, _ref4) {\n var _ref5 = _slicedToArray(_ref4, 2),\n mimeType = _ref5[0],\n ext = _ref5[1];\n\n return _objectSpread(_objectSpread({}, agg), {}, _defineProperty({}, mimeType, ext));\n }, {});\n return [{\n accept: acceptForPicker\n }];\n }\n\n return accept;\n}\n/**\n * Convert the `{accept}` dropzone prop to an array of MIME types/extensions.\n * @param {AcceptProp} accept\n * @returns {string}\n */\n\nexport function acceptPropAsAcceptAttr(accept) {\n if (isDefined(accept)) {\n return Object.entries(accept).reduce(function (a, _ref6) {\n var _ref7 = _slicedToArray(_ref6, 2),\n mimeType = _ref7[0],\n ext = _ref7[1];\n\n return [].concat(_toConsumableArray(a), [mimeType], _toConsumableArray(ext));\n }, []) // Silently discard invalid entries as pickerOptionsFromAccept warns about these\n .filter(function (v) {\n return isMIMEType(v) || isExt(v);\n }).join(\",\");\n }\n\n return undefined;\n}\n/**\n * Check if v is an exception caused by aborting a request (e.g window.showOpenFilePicker()).\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is an abort exception.\n */\n\nexport function isAbort(v) {\n return v instanceof DOMException && (v.name === \"AbortError\" || v.code === v.ABORT_ERR);\n}\n/**\n * Check if v is a security error.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is a security error.\n */\n\nexport function isSecurityError(v) {\n return v instanceof DOMException && (v.name === \"SecurityError\" || v.code === v.SECURITY_ERR);\n}\n/**\n * Check if v is a MIME type string.\n *\n * See accepted format: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers.\n *\n * @param {string} v\n */\n\nexport function isMIMEType(v) {\n return v === \"audio/*\" || v === \"video/*\" || v === \"image/*\" || v === \"text/*\" || /\\w+\\/[-+.\\w]+/g.test(v);\n}\n/**\n * Check if v is a file extension.\n * @param {string} v\n */\n\nexport function isExt(v) {\n return /^.*\\.[\\w]+$/.test(v);\n}\n/**\n * @typedef {Object.<string, string[]>} AcceptProp\n */\n\n/**\n * @typedef {object} FileError\n * @property {string} message\n * @property {ErrorCode|string} code\n */\n\n/**\n * @typedef {\"file-invalid-type\"|\"file-too-large\"|\"file-too-small\"|\"too-many-files\"} ErrorCode\n */","var _excluded = [\"children\"],\n _excluded2 = [\"open\"],\n _excluded3 = [\"refKey\", \"role\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"onClick\", \"onDragEnter\", \"onDragOver\", \"onDragLeave\", \"onDrop\"],\n _excluded4 = [\"refKey\", \"onChange\", \"onClick\"];\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { 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\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* eslint prefer-template: 0 */\nimport React, { forwardRef, Fragment, useCallback, useEffect, useImperativeHandle, useMemo, useReducer, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { fromEvent } from \"file-selector\";\nimport { acceptPropAsAcceptAttr, allFilesAccepted, composeEventHandlers, fileAccepted, fileMatchSize, canUseFileSystemAccessAPI, isAbort, isEvtWithFiles, isIeOrEdge, isPropagationStopped, isSecurityError, onDocumentDragOver, pickerOptionsFromAccept, TOO_MANY_FILES_REJECTION } from \"./utils/index\";\n/**\n * Convenience wrapper component for the `useDropzone` hook\n *\n * ```jsx\n * <Dropzone>\n * {({getRootProps, getInputProps}) => (\n * <div {...getRootProps()}>\n * <input {...getInputProps()} />\n * <p>Drag 'n' drop some files here, or click to select files</p>\n * </div>\n * )}\n * </Dropzone>\n * ```\n */\n\nvar Dropzone = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var children = _ref.children,\n params = _objectWithoutProperties(_ref, _excluded);\n\n var _useDropzone = useDropzone(params),\n open = _useDropzone.open,\n props = _objectWithoutProperties(_useDropzone, _excluded2);\n\n useImperativeHandle(ref, function () {\n return {\n open: open\n };\n }, [open]); // TODO: Figure out why react-styleguidist cannot create docs if we don't return a jsx element\n\n return /*#__PURE__*/React.createElement(Fragment, null, children(_objectSpread(_objectSpread({}, props), {}, {\n open: open\n })));\n});\nDropzone.displayName = \"Dropzone\"; // Add default props for react-docgen\n\nvar defaultProps = {\n disabled: false,\n getFilesFromEvent: fromEvent,\n maxSize: Infinity,\n minSize: 0,\n multiple: true,\n maxFiles: 0,\n preventDropOnDocument: true,\n noClick: false,\n noKeyboard: false,\n noDrag: false,\n noDragEventsBubbling: false,\n validator: null,\n useFsAccessApi: true,\n autoFocus: false\n};\nDropzone.defaultProps = defaultProps;\nDropzone.propTypes = {\n /**\n * Render function that exposes the dropzone state and prop getter fns\n *\n * @param {object} params\n * @param {Function} params.getRootProps Returns the props you should apply to the root drop container you render\n * @param {Function} params.getInputProps Returns the props you should apply to hidden file input you render\n * @param {Function} params.open Open the native file selection dialog\n * @param {boolean} params.isFocused Dropzone area is in focus\n * @param {boolean} params.isFileDialogActive File dialog is opened\n * @param {boolean} params.isDragActive Active drag is in progress\n * @param {boolean} params.isDragAccept Dragged files are accepted\n * @param {boolean} params.isDragReject Some dragged files are rejected\n * @param {File[]} params.acceptedFiles Accepted files\n * @param {FileRejection[]} params.fileRejections Rejected files and why they were rejected\n */\n children: PropTypes.func,\n\n /**\n * Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n */\n accept: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),\n\n /**\n * Allow drag 'n' drop (or selection from the file dialog) of multiple files\n */\n multiple: PropTypes.bool,\n\n /**\n * If false, allow dropped items to take over the current browser window\n */\n preventDropOnDocument: PropTypes.bool,\n\n /**\n * If true, disables click to open the native file selection dialog\n */\n noClick: PropTypes.bool,\n\n /**\n * If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n */\n noKeyboard: PropTypes.bool,\n\n /**\n * If true, disables drag 'n' drop\n */\n noDrag: PropTypes.bool,\n\n /**\n * If true, stops drag event propagation to parents\n */\n noDragEventsBubbling: PropTypes.bool,\n\n /**\n * Minimum file size (in bytes)\n */\n minSize: PropTypes.number,\n\n /**\n * Maximum file size (in bytes)\n */\n maxSize: PropTypes.number,\n\n /**\n * Maximum accepted number of files\n * The default value is 0 which means there is no limitation to how many files are accepted.\n */\n maxFiles: PropTypes.number,\n\n /**\n * Enable/disable the dropzone\n */\n disabled: PropTypes.bool,\n\n /**\n * Use this to provide a custom file aggregator\n *\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n getFilesFromEvent: PropTypes.func,\n\n /**\n * Cb for when closing the file dialog with no selection\n */\n onFileDialogCancel: PropTypes.func,\n\n /**\n * Cb for when opening the file dialog\n */\n onFileDialogOpen: PropTypes.func,\n\n /**\n * Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `<input type=\"file\">` click event.\n */\n useFsAccessApi: PropTypes.bool,\n\n /**\n * Set to true to focus the root element on render\n */\n autoFocus: PropTypes.bool,\n\n /**\n * Cb for when the `dragenter` event occurs.\n *\n * @param {DragEvent} event\n */\n onDragEnter: PropTypes.func,\n\n /**\n * Cb for when the `dragleave` event occurs\n *\n * @param {DragEvent} event\n */\n onDragLeave: PropTypes.func,\n\n /**\n * Cb for when the `dragover` event occurs\n *\n * @param {DragEvent} event\n */\n onDragOver: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) or a valid file extension.\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n *\n * @param {File[]} acceptedFiles\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n onDrop: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are accepted, this callback is not invoked.\n *\n * @param {File[]} files\n * @param {(DragEvent|Event)} event\n */\n onDropAccepted: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are rejected, this callback is not invoked.\n *\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event\n */\n onDropRejected: PropTypes.func,\n\n /**\n * Cb for when there's some error from any of the promises.\n *\n * @param {Error} error\n */\n onError: PropTypes.func,\n\n /**\n * Custom validation function. It must return null if there's no errors.\n * @param {File} file\n * @returns {FileError|FileError[]|null}\n */\n validator: PropTypes.func\n};\nexport default Dropzone;\n/**\n * A function that is invoked for the `dragenter`,\n * `dragover` and `dragleave` events.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dragCb\n * @param {DragEvent} event\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dropCb\n * @param {File[]} acceptedFiles List of accepted files\n * @param {FileRejection[]} fileRejections List of rejected files and why they were rejected\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are files (such as link, text, etc.).\n *\n * @callback dropAcceptedCb\n * @param {File[]} files List of accepted files that meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n *\n * @callback dropRejectedCb\n * @param {File[]} files List of rejected files that do not meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is used aggregate files,\n * in a asynchronous fashion, from drag or input change events.\n *\n * @callback getFilesFromEvent\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n * @returns {(File[]|Promise<File[]>)}\n */\n\n/**\n * An object with the current dropzone state.\n *\n * @typedef {object} DropzoneState\n * @property {boolean} isFocused Dropzone area is in focus\n * @property {boolean} isFileDialogActive File dialog is opened\n * @property {boolean} isDragActive Active drag is in progress\n * @property {boolean} isDragAccept Dragged files are accepted\n * @property {boolean} isDragReject Some dragged files are rejected\n * @property {File[]} acceptedFiles Accepted files\n * @property {FileRejection[]} fileRejections Rejected files and why they were rejected\n */\n\n/**\n * An object with the dropzone methods.\n *\n * @typedef {object} DropzoneMethods\n * @property {Function} getRootProps Returns the props you should apply to the root drop container you render\n * @property {Function} getInputProps Returns the props you should apply to hidden file input you render\n * @property {Function} open Open the native file selection dialog\n */\n\nvar initialState = {\n isFocused: false,\n isFileDialogActive: false,\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false,\n acceptedFiles: [],\n fileRejections: []\n};\n/**\n * A React hook that creates a drag 'n' drop area.\n *\n * ```jsx\n * function MyDropzone(props) {\n * const {getRootProps, getInputProps} = useDropzone({\n * onDrop: acceptedFiles => {\n * // do something with the File objects, e.g. upload to some server\n * }\n * });\n * return (\n * <div {...getRootProps()}>\n * <input {...getInputProps()} />\n * <p>Drag and drop some files here, or click to select files</p>\n * </div>\n * )\n * }\n * ```\n *\n * @function useDropzone\n *\n * @param {object} props\n * @param {import(\"./utils\").AcceptProp} [props.accept] Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n * @param {boolean} [props.multiple=true] Allow drag 'n' drop (or selection from the file dialog) of multiple files\n * @param {boolean} [props.preventDropOnDocument=true] If false, allow dropped items to take over the current browser window\n * @param {boolean} [props.noClick=false] If true, disables click to open the native file selection dialog\n * @param {boolean} [props.noKeyboard=false] If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n * @param {boolean} [props.noDrag=false] If true, disables drag 'n' drop\n * @param {boolean} [props.noDragEventsBubbling=false] If true, stops drag event propagation to parents\n * @param {number} [props.minSize=0] Minimum file size (in bytes)\n * @param {number} [props.maxSize=Infinity] Maximum file size (in bytes)\n * @param {boolean} [props.disabled=false] Enable/disable the dropzone\n * @param {getFilesFromEvent} [props.getFilesFromEvent] Use this to provide a custom file aggregator\n * @param {Function} [props.onFileDialogCancel] Cb for when closing the file dialog with no selection\n * @param {boolean} [props.useFsAccessApi] Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `<input type=\"file\">` click event.\n * @param {boolean} autoFocus Set to true to auto focus the root element.\n * @param {Function} [props.onFileDialogOpen] Cb for when opening the file dialog\n * @param {dragCb} [props.onDragEnter] Cb for when the `dragenter` event occurs.\n * @param {dragCb} [props.onDragLeave] Cb for when the `dragleave` event occurs\n * @param {dragCb} [props.onDragOver] Cb for when the `dragover` event occurs\n * @param {dropCb} [props.onDrop] Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be an object with keys as a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) and the value an array of file extensions (optional).\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n * @param {dropAcceptedCb} [props.onDropAccepted]\n * @param {dropRejectedCb} [props.onDropRejected]\n * @param {(error: Error) => void} [props.onError]\n *\n * @returns {DropzoneState & DropzoneMethods}\n */\n\nexport function useDropzone() {\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),\n accept = _defaultProps$props.accept,\n disabled = _defaultProps$props.disabled,\n getFilesFromEvent = _defaultProps$props.getFilesFromEvent,\n maxSize = _defaultProps$props.maxSize,\n minSize = _defaultProps$props.minSize,\n multiple = _defaultProps$props.multiple,\n maxFiles = _defaultProps$props.maxFiles,\n onDragEnter = _defaultProps$props.onDragEnter,\n onDragLeave = _defaultProps$props.onDragLeave,\n onDragOver = _defaultProps$props.onDragOver,\n onDrop = _defaultProps$props.onDrop,\n onDropAccepted = _defaultProps$props.onDropAccepted,\n onDropRejected = _defaultProps$props.onDropRejected,\n onFileDialogCancel = _defaultProps$props.onFileDialogCancel,\n onFileDialogOpen = _defaultProps$props.onFileDialogOpen,\n useFsAccessApi = _defaultProps$props.useFsAccessApi,\n autoFocus = _defaultProps$props.autoFocus,\n preventDropOnDocument = _defaultProps$props.preventDropOnDocument,\n noClick = _defaultProps$props.noClick,\n noKeyboard = _defaultProps$props.noKeyboard,\n noDrag = _defaultProps$props.noDrag,\n noDragEventsBubbling = _defaultProps$props.noDragEventsBubbling,\n onError = _defaultProps$props.onError,\n validator = _defaultProps$props.validator;\n\n var acceptAttr = useMemo(function () {\n return acceptPropAsAcceptAttr(accept);\n }, [accept]);\n var pickerTypes = useMemo(function () {\n return pickerOptionsFromAccept(accept);\n }, [accept]);\n var onFileDialogOpenCb = useMemo(function () {\n return typeof onFileDialogOpen === \"function\" ? onFileDialogOpen : noop;\n }, [onFileDialogOpen]);\n var onFileDialogCancelCb = useMemo(function () {\n return typeof onFileDialogCancel === \"function\" ? onFileDialogCancel : noop;\n }, [onFileDialogCancel]);\n /**\n * @constant\n * @type {React.MutableRefObject<HTMLElement>}\n */\n\n var rootRef = useRef(null);\n var inputRef = useRef(null);\n\n var _useReducer = useReducer(reducer, initialState),\n _useReducer2 = _slicedToArray(_useReducer, 2),\n state = _useReducer2[0],\n dispatch = _useReducer2[1];\n\n var isFocused = state.isFocused,\n isFileDialogActive = state.isFileDialogActive;\n var fsAccessApiWorksRef = useRef(typeof window !== \"undefined\" && window.isSecureContext && useFsAccessApi && canUseFileSystemAccessAPI()); // Update file dialog active state when the window is focused on\n\n var onWindowFocus = function onWindowFocus() {\n // Execute the timeout only if the file dialog is opened in the browser\n if (!fsAccessApiWorksRef.current && isFileDialogActive) {\n setTimeout(function () {\n if (inputRef.current) {\n var files = inputRef.current.files;\n\n if (!files.length) {\n dispatch({\n type: \"closeDialog\"\n });\n onFileDialogCancelCb();\n }\n }\n }, 300);\n }\n };\n\n useEffect(function () {\n window.addEventListener(\"focus\", onWindowFocus, false);\n return function () {\n window.removeEventListener(\"focus\", onWindowFocus, false);\n };\n }, [inputRef, isFileDialogActive, onFileDialogCancelCb, fsAccessApiWorksRef]);\n var dragTargetsRef = useRef([]);\n\n var onDocumentDrop = function onDocumentDrop(event) {\n if (rootRef.current && rootRef.current.contains(event.target)) {\n // If we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n return;\n }\n\n event.preventDefault();\n dragTargetsRef.current = [];\n };\n\n useEffect(function () {\n if (preventDropOnDocument) {\n document.addEventListener(\"dragover\", onDocumentDragOver, false);\n document.addEventListener(\"drop\", onDocumentDrop, false);\n }\n\n return function () {\n if (preventDropOnDocument) {\n document.removeEventListener(\"dragover\", onDocumentDragOver);\n document.removeEventListener(\"drop\", onDocumentDrop);\n }\n };\n }, [rootRef, preventDropOnDocument]); // Auto focus the root when autoFocus is true\n\n useEffect(function () {\n if (!disabled && autoFocus && rootRef.current) {\n rootRef.current.focus();\n }\n\n return function () {};\n }, [rootRef, autoFocus, disabled]);\n var onErrCb = useCallback(function (e) {\n if (onError) {\n onError(e);\n } else {\n // Let the user know something's gone wrong if they haven't provided the onError cb.\n console.error(e);\n }\n }, [onError]);\n var onDragEnterCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]);\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n var fileCount = files.length;\n var isDragAccept = fileCount > 0 && allFilesAccepted({\n files: files,\n accept: acceptAttr,\n minSize: minSize,\n maxSize: maxSize,\n multiple: multiple,\n maxFiles: maxFiles,\n validator: validator\n });\n var isDragReject = fileCount > 0 && !isDragAccept;\n dispatch({\n isDragAccept: isDragAccept,\n isDragReject: isDragReject,\n isDragActive: true,\n type: \"setDraggedFiles\"\n });\n\n if (onDragEnter) {\n onDragEnter(event);\n }\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n }, [getFilesFromEvent, onDragEnter, onErrCb, noDragEventsBubbling, acceptAttr, minSize, maxSize, multiple, maxFiles, validator]);\n var onDragOverCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event);\n var hasFiles = isEvtWithFiles(event);\n\n if (hasFiles && event.dataTransfer) {\n try {\n event.dataTransfer.dropEffect = \"copy\";\n } catch (_unused) {}\n /* eslint-disable-line no-empty */\n\n }\n\n if (hasFiles && onDragOver) {\n onDragOver(event);\n }\n\n return false;\n }, [onDragOver, noDragEventsBubbling]);\n var onDragLeaveCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event); // Only deactivate once the dropzone and all children have been left\n\n var targets = dragTargetsRef.current.filter(function (target) {\n return rootRef.current && rootRef.current.contains(target);\n }); // Make sure to remove a target present multiple times only once\n // (Firefox may fire dragenter/dragleave multiple times on the same element)\n\n var targetIdx = targets.indexOf(event.target);\n\n if (targetIdx !== -1) {\n targets.splice(targetIdx, 1);\n }\n\n dragTargetsRef.current = targets;\n\n if (targets.length > 0) {\n return;\n }\n\n dispatch({\n type: \"setDraggedFiles\",\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false\n });\n\n if (isEvtWithFiles(event) && onDragLeave) {\n onDragLeave(event);\n }\n }, [rootRef, onDragLeave, noDragEventsBubbling]);\n var setFiles = useCallback(function (files, event) {\n var acceptedFiles = [];\n var fileRejections = [];\n files.forEach(function (file) {\n var _fileAccepted = fileAccepted(file, acceptAttr),\n _fileAccepted2 = _slicedToArray(_fileAccepted, 2),\n accepted = _fileAccepted2[0],\n acceptError = _fileAccepted2[1];\n\n var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2),\n sizeMatch = _fileMatchSize2[0],\n sizeError = _fileMatchSize2[1];\n\n var customErrors = validator ? validator(file) : null;\n\n if (accepted && sizeMatch && !customErrors) {\n acceptedFiles.push(file);\n } else {\n var errors = [acceptError, sizeError];\n\n if (customErrors) {\n errors = errors.concat(customErrors);\n }\n\n fileRejections.push({\n file: file,\n errors: errors.filter(function (e) {\n return e;\n })\n });\n }\n });\n\n if (!multiple && acceptedFiles.length > 1 || multiple && maxFiles >= 1 && acceptedFiles.length > maxFiles) {\n // Reject everything and empty accepted files\n acceptedFiles.forEach(function (file) {\n fileRejections.push({\n file: file,\n errors: [TOO_MANY_FILES_REJECTION]\n });\n });\n acceptedFiles.splice(0);\n }\n\n dispatch({\n acceptedFiles: acceptedFiles,\n fileRejections: fileRejections,\n type: \"setFiles\"\n });\n\n if (onDrop) {\n onDrop(acceptedFiles, fileRejections, event);\n }\n\n if (fileRejections.length > 0 && onDropRejected) {\n onDropRejected(fileRejections, event);\n }\n\n if (acceptedFiles.length > 0 && onDropAccepted) {\n onDropAccepted(acceptedFiles, event);\n }\n }, [dispatch, multiple, acceptAttr, minSize, maxSize, maxFiles, onDrop, onDropAccepted, onDropRejected, validator]);\n var onDropCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [];\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n setFiles(files, event);\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n\n dispatch({\n type: \"reset\"\n });\n }, [getFilesFromEvent, setFiles, onErrCb, noDragEventsBubbling]); // Fn for opening the file dialog programmatically\n\n var openFileDialog = useCallback(function () {\n // No point to use FS access APIs if context is not secure\n // https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts#feature_detection\n if (fsAccessApiWorksRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb(); // https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n\n var opts = {\n multiple: multiple,\n types: pickerTypes\n };\n window.showOpenFilePicker(opts).then(function (handles) {\n return getFilesFromEvent(handles);\n }).then(function (files) {\n setFiles(files, null);\n dispatch({\n type: \"closeDialog\"\n });\n }).catch(function (e) {\n // AbortError means the user canceled\n if (isAbort(e)) {\n onFileDialogCancelCb(e);\n dispatch({\n type: \"closeDialog\"\n });\n } else if (isSecurityError(e)) {\n fsAccessApiWorksRef.current = false; // CORS, so cannot use this API\n // Try using the input\n\n if (inputRef.current) {\n inputRef.current.value = null;\n inputRef.current.click();\n } else {\n onErrCb(new Error(\"Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided.\"));\n }\n } else {\n onErrCb(e);\n }\n });\n return;\n }\n\n if (inputRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb();\n inputRef.current.value = null;\n inputRef.current.click();\n }\n }, [dispatch, onFileDialogOpenCb, onFileDialogCancelCb, useFsAccessApi, setFiles, onErrCb, pickerTypes, multiple]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone\n\n var onKeyDownCb = useCallback(function (event) {\n // Ignore keyboard events bubbling up the DOM tree\n if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) {\n return;\n }\n\n if (event.key === \" \" || event.key === \"Enter\" || event.keyCode === 32 || event.keyCode === 13) {\n event.preventDefault();\n openFileDialog();\n }\n }, [rootRef, openFileDialog]); // Update focus state for the dropzone\n\n var onFocusCb = useCallback(function () {\n dispatch({\n type: \"focus\"\n });\n }, []);\n var onBlurCb = useCallback(function () {\n dispatch({\n type: \"blur\"\n });\n }, []); // Cb to open the file dialog when click occurs on the dropzone\n\n var onClickCb = useCallback(function () {\n if (noClick) {\n return;\n } // In IE11/Edge the file-browser dialog is blocking, therefore, use setTimeout()\n // to ensure React can handle state changes\n // See: https://github.com/react-dropzone/react-dropzone/issues/450\n\n\n if (isIeOrEdge()) {\n setTimeout(openFileDialog, 0);\n } else {\n openFileDialog();\n }\n }, [noClick, openFileDialog]);\n\n var composeHandler = function composeHandler(fn) {\n return disabled ? null : fn;\n };\n\n var composeKeyboardHandler = function composeKeyboardHandler(fn) {\n return noKeyboard ? null : composeHandler(fn);\n };\n\n var composeDragHandler = function composeDragHandler(fn) {\n return noDrag ? null : composeHandler(fn);\n };\n\n var stopPropagation = function stopPropagation(event) {\n if (noDragEventsBubbling) {\n event.stopPropagation();\n }\n };\n\n var getRootProps = useMemo(function () {\n return function () {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref2$refKey = _ref2.refKey,\n refKey = _ref2$refKey === void 0 ? \"ref\" : _ref2$refKey,\n role = _ref2.role,\n onKeyDown = _ref2.onKeyDown,\n onFocus = _ref2.onFocus,\n onBlur = _ref2.onBlur,\n onClick = _ref2.onClick,\n onDragEnter = _ref2.onDragEnter,\n onDragOver = _ref2.onDragOver,\n onDragLeave = _ref2.onDragLeave,\n onDrop = _ref2.onDrop,\n rest = _objectWithoutProperties(_ref2, _excluded3);\n\n return _objectSpread(_objectSpread(_defineProperty({\n onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)),\n onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)),\n onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onClickCb)),\n onDragEnter: composeDragHandler(composeEventHandlers(onDragEnter, onDragEnterCb)),\n onDragOver: composeDragHandler(composeEventHandlers(onDragOver, onDragOverCb)),\n onDragLeave: composeDragHandler(composeEventHandlers(onDragLeave, onDragLeaveCb)),\n onDrop: composeDragHandler(composeEventHandlers(onDrop, onDropCb)),\n role: typeof role === \"string\" && role !== \"\" ? role : \"presentation\"\n }, refKey, rootRef), !disabled && !noKeyboard ? {\n tabIndex: 0\n } : {}), rest);\n };\n }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onClickCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, noKeyboard, noDrag, disabled]);\n var onInputElementClick = useCallback(function (event) {\n event.stopPropagation();\n }, []);\n var getInputProps = useMemo(function () {\n return function () {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$refKey = _ref3.refKey,\n refKey = _ref3$refKey === void 0 ? \"ref\" : _ref3$refKey,\n onChange = _ref3.onChange,\n onClick = _ref3.onClick,\n rest = _objectWithoutProperties(_ref3, _excluded4);\n\n var inputProps = _defineProperty({\n accept: acceptAttr,\n multiple: multiple,\n type: \"file\",\n style: {\n display: \"none\"\n },\n onChange: composeHandler(composeEventHandlers(onChange, onDropCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)),\n tabIndex: -1\n }, refKey, inputRef);\n\n return _objectSpread(_objectSpread({}, inputProps), rest);\n };\n }, [inputRef, accept, multiple, onDropCb, disabled]);\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: isFocused && !disabled,\n getRootProps: getRootProps,\n getInputProps: getInputProps,\n rootRef: rootRef,\n inputRef: inputRef,\n open: composeHandler(openFileDialog)\n });\n}\n/**\n * @param {DropzoneState} state\n * @param {{type: string} & DropzoneState} action\n * @returns {DropzoneState}\n */\n\nfunction reducer(state, action) {\n /* istanbul ignore next */\n switch (action.type) {\n case \"focus\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: true\n });\n\n case \"blur\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: false\n });\n\n case \"openDialog\":\n return _objectSpread(_objectSpread({}, initialState), {}, {\n isFileDialogActive: true\n });\n\n case \"closeDialog\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFileDialogActive: false\n });\n\n case \"setDraggedFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isDragActive: action.isDragActive,\n isDragAccept: action.isDragAccept,\n isDragReject: action.isDragReject\n });\n\n case \"setFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n acceptedFiles: action.acceptedFiles,\n fileRejections: action.fileRejections\n });\n\n case \"reset\":\n return _objectSpread({}, initialState);\n\n default:\n return state;\n }\n}\n\nfunction noop() {}\n\nexport { ErrorCode } from \"./utils\";","import React from \"react\";\n\nimport i18n from \"common/i18n\";\nimport { Download } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport Dropzone from \"react-dropzone\";\nimport { Trans } from \"react-i18next\";\n\nconst Uploader = ({ sampleFileUrl, csvColumns }) => (\n <Dropzone onDrop={() => {}}>\n {({ getRootProps, getInputProps }) => (\n <div {...getRootProps()} className=\"ntm-invitations__dnd\">\n <input {...getInputProps()} />\n <Typography style=\"h3\">{i18n.t(\"helpers.dropFilesHere\")}</Typography>\n <Typography style=\"body2\">\n {i18n.t(\"helpers.uploadInstruction1\")}\n </Typography>\n <Typography style=\"body2\">\n <Trans\n i18nKey=\"helpers.uploadInstruction2\"\n values={{ what: csvColumns.join(\", \") }}\n />\n </Typography>\n <Typography style=\"body2\">\n {i18n.t(\"helpers.uploadInstruction3\")}\n </Typography>\n <Button\n size=\"large\"\n style=\"link\"\n type=\"submit\"\n icon={Download}\n iconPosition=\"left\"\n label={i18n.t(\"common.download_\", { what: \"sample.csv\" })}\n onClick={event => {\n event.stopPropagation();\n window.open(sampleFileUrl);\n }}\n />\n </div>\n )}\n </Dropzone>\n);\n\nexport default Uploader;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport i18n from \"common/i18n\";\nimport { File } from \"neetoicons\";\n\nconst DATETIME_OPTIONS = {\n year: \"numeric\",\n month: \"short\",\n day: \"numeric\",\n hour: \"numeric\",\n minute: \"numeric\",\n};\n\nexport const COLUMN_DATA = [\n {\n title: i18n.t(\"helpers.files\"),\n dataIndex: \"filename\",\n key: \"filename\",\n render: (filename, row) => (\n <a\n href={row.download_url}\n download\n className=\"ntm-invitations__table-filename\"\n >\n <File />\n {filename}\n </a>\n ),\n },\n {\n title: i18n.t(\"helpers.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: status => (\n <p\n className={classnames(\"ntm-invitations__table-status\", {\n \"neeto-ui-text-error\": status === \"failed\",\n \"neeto-ui-text-success\": status === \"processed\",\n })}\n >\n {status}\n </p>\n ),\n },\n {\n title: i18n.t(\"helpers.noOfRows\"),\n dataIndex: \"rows_count\",\n key: \"rows_count\",\n render: rows_count => rows_count ?? \"-\",\n width: 120,\n align: \"center\",\n },\n {\n title: i18n.t(\"helpers.uploaded\"),\n dataIndex: \"uploaded_by\",\n key: \"uploaded_by\",\n render: (uploaded_by, row) =>\n `${uploaded_by} at ${new Date(row.created_at).toLocaleString(\n \"en-US\",\n DATETIME_OPTIONS\n )}`,\n },\n];\n\nexport const SAMPLE_ROW_DATA = [\n {\n key: \"1\",\n filename: \"sample-1.csv\",\n status: \"processed\",\n rows_count: \"10\",\n created_at: new Date(),\n download_url: \"https://example.com/sample.csv\",\n uploaded_by: \"Oliver Smith\",\n },\n {\n key: \"2\",\n filename: \"sample-2.csv\",\n status: \"failed\",\n rows_count: \"20\",\n created_at: new Date(),\n download_url: \"https://example.com/sample-2.csv\",\n uploaded_by: \"Sam Smith\",\n },\n {\n key: \"3\",\n filename: \"sample-3.csv\",\n status: \"failed\",\n rows_count: \"30\",\n created_at: new Date(),\n download_url: \"https://example.com/sample-3.csv\",\n uploaded_by: \"Eve Smith\",\n },\n {\n key: \"4\",\n filename: \"sample-4.csv\",\n status: \"processed\",\n rows_count: \"40\",\n created_at: new Date(),\n download_url: \"https://example.com/sample-4.csv\",\n uploaded_by: \"Anna Smith\",\n },\n {\n key: \"5\",\n filename: \"sample-5.csv\",\n status: \"processed\",\n rows_count: \"50\",\n created_at: new Date(),\n download_url: \"https://example.com/sample-5.csv\",\n uploaded_by: \"Will Smith\",\n },\n];\n","import React from \"react\";\n\nimport { Table } from \"neetoui\";\n\nimport { COLUMN_DATA, SAMPLE_ROW_DATA } from \"./constants\";\n\nconst Uploads = () => (\n <div className=\"ntm-invitations__table\">\n <Table\n fixedHeight\n rowData={SAMPLE_ROW_DATA}\n columnData={COLUMN_DATA}\n rowSelection={false}\n />\n </div>\n);\n\nexport default Uploads;\n","import React from \"react\";\n\nimport i18n from \"common/i18n\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button, Modal, Typography } from \"neetoui\";\n\nimport Uploader from \"./Uploader\";\nimport Uploads from \"./Uploads\";\n\nconst Csv = ({ label, sampleFileUrl, csvColumns, setIsCSVInviteSelected }) => (\n <>\n <Modal.Header>\n <Button\n style=\"text\"\n icon={LeftArrow}\n onClick={() => setIsCSVInviteSelected(false)}\n />\n </Modal.Header>\n <Modal.Body className=\"ntm-invitations__body\">\n <Typography style=\"h4\">\n {i18n.t(\"common.upload_\", { what: label })}\n </Typography>\n <Uploader sampleFileUrl={sampleFileUrl} csvColumns={csvColumns} />\n </Modal.Body>\n <Modal.Footer className=\"ntm-invitations__footer\">\n <Uploads />\n </Modal.Footer>\n </>\n);\n\nexport default Csv;\n","import React, { useState } from \"react\";\n\nimport i18n from \"common/i18n\";\nimport { Button, Typography } from \"neetoui\";\n\nconst InviteLink = () => {\n const [isInviteLinkActive, setIsInviteLinkActive] = useState(false);\n\n return (\n <div className=\"ntm-invitations__invite-link\">\n <div className=\"ntm-invitations__invite-link-instructions\">\n <Typography style=\"h4\">{i18n.t(\"helpers.getInviteLink\")}</Typography>\n <Typography style=\"body2\">\n {i18n.t(\"helpers.inviteLinkInstruction\")}\n </Typography>\n </div>\n {isInviteLinkActive ? (\n <div className=\"ntm-invitations__invite-link-btns\">\n <Button\n size=\"large\"\n style=\"danger-text\"\n label={i18n.t(\"common.delete\")}\n onClick={() => setIsInviteLinkActive(false)}\n />\n <Button\n size=\"large\"\n style=\"primary\"\n label={i18n.t(\"buttons.copyLink\")}\n />\n </div>\n ) : (\n <Button\n size=\"large\"\n style=\"secondary\"\n label={i18n.t(\"buttons.copyLink\")}\n onClick={() => setIsInviteLinkActive(true)}\n />\n )}\n </div>\n );\n};\n\nexport default InviteLink;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport i18n from \"common/i18n\";\nimport { useFormikContext } from \"formik\";\nimport { File } from \"neetoicons\";\nimport { Button, Modal, Typography } from \"neetoui\";\nimport { EmailInput } from \"neetoui/formik\";\n\nimport InviteLink from \"./InviteLink\";\n\nconst Normal = ({\n label,\n children,\n submitButtonProps,\n setIsCSVInviteSelected,\n isCSVInviteEnabled,\n isInviteLinkEnabled,\n}) => {\n const { isSubmitting, dirty } = useFormikContext();\n\n return (\n <>\n <Modal.Header>\n <div className=\"ntm-invitations__header\" />\n </Modal.Header>\n <Modal.Body className=\"ntm-invitations__body\">\n <div className=\"ntm-invitations__body-header\">\n <Typography style=\"h4\">\n {i18n.t(\"common.invite_\", { what: label.toLowerCase() })}\n </Typography>\n {isCSVInviteEnabled && (\n <div>\n <Typography style=\"body2\">\n {i18n.t(\"buttons.inviteFrom\")}\n </Typography>\n <Button\n size=\"large\"\n style=\"secondary\"\n icon={File}\n onClick={() => setIsCSVInviteSelected(true)}\n tooltipProps={{\n content: i18n.t(\"helpers.bulkInvite\"),\n placement: \"bottom\",\n }}\n />\n </div>\n )}\n </div>\n <EmailInput\n name=\"emails\"\n label={null}\n placeholder={i18n.t(\"placeholders.email\")}\n />\n <Button\n size=\"large\"\n type=\"submit\"\n label={i18n.t(\"buttons.sendInvites\")}\n className=\"ntm-invitations__submit-btn\"\n loading={isSubmitting}\n disabled={!dirty || isSubmitting}\n {...submitButtonProps}\n />\n {children}\n </Modal.Body>\n <Modal.Footer\n className={classnames({\n \"ntm-invitations__footer\": isInviteLinkEnabled,\n })}\n >\n {isInviteLinkEnabled && <InviteLink />}\n </Modal.Footer>\n </>\n );\n};\n\nexport default Normal;\n","import React, { useState } from \"react\";\n\nimport { PLURAL } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { Formik, Form } from \"formik\";\nimport { Modal } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Csv from \"./Csv\";\nimport Normal from \"./Normal\";\n\nconst Invitations = ({\n label = i18n.t(\"metaNames.member\", PLURAL),\n isOpen = false,\n onClose = () => {},\n submitButtonProps = {},\n csvColumns = [],\n sampleFileUrl = \"\",\n isCSVInviteEnabled = true,\n isInviteLinkEnabled = true,\n children,\n ...otherProps\n}) => {\n const [isCSVInviteSelected, setIsCSVInviteSelected] = useState(false);\n\n const handleClose = () => {\n onClose();\n setIsCSVInviteSelected(false);\n };\n\n return (\n <Formik initialValues={{ emails: [] }} onSubmit={() => {}}>\n <Form>\n <Modal isOpen={isOpen} onClose={handleClose} size=\"md\" {...otherProps}>\n <div className=\"ntm-invitations__wrapper\">\n {isCSVInviteSelected ? (\n <Csv\n label={label}\n csvColumns={csvColumns}\n sampleFileUrl={sampleFileUrl}\n setIsCSVInviteSelected={setIsCSVInviteSelected}\n />\n ) : (\n <Normal\n label={label}\n submitButtonProps={submitButtonProps}\n setIsCSVInviteSelected={setIsCSVInviteSelected}\n isCSVInviteEnabled={isCSVInviteEnabled}\n isInviteLinkEnabled={isInviteLinkEnabled}\n >\n {children}\n </Normal>\n )}\n </div>\n </Modal>\n </Form>\n </Formik>\n );\n};\n\nInvitations.propTypes = {\n label: PropTypes.string,\n isOpen: PropTypes.bool,\n onClose: PropTypes.func,\n submitButtonProps: PropTypes.object,\n csvColumns: PropTypes.array,\n sampleFileUrl: PropTypes.string,\n isCSVInviteEnabled: PropTypes.bool,\n isInviteLinkEnabled: PropTypes.bool,\n children: PropTypes.node,\n otherProps: PropTypes.object,\n};\n\nexport default withReactQuery(Invitations);\n","/* eslint-disable @bigbinary/neeto/no-dangling-constants */\nexport const BASE_URL = \"team_members\";\nexport const ROLES_URL = `${BASE_URL}/manage-roles`;\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = () => axios.get(`${BASE_URL}/permissions`);\n\nconst permissionsApi = { fetch };\n\nexport default permissionsApi;\n","export const DEFAULT_STALE_TIME = 60_000; // 1 minute\n\nexport const QUERY_KEYS = {\n TEAMS: \"teams\",\n ROLES: \"roles\",\n PERMISSIONS: \"permissions\",\n};\n","import permissionsApi from \"apis/permissions\";\nimport { MANAGE_MEMBER_PERMISSIONS } from \"common/constants\";\nimport { DEFAULT_STALE_TIME, QUERY_KEYS } from \"common/queryConstants\";\nimport { hasPermission } from \"common/utils\";\nimport { useQuery } from \"react-query\";\n\nconst useFetchPermissions = (options = {}) =>\n useQuery(QUERY_KEYS.PERMISSIONS, permissionsApi.fetch, {\n staleTime: DEFAULT_STALE_TIME,\n select: response => response.permissions || response.data.permissions,\n enabled: hasPermission(MANAGE_MEMBER_PERMISSIONS),\n ...options,\n });\n\nexport { useFetchPermissions };\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = () => axios.get(`${BASE_URL}/organization_roles`);\n\nconst create = payload => axios.post(`${BASE_URL}/organization_roles`, payload);\n\nconst update = (id, payload) =>\n axios.patch(`${BASE_URL}/organization_roles/${id}`, payload);\n\nconst destroy = (id, payload) =>\n axios.delete(`${BASE_URL}/organization_roles/${id}`, { data: payload });\n\nconst organizationRolesApi = { fetch, create, update, destroy };\n\nexport default organizationRolesApi;\n","import { noop } from \"@bigbinary/neeto-commons-frontend/pure\";\nimport organizationRolesApi from \"apis/organization_roles\";\nimport queryClient from \"apis/queryClient\";\nimport { MANAGE_MEMBER_PERMISSIONS } from \"common/constants\";\nimport { DEFAULT_STALE_TIME, QUERY_KEYS } from \"common/queryConstants\";\nimport { hasPermission } from \"common/utils\";\nimport { Toastr } from \"neetoui\";\nimport {\n prepend,\n assocPath,\n dissocPath,\n findIndex,\n modifyPath,\n propEq,\n} from \"ramda\";\nimport { useQuery, useMutation } from \"react-query\";\n\nconst useFetchRoles = (options = {}) =>\n useQuery(QUERY_KEYS.ROLES, organizationRolesApi.fetch, {\n staleTime: DEFAULT_STALE_TIME,\n select: response =>\n response.organizationRoles || response.data.organizationRoles,\n enabled: hasPermission(MANAGE_MEMBER_PERMISSIONS),\n ...options,\n });\n\nconst useCreateRole = ({ onSuccess, ...options }) =>\n useMutation(organizationRolesApi.create, {\n onSuccess: response => {\n queryClient.setQueriesData(QUERY_KEYS.ROLES, cachedData => {\n if (!!cachedData.data && !!cachedData.data.organizationRoles) {\n return modifyPath(\n [\"data\", \"organizationRoles\"],\n prepend(response.data.organizationRole),\n cachedData\n );\n }\n\n return modifyPath(\n [\"organizationRoles\"],\n prepend(response.organizationRole),\n cachedData\n );\n });\n Toastr.success(response.ntmNotice || response.data.ntmNotice);\n onSuccess?.();\n },\n ...options,\n });\n\nconst useUpdateRole = ({ onSuccess, ...options }) =>\n useMutation(({ id, payload }) => organizationRolesApi.update(id, payload), {\n onSuccess: response => {\n queryClient.invalidateQueries(QUERY_KEYS.TEAMS);\n queryClient.setQueriesData(QUERY_KEYS.ROLES, cachedData => {\n if (!!cachedData.data && !!cachedData.data.organizationRoles) {\n return assocPath(\n [\n \"data\",\n \"organizationRoles\",\n findIndex(\n propEq(\"id\", response.data.organizationRole.id),\n cachedData.data.organizationRoles\n ),\n ],\n response.data.organizationRole,\n cachedData\n );\n }\n\n return assocPath(\n [\n \"organizationRoles\",\n findIndex(\n propEq(\"id\", response.organizationRole.id),\n cachedData.organizationRoles\n ),\n ],\n response.organizationRole,\n cachedData\n );\n });\n Toastr.success(response.ntmNotice || response.data.ntmNotice);\n onSuccess?.();\n },\n ...options,\n });\n\nconst useDestroyRole = ({ onSuccess = noop, ...options }) =>\n useMutation(({ id, payload }) => organizationRolesApi.destroy(id, payload), {\n onSuccess: response => {\n queryClient.setQueriesData(QUERY_KEYS.ROLES, cachedData => {\n if (!!cachedData.data && !!cachedData.data.organizationRoles) {\n return dissocPath(\n [\n \"data\",\n \"organizationRoles\",\n findIndex(\n propEq(\"id\", response.data.id),\n cachedData.data.organizationRoles\n ),\n ],\n cachedData\n );\n }\n\n return dissocPath(\n [\n \"organizationRoles\",\n findIndex(propEq(\"id\", response.id), cachedData.organizationRoles),\n ],\n cachedData\n );\n });\n Toastr.success(response.ntmNotice || response.data.ntmNotice);\n onSuccess?.();\n },\n ...options,\n });\n\nexport { useFetchRoles, useCreateRole, useUpdateRole, useDestroyRole };\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ScrollSync\"] = factory(require(\"react\"));\n\telse\n\t\troot[\"ScrollSync\"] = factory(root[\"react\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_4__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 10);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n * \n */\n\nfunction makeEmptyFunction(arg) {\n return function () {\n return arg;\n };\n}\n\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\nemptyFunction.thatReturnsThis = function () {\n return this;\n};\nemptyFunction.thatReturnsArgument = function (arg) {\n return arg;\n};\n\nmodule.exports = emptyFunction;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\n\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar validateFormat = function validateFormat(format) {};\n\nif (process.env.NODE_ENV !== 'production') {\n validateFormat = function validateFormat(format) {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n };\n}\n\nfunction invariant(condition, format, a, b, c, d, e, f) {\n validateFormat(format);\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n}\n\nmodule.exports = invariant;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)))\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_4__;\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(4);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar ScrollSyncContext = _react2.default.createContext({\n registerPane: function registerPane() {},\n unregisterPane: function unregisterPane() {}\n});\n\nexports.default = ScrollSyncContext;\nmodule.exports = exports['default'];\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\n\n\nvar emptyFunction = __webpack_require__(1);\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = emptyFunction;\n\nif (process.env.NODE_ENV !== 'production') {\n (function () {\n var printWarning = function printWarning(format) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var argIndex = 0;\n var message = 'Warning: ' + format.replace(/%s/g, function () {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n\n warning = function warning(condition, format) {\n if (format === undefined) {\n throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (format.indexOf('Failed Composite propType: ') === 0) {\n return; // Ignore CompositeComponent proptype check.\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(undefined, [format].concat(args));\n }\n };\n })();\n}\n\nmodule.exports = warning;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)))\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&\n Symbol.for &&\n Symbol.for('react.element')) ||\n 0xeac7;\n\n var isValidElement = function(object) {\n return typeof object === 'object' &&\n object !== null &&\n object.$$typeof === REACT_ELEMENT_TYPE;\n };\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = __webpack_require__(13)(isValidElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = __webpack_require__(12)();\n}\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)))\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = __webpack_require__(4);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(7);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ScrollSyncContext = __webpack_require__(5);\n\nvar _ScrollSyncContext2 = _interopRequireDefault(_ScrollSyncContext);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/**\n * ScrollSync provider component\n *\n */\n\nvar ScrollSync = function (_Component) {\n _inherits(ScrollSync, _Component);\n\n function ScrollSync() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, ScrollSync);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ScrollSync.__proto__ || Object.getPrototypeOf(ScrollSync)).call.apply(_ref, [this].concat(args))), _this), _this.panes = {}, _this.registerPane = function (node, groups) {\n groups.forEach(function (group) {\n if (!_this.panes[group]) {\n _this.panes[group] = [];\n }\n\n if (!_this.findPane(node, group)) {\n if (_this.panes[group].length > 0) {\n _this.syncScrollPosition(_this.panes[group][0], node);\n }\n _this.panes[group].push(node);\n }\n });\n _this.addEvents(node, groups);\n }, _this.unregisterPane = function (node, groups) {\n groups.forEach(function (group) {\n if (_this.findPane(node, group)) {\n _this.removeEvents(node);\n _this.panes[group].splice(_this.panes[group].indexOf(node), 1);\n }\n });\n }, _this.addEvents = function (node, groups) {\n /* For some reason element.addEventListener doesnt work with document.body */\n node.onscroll = _this.handlePaneScroll.bind(_this, node, groups); // eslint-disable-line\n }, _this.removeEvents = function (node) {\n /* For some reason element.removeEventListener doesnt work with document.body */\n node.onscroll = null; // eslint-disable-line\n }, _this.findPane = function (node, group) {\n if (!_this.panes[group]) {\n return false;\n }\n\n return _this.panes[group].find(function (pane) {\n return pane === node;\n });\n }, _this.handlePaneScroll = function (node, groups) {\n if (!_this.props.enabled) {\n return;\n }\n\n window.requestAnimationFrame(function () {\n _this.syncScrollPositions(node, groups);\n });\n }, _this.syncScrollPositions = function (scrolledPane, groups) {\n groups.forEach(function (group) {\n _this.panes[group].forEach(function (pane) {\n /* For all panes beside the currently scrolling one */\n if (scrolledPane !== pane) {\n /* Remove event listeners from the node that we'll manipulate */\n _this.removeEvents(pane, group);\n _this.syncScrollPosition(scrolledPane, pane);\n /* Re-attach event listeners after we're done scrolling */\n window.requestAnimationFrame(function () {\n _this.addEvents(pane, groups);\n });\n }\n });\n });\n if (_this.props.onSync) _this.props.onSync(scrolledPane);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(ScrollSync, [{\n key: 'getContextValue',\n value: function getContextValue() {\n return {\n registerPane: this.registerPane,\n unregisterPane: this.unregisterPane\n };\n }\n }, {\n key: 'syncScrollPosition',\n value: function syncScrollPosition(scrolledPane, pane) {\n var scrollTop = scrolledPane.scrollTop,\n scrollHeight = scrolledPane.scrollHeight,\n clientHeight = scrolledPane.clientHeight,\n scrollLeft = scrolledPane.scrollLeft,\n scrollWidth = scrolledPane.scrollWidth,\n clientWidth = scrolledPane.clientWidth;\n\n\n var scrollTopOffset = scrollHeight - clientHeight;\n var scrollLeftOffset = scrollWidth - clientWidth;\n\n var _props = this.props,\n proportional = _props.proportional,\n vertical = _props.vertical,\n horizontal = _props.horizontal;\n\n /* Calculate the actual pane height */\n\n var paneHeight = pane.scrollHeight - clientHeight;\n var paneWidth = pane.scrollWidth - clientWidth;\n /* Adjust the scrollTop position of it accordingly */\n if (vertical && scrollTopOffset > 0) {\n pane.scrollTop = proportional ? paneHeight * scrollTop / scrollTopOffset : scrollTop; // eslint-disable-line\n }\n if (horizontal && scrollLeftOffset > 0) {\n pane.scrollLeft = proportional ? paneWidth * scrollLeft / scrollLeftOffset : scrollLeft; // eslint-disable-line\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n _ScrollSyncContext2.default.Provider,\n { value: this.getContextValue() },\n _react2.default.Children.only(this.props.children)\n );\n }\n }]);\n\n return ScrollSync;\n}(_react.Component);\n\nScrollSync.propTypes = {\n /**\n * Callback to be invoked any time synchronization happens\n *\n * @param {Element} el The element that has received the scroll event\n */\n onSync: _propTypes2.default.func,\n children: _propTypes2.default.element.isRequired,\n proportional: _propTypes2.default.bool,\n vertical: _propTypes2.default.bool,\n horizontal: _propTypes2.default.bool,\n enabled: _propTypes2.default.bool\n};\nScrollSync.defaultProps = {\n proportional: true,\n vertical: true,\n horizontal: true,\n enabled: true\n};\nexports.default = ScrollSync;\nmodule.exports = exports['default'];\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = __webpack_require__(4);\n\nvar _propTypes = __webpack_require__(7);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ScrollSyncContext = __webpack_require__(5);\n\nvar _ScrollSyncContext2 = _interopRequireDefault(_ScrollSyncContext);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint react/no-find-dom-node: 0 */\n\n/**\n * ScrollSyncPane Component\n *\n * Wrap your content in it to keep its scroll position in sync with other panes\n *\n * @example ./example.md\n */\n\nvar ScrollSyncPane = function (_Component) {\n _inherits(ScrollSyncPane, _Component);\n\n function ScrollSyncPane(props) {\n _classCallCheck(this, ScrollSyncPane);\n\n var _this = _possibleConstructorReturn(this, (ScrollSyncPane.__proto__ || Object.getPrototypeOf(ScrollSyncPane)).call(this, props));\n\n _this.toArray = function (groups) {\n return [].concat(groups);\n };\n\n _this.updateNode = function () {\n if (_this.props.attachTo) {\n _this.node = _this.props.attachTo.current;\n } else {\n _this.node = _this.childRef.current;\n }\n };\n\n _this.childRef = (0, _react.createRef)();\n return _this;\n }\n\n _createClass(ScrollSyncPane, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.props.enabled) {\n this.updateNode();\n if (this.node) {\n this.context.registerPane(this.node, this.toArray(this.props.group));\n }\n }\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps) {\n if (this.props.attachTo !== prevProps.attachTo) {\n if (this.node) {\n this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n }\n this.updateNode();\n if (this.node) {\n this.context.registerPane(this.node, this.toArray(prevProps.group));\n }\n }\n if (this.node && this.props.enabled !== prevProps.enabled) {\n if (this.props.enabled) {\n this.context.registerPane(this.node, this.toArray(prevProps.group));\n } else {\n this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n }\n }\n if (this.node && this.props.enabled && this.props.group !== prevProps.group) {\n this.context.unregisterPane(this.node, this.toArray(prevProps.group));\n this.context.registerPane(this.node, this.toArray(this.props.group));\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.node && this.props.enabled) {\n this.context.unregisterPane(this.node, this.toArray(this.props.group));\n }\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.props.attachTo) {\n return this.props.children;\n }\n return (0, _react.cloneElement)(_react.Children.only(this.props.children), { ref: this.childRef });\n }\n }]);\n\n return ScrollSyncPane;\n}(_react.Component);\n\nScrollSyncPane.contextType = _ScrollSyncContext2.default;\nScrollSyncPane.propTypes = {\n children: _propTypes2.default.node.isRequired,\n attachTo: _propTypes2.default.oneOfType([_propTypes2.default.func, _propTypes2.default.shape({ current: _propTypes2.default.any })]),\n group: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.arrayOf(_propTypes2.default.string)]),\n enabled: _propTypes2.default.bool\n};\nScrollSyncPane.defaultProps = {\n group: 'default',\n enabled: true\n};\nexports.default = ScrollSyncPane;\nmodule.exports = exports['default'];\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _ScrollSync = __webpack_require__(8);\n\nObject.defineProperty(exports, 'ScrollSync', {\n enumerable: true,\n get: function get() {\n return _interopRequireDefault(_ScrollSync).default;\n }\n});\n\nvar _ScrollSyncPane = __webpack_require__(9);\n\nObject.defineProperty(exports, 'ScrollSyncPane', {\n enumerable: true,\n get: function get() {\n return _interopRequireDefault(_ScrollSyncPane).default;\n }\n});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nif (process.env.NODE_ENV !== 'production') {\n var invariant = __webpack_require__(2);\n var warning = __webpack_require__(6);\n var ReactPropTypesSecret = __webpack_require__(3);\n var loggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (typeSpecs.hasOwnProperty(typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'React.PropTypes.', componentName || 'React class', location, typeSpecName);\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');\n }\n }\n }\n }\n}\n\nmodule.exports = checkPropTypes;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)))\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nvar emptyFunction = __webpack_require__(1);\nvar invariant = __webpack_require__(2);\nvar ReactPropTypesSecret = __webpack_require__(3);\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n invariant(\n false,\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim\n };\n\n ReactPropTypes.checkPropTypes = emptyFunction;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nvar emptyFunction = __webpack_require__(1);\nvar invariant = __webpack_require__(2);\nvar warning = __webpack_require__(6);\n\nvar ReactPropTypesSecret = __webpack_require__(3);\nvar checkPropTypes = __webpack_require__(11);\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<<anonymous>>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n invariant(\n false,\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n warning(\n false,\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `%s` prop on `%s`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',\n propFullName,\n componentName\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (propValue.hasOwnProperty(key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n warning(\n false,\n 'Invalid argument supplid to oneOfType. Expected an array of check functions, but ' +\n 'received %s at index %s.',\n getPostfixForTypeWarning(checker),\n i\n );\n return emptyFunction.thatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)))\n\n/***/ })\n/******/ ]);\n});\n//# sourceMappingURL=index.js.map","import { PLURAL } from \"common/constants\";\nimport i18n from \"common/i18n\";\n\nexport const renderSearchProps = (searchString, setSearchString) => ({\n placeholder: i18n.t(\"common.search_\", {\n what: i18n.t(\"common.role\", PLURAL).toLocaleLowerCase(),\n }),\n value: searchString,\n onChange: ({ target: { value } }) => setSearchString(value),\n});\n\nexport const renderBreadcrumbs = (breadcrumbs, membersPageUrl) =>\n breadcrumbs ?? [\n {\n text: i18n.t(\"metaNames.member\", PLURAL),\n link: membersPageUrl ?? \"/members\",\n },\n ];\n","import React from \"react\";\n\nimport { MANAGE_MEMBER_PERMISSIONS, SINGULAR } from \"common/constants\";\nimport { hasPermission } from \"common/utils\";\nimport { Plus } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst AddRoleButton = ({ onClick }) => {\n const { t } = useTranslation();\n\n return (\n <Button\n icon={Plus}\n size=\"large\"\n label={t(\"common.add_\", {\n what: t(\"common.role\", SINGULAR).toLocaleLowerCase(),\n })}\n onClick={onClick}\n disabled={!hasPermission(MANAGE_MEMBER_PERMISSIONS)}\n data-cy=\"new-role-button\"\n />\n );\n};\n\nexport default AddRoleButton;\n","import React from \"react\";\n\nimport { PLURAL } from \"common/constants\";\nimport { Header as NeetoHeader } from \"neetoui/layouts\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderBreadcrumbs, renderSearchProps } from \"./helpers\";\n\nimport AddRoleButton from \"../AddRoleButton\";\n\nconst Header = ({\n breadcrumbs,\n searchString,\n setSearchString,\n setIsNewRolePaneOpen,\n membersPageUrl,\n}) => {\n const { t } = useTranslation();\n\n return (\n <NeetoHeader\n title={t(\"common.role\", PLURAL)}\n breadcrumbs={renderBreadcrumbs(breadcrumbs, membersPageUrl)}\n searchProps={renderSearchProps(searchString, setSearchString)}\n actionBlock={<AddRoleButton onClick={() => setIsNewRolePaneOpen(true)} />}\n className=\"ntm-roles-header\"\n />\n );\n};\n\nexport default Header;\n","import { groupBy } from \"ramda\";\n\nexport const getPermissionGroups = (permissions = []) => {\n const groupedPermissions = groupBy(\n permission => permission?.category,\n permissions\n );\n const categories = Object.keys(groupedPermissions);\n\n categories.forEach(category => {\n groupedPermissions[category].permissions = groupedPermissions[category];\n groupedPermissions[category].isPermissionsVisible = true;\n });\n\n return groupedPermissions;\n};\n","import i18n from \"common/i18n\";\nimport { string, object } from \"yup\";\n\nexport const ADD_ROLE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n permissionIds: [],\n};\n\nexport const ADD_ROLE_FORM_VALIDATION_SCHEMA = object({\n name: string().trim().required(i18n.t(\"validations.enterRoleName\")),\n description: string()\n .trim()\n .max(\n 255,\n i18n.t(\"validations.limitExceeded\", {\n what: i18n.t(\"common.description\"),\n count: 255,\n })\n ),\n});\n","import React, { useMemo } from \"react\";\n\nimport { SINGULAR } from \"common/constants\";\nimport { useFormikContext } from \"formik\";\nimport { Typography, Checkbox } from \"neetoui\";\nimport { groupBy, keys, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Permissions = ({ permissions }) => {\n const { t } = useTranslation();\n const { setFieldValue, values } = useFormikContext();\n const { permissionIds = [] } = values;\n\n const handleTogglePermission = permissionId => {\n const nextPermissionIds = permissionIds.includes(permissionId)\n ? permissionIds.filter(id => id !== permissionId)\n : [...permissionIds, permissionId];\n setFieldValue(\"permissionIds\", nextPermissionIds);\n };\n\n const groupedPermissions = useMemo(\n () => groupBy(prop(\"category\"))(permissions),\n [permissions]\n );\n return (\n <div className=\"ntm-roles-pane__body-wrapper\">\n <div>\n <Typography style=\"h4\" weight=\"semibold\" lineHeight=\"normal\">\n {t(\"common.permission\", SINGULAR)}\n </Typography>\n <Typography\n style=\"body2\"\n lineHeight=\"normal\"\n className=\"neeto-ui-text-gray-600\"\n >\n {t(\"helpers.configPermissions\")}\n </Typography>\n </div>\n {/* Item */}\n {keys(groupedPermissions).map(category => (\n <div className=\"ntm-roles-permission\" key={category}>\n <Typography\n style=\"h5\"\n weight=\"bold\"\n lineHeight=\"normal\"\n className=\"ntm-roles-permission__heading\"\n >\n {category}\n </Typography>\n {groupedPermissions[category].map(({ id, description }) => (\n <div\n key={id}\n onClick={() => handleTogglePermission(id)}\n className=\"ntm-roles-permission__card\"\n >\n <Typography\n style=\"body2\"\n className=\"ntm-roles-permission__card--description\"\n lineHeight=\"normal\"\n >\n {description}\n </Typography>\n <div className=\"ntm-roles-permission__card--checkbox\">\n <Checkbox\n checked={permissionIds.some(pid => pid === id)}\n onChange={() => handleTogglePermission(id)}\n />\n </div>\n </div>\n ))}\n </div>\n ))}\n </div>\n );\n};\n\nexport default Permissions;\n","import React from \"react\";\n\nimport { SINGULAR } from \"common/constants\";\nimport { Formik, Form } from \"formik\";\nimport { useCreateRole } from \"hooks/roles/useRolesApi\";\nimport { Pane, Typography, Button } from \"neetoui\";\nimport { Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n ADD_ROLE_FORM_INITIAL_VALUES,\n ADD_ROLE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport Permissions from \"./Permissions\";\n\nconst New = ({ isOpen, onClose, permissions }) => {\n const { t } = useTranslation();\n const { mutate: createRole, isLoading: isSubmitting } = useCreateRole({\n onSuccess: onClose,\n });\n\n const handleFormSubmit = formValues => {\n const modifiedFormValues = {\n ...formValues,\n description: formValues.description.trim(),\n };\n createRole({ organizationRole: modifiedFormValues });\n };\n\n return (\n <Pane isOpen={isOpen} onClose={onClose}>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"common.add_\", {\n what: t(\"common.role\", SINGULAR).toLocaleLowerCase(),\n })}\n </Typography>\n </Pane.Header>\n <Formik\n validateOnChange={false}\n validateOnBlur={false}\n initialValues={ADD_ROLE_FORM_INITIAL_VALUES}\n validationSchema={ADD_ROLE_FORM_VALIDATION_SCHEMA}\n onSubmit={handleFormSubmit}\n >\n {({ dirty }) => (\n <Form noValidate>\n <Pane.Body>\n <div className=\"ntm-roles-pane__body\">\n <div className=\"ntm-roles-pane__body-wrapper\">\n <Input\n required\n autoFocus\n maxLength={40}\n name=\"name\"\n label={t(\"common.name\")}\n placeholder={t(\"placeholders.enter_\", {\n what: t(\"common.name\").toLocaleLowerCase(),\n })}\n />\n <Textarea\n name=\"description\"\n label={t(\"common.description\")}\n placeholder={t(\"placeholders.enter_\", {\n what: t(\"common.description\").toLocaleLowerCase(),\n })}\n />\n </div>\n\n <Permissions permissions={permissions} />\n </div>\n </Pane.Body>\n <Pane.Footer>\n <div className=\"ntm-roles-pane__footer\">\n <Button\n size=\"large\"\n label={t(\"buttons.proceed\")}\n disabled={!dirty || isSubmitting}\n type=\"submit\"\n loading={isSubmitting}\n />\n <Button\n size=\"large\"\n style=\"text\"\n label={t(\"buttons.cancel\")}\n onClick={onClose}\n />\n </div>\n </Pane.Footer>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default New;\n","import React from \"react\";\n\nconst EmptyStateSVG = () => (\n <svg\n width=\"231\"\n height=\"230\"\n viewBox=\"0 0 231 230\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M79.423 196.585C84.6428 199.857 81.378 206.308 75.9592 207.077C71.7628 207.672 65.5321 202.956 67.4193 198.244C69.1546 193.903 75.6165 194.198 79.423 196.585Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M174.775 35.5502C174.381 35.1398 173.873 34.8561 173.317 34.7353C172.761 34.6144 172.182 34.6619 171.653 34.8717C171.124 35.0814 170.67 35.4439 170.348 35.913C170.026 36.382 169.851 36.9363 169.846 37.5052C169.918 38.1697 170.23 38.7848 170.725 39.2345C171.219 39.6841 171.861 39.937 172.53 39.9455C173.262 39.9624 173.975 39.7151 174.54 39.2491C175.104 38.783 175.482 38.1292 175.604 37.4074C175.581 36.7037 175.283 36.0369 174.775 35.5502V35.5502Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M178.971 64.0547C178.765 63.4234 177.638 63.4694 177.706 64.2008C177.936 66.8906 177.95 70.7397 181.073 71.4228C185.758 72.4474 191.73 71.3147 196.348 70.2521C196.536 70.1964 196.7 70.08 196.814 69.921C196.929 69.762 196.988 69.5694 196.981 69.3735C196.981 66.0063 197.005 62.6391 197.031 59.2719C197.031 59.0325 196.936 58.8028 196.766 58.6335C196.597 58.4642 196.367 58.3691 196.128 58.3691C195.889 58.3691 195.659 58.4642 195.49 58.6335C195.32 58.8028 195.225 59.0325 195.225 59.2719C195.371 61.791 195.371 64.3164 195.225 66.8354C195.078 68.0556 195.321 68.3442 194.103 68.8364C192.623 69.2393 191.098 69.4526 189.564 69.4712C179.171 71.1962 180.328 68.2028 178.971 64.0547Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M185.169 46.0418C186.193 46.1879 187.954 45.9866 188.78 46.4317C190.299 47.2505 189.753 49.6034 189.708 51.019C189.655 52.6773 189.653 54.3368 189.61 55.9962C189.553 58.241 190.095 59.3036 187.707 59.851C180.818 61.43 172.921 61.0712 165.894 60.4858C165.748 59.3634 165.559 58.1858 165.406 57.0703C165.266 56.0445 163.406 56.24 163.551 57.3141C163.749 58.7769 163.958 60.1891 164.138 61.6565C164.192 61.8623 164.312 62.0448 164.479 62.1769C164.646 62.3089 164.852 62.3834 165.064 62.3891C173.635 63.2654 182.16 62.4845 190.683 61.2172C190.873 61.1657 191.04 61.0504 191.156 60.8908C191.271 60.7311 191.328 60.5366 191.318 60.3398C191.318 57.8512 191.294 55.3626 191.268 52.9223C191.252 51.2145 191.665 48.6753 191.172 47.017C190.4 44.4284 187.317 45.0896 185.218 45.062C184.729 45.0597 184.583 45.9924 185.169 46.0418Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M142.178 52.3376C142.014 52.4451 141.891 52.6045 141.829 52.7903C141.766 52.9761 141.768 53.1775 141.833 53.3623C142.76 56.7295 147.444 55.7037 150.128 55.7037C159.693 55.7037 169.5 55.8566 179.066 55.4599C180.384 55.4058 181.604 55.4116 182.286 54.0454C182.871 52.8735 182.592 51.1175 182.631 49.8973C182.784 44.6775 182.908 39.4542 182.976 34.2332C183 32.2322 183.96 28.3682 182.049 26.9134C180.3 25.5852 176.339 26.2798 174.29 26.2303C154.597 25.7554 155.929 26.1268 150.817 25.8393C148.425 25.7048 144.978 24.7882 142.814 26.3281C141.216 27.4666 141.814 30.3772 141.839 32.0367C141.935 38.7699 141.786 45.5538 142.178 52.3376ZM143.443 28.5729C144.389 26.826 148.567 27.516 150.422 27.5471C156.517 27.6517 162.67 27.7161 168.77 27.8921C171.847 27.7864 174.928 27.8843 177.993 28.1853C180.042 28.5246 181.123 29.3077 181.067 31.5042C181.024 33.1625 180.859 41.7024 180.774 44.3842C180.717 46.1897 181.512 52.5941 179.509 53.5578C178.589 54.0028 176.141 53.5578 175.117 53.5578C172.154 53.5578 166.262 53.705 154.865 53.705C153.353 53.705 144.178 54.6802 143.691 52.8264C143.636 52.6152 143.515 52.4271 143.346 52.2893C143.631 43.9886 143.261 28.9133 143.443 28.5729V28.5729Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M161.988 48.7255C161.964 42.5282 161.466 36.0859 160.867 29.9391C160.861 29.8393 160.818 29.7452 160.745 29.6765C160.673 29.6077 160.576 29.5693 160.476 29.5693C160.376 29.5693 160.28 29.6077 160.208 29.6765C160.135 29.7452 160.091 29.8393 160.086 29.9391C159.613 36.2593 159.875 42.613 160.867 48.8727C160.966 49.5064 161.99 49.312 161.988 48.7255Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M147.301 34.7207C149.792 34.9392 152.278 34.9162 154.767 34.9162C154.948 34.9162 155.122 34.8442 155.25 34.7161C155.378 34.588 155.45 34.4143 155.45 34.2331C155.45 34.0519 155.378 33.8782 155.25 33.7501C155.122 33.622 154.948 33.55 154.767 33.55C152.278 33.55 149.741 33.5006 147.301 33.7444C147.176 33.7505 147.057 33.8045 146.971 33.8954C146.884 33.9863 146.836 34.107 146.836 34.2325C146.836 34.3581 146.884 34.4788 146.971 34.5697C147.057 34.6605 147.176 34.7146 147.301 34.7207V34.7207Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M151.743 39.6003C150.291 39.5606 148.838 39.6426 147.4 39.8452C146.815 39.9441 147.055 40.7158 147.546 40.7721C149.062 40.9458 150.572 40.894 152.085 40.9182C153.433 41.0338 154.789 41.0176 156.134 40.8699C156.671 40.771 156.571 40.0028 156.134 39.8935C154.688 39.6185 153.213 39.5201 151.743 39.6003V39.6003Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M153.938 46.237C151.805 45.9363 149.643 45.8873 147.498 46.091C147.373 46.0971 147.255 46.1511 147.168 46.242C147.081 46.3329 147.033 46.4536 147.033 46.5791C147.033 46.7047 147.081 46.8254 147.168 46.9163C147.255 47.0071 147.373 47.0612 147.498 47.0673C149.597 47.0432 151.692 47.2421 153.744 47.4123C154.474 47.4675 154.62 46.3451 153.938 46.237Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M180.245 32.1839C180.245 32.0746 180.224 31.9663 180.183 31.8652C180.142 31.7642 180.08 31.6723 180.003 31.5951C179.926 31.5178 179.834 31.4567 179.733 31.4152C179.632 31.3738 179.524 31.3528 179.414 31.3536C174.929 31.7492 170.434 31.027 165.947 31.2558C165.779 31.2725 165.62 31.3351 165.486 31.4369C165.352 31.5387 165.249 31.6755 165.188 31.8323C165.128 31.9891 165.112 32.1597 165.142 32.3251C165.172 32.4905 165.248 32.6442 165.36 32.7692C165.015 36.6723 165.288 40.6743 165.312 44.5786C165.319 45.7493 164.71 48.6036 165.799 49.458C167.002 50.4068 170.974 49.9065 172.338 49.9456C174.673 50.2036 177.028 50.2201 179.366 49.9951C179.504 49.9533 179.63 49.878 179.732 49.7759C179.834 49.6738 179.91 49.548 179.951 49.4097C180.729 43.7977 180.118 37.7993 180.245 32.1839ZM178.096 48.2839C176.486 47.8929 174.339 48.2344 172.68 48.1861C170.948 47.9756 169.202 47.9102 167.459 47.9906C167.263 48.021 167.062 48.0044 166.874 47.9423C166.794 47.3274 166.761 46.7073 166.776 46.0874C166.58 41.6955 166.922 37.2554 166.58 32.8624C170.582 32.7646 174.535 33.2074 178.54 33.0084C178.183 41.239 178.635 48.829 178.093 48.2873L178.096 48.2839Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M47.1667 185.019C47.0668 185.025 46.9728 185.068 46.904 185.141C46.8352 185.214 46.7969 185.31 46.7969 185.41C46.7969 185.51 46.8352 185.606 46.904 185.679C46.9728 185.751 47.0668 185.795 47.1667 185.8C54.0954 186.044 60.977 186.1 67.9058 185.849C74.3964 185.613 81.0974 185.734 87.4742 184.336C88.1101 184.197 87.9135 183.357 87.3281 183.312C80.6938 182.791 73.9076 183.558 67.271 183.848C60.5377 184.143 53.8447 184.441 47.1667 185.019Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M59.3674 180.578C59.8377 178.341 59.634 176.015 58.782 173.894C58.636 173.454 57.862 173.309 57.7574 173.894C57.3106 176.177 57.5656 178.543 58.4888 180.679C58.5349 180.761 58.6044 180.828 58.6885 180.871C58.7726 180.914 58.8675 180.931 58.9613 180.92C59.0551 180.91 59.1437 180.872 59.216 180.811C59.2882 180.75 59.3409 180.669 59.3674 180.578V180.578Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M47.7533 189.851C47.6446 189.743 47.5095 189.665 47.3614 189.626C47.2134 189.586 47.0576 189.586 46.9095 189.626C46.7615 189.665 46.6263 189.743 46.5175 189.85C46.4087 189.958 46.3301 190.093 46.2894 190.241C44.5333 197.073 43.051 203.912 41.2639 210.736C40.6889 212.935 38.2877 217.46 41.6537 217.91C46.2917 218.529 51.2183 218.229 55.8539 218.299C63.2231 218.414 70.5417 218.475 77.9109 218.397C84.1566 218.332 90.6437 218.426 96.8445 217.373C96.9799 217.335 97.1065 217.271 97.217 217.185C97.3274 217.098 97.4194 216.99 97.4876 216.867C97.5558 216.745 97.5989 216.61 97.6142 216.47C97.6296 216.33 97.617 216.189 97.5771 216.055C95.3323 207.258 93.2209 198.475 91.282 189.605C91.214 189.384 91.0786 189.19 90.8949 189.05C90.7112 188.91 90.4882 188.831 90.2573 188.824C76.3101 187.368 61.7097 188.387 47.7533 189.851ZM89.427 190.875C91.3797 199.073 93.3317 207.271 95.2828 215.469C86.2576 216.879 50.7778 216.239 42.1908 215.763C43.6202 208.612 47.6383 199.432 47.9971 191.119C61.8075 191.9 75.6178 189.655 89.427 190.875V190.875Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M63.1743 200.444C62.8557 196.977 62.6373 193.71 59.5633 191.221C55.7085 191.319 51.8583 191.319 47.9978 191.074C47.6528 199.044 43.7186 208.079 42.1914 215.718C48.0748 216.063 45.799 215.905 54.8782 216.157C59.0481 213.628 63.7493 206.68 63.1743 200.444Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M220.839 83.6164C217.068 78.4625 213.029 73.5106 208.738 68.7814C208.595 68.6394 208.402 68.5597 208.201 68.5597C207.999 68.5597 207.806 68.6394 207.663 68.7814C202.859 72.6989 198.265 76.869 193.903 81.2739C191.17 80.493 187.369 81.4337 185.069 82.3951C182.615 83.416 180.447 85.0211 178.755 87.0709C177.063 89.1207 175.897 91.553 175.359 94.1562C174.834 96.6471 175.014 99.0356 173.261 100.891C173.016 100.354 172.831 99.7636 172.578 99.2311C172.462 99.0369 172.273 98.8969 172.053 98.8419C171.833 98.7869 171.601 98.8214 171.406 98.9379C159.917 106.059 148.033 113.577 138.029 122.703C131.435 107.362 108.621 75.9344 90.4497 78.2965C89.573 73.1484 87.9627 68.1526 85.668 63.4615C85.3771 62.875 84.349 63.2672 84.5939 63.9008C88.474 73.9449 88.5499 78.3977 88.934 78.7853C87.4701 83.5187 86.396 88.3498 85.0792 93.1327C84.012 92.7762 79.0889 84.7515 70.7318 81.8109C70.7318 80.7069 67.1668 66.7747 59.9471 52.6791C59.8658 52.5267 59.7327 52.4082 59.5719 52.345C59.4111 52.2818 59.2331 52.2779 59.0697 52.3341C55.438 53.8901 54.2857 50.5194 54.7261 48.2838C55.4058 44.8338 58.8017 44.8407 59.6056 44.4773C60.886 43.7715 61.9792 42.77 62.7941 41.5562C63.6091 40.3424 64.1222 38.9514 64.2907 37.4991C64.3367 35.3026 63.4615 33.1556 63.4615 30.9108C63.4615 28.3244 64.2447 25.9416 66.9748 25.1044C69.0264 24.4754 72.4568 24.6766 73.3676 27.202C74.1531 29.387 74.9144 24.6525 77.1247 22.3226C79.335 19.9927 83.8384 19.6005 85.5668 22.7136C87.4367 26.0808 85.8405 31.0016 89.2756 33.6386C97.4647 52.3548 85.6611 67.4037 70.8756 61.8918C70.0936 61.6008 69.7509 62.7244 70.3385 63.1568C76.5612 67.7752 85.8106 63.8905 89.8092 58.1796C94.6921 51.2037 94.2942 41.8806 90.6383 34.4631C91.9039 34.9642 93.3033 35.0145 94.6016 34.6058C95.8999 34.197 97.0181 33.354 97.7683 32.2183C98.1547 31.679 97.5245 31.1937 97.0369 31.242C91.9125 32.0723 92.4496 23.9717 91.2789 20.7022C89.6434 15.9141 86.6829 11.6882 82.7413 8.51566C78.0263 4.93456 72.8317 5.33131 67.3209 6.90566C64.7817 7.63131 60.6843 8.95496 59.7574 11.8829C57.5185 11.3693 55.1736 11.5919 53.0713 12.5177C50.1342 14.0127 49.5569 17.0027 49.1187 19.9835C48.3137 25.4276 47.9986 34.4482 46.5324 37.1116C45.5319 38.9309 42.374 39.2138 41.7024 36.9655C41.6519 36.8014 41.5446 36.6606 41.3998 36.5683C41.255 36.476 41.0821 36.4382 40.912 36.4617C40.7419 36.4852 40.5857 36.5685 40.4714 36.6966C40.357 36.8247 40.292 36.9893 40.2879 37.161C40.1174 38.3624 40.2772 39.5875 40.7501 40.705C41.2229 41.8225 41.991 42.7902 42.972 43.5044C43.9862 44.0746 45.1623 44.2882 46.3122 44.1112C47.4622 43.9343 48.5196 43.3768 49.3154 42.5281C49.7156 42.098 50.478 42.6684 50.1445 43.1629C49.5104 43.9637 48.7015 44.6089 47.7795 45.0488C46.8576 45.4887 45.8472 45.7118 44.8258 45.7009C44.8649 45.8159 46.6301 50.7529 46.6807 50.8759C47.9032 53.8015 49.6558 57.8576 53.0724 58.7316C55.561 59.3687 58.3923 58.4395 60.6371 57.2193C64.2481 64.7829 66.1019 72.9318 68.6871 80.9346C66.3733 80.7299 59.4262 83.6049 56.3407 87.2274C40.289 91.7699 28.2876 102.943 20.0352 117.141C8.54099 136.921 8.46738 148.798 12.3739 164.281C14.4796 172.623 17.3028 181.555 21.9385 188.973C22.1621 190.115 22.6371 191.194 23.3291 192.131C24.0211 193.068 24.9126 193.839 25.9393 194.389C29.7447 196.246 33.9433 193.656 35.0163 189.904C35.7151 190.585 36.4837 191.19 37.3094 191.71C34.2849 201.47 31.7963 211.368 28.965 221.086C28.9257 221.229 28.92 221.379 28.9482 221.525C28.9764 221.671 29.0377 221.808 29.1275 221.926C29.2173 222.044 29.333 222.139 29.4658 222.205C29.5986 222.272 29.7448 222.306 29.893 222.306C53.7992 224.08 77.7426 224.649 101.723 224.014C108.065 223.853 114.411 224.16 120.755 224.062C119.655 209.771 119.815 198.302 114.265 174.142C117.805 168.804 118.705 158.759 118.705 152.378C122.24 159.449 127.429 160.876 134.906 159.063C145.454 156.507 159.301 149.633 172.188 137.885C175.354 135 177.194 133.106 177.654 128.809C177.906 126.361 178.004 123.9 177.946 121.44C182.143 118.658 187.219 115.389 190.293 111.388C190.678 112.929 203.537 113.099 209.958 105.293C212.162 102.362 213.679 98.9733 214.399 95.3775C214.684 94.2045 215.619 91.571 214.497 90.5475C216.594 88.5925 218.741 86.6375 220.792 84.6422C220.886 84.4891 220.939 84.3147 220.947 84.1354C220.956 83.956 220.918 83.7775 220.839 83.6164V83.6164ZM89.8172 79.4649C94.7944 79.3189 99.0885 81.0266 103.48 83.2231C103.578 91.4698 98.6504 97.5211 93.2327 103.279C91.5558 99.875 89.197 96.8519 86.3028 94.3977C87.5724 89.4699 89.0364 84.495 89.8172 79.4649ZM69.1747 82.3399C79.7455 87.6299 82.379 93.2419 83.3266 94.2999C80.4002 98.2038 78.7934 102.938 78.7393 107.817C73.4688 107.232 68.5365 104.161 64.9784 100.4C61.7055 96.9392 59.7574 92.6405 57.3171 88.6396C60.8855 85.0735 64.9864 82.141 69.1747 82.348V82.3399ZM175.895 125.429C175.785 127.722 175.78 130.301 174.63 132.31C173.412 134.055 171.949 135.616 170.286 136.945C161.343 145.178 150.84 151.534 139.397 155.635C135.153 157.15 129.455 159.221 125.099 156.953C121.402 155.028 119.924 150.56 118.414 146.998C117.81 139.173 116.602 131.406 114.802 123.768C114.662 123.132 113.73 123.423 113.827 124.061C115.207 133.183 116.817 142.409 116.755 151.68C116.715 157.634 116.511 169.492 111.191 174.273C109.191 174.469 107.141 174.713 105.141 175.006C104.458 176.539 103.292 177.807 101.822 178.617C101.756 178.652 101.683 178.672 101.608 178.676C101.533 178.679 101.458 178.667 101.389 178.639C101.319 178.611 101.256 178.568 101.205 178.514C101.154 178.46 101.115 178.395 101.091 178.324C105.385 175.787 104.158 166.757 103.921 162.562C103.909 162.414 103.843 162.276 103.734 162.175C103.626 162.075 103.483 162.019 103.335 162.019C103.187 162.019 103.044 162.075 102.936 162.175C102.827 162.276 102.76 162.414 102.749 162.562C102.357 170.086 102.979 173.473 100.895 175.641C98.9344 175.971 97.0072 176.477 95.1371 177.153C92.9901 169.833 91.0247 162.424 88.7443 155.145C88.6791 154.923 88.5445 154.727 88.3601 154.587C88.1758 154.446 87.9514 154.368 87.7196 154.364C81.2045 154.193 74.6873 154.617 68.249 155.629C66.9311 155.871 67.4681 157.919 68.786 157.679C74.7733 156.744 80.8327 156.352 86.8905 156.508C103.485 213.642 103.59 213.24 105.531 221.751C80.6437 223.41 55.7565 222.19 30.9188 220.486C35.505 203.696 40.6605 187.281 46.0988 170.76C46.3886 169.88 45.0696 169.587 44.7326 170.37C42.0505 176.738 39.6889 183.237 37.6567 189.841C31.5088 185.156 30.0667 178.641 28.4348 171.053C28.394 170.925 28.3094 170.815 28.1956 170.742C28.0819 170.67 27.9463 170.64 27.8126 170.657C27.6788 170.674 27.5555 170.738 27.4641 170.837C27.3726 170.936 27.319 171.065 27.3124 171.199C27.7828 177.106 29.5078 183.789 33.4603 188.473C25.9083 199.801 20.1272 188.874 24.3351 174.273C26.5051 166.745 31.0982 161.163 36.1444 156.12C37.7061 154.559 39.8532 152.168 42.2935 152.509C42.5856 153.584 42.8869 154.655 43.1226 155.729C43.1825 155.923 43.3095 156.089 43.4808 156.197C43.6522 156.305 43.8564 156.348 44.0568 156.318C44.2571 156.289 44.4403 156.189 44.5734 156.036C44.7064 155.883 44.7804 155.688 44.7821 155.486C44.5084 150.27 41.1849 144.791 40.4385 142.554C43.7574 136.99 48.9301 132.452 53.468 127.914C54.1511 127.231 53.0793 126.16 52.3939 126.84C47.9653 131.245 43.0249 135.624 39.8589 141.09C38.2972 137.186 36.8034 133.194 35.5154 129.183C35.4663 129.025 35.3576 128.893 35.2123 128.814C35.067 128.735 34.8968 128.716 34.7378 128.761C34.5788 128.806 34.4437 128.912 34.3612 129.055C34.2788 129.198 34.2555 129.368 34.2964 129.528C35.6258 133.999 41.1768 148.848 41.9082 151.243C40.2982 151 38.8872 151.834 37.4232 152.999C26.1325 161.961 20.9334 174.014 21.222 185.012C17.8062 177.581 15.1258 169.834 13.2192 161.881C5.97418 130.017 29.4779 96.8023 56.1625 89.1226C60.7981 98.7366 67.7775 108.693 79.4385 109.57C80.2849 109.633 80.2561 108.903 80.4148 106.837C81.0588 107.481 86.9871 112.486 87.8323 111.912C89.2748 110.927 90.5122 109.672 91.4755 108.215C91.1738 105.664 90.343 103.204 89.0364 100.993C88.7397 100.409 89.4722 99.8245 89.915 100.31C91.222 101.79 92.1882 103.539 92.7451 105.433C94.7277 105.433 100.272 97.5314 101.577 95.2337C103.488 91.8711 105.384 87.8174 104.847 83.9131C114.332 87.5609 131.192 113.314 136.029 123.342C138.22 127.883 138.674 132.903 138.904 137.884C138.916 138.147 139.03 138.396 139.221 138.578C139.411 138.759 139.665 138.861 139.928 138.861C140.192 138.861 140.446 138.759 140.636 138.578C140.827 138.396 140.941 138.147 140.953 137.884C141.047 133.116 140.149 128.38 138.317 123.977C149.242 116.12 159.741 108.019 171.257 100.943C174.709 108.629 176.299 117.021 175.897 125.437L175.895 125.429ZM193.901 106.544C189.688 102.797 186.213 98.2949 183.654 93.2707C184.986 91.4867 186.726 90.0477 188.729 89.0743C189.17 88.8351 188.875 88.098 188.384 88.2935C185.915 89.0573 183.747 90.576 182.186 92.6359C181.993 92.7652 181.853 92.959 181.79 93.1825C181.726 93.406 181.745 93.6448 181.841 93.856C184.582 99.4804 188.472 104.468 193.26 108.496C193.44 108.659 193.675 108.75 193.919 108.75C194.162 108.75 194.397 108.659 194.578 108.496C200.898 102.913 207.161 97.2692 213.365 91.5629C213.762 92.951 211.219 102.718 205.752 106.69C201.842 109.528 195.402 110.448 190.572 110.448C189.965 108.929 186.567 113.457 177.642 119.476C177.235 113.566 175.905 107.756 173.701 102.258C177.117 100.013 176.199 95.4304 177.654 91.9079C178.579 89.6268 180.066 87.6165 181.976 86.0638C183.886 84.5111 186.157 83.4663 188.579 83.0265C189.067 82.9287 196.582 82.1973 194.386 85.1252C193.946 85.7106 194.767 86.3799 195.312 86.0521C197.092 84.9826 196.63 82.8321 195.02 81.8063C199.608 78.3425 203.755 74.1945 208.05 70.388C208.879 71.3149 209.66 72.2418 210.441 73.2181C210.214 73.6316 210.116 74.1033 210.16 74.5727C210.203 75.0421 210.386 75.4879 210.685 75.8528L213.271 78.9762C213.554 79.3347 213.937 79.6005 214.372 79.7397C214.806 79.8788 215.273 79.8848 215.711 79.757C216.736 81.1232 217.76 82.4894 218.736 83.9051C210.642 91.6193 202.296 99.1299 193.904 106.552L193.901 106.544Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M188.682 95.2302C188.143 94.8426 187.601 95.5752 187.852 96.0605C188.286 96.8081 188.793 97.5108 189.366 98.1581C191.657 100.991 192.865 99.4587 190.585 97.0851C190.005 96.4129 189.369 95.7923 188.682 95.2302V95.2302Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M77.5693 39.4544C78.1351 41.2507 78.7906 43.0654 79.4726 44.8226C80.0591 46.3349 82.9881 52.6645 78.4962 51.7514C78.3409 51.7135 78.1772 51.7329 78.035 51.8061C77.8929 51.8793 77.782 52.0014 77.7227 52.1498C77.6634 52.2982 77.6596 52.4631 77.7122 52.6141C77.7647 52.765 77.87 52.892 78.0086 52.9715C79.8808 54.2136 82.0221 52.584 82.4488 50.629C82.6301 49.025 82.3061 47.4043 81.5219 45.9933C80.5294 43.6577 79.5209 41.3577 78.3502 39.1129C78.2919 39.032 78.2077 38.9735 78.1115 38.9471C78.0154 38.9208 77.9131 38.9282 77.8217 38.9682C77.7304 39.0081 77.6555 39.0782 77.6096 39.1667C77.5636 39.2552 77.5494 39.3567 77.5693 39.4544V39.4544Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M80.6932 38.6735C80.3482 39.1128 80.784 39.7867 81.3268 39.4543C82.985 38.3505 84.5226 37.0754 85.9142 35.6502C86.158 35.2603 85.7681 34.6278 85.2794 34.821C83.6105 35.9284 82.072 37.2208 80.6932 38.6735V38.6735Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M72.1996 43.4564C72.3249 43.4503 72.4432 43.3962 72.5297 43.3053C72.6163 43.2144 72.6646 43.0937 72.6646 42.9682C72.6646 42.8427 72.6163 42.722 72.5297 42.6311C72.4432 42.5402 72.3249 42.4861 72.1996 42.48C70.2963 42.334 67.7215 42.1086 65.9539 43.1148C63.2882 44.6351 70.248 43.4564 72.1996 43.4564Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M71.9145 55.4117C71.8233 55.3253 71.7043 55.2741 71.5788 55.2674C71.4533 55.2606 71.3295 55.2988 71.2296 55.3751C71.1296 55.4513 71.0601 55.5606 71.0335 55.6835C71.0069 55.8063 71.0248 55.9346 71.0842 56.0454C72.4998 58.2902 76.1108 59.6575 78.4534 58.1936C78.8432 57.9486 78.6972 57.2172 78.2096 57.2655C75.4714 57.3851 74.341 57.6404 71.9145 55.4117Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M90.5986 113.628C90.3065 112.52 84.4794 113.106 84.4012 113.628C83.1477 121.934 83.1063 130.706 82.644 139.101C82.437 142.858 83.3271 143.931 85.9135 146.518C89.0556 149.709 91.2802 153.687 92.3535 158.034C92.41 158.23 92.5286 158.402 92.6914 158.525C92.8542 158.647 93.0525 158.713 93.2562 158.713C93.46 158.713 93.6583 158.647 93.8211 158.525C93.9839 158.402 94.1025 158.23 94.159 158.034C99.4731 141.704 99.1638 145.204 96.6476 137.051C94.282 129.382 92.6674 121.492 90.5986 113.628Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M86.6931 178.87C87.0606 176.773 86.9426 174.62 86.3481 172.575C85.8035 169.521 85.0038 166.517 83.9573 163.596C83.8078 163.207 83.127 163.206 83.127 163.694C83.518 168.769 84.6404 173.796 85.3235 178.822C85.365 178.969 85.452 179.098 85.5719 179.192C85.6918 179.286 85.8384 179.34 85.9907 179.345C86.1429 179.351 86.293 179.308 86.4192 179.222C86.5454 179.137 86.6413 179.014 86.6931 178.87Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M79.5198 178.871C79.5863 172.911 78.8478 166.969 77.3245 161.206C77.1646 160.574 76.0951 160.67 76.1526 161.353C76.6575 167.264 77.4705 173.161 78.4526 179.017C78.5446 179.603 79.4715 179.456 79.5198 178.871Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M71.3207 178.871C72.5202 174.752 71.7048 169.991 71.3207 165.842C71.2713 165.306 70.4007 165.062 70.2961 165.696C69.5945 170.056 69.5453 174.497 70.15 178.871C70.2547 179.553 71.1655 179.406 71.3207 178.871Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M78.1053 33.6951C77.9995 34.1816 78.6481 34.6761 79.0322 34.2322C81.8796 30.9409 83.2803 32.3646 84.888 31.6458C84.9767 31.5918 85.0522 31.5187 85.1091 31.4318C85.166 31.3449 85.2028 31.2464 85.2168 31.1435C85.2308 31.0406 85.2216 30.9359 85.19 30.837C85.1584 30.738 85.1051 30.6474 85.034 30.5717C83.6989 28.964 78.8137 30.4176 78.1053 33.6951Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M64.9291 38.0393C64.6404 38.3843 64.875 39.1019 65.4167 38.8684C67.7058 37.8833 70.2302 37.5783 72.6881 37.9898C73.3229 38.0807 73.3781 37.2055 72.9802 36.9169C71.7341 36.0841 70.2254 35.7383 68.741 35.9453C67.2566 36.1522 65.8999 36.8974 64.9291 38.0393V38.0393Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M55.3165 156.814C53.8332 148.967 53.2116 140.982 53.4627 133.001C53.4753 132.415 52.6404 132.465 52.5841 133.001C51.7918 141.087 52.2182 149.246 53.8491 157.205C54.0618 158.226 55.512 157.79 55.3165 156.814Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M61.7578 158.913C55.6628 158.937 49.0388 159.851 43.2635 157.399C42.6793 157.152 42.1376 157.992 42.7276 158.327C48.4983 161.611 55.3166 160.596 61.7095 160.621C66.5395 160.639 68.5715 162.472 63.2712 165.745C61.6877 166.693 59.9796 167.416 58.1962 167.892C54.5346 168.912 51.2169 168.582 47.5576 168.237C46.5812 168.143 46.5318 169.559 47.3632 169.847C51.4032 171.242 56.2976 170.64 60.2432 169.212C62.7836 168.292 68.1978 166.04 68.2461 162.673C68.2978 159.205 64.2475 158.902 61.7578 158.913Z\"\n fill=\"#2F3941\"\n />\n <path\n d=\"M178.19 45.4075C177.554 44.2005 176.561 43.2195 175.347 42.5992C174.132 41.9789 172.755 41.7495 171.405 41.9425C169.758 42.2369 167.871 43.9194 166.745 45.4707C166.709 46.2976 166.75 47.1261 166.867 47.9455C167.055 48.0081 167.256 48.0247 167.452 47.9938C169.195 47.9133 170.941 47.9787 172.673 48.1893C174.053 48.2296 177.178 47.8938 178.139 48.3216C178.144 48.1318 178.247 45.5167 178.19 45.4075Z\"\n fill=\"#2F3941\"\n />\n </svg>\n);\n\nexport default EmptyStateSVG;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { Typography } from \"neetoui\";\n\nimport EmptyStateSVG from \"./EmptyStateSVG\";\n\nconst EmptyState = ({ title, className, actionBlock = null }) => (\n <div\n data-cy=\"empty-state-container\"\n className={classnames([\"ntm-empty-state\", className])}\n >\n <div>\n <div\n data-cy=\"empty-state-image-container\"\n className=\"ntm-empty-state__image\"\n >\n <EmptyStateSVG />\n </div>\n <Typography\n component=\"h2\"\n style=\"h2\"\n weight=\"semibold\"\n className={classnames([\n !!actionBlock && \"ntm-empty-state__title--with-action-block\",\n ])}\n >\n {title}\n </Typography>\n {!!actionBlock && (\n <div className=\"ntm-empty-state__action-block\">{actionBlock}</div>\n )}\n </div>\n </div>\n);\n\nexport default EmptyState;\n","export const DEFAULT_MANAGE_ROLE_VALUES = {\n isDelete: false,\n isEdit: false,\n selectedRole: {},\n};\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { useUpdateRole } from \"hooks/roles/useRolesApi\";\nimport { Checkbox, Typography } from \"neetoui\";\nimport { identical, includes, map, modify, prop } from \"ramda\";\n\nconst Row = ({ roles, allPermissionsOfCategory = null, permission = null }) => {\n const { mutate: updateRole } = useUpdateRole({});\n\n const allPermissionIdsOfCategory = map(\n prop(\"id\"),\n allPermissionsOfCategory?.permissions || []\n );\n\n const handleSubmit = (role, checked) => {\n const permissionIds =\n allPermissionIdsOfCategory.length > 0\n ? allPermissionIdsOfCategory\n : [permission.id];\n const modifiedRole = modify(\n \"permissionIds\",\n () =>\n checked\n ? [...role.permissionIds, ...permissionIds]\n : role.permissionIds.filter(id => !permissionIds.includes(id)),\n role\n );\n updateRole({ id: role.id, payload: { organizationRole: modifiedRole } });\n };\n\n const isCheckboxChecked = role =>\n !allPermissionsOfCategory\n ? includes(permission.id, role.permissionIds)\n : allPermissionIdsOfCategory.every(id =>\n includes(id, role.permissionIds)\n );\n\n return (\n <div\n className={classnames(\"ntm-roles-table__row\", {\n \"ntm-roles-table__row--highlighted\": !!allPermissionsOfCategory,\n })}\n >\n {roles.map((role, index) => (\n <div key={index} className=\"ntm-roles-table__cell\">\n <div className=\"ntm-roles-table-cell__checkbox-wrapper\">\n <Checkbox\n className=\"ntm-roles-table-cell__checkbox\"\n disabled={identical(role.name, \"Admin\")}\n checked={isCheckboxChecked(role)}\n onChange={({ target: { checked } }) =>\n handleSubmit(role, checked)\n }\n />\n </div>\n <Typography style=\"body2\" lineHeight=\"normal\">\n {permission?.description}\n </Typography>\n </div>\n ))}\n </div>\n );\n};\n\nexport default Row;\n","import React, { useEffect, useCallback, useRef } from \"react\";\n\nimport { isOverflown } from \"common/utils\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Typography, Dropdown, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { ScrollSyncPane } from \"react-scroll-sync\";\n\nconst TableHeader = ({ roles, setManageRole, setIsScrollPresent }) => {\n const { t } = useTranslation();\n const scrollSyncElement = useRef(null);\n\n const getOverflowStatus = useCallback(() => {\n if (scrollSyncElement.current) {\n const headerElement = scrollSyncElement.current.node;\n const isScrollBarPresent = isOverflown(headerElement);\n setIsScrollPresent(isScrollBarPresent);\n }\n }, [setIsScrollPresent]);\n\n useEffect(\n () => getOverflowStatus(),\n [getOverflowStatus, scrollSyncElement, roles]\n );\n\n return (\n <ScrollSyncPane ref={scrollSyncElement} group=\"horizontal\">\n <div className=\"ntm-roles-table__header\">\n {roles?.map((role, index) => {\n const hasSystemRole = Object.is(role.kind, \"system\");\n\n return (\n <div key={`ntm-roles-${index}`} className=\"ntm-roles-table__cell\">\n <div className=\"ntm-roles-table-header-cell__container\">\n <Typography\n style=\"h4\"\n weight=\"semibold\"\n lineHeight=\"normal\"\n className=\"ntm-roles-table-header__role-name\"\n >\n {role.name}\n </Typography>\n <Dropdown autoWidth buttonStyle=\"text\" icon={MenuHorizontal}>\n <li className=\"ntm-dropdown__item\">\n <Button\n label={t(\"common.edit\")}\n onClick={() =>\n setManageRole({ isEdit: true, selectedRole: role })\n }\n style=\"text\"\n className=\"ntm-dropdown__button\"\n />\n </li>\n {!hasSystemRole && (\n <li className=\"ntm-dropdown__item\">\n <Button\n label={t(\"common.delete\")}\n onClick={() =>\n setManageRole({ isDelete: true, selectedRole: role })\n }\n style=\"danger-text\"\n className=\"ntm-dropdown__button\"\n />\n </li>\n )}\n </Dropdown>\n </div>\n </div>\n );\n })}\n </div>\n </ScrollSyncPane>\n );\n};\n\nexport default TableHeader;\n","import React from \"react\";\n\nimport { SINGULAR } from \"common/constants\";\nimport { useDestroyRole } from \"hooks/roles/useRolesApi\";\nimport { Alert } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Delete = ({ isOpen, onClose, selectedRole, roles }) => {\n const { t } = useTranslation();\n const { mutate: deleteRole, isLoading: isDeleting } = useDestroyRole({\n onSuccess: onClose,\n });\n\n const handleDelete = () => {\n const { id } = selectedRole;\n const payload = { newRoleId: roles.find(role => role.id !== id)?.id };\n deleteRole({ id, payload });\n };\n\n return (\n <Alert\n isOpen={isOpen}\n onClose={onClose}\n title={t(\"common.delete_\", {\n what: t(\"common.role\", SINGULAR).toLocaleLowerCase(),\n })}\n message={t(\"alerts.deleting_\", {\n what: t(\"common.role\", SINGULAR).toLocaleLowerCase(),\n name: selectedRole?.name,\n })}\n isSubmitting={isDeleting}\n onSubmit={handleDelete}\n submitButtonLabel={t(\"buttons.proceed\")}\n />\n );\n};\n\nexport default Delete;\n","import React from \"react\";\n\nimport { SINGULAR } from \"common/constants\";\nimport { Formik, Form } from \"formik\";\nimport { useUpdateRole } from \"hooks/roles/useRolesApi\";\nimport { Modal, Typography, Button } from \"neetoui\";\nimport { Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ADD_ROLE_FORM_VALIDATION_SCHEMA } from \"./constants\";\n\nconst Edit = ({ isOpen, onClose, selectedRole }) => {\n const { t } = useTranslation();\n const { mutate: updateRole, isLoading: isSubmitting } = useUpdateRole({\n onSuccess: onClose,\n });\n\n const initialValues = {\n name: selectedRole?.name,\n description: selectedRole?.description,\n };\n\n const handleFormSubmit = formValues => {\n const payload = {\n organizationRole: {\n ...selectedRole,\n ...formValues,\n description: formValues.description.trim(),\n },\n };\n updateRole({ id: selectedRole.id, payload });\n };\n\n return (\n <Modal isOpen={isOpen} onClose={onClose}>\n <Formik\n initialValues={initialValues}\n validationSchema={ADD_ROLE_FORM_VALIDATION_SCHEMA}\n onSubmit={handleFormSubmit}\n >\n {({ dirty }) => (\n <Form noValidate>\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"common.update_\", {\n what: t(\"common.role\", SINGULAR).toLocaleLowerCase(),\n })}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <div className=\"ntm-roles-modal__body\">\n <Input\n required\n autoFocus\n name=\"name\"\n label={t(\"common.name\")}\n placeholder={t(\"placeholders.enterRoleName\")}\n maxLength={40}\n />\n <Textarea\n name=\"description\"\n label={t(\"common.description\")}\n placeholder={t(\"placeholders.enterDescription\")}\n />\n </div>\n </Modal.Body>\n <Modal.Footer>\n <div className=\"ntm-roles-modal__footer\">\n <Button\n type=\"submit\"\n size=\"large\"\n disabled={!dirty || isSubmitting}\n label={t(\"buttons.proceed\")}\n loading={isSubmitting}\n />\n <Button\n size=\"large\"\n style=\"text\"\n label={t(\"buttons.cancel\")}\n onClick={onClose}\n />\n </div>\n </Modal.Footer>\n </Form>\n )}\n </Formik>\n </Modal>\n );\n};\n\nexport default Edit;\n","import React, { useState } from \"react\";\n\nimport { ScrollSyncPane } from \"react-scroll-sync\";\n\nimport { DEFAULT_MANAGE_ROLE_VALUES } from \"./constants\";\nimport Row from \"./Row\";\nimport TableHeader from \"./TableHeader\";\n\nimport Delete from \"../Delete\";\nimport Edit from \"../Edit\";\n\nconst Columns = ({\n setIsScrollPresent,\n roles,\n filteredRoles,\n filteredGroupPermissions,\n}) => {\n const [manageRole, setManageRole] = useState(DEFAULT_MANAGE_ROLE_VALUES);\n const categories = Object.keys(filteredGroupPermissions);\n\n const onClose = () => setManageRole(DEFAULT_MANAGE_ROLE_VALUES);\n\n return (\n <div className=\"ntm-roles-table__columns\">\n <TableHeader\n setManageRole={setManageRole}\n roles={filteredRoles}\n setIsScrollPresent={setIsScrollPresent}\n />\n <ScrollSyncPane group={[\"horizontal\", \"vertical\"]}>\n <div className=\"ntm-roles-table__rows\">\n {categories.map((category, index) => {\n const groupedPermissions = filteredGroupPermissions[category];\n const isPermissionsVisible =\n groupedPermissions.isPermissionsVisible;\n\n return (\n <div key={index}>\n <Row\n allPermissionsOfCategory={groupedPermissions}\n roles={filteredRoles}\n />\n {isPermissionsVisible &&\n groupedPermissions.permissions.map(\n (permission, permissionIndex) => (\n <Row\n key={permissionIndex}\n permission={permission}\n roles={filteredRoles}\n />\n )\n )}\n </div>\n );\n })}\n </div>\n </ScrollSyncPane>\n <Edit\n isOpen={manageRole.isEdit}\n onClose={onClose}\n selectedRole={manageRole.selectedRole}\n />\n <Delete\n isOpen={manageRole.isDelete}\n onClose={onClose}\n roles={roles}\n selectedRole={manageRole.selectedRole}\n />\n </div>\n );\n};\n\nexport default Columns;\n","import React from \"react\";\n\nimport { getScrollBarWidth } from \"common/utils\";\nimport { Typography } from \"neetoui\";\n\nexport const renderDescription = permissions =>\n permissions?.map(({ id, description }) => (\n <div key={id} className=\"ntm-roles-table-sidebar__list-item\">\n <Typography style=\"body2\" lineHeight=\"normal\">\n {description}\n </Typography>\n </div>\n ));\n\nexport const getSearchWrapperStyle = () => {\n const scrollBarWidth = getScrollBarWidth();\n\n document.documentElement.style.setProperty(\n \"--ntm-roles-table-default-scroll\",\n `${scrollBarWidth}px`\n );\n\n return {\n marginBottom: `${scrollBarWidth}px`,\n };\n};\n","import React from \"react\";\n\nimport { Down, Up } from \"neetoicons\";\n\nconst ToggleDropdown = ({ isVisible, onClick }) =>\n isVisible ? (\n <Up\n size={16}\n strokeWidth={2}\n className=\"ntm-roles-table-sidebar__drop-down-button\"\n onClick={onClick}\n />\n ) : (\n <Down\n size={16}\n strokeWidth={2}\n className=\"ntm-roles-table-sidebar__drop-down-button\"\n onClick={onClick}\n />\n );\n\nexport default ToggleDropdown;\n","import React from \"react\";\n\nimport { PLURAL } from \"common/constants\";\nimport { Search } from \"neetoicons\";\nimport { Input, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { ScrollSyncPane } from \"react-scroll-sync\";\n\nimport { renderDescription, getSearchWrapperStyle } from \"./helpers\";\nimport ToggleDropdown from \"./ToggleDropdown\";\n\nconst Sidebar = ({\n searchTerm,\n setSearchTerm,\n filteredGroupPermissions,\n toggleDropdown,\n isScrollPresent,\n}) => {\n const { t } = useTranslation();\n const categories = Object.keys(filteredGroupPermissions);\n const searchWrapperStyle = isScrollPresent ? getSearchWrapperStyle() : {};\n\n return (\n <div className=\"ntm-roles-table__sidebar\">\n <div\n className=\"ntm-roles-table-sidebar__search\"\n style={searchWrapperStyle}\n >\n <Input\n type=\"search\"\n placeholder={t(\"common.search_\", {\n what: t(\"common.permission\", PLURAL).toLocaleLowerCase(),\n })}\n value={searchTerm}\n onChange={({ target: { value } }) => setSearchTerm(value)}\n prefix={<Search />}\n />\n </div>\n <ScrollSyncPane group=\"vertical\">\n <div className=\"ntm-roles-table-sidebar__list\">\n {categories.map((category, index) => {\n const isPermissionsVisible =\n filteredGroupPermissions[category].isPermissionsVisible;\n const permissions = filteredGroupPermissions[category].permissions;\n\n return (\n <div key={index}>\n <div className=\"ntm-roles-table-sidebar__list-item ntm-roles-table-sidebar__list-item--highlighted\">\n <Typography style=\"h4\" weight=\"semibold\" lineHeight=\"normal\">\n {category}\n </Typography>\n <ToggleDropdown\n isVisible={isPermissionsVisible}\n onClick={() => toggleDropdown(category)}\n />\n </div>\n {isPermissionsVisible && renderDescription(permissions)}\n </div>\n );\n })}\n </div>\n </ScrollSyncPane>\n </div>\n );\n};\n\nexport default Sidebar;\n","import React, { useState, useEffect } from \"react\";\n\nimport { PLURAL } from \"common/constants\";\nimport EmptyState from \"components/Common/EmptyState\";\nimport {\n isEmpty,\n fromPairs,\n toPairs,\n modify,\n modifyPath,\n filter,\n includes,\n} from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Columns from \"./Columns\";\nimport Sidebar from \"./Sidebar\";\n\nimport AddRoleButton from \"../AddRoleButton\";\n\nconst Table = ({\n roles,\n permissionGroups,\n setIsNewRolePaneOpen,\n filteredRoles,\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [filteredGroupPermissions, setFilteredGroupPermissions] =\n useState(permissionGroups);\n const [isScrollPresent, setIsScrollPresent] = useState(false);\n\n const toggleDropdown = category => {\n setFilteredGroupPermissions(\n modifyPath([category, \"isPermissionsVisible\"], visible => !visible)\n );\n };\n\n useEffect(() => {\n setFilteredGroupPermissions(\n fromPairs(\n toPairs(permissionGroups).map(([category, options]) => [\n category,\n modify(\n \"permissions\",\n filter(({ description }) =>\n includes(\n searchTerm.toLowerCase().trim(),\n description?.toLowerCase().trim()\n )\n ),\n options\n ),\n ])\n )\n );\n }, [searchTerm, permissionGroups]);\n\n return (\n <div className=\"ntm-roles-table__wrapper\">\n <Sidebar\n isScrollPresent={isScrollPresent}\n searchTerm={searchTerm}\n setSearchTerm={setSearchTerm}\n filteredGroupPermissions={filteredGroupPermissions}\n toggleDropdown={toggleDropdown}\n />\n {isEmpty(filteredRoles) ? (\n <EmptyState\n title={t(\"common.notFound_\", {\n what: t(\"common.role\", PLURAL).toLocaleLowerCase(),\n })}\n actionBlock={\n <AddRoleButton onClick={() => setIsNewRolePaneOpen(true)} />\n }\n />\n ) : (\n <Columns\n setIsScrollPresent={setIsScrollPresent}\n filteredRoles={filteredRoles}\n filteredGroupPermissions={filteredGroupPermissions}\n roles={roles}\n />\n )}\n </div>\n );\n};\n\nexport default Table;\n","import React, { useState, useEffect } from \"react\";\n\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { useFetchPermissions } from \"hooks/roles/usePermissionsApi\";\nimport { useFetchRoles } from \"hooks/roles/useRolesApi\";\nimport { PageLoader } from \"neetoui\";\nimport { Container } from \"neetoui/layouts\";\nimport PropTypes from \"prop-types\";\nimport { filter, includes } from \"ramda\";\nimport { ScrollSync } from \"react-scroll-sync\";\n\nimport Header from \"./Header\";\nimport { getPermissionGroups } from \"./helpers\";\nimport New from \"./New\";\nimport Table from \"./Table\";\n\nconst Roles = ({ config }) => {\n const [searchString, setSearchString] = useState(\"\");\n const [filteredRoles, setFilteredRoles] = useState([]);\n const [isNewRolePaneOpen, setIsNewRolePaneOpen] = useState(false);\n const { data: roles, isLoading: isRolesLoading } = useFetchRoles({\n onSuccess: roles => setFilteredRoles(roles),\n });\n const { data: permissions, isLoading: isPermissionsLoading } =\n useFetchPermissions({});\n\n const permissionGroups = getPermissionGroups(permissions);\n\n useEffect(() => {\n setFilteredRoles(\n filter(\n ({ name }) =>\n includes(\n searchString.toLowerCase().trim(),\n name.toLowerCase().trim()\n ),\n roles || []\n )\n );\n }, [roles, searchString]);\n\n if (isRolesLoading || isPermissionsLoading) {\n return (\n <div className=\"ntm-members-page-loader\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <>\n <ScrollSync>\n <Container isHeaderFixed>\n <Header\n breadcrumbs={config?.header?.breadcrumbs}\n membersPageUrl={config?.membersPageUrl}\n searchString={searchString}\n setSearchString={setSearchString}\n setIsNewRolePaneOpen={setIsNewRolePaneOpen}\n />\n <Table\n permissionGroups={permissionGroups}\n setIsNewRolePaneOpen={setIsNewRolePaneOpen}\n filteredRoles={filteredRoles}\n roles={roles}\n />\n </Container>\n </ScrollSync>\n <New\n isOpen={isNewRolePaneOpen}\n onClose={() => setIsNewRolePaneOpen(false)}\n permissions={permissions}\n />\n </>\n );\n};\n\nRoles.propTypes = {\n config: PropTypes.shape({\n header: PropTypes.shape({\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string.isRequired,\n link: PropTypes.string.isRequired,\n })\n ),\n }),\n membersPageUrl: PropTypes.string,\n }),\n};\n\nRoles.defaultProps = {\n config: {\n membersPageUrl: \"/members\",\n },\n};\n\nexport default withReactQuery(Roles);\n","import axios from \"axios\";\nimport { BASE_URL } from \"common/routes\";\n\nconst fetch = params => axios.get(`${BASE_URL}/teams`, { params });\n\nconst create = payload => axios.post(`${BASE_URL}/teams`, payload);\n\nconst update = (id, payload) => axios.put(`${BASE_URL}/teams/${id}`, payload);\n\nconst teamsApi = { fetch, create, update };\n\nexport default teamsApi;\n","import queryClient from \"apis/queryClient\";\nimport teamsApi from \"apis/teams\";\nimport { DEFAULT_STALE_TIME, QUERY_KEYS } from \"common/queryConstants\";\nimport { Toastr } from \"neetoui\";\nimport { useQuery, useMutation } from \"react-query\";\n\nconst useFetchMembers = (params = {}, options = {}) =>\n useQuery([QUERY_KEYS.TEAMS, params], () => teamsApi.fetch(params), {\n staleTime: DEFAULT_STALE_TIME,\n select: response => response.data || response,\n ...options,\n });\n\nconst useCreateMember = ({ onSuccess, ...options }) =>\n useMutation(teamsApi.create, {\n onSuccess: response => {\n queryClient.invalidateQueries(QUERY_KEYS.TEAMS);\n Toastr.success(response.ntmNotice || response.data.ntmNotice);\n onSuccess?.();\n },\n ...options,\n });\n\nconst useUpdateMember = ({ onSuccess, ...options }) =>\n useMutation(({ id, payload }) => teamsApi.update(id, payload), {\n onSuccess: response => {\n queryClient.invalidateQueries(QUERY_KEYS.TEAMS);\n Toastr.success(response.ntmNotice || response.data.ntmNotice);\n onSuccess?.();\n },\n ...options,\n });\n\nexport { useFetchMembers, useCreateMember, useUpdateMember };\n","import React from \"react\";\n\nimport { MANAGE_MEMBER_PERMISSIONS, SINGULAR } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport { hasPermission } from \"common/utils\";\nimport { Plus } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst noop = () => {};\n\nconst Header = ({ metaName = \"\", onClick = noop }) => (\n <Button\n icon={Plus}\n size=\"large\"\n label={i18n.t(\"common.add_\", {\n what: i18n.t(metaName, SINGULAR).toLocaleLowerCase(),\n })}\n disabled={!hasPermission(MANAGE_MEMBER_PERMISSIONS)}\n onClick={onClick}\n />\n);\n\nexport default Header;\n","import React from \"react\";\n\nimport { MANAGE_MEMBER_PERMISSIONS, PLURAL } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport { hasPermission } from \"common/utils\";\nimport { Typography, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nconst Left = ({ metaName, count }) => (\n <Typography style=\"h4\" component=\"h4\">\n {count} {i18n.t(metaName, { count }).toLocaleLowerCase()}\n </Typography>\n);\n\nLeft.propTypes = {\n metaName: PropTypes.string,\n count: PropTypes.number.isRequired,\n};\n\nLeft.defaultProps = {\n metaName: \"metaNames.member\",\n count: 0,\n};\n\nconst Right = ({ rolesButtonProps }) => {\n const isVisible = !!rolesButtonProps;\n const permissions = window.globalProps.permissions;\n const hasRequiredPermissions =\n permissions && hasPermission(MANAGE_MEMBER_PERMISSIONS);\n\n return isVisible && hasRequiredPermissions ? (\n <Button\n label={i18n.t(\"common.manage_\", {\n what: i18n.t(\"common.role\", PLURAL).toLocaleLowerCase(),\n })}\n {...rolesButtonProps}\n />\n ) : null;\n};\n\nconst SubHeader = {\n Left,\n Right,\n};\n\nexport default SubHeader;\n","import i18n from \"common/i18n\";\nimport { clamp } from \"ramda\";\n\nexport const URL_PARAMS = new URLSearchParams(window.location.search);\n\nexport const MEMBER_FILTER = {\n ACTIVE: { label: i18n.t(\"common.active\"), value: \"ACTIVE\", defaultCount: 0 },\n DEACTIVATED: {\n label: i18n.t(\"common.deactivated\"),\n value: \"DEACTIVATED\",\n defaultCount: 0,\n },\n ALL: { label: i18n.t(\"common.all\"), value: \"ALL\", defaultCount: 0 },\n};\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_MEMBER_FILTER = MEMBER_FILTER.ACTIVE.value;\n\nexport const DEFAULT_PAGE_NUMBER = 1;\n\nexport const DEFAULT_PAGE_SIZE = 10;\n\nexport const DROPDOWN_BUTTON_PROPS = { size: \"large\" };\n\nexport const DEFAULT_IS_OPEN_VALUES = {\n menuBar: false,\n manageMember: false,\n alert: false,\n};\n\nexport const DEFAULT_FILTER_VALUES = {\n page:\n clamp(1, Infinity, parseInt(URL_PARAMS.get(\"page\"))) || DEFAULT_PAGE_NUMBER,\n results:\n clamp(10, 100, parseInt(URL_PARAMS.get(\"results\"))) || DEFAULT_PAGE_SIZE,\n category:\n new URLSearchParams(window.location.search).get(\"filter\")?.toUpperCase() ||\n DEFAULT_MEMBER_FILTER,\n search: \"\",\n sort_by: \"\",\n sort_direction: \"\",\n};\n","import React from \"react\";\n\nimport { MANAGE_MEMBER_PERMISSIONS, PLURAL, SINGULAR } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport { hasPermission } from \"common/utils\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Avatar, Dropdown, Tag, Button } from \"neetoui\";\nimport { mergeLeft, toLower, identical, isNil } from \"ramda\";\n\nimport {\n DEFAULT_RADIX,\n DROPDOWN_BUTTON_PROPS,\n MEMBER_FILTER,\n} from \"./constants\";\n\nconst renderNameColumn = (\n { displayName, profileImageUrl: imageUrl, active },\n diplayStatusTag\n) => (\n <div className=\"ntm-members-table__column\">\n <Avatar user={{ displayName, imageUrl }} size=\"medium\" />\n {displayName}\n {diplayStatusTag && (\n <Tag\n style=\"outline\"\n color={active ? \"blue\" : \"gray\"}\n label={\n active ? MEMBER_FILTER.ACTIVE.label : MEMBER_FILTER.DEACTIVATED.label\n }\n />\n )}\n </div>\n);\n\nconst renderDropdownButton = (\n { displayName, id, active, email, role },\n handleUpdateStatus,\n handleUpdateRole\n) => {\n const user = window.globalProps.user;\n return (\n <Dropdown\n icon={MenuHorizontal}\n buttonStyle=\"text\"\n buttonProps={DROPDOWN_BUTTON_PROPS}\n strategy=\"fixed\"\n disabled={\n !hasPermission(MANAGE_MEMBER_PERMISSIONS) || user?.email === email\n }\n >\n <li\n className=\"ntm-dropdown__item\"\n onClick={() => handleUpdateRole({ id, email, role })}\n >\n <Button\n className=\"ntm-dropdown__button\"\n label={i18n.t(\"common.edit\")}\n disabled={!active}\n style=\"text\"\n />\n </li>\n <li\n className=\"ntm-dropdown__item\"\n onClick={() => handleUpdateStatus({ id, name: displayName, active })}\n >\n <Button\n className=\"ntm-dropdown__button\"\n label={\n active ? i18n.t(\"common.deactivate\") : i18n.t(\"common.activate\")\n }\n style={active ? \"danger-text\" : \"text\"}\n />\n </li>\n </Dropdown>\n );\n};\n\nexport const getColumnData = ({\n memberFilter,\n handleUpdateStatus,\n handleUpdateRole,\n}) => {\n const diplayStatusTag = identical(memberFilter, MEMBER_FILTER.ALL.value);\n return [\n {\n title: i18n.t(\"common.name\"),\n key: \"name\",\n dataIndex: \"name\",\n render: (_, tableData) => renderNameColumn(tableData, diplayStatusTag),\n width: \"30%\",\n sorter: true,\n },\n {\n title: i18n.t(\"common.email\", SINGULAR),\n dataIndex: \"email\",\n key: \"email\",\n width: \"35%\",\n sorter: true,\n },\n {\n title: i18n.t(\"common.role\", SINGULAR),\n dataIndex: \"role\",\n key: \"organization_role\",\n width: \"25%\",\n sorter: true,\n },\n {\n key: \"icon_button\",\n render: (_, props) =>\n renderDropdownButton(props, handleUpdateStatus, handleUpdateRole),\n width: \"10%\",\n },\n ];\n};\n\nexport const renderHeaderTitle = (filterStatus, metaName) =>\n i18n.t(`common.${toLower(filterStatus)}_`, {\n what: i18n.t(metaName, PLURAL).toLocaleLowerCase(),\n });\n\nexport const renderUpdateAlertTitle = (member, metaName, config) => {\n if (config?.alert?.title) {\n return config.alert.title({ name: member?.name, active: member?.active });\n }\n\n return member?.active\n ? i18n.t(\"common.deactivate_\", {\n what: i18n.t(metaName, SINGULAR).toLocaleLowerCase(),\n })\n : i18n.t(\"common.activate_\", {\n what: i18n.t(metaName, SINGULAR).toLocaleLowerCase(),\n });\n};\n\nexport const renderUpdateAlertMessage = (member, metaName, config) => {\n if (config?.alert?.message) {\n return config.alert.message({ name: member?.name, active: member?.active });\n }\n\n return member?.active\n ? i18n.t(\"alerts.deactivating_\", {\n what: i18n.t(metaName, SINGULAR).toLocaleLowerCase(),\n person: member?.name,\n })\n : i18n.t(\"alerts.activating_\", {\n what: i18n.t(metaName, SINGULAR).toLocaleLowerCase(),\n person: member?.name,\n });\n};\n\nexport const getSearchParams = (page, filter) =>\n new URLSearchParams({ ...page, filter: filter.toLowerCase() }).toString();\n\nexport const handlePageChange = (setFilters, filter) => (page, results) => {\n const pageParams = { page, results };\n window.history.replaceState(\n {},\n \"\",\n `?${getSearchParams(pageParams, filter)}`\n );\n setFilters(mergeLeft(pageParams));\n};\n\nexport const renderPaginationProps = size => ({\n pageSize: parseInt(size, DEFAULT_RADIX),\n});\n\nexport const getPerCategoryCount = (perCategoryCount, category) =>\n isNil(perCategoryCount)\n ? MEMBER_FILTER[category].defaultCount\n : perCategoryCount[category?.toLowerCase()];\n","import { PLURAL } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport { prop } from \"ramda\";\nimport * as yup from \"yup\";\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n emails: yup\n .array()\n .min(1, i18n.t(\"validations.minOneEmail\"))\n .test(\"are-all-emails-valid\", i18n.t(\"validations.validEmail\"), emails =>\n emails.every(prop(\"valid\"))\n )\n .nullable(),\n role: yup.string().required(i18n.t(\"validations.roleRequired\")),\n});\n\nexport const FILTER_INVALID_EMAILS = {\n label: i18n.t(\"validations.filterInvalidEmails\"),\n};\n\nexport const COUNTER_PROPS = {\n label: i18n.t(\"common.email\", PLURAL),\n startsFrom: 4,\n};\n","import { pluck } from \"ramda\";\n\nexport const renderInitialValues = selectedMember => ({\n emails: selectedMember\n ? [\n {\n label: selectedMember.email,\n value: selectedMember.email,\n valid: true,\n },\n ]\n : [],\n role: selectedMember?.role || \"\",\n});\n\nexport const renderPayload = ({ role, emails }, selectedMember = null) =>\n selectedMember\n ? {\n active: true,\n organizationRole: role,\n }\n : {\n user: {\n emails: pluck(\"value\", emails),\n organizationRole: role,\n },\n };\n","import React from \"react\";\n\nimport { SINGULAR, PLURAL } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport { Formik, Form } from \"formik\";\nimport { useCreateMember, useUpdateMember } from \"hooks/teams/useTeamsApi\";\nimport { Modal, Button, Typography } from \"neetoui\";\nimport { Input, Select, EmailInput } from \"neetoui/formik\";\nimport { head } from \"ramda\";\n\nimport {\n COUNTER_PROPS,\n FILTER_INVALID_EMAILS,\n VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { renderInitialValues, renderPayload } from \"./helpers\";\n\nconst ManageMember = ({\n metaName,\n isOpen,\n onClose,\n roles = [],\n selectedMember,\n}) => {\n const { mutate: createMember, isLoading: isCreatingMember } = useCreateMember(\n {\n onSuccess: onClose,\n }\n );\n\n const { mutate: updateMember, isLoading: isUpdatingMember } = useUpdateMember(\n {\n onSuccess: onClose,\n }\n );\n\n const handleAddMember = values => {\n selectedMember\n ? updateMember({\n id: selectedMember.id,\n payload: renderPayload(values, selectedMember),\n })\n : createMember(renderPayload(values));\n };\n const isSubmitting = isCreatingMember || isUpdatingMember;\n\n return (\n <Modal isOpen={isOpen} onClose={onClose}>\n <Modal.Header>\n <Typography\n className=\"ntm-members-modal__header\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {selectedMember\n ? i18n.t(\"common.edit_\", {\n what: i18n.t(metaName, SINGULAR).toLocaleLowerCase(),\n })\n : i18n.t(\"common.add_\", {\n what: i18n.t(metaName, SINGULAR).toLocaleLowerCase(),\n })}\n </Typography>\n </Modal.Header>\n <Formik\n initialValues={renderInitialValues(selectedMember)}\n onSubmit={handleAddMember}\n validationSchema={VALIDATION_SCHEMA}\n validateOnChange={false}\n validateOnBlur={false}\n enableReinitialize\n >\n {({ values, setFieldValue, dirty }) => {\n const { emails, role } = values;\n const roleValue = role && { label: role, value: role };\n\n return (\n <Form>\n <Modal.Body>\n <div className=\"ntm-members-modal__body\">\n {selectedMember ? (\n <Input\n name=\"emails\"\n data-cy=\"add-member-email-text-field\"\n size=\"large\"\n label={i18n.t(\"common.email\", SINGULAR)}\n value={head(emails).value}\n disabled={selectedMember}\n />\n ) : (\n <EmailInput\n autoFocus\n name=\"emails\"\n data-cy=\"add-member-email-input\"\n counter={COUNTER_PROPS}\n filterInvalidEmails={FILTER_INVALID_EMAILS}\n disabled={selectedMember}\n label={`${i18n.t(\"common.email\", PLURAL)}*`}\n placeholder={i18n.t(\"placeholders.email\")}\n helpText={i18n.t(\"helpers.enterMultipleEmails\")}\n />\n )}\n <Select\n required\n name=\"role\"\n data-cy=\"add-member-role-select\"\n size=\"large\"\n label={i18n.t(\"common.role\", SINGULAR)}\n placeholder={i18n.t(\"placeholders.role\")}\n value={roleValue}\n autoFocus={!!selectedMember}\n onChange={({ value }) => setFieldValue(\"role\", value)}\n options={roles.map(role => ({\n label: role,\n value: role,\n }))}\n />\n </div>\n </Modal.Body>\n\n <Modal.Footer className=\"ntm-members-modal__footer\">\n <Button\n type=\"submit\"\n data-cy=\"add-member-submit-button\"\n size=\"large\"\n style=\"primary\"\n label={i18n.t(\"buttons.proceed\")}\n disabled={!dirty || isSubmitting}\n loading={isSubmitting}\n />\n\n <Button\n data-cy=\"add-member-cancel-button\"\n size=\"large\"\n style=\"text\"\n label={i18n.t(\"buttons.cancel\")}\n onClick={onClose}\n />\n </Modal.Footer>\n </Form>\n );\n }}\n </Formik>\n </Modal>\n );\n};\n\nexport default ManageMember;\n","import React from \"react\";\n\nimport { PLURAL } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport { MenuBar } from \"neetoui/layouts\";\nimport { keys, identical } from \"ramda\";\n\nimport { MEMBER_FILTER } from \"./constants\";\nimport { getPerCategoryCount } from \"./helpers\";\n\nconst Menu = ({\n isMenuOpen,\n metaName,\n filterCounts,\n memberFilter,\n handleMemberFilterChange,\n}) => {\n const memberFilterKeys = keys(MEMBER_FILTER);\n\n return (\n <MenuBar showMenu={isMenuOpen} title={i18n.t(metaName, PLURAL)}>\n {memberFilterKeys.map(filter => (\n <MenuBar.Block\n count={getPerCategoryCount(filterCounts, filter)}\n key={filter}\n label={MEMBER_FILTER[filter].label}\n active={\n memberFilterKeys.includes(memberFilter) &&\n identical(filter, memberFilter)\n }\n onClick={() => handleMemberFilterChange(filter)}\n />\n ))}\n </MenuBar>\n );\n};\n\nexport default Menu;\n","import React, { useState } from \"react\";\n\nimport { useDebounce } from \"@bigbinary/neeto-commons-frontend/react-utils\";\nimport { PLURAL } from \"common/constants\";\nimport i18n from \"common/i18n\";\nimport EmptyState from \"components/Common/EmptyState\";\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { useFetchRoles } from \"hooks/roles/useRolesApi\";\nimport { useFetchMembers, useUpdateMember } from \"hooks/teams/useTeamsApi\";\nimport { Alert, Table, PageLoader } from \"neetoui\";\nimport { Container, Header, SubHeader } from \"neetoui/layouts\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, assoc, pluck } from \"ramda\";\n\nimport {\n Header as HeaderActionBlock,\n SubHeader as SubHeaderActionBlock,\n} from \"./ActionBlock\";\nimport {\n DEFAULT_FILTER_VALUES,\n DEFAULT_IS_OPEN_VALUES,\n DEFAULT_PAGE_NUMBER,\n DEFAULT_RADIX,\n MEMBER_FILTER,\n} from \"./constants\";\nimport {\n getColumnData,\n handlePageChange,\n renderHeaderTitle,\n renderPaginationProps,\n renderUpdateAlertMessage,\n renderUpdateAlertTitle,\n} from \"./helpers\";\nimport ManageMember from \"./ManageMember\";\nimport MenuBar from \"./Menu\";\n\nconst TeamMembers = ({ metaName, config }) => {\n const [isOpen, setIsOpen] = useState(DEFAULT_IS_OPEN_VALUES);\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [selectedMember, setSelectedMember] = useState(null);\n const debouncedSearch = useDebounce(filters.search, 750);\n\n const { data: team, isLoading: isMembersLoading } = useFetchMembers({\n ...filters,\n search: debouncedSearch.trim(),\n category: filters.category.toLowerCase(),\n });\n const { data: roles, isLoading: isRolesLoading } = useFetchRoles({\n select: response => {\n const roles =\n response.organizationRoles || response.data.organizationRoles;\n return pluck(\"name\", roles).sort((a, b) => a.localeCompare(b));\n },\n });\n const { mutate: updateMember, isLoading: isUpdatingMember } = useUpdateMember(\n { onSuccess: () => handleAlertClose() }\n );\n\n const searchProps = {\n placeholder: i18n.t(\"common.search_\", {\n what: i18n.t(metaName, PLURAL).toLocaleLowerCase(),\n }),\n value: filters.search,\n onChange: ({ target: { value } }) =>\n setFilters(mergeLeft({ search: value, page: DEFAULT_PAGE_NUMBER })),\n };\n\n const handleUpdateMember = async () => {\n const { id, active } = selectedMember;\n const payload = { active: !active };\n updateMember({ id, payload });\n };\n\n const handleUpdateStatus = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"alert\", true));\n };\n\n const handleUpdateRole = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"manageMember\", true));\n };\n\n const handleAlertClose = () => {\n setIsOpen(assoc(\"alert\", false));\n setSelectedMember(null);\n };\n\n const handleModalClose = () => {\n setIsOpen(assoc(\"manageMember\", false));\n setSelectedMember(null);\n };\n\n const handleMemberFilterChange = filter => {\n setFilters(assoc(\"category\", filter));\n handlePageChange(setFilters, filter)(DEFAULT_PAGE_NUMBER, filters.results);\n };\n\n const handleTableChange = (pagination, filters, sorter) => {\n setFilters(\n mergeLeft({ sort_by: sorter.field, sort_direction: sorter.order })\n );\n };\n\n if (isRolesLoading) {\n return (\n <div className=\"ntm-members-page-loader\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <div className=\"ntm-members\">\n <div className=\"ntm-members-wrapper\">\n <MenuBar\n isMenuOpen={isOpen.menuBar}\n metaName={metaName}\n filterCounts={team?.perCategoryCount}\n memberFilter={filters.category}\n handleMemberFilterChange={handleMemberFilterChange}\n />\n <Container>\n <Header\n title={renderHeaderTitle(\n MEMBER_FILTER[filters.category].value,\n metaName\n )}\n menuBarToggle={() =>\n setIsOpen(state => ({ ...state, menuBar: !state.menuBar }))\n }\n searchProps={searchProps}\n actionBlock={\n <HeaderActionBlock\n metaName={metaName}\n onClick={() => setIsOpen(assoc(\"manageMember\", true))}\n />\n }\n />\n <SubHeader\n leftActionBlock={\n <SubHeaderActionBlock.Left\n metaName={metaName}\n count={team?.membersCount}\n />\n }\n rightActionBlock={\n <SubHeaderActionBlock.Right\n rolesButtonProps={config.rolesButtonProps}\n />\n }\n />\n {team?.membersCount !== 0 ? (\n <div className=\"ntm-members__table-wrapper\">\n <Table\n fixedHeight\n totalCount={team?.membersCount}\n allowRowClick={false}\n rowSelection={false}\n loading={isMembersLoading}\n defaultPageSize={parseInt(filters.results, DEFAULT_RADIX)}\n rowData={team?.members}\n columnData={getColumnData({\n memberFilter: filters.category,\n handleUpdateStatus,\n handleUpdateRole,\n })}\n onChange={(pagination, filters, sorter) =>\n handleTableChange(pagination, filters, sorter)\n }\n currentPageNumber={parseInt(filters.page, DEFAULT_RADIX)}\n paginationProps={renderPaginationProps(filters.results)}\n handlePageChange={handlePageChange(\n setFilters,\n filters.category\n )}\n />\n </div>\n ) : (\n <EmptyState\n title={i18n.t(\"common.notFound_\", {\n what: i18n.t(metaName, PLURAL).toLocaleLowerCase(),\n })}\n actionBlock={\n <HeaderActionBlock\n metaName={metaName}\n onClick={() => setIsOpen(assoc(\"manageMember\", true))}\n />\n }\n />\n )}\n </Container>\n\n <ManageMember\n metaName={metaName}\n isOpen={isOpen.manageMember}\n onClose={handleModalClose}\n roles={roles}\n selectedMember={selectedMember}\n />\n <Alert\n isOpen={isOpen.alert}\n title={renderUpdateAlertTitle(selectedMember, metaName, config)}\n message={renderUpdateAlertMessage(selectedMember, metaName, config)}\n submitButtonLabel={i18n.t(\"buttons.proceed\")}\n cancelButtonLabel={i18n.t(\"buttons.cancel\")}\n onClose={handleAlertClose}\n onSubmit={handleUpdateMember}\n isSubmitting={isUpdatingMember}\n />\n </div>\n </div>\n );\n};\n\nTeamMembers.propTypes = {\n metaName: PropTypes.string,\n config: PropTypes.shape({\n rolesButtonProps: PropTypes.object,\n alert: PropTypes.shape({\n title: PropTypes.func,\n message: PropTypes.func,\n }),\n }),\n};\n\nTeamMembers.defaultProps = {\n metaName: \"metaNames.member\",\n config: {},\n};\n\nexport default withReactQuery(TeamMembers);\n"],"names":["ownKeys","_objectSpread","_defineProperty","ownKeys$1","_objectSpread$1","ownKeys$2","_objectSpread$2","ownKeys$3","_objectSpread$3","ownKeys$4","_objectSpread$4","ownKeys$5","_objectSpread$5","ownKeys$6","_objectSpread$6","noop","getDefaults","e","_classCallCheck","_createClass","_excluded","_excluded2","_typeof","_objectWithoutProperties","HTML","_slicedToArray","i18n","use","LanguageDetector","initReactI18next","init","resources","en","translation","fr","fallbackLng","detection","order","hasPermission","permissions","type","userPermissions","window","globalProps","Object","is","includes","Array","isArray","some","permission","isOverflown","clientWidth","clientHeight","scrollWidth","scrollHeight","getScrollBarWidth","innerElement","document","createElement","classList","add","outerElement","appendChild","body","w1","offsetWidth","style","overflow","w2","removeChild","SINGULAR","count","PLURAL","MANAGE_MEMBER_PERMISSIONS","logger","reducer","queryClient","QueryClient","queryCache","QueryCache","devtoolsModule","withReactQuery","Component","QueryWrapper","props","ReactQueryDevtools","ReactPropTypesSecret","require$$0","propTypesModule","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_arrayLikeToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","accepts","_excluded3","PropTypes","Uploader","sampleFileUrl","csvColumns","getRootProps","getInputProps","_extends","t","what","join","Download","event","stopPropagation","open","DATETIME_OPTIONS","year","month","day","hour","minute","COLUMN_DATA","title","dataIndex","key","render","filename","row","download_url","status","classnames","rows_count","width","align","uploaded_by","Date","created_at","toLocaleString","SAMPLE_ROW_DATA","Uploads","Table","Csv","label","setIsCSVInviteSelected","LeftArrow","InviteLink","useState","isInviteLinkActive","setIsInviteLinkActive","Normal","children","submitButtonProps","isCSVInviteEnabled","isInviteLinkEnabled","useFormikContext","isSubmitting","dirty","toLowerCase","File","content","placement","Invitations","isOpen","onClose","otherProps","isCSVInviteSelected","handleClose","emails","BASE_URL","fetch","axios","get","permissionsApi","DEFAULT_STALE_TIME","QUERY_KEYS","TEAMS","ROLES","PERMISSIONS","useFetchPermissions","options","useQuery","staleTime","select","response","data","enabled","create","payload","post","update","id","patch","destroy","delete","organizationRolesApi","useFetchRoles","organizationRoles","useCreateRole","onSuccess","useMutation","setQueriesData","cachedData","modifyPath","prepend","organizationRole","Toastr","success","ntmNotice","useUpdateRole","invalidateQueries","assocPath","findIndex","propEq","useDestroyRole","dissocPath","this","renderSearchProps","searchString","setSearchString","placeholder","toLocaleLowerCase","value","onChange","target","renderBreadcrumbs","breadcrumbs","membersPageUrl","text","link","AddRoleButton","onClick","useTranslation","Plus","Header","setIsNewRolePaneOpen","NeetoHeader","getPermissionGroups","groupedPermissions","groupBy","category","categories","keys","forEach","isPermissionsVisible","ADD_ROLE_FORM_INITIAL_VALUES","name","description","permissionIds","ADD_ROLE_FORM_VALIDATION_SCHEMA","object","string","trim","required","max","Permissions","setFieldValue","values","handleTogglePermission","permissionId","nextPermissionIds","filter","useMemo","prop","map","pid","New","createRole","mutate","isLoading","handleFormSubmit","formValues","modifiedFormValues","EmptyStateSVG","EmptyState","className","actionBlock","DEFAULT_MANAGE_ROLE_VALUES","isDelete","isEdit","selectedRole","Row","roles","allPermissionsOfCategory","updateRole","allPermissionIdsOfCategory","handleSubmit","role","checked","length","modifiedRole","modify","isCheckboxChecked","every","index","identical","TableHeader","setManageRole","setIsScrollPresent","scrollSyncElement","useRef","getOverflowStatus","useCallback","current","headerElement","node","isScrollBarPresent","useEffect","ScrollSyncPane","hasSystemRole","kind","MenuHorizontal","Delete","deleteRole","isDeleting","handleDelete","newRoleId","find","Edit","initialValues","Columns","filteredRoles","filteredGroupPermissions","manageRole","permissionIndex","renderDescription","getSearchWrapperStyle","scrollBarWidth","documentElement","setProperty","marginBottom","ToggleDropdown","isVisible","Sidebar","searchTerm","setSearchTerm","toggleDropdown","isScrollPresent","searchWrapperStyle","Input","permissionGroups","setFilteredGroupPermissions","visible","fromPairs","toPairs","isEmpty","Roles","config","setFilteredRoles","isNewRolePaneOpen","isRolesLoading","isPermissionsLoading","ScrollSync","header","defaultProps","params","put","teamsApi","useFetchMembers","useCreateMember","useUpdateMember","metaName","Left","Right","rolesButtonProps","hasRequiredPermissions","SubHeader","URL_PARAMS","URLSearchParams","location","search","MEMBER_FILTER","ACTIVE","defaultCount","DEACTIVATED","ALL","DEFAULT_RADIX","DEFAULT_MEMBER_FILTER","DEFAULT_PAGE_NUMBER","DEFAULT_PAGE_SIZE","DROPDOWN_BUTTON_PROPS","size","DEFAULT_IS_OPEN_VALUES","menuBar","manageMember","alert","DEFAULT_FILTER_VALUES","page","clamp","Infinity","parseInt","results","toUpperCase","sort_by","sort_direction","renderNameColumn","diplayStatusTag","displayName","imageUrl","profileImageUrl","active","renderDropdownButton","handleUpdateStatus","handleUpdateRole","email","user","getColumnData","memberFilter","_","tableData","sorter","renderHeaderTitle","filterStatus","toLower","renderUpdateAlertTitle","member","renderUpdateAlertMessage","message","person","getSearchParams","toString","handlePageChange","setFilters","pageParams","history","replaceState","mergeLeft","renderPaginationProps","pageSize","getPerCategoryCount","perCategoryCount","isNil","VALIDATION_SCHEMA","yup","shape","array","min","test","nullable","FILTER_INVALID_EMAILS","COUNTER_PROPS","startsFrom","renderInitialValues","selectedMember","valid","renderPayload","pluck","ManageMember","createMember","isCreatingMember","updateMember","isUpdatingMember","handleAddMember","roleValue","head","Menu","isMenuOpen","filterCounts","handleMemberFilterChange","memberFilterKeys","TeamMembers","setIsOpen","filters","setSelectedMember","debouncedSearch","useDebounce","team","isMembersLoading","sort","a","b","localeCompare","handleAlertClose","searchProps","handleUpdateMember","assoc","handleModalClose","handleTableChange","pagination","field","MenuBar","state","HeaderActionBlock","SubHeaderActionBlock","membersCount","members"],"mappings":"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A,EAAE,OAAO,EAAEA,iBAAS,CAAC,MAAM;AAC3B;AACA;AACA;AACA;AACA;AACA,EAAE,QAAQ,EAAEA,iBAAS,CAAC,MAAM;AAC5B;AACA;AACA;AACA;AACA,EAAE,QAAQ,EAAEA,iBAAS,CAAC,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,iBAAiB,EAAEA,iBAAS,CAAC,IAAI;AACnC;AACA;AACA;AACA;AACA,EAAE,kBAAkB,EAAEA,iBAAS,CAAC,IAAI;AACpC;AACA;AACA;AACA;AACA,EAAE,gBAAgB,EAAEA,iBAAS,CAAC,IAAI;AAClC;AACA;AACA;AACA;AACA;AACA,EAAE,cAAc,EAAEA,iBAAS,CAAC,IAAI;AAChC;AACA;AACA;AACA;AACA,EAAE,SAAS,EAAEA,iBAAS,CAAC,IAAI;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,WAAW,EAAEA,iBAAS,CAAC,IAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,WAAW,EAAEA,iBAAS,CAAC,IAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,UAAU,EAAEA,iBAAS,CAAC,IAAI;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,EAAEA,iBAAS,CAAC,IAAI;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,cAAc,EAAEA,iBAAS,CAAC,IAAI;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,cAAc,EAAEA,iBAAS,CAAC,IAAI;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,OAAO,EAAEA,iBAAS,CAAC,IAAI;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,SAAS,EAAEA,iBAAS,CAAC,IAAI;AAC3B,CAAC,CAAC;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,YAAY,GAAG;AACnB,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,kBAAkB,EAAE,KAAK;AAC3B,EAAE,YAAY,EAAE,KAAK;AACrB,EAAE,YAAY,EAAE,KAAK;AACrB,EAAE,YAAY,EAAE,KAAK;AACrB,EAAE,aAAa,EAAE,EAAE;AACnB,EAAE,cAAc,EAAE,EAAE;AACpB,CAAC,CAAC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAAS,WAAW,GAAG;AAC9B,EAAE,IAAI,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AACrF;AACA,EAAE,IAAI,mBAAmB,GAAGpG,eAAa,CAACA,eAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC;AACjF,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM;AACz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"}