@bigbinary/neeto-payments-frontend 1.0.32 → 1.0.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/i18next/dist/esm/i18next.js","../node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/react-i18next/dist/es/utils.js","../node_modules/react-i18next/dist/es/unescape.js","../node_modules/react-i18next/dist/es/defaults.js","../node_modules/react-i18next/dist/es/i18nInstance.js","../node_modules/react-i18next/dist/es/initReactI18next.js","../node_modules/react-i18next/dist/es/context.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/react-i18next/dist/es/useTranslation.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../src/common/i18n.js","../src/common/queryConstants.js","../src/apis/queryClient.js","../src/components/Common/withReactQuery.jsx","../src/hooks/useURLSearchParams.js","../src/constants/index.js","../src/utils/dashboard.js","../src/components/Dashboard/constants/index.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../src/utils/index.js","../src/components/Dashboard/utils/renderFunctions.jsx","../src/utils/renderFunctions.jsx","../src/components/Dashboard/constants/columns.js","../src/components/Dashboard/utils/index.js","../src/components/Dashboard/utils/columns.js","../src/apis/stripe/holdables/accounts.js","../src/apis/stripe/holdables/transactions.js","../src/apis/stripe/holdables/refunds.js","../src/apis/stripePlatform/accounts.js","../src/apis/stripePlatform/splits.js","../src/apis/stripePlatform/transactions.js","../src/components/Dashboard/ExpandedRow/constants.js","../src/components/Dashboard/ExpandedRow/SubTable.jsx","../src/components/Dashboard/ExpandedRow/index.jsx","../src/components/Dashboard/hooks/useFetchData.js","../src/hooks/reactQuery/stripe/useConnectApi.js","../src/hooks/reactQuery/stripe/usePlatformApi.js","../src/components/Dashboard/RowExpander.jsx","../src/components/Dashboard/TransactionPane.jsx","../src/components/Dashboard/List.jsx","../src/components/Dashboard/index.jsx","../src/components/Dashboard/hooks/useFiltersAndPagination.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/regenerator/index.js","../src/hooks/useSquarePayment.js","../src/components/SquareCard/constants.js","../src/components/Common/FilterWrapper.jsx","../src/components/SquareDashboard/constants/index.js","../src/components/SquareDashboard/utils/renderFunctions.jsx","../src/components/SquareDashboard/constants/columns.js","../src/components/SquareDashboard/utils/index.js","../src/hooks/useFiltersAndPagination.js","../src/apis/square/accounts.js","../src/apis/square/payments.js","../src/apis/square/refunds.js","../src/components/SquareDashboard/hooks/useSquareFetchData.js","../src/hooks/reactQuery/square/useSquareApi.js","../src/components/SquareDashboard/List.jsx","../src/components/SquareDashboard/index.jsx","../node_modules/@square/web-sdk/dist/index.js","../node_modules/@stripe/stripe-js/dist/stripe.esm.js","../src/components/SquareCard/index.jsx","../src/hooks/useSquareCard.js","../src/hooks/useStripePromise.js"],"sourcesContent":["export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Logger);\n this.init(concreteLogger, options);\n }\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread$6(_objectSpread$6({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }, {\n key: \"clone\",\n value: function clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n }]);\n return Logger;\n}();\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n this.observers = {};\n }\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n return matched;\n}\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n current = current[paths[i]];\n }\n return current;\n}\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n var _super = _createSuper$3(ResourceStore);\n function ResourceStore(data) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n _classCallCheck(this, ResourceStore);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n return _this;\n }\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = 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 if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$5(_objectSpread$5({}, pack), resources);\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$5(_objectSpread$5({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n var _super = _createSuper$2(Translator);\n function Translator(services) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Translator);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n if (key === undefined || key === null) {\n return false;\n }\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n if (returnDetails) {\n return {\n res: \"\".concat(namespace).concat(nsSeparator).concat(key),\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n if (returnDetails) {\n return {\n res: key,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return key;\n }\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$4(_objectSpread$4({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n return r;\n }\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$4(_objectSpread$4({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$4(_objectSpread$4({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$4(_objectSpread$4({}, options), {\n interpolation: _objectSpread$4(_objectSpread$4({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n return null;\n }\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$4({\n i18nResolved: resolved\n }, options) : options, this);\n }\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n var extracted = _this4.extractFromKey(k, options);\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n var possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n }]);\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n return p.join('-');\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n var cleanedLng = _this.formatLanguageCode(code);\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n var lngOnly = _this.getLanguagePartFromCode(code);\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, PluralResolver);\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n this.rules = createRules();\n }\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (!rule) {\n return [];\n }\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n return this.getSuffixRetroCompatible(rule, count);\n }\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Interpolator);\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n this.init(options);\n }\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = 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 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 this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && Object.prototype.hasOwnProperty.call(options, matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n replaces++;\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n var clonedOptions;\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n var matchedSingleQuotes = optionsString.match(/'/g);\n var matchedDoubleQuotes = optionsString.match(/\"/g);\n if (matchedSingleQuotes && matchedSingleQuotes.length % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n delete clonedOptions.defaultValue;\n return key;\n }\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n clonedOptions = _objectSpread$3({}, options);\n clonedOptions = clonedOptions.replace && typeof clonedOptions.replace !== 'string' ? clonedOptions.replace : clonedOptions;\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n var doReduce = false;\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n }]);\n return Interpolator;\n}();\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\nfunction createCachedFormatter(fn) {\n var cache = {};\n return function invokeFormatter(val, lng, options) {\n var key = lng + JSON.stringify(options);\n var formatter = cache[key];\n if (!formatter) {\n formatter = fn(lng, options);\n cache[key] = formatter;\n }\n return formatter(val);\n };\n}\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Formatter);\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n currency: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2(_objectSpread$2({}, opt), {}, {\n style: 'currency'\n }));\n return function (val) {\n return formatter.format(val);\n };\n }),\n datetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.DateTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n relativetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.RelativeTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val, opt.range || 'day');\n };\n }),\n list: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.ListFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n })\n };\n this.init(options);\n }\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"addCached\",\n value: function addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng) {\n var _this = this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var formats = _format.split(this.formatSeparator);\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n if (_this.formats[formatName]) {\n var formatted = mem;\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$2(_objectSpread$2(_objectSpread$2({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n return mem;\n }, value);\n return result;\n }\n }]);\n return Formatter;\n}();\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n var _super = _createSuper$1(Connector);\n function Connector(backend, store, services) {\n var _this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n _classCallCheck(this, Connector);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n _this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n _this.state = {};\n _this.queue = [];\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n if (loadedKeys.length) {\n loadedKeys.forEach(function (n) {\n if (loaded[l][n] === undefined) loaded[l][n] = true;\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n this.readingCalls++;\n var resolver = function resolver(err, data) {\n _this3.readingCalls--;\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n if (err && data && tried < _this3.maxRetries) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n };\n var fc = this.backend[fcName].bind(this.backend);\n if (fc.length === 2) {\n try {\n var r = fc(lng, ns);\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return resolver(null, data);\n })[\"catch\"](resolver);\n } else {\n resolver(null, r);\n }\n } catch (err) {\n resolver(err);\n }\n return;\n }\n return fc(lng, ns, resolver);\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n var clb = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : function () {};\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend && this.backend.create) {\n var opts = _objectSpread$1(_objectSpread$1({}, options), {}, {\n isUpdate: isUpdate\n });\n var fc = this.backend.create.bind(this.backend);\n if (fc.length < 6) {\n try {\n var r;\n if (fc.length === 5) {\n r = fc(languages, namespace, key, fallbackValue, opts);\n } else {\n r = fc(languages, namespace, key, fallbackValue);\n }\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return clb(null, data);\n })[\"catch\"](clb);\n } else {\n clb(null, r);\n }\n } catch (err) {\n clb(err);\n }\n } else {\n fc(languages, namespace, key, fallbackValue, clb, opts);\n }\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n return options;\n}\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction noop() {}\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n var _super = _createSuper(I18n);\n function I18n() {\n var _this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n _classCallCheck(this, I18n);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!options.defaultNS && options.defaultNS !== false && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n var defOpts = get();\n this.options = _objectSpread(_objectSpread(_objectSpread({}, defOpts), this.options), transformOptions(options));\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread(_objectSpread({}, defOpts.interpolation), this.options.interpolation);\n }\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n var formatter;\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n if (s.languageDetector.init) s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n return _this2;\n };\n });\n var deferred = defer();\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n var append = function append(lng) {\n if (!lng) return;\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n _this4.setResolvedLanguage(l);\n };\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n _this4.translator.changeLanguage(l);\n _this4.isLanguageChangingTo = undefined;\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector && _this4.services.languageDetector.cacheUserLanguage) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n if (this.services.languageDetector.detect.length === 0) {\n this.services.languageDetector.detect().then(setLng);\n } else {\n this.services.languageDetector.detect(setLng);\n }\n } else {\n setLng(lng);\n }\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n var fixedT = function fixedT(key, opts) {\n var options;\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey;\n if (options.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(function (k) {\n return \"\".concat(options.keyPrefix).concat(keySeparator).concat(k);\n });\n } else {\n resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n }\n return _this5.t(resultKey, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n var lng = this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n var deferred = defer();\n if (!this.options.ns) {\n if (callback) callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n var languageUtils = this.services && this.services.languageUtils || new LanguageUtil(get());\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var mergedOptions = _objectSpread(_objectSpread(_objectSpread({}, this.options), options), {\n isClone: true\n });\n var clone = new I18n(mergedOptions);\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n return I18n;\n}(EventEmitter);\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar dir = instance.dir;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport { changeLanguage, createInstance, instance as default, dir, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","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}","var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nvar htmlEntities = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"',\n ' ': ' ',\n ' ': ' ',\n '©': '©',\n '©': '©',\n '®': '®',\n '®': '®',\n '…': '…',\n '…': '…',\n '/': '/',\n '/': '/'\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 _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 { unescape } from './unescape.js';\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};\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}","var i18nInstance;\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}","import { setDefaults } from './defaults.js';\nimport { setI18n } from './i18nInstance.js';\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\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 { getDefaults, setDefaults } from './defaults.js';\nimport { getI18n, setI18n } from './i18nInstance.js';\nimport { initReactI18next } from './initReactI18next.js';\nexport { getDefaults, setDefaults, getI18n, setI18n, initReactI18next };\nexport var I18nContext = createContext();\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 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}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\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.js';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils.js';\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, optsOrDefaultValue) {\n if (typeof optsOrDefaultValue === 'string') return optsOrDefaultValue;\n if (optsOrDefaultValue && _typeof(optsOrDefaultValue) === 'object' && typeof optsOrDefaultValue.defaultValue === 'string') return optsOrDefaultValue.defaultValue;\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, keyPrefix]);\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}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import i18n from \"i18next\";\nimport { initReactI18next } from \"react-i18next\";\n\nimport en from \"../translations/en.json\";\n\ni18n.use(initReactI18next).init({\n resources: { en: { translation: en } },\n lng: \"en\",\n fallbackLng: \"en\",\n interpolation: {\n escapeValue: false,\n skipOnVariables: false,\n },\n});\n\nexport default i18n;\n","export const DEFAULT_STALE_TIME = 300_000; // 5 minutes\n\nexport const QUERY_KEYS = {\n STRIPE_ACCOUNT_DETAILS: \"stripe-account-details\",\n STRIPE_PLATFORM_ACCOUNT_DETAILS: \"stripe-platform-account-details\",\n TRANSACTIONS_LIST: \"transactions-list\",\n PLATFORM_TRANSACTIONS_LIST: \"platform-transactions-list\",\n PAYMENTS_FILTER_OPTIONS: \"payments-filter-options\",\n REFUNDS_LIST: \"refunds-list\",\n SPLITS_LIST: \"platform-splits-list\",\n CONNECTED_ACCOUNT: \"connected-account\",\n STRIPE_PLATFORM_TRANSACTION: \"stripe-platform-transaction\",\n STRIPE_REFUNDS_LIST: \"stripe-refunds-list\",\n SQUARE_ACCOUNT_DETAILS: \"square-account-details\",\n SQUARE_PAYMENTS_LIST: \"payments-list\",\n SQUARE_REFUNDS_LIST: \"refunds-list\",\n};\n","import { Toastr } from \"neetoui\";\nimport { QueryCache, QueryClient } from \"react-query\";\n\nimport { DEFAULT_STALE_TIME } from \"common/queryConstants\";\n\nconst queryClient = new QueryClient({\n queryCache: new QueryCache(),\n defaultOptions: {\n queries: {\n defaultStaleTime: DEFAULT_STALE_TIME,\n keepPreviousData: true,\n onError: error => Toastr.error(error),\n },\n },\n});\n\nexport default queryClient;\n","import React from \"react\";\n\nimport { QueryClientProvider } from \"react-query\";\nimport { ReactQueryDevtools } from \"react-query/devtools\";\n\nimport queryClient from \"apis/queryClient\";\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\n return QueryWrapper;\n};\n\nexport default withReactQuery;\n","import { useMemo } from \"react\";\n\nimport { useLocation } from \"react-router-dom\";\n\nconst useURLSearchParams = () => {\n const { search } = useLocation();\n\n return useMemo(() => new URLSearchParams(search), [search]);\n};\n\nexport default useURLSearchParams;\n","import { t } from \"i18next\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\n\nexport const BASE_URL = \"payments\";\n\nexport const PAYMENT_STATUS_TYPE = {\n successful: \"successful\",\n pending: \"pending\",\n declined: \"declined\",\n initiated: \"initiated\",\n cancelled: \"cancelled\",\n};\n\nexport const REFUND_STATUS_TYPE = {\n pending: \"pending\",\n successful: \"successful\",\n failed: \"failed\",\n requires_action: \"requires_action\",\n canceled: \"canceled\",\n initiated: \"initiated\",\n};\n\nexport const STRIPE_DASHBOARD_LINK = \"https://dashboard.stripe.com/\";\n\nexport const CURRENCY_OPTIONS = [\n { label: \"USD\", value: \"usd\" },\n { label: \"AED\", value: \"aed\" },\n { label: \"AFN\", value: \"afn\" },\n { label: \"ALL\", value: \"all\" },\n { label: \"AMD\", value: \"amd\" },\n { label: \"ANG\", value: \"ang\" },\n { label: \"AOA\", value: \"aoa\" },\n { label: \"ARS\", value: \"ars\" },\n { label: \"AUD\", value: \"aud\" },\n { label: \"AWG\", value: \"awg\" },\n { label: \"AZN\", value: \"azn\" },\n { label: \"BAM\", value: \"bam\" },\n { label: \"BBD\", value: \"bbd\" },\n { label: \"BDT\", value: \"bdt\" },\n { label: \"BGN\", value: \"bgn\" },\n { label: \"BIF\", value: \"bif\" },\n { label: \"BMD\", value: \"bmd\" },\n { label: \"BND\", value: \"bnd\" },\n { label: \"BOB\", value: \"bob\" },\n { label: \"BRL\", value: \"brl\" },\n { label: \"BSD\", value: \"bsd\" },\n { label: \"BWP\", value: \"bwp\" },\n { label: \"BYN\", value: \"byn\" },\n { label: \"BZD\", value: \"bzd\" },\n { label: \"CAD\", value: \"cad\" },\n { label: \"CDF\", value: \"cdf\" },\n { label: \"CHF\", value: \"chf\" },\n { label: \"CLP\", value: \"clp\" },\n { label: \"CNY\", value: \"cny\" },\n { label: \"COP\", value: \"cop\" },\n { label: \"CRC\", value: \"crc\" },\n { label: \"CVE\", value: \"cve\" },\n { label: \"CZK\", value: \"czk\" },\n { label: \"DJF\", value: \"djf\" },\n { label: \"DKK\", value: \"dkk\" },\n { label: \"DOP\", value: \"dop\" },\n { label: \"DZD\", value: \"dzd\" },\n { label: \"EGP\", value: \"egp\" },\n { label: \"ETB\", value: \"etb\" },\n { label: \"EUR\", value: \"eur\" },\n { label: \"FJD\", value: \"fjd\" },\n { label: \"FKP\", value: \"fkp\" },\n { label: \"GBP\", value: \"gbp\" },\n { label: \"GEL\", value: \"gel\" },\n { label: \"GIP\", value: \"gip\" },\n { label: \"GMD\", value: \"gmd\" },\n { label: \"GNF\", value: \"gnf\" },\n { label: \"GTQ\", value: \"gtq\" },\n { label: \"GYD\", value: \"gyd\" },\n { label: \"HKD\", value: \"hkd\" },\n { label: \"HNL\", value: \"hnl\" },\n { label: \"HTG\", value: \"htg\" },\n { label: \"HUF\", value: \"huf\" },\n { label: \"IDR\", value: \"idr\" },\n { label: \"ILS\", value: \"ils\" },\n { label: \"INR\", value: \"inr\" },\n { label: \"ISK\", value: \"isk\" },\n { label: \"JMD\", value: \"jmd\" },\n { label: \"JPY\", value: \"jpy\" },\n { label: \"KES\", value: \"kes\" },\n { label: \"KGS\", value: \"kgs\" },\n { label: \"KHR\", value: \"khr\" },\n { label: \"KMF\", value: \"kmf\" },\n { label: \"KRW\", value: \"krw\" },\n { label: \"KYD\", value: \"kyd\" },\n { label: \"KZT\", value: \"kzt\" },\n { label: \"LAK\", value: \"lak\" },\n { label: \"LBP\", value: \"lbp\" },\n { label: \"LKR\", value: \"lkr\" },\n { label: \"LRD\", value: \"lrd\" },\n { label: \"LSL\", value: \"lsl\" },\n { label: \"MAD\", value: \"mad\" },\n { label: \"MDL\", value: \"mdl\" },\n { label: \"MGA\", value: \"mga\" },\n { label: \"MKD\", value: \"mkd\" },\n { label: \"MMK\", value: \"mmk\" },\n { label: \"MNT\", value: \"mnt\" },\n { label: \"MOP\", value: \"mop\" },\n { label: \"MRO\", value: \"mro\" },\n { label: \"MUR\", value: \"mur\" },\n { label: \"MVR\", value: \"mvr\" },\n { label: \"MWK\", value: \"mwk\" },\n { label: \"MXN\", value: \"mxn\" },\n { label: \"MYR\", value: \"myr\" },\n { label: \"MZN\", value: \"mzn\" },\n { label: \"NAD\", value: \"nad\" },\n { label: \"NGN\", value: \"ngn\" },\n { label: \"NIO\", value: \"nio\" },\n { label: \"NOK\", value: \"nok\" },\n { label: \"NPR\", value: \"npr\" },\n { label: \"NZD\", value: \"nzd\" },\n { label: \"PAB\", value: \"pab\" },\n { label: \"PEN\", value: \"pen\" },\n { label: \"PGK\", value: \"pgk\" },\n { label: \"PHP\", value: \"php\" },\n { label: \"PKR\", value: \"pkr\" },\n { label: \"PLN\", value: \"pln\" },\n { label: \"PYG\", value: \"pyg\" },\n { label: \"QAR\", value: \"qar\" },\n { label: \"RON\", value: \"ron\" },\n { label: \"RSD\", value: \"rsd\" },\n { label: \"RUB\", value: \"rub\" },\n { label: \"RWF\", value: \"rwf\" },\n { label: \"SAR\", value: \"sar\" },\n { label: \"SBD\", value: \"sbd\" },\n { label: \"SCR\", value: \"scr\" },\n { label: \"SEK\", value: \"sek\" },\n { label: \"SGD\", value: \"sgd\" },\n { label: \"SHP\", value: \"shp\" },\n { label: \"SLE\", value: \"sle\" },\n { label: \"SOS\", value: \"sos\" },\n { label: \"SRD\", value: \"srd\" },\n { label: \"STD\", value: \"std\" },\n { label: \"SZL\", value: \"szl\" },\n { label: \"THB\", value: \"thb\" },\n { label: \"TJS\", value: \"tjs\" },\n { label: \"TOP\", value: \"top\" },\n { label: \"TRY\", value: \"try\" },\n { label: \"TTD\", value: \"ttd\" },\n { label: \"TWD\", value: \"twd\" },\n { label: \"TZS\", value: \"tzs\" },\n { label: \"UAH\", value: \"uah\" },\n { label: \"UGX\", value: \"ugx\" },\n { label: \"UYU\", value: \"uyu\" },\n { label: \"UZS\", value: \"uzs\" },\n { label: \"VND\", value: \"vnd\" },\n { label: \"VUV\", value: \"vuv\" },\n { label: \"WST\", value: \"wst\" },\n { label: \"XAF\", value: \"xaf\" },\n { label: \"XCD\", value: \"xcd\" },\n { label: \"XOF\", value: \"xof\" },\n { label: \"XPF\", value: \"xpf\" },\n { label: \"YER\", value: \"yer\" },\n { label: \"ZAR\", value: \"zar\" },\n { label: \"ZMW\", value: \"zmw\" },\n];\n\nexport const DEFAULT_PAGE_SIZE = 45;\n\nexport const DEFAULT_PAGE_VALUES = {\n index: DEFAULT_PAGE_INDEX,\n size: DEFAULT_PAGE_SIZE,\n};\n\nexport const FILTER_COLUMNS = [\n {\n key: \"amount\",\n label: t(\"common.amount\"),\n node: \"amount\",\n type: \"decimal\",\n },\n {\n key: \"status\",\n label: t(\"common.status\"),\n node: \"status\",\n type: \"multi_option\",\n },\n];\n\nexport const DEFAULT_TAG_STYLE = \"warning\";\n\nexport const TAG_STYLE = {\n successful: \"success\",\n declined: \"danger\",\n initiated: \"primary\",\n canceled: \"secondary\",\n cancelled: \"secondary\",\n failed: \"danger\",\n completed: \"success\",\n rejected: \"danger\",\n};\n","import { isEmpty } from \"ramda\";\n\nimport { DEFAULT_PAGE_VALUES } from \"src/constants\";\n\nexport const buildDefaultPageProperties = tabs =>\n tabs.reduce(\n (pageProperties, tab) => ({\n ...pageProperties,\n [tab]: DEFAULT_PAGE_VALUES,\n }),\n {}\n );\n\nexport const buildPayload = ({ tab, filters, pageProperties }) => ({\n tab,\n page: pageProperties[tab]?.index,\n limit: pageProperties[tab]?.size,\n filters: JSON.stringify(filters),\n});\n\nexport const buildRowData = ({ data, pageProperties = {}, tab = \"all\" }) =>\n data.map((element, index) => ({\n ...element,\n payable: element.payable,\n identifier: element,\n id: isEmpty(pageProperties)\n ? index + 1\n : pageProperties[tab]?.size * (pageProperties[tab]?.index - 1) +\n index +\n 1,\n }));\n","export const TAB = {\n all: \"all\",\n successful: \"successful\",\n pending: \"pending\",\n declined: \"declined\",\n cancelled: \"cancelled\",\n failed: \"failed\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const TAB_METADATA = {\n all: {},\n successful: {},\n pending: { isHidden: { refund: true } },\n declined: { isHidden: { split: true, refund: true } },\n failed: {\n isHidden: {\n platform: true,\n connected: true,\n transfer: true,\n split: true,\n },\n },\n cancelled: {\n isHidden: {\n platform: true,\n connected: true,\n transfer: true,\n refund: true,\n },\n },\n};\n\nexport const INITIAL_PANE_STATUS = {\n transactionId: \"\",\n isOpen: false,\n};\n","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import { STRIPE_DASHBOARD_LINK } from \"../constants\";\n\nexport const buildStripeTransactionLink = (identifier, isLive = true) =>\n `${STRIPE_DASHBOARD_LINK}${isLive ? \"\" : \"test/\"}payments/${identifier}`;\n\nexport const buildStripeSplitLink = (identifier, isLive = true) =>\n `${STRIPE_DASHBOARD_LINK}${\n isLive ? \"\" : \"test/\"\n }connect/transfers/${identifier}`;\n\nexport const buildStripeTransferLink = (\n identifier,\n accountId = \"\",\n isLive = true\n) =>\n `${STRIPE_DASHBOARD_LINK}${accountId}/${\n isLive ? \"\" : \"test/\"\n }payments/${identifier}`;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { Button, Tag, Tooltip, Typography } from \"neetoui\";\nimport { curry } from \"ramda\";\n\nimport {\n buildStripeSplitLink,\n buildStripeTransactionLink,\n buildStripeTransferLink,\n} from \"utils\";\n\nexport const renderIdentifier = ({\n identifier = \"\",\n live: isLive = false,\n} = {}) => (\n <Button\n href={buildStripeTransactionLink(identifier, isLive)}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n);\n\nexport const renderKind = curry((type, kind) => (\n <Tooltip content={t(`tooltipContent.${type}.${kind}`)} position=\"top\">\n <div className=\"w-fit\">\n <Tag label={t(`tagLabels.${type}.${kind}`)} style=\"secondary\" />\n </div>\n </Tooltip>\n));\n\nexport const renderSplitIdentifier = ({ identifier, live: isLive }) =>\n identifier ? (\n <Button\n href={buildStripeSplitLink(identifier, isLive)}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n ) : (\n <Tooltip content={t(\"tooltipContent.identifierUnavailable\")} position=\"top\">\n <div className=\"text-center\">\n <Typography style=\"body2\">{t(\"common.notAvailable\")}</Typography>\n </div>\n </Tooltip>\n );\n\nexport const renderTransferIdentifier = ({\n identifier = \"\",\n account = {},\n live: isLive = false,\n} = {}) => (\n <Button\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n href={\n identifier.startsWith(\"py\")\n ? buildStripeTransferLink(identifier, account?.identifier, isLive)\n : buildStripeTransactionLink(identifier, isLive)\n }\n />\n);\n\nexport const renderConnectedIdentifier = identifier => (\n <div className=\"text-center\">\n {identifier || (\n <Tooltip\n content={t(\"tooltipContent.connectedTransactionUnavailable\")}\n position=\"top\"\n >\n <Typography style=\"body2\">{t(\"common.notAvailable\")}</Typography>\n </Tooltip>\n )}\n </div>\n);\n\nexport const renderPlatformIdentifier = curry((setPaneStatus, data) => (\n <Button\n label={data?.identifier}\n size=\"small\"\n style=\"link\"\n onClick={() => setPaneStatus({ transactionId: data?.id, isOpen: true })}\n />\n));\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport DateFormat from \"neetomolecules/DateFormat\";\nimport { Tag, Tooltip } from \"neetoui\";\nimport { curry } from \"ramda\";\n\nimport { DEFAULT_TAG_STYLE, TAG_STYLE } from \"src/constants\";\n\nconst getTagStyle = status => TAG_STYLE[status] || DEFAULT_TAG_STYLE;\n\nexport const renderStatus = curry((type, status) => (\n <Tooltip content={t(`tooltipContent.${type}.${status}`)} position=\"top\">\n <div className=\"w-fit\">\n <Tag label={status} style={getTagStyle(status)} />\n </div>\n </Tooltip>\n));\n\nexport const renderDate = date => <DateFormat.DateTime {...{ date }} />;\n","import { t } from \"i18next\";\n\nimport { renderDate, renderStatus } from \"utils/renderFunctions\";\n\nimport {\n renderConnectedIdentifier,\n renderIdentifier,\n renderSplitIdentifier,\n renderTransferIdentifier,\n} from \"../utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n title: t(\"common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: \"72px\",\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: \"290px\",\n render: renderIdentifier,\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"splitIdentifier\",\n width: \"290px\",\n render: renderSplitIdentifier,\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"refundIdentifier\",\n width: \"290px\",\n render: ({ identifier = \"\" }) => identifier,\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"transferIdentifier\",\n width: \"290px\",\n render: renderTransferIdentifier,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: renderStatus(\"transaction\"),\n },\n {\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n key: \"amount\",\n width: \"150px\",\n },\n {\n title: t(\"common.paymentTime\"),\n dataIndex: \"paymentAt\",\n key: \"paymentTime\",\n width: \"220px\",\n render: renderDate,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"refundStatus\",\n render: renderStatus(\"refund\"),\n },\n {\n title: t(\"common.refundAmount\"),\n dataIndex: \"amount\",\n key: \"refundAmount\",\n width: \"150px\",\n },\n {\n title: t(\"common.refundTime\"),\n dataIndex: \"updatedAt\",\n key: \"refundTime\",\n width: \"220px\",\n render: renderDate,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"splitStatus\",\n render: renderStatus(\"split\"),\n },\n {\n title: t(\"common.transferTime\"),\n key: \"splitTime\",\n dataIndex: \"updatedAt\",\n width: \"220px\",\n render: renderDate,\n },\n {\n title: t(\"common.paymentIdentifier\"),\n key: \"refundPaymentIdentifier\",\n dataIndex: \"transaction\",\n width: \"290px\",\n render: renderTransferIdentifier,\n },\n {\n title: t(\"common.connectedTransaction\"),\n dataIndex: [\"connectedPayment\", \"identifier\"],\n key: \"connectedPayment\",\n width: \"290px\",\n render: renderConnectedIdentifier,\n },\n];\n\nexport const COLUMN_METADATA = {\n identifier: {\n isHidden: { split: true, transfer: true, refund: true },\n },\n paymentTime: { isHidden: { refund: true, split: true } },\n splitIdentifier: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n pending: true,\n },\n },\n transferIdentifier: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n refund: true,\n },\n },\n status: {\n isHidden: {\n refund: true,\n split: true,\n declined: true,\n pending: true,\n successful: true,\n },\n },\n refundStatus: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n refundAmount: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n refundTime: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n splitStatus: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n declined: true,\n pending: true,\n successful: true,\n cancelled: true,\n },\n },\n splitTime: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n },\n },\n paymentIntent: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n },\n },\n connectedPayment: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n pending: true,\n },\n },\n refundPaymentIdentifier: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n refundIdentifier: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n};\n","import { filterBy, toLabelAndValue } from \"neetocommons/pure\";\nimport { __, map, prop, assoc, includes, equals } from \"ramda\";\n\nimport {\n FILTER_COLUMNS,\n PAYMENT_STATUS_TYPE,\n REFUND_STATUS_TYPE,\n} from \"src/constants\";\n\nimport { generateSpecialColumns } from \"./columns\";\n\nimport { TAB, TAB_METADATA } from \"../constants\";\nimport { COLUMNS, COLUMN_METADATA } from \"../constants/columns\";\n\nconst mapToLabelAndValues = map(toLabelAndValue);\n\nconst isStatusTab = includes(__, [TAB.successful, TAB.pending, TAB.declined]);\n\nconst buildStatuses = kind =>\n Object.values(PAYMENT_STATUS_TYPE).filter(\n value => !TAB_METADATA[value]?.isHidden?.[kind]\n );\n\nexport const isPlatformKind = equals(\"platform\");\nexport const isConnectedKind = equals(\"connected\");\nexport const isSplitKind = equals(\"split\");\nexport const isTransferKind = equals(\"transfer\");\nexport const isRefundKind = equals(\"refund\");\n\nexport const buildPaymentColumns = ({\n tab,\n kind,\n payableEntityColumns = [],\n specialColumnArguments = {},\n}) =>\n COLUMNS.concat(generateSpecialColumns(specialColumnArguments))\n .filter(\n ({ key }) =>\n !(\n COLUMN_METADATA[key]?.isHidden?.[kind] ||\n COLUMN_METADATA[key]?.isHidden?.[tab]\n )\n )\n .concat(\n payableEntityColumns.filter(\n ({ isHidden }) => !(isHidden?.[tab] || isHidden?.[kind])\n )\n );\n\nexport const buildFilterColumns = (tab, kind, payableEntityColumns = []) => {\n const payableFilterColumns = map(\n prop(\"filterProps\"),\n filterBy(\n {\n isFilterable: true,\n isHidden: isHidden => !(isHidden?.[tab] || isHidden?.[kind]),\n },\n payableEntityColumns\n )\n );\n\n if (isStatusTab(tab)) {\n return [FILTER_COLUMNS[0], ...payableFilterColumns];\n }\n\n const statuses = isRefundKind(kind)\n ? Object.keys(REFUND_STATUS_TYPE)\n : buildStatuses(kind);\n const statusOptions = mapToLabelAndValues(statuses);\n\n return [\n FILTER_COLUMNS[0],\n assoc(\"values\", statusOptions, FILTER_COLUMNS[1]),\n ...payableFilterColumns,\n ];\n};\n\nexport const processResponse = (data, kind) => {\n if (isSplitKind(kind)) return data?.splits;\n\n if (isRefundKind(kind)) return data?.refunds;\n\n return data?.transactions;\n};\n","import { t } from \"i18next\";\n\nimport { renderPlatformIdentifier } from \"./renderFunctions\";\n\nexport const generateSpecialColumns = ({ setPaneStatus }) => [\n {\n title: t(\"common.platformTransaction\"),\n dataIndex: \"paymentIntent\",\n key: \"paymentIntent\",\n width: \"290px\",\n render: renderPlatformIdentifier(setPaneStatus),\n },\n];\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = holdableId =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdable/${holdableId}/account`);\n\nconst accountsApi = {\n show,\n};\n\nexport default accountsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultList = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdable/transactions`, {\n params: payload,\n });\n\nconst list = (holdableId, payload) =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdables/${holdableId}/transactions`, {\n params: payload,\n });\n\nconst transactionsApi = {\n defaultList,\n list,\n};\n\nexport default transactionsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdable/refunds`, {\n params: payload,\n });\n\nconst refundsApi = { list };\n\nexport default refundsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = () => axios.get(`${BASE_URL}/api/v1/stripe_platform/account`);\n\nconst accountsApi = { show };\n\nexport default accountsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe_platform/splits`, {\n params: payload,\n });\n\nconst splitsApi = { list };\n\nexport default splitsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe_platform/transactions`, {\n params: payload,\n });\n\nconst show = id =>\n axios.get(`${BASE_URL}/api/v1/stripe_platform/transactions/${id}`);\n\nconst transactionsApi = { list, show };\n\nexport default transactionsApi;\n","import { t } from \"i18next\";\n\nimport { renderStatus } from \"utils/renderFunctions\";\n\nimport { renderSplitIdentifier } from \"../utils/renderFunctions\";\n\nexport const SPLIT_COLUMNS = [\n {\n key: \"splitSubId\",\n title: t(\"common.id\"),\n dataIndex: \"id\",\n width: \"72px\",\n },\n {\n key: \"splitSubIdentifier\",\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n width: \"290px\",\n render: renderSplitIdentifier,\n },\n {\n key: \"splitSubAmount\",\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n width: \"150px\",\n },\n {\n key: \"splitSubStatus\",\n title: t(\"common.status\"),\n dataIndex: \"status\",\n width: \"130px\",\n render: renderStatus(\"split\"),\n },\n];\n\nexport const REFUND_COLUMNS = [\n {\n key: \"refundId\",\n title: t(\"common.id\"),\n dataIndex: \"id\",\n width: \"72px\",\n },\n {\n key: \"refundIdentifier\",\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n width: \"290px\",\n render: ({ identifier = \"\" }) => identifier,\n },\n {\n key: \"refundAmount\",\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n width: \"150px\",\n },\n {\n key: \"refundStatus\",\n title: t(\"common.status\"),\n dataIndex: \"status\",\n width: \"130px\",\n render: renderStatus(\"refund\"),\n },\n];\n","import React from \"react\";\n\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table } from \"neetoui\";\n\nimport { buildRowData } from \"utils/dashboard\";\n\nimport { SPLIT_COLUMNS, REFUND_COLUMNS } from \"./constants\";\n\nimport { isSplitKind } from \"../utils\";\n\nconst SubTable = ({ data = [], className = \"\", kind = \"split\" }) => (\n <div className={className || \"ml-12 max-w-2xl\"}>\n <TableWrapper hasPagination={false}>\n <Table\n fixedHeight\n columnData={isSplitKind(kind) ? SPLIT_COLUMNS : REFUND_COLUMNS}\n pagination={false}\n rowData={buildRowData({ data })}\n scroll={{ y: 300 }}\n />\n </TableWrapper>\n </div>\n);\n\nexport default SubTable;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport SubTable from \"./SubTable\";\n\nconst ExpandedRow = ({ splits = [], refunds = [] } = {}) => (\n <div className=\"my-2 space-y-2\">\n {!isEmpty(splits) && (\n <div className=\"space-y-4\">\n <Typography className=\"ml-12\" style=\"h3\">\n {t(\"common.splits\")}\n </Typography>\n <SubTable data={splits} />\n </div>\n )}\n {!isEmpty(refunds) && (\n <div className=\"space-y-4\">\n <Typography className=\"ml-12\" style=\"h3\">\n {t(\"title.refund\")}\n </Typography>\n <SubTable data={refunds} kind=\"refund\" />\n </div>\n )}\n </div>\n);\n\nexport default ExpandedRow;\n","import { useFetchStripeTransactions } from \"hooks/reactQuery/stripe/useConnectApi\";\nimport {\n useFetchStripePlatformSplits,\n useFetchStripePlatformTransactions,\n useFetchStripeRefunds,\n} from \"hooks/reactQuery/stripe/usePlatformApi\";\n\nimport {\n isConnectedKind,\n isPlatformKind,\n isRefundKind,\n isSplitKind,\n isTransferKind,\n processResponse,\n} from \"../utils\";\n\nexport const useFetchData = ({\n kind,\n holdableId,\n payload,\n isPlatformEnabled,\n}) => {\n const data = {};\n data.transfer = data.connected = useFetchStripeTransactions(\n holdableId,\n { ...payload, kind },\n { enabled: isTransferKind(kind) || isConnectedKind(kind) }\n );\n\n data.refund = useFetchStripeRefunds(payload, {\n enabled: isRefundKind(kind),\n });\n\n data.platform = useFetchStripePlatformTransactions(payload, {\n enabled: isPlatformKind(kind) && isPlatformEnabled,\n });\n\n data.split = useFetchStripePlatformSplits(payload, {\n enabled: isSplitKind(kind) && isPlatformEnabled,\n });\n\n return {\n data: processResponse(data[kind]?.data, kind),\n dataSize: data[kind]?.data?.counts?.[payload?.tab],\n isDataLoading: data[kind]?.isLoading,\n };\n};\n","import { isPresent } from \"neetocommons/pure\";\nimport { useQuery } from \"react-query\";\n\nimport accountsApi from \"apis/stripe/holdables/accounts\";\nimport transactionsApi from \"apis/stripe/holdables/transactions\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchConnectedStripeAccount = (holdableId, options = {}) =>\n useQuery(\n [QUERY_KEYS.CONNECTED_ACCOUNT, holdableId],\n () => accountsApi.show(holdableId),\n options\n );\n\nexport const useFetchStripeTransactions = (\n holdableId = \"\",\n payload = {},\n options = {}\n) =>\n useQuery(\n [QUERY_KEYS.TRANSACTIONS_LIST, payload],\n () => {\n if (isPresent(holdableId)) {\n return transactionsApi.list(holdableId, payload);\n }\n\n return transactionsApi.defaultList(payload);\n },\n options\n );\n","import { useQuery } from \"react-query\";\n\nimport refundsApi from \"apis/stripe/holdables/refunds\";\nimport accountsApi from \"apis/stripePlatform/accounts\";\nimport splitsApi from \"apis/stripePlatform/splits\";\nimport transactionsApi from \"apis/stripePlatform/transactions\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchStripePlatformAccount = options =>\n useQuery(\n QUERY_KEYS.STRIPE_PLATFORM_ACCOUNT_DETAILS,\n () => accountsApi.show(),\n options\n );\n\nexport const useFetchStripePlatformSplits = (payload, options = {}) =>\n useQuery(\n [QUERY_KEYS.SPLITS_LIST, payload],\n () => splitsApi.list(payload),\n options\n );\n\nexport const useFetchStripePlatformTransactions = (payload, options) =>\n useQuery(\n [QUERY_KEYS.TRANSACTIONS_LIST, payload],\n () => transactionsApi.list(payload),\n options\n );\n\nexport const useFetchStripePlatformTransaction = (id, options = {}) =>\n useQuery(\n [QUERY_KEYS.STRIPE_PLATFORM_TRANSACTION, id],\n () => transactionsApi.show(id),\n options\n );\n\nexport const useFetchStripeRefunds = (payload, options = {}) =>\n useQuery(\n [QUERY_KEYS.STRIPE_REFUNDS_LIST, payload],\n () => refundsApi.list(payload),\n options\n );\n","import React from \"react\";\n\nimport { Down, Right } from \"neetoicons\";\n\nconst RowExpander = ({ expanded, onExpand, record, expandable }) =>\n expandable &&\n (expanded ? (\n <Down onClick={e => onExpand(record, e)} />\n ) : (\n <Right onClick={e => onExpand(record, e)} />\n ));\n\nexport default RowExpander;\n","import React from \"react\";\n\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchStripePlatformTransaction } from \"hooks/reactQuery/stripe/usePlatformApi\";\nimport { renderDate, renderStatus } from \"utils/renderFunctions\";\n\nimport SubTable from \"./ExpandedRow/SubTable\";\nimport { renderIdentifier } from \"./utils/renderFunctions\";\n\nconst Details = ({ transactionId, ...paneProps }) => {\n const { t } = useTranslation();\n\n const {\n isLoading,\n data: {\n amount,\n netAmount,\n status,\n paymentAt,\n identifier,\n live,\n splits = [],\n } = {},\n } = useFetchStripePlatformTransaction(transactionId);\n\n return (\n <Pane {...paneProps} size=\"large\">\n <Pane.Header>\n <Typography style=\"h2\">Transaction Details</Typography>\n </Pane.Header>\n <Pane.Body>\n {isLoading ? (\n <PageLoader />\n ) : (\n <div className=\"w-full space-y-6 p-2\">\n <div className=\"w-full space-y-2\">\n <div className=\"grid grid-cols-2 gap-y-2\">\n <Typography style=\"body2\">\n {t(\"transactionPane.transactionId\")}\n </Typography>\n <Typography style=\"body2\">\n {renderIdentifier({ identifier, live })}\n </Typography>\n <Typography style=\"body2\">\n {t(\"transactionPane.amount\")}\n </Typography>\n <Typography style=\"body2\">{amount}</Typography>\n <Typography style=\"body2\">\n {t(\"transactionPane.netAmount\")}\n </Typography>\n <Typography style=\"body2\">{netAmount}</Typography>\n <Typography style=\"body2\">\n {t(\"transactionPane.status\")}\n </Typography>\n {renderStatus(\"transaction\", status)}\n <Typography style=\"body2\">\n {t(\"transactionPane.paidOn\")}\n </Typography>\n <Typography style=\"body2\">{renderDate(paymentAt)}</Typography>\n </div>\n </div>\n <Typography style=\"h3\">Splits</Typography>\n <SubTable className=\"ml-0 w-full\" data={splits} />\n </div>\n )}\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default Details;\n","import React, { useEffect, useState } from \"react\";\n\nimport { isPresent } from \"neetocommons/pure\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData } from \"neetoui\";\nimport { assoc, isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchConnectedStripeAccount } from \"hooks/reactQuery/stripe/useConnectApi\";\nimport { useFetchStripePlatformAccount } from \"hooks/reactQuery/stripe/usePlatformApi\";\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { INITIAL_PANE_STATUS, TAB, TABS, TAB_METADATA } from \"./constants\";\nimport ExpandedRow from \"./ExpandedRow\";\nimport { useFetchData } from \"./hooks/useFetchData\";\nimport RowExpander from \"./RowExpander\";\nimport TransactionPane from \"./TransactionPane\";\nimport { buildPaymentColumns, isPlatformKind, isRefundKind } from \"./utils\";\n\nconst List = ({\n isPlatformEnabled = false,\n kind,\n holdableId = null,\n filters,\n setIsFilterButtonVisible,\n pageProperties,\n payableEntityColumns,\n setPageProperties,\n tab,\n handleTabChange,\n}) => {\n const [paneStatus, setPaneStatus] = useState(INITIAL_PANE_STATUS);\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const { t } = useTranslation();\n const tabs = TABS.filter(tab => !TAB_METADATA[tab]?.isHidden?.[kind]);\n const columnData = buildPaymentColumns({\n tab,\n kind,\n payableEntityColumns,\n specialColumnArguments: { setPaneStatus },\n });\n\n const {\n isLoading: isStripePlatformAccountLoading,\n data: { platformAccount: stripePlatformAccount } = {},\n } = useFetchStripePlatformAccount({ enabled: isPlatformEnabled });\n\n const {\n isLoading: isStripeAccountLoading,\n data: { account: stripeConnectedAccount } = {},\n } = useFetchConnectedStripeAccount(holdableId);\n\n const { data, isDataLoading, dataSize } = useFetchData({\n kind,\n holdableId,\n payload: buildPayload({ tab, filters, pageProperties }),\n isPlatformEnabled,\n });\n\n const isStripeAccountConnected =\n stripeConnectedAccount?.isConnected || stripePlatformAccount?.isConnected;\n\n useEffect(\n () => setIsFilterButtonVisible(isPresent(data) || isPresent(filters)),\n [data]\n );\n\n const handleTablePaginaton = (index, size) => {\n urlSearchParams.set(\"page\", index);\n urlSearchParams.set(\"size\", size);\n history.push({ search: urlSearchParams.toString() });\n setPageProperties(assoc(tab, { index, size }));\n };\n\n useEffect(() => {\n const tab = urlSearchParams.get(\"tab\") || TAB.all;\n\n const validatedTab = tabs.includes(tab) ? tab : TAB.all;\n const pageIndex =\n Number(urlSearchParams.get(\"page\")) || pageProperties[tab]?.index;\n\n const pageSize =\n Number(urlSearchParams.get(\"size\")) || pageProperties[tab]?.size;\n\n handleTabChange(validatedTab);\n urlSearchParams.set(\"tab\", validatedTab);\n handleTablePaginaton(pageIndex, pageSize);\n }, [urlSearchParams]);\n\n if (\n isStripeAccountLoading ||\n isStripePlatformAccountLoading ||\n isDataLoading\n ) {\n return <PageLoader />;\n }\n\n if ((!isStripeAccountConnected && dataSize <= 0) || !isPresent(data)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n isRefundKind(kind)\n ? t(\"emptyState.refund\")\n : t(\"emptyState.payment\")\n }\n />\n </div>\n );\n }\n\n return (\n <>\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.size}>\n <Table\n fixedHeight\n allowRowClick={false}\n {...{ columnData }}\n currentPageNumber={pageProperties[tab]?.index}\n handlePageChange={handleTablePaginaton}\n rowData={buildRowData({ data, pageProperties, tab })}\n rowSelection={false}\n totalCount={dataSize}\n expandable={{\n expandedRowRender: ExpandedRow,\n showExpandColumn: isPlatformKind(kind),\n rowExpandable: record =>\n !(isEmpty(record.splits) && isEmpty(record.refunds)),\n columnWidth: \"64px\",\n expandIcon: RowExpander,\n }}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties[tab]?.size,\n total: dataSize,\n }}\n />\n </TableWrapper>\n <TransactionPane\n {...paneStatus}\n onClose={() => setPaneStatus(INITIAL_PANE_STATUS)}\n />\n </>\n );\n};\n\nexport default List;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport withReactQuery from \"components/Common/withReactQuery\";\n\nimport { useFiltersAndPagination } from \"./hooks/useFiltersAndPagination\";\nimport List from \"./List\";\n\nconst Dashboard = ({\n isPlatformEnabled = false,\n searchProps,\n headerProps = {},\n holdableId = null,\n payableEntityColumns = [],\n kind = \"connected\",\n}) => {\n const { t } = useTranslation();\n const {\n searchTerm,\n pageProperties,\n filterableColumns,\n isFilterButtonVisible,\n isFilterPaneOpen,\n filters,\n tabs,\n tab,\n setSearchTerm,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setFilters,\n setPageProperties,\n handleTabChange,\n } = useFiltersAndPagination({ payableEntityColumns, kind });\n\n const searchKeywordProps = {\n ...searchProps,\n value: searchTerm.trim(),\n setValue: setSearchTerm,\n };\n\n return (\n <>\n <Header\n title={t(`title.${kind}`)}\n {...headerProps}\n searchProps={{\n onChange: ({ target: { value } }) => setSearchTerm(value),\n value: searchTerm,\n placeholder: searchKeywordProps.placeholder,\n className: \"w-80\",\n }}\n />\n <SubHeader\n leftActionBlock={\n (isFilterButtonVisible || tab !== \"all\") && (\n <div className=\"flex w-full\">\n <Tab noUnderline size=\"small\">\n {tabs.map(item => (\n <Tab.Item\n active={tab === item}\n className=\"py-0\"\n key={item}\n onClick={() => handleTabChange(item)}\n >\n <Typography>{t(`common.${item}`)}</Typography>\n </Tab.Item>\n ))}\n </Tab>\n </div>\n )\n }\n rightActionBlock={\n <>\n <FiltersBar\n columns={filterableColumns}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={setFilters}\n />\n {isFilterButtonVisible && (\n <SubHeader.RightBlock\n filterProps={{\n columns: filterableColumns,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: setFilters,\n }}\n />\n )}\n </>\n }\n />\n <List\n {...{\n filters,\n handleTabChange,\n holdableId,\n isPlatformEnabled,\n kind,\n pageProperties,\n payableEntityColumns,\n setIsFilterButtonVisible,\n setPageProperties,\n tab,\n }}\n />\n </>\n );\n};\n\nexport default withTitle(withReactQuery(Dashboard), t(\"common.payments\"));\n","import { useState } from \"react\";\n\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { useHistory } from \"react-router-dom\";\n\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { TAB, TABS, TAB_METADATA } from \"../constants\";\nimport { buildFilterColumns } from \"../utils\";\n\nexport const useFiltersAndPagination = ({ payableEntityColumns, kind }) => {\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const tabs = TABS.filter(tab => !TAB_METADATA[tab]?.isHidden?.[kind]);\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(tabs)\n );\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [tab, setTab] = useState(TAB.all);\n const filterableColumns = buildFilterColumns(tab, kind, payableEntityColumns);\n const [filters, setFilters] = useState(\n buildFiltersFromURL(filterableColumns)\n );\n\n const handleTabChange = tab => {\n urlSearchParams.set(\"tab\", tab);\n urlSearchParams.set(\"page\", pageProperties[tab]?.index);\n urlSearchParams.set(\"size\", pageProperties[tab]?.size);\n history.push({ search: urlSearchParams.toString() });\n setTab(tab);\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchTerm,\n tabs,\n tab,\n filterableColumns,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n setSearchTerm,\n setTab,\n handleTabChange,\n };\n};\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import { useEffect, useState } from \"react\";\n\nconst useSquarePayment = () => {\n const [instance, setInstance] = useState();\n const applicationId = process.env.SQUARE_APPLICATION_ID;\n const locationId = process.env.SQUARE_CLIENT_LOCATION;\n\n useEffect(() => {\n const loadPayment = async () => {\n const square = () => import(\"@square/web-sdk\");\n const { payments } = await square();\n\n const paymentInstance = await payments(applicationId, locationId);\n\n if (!paymentInstance) {\n throw new Error(\"Square Web Payments SDK failed to load\");\n }\n\n setInstance(paymentInstance);\n };\n\n if (applicationId && locationId) loadPayment();\n }, [applicationId, locationId]);\n\n return instance;\n};\n\nexport default useSquarePayment;\n","export const SQUARE_EVENTS = [\n \"focusClassAdded\",\n \"focusClassRemoved\",\n \"errorClassAdded\",\n \"errorClassRemoved\",\n \"cardBrandChanged\",\n \"postalCodeChanged\",\n];\n\nexport const DEFAULT_CARD_CONTAINER_ID = \"square-card-container\";\n\nexport const DEFAULT_SQUARE_CARD_OPTIONS = {};\n","import React from \"react\";\n\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst FilterWrapper = ({\n searchProps,\n headerProps = {},\n children,\n title,\n searchTerm,\n filterableColumns,\n isFilterButtonVisible,\n isFilterPaneOpen,\n tabs,\n tab,\n setSearchTerm,\n setIsFilterPaneOpen,\n setFilters,\n handleTabChange,\n}) => {\n const { t } = useTranslation();\n\n const searchKeywordProps = {\n ...searchProps,\n value: searchTerm.trim(),\n setValue: setSearchTerm,\n };\n\n return (\n <>\n <Header\n {...{ ...headerProps, title }}\n searchProps={{\n onChange: ({ target: { value } }) => setSearchTerm(value),\n value: searchTerm,\n placeholder: searchKeywordProps.placeholder,\n className: \"w-80\",\n }}\n />\n <SubHeader\n leftActionBlock={\n <div className=\"flex w-full\">\n <Tab noUnderline size=\"small\">\n {tabs.map(item => (\n <Tab.Item\n active={tab === item}\n className=\"py-0\"\n key={item}\n onClick={() => handleTabChange(item)}\n >\n <Typography>{t(`common.${item}`)}</Typography>\n </Tab.Item>\n ))}\n </Tab>\n </div>\n }\n rightActionBlock={\n <>\n <FiltersBar\n columns={filterableColumns}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={setFilters}\n />\n {isFilterButtonVisible && (\n <SubHeader.RightBlock\n filterProps={{\n columns: filterableColumns,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: setFilters,\n }}\n />\n )}\n </>\n }\n />\n {children}\n </>\n );\n};\n\nexport default FilterWrapper;\n","export const TAB = {\n all: \"all\",\n completed: \"completed\",\n pending: \"pending\",\n rejected: \"rejected\",\n failed: \"failed\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const TAB_METADATA = {\n all: {},\n completed: {},\n pending: { isHidden: { squarePayment: true } },\n rejected: { isHidden: { squarePayment: true } },\n failed: { isHidden: { squareRefund: true } },\n};\n\nexport const STATUSES = [\n { title: \"completed\" },\n { title: \"pending\", isHidden: { squarePayment: true } },\n { title: \"rejected\", isHidden: { squarePayment: true } },\n { title: \"failed\", isHidden: { squareRefund: true } },\n];\n","import React from \"react\";\n\nimport { Button, Tooltip } from \"neetoui\";\n\nexport const renderIdentifier = ({ identifier = \"\", receiptUrl = \"\" } = {}) => (\n <Button\n href={receiptUrl}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n);\n\nexport const truncatedText = ({ identifier }) => (\n <Tooltip content={identifier} position=\"top\">\n <div className=\"w-64 truncate\">{identifier}</div>\n </Tooltip>\n);\n","import { t } from \"i18next\";\n\nimport { renderDate, renderStatus } from \"utils/renderFunctions\";\n\nimport { renderIdentifier, truncatedText } from \"../utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n title: t(\"common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: \"72px\",\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: \"290px\",\n render: renderIdentifier,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: renderStatus(\"payment\"),\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"refundIdentifier\",\n width: \"290px\",\n render: truncatedText,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"refundStatus\",\n render: renderStatus(\"refund\"),\n },\n {\n title: t(\"common.paymentIdentifier\"),\n dataIndex: \"payment\",\n key: \"paymentIdentifier\",\n width: \"290px\",\n render: renderIdentifier,\n },\n {\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n key: \"amount\",\n width: \"150px\",\n },\n {\n title: t(\"common.paymentTime\"),\n dataIndex: \"updatedAt\",\n key: \"paymentTime\",\n width: \"220px\",\n render: renderDate,\n },\n];\n\nexport const COLUMN_METADATA = {\n identifier: { isHidden: { squareRefund: true } },\n status: {\n isHidden: { squareRefund: true, completed: true, failed: true },\n },\n refundIdentifier: { isHidden: { squarePayment: true } },\n refundStatus: {\n isHidden: {\n squarePayment: true,\n completed: true,\n pending: true,\n rejected: true,\n },\n },\n paymentIdentifier: { isHidden: { squarePayment: true } },\n};\n","import { filterBy, toLabelAndValue } from \"neetocommons/pure\";\nimport { __, assoc, equals, includes, map, pluck, prop } from \"ramda\";\n\nimport { FILTER_COLUMNS } from \"src/constants\";\n\nimport { STATUSES, TAB } from \"../constants\";\nimport { COLUMNS, COLUMN_METADATA } from \"../constants/columns\";\n\nconst isStatusTab = includes(__, [TAB.successful, TAB.pending, TAB.declined]);\nconst mapToLabelAndValues = map(toLabelAndValue);\n\nconst buildStatuses = kind =>\n pluck(\n \"title\",\n STATUSES.filter(({ isHidden }) => !isHidden?.[kind])\n );\nexport const isRefundKind = equals(\"squareRefund\");\nexport const isPaymentKind = equals(\"squarePayment\");\n\nexport const buildFilterColumns = (tab, kind, payableEntityColumns = []) => {\n const payableFilterColumns = map(\n prop(\"filterProps\"),\n filterBy({ isFilterable: true }, payableEntityColumns)\n );\n\n if (isStatusTab(tab)) {\n return [FILTER_COLUMNS[0], ...payableFilterColumns];\n }\n\n return [\n FILTER_COLUMNS[0],\n assoc(\n \"values\",\n mapToLabelAndValues(buildStatuses(kind)),\n FILTER_COLUMNS[1]\n ),\n ...payableFilterColumns,\n ];\n};\n\nexport const buildPaymentColumns = ({ tab, kind, payableEntityColumns = [] }) =>\n COLUMNS.filter(\n ({ key }) =>\n !(\n COLUMN_METADATA[key]?.isHidden?.[kind] ||\n COLUMN_METADATA[key]?.isHidden?.[tab]\n )\n ).concat(\n payableEntityColumns.filter(\n ({ isHidden }) => !(isHidden?.[tab] || isHidden?.[kind])\n )\n );\n","import { useState } from \"react\";\n\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { useHistory } from \"react-router-dom\";\n\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { buildFilterColumns } from \"../components/SquareDashboard/utils\";\n\nexport const useFiltersAndPagination = ({\n payableEntityColumns,\n kind,\n initialTabs,\n tabMetaData,\n}) => {\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const tabs = initialTabs.filter(tab => !tabMetaData[tab]?.isHidden?.[kind]);\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(tabs)\n );\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [tab, setTab] = useState(\"all\");\n const filterableColumns = buildFilterColumns(tab, kind, payableEntityColumns);\n const [filters, setFilters] = useState(\n buildFiltersFromURL(filterableColumns)\n );\n\n const handleTabChange = tab => {\n urlSearchParams.set(\"tab\", tab);\n urlSearchParams.set(\"page\", pageProperties[tab]?.index);\n urlSearchParams.set(\"size\", pageProperties[tab]?.size);\n history.push({ search: urlSearchParams.toString() });\n setTab(tab);\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchTerm,\n tabs,\n tab,\n filterableColumns,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n setSearchTerm,\n setTab,\n handleTabChange,\n };\n};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultShow = () =>\n axios.get(`${BASE_URL}/api/v1/square/holdable/account`);\n\nconst show = holdableId =>\n axios.get(`${BASE_URL}/api/v1/square/holdables/${holdableId}/account`);\n\nconst accountsApi = { show, defaultShow };\n\nexport default accountsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultList = payload =>\n axios.get(`${BASE_URL}/api/v1/square/holdable/payments`, {\n params: payload,\n });\n\nconst list = (holdableId, payload) =>\n axios.get(`${BASE_URL}/api/v1/square/holdables/${holdableId}/payments`, {\n params: payload,\n });\n\nconst paymentsApi = { defaultList, list };\n\nexport default paymentsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultList = payload =>\n axios.get(`${BASE_URL}/api/v1/square/holdable/refunds`, {\n params: payload,\n });\n\nconst list = (holdableId, payload) =>\n axios.get(`${BASE_URL}/api/v1/square/holdables/${holdableId}/refunds`, {\n params: payload,\n });\n\nconst refundsapi = { defaultList, list };\n\nexport default refundsapi;\n","import {\n useFetchSquarePayments,\n useFetchSquareRefunds,\n} from \"hooks/reactQuery/square/useSquareApi\";\n\nimport { isPaymentKind, isRefundKind } from \"../utils\";\n\nexport const useFetchSquareData = ({ kind, holdableId, payload }) => {\n const data = {};\n data.squarePayment = useFetchSquarePayments(holdableId, payload, {\n enabled: isPaymentKind(kind),\n });\n\n data.squareRefund = useFetchSquareRefunds(holdableId, payload, {\n enabled: isRefundKind(kind),\n });\n\n return {\n data: isPaymentKind(kind)\n ? data[kind]?.data?.payments\n : data[kind]?.data?.refunds,\n dataSize: data[kind]?.data?.views?.[payload?.tab],\n isDataLoading: data[kind]?.isLoading,\n };\n};\n","import { isPresent } from \"neetocommons/pure\";\nimport { useQuery } from \"react-query\";\n\nimport accountsApi from \"apis/square/accounts\";\nimport paymentsApi from \"apis/square/payments\";\nimport refundsApi from \"apis/square/refunds\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchSquareAccount = (holdableId, options = {}) =>\n useQuery(\n [QUERY_KEYS.SQUARE_ACCOUNT_DETAILS, holdableId],\n () => {\n if (isPresent(holdableId)) return accountsApi.show(holdableId);\n\n return accountsApi.defaultShow();\n },\n options\n );\n\nexport const useFetchSquarePayments = (\n holdableId = \"\",\n payload = {},\n options = {}\n) =>\n useQuery(\n [QUERY_KEYS.SQUARE_PAYMENTS_LIST, payload],\n () => {\n if (isPresent(holdableId)) return paymentsApi.list(holdableId, payload);\n\n return paymentsApi.defaultList(payload);\n },\n options\n );\n\nexport const useFetchSquareRefunds = (\n holdableId = \"\",\n payload = {},\n options = {}\n) =>\n useQuery(\n [QUERY_KEYS.SQUARE_REFUNDS_LIST, payload],\n () => {\n if (isPresent(holdableId)) return refundsApi.list(holdableId, payload);\n\n return refundsApi.defaultList(payload);\n },\n options\n );\n","import React, { useEffect } from \"react\";\n\nimport { isPresent } from \"neetocommons/pure\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData } from \"neetoui\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchSquareAccount } from \"hooks/reactQuery/square/useSquareApi\";\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { TAB } from \"./constants\";\nimport { useFetchSquareData } from \"./hooks/useSquareFetchData\";\nimport { buildPaymentColumns, isRefundKind } from \"./utils\";\n\nconst List = ({\n kind,\n holdableId = null,\n filters,\n setIsFilterButtonVisible,\n pageProperties,\n payableEntityColumns,\n setPageProperties,\n tab,\n tabs,\n handleTabChange,\n}) => {\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const { t } = useTranslation();\n const columnData = buildPaymentColumns({\n tab,\n kind,\n payableEntityColumns,\n });\n\n const {\n isLoading: isSquareAccountLoading,\n data: { account: squareAccount } = {},\n } = useFetchSquareAccount(holdableId);\n\n const { data, isDataLoading, dataSize } = useFetchSquareData({\n kind,\n holdableId,\n payload: buildPayload({ tab, filters, pageProperties }),\n });\n\n useEffect(\n () => setIsFilterButtonVisible(isPresent(data) || isPresent(filters)),\n [data]\n );\n\n const handleTablePaginaton = (index, size) => {\n urlSearchParams.set(\"page\", index);\n urlSearchParams.set(\"size\", size);\n history.push({ search: urlSearchParams.toString() });\n setPageProperties(assoc(tab, { index, size }));\n };\n\n useEffect(() => {\n const tab = urlSearchParams.get(\"tab\") || TAB.all;\n\n const validatedTab = tabs.includes(tab) ? tab : TAB.all;\n const pageIndex =\n Number(urlSearchParams.get(\"page\")) || pageProperties[tab]?.index;\n\n const pageSize =\n Number(urlSearchParams.get(\"size\")) || pageProperties[tab]?.size;\n\n handleTabChange(validatedTab);\n urlSearchParams.set(\"tab\", validatedTab);\n handleTablePaginaton(pageIndex, pageSize);\n }, [urlSearchParams]);\n\n if (isSquareAccountLoading || isDataLoading) {\n return <PageLoader />;\n }\n\n if ((!squareAccount?.isConnected && dataSize <= 0) || !isPresent(data)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n isRefundKind(kind)\n ? t(\"emptyState.refund\")\n : t(\"emptyState.payment\")\n }\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.size}>\n <Table\n fixedHeight\n allowRowClick={false}\n {...{ columnData }}\n currentPageNumber={pageProperties[tab]?.index}\n handlePageChange={handleTablePaginaton}\n rowData={buildRowData({ data, pageProperties, tab })}\n rowSelection={false}\n totalCount={dataSize}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties[tab]?.size,\n total: dataSize,\n }}\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { withTitle } from \"neetocommons/react-utils\";\n\nimport FilterWrapper from \"components/Common/FilterWrapper\";\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { useFiltersAndPagination } from \"hooks/useFiltersAndPagination\";\n\nimport { TABS, TAB_METADATA } from \"./constants\";\nimport List from \"./List\";\nimport { isPaymentKind } from \"./utils\";\n\nconst SquareDashboard = ({\n searchProps,\n headerProps = {},\n holdableId = null,\n payableEntityColumns = [],\n kind = \"squarePayment\",\n}) => {\n const filterPaginationState = useFiltersAndPagination({\n payableEntityColumns,\n kind,\n initialTabs: TABS,\n tabMetaData: TAB_METADATA,\n });\n\n const {\n filters,\n setIsFilterButtonVisible,\n pageProperties,\n setPageProperties,\n tab,\n tabs,\n handleTabChange,\n } = filterPaginationState;\n\n return (\n <FilterWrapper\n title={\n isPaymentKind(kind) ? t(\"title.squarePayment\") : t(\"title.squareRefund\")\n }\n {...{ headerProps, searchProps, ...filterPaginationState }}\n >\n <List\n {...{\n filters,\n handleTabChange,\n holdableId,\n kind,\n pageProperties,\n payableEntityColumns,\n setIsFilterButtonVisible,\n setPageProperties,\n tab,\n tabs,\n }}\n />\n </FilterWrapper>\n );\n};\n\nexport default withTitle(\n withReactQuery(SquareDashboard),\n t(\"common.squarePayments\")\n);\n","var l=(e,r,t)=>new Promise((n,i)=>{var d=o=>{try{c(t.next(o))}catch(a){i(a)}},m=o=>{try{c(t.throw(o))}catch(a){i(a)}},c=o=>o.done?n(o.value):Promise.resolve(o.value).then(d,m);c((t=t.apply(e,r)).next())});function f(e){return document.querySelector(`script[src=\"${e}\"]`)}function S(e){let r=document.head||document.body;if(!r)throw new Error(\"Square.js requires a <body> or <head> element.\");let t=document.createElement(\"script\");return t.src=e,r.appendChild(t),t}var s=null;function p(e){return s!==null||(s=new Promise((r,t)=>{if(typeof window==\"undefined\"){r(null);return}if(window.Square){r(window.Square);return}try{let n=f(e);n||(n=S(e)),n.addEventListener(\"load\",()=>{window.Square?r(window.Square):t(new Error(\"Square.js failed to load properly.\"))}),n.addEventListener(\"error\",()=>{t(new Error(\"Error occurred while loading Square.js\"))})}catch(n){t(n)}})),s}var w=\"v1\",u=class extends Error{constructor(r=\"The Payment 'applicationId' option is not in the correct format.\"){super(r);this.name=\"InvalidApplicationIdError\",Object.setPrototypeOf(this,u.prototype)}};function q(e){let r=\"\";if(e.startsWith(\"sq0idp-\")&&(r=\"https://web.squarecdn.com/\"),e.startsWith(\"sandbox-sq0idb-\")&&(r=\"https://sandbox.web.squarecdn.com/\"),r.length===0)throw new u;return r+=`${w}/square.js`,r}function E(e,r,t){return l(this,null,function*(){let n=(t==null?void 0:t.scriptSrc)!==void 0?t.scriptSrc:q(e),i=yield p(n);return i===null?null:i.payments(e,r)})}export{E as payments};\n","var V3_URL = 'https://js.stripe.com/v3';\nvar V3_URL_REGEX = /^https:\\/\\/js\\.stripe\\.com\\/v3\\/?(\\?.*)?$/;\nvar EXISTING_SCRIPT_MESSAGE = 'loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used';\nvar findScript = function findScript() {\n var scripts = document.querySelectorAll(\"script[src^=\\\"\".concat(V3_URL, \"\\\"]\"));\n\n for (var i = 0; i < scripts.length; i++) {\n var script = scripts[i];\n\n if (!V3_URL_REGEX.test(script.src)) {\n continue;\n }\n\n return script;\n }\n\n return null;\n};\n\nvar injectScript = function injectScript(params) {\n var queryString = params && !params.advancedFraudSignals ? '?advancedFraudSignals=false' : '';\n var script = document.createElement('script');\n script.src = \"\".concat(V3_URL).concat(queryString);\n var headOrBody = document.head || document.body;\n\n if (!headOrBody) {\n throw new Error('Expected document.body not to be null. Stripe.js requires a <body> element.');\n }\n\n headOrBody.appendChild(script);\n return script;\n};\n\nvar registerWrapper = function registerWrapper(stripe, startTime) {\n if (!stripe || !stripe._registerWrapper) {\n return;\n }\n\n stripe._registerWrapper({\n name: 'stripe-js',\n version: \"1.52.1\",\n startTime: startTime\n });\n};\n\nvar stripePromise = null;\nvar loadScript = function loadScript(params) {\n // Ensure that we only attempt to load Stripe.js at most once\n if (stripePromise !== null) {\n return stripePromise;\n }\n\n stripePromise = new Promise(function (resolve, reject) {\n if (typeof window === 'undefined' || typeof document === 'undefined') {\n // Resolve to null when imported server side. This makes the module\n // safe to import in an isomorphic code base.\n resolve(null);\n return;\n }\n\n if (window.Stripe && params) {\n console.warn(EXISTING_SCRIPT_MESSAGE);\n }\n\n if (window.Stripe) {\n resolve(window.Stripe);\n return;\n }\n\n try {\n var script = findScript();\n\n if (script && params) {\n console.warn(EXISTING_SCRIPT_MESSAGE);\n } else if (!script) {\n script = injectScript(params);\n }\n\n script.addEventListener('load', function () {\n if (window.Stripe) {\n resolve(window.Stripe);\n } else {\n reject(new Error('Stripe.js not available'));\n }\n });\n script.addEventListener('error', function () {\n reject(new Error('Failed to load Stripe.js'));\n });\n } catch (error) {\n reject(error);\n return;\n }\n });\n return stripePromise;\n};\nvar initStripe = function initStripe(maybeStripe, args, startTime) {\n if (maybeStripe === null) {\n return null;\n }\n\n var stripe = maybeStripe.apply(undefined, args);\n registerWrapper(stripe, startTime);\n return stripe;\n}; // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\n// own script injection.\n\nvar stripePromise$1 = Promise.resolve().then(function () {\n return loadScript(null);\n});\nvar loadCalled = false;\nstripePromise$1[\"catch\"](function (err) {\n if (!loadCalled) {\n console.warn(err);\n }\n});\nvar loadStripe = function loadStripe() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n loadCalled = true;\n var startTime = Date.now();\n return stripePromise$1.then(function (maybeStripe) {\n return initStripe(maybeStripe, args, startTime);\n });\n};\n\nexport { loadStripe };\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocommons/pure\";\nimport { Spinner } from \"neetoui\";\n\nimport useSquarePayment from \"hooks/useSquarePayment\";\n\nimport {\n DEFAULT_CARD_CONTAINER_ID,\n DEFAULT_SQUARE_CARD_OPTIONS,\n SQUARE_EVENTS,\n} from \"./constants\";\n\nconst SquareCard = ({\n card,\n setCard,\n id = DEFAULT_CARD_CONTAINER_ID,\n onChange = noop,\n options = DEFAULT_SQUARE_CARD_OPTIONS,\n disabled = false,\n}) => {\n const payments = useSquarePayment();\n\n useEffect(() => {\n const fetchCard = async () => {\n const cardResponse = await payments?.card();\n await cardResponse?.attach(`#${id}`);\n setCard(cardResponse || null);\n };\n\n fetchCard();\n }, [payments, id]);\n\n useEffect(\n () =>\n SQUARE_EVENTS.forEach(event => card?.addEventListener(event, onChange)),\n [card, onChange]\n );\n\n useEffect(() => {\n card?.configure(options);\n }, [card, options]);\n\n return (\n <div\n id={id}\n className={classNames({\n \"pointer-events-none\": disabled,\n \"text-center\": !card,\n })}\n >\n {!card && <Spinner />}\n </div>\n );\n};\n\nexport default SquareCard;\n","import { useState } from \"react\";\n\nconst useSquareCard = () => {\n const [card, setCard] = useState(() => undefined);\n\n const tokenizeCard = async () => {\n if (!card) {\n logger.warn(\n \"Credit Card button was clicked, but no Credit Card instance was found.\"\n );\n\n return \"\";\n }\n\n try {\n const result = await card.tokenize();\n\n if (result?.errors) {\n const message = `Status: ${result.status} and Errors: ${JSON.stringify(\n result?.errors\n )}`;\n\n throw new Error(message);\n }\n\n return result?.token;\n } catch (error) {\n logger.error(error);\n\n return \"\";\n }\n };\n\n return { card, setCard, tokenizeCard };\n};\n\nexport default useSquareCard;\n","import { useMemo } from \"react\";\n\nimport { globalProps } from \"neetocommons/initializers\";\nimport { isNotPresent } from \"neetocommons/pure\";\n\nconst useStripePromise = stripeAccountIdentifier => {\n const stripePromise = useMemo(async () => {\n if (isNotPresent(stripeAccountIdentifier)) return null;\n\n const stripeJs = () => import(\"@stripe/stripe-js\");\n\n try {\n const { loadStripe } = await stripeJs();\n\n return await loadStripe(globalProps?.stripePublishableKey, {\n stripeAccount: stripeAccountIdentifier,\n });\n } catch (error) {\n logger.error(error);\n }\n\n return null;\n }, [stripeAccountIdentifier]);\n\n return stripePromise;\n};\n\nexport default useStripePromise;\n"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_toPropertyKey","arg","key","input","hint","prim","toPrimitive","undefined","res","call","String","Number","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","toPropertyKey","_createClass","protoProps","staticProps","_assertThisInitialized","self","ReferenceError","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_inherits","subClass","superClass","create","value","_possibleConstructorReturn","assertThisInitialized","_getPrototypeOf","getPrototypeOf","_defineProperty","_arrayWithHoles","arr","Array","isArray","_iterableToArray","iter","from","_arrayLikeToArray","len","arr2","_unsupportedIterableToArray","minLen","arrayLikeToArray","n","toString","slice","name","test","_nonIterableRest","ownKeys$6","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread$6","arguments","source","forEach","getOwnPropertyDescriptors","defineProperties","consoleLogger","type","log","args","this","output","warn","error","console","baseLogger","Logger","concreteLogger","options","init","prefix","logger","debug","bool","_len","_key","forward","_len2","_key2","_len3","_key3","_len4","_key4","lvl","debugOnly","concat","moduleName","EventEmitter","observers","events","listener","_this","split","event","l","observer","defer","rej","promise","Promise","resolve","reject","makeString","getLastOfPath","path","Empty","cleanKey","indexOf","replace","canNotTraverseDeeper","stack","shift","hasOwnProperty","k","setPath","newValue","_getLastOfPath","getPath","_getLastOfPath3","getPathWithDefaults","data","defaultData","deepExtend","overwrite","prop","regexEscape","str","_entityMap","escape","s","isIE10","window","navigator","userAgentData","userAgent","chars","ownKeys$5","_objectSpread$5","_createSuper$3","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","_isNativeReflectConstruct$3","result","Super","NewTarget","deepFind","keySeparator","paths","current","j","join","mix","endsWith","joinedPath","ResourceStore","_EventEmitter","_super","ns","defaultNS","ignoreJSONStructure","index","splice","lng","silent","addNamespaces","emit","resources","m","addResource","deep","pack","hasResourceBundle","removeNamespaces","getResource","compatibilityAPI","getDataByLanguage","find","v","postProcessor","processors","addPostProcessor","module","handle","translator","processor","process","ownKeys$4","_objectSpread$4","_createSuper$2","_isNativeReflectConstruct$2","checkedLoadedFor","Translator","services","a","t","copy","language","interpolation","resolved","nsSeparator","namespaces","wouldCheckForNsInKey","seemsNaturalLanguage","userDefinedKeySeparator","userDefinedNsSeparator","possibleChars","c","r","RegExp","map","matched","ki","substring","looksLikeObjectPath","match","interpolator","nestingRegexp","parts","lastKey","_this2","overloadTranslationOptionHandler","returnDetails","_this$extractFromKey","extractFromKey","namespace","appendNamespaceToCIMode","toLowerCase","usedKey","exactUsedKey","usedLng","usedNS","resUsedKey","resExactUsedKey","resType","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","returnObjects","returnedObjectHandler","resTypeIsArray","newKeyToUse","deepKey","translate","extendTranslation","usedDefault","needsPluralHandling","count","hasDefaultValue","defaultValueSuffix","pluralResolver","getSuffix","defaultValue","isValidLookup","resForMissing","missingKeyNoValueFallbackToKey","updateMissing","fk","lngs","fallbackLngs","languageUtils","getFallbackCodes","fallbackLng","saveMissingTo","toResolveHierarchy","send","specificDefaultValue","defaultForMissing","missingKeyHandler","backendConnector","saveMissing","saveMissingPlurals","getSuffixes","suffix","appendNamespaceToMissingKey","parseMissingKeyHandler","_this3","parse","defaultVariables","skipInterpolation","nestBef","skipOnVariables","nb","interpolate","na","nest","context","reset","postProcess","postProcessorNames","applyPostProcessor","postProcessPassResolved","i18nResolved","found","_this4","extracted","fallbackNS","needsZeroSuffixLookup","ordinal","shouldUseIntlApi","needsContextHandling","codes","utils","hasLoadedNamespace","code","possibleKey","finalKeys","addLookupKeys","pluralSuffix","zeroSuffix","pluralSeparator","contextKey","contextSeparator","pop","returnNull","returnEmptyString","resourceStore","option","capitalize","string","charAt","toUpperCase","LanguageUtil","supportedLngs","formatLanguageCode","specialCases","lowerCaseLng","part","cleanCode","load","nonExplicitSupportedLngs","getLanguagePartFromCode","cleanedLng","isSupportedCode","lngOnly","supportedLng","fallbacks","getScriptPartFromCode","fallbackCode","fallbackCodes","addCode","fc","sets","nr","_rulesPluralsTypes","deprecatedJsonVersions","suffixesOrder","zero","one","two","few","many","other","PluralResolver","rules","compatibilityJSON","Intl","PluralRules","set","numbers","plurals","_unused","rule","getRule","resolvedOptions","pluralCategories","sort","pluralCategory1","pluralCategory2","pluralCategory","prepend","number","select","getSuffixRetroCompatible","idx","noAbs","Math","abs","simplifyPluralSuffix","returnSuffix","includes","ownKeys$3","_objectSpread$3","Interpolator","format","escapeValue","iOpts","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapePrefix","unescapeSuffix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","resetRegExp","regexpStr","regexp","regexpUnescapeStr","regexpUnescape","nestingRegexpStr","replaces","regexSafe","val","handleFormat","interpolationkey","trim","f","missingInterpolationHandler","regex","safeValue","todo","exec","matchedVar","temp","lastIndex","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","matchedSingleQuotes","matchedDoubleQuotes","JSON","formatters","doReduce","elem","reduce","ownKeys$2","_objectSpread$2","parseFormatStr","formatStr","formatName","formatOptions","optStr","currency","range","opt","_opt$split","_opt$split2","arrayWithHoles","iterableToArray","unsupportedIterableToArray","nonIterableRest","isNaN","parseInt","createCachedFormatter","fn","cache","stringify","formatter","Formatter","formats","NumberFormat","style","datetime","DateTimeFormat","relativetime","RelativeTimeFormat","list","ListFormat","_format","mem","_parseFormatStr","formatted","valOptions","formatParams","locale","ownKeys$1","_objectSpread$1","_createSuper$1","_isNativeReflectConstruct$1","Connector","backend","store","waitingReads","maxParallelReads","readingCalls","maxRetries","retryTimeout","state","queue","languages","callback","toLoad","pending","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","reload","pendingCount","loaded","errors","err","addResourceBundle","q","_getLastOfPath2","removePending","done","loadedKeys","fcName","tried","wait","resolver","next","read","setTimeout","then","queueLoad","loadOne","prepareLoading","_this5","fallbackValue","isUpdate","clb","opts","get","initImmediate","preload","partialBundledLanguages","ret","tDescription","transformOptions","ownKeys","_objectSpread","_createSuper","_isNativeReflectConstruct","noop","I18n","inst","modules","external","getOwnPropertyNames","isInitialized","isClone","defOpts","createClassOnDemand","ClassOrObject","lu","on","languageDetector","detection","_this2$store","_this2$store2","deferred","finish","initializedStoreOnce","changeLanguage","usedCallback","append","resolvedLanguage","setResolvedLanguage","Error","li","lngInLngs","hasLanguageSomeTranslations","isLanguageChangingTo","setLngProps","setLng","getBestMatchFromCodes","cacheUserLanguage","loadResources","async","detect","keyPrefix","fixedT","rest","resultKey","_this$translator","_this$translator2","exists","_this6","lastLng","loadNotPending","loadState","precheck","preResult","_this7","preloaded","newLngs","_this8","mergedOptions","clone","createInstance","dir","reloadResources","use","getFixedT","_objectWithoutProperties","excluded","sourceKeys","objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_console","setDefaultNamespace","loadNamespaces","loadLanguages","alreadyWarned","warnOnce","Date","i18n","cb","initialized","off","matchHtmlEntity","htmlEntities","unescapeHtmlEntity","i18nInstance","defaultOptions","bindI18n","bindI18nStore","transEmptyNodeValue","transSupportBasicHtmlNodes","transWrapTextNodes","transKeepBasicHtmlNodesFor","useSuspense","unescape","text","initReactI18next","setDefaults","react","setI18n","I18nContext","createContext","ReportNamespaces","usedNamespaces","_slicedToArray","_i","_s","_e","_x","_r","_arr","_n","_d","iterableToArrayLimit","usePrevious","ignore","ref","useRef","useEffect","useTranslation","i18nFromProps","_ref","useContext","i18nFromContext","defaultNSFromContext","reportNamespaces","notReadyT","optsOrDefaultValue","retNotReady","ready","i18nOptions","addUsedNamespaces","every","oldI18nextHasLoadedNamespace","getT","nsMode","_useState2","useState","setT","joinedNS","previousJoinedNS","isMounted","boundReset","isInitial","_extends","assign","en","translation","QUERY_KEYS","queryClient","QueryClient","queryCache","QueryCache","queries","defaultStaleTime","keepPreviousData","onError","Toastr","withReactQuery","Component","React","createElement","QueryClientProvider","client","ReactQueryDevtools","initialIsOpen","position","useURLSearchParams","search","useLocation","useMemo","URLSearchParams","BASE_URL","PAYMENT_STATUS_TYPE","successful","declined","initiated","cancelled","REFUND_STATUS_TYPE","failed","requires_action","canceled","STRIPE_DASHBOARD_LINK","DEFAULT_PAGE_VALUES","DEFAULT_PAGE_INDEX","size","FILTER_COLUMNS","label","node","TAG_STYLE","completed","rejected","buildDefaultPageProperties","tabs","pageProperties","tab","buildPayload","_pageProperties$tab","_pageProperties$tab2","filters","page","limit","buildRowData","_ref2","_ref2$pageProperties","_ref2$tab","element","_pageProperties$tab3","_pageProperties$tab4","payable","identifier","id","isEmpty","TAB","all","TABS","values","TAB_METADATA","isHidden","refund","platform","connected","transfer","INITIAL_PANE_STATUS","transactionId","isOpen","_toConsumableArray","arrayWithoutHoles","nonIterableSpread","buildStripeTransactionLink","isLive","buildStripeSplitLink","buildStripeTransferLink","accountId","renderIdentifier","_ref$identifier","_ref$live","live","Button","href","curry","kind","Tooltip","content","className","Tag","renderSplitIdentifier","Typography","renderTransferIdentifier","_ref3","_ref3$identifier","_ref3$account","account","_ref3$live","startsWith","renderPlatformIdentifier","setPaneStatus","onClick","getTagStyle","status","renderStatus","renderDate","date","DateFormat","DateTime","COLUMNS","title","dataIndex","width","render","COLUMN_METADATA","paymentTime","splitIdentifier","transferIdentifier","refundStatus","refundAmount","refundTime","splitStatus","splitTime","paymentIntent","connectedPayment","refundPaymentIdentifier","refundIdentifier","mapToLabelAndValues","toLabelAndValue","isStatusTab","__","isPlatformKind","equals","isConnectedKind","isSplitKind","isTransferKind","isRefundKind","buildPaymentColumns","_ref$payableEntityCol","payableEntityColumns","_ref$specialColumnArg","specialColumnArguments","generateSpecialColumns","_COLUMN_METADATA$key","_COLUMN_METADATA$key$","_COLUMN_METADATA$key2","_COLUMN_METADATA$key3","buildFilterColumns","payableFilterColumns","filterBy","isFilterable","_isHidden","statuses","_TAB_METADATA$value","_TAB_METADATA$value$i","buildStatuses","statusOptions","assoc","processResponse","splits","refunds","transactions","accountsApi","holdableId","axios","transactionsApi","payload","params","refundsApi","splitsApi","SPLIT_COLUMNS","REFUND_COLUMNS","SubTable","_ref$data","_ref$className","_ref$kind","TableWrapper","hasPagination","Table","fixedHeight","columnData","pagination","rowData","scroll","y","ExpandedRow","_ref$splits","_ref$refunds","useFetchData","_data$kind","_data$kind2","_data$kind2$data","_data$kind2$data$coun","_data$kind3","isPlatformEnabled","useQuery","isPresent","useFetchStripeTransactions","enabled","useFetchStripeRefunds","useFetchStripePlatformTransactions","useFetchStripePlatformSplits","dataSize","counts","isDataLoading","isLoading","RowExpander","expanded","onExpand","record","expandable","Down","Right","Details","paneProps","_excluded","_useFetchStripePlatfo","useFetchStripePlatformTransaction","_useFetchStripePlatfo2","_useFetchStripePlatfo3","amount","netAmount","paymentAt","_useFetchStripePlatfo4","Pane","Header","Body","PageLoader","List","_pageProperties$tab5","_ref$isPlatformEnable","_ref$holdableId","setIsFilterButtonVisible","setPageProperties","handleTabChange","paneStatus","urlSearchParams","history","useHistory","_TAB_METADATA$tab","_TAB_METADATA$tab$isH","isStripePlatformAccountLoading","stripePlatformAccount","platformAccount","_useFetchConnectedStr","useFetchConnectedStripeAccount","isStripeAccountLoading","_useFetchConnectedStr2","stripeConnectedAccount","_useFetchData","isStripeAccountConnected","isConnected","handleTablePaginaton","validatedTab","pageIndex","pageSize","NoData","Fragment","allowRowClick","currentPageNumber","handlePageChange","rowSelection","totalCount","expandedRowRender","showExpandColumn","rowExpandable","columnWidth","expandIcon","paginationProps","showSizeChanger","hideOnSinglePage","total","TransactionPane","onClose","withTitle","searchProps","_ref$headerProps","headerProps","_useFiltersAndPaginat","isFilterButtonVisible","_useState4","isFilterPaneOpen","setIsFilterPaneOpen","_useState6","_useState8","searchTerm","setSearchTerm","_useState10","setTab","filterableColumns","_useState12","buildFiltersFromURL","setFilters","useFiltersAndPagination","searchKeywordProps","setValue","onChange","placeholder","SubHeader","leftActionBlock","Tab","noUnderline","item","Item","active","rightActionBlock","FiltersBar","columns","keyword","setIsPaneOpen","RightBlock","filterProps","setIsOpen","asyncGeneratorStep","gen","_next","_throw","info","_asyncToGenerator","exports","__esModule","require$$0","_regeneratorRuntime","Op","hasOwn","desc","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","method","_invoke","AsyncIterator","PromiseImpl","invoke","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","iterable","iteratorMethod","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","reverse","skipTempReset","prev","stop","rootRecord","rval","exception","loc","caught","hasCatch","hasFinally","finallyEntry","complete","catch","thrown","delegateYield","runtime","regenerator","regeneratorRuntime","accidentalStrictMode","globalThis","Function","SQUARE_EVENTS","DEFAULT_SQUARE_CARD_OPTIONS","FilterWrapper","children","squarePayment","squareRefund","STATUSES","_ref$receiptUrl","receiptUrl","paymentIdentifier","pluck","isPaymentKind","initialTabs","tabMetaData","_tabMetaData$tab","_tabMetaData$tab$isHi","paymentsApi","refundsapi","useFetchSquareData","_data$kind$data","_data$kind3$data","_data$kind3$data$view","_data$kind4","useFetchSquarePayments","useFetchSquareRefunds","payments","views","_ref2$payableEntityCo","_ref4","_useFetchSquareAccoun","useFetchSquareAccount","isSquareAccountLoading","_useFetchSquareAccoun2","squareAccount","_useFetchSquareData","filterPaginationState","d","throw","Square","document","querySelector","head","body","src","appendChild","S","addEventListener","w","u","super","scriptSrc","V3_URL","V3_URL_REGEX","EXISTING_SCRIPT_MESSAGE","stripePromise","loadScript","Stripe","script","scripts","querySelectorAll","findScript","queryString","advancedFraudSignals","headOrBody","injectScript","stripePromise$1","loadCalled","startTime","now","maybeStripe","stripe","_registerWrapper","version","registerWrapper","initStripe","card","setCard","_ref$id","DEFAULT_CARD_CONTAINER_ID","_ref$onChange","_ref$options","_ref$disabled","disabled","setInstance","applicationId","env","SQUARE_APPLICATION_ID","locationId","SQUARE_CLIENT_LOCATION","loadPayment","_callee","square","_yield$square","paymentInstance","_context","useSquarePayment","fetchCard","cardResponse","attach","configure","classNames","Spinner","tokenizeCard","message","tokenize","token","t0","stripeAccountIdentifier","stripeJs","_yield$stripeJs","loadStripe","isNotPresent","globalProps","stripePublishableKey","stripeAccount"],"mappings":"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O,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/i18next/dist/esm/i18next.js","../node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/react-i18next/dist/es/utils.js","../node_modules/react-i18next/dist/es/unescape.js","../node_modules/react-i18next/dist/es/defaults.js","../node_modules/react-i18next/dist/es/i18nInstance.js","../node_modules/react-i18next/dist/es/initReactI18next.js","../node_modules/react-i18next/dist/es/context.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/react-i18next/dist/es/useTranslation.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../src/common/i18n.js","../src/common/queryConstants.js","../src/apis/queryClient.js","../src/components/Common/withReactQuery.jsx","../src/hooks/useURLSearchParams.js","../src/constants/index.js","../src/utils/dashboard.js","../src/components/Dashboard/constants/index.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../src/utils/index.js","../src/components/Dashboard/utils/renderFunctions.jsx","../src/utils/renderFunctions.jsx","../src/components/Dashboard/constants/columns.js","../src/components/Dashboard/utils/index.js","../src/components/Dashboard/utils/columns.js","../src/apis/stripe/holdables/accounts.js","../src/apis/stripe/holdables/transactions.js","../src/apis/stripe/holdables/refunds.js","../src/apis/stripePlatform/accounts.js","../src/apis/stripePlatform/splits.js","../src/apis/stripePlatform/transactions.js","../src/components/Dashboard/ExpandedRow/constants.js","../src/components/Dashboard/ExpandedRow/SubTable.jsx","../src/components/Dashboard/ExpandedRow/index.jsx","../src/components/Dashboard/hooks/useFetchData.js","../src/hooks/reactQuery/stripe/useConnectApi.js","../src/hooks/reactQuery/stripe/usePlatformApi.js","../src/components/Dashboard/RowExpander.jsx","../src/components/Dashboard/TransactionPane.jsx","../src/components/Dashboard/List.jsx","../src/components/Dashboard/index.jsx","../src/components/Dashboard/hooks/useFiltersAndPagination.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/regenerator/index.js","../src/hooks/useSquarePayment.js","../src/components/SquareCard/constants.js","../src/components/Common/FilterWrapper.jsx","../src/components/SquareDashboard/constants/index.js","../src/components/SquareDashboard/utils/renderFunctions.jsx","../src/components/SquareDashboard/constants/columns.js","../src/components/SquareDashboard/utils/index.js","../src/hooks/useFiltersAndPagination.js","../src/apis/square/accounts.js","../src/apis/square/payments.js","../src/apis/square/refunds.js","../src/components/SquareDashboard/hooks/useSquareFetchData.js","../src/hooks/reactQuery/square/useSquareApi.js","../src/components/SquareDashboard/List.jsx","../src/components/SquareDashboard/index.jsx","../node_modules/@square/web-sdk/dist/index.js","../node_modules/@stripe/stripe-js/dist/stripe.esm.js","../src/components/SquareCard/index.jsx","../src/hooks/useSquareCard.js","../src/hooks/useStripePromise.js"],"sourcesContent":["export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Logger);\n this.init(concreteLogger, options);\n }\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread$6(_objectSpread$6({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }, {\n key: \"clone\",\n value: function clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n }]);\n return Logger;\n}();\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n this.observers = {};\n }\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n return matched;\n}\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n current = current[paths[i]];\n }\n return current;\n}\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n var _super = _createSuper$3(ResourceStore);\n function ResourceStore(data) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n _classCallCheck(this, ResourceStore);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n return _this;\n }\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = 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 if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$5(_objectSpread$5({}, pack), resources);\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$5(_objectSpread$5({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n var _super = _createSuper$2(Translator);\n function Translator(services) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Translator);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n if (key === undefined || key === null) {\n return false;\n }\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n if (returnDetails) {\n return {\n res: \"\".concat(namespace).concat(nsSeparator).concat(key),\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n if (returnDetails) {\n return {\n res: key,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return key;\n }\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$4(_objectSpread$4({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n return r;\n }\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$4(_objectSpread$4({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$4(_objectSpread$4({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$4(_objectSpread$4({}, options), {\n interpolation: _objectSpread$4(_objectSpread$4({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n return null;\n }\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$4({\n i18nResolved: resolved\n }, options) : options, this);\n }\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n var extracted = _this4.extractFromKey(k, options);\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n var possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n }]);\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n return p.join('-');\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n var cleanedLng = _this.formatLanguageCode(code);\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n var lngOnly = _this.getLanguagePartFromCode(code);\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, PluralResolver);\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n this.rules = createRules();\n }\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (!rule) {\n return [];\n }\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n return this.getSuffixRetroCompatible(rule, count);\n }\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Interpolator);\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n this.init(options);\n }\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = 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 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 this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && Object.prototype.hasOwnProperty.call(options, matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n replaces++;\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n var clonedOptions;\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n var matchedSingleQuotes = optionsString.match(/'/g);\n var matchedDoubleQuotes = optionsString.match(/\"/g);\n if (matchedSingleQuotes && matchedSingleQuotes.length % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n delete clonedOptions.defaultValue;\n return key;\n }\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n clonedOptions = _objectSpread$3({}, options);\n clonedOptions = clonedOptions.replace && typeof clonedOptions.replace !== 'string' ? clonedOptions.replace : clonedOptions;\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n var doReduce = false;\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n }]);\n return Interpolator;\n}();\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\nfunction createCachedFormatter(fn) {\n var cache = {};\n return function invokeFormatter(val, lng, options) {\n var key = lng + JSON.stringify(options);\n var formatter = cache[key];\n if (!formatter) {\n formatter = fn(lng, options);\n cache[key] = formatter;\n }\n return formatter(val);\n };\n}\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Formatter);\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n currency: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2(_objectSpread$2({}, opt), {}, {\n style: 'currency'\n }));\n return function (val) {\n return formatter.format(val);\n };\n }),\n datetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.DateTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n relativetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.RelativeTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val, opt.range || 'day');\n };\n }),\n list: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.ListFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n })\n };\n this.init(options);\n }\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"addCached\",\n value: function addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng) {\n var _this = this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var formats = _format.split(this.formatSeparator);\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n if (_this.formats[formatName]) {\n var formatted = mem;\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$2(_objectSpread$2(_objectSpread$2({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n return mem;\n }, value);\n return result;\n }\n }]);\n return Formatter;\n}();\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n var _super = _createSuper$1(Connector);\n function Connector(backend, store, services) {\n var _this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n _classCallCheck(this, Connector);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n _this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n _this.state = {};\n _this.queue = [];\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n if (loadedKeys.length) {\n loadedKeys.forEach(function (n) {\n if (loaded[l][n] === undefined) loaded[l][n] = true;\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n this.readingCalls++;\n var resolver = function resolver(err, data) {\n _this3.readingCalls--;\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n if (err && data && tried < _this3.maxRetries) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n };\n var fc = this.backend[fcName].bind(this.backend);\n if (fc.length === 2) {\n try {\n var r = fc(lng, ns);\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return resolver(null, data);\n })[\"catch\"](resolver);\n } else {\n resolver(null, r);\n }\n } catch (err) {\n resolver(err);\n }\n return;\n }\n return fc(lng, ns, resolver);\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n var clb = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : function () {};\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend && this.backend.create) {\n var opts = _objectSpread$1(_objectSpread$1({}, options), {}, {\n isUpdate: isUpdate\n });\n var fc = this.backend.create.bind(this.backend);\n if (fc.length < 6) {\n try {\n var r;\n if (fc.length === 5) {\n r = fc(languages, namespace, key, fallbackValue, opts);\n } else {\n r = fc(languages, namespace, key, fallbackValue);\n }\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return clb(null, data);\n })[\"catch\"](clb);\n } else {\n clb(null, r);\n }\n } catch (err) {\n clb(err);\n }\n } else {\n fc(languages, namespace, key, fallbackValue, clb, opts);\n }\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n return options;\n}\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction noop() {}\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n var _super = _createSuper(I18n);\n function I18n() {\n var _this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n _classCallCheck(this, I18n);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!options.defaultNS && options.defaultNS !== false && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n var defOpts = get();\n this.options = _objectSpread(_objectSpread(_objectSpread({}, defOpts), this.options), transformOptions(options));\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread(_objectSpread({}, defOpts.interpolation), this.options.interpolation);\n }\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n var formatter;\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n if (s.languageDetector.init) s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n return _this2;\n };\n });\n var deferred = defer();\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n var append = function append(lng) {\n if (!lng) return;\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n _this4.setResolvedLanguage(l);\n };\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n _this4.translator.changeLanguage(l);\n _this4.isLanguageChangingTo = undefined;\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector && _this4.services.languageDetector.cacheUserLanguage) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n if (this.services.languageDetector.detect.length === 0) {\n this.services.languageDetector.detect().then(setLng);\n } else {\n this.services.languageDetector.detect(setLng);\n }\n } else {\n setLng(lng);\n }\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n var fixedT = function fixedT(key, opts) {\n var options;\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey;\n if (options.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(function (k) {\n return \"\".concat(options.keyPrefix).concat(keySeparator).concat(k);\n });\n } else {\n resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n }\n return _this5.t(resultKey, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n var lng = this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n var deferred = defer();\n if (!this.options.ns) {\n if (callback) callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n var languageUtils = this.services && this.services.languageUtils || new LanguageUtil(get());\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var mergedOptions = _objectSpread(_objectSpread(_objectSpread({}, this.options), options), {\n isClone: true\n });\n var clone = new I18n(mergedOptions);\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n return I18n;\n}(EventEmitter);\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar dir = instance.dir;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport { changeLanguage, createInstance, instance as default, dir, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","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}","var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nvar htmlEntities = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"',\n ' ': ' ',\n ' ': ' ',\n '©': '©',\n '©': '©',\n '®': '®',\n '®': '®',\n '…': '…',\n '…': '…',\n '/': '/',\n '/': '/'\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 _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 { unescape } from './unescape.js';\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};\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}","var i18nInstance;\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}","import { setDefaults } from './defaults.js';\nimport { setI18n } from './i18nInstance.js';\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\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 { getDefaults, setDefaults } from './defaults.js';\nimport { getI18n, setI18n } from './i18nInstance.js';\nimport { initReactI18next } from './initReactI18next.js';\nexport { getDefaults, setDefaults, getI18n, setI18n, initReactI18next };\nexport var I18nContext = createContext();\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 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}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\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.js';\nimport { warnOnce, loadNamespaces, hasLoadedNamespace } from './utils.js';\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, optsOrDefaultValue) {\n if (typeof optsOrDefaultValue === 'string') return optsOrDefaultValue;\n if (optsOrDefaultValue && _typeof(optsOrDefaultValue) === 'object' && typeof optsOrDefaultValue.defaultValue === 'string') return optsOrDefaultValue.defaultValue;\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, keyPrefix]);\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}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import i18n from \"i18next\";\nimport { initReactI18next } from \"react-i18next\";\n\nimport en from \"../translations/en.json\";\n\ni18n.use(initReactI18next).init({\n resources: { en: { translation: en } },\n lng: \"en\",\n fallbackLng: \"en\",\n interpolation: {\n escapeValue: false,\n skipOnVariables: false,\n },\n});\n\nexport default i18n;\n","export const DEFAULT_STALE_TIME = 300_000; // 5 minutes\n\nexport const QUERY_KEYS = {\n STRIPE_ACCOUNT_DETAILS: \"stripe-account-details\",\n STRIPE_PLATFORM_ACCOUNT_DETAILS: \"stripe-platform-account-details\",\n TRANSACTIONS_LIST: \"transactions-list\",\n PLATFORM_TRANSACTIONS_LIST: \"platform-transactions-list\",\n PAYMENTS_FILTER_OPTIONS: \"payments-filter-options\",\n REFUNDS_LIST: \"refunds-list\",\n SPLITS_LIST: \"platform-splits-list\",\n CONNECTED_ACCOUNT: \"connected-account\",\n STRIPE_PLATFORM_TRANSACTION: \"stripe-platform-transaction\",\n STRIPE_REFUNDS_LIST: \"stripe-refunds-list\",\n SQUARE_ACCOUNT_DETAILS: \"square-account-details\",\n SQUARE_PAYMENTS_LIST: \"payments-list\",\n SQUARE_REFUNDS_LIST: \"refunds-list\",\n};\n","import { Toastr } from \"neetoui\";\nimport { QueryCache, QueryClient } from \"react-query\";\n\nimport { DEFAULT_STALE_TIME } from \"common/queryConstants\";\n\nconst queryClient = new QueryClient({\n queryCache: new QueryCache(),\n defaultOptions: {\n queries: {\n defaultStaleTime: DEFAULT_STALE_TIME,\n keepPreviousData: true,\n onError: error => Toastr.error(error),\n },\n },\n});\n\nexport default queryClient;\n","import React from \"react\";\n\nimport { QueryClientProvider } from \"react-query\";\nimport { ReactQueryDevtools } from \"react-query/devtools\";\n\nimport queryClient from \"apis/queryClient\";\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\n return QueryWrapper;\n};\n\nexport default withReactQuery;\n","import { useMemo } from \"react\";\n\nimport { useLocation } from \"react-router-dom\";\n\nconst useURLSearchParams = () => {\n const { search } = useLocation();\n\n return useMemo(() => new URLSearchParams(search), [search]);\n};\n\nexport default useURLSearchParams;\n","import { t } from \"i18next\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\n\nexport const BASE_URL = \"payments\";\n\nexport const PAYMENT_STATUS_TYPE = {\n successful: \"successful\",\n pending: \"pending\",\n declined: \"declined\",\n initiated: \"initiated\",\n cancelled: \"cancelled\",\n};\n\nexport const REFUND_STATUS_TYPE = {\n pending: \"pending\",\n successful: \"successful\",\n failed: \"failed\",\n requires_action: \"requires_action\",\n canceled: \"canceled\",\n initiated: \"initiated\",\n};\n\nexport const STRIPE_DASHBOARD_LINK = \"https://dashboard.stripe.com/\";\n\nexport const CURRENCY_OPTIONS = [\n { label: \"USD\", value: \"usd\" },\n { label: \"AED\", value: \"aed\" },\n { label: \"AFN\", value: \"afn\" },\n { label: \"ALL\", value: \"all\" },\n { label: \"AMD\", value: \"amd\" },\n { label: \"ANG\", value: \"ang\" },\n { label: \"AOA\", value: \"aoa\" },\n { label: \"ARS\", value: \"ars\" },\n { label: \"AUD\", value: \"aud\" },\n { label: \"AWG\", value: \"awg\" },\n { label: \"AZN\", value: \"azn\" },\n { label: \"BAM\", value: \"bam\" },\n { label: \"BBD\", value: \"bbd\" },\n { label: \"BDT\", value: \"bdt\" },\n { label: \"BGN\", value: \"bgn\" },\n { label: \"BIF\", value: \"bif\" },\n { label: \"BMD\", value: \"bmd\" },\n { label: \"BND\", value: \"bnd\" },\n { label: \"BOB\", value: \"bob\" },\n { label: \"BRL\", value: \"brl\" },\n { label: \"BSD\", value: \"bsd\" },\n { label: \"BWP\", value: \"bwp\" },\n { label: \"BYN\", value: \"byn\" },\n { label: \"BZD\", value: \"bzd\" },\n { label: \"CAD\", value: \"cad\" },\n { label: \"CDF\", value: \"cdf\" },\n { label: \"CHF\", value: \"chf\" },\n { label: \"CLP\", value: \"clp\" },\n { label: \"CNY\", value: \"cny\" },\n { label: \"COP\", value: \"cop\" },\n { label: \"CRC\", value: \"crc\" },\n { label: \"CVE\", value: \"cve\" },\n { label: \"CZK\", value: \"czk\" },\n { label: \"DJF\", value: \"djf\" },\n { label: \"DKK\", value: \"dkk\" },\n { label: \"DOP\", value: \"dop\" },\n { label: \"DZD\", value: \"dzd\" },\n { label: \"EGP\", value: \"egp\" },\n { label: \"ETB\", value: \"etb\" },\n { label: \"EUR\", value: \"eur\" },\n { label: \"FJD\", value: \"fjd\" },\n { label: \"FKP\", value: \"fkp\" },\n { label: \"GBP\", value: \"gbp\" },\n { label: \"GEL\", value: \"gel\" },\n { label: \"GIP\", value: \"gip\" },\n { label: \"GMD\", value: \"gmd\" },\n { label: \"GNF\", value: \"gnf\" },\n { label: \"GTQ\", value: \"gtq\" },\n { label: \"GYD\", value: \"gyd\" },\n { label: \"HKD\", value: \"hkd\" },\n { label: \"HNL\", value: \"hnl\" },\n { label: \"HTG\", value: \"htg\" },\n { label: \"HUF\", value: \"huf\" },\n { label: \"IDR\", value: \"idr\" },\n { label: \"ILS\", value: \"ils\" },\n { label: \"INR\", value: \"inr\" },\n { label: \"ISK\", value: \"isk\" },\n { label: \"JMD\", value: \"jmd\" },\n { label: \"JPY\", value: \"jpy\" },\n { label: \"KES\", value: \"kes\" },\n { label: \"KGS\", value: \"kgs\" },\n { label: \"KHR\", value: \"khr\" },\n { label: \"KMF\", value: \"kmf\" },\n { label: \"KRW\", value: \"krw\" },\n { label: \"KYD\", value: \"kyd\" },\n { label: \"KZT\", value: \"kzt\" },\n { label: \"LAK\", value: \"lak\" },\n { label: \"LBP\", value: \"lbp\" },\n { label: \"LKR\", value: \"lkr\" },\n { label: \"LRD\", value: \"lrd\" },\n { label: \"LSL\", value: \"lsl\" },\n { label: \"MAD\", value: \"mad\" },\n { label: \"MDL\", value: \"mdl\" },\n { label: \"MGA\", value: \"mga\" },\n { label: \"MKD\", value: \"mkd\" },\n { label: \"MMK\", value: \"mmk\" },\n { label: \"MNT\", value: \"mnt\" },\n { label: \"MOP\", value: \"mop\" },\n { label: \"MRO\", value: \"mro\" },\n { label: \"MUR\", value: \"mur\" },\n { label: \"MVR\", value: \"mvr\" },\n { label: \"MWK\", value: \"mwk\" },\n { label: \"MXN\", value: \"mxn\" },\n { label: \"MYR\", value: \"myr\" },\n { label: \"MZN\", value: \"mzn\" },\n { label: \"NAD\", value: \"nad\" },\n { label: \"NGN\", value: \"ngn\" },\n { label: \"NIO\", value: \"nio\" },\n { label: \"NOK\", value: \"nok\" },\n { label: \"NPR\", value: \"npr\" },\n { label: \"NZD\", value: \"nzd\" },\n { label: \"PAB\", value: \"pab\" },\n { label: \"PEN\", value: \"pen\" },\n { label: \"PGK\", value: \"pgk\" },\n { label: \"PHP\", value: \"php\" },\n { label: \"PKR\", value: \"pkr\" },\n { label: \"PLN\", value: \"pln\" },\n { label: \"PYG\", value: \"pyg\" },\n { label: \"QAR\", value: \"qar\" },\n { label: \"RON\", value: \"ron\" },\n { label: \"RSD\", value: \"rsd\" },\n { label: \"RUB\", value: \"rub\" },\n { label: \"RWF\", value: \"rwf\" },\n { label: \"SAR\", value: \"sar\" },\n { label: \"SBD\", value: \"sbd\" },\n { label: \"SCR\", value: \"scr\" },\n { label: \"SEK\", value: \"sek\" },\n { label: \"SGD\", value: \"sgd\" },\n { label: \"SHP\", value: \"shp\" },\n { label: \"SLE\", value: \"sle\" },\n { label: \"SOS\", value: \"sos\" },\n { label: \"SRD\", value: \"srd\" },\n { label: \"STD\", value: \"std\" },\n { label: \"SZL\", value: \"szl\" },\n { label: \"THB\", value: \"thb\" },\n { label: \"TJS\", value: \"tjs\" },\n { label: \"TOP\", value: \"top\" },\n { label: \"TRY\", value: \"try\" },\n { label: \"TTD\", value: \"ttd\" },\n { label: \"TWD\", value: \"twd\" },\n { label: \"TZS\", value: \"tzs\" },\n { label: \"UAH\", value: \"uah\" },\n { label: \"UGX\", value: \"ugx\" },\n { label: \"UYU\", value: \"uyu\" },\n { label: \"UZS\", value: \"uzs\" },\n { label: \"VND\", value: \"vnd\" },\n { label: \"VUV\", value: \"vuv\" },\n { label: \"WST\", value: \"wst\" },\n { label: \"XAF\", value: \"xaf\" },\n { label: \"XCD\", value: \"xcd\" },\n { label: \"XOF\", value: \"xof\" },\n { label: \"XPF\", value: \"xpf\" },\n { label: \"YER\", value: \"yer\" },\n { label: \"ZAR\", value: \"zar\" },\n { label: \"ZMW\", value: \"zmw\" },\n];\n\nexport const DEFAULT_PAGE_SIZE = 45;\n\nexport const DEFAULT_PAGE_VALUES = {\n index: DEFAULT_PAGE_INDEX,\n size: DEFAULT_PAGE_SIZE,\n};\n\nexport const FILTER_COLUMNS = [\n {\n key: \"amount\",\n label: t(\"common.amount\"),\n node: \"amount\",\n type: \"decimal\",\n },\n {\n key: \"status\",\n label: t(\"common.status\"),\n node: \"status\",\n type: \"multi_option\",\n },\n];\n\nexport const DEFAULT_TAG_STYLE = \"warning\";\n\nexport const TAG_STYLE = {\n successful: \"success\",\n declined: \"danger\",\n initiated: \"primary\",\n canceled: \"secondary\",\n cancelled: \"secondary\",\n failed: \"danger\",\n completed: \"success\",\n rejected: \"danger\",\n};\n","import { isEmpty } from \"ramda\";\n\nimport { DEFAULT_PAGE_VALUES } from \"src/constants\";\n\nexport const buildDefaultPageProperties = tabs =>\n tabs.reduce(\n (pageProperties, tab) => ({\n ...pageProperties,\n [tab]: DEFAULT_PAGE_VALUES,\n }),\n {}\n );\n\nexport const buildPayload = ({ tab, filters, pageProperties }) => ({\n tab,\n page: pageProperties[tab]?.index,\n limit: pageProperties[tab]?.size,\n filters: JSON.stringify(filters),\n});\n\nexport const buildRowData = ({ data, pageProperties = {}, tab = \"all\" }) =>\n data.map((element, index) => ({\n ...element,\n payable: element.payable,\n identifier: element,\n id: isEmpty(pageProperties)\n ? index + 1\n : pageProperties[tab]?.size * (pageProperties[tab]?.index - 1) +\n index +\n 1,\n }));\n","export const TAB = {\n all: \"all\",\n successful: \"successful\",\n pending: \"pending\",\n declined: \"declined\",\n cancelled: \"cancelled\",\n failed: \"failed\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const TAB_METADATA = {\n all: {},\n successful: {},\n pending: { isHidden: { refund: true } },\n declined: { isHidden: { split: true, refund: true } },\n failed: {\n isHidden: {\n platform: true,\n connected: true,\n transfer: true,\n split: true,\n },\n },\n cancelled: {\n isHidden: {\n platform: true,\n connected: true,\n transfer: true,\n refund: true,\n },\n },\n};\n\nexport const INITIAL_PANE_STATUS = {\n transactionId: \"\",\n isOpen: false,\n};\n","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import { STRIPE_DASHBOARD_LINK } from \"../constants\";\n\nexport const buildStripeTransactionLink = (identifier, isLive = true) =>\n `${STRIPE_DASHBOARD_LINK}${isLive ? \"\" : \"test/\"}payments/${identifier}`;\n\nexport const buildStripeSplitLink = (identifier, isLive = true) =>\n `${STRIPE_DASHBOARD_LINK}${\n isLive ? \"\" : \"test/\"\n }connect/transfers/${identifier}`;\n\nexport const buildStripeTransferLink = (\n identifier,\n accountId = \"\",\n isLive = true\n) =>\n `${STRIPE_DASHBOARD_LINK}${accountId}/${\n isLive ? \"\" : \"test/\"\n }payments/${identifier}`;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { Button, Tag, Tooltip, Typography } from \"neetoui\";\nimport { curry } from \"ramda\";\n\nimport {\n buildStripeSplitLink,\n buildStripeTransactionLink,\n buildStripeTransferLink,\n} from \"utils\";\n\nexport const renderIdentifier = ({\n identifier = \"\",\n live: isLive = false,\n} = {}) => (\n <Button\n href={buildStripeTransactionLink(identifier, isLive)}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n);\n\nexport const renderKind = curry((type, kind) => (\n <Tooltip content={t(`tooltipContent.${type}.${kind}`)} position=\"top\">\n <div className=\"w-fit\">\n <Tag label={t(`tagLabels.${type}.${kind}`)} style=\"secondary\" />\n </div>\n </Tooltip>\n));\n\nexport const renderSplitIdentifier = ({ identifier, live: isLive }) =>\n identifier ? (\n <Button\n href={buildStripeSplitLink(identifier, isLive)}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n ) : (\n <Tooltip content={t(\"tooltipContent.identifierUnavailable\")} position=\"top\">\n <div className=\"text-center\">\n <Typography style=\"body2\">{t(\"common.notAvailable\")}</Typography>\n </div>\n </Tooltip>\n );\n\nexport const renderTransferIdentifier = ({\n identifier = \"\",\n account = {},\n live: isLive = false,\n} = {}) => (\n <Button\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n href={\n identifier.startsWith(\"py\")\n ? buildStripeTransferLink(identifier, account?.identifier, isLive)\n : buildStripeTransactionLink(identifier, isLive)\n }\n />\n);\n\nexport const renderConnectedIdentifier = identifier => (\n <div className=\"text-center\">\n {identifier || (\n <Tooltip\n content={t(\"tooltipContent.connectedTransactionUnavailable\")}\n position=\"top\"\n >\n <Typography style=\"body2\">{t(\"common.notAvailable\")}</Typography>\n </Tooltip>\n )}\n </div>\n);\n\nexport const renderPlatformIdentifier = curry((setPaneStatus, data) => (\n <Button\n label={data?.identifier}\n size=\"small\"\n style=\"link\"\n onClick={() => setPaneStatus({ transactionId: data?.id, isOpen: true })}\n />\n));\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport DateFormat from \"neetomolecules/DateFormat\";\nimport { Tag, Tooltip } from \"neetoui\";\nimport { curry } from \"ramda\";\n\nimport { DEFAULT_TAG_STYLE, TAG_STYLE } from \"src/constants\";\n\nconst getTagStyle = status => TAG_STYLE[status] || DEFAULT_TAG_STYLE;\n\nexport const renderStatus = curry((type, status) => (\n <Tooltip content={t(`tooltipContent.${type}.${status}`)} position=\"top\">\n <div className=\"w-fit\">\n <Tag label={status} style={getTagStyle(status)} />\n </div>\n </Tooltip>\n));\n\nexport const renderDate = date => <DateFormat.DateTime {...{ date }} />;\n","import { t } from \"i18next\";\n\nimport { renderDate, renderStatus } from \"utils/renderFunctions\";\n\nimport {\n renderConnectedIdentifier,\n renderIdentifier,\n renderSplitIdentifier,\n renderTransferIdentifier,\n} from \"../utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n title: t(\"common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: \"72px\",\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: \"290px\",\n render: renderIdentifier,\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"splitIdentifier\",\n width: \"290px\",\n render: renderSplitIdentifier,\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"refundIdentifier\",\n width: \"290px\",\n render: ({ identifier = \"\" }) => identifier,\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"transferIdentifier\",\n width: \"290px\",\n render: renderTransferIdentifier,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: renderStatus(\"transaction\"),\n },\n {\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n key: \"amount\",\n width: \"150px\",\n },\n {\n title: t(\"common.paymentTime\"),\n dataIndex: \"paymentAt\",\n key: \"paymentTime\",\n width: \"220px\",\n render: renderDate,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"refundStatus\",\n render: renderStatus(\"refund\"),\n },\n {\n title: t(\"common.refundAmount\"),\n dataIndex: \"amount\",\n key: \"refundAmount\",\n width: \"150px\",\n },\n {\n title: t(\"common.refundTime\"),\n dataIndex: \"updatedAt\",\n key: \"refundTime\",\n width: \"220px\",\n render: renderDate,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"splitStatus\",\n render: renderStatus(\"split\"),\n },\n {\n title: t(\"common.transferTime\"),\n key: \"splitTime\",\n dataIndex: \"updatedAt\",\n width: \"220px\",\n render: renderDate,\n },\n {\n title: t(\"common.paymentIdentifier\"),\n key: \"refundPaymentIdentifier\",\n dataIndex: \"transaction\",\n width: \"290px\",\n render: renderTransferIdentifier,\n },\n {\n title: t(\"common.connectedTransaction\"),\n dataIndex: [\"connectedPayment\", \"identifier\"],\n key: \"connectedPayment\",\n width: \"290px\",\n render: renderConnectedIdentifier,\n },\n];\n\nexport const COLUMN_METADATA = {\n identifier: {\n isHidden: { split: true, transfer: true, refund: true },\n },\n paymentTime: { isHidden: { refund: true, split: true } },\n splitIdentifier: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n pending: true,\n },\n },\n transferIdentifier: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n refund: true,\n },\n },\n status: {\n isHidden: {\n refund: true,\n split: true,\n declined: true,\n pending: true,\n successful: true,\n },\n },\n refundStatus: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n refundAmount: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n refundTime: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n splitStatus: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n declined: true,\n pending: true,\n successful: true,\n cancelled: true,\n },\n },\n splitTime: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n },\n },\n paymentIntent: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n },\n },\n connectedPayment: {\n isHidden: {\n platform: true,\n refund: true,\n connected: true,\n transfer: true,\n pending: true,\n },\n },\n refundPaymentIdentifier: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n refundIdentifier: {\n isHidden: {\n platform: true,\n split: true,\n connected: true,\n transfer: true,\n },\n },\n};\n","import { filterBy, toLabelAndValue } from \"neetocommons/pure\";\nimport { __, map, prop, assoc, includes, equals } from \"ramda\";\n\nimport {\n FILTER_COLUMNS,\n PAYMENT_STATUS_TYPE,\n REFUND_STATUS_TYPE,\n} from \"src/constants\";\n\nimport { generateSpecialColumns } from \"./columns\";\n\nimport { TAB, TAB_METADATA } from \"../constants\";\nimport { COLUMNS, COLUMN_METADATA } from \"../constants/columns\";\n\nconst mapToLabelAndValues = map(toLabelAndValue);\n\nconst isStatusTab = includes(__, [TAB.successful, TAB.pending, TAB.declined]);\n\nconst buildStatuses = kind =>\n Object.values(PAYMENT_STATUS_TYPE).filter(\n value => !TAB_METADATA[value]?.isHidden?.[kind]\n );\n\nexport const isPlatformKind = equals(\"platform\");\nexport const isConnectedKind = equals(\"connected\");\nexport const isSplitKind = equals(\"split\");\nexport const isTransferKind = equals(\"transfer\");\nexport const isRefundKind = equals(\"refund\");\n\nexport const buildPaymentColumns = ({\n tab,\n kind,\n payableEntityColumns = [],\n specialColumnArguments = {},\n}) =>\n COLUMNS.concat(generateSpecialColumns(specialColumnArguments))\n .filter(\n ({ key }) =>\n !(\n COLUMN_METADATA[key]?.isHidden?.[kind] ||\n COLUMN_METADATA[key]?.isHidden?.[tab]\n )\n )\n .concat(\n payableEntityColumns.filter(\n ({ isHidden }) => !(isHidden?.[tab] || isHidden?.[kind])\n )\n );\n\nexport const buildFilterColumns = (tab, kind, payableEntityColumns = []) => {\n const payableFilterColumns = map(\n prop(\"filterProps\"),\n filterBy(\n {\n isFilterable: true,\n isHidden: isHidden => !(isHidden?.[tab] || isHidden?.[kind]),\n },\n payableEntityColumns\n )\n );\n\n if (isStatusTab(tab)) {\n return [FILTER_COLUMNS[0], ...payableFilterColumns];\n }\n\n const statuses = isRefundKind(kind)\n ? Object.keys(REFUND_STATUS_TYPE)\n : buildStatuses(kind);\n const statusOptions = mapToLabelAndValues(statuses);\n\n return [\n FILTER_COLUMNS[0],\n assoc(\"values\", statusOptions, FILTER_COLUMNS[1]),\n ...payableFilterColumns,\n ];\n};\n\nexport const processResponse = (data, kind) => {\n if (isSplitKind(kind)) return data?.splits;\n\n if (isRefundKind(kind)) return data?.refunds;\n\n return data?.transactions;\n};\n","import { t } from \"i18next\";\n\nimport { renderPlatformIdentifier } from \"./renderFunctions\";\n\nexport const generateSpecialColumns = ({ setPaneStatus }) => [\n {\n title: t(\"common.platformTransaction\"),\n dataIndex: \"paymentIntent\",\n key: \"paymentIntent\",\n width: \"290px\",\n render: renderPlatformIdentifier(setPaneStatus),\n },\n];\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = holdableId =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdable/${holdableId}/account`);\n\nconst accountsApi = {\n show,\n};\n\nexport default accountsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultList = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdable/transactions`, {\n params: payload,\n });\n\nconst list = (holdableId, payload) =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdables/${holdableId}/transactions`, {\n params: payload,\n });\n\nconst transactionsApi = {\n defaultList,\n list,\n};\n\nexport default transactionsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe/holdable/refunds`, {\n params: payload,\n });\n\nconst refundsApi = { list };\n\nexport default refundsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = () => axios.get(`${BASE_URL}/api/v1/stripe_platform/account`);\n\nconst accountsApi = { show };\n\nexport default accountsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe_platform/splits`, {\n params: payload,\n });\n\nconst splitsApi = { list };\n\nexport default splitsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = payload =>\n axios.get(`${BASE_URL}/api/v1/stripe_platform/transactions`, {\n params: payload,\n });\n\nconst show = id =>\n axios.get(`${BASE_URL}/api/v1/stripe_platform/transactions/${id}`);\n\nconst transactionsApi = { list, show };\n\nexport default transactionsApi;\n","import { t } from \"i18next\";\n\nimport { renderStatus } from \"utils/renderFunctions\";\n\nimport { renderSplitIdentifier } from \"../utils/renderFunctions\";\n\nexport const SPLIT_COLUMNS = [\n {\n key: \"splitSubId\",\n title: t(\"common.id\"),\n dataIndex: \"id\",\n width: \"72px\",\n },\n {\n key: \"splitSubIdentifier\",\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n width: \"290px\",\n render: renderSplitIdentifier,\n },\n {\n key: \"splitSubAmount\",\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n width: \"150px\",\n },\n {\n key: \"splitSubStatus\",\n title: t(\"common.status\"),\n dataIndex: \"status\",\n width: \"130px\",\n render: renderStatus(\"split\"),\n },\n];\n\nexport const REFUND_COLUMNS = [\n {\n key: \"refundId\",\n title: t(\"common.id\"),\n dataIndex: \"id\",\n width: \"72px\",\n },\n {\n key: \"refundIdentifier\",\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n width: \"290px\",\n render: ({ identifier = \"\" }) => identifier,\n },\n {\n key: \"refundAmount\",\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n width: \"150px\",\n },\n {\n key: \"refundStatus\",\n title: t(\"common.status\"),\n dataIndex: \"status\",\n width: \"130px\",\n render: renderStatus(\"refund\"),\n },\n];\n","import React from \"react\";\n\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table } from \"neetoui\";\n\nimport { buildRowData } from \"utils/dashboard\";\n\nimport { SPLIT_COLUMNS, REFUND_COLUMNS } from \"./constants\";\n\nimport { isSplitKind } from \"../utils\";\n\nconst SubTable = ({ data = [], className = \"\", kind = \"split\" }) => (\n <div className={className || \"ml-12 max-w-2xl\"}>\n <TableWrapper hasPagination={false}>\n <Table\n fixedHeight\n columnData={isSplitKind(kind) ? SPLIT_COLUMNS : REFUND_COLUMNS}\n pagination={false}\n rowData={buildRowData({ data })}\n scroll={{ y: 300 }}\n />\n </TableWrapper>\n </div>\n);\n\nexport default SubTable;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport SubTable from \"./SubTable\";\n\nconst ExpandedRow = ({ splits = [], refunds = [] } = {}) => (\n <div className=\"my-2 space-y-2\">\n {!isEmpty(splits) && (\n <div className=\"space-y-4\">\n <Typography className=\"ml-12\" style=\"h3\">\n {t(\"common.splits\")}\n </Typography>\n <SubTable data={splits} />\n </div>\n )}\n {!isEmpty(refunds) && (\n <div className=\"space-y-4\">\n <Typography className=\"ml-12\" style=\"h3\">\n {t(\"title.refund\")}\n </Typography>\n <SubTable data={refunds} kind=\"refund\" />\n </div>\n )}\n </div>\n);\n\nexport default ExpandedRow;\n","import { useFetchStripeTransactions } from \"hooks/reactQuery/stripe/useConnectApi\";\nimport {\n useFetchStripePlatformSplits,\n useFetchStripePlatformTransactions,\n useFetchStripeRefunds,\n} from \"hooks/reactQuery/stripe/usePlatformApi\";\n\nimport {\n isConnectedKind,\n isPlatformKind,\n isRefundKind,\n isSplitKind,\n isTransferKind,\n processResponse,\n} from \"../utils\";\n\nexport const useFetchData = ({\n kind,\n holdableId,\n payload,\n isPlatformEnabled,\n}) => {\n const data = {};\n data.transfer = data.connected = useFetchStripeTransactions(\n holdableId,\n { ...payload, kind },\n { enabled: isTransferKind(kind) || isConnectedKind(kind) }\n );\n\n data.refund = useFetchStripeRefunds(payload, {\n enabled: isRefundKind(kind),\n });\n\n data.platform = useFetchStripePlatformTransactions(payload, {\n enabled: isPlatformKind(kind) && isPlatformEnabled,\n });\n\n data.split = useFetchStripePlatformSplits(payload, {\n enabled: isSplitKind(kind) && isPlatformEnabled,\n });\n\n return {\n data: processResponse(data[kind]?.data, kind),\n dataSize: data[kind]?.data?.counts?.[payload?.tab],\n isDataLoading: data[kind]?.isLoading,\n };\n};\n","import { isPresent } from \"neetocommons/pure\";\nimport { useQuery } from \"react-query\";\n\nimport accountsApi from \"apis/stripe/holdables/accounts\";\nimport transactionsApi from \"apis/stripe/holdables/transactions\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchConnectedStripeAccount = (holdableId, options = {}) =>\n useQuery(\n [QUERY_KEYS.CONNECTED_ACCOUNT, holdableId],\n () => accountsApi.show(holdableId),\n options\n );\n\nexport const useFetchStripeTransactions = (\n holdableId = \"\",\n payload = {},\n options = {}\n) =>\n useQuery(\n [QUERY_KEYS.TRANSACTIONS_LIST, payload],\n () => {\n if (isPresent(holdableId)) {\n return transactionsApi.list(holdableId, payload);\n }\n\n return transactionsApi.defaultList(payload);\n },\n options\n );\n","import { useQuery } from \"react-query\";\n\nimport refundsApi from \"apis/stripe/holdables/refunds\";\nimport accountsApi from \"apis/stripePlatform/accounts\";\nimport splitsApi from \"apis/stripePlatform/splits\";\nimport transactionsApi from \"apis/stripePlatform/transactions\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchStripePlatformAccount = options =>\n useQuery(\n QUERY_KEYS.STRIPE_PLATFORM_ACCOUNT_DETAILS,\n () => accountsApi.show(),\n options\n );\n\nexport const useFetchStripePlatformSplits = (payload, options = {}) =>\n useQuery(\n [QUERY_KEYS.SPLITS_LIST, payload],\n () => splitsApi.list(payload),\n options\n );\n\nexport const useFetchStripePlatformTransactions = (payload, options) =>\n useQuery(\n [QUERY_KEYS.TRANSACTIONS_LIST, payload],\n () => transactionsApi.list(payload),\n options\n );\n\nexport const useFetchStripePlatformTransaction = (id, options = {}) =>\n useQuery(\n [QUERY_KEYS.STRIPE_PLATFORM_TRANSACTION, id],\n () => transactionsApi.show(id),\n options\n );\n\nexport const useFetchStripeRefunds = (payload, options = {}) =>\n useQuery(\n [QUERY_KEYS.STRIPE_REFUNDS_LIST, payload],\n () => refundsApi.list(payload),\n options\n );\n","import React from \"react\";\n\nimport { Down, Right } from \"neetoicons\";\n\nconst RowExpander = ({ expanded, onExpand, record, expandable }) =>\n expandable &&\n (expanded ? (\n <Down onClick={e => onExpand(record, e)} />\n ) : (\n <Right onClick={e => onExpand(record, e)} />\n ));\n\nexport default RowExpander;\n","import React from \"react\";\n\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchStripePlatformTransaction } from \"hooks/reactQuery/stripe/usePlatformApi\";\nimport { renderDate, renderStatus } from \"utils/renderFunctions\";\n\nimport SubTable from \"./ExpandedRow/SubTable\";\nimport { renderIdentifier } from \"./utils/renderFunctions\";\n\nconst Details = ({ transactionId, ...paneProps }) => {\n const { t } = useTranslation();\n\n const {\n isLoading,\n data: {\n amount,\n netAmount,\n status,\n paymentAt,\n identifier,\n live,\n splits = [],\n } = {},\n } = useFetchStripePlatformTransaction(transactionId);\n\n return (\n <Pane {...paneProps} size=\"large\">\n <Pane.Header>\n <Typography style=\"h2\">Transaction Details</Typography>\n </Pane.Header>\n <Pane.Body>\n {isLoading ? (\n <PageLoader />\n ) : (\n <div className=\"w-full space-y-6 p-2\">\n <div className=\"w-full space-y-2\">\n <div className=\"grid grid-cols-2 gap-y-2\">\n <Typography style=\"body2\">\n {t(\"transactionPane.transactionId\")}\n </Typography>\n <Typography style=\"body2\">\n {renderIdentifier({ identifier, live })}\n </Typography>\n <Typography style=\"body2\">\n {t(\"transactionPane.amount\")}\n </Typography>\n <Typography style=\"body2\">{amount}</Typography>\n <Typography style=\"body2\">\n {t(\"transactionPane.netAmount\")}\n </Typography>\n <Typography style=\"body2\">{netAmount}</Typography>\n <Typography style=\"body2\">\n {t(\"transactionPane.status\")}\n </Typography>\n {renderStatus(\"transaction\", status)}\n <Typography style=\"body2\">\n {t(\"transactionPane.paidOn\")}\n </Typography>\n <Typography style=\"body2\">{renderDate(paymentAt)}</Typography>\n </div>\n </div>\n <Typography style=\"h3\">Splits</Typography>\n <SubTable className=\"ml-0 w-full\" data={splits} />\n </div>\n )}\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default Details;\n","import React, { useEffect, useState } from \"react\";\n\nimport { isPresent } from \"neetocommons/pure\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData } from \"neetoui\";\nimport { assoc, isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchConnectedStripeAccount } from \"hooks/reactQuery/stripe/useConnectApi\";\nimport { useFetchStripePlatformAccount } from \"hooks/reactQuery/stripe/usePlatformApi\";\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { INITIAL_PANE_STATUS, TAB, TABS, TAB_METADATA } from \"./constants\";\nimport ExpandedRow from \"./ExpandedRow\";\nimport { useFetchData } from \"./hooks/useFetchData\";\nimport RowExpander from \"./RowExpander\";\nimport TransactionPane from \"./TransactionPane\";\nimport { buildPaymentColumns, isPlatformKind, isRefundKind } from \"./utils\";\n\nconst List = ({\n isPlatformEnabled = false,\n kind,\n holdableId = null,\n filters,\n setIsFilterButtonVisible,\n pageProperties,\n payableEntityColumns,\n setPageProperties,\n tab,\n handleTabChange,\n setDataSize,\n}) => {\n const [paneStatus, setPaneStatus] = useState(INITIAL_PANE_STATUS);\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const { t } = useTranslation();\n const tabs = TABS.filter(tab => !TAB_METADATA[tab]?.isHidden?.[kind]);\n const columnData = buildPaymentColumns({\n tab,\n kind,\n payableEntityColumns,\n specialColumnArguments: { setPaneStatus },\n });\n\n const {\n isLoading: isStripePlatformAccountLoading,\n data: { platformAccount: stripePlatformAccount } = {},\n } = useFetchStripePlatformAccount({ enabled: isPlatformEnabled });\n\n const {\n isLoading: isStripeAccountLoading,\n data: { account: stripeConnectedAccount } = {},\n } = useFetchConnectedStripeAccount(holdableId);\n\n const { data, isDataLoading, dataSize } = useFetchData({\n kind,\n holdableId,\n payload: buildPayload({ tab, filters, pageProperties }),\n isPlatformEnabled,\n });\n\n const isStripeAccountConnected =\n stripeConnectedAccount?.isConnected || stripePlatformAccount?.isConnected;\n\n useEffect(() => {\n setIsFilterButtonVisible(isPresent(data) || isPresent(filters));\n setDataSize(dataSize);\n }, [data]);\n\n const handleTablePaginaton = (index, size) => {\n urlSearchParams.set(\"page\", index);\n urlSearchParams.set(\"size\", size);\n history.push({ search: urlSearchParams.toString() });\n setPageProperties(assoc(tab, { index, size }));\n };\n\n useEffect(() => {\n const tab = urlSearchParams.get(\"tab\") || TAB.all;\n\n const validatedTab = tabs.includes(tab) ? tab : TAB.all;\n const pageIndex =\n Number(urlSearchParams.get(\"page\")) || pageProperties[tab]?.index;\n\n const pageSize =\n Number(urlSearchParams.get(\"size\")) || pageProperties[tab]?.size;\n\n handleTabChange(validatedTab);\n urlSearchParams.set(\"tab\", validatedTab);\n handleTablePaginaton(pageIndex, pageSize);\n }, [urlSearchParams]);\n\n if (\n isStripeAccountLoading ||\n isStripePlatformAccountLoading ||\n isDataLoading\n ) {\n return <PageLoader />;\n }\n\n if ((!isStripeAccountConnected && dataSize <= 0) || !isPresent(data)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n isRefundKind(kind)\n ? t(\"emptyState.refund\")\n : t(\"emptyState.payment\")\n }\n />\n </div>\n );\n }\n\n return (\n <>\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.size}>\n <Table\n fixedHeight\n allowRowClick={false}\n {...{ columnData }}\n currentPageNumber={pageProperties[tab]?.index}\n handlePageChange={handleTablePaginaton}\n rowData={buildRowData({ data, pageProperties, tab })}\n rowSelection={false}\n totalCount={dataSize}\n expandable={{\n expandedRowRender: ExpandedRow,\n showExpandColumn: isPlatformKind(kind),\n rowExpandable: record =>\n !(isEmpty(record.splits) && isEmpty(record.refunds)),\n columnWidth: \"64px\",\n expandIcon: RowExpander,\n }}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties[tab]?.size,\n total: dataSize,\n }}\n />\n </TableWrapper>\n <TransactionPane\n {...paneStatus}\n onClose={() => setPaneStatus(INITIAL_PANE_STATUS)}\n />\n </>\n );\n};\n\nexport default List;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport withReactQuery from \"components/Common/withReactQuery\";\n\nimport { useFiltersAndPagination } from \"./hooks/useFiltersAndPagination\";\nimport List from \"./List\";\n\nconst Dashboard = ({\n isPlatformEnabled = false,\n searchProps,\n headerProps = {},\n holdableId = null,\n payableEntityColumns = [],\n kind = \"connected\",\n}) => {\n const { t } = useTranslation();\n const {\n searchTerm,\n pageProperties,\n filterableColumns,\n isFilterButtonVisible,\n isFilterPaneOpen,\n filters,\n tabs,\n tab,\n dataSize,\n setSearchTerm,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setFilters,\n setPageProperties,\n handleTabChange,\n setDataSize,\n } = useFiltersAndPagination({ payableEntityColumns, kind });\n\n const isTabsVisible = isFilterButtonVisible || tab !== \"all\";\n\n const searchKeywordProps = {\n ...searchProps,\n value: searchTerm.trim(),\n setValue: setSearchTerm,\n };\n\n return (\n <>\n <Header\n title={t(`title.${kind}`)}\n {...headerProps}\n searchProps={{\n onChange: ({ target: { value } }) => setSearchTerm(value),\n value: searchTerm,\n placeholder: searchKeywordProps.placeholder,\n className: \"w-80\",\n }}\n />\n {isTabsVisible && (\n <Tab>\n {tabs.map(item => (\n <Tab.Item\n active={tab === item}\n key={item}\n onClick={() => handleTabChange(item)}\n >\n {t(`common.${item}`)}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <SubHeader\n className=\"mt-4\"\n leftActionBlock={\n isTabsVisible && (\n <Typography\n className=\"neeto-ui-gray-800 mr-2 font-semibold\"\n component=\"h4\"\n >\n {t(`countOf.${kind}`, { count: dataSize })}\n </Typography>\n )\n }\n rightActionBlock={\n <>\n <FiltersBar\n columns={filterableColumns}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={setFilters}\n />\n {isFilterButtonVisible && (\n <SubHeader.RightBlock\n filterProps={{\n columns: filterableColumns,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: setFilters,\n }}\n />\n )}\n </>\n }\n />\n <List\n {...{\n filters,\n handleTabChange,\n holdableId,\n isPlatformEnabled,\n kind,\n pageProperties,\n payableEntityColumns,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n tab,\n }}\n />\n </>\n );\n};\n\nexport default withTitle(withReactQuery(Dashboard), t(\"common.payments\"));\n","import { useState } from \"react\";\n\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { useHistory } from \"react-router-dom\";\n\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { TAB, TABS, TAB_METADATA } from \"../constants\";\nimport { buildFilterColumns } from \"../utils\";\n\nexport const useFiltersAndPagination = ({ payableEntityColumns, kind }) => {\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const tabs = TABS.filter(tab => !TAB_METADATA[tab]?.isHidden?.[kind]);\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(tabs)\n );\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [tab, setTab] = useState(TAB.all);\n const filterableColumns = buildFilterColumns(tab, kind, payableEntityColumns);\n const [filters, setFilters] = useState(\n buildFiltersFromURL(filterableColumns)\n );\n const [dataSize, setDataSize] = useState(0);\n\n const handleTabChange = tab => {\n urlSearchParams.set(\"tab\", tab);\n urlSearchParams.set(\"page\", pageProperties[tab]?.index);\n urlSearchParams.set(\"size\", pageProperties[tab]?.size);\n history.push({ search: urlSearchParams.toString() });\n setTab(tab);\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchTerm,\n tabs,\n tab,\n dataSize,\n filterableColumns,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n setSearchTerm,\n setTab,\n handleTabChange,\n setDataSize,\n };\n};\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import { useEffect, useState } from \"react\";\n\nconst useSquarePayment = () => {\n const [instance, setInstance] = useState();\n const applicationId = process.env.SQUARE_APPLICATION_ID;\n const locationId = process.env.SQUARE_CLIENT_LOCATION;\n\n useEffect(() => {\n const loadPayment = async () => {\n const square = () => import(\"@square/web-sdk\");\n const { payments } = await square();\n\n const paymentInstance = await payments(applicationId, locationId);\n\n if (!paymentInstance) {\n throw new Error(\"Square Web Payments SDK failed to load\");\n }\n\n setInstance(paymentInstance);\n };\n\n if (applicationId && locationId) loadPayment();\n }, [applicationId, locationId]);\n\n return instance;\n};\n\nexport default useSquarePayment;\n","export const SQUARE_EVENTS = [\n \"focusClassAdded\",\n \"focusClassRemoved\",\n \"errorClassAdded\",\n \"errorClassRemoved\",\n \"cardBrandChanged\",\n \"postalCodeChanged\",\n];\n\nexport const DEFAULT_CARD_CONTAINER_ID = \"square-card-container\";\n\nexport const DEFAULT_SQUARE_CARD_OPTIONS = {};\n","import React from \"react\";\n\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst FilterWrapper = ({\n searchProps,\n headerProps = {},\n children,\n title,\n searchTerm,\n filterableColumns,\n isFilterButtonVisible,\n isFilterPaneOpen,\n tabs,\n tab,\n setSearchTerm,\n setIsFilterPaneOpen,\n setFilters,\n handleTabChange,\n dataSize,\n kind,\n}) => {\n const { t } = useTranslation();\n\n const isTabsVisible = isFilterButtonVisible || tab !== \"all\";\n\n const searchKeywordProps = {\n ...searchProps,\n value: searchTerm.trim(),\n setValue: setSearchTerm,\n };\n\n return (\n <>\n <Header\n {...{ ...headerProps, title }}\n searchProps={{\n onChange: ({ target: { value } }) => setSearchTerm(value),\n value: searchTerm,\n placeholder: searchKeywordProps.placeholder,\n className: \"w-80\",\n }}\n />\n {isTabsVisible && (\n <Tab>\n {tabs.map(item => (\n <Tab.Item\n active={tab === item}\n key={item}\n onClick={() => handleTabChange(item)}\n >\n {t(`common.${item}`)}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <SubHeader\n className=\"mt-4\"\n leftActionBlock={\n isTabsVisible && (\n <Typography\n className=\"neeto-ui-gray-800 mr-2 font-semibold\"\n component=\"h4\"\n >\n {t(`countOf.${kind}`, { count: dataSize })}\n </Typography>\n )\n }\n rightActionBlock={\n <>\n <FiltersBar\n columns={filterableColumns}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={setFilters}\n />\n {isFilterButtonVisible && (\n <SubHeader.RightBlock\n filterProps={{\n columns: filterableColumns,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: setFilters,\n }}\n />\n )}\n </>\n }\n />\n {children}\n </>\n );\n};\n\nexport default FilterWrapper;\n","export const TAB = {\n all: \"all\",\n completed: \"completed\",\n pending: \"pending\",\n rejected: \"rejected\",\n failed: \"failed\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const TAB_METADATA = {\n all: {},\n completed: {},\n pending: { isHidden: { squarePayment: true } },\n rejected: { isHidden: { squarePayment: true } },\n failed: { isHidden: { squareRefund: true } },\n};\n\nexport const STATUSES = [\n { title: \"completed\" },\n { title: \"pending\", isHidden: { squarePayment: true } },\n { title: \"rejected\", isHidden: { squarePayment: true } },\n { title: \"failed\", isHidden: { squareRefund: true } },\n];\n","import React from \"react\";\n\nimport { Button, Tooltip } from \"neetoui\";\n\nexport const renderIdentifier = ({ identifier = \"\", receiptUrl = \"\" } = {}) => (\n <Button\n href={receiptUrl}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n);\n\nexport const truncatedText = ({ identifier }) => (\n <Tooltip content={identifier} position=\"top\">\n <div className=\"w-64 truncate\">{identifier}</div>\n </Tooltip>\n);\n","import { t } from \"i18next\";\n\nimport { renderDate, renderStatus } from \"utils/renderFunctions\";\n\nimport { renderIdentifier, truncatedText } from \"../utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n title: t(\"common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: \"72px\",\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: \"290px\",\n render: renderIdentifier,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: renderStatus(\"payment\"),\n },\n {\n title: t(\"common.identifier\"),\n dataIndex: \"identifier\",\n key: \"refundIdentifier\",\n width: \"290px\",\n render: truncatedText,\n },\n {\n title: t(\"common.status\"),\n dataIndex: \"status\",\n key: \"refundStatus\",\n render: renderStatus(\"refund\"),\n },\n {\n title: t(\"common.paymentIdentifier\"),\n dataIndex: \"payment\",\n key: \"paymentIdentifier\",\n width: \"290px\",\n render: renderIdentifier,\n },\n {\n title: t(\"common.amount\"),\n dataIndex: \"amount\",\n key: \"amount\",\n width: \"150px\",\n },\n {\n title: t(\"common.paymentTime\"),\n dataIndex: \"updatedAt\",\n key: \"paymentTime\",\n width: \"220px\",\n render: renderDate,\n },\n];\n\nexport const COLUMN_METADATA = {\n identifier: { isHidden: { squareRefund: true } },\n status: {\n isHidden: { squareRefund: true, completed: true, failed: true },\n },\n refundIdentifier: { isHidden: { squarePayment: true } },\n refundStatus: {\n isHidden: {\n squarePayment: true,\n completed: true,\n pending: true,\n rejected: true,\n },\n },\n paymentIdentifier: { isHidden: { squarePayment: true } },\n};\n","import { filterBy, toLabelAndValue } from \"neetocommons/pure\";\nimport { __, assoc, equals, includes, map, pluck, prop } from \"ramda\";\n\nimport { FILTER_COLUMNS } from \"src/constants\";\n\nimport { STATUSES, TAB } from \"../constants\";\nimport { COLUMNS, COLUMN_METADATA } from \"../constants/columns\";\n\nconst isStatusTab = includes(__, [TAB.successful, TAB.pending, TAB.declined]);\nconst mapToLabelAndValues = map(toLabelAndValue);\n\nconst buildStatuses = kind =>\n pluck(\n \"title\",\n STATUSES.filter(({ isHidden }) => !isHidden?.[kind])\n );\nexport const isRefundKind = equals(\"squareRefund\");\nexport const isPaymentKind = equals(\"squarePayment\");\n\nexport const buildFilterColumns = (tab, kind, payableEntityColumns = []) => {\n const payableFilterColumns = map(\n prop(\"filterProps\"),\n filterBy({ isFilterable: true }, payableEntityColumns)\n );\n\n if (isStatusTab(tab)) {\n return [FILTER_COLUMNS[0], ...payableFilterColumns];\n }\n\n return [\n FILTER_COLUMNS[0],\n assoc(\n \"values\",\n mapToLabelAndValues(buildStatuses(kind)),\n FILTER_COLUMNS[1]\n ),\n ...payableFilterColumns,\n ];\n};\n\nexport const buildPaymentColumns = ({ tab, kind, payableEntityColumns = [] }) =>\n COLUMNS.filter(\n ({ key }) =>\n !(\n COLUMN_METADATA[key]?.isHidden?.[kind] ||\n COLUMN_METADATA[key]?.isHidden?.[tab]\n )\n ).concat(\n payableEntityColumns.filter(\n ({ isHidden }) => !(isHidden?.[tab] || isHidden?.[kind])\n )\n );\n","import { useState } from \"react\";\n\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { useHistory } from \"react-router-dom\";\n\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { buildFilterColumns } from \"../components/SquareDashboard/utils\";\n\nexport const useFiltersAndPagination = ({\n payableEntityColumns,\n kind,\n initialTabs,\n tabMetaData,\n}) => {\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const tabs = initialTabs.filter(tab => !tabMetaData[tab]?.isHidden?.[kind]);\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(tabs)\n );\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [tab, setTab] = useState(\"all\");\n const filterableColumns = buildFilterColumns(tab, kind, payableEntityColumns);\n const [filters, setFilters] = useState(\n buildFiltersFromURL(filterableColumns)\n );\n const [dataSize, setDataSize] = useState(0);\n\n const handleTabChange = tab => {\n urlSearchParams.set(\"tab\", tab);\n urlSearchParams.set(\"page\", pageProperties[tab]?.index);\n urlSearchParams.set(\"size\", pageProperties[tab]?.size);\n history.push({ search: urlSearchParams.toString() });\n setTab(tab);\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchTerm,\n tabs,\n tab,\n filterableColumns,\n dataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n setSearchTerm,\n setTab,\n handleTabChange,\n setDataSize,\n };\n};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultShow = () =>\n axios.get(`${BASE_URL}/api/v1/square/holdable/account`);\n\nconst show = holdableId =>\n axios.get(`${BASE_URL}/api/v1/square/holdables/${holdableId}/account`);\n\nconst accountsApi = { show, defaultShow };\n\nexport default accountsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultList = payload =>\n axios.get(`${BASE_URL}/api/v1/square/holdable/payments`, {\n params: payload,\n });\n\nconst list = (holdableId, payload) =>\n axios.get(`${BASE_URL}/api/v1/square/holdables/${holdableId}/payments`, {\n params: payload,\n });\n\nconst paymentsApi = { defaultList, list };\n\nexport default paymentsApi;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst defaultList = payload =>\n axios.get(`${BASE_URL}/api/v1/square/holdable/refunds`, {\n params: payload,\n });\n\nconst list = (holdableId, payload) =>\n axios.get(`${BASE_URL}/api/v1/square/holdables/${holdableId}/refunds`, {\n params: payload,\n });\n\nconst refundsapi = { defaultList, list };\n\nexport default refundsapi;\n","import {\n useFetchSquarePayments,\n useFetchSquareRefunds,\n} from \"hooks/reactQuery/square/useSquareApi\";\n\nimport { isPaymentKind, isRefundKind } from \"../utils\";\n\nexport const useFetchSquareData = ({ kind, holdableId, payload }) => {\n const data = {};\n data.squarePayment = useFetchSquarePayments(holdableId, payload, {\n enabled: isPaymentKind(kind),\n });\n\n data.squareRefund = useFetchSquareRefunds(holdableId, payload, {\n enabled: isRefundKind(kind),\n });\n\n return {\n data: isPaymentKind(kind)\n ? data[kind]?.data?.payments\n : data[kind]?.data?.refunds,\n dataSize: data[kind]?.data?.views?.[payload?.tab],\n isDataLoading: data[kind]?.isLoading,\n };\n};\n","import { isPresent } from \"neetocommons/pure\";\nimport { useQuery } from \"react-query\";\n\nimport accountsApi from \"apis/square/accounts\";\nimport paymentsApi from \"apis/square/payments\";\nimport refundsApi from \"apis/square/refunds\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchSquareAccount = (holdableId, options = {}) =>\n useQuery(\n [QUERY_KEYS.SQUARE_ACCOUNT_DETAILS, holdableId],\n () => {\n if (isPresent(holdableId)) return accountsApi.show(holdableId);\n\n return accountsApi.defaultShow();\n },\n options\n );\n\nexport const useFetchSquarePayments = (\n holdableId = \"\",\n payload = {},\n options = {}\n) =>\n useQuery(\n [QUERY_KEYS.SQUARE_PAYMENTS_LIST, payload],\n () => {\n if (isPresent(holdableId)) return paymentsApi.list(holdableId, payload);\n\n return paymentsApi.defaultList(payload);\n },\n options\n );\n\nexport const useFetchSquareRefunds = (\n holdableId = \"\",\n payload = {},\n options = {}\n) =>\n useQuery(\n [QUERY_KEYS.SQUARE_REFUNDS_LIST, payload],\n () => {\n if (isPresent(holdableId)) return refundsApi.list(holdableId, payload);\n\n return refundsApi.defaultList(payload);\n },\n options\n );\n","import React, { useEffect } from \"react\";\n\nimport { isPresent } from \"neetocommons/pure\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData } from \"neetoui\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchSquareAccount } from \"hooks/reactQuery/square/useSquareApi\";\nimport useURLSearchParams from \"hooks/useURLSearchParams\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { TAB } from \"./constants\";\nimport { useFetchSquareData } from \"./hooks/useSquareFetchData\";\nimport { buildPaymentColumns, isRefundKind } from \"./utils\";\n\nconst List = ({\n kind,\n holdableId = null,\n filters,\n setIsFilterButtonVisible,\n pageProperties,\n payableEntityColumns,\n setPageProperties,\n tab,\n tabs,\n handleTabChange,\n setDataSize,\n}) => {\n const urlSearchParams = useURLSearchParams();\n const history = useHistory();\n const { t } = useTranslation();\n const columnData = buildPaymentColumns({\n tab,\n kind,\n payableEntityColumns,\n });\n\n const {\n isLoading: isSquareAccountLoading,\n data: { account: squareAccount } = {},\n } = useFetchSquareAccount(holdableId);\n\n const { data, isDataLoading, dataSize } = useFetchSquareData({\n kind,\n holdableId,\n payload: buildPayload({ tab, filters, pageProperties }),\n });\n\n useEffect(() => {\n setIsFilterButtonVisible(isPresent(data) || isPresent(filters));\n setDataSize(dataSize);\n }, [data]);\n\n const handleTablePaginaton = (index, size) => {\n urlSearchParams.set(\"page\", index);\n urlSearchParams.set(\"size\", size);\n history.push({ search: urlSearchParams.toString() });\n setPageProperties(assoc(tab, { index, size }));\n };\n\n useEffect(() => {\n const tab = urlSearchParams.get(\"tab\") || TAB.all;\n\n const validatedTab = tabs.includes(tab) ? tab : TAB.all;\n const pageIndex =\n Number(urlSearchParams.get(\"page\")) || pageProperties[tab]?.index;\n\n const pageSize =\n Number(urlSearchParams.get(\"size\")) || pageProperties[tab]?.size;\n\n handleTabChange(validatedTab);\n urlSearchParams.set(\"tab\", validatedTab);\n handleTablePaginaton(pageIndex, pageSize);\n }, [urlSearchParams]);\n\n if (isSquareAccountLoading || isDataLoading) {\n return <PageLoader />;\n }\n\n if ((!squareAccount?.isConnected && dataSize <= 0) || !isPresent(data)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n isRefundKind(kind)\n ? t(\"emptyState.refund\")\n : t(\"emptyState.payment\")\n }\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.size}>\n <Table\n fixedHeight\n allowRowClick={false}\n {...{ columnData }}\n currentPageNumber={pageProperties[tab]?.index}\n handlePageChange={handleTablePaginaton}\n rowData={buildRowData({ data, pageProperties, tab })}\n rowSelection={false}\n totalCount={dataSize}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties[tab]?.size,\n total: dataSize,\n }}\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { withTitle } from \"neetocommons/react-utils\";\n\nimport FilterWrapper from \"components/Common/FilterWrapper\";\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { useFiltersAndPagination } from \"hooks/useFiltersAndPagination\";\n\nimport { TABS, TAB_METADATA } from \"./constants\";\nimport List from \"./List\";\nimport { isPaymentKind } from \"./utils\";\n\nconst SquareDashboard = ({\n searchProps,\n headerProps = {},\n holdableId = null,\n payableEntityColumns = [],\n kind = \"squarePayment\",\n}) => {\n const filterPaginationState = useFiltersAndPagination({\n payableEntityColumns,\n kind,\n initialTabs: TABS,\n tabMetaData: TAB_METADATA,\n });\n\n const {\n filters,\n setIsFilterButtonVisible,\n pageProperties,\n setPageProperties,\n tab,\n tabs,\n handleTabChange,\n setDataSize,\n } = filterPaginationState;\n\n return (\n <FilterWrapper\n title={\n isPaymentKind(kind) ? t(\"title.squarePayment\") : t(\"title.squareRefund\")\n }\n {...{ headerProps, kind, searchProps, ...filterPaginationState }}\n >\n <List\n {...{\n filters,\n handleTabChange,\n holdableId,\n kind,\n pageProperties,\n payableEntityColumns,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n tab,\n tabs,\n }}\n />\n </FilterWrapper>\n );\n};\n\nexport default withTitle(\n withReactQuery(SquareDashboard),\n t(\"common.squarePayments\")\n);\n","var l=(e,r,t)=>new Promise((n,i)=>{var d=o=>{try{c(t.next(o))}catch(a){i(a)}},m=o=>{try{c(t.throw(o))}catch(a){i(a)}},c=o=>o.done?n(o.value):Promise.resolve(o.value).then(d,m);c((t=t.apply(e,r)).next())});function f(e){return document.querySelector(`script[src=\"${e}\"]`)}function S(e){let r=document.head||document.body;if(!r)throw new Error(\"Square.js requires a <body> or <head> element.\");let t=document.createElement(\"script\");return t.src=e,r.appendChild(t),t}var s=null;function p(e){return s!==null||(s=new Promise((r,t)=>{if(typeof window==\"undefined\"){r(null);return}if(window.Square){r(window.Square);return}try{let n=f(e);n||(n=S(e)),n.addEventListener(\"load\",()=>{window.Square?r(window.Square):t(new Error(\"Square.js failed to load properly.\"))}),n.addEventListener(\"error\",()=>{t(new Error(\"Error occurred while loading Square.js\"))})}catch(n){t(n)}})),s}var w=\"v1\",u=class extends Error{constructor(r=\"The Payment 'applicationId' option is not in the correct format.\"){super(r);this.name=\"InvalidApplicationIdError\",Object.setPrototypeOf(this,u.prototype)}};function q(e){let r=\"\";if(e.startsWith(\"sq0idp-\")&&(r=\"https://web.squarecdn.com/\"),e.startsWith(\"sandbox-sq0idb-\")&&(r=\"https://sandbox.web.squarecdn.com/\"),r.length===0)throw new u;return r+=`${w}/square.js`,r}function E(e,r,t){return l(this,null,function*(){let n=(t==null?void 0:t.scriptSrc)!==void 0?t.scriptSrc:q(e),i=yield p(n);return i===null?null:i.payments(e,r)})}export{E as payments};\n","var V3_URL = 'https://js.stripe.com/v3';\nvar V3_URL_REGEX = /^https:\\/\\/js\\.stripe\\.com\\/v3\\/?(\\?.*)?$/;\nvar EXISTING_SCRIPT_MESSAGE = 'loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used';\nvar findScript = function findScript() {\n var scripts = document.querySelectorAll(\"script[src^=\\\"\".concat(V3_URL, \"\\\"]\"));\n\n for (var i = 0; i < scripts.length; i++) {\n var script = scripts[i];\n\n if (!V3_URL_REGEX.test(script.src)) {\n continue;\n }\n\n return script;\n }\n\n return null;\n};\n\nvar injectScript = function injectScript(params) {\n var queryString = params && !params.advancedFraudSignals ? '?advancedFraudSignals=false' : '';\n var script = document.createElement('script');\n script.src = \"\".concat(V3_URL).concat(queryString);\n var headOrBody = document.head || document.body;\n\n if (!headOrBody) {\n throw new Error('Expected document.body not to be null. Stripe.js requires a <body> element.');\n }\n\n headOrBody.appendChild(script);\n return script;\n};\n\nvar registerWrapper = function registerWrapper(stripe, startTime) {\n if (!stripe || !stripe._registerWrapper) {\n return;\n }\n\n stripe._registerWrapper({\n name: 'stripe-js',\n version: \"1.52.1\",\n startTime: startTime\n });\n};\n\nvar stripePromise = null;\nvar loadScript = function loadScript(params) {\n // Ensure that we only attempt to load Stripe.js at most once\n if (stripePromise !== null) {\n return stripePromise;\n }\n\n stripePromise = new Promise(function (resolve, reject) {\n if (typeof window === 'undefined' || typeof document === 'undefined') {\n // Resolve to null when imported server side. This makes the module\n // safe to import in an isomorphic code base.\n resolve(null);\n return;\n }\n\n if (window.Stripe && params) {\n console.warn(EXISTING_SCRIPT_MESSAGE);\n }\n\n if (window.Stripe) {\n resolve(window.Stripe);\n return;\n }\n\n try {\n var script = findScript();\n\n if (script && params) {\n console.warn(EXISTING_SCRIPT_MESSAGE);\n } else if (!script) {\n script = injectScript(params);\n }\n\n script.addEventListener('load', function () {\n if (window.Stripe) {\n resolve(window.Stripe);\n } else {\n reject(new Error('Stripe.js not available'));\n }\n });\n script.addEventListener('error', function () {\n reject(new Error('Failed to load Stripe.js'));\n });\n } catch (error) {\n reject(error);\n return;\n }\n });\n return stripePromise;\n};\nvar initStripe = function initStripe(maybeStripe, args, startTime) {\n if (maybeStripe === null) {\n return null;\n }\n\n var stripe = maybeStripe.apply(undefined, args);\n registerWrapper(stripe, startTime);\n return stripe;\n}; // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\n// own script injection.\n\nvar stripePromise$1 = Promise.resolve().then(function () {\n return loadScript(null);\n});\nvar loadCalled = false;\nstripePromise$1[\"catch\"](function (err) {\n if (!loadCalled) {\n console.warn(err);\n }\n});\nvar loadStripe = function loadStripe() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n loadCalled = true;\n var startTime = Date.now();\n return stripePromise$1.then(function (maybeStripe) {\n return initStripe(maybeStripe, args, startTime);\n });\n};\n\nexport { loadStripe };\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocommons/pure\";\nimport { Spinner } from \"neetoui\";\n\nimport useSquarePayment from \"hooks/useSquarePayment\";\n\nimport {\n DEFAULT_CARD_CONTAINER_ID,\n DEFAULT_SQUARE_CARD_OPTIONS,\n SQUARE_EVENTS,\n} from \"./constants\";\n\nconst SquareCard = ({\n card,\n setCard,\n id = DEFAULT_CARD_CONTAINER_ID,\n onChange = noop,\n options = DEFAULT_SQUARE_CARD_OPTIONS,\n disabled = false,\n}) => {\n const payments = useSquarePayment();\n\n useEffect(() => {\n const fetchCard = async () => {\n const cardResponse = await payments?.card();\n await cardResponse?.attach(`#${id}`);\n setCard(cardResponse || null);\n };\n\n fetchCard();\n }, [payments, id]);\n\n useEffect(\n () =>\n SQUARE_EVENTS.forEach(event => card?.addEventListener(event, onChange)),\n [card, onChange]\n );\n\n useEffect(() => {\n card?.configure(options);\n }, [card, options]);\n\n return (\n <div\n id={id}\n className={classNames({\n \"pointer-events-none\": disabled,\n \"text-center\": !card,\n })}\n >\n {!card && <Spinner />}\n </div>\n );\n};\n\nexport default SquareCard;\n","import { useState } from \"react\";\n\nconst useSquareCard = () => {\n const [card, setCard] = useState(() => undefined);\n\n const tokenizeCard = async () => {\n if (!card) {\n logger.warn(\n \"Credit Card button was clicked, but no Credit Card instance was found.\"\n );\n\n return \"\";\n }\n\n try {\n const result = await card.tokenize();\n\n if (result?.errors) {\n const message = `Status: ${result.status} and Errors: ${JSON.stringify(\n result?.errors\n )}`;\n\n throw new Error(message);\n }\n\n return result?.token;\n } catch (error) {\n logger.error(error);\n\n return \"\";\n }\n };\n\n return { card, setCard, tokenizeCard };\n};\n\nexport default useSquareCard;\n","import { useMemo } from \"react\";\n\nimport { globalProps } from \"neetocommons/initializers\";\nimport { isNotPresent } from \"neetocommons/pure\";\n\nconst useStripePromise = stripeAccountIdentifier => {\n const stripePromise = useMemo(async () => {\n if (isNotPresent(stripeAccountIdentifier)) return null;\n\n const stripeJs = () => import(\"@stripe/stripe-js\");\n\n try {\n const { loadStripe } = await stripeJs();\n\n return await loadStripe(globalProps?.stripePublishableKey, {\n stripeAccount: stripeAccountIdentifier,\n });\n } catch (error) {\n logger.error(error);\n }\n\n return null;\n }, [stripeAccountIdentifier]);\n\n return stripePromise;\n};\n\nexport default useStripePromise;\n"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_toPropertyKey","arg","key","input","hint","prim","toPrimitive","undefined","res","call","String","Number","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","toPropertyKey","_createClass","protoProps","staticProps","_assertThisInitialized","self","ReferenceError","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_inherits","subClass","superClass","create","value","_possibleConstructorReturn","assertThisInitialized","_getPrototypeOf","getPrototypeOf","_defineProperty","_arrayWithHoles","arr","Array","isArray","_iterableToArray","iter","from","_arrayLikeToArray","len","arr2","_unsupportedIterableToArray","minLen","arrayLikeToArray","n","toString","slice","name","test","_nonIterableRest","ownKeys$6","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread$6","arguments","source","forEach","getOwnPropertyDescriptors","defineProperties","consoleLogger","type","log","args","this","output","warn","error","console","baseLogger","Logger","concreteLogger","options","init","prefix","logger","debug","bool","_len","_key","forward","_len2","_key2","_len3","_key3","_len4","_key4","lvl","debugOnly","concat","moduleName","EventEmitter","observers","events","listener","_this","split","event","l","observer","defer","rej","promise","Promise","resolve","reject","makeString","getLastOfPath","path","Empty","cleanKey","indexOf","replace","canNotTraverseDeeper","stack","shift","hasOwnProperty","k","setPath","newValue","_getLastOfPath","getPath","_getLastOfPath3","getPathWithDefaults","data","defaultData","deepExtend","overwrite","prop","regexEscape","str","_entityMap","escape","s","isIE10","window","navigator","userAgentData","userAgent","chars","ownKeys$5","_objectSpread$5","_createSuper$3","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","_isNativeReflectConstruct$3","result","Super","NewTarget","deepFind","keySeparator","paths","current","j","join","mix","endsWith","joinedPath","ResourceStore","_EventEmitter","_super","ns","defaultNS","ignoreJSONStructure","index","splice","lng","silent","addNamespaces","emit","resources","m","addResource","deep","pack","hasResourceBundle","removeNamespaces","getResource","compatibilityAPI","getDataByLanguage","find","v","postProcessor","processors","addPostProcessor","module","handle","translator","processor","process","ownKeys$4","_objectSpread$4","_createSuper$2","_isNativeReflectConstruct$2","checkedLoadedFor","Translator","services","a","t","copy","language","interpolation","resolved","nsSeparator","namespaces","wouldCheckForNsInKey","seemsNaturalLanguage","userDefinedKeySeparator","userDefinedNsSeparator","possibleChars","c","r","RegExp","map","matched","ki","substring","looksLikeObjectPath","match","interpolator","nestingRegexp","parts","lastKey","_this2","overloadTranslationOptionHandler","returnDetails","_this$extractFromKey","extractFromKey","namespace","appendNamespaceToCIMode","toLowerCase","usedKey","exactUsedKey","usedLng","usedNS","resUsedKey","resExactUsedKey","resType","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","returnObjects","returnedObjectHandler","resTypeIsArray","newKeyToUse","deepKey","translate","extendTranslation","usedDefault","needsPluralHandling","count","hasDefaultValue","defaultValueSuffix","pluralResolver","getSuffix","defaultValue","isValidLookup","resForMissing","missingKeyNoValueFallbackToKey","updateMissing","fk","lngs","fallbackLngs","languageUtils","getFallbackCodes","fallbackLng","saveMissingTo","toResolveHierarchy","send","specificDefaultValue","defaultForMissing","missingKeyHandler","backendConnector","saveMissing","saveMissingPlurals","getSuffixes","suffix","appendNamespaceToMissingKey","parseMissingKeyHandler","_this3","parse","defaultVariables","skipInterpolation","nestBef","skipOnVariables","nb","interpolate","na","nest","context","reset","postProcess","postProcessorNames","applyPostProcessor","postProcessPassResolved","i18nResolved","found","_this4","extracted","fallbackNS","needsZeroSuffixLookup","ordinal","shouldUseIntlApi","needsContextHandling","codes","utils","hasLoadedNamespace","code","possibleKey","finalKeys","addLookupKeys","pluralSuffix","zeroSuffix","pluralSeparator","contextKey","contextSeparator","pop","returnNull","returnEmptyString","resourceStore","option","capitalize","string","charAt","toUpperCase","LanguageUtil","supportedLngs","formatLanguageCode","specialCases","lowerCaseLng","part","cleanCode","load","nonExplicitSupportedLngs","getLanguagePartFromCode","cleanedLng","isSupportedCode","lngOnly","supportedLng","fallbacks","getScriptPartFromCode","fallbackCode","fallbackCodes","addCode","fc","sets","nr","_rulesPluralsTypes","deprecatedJsonVersions","suffixesOrder","zero","one","two","few","many","other","PluralResolver","rules","compatibilityJSON","Intl","PluralRules","set","numbers","plurals","_unused","rule","getRule","resolvedOptions","pluralCategories","sort","pluralCategory1","pluralCategory2","pluralCategory","prepend","number","select","getSuffixRetroCompatible","idx","noAbs","Math","abs","simplifyPluralSuffix","returnSuffix","includes","ownKeys$3","_objectSpread$3","Interpolator","format","escapeValue","iOpts","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapePrefix","unescapeSuffix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","resetRegExp","regexpStr","regexp","regexpUnescapeStr","regexpUnescape","nestingRegexpStr","replaces","regexSafe","val","handleFormat","interpolationkey","trim","f","missingInterpolationHandler","regex","safeValue","todo","exec","matchedVar","temp","lastIndex","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","matchedSingleQuotes","matchedDoubleQuotes","JSON","formatters","doReduce","elem","reduce","ownKeys$2","_objectSpread$2","parseFormatStr","formatStr","formatName","formatOptions","optStr","currency","range","opt","_opt$split","_opt$split2","arrayWithHoles","iterableToArray","unsupportedIterableToArray","nonIterableRest","isNaN","parseInt","createCachedFormatter","fn","cache","stringify","formatter","Formatter","formats","NumberFormat","style","datetime","DateTimeFormat","relativetime","RelativeTimeFormat","list","ListFormat","_format","mem","_parseFormatStr","formatted","valOptions","formatParams","locale","ownKeys$1","_objectSpread$1","_createSuper$1","_isNativeReflectConstruct$1","Connector","backend","store","waitingReads","maxParallelReads","readingCalls","maxRetries","retryTimeout","state","queue","languages","callback","toLoad","pending","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","reload","pendingCount","loaded","errors","err","addResourceBundle","q","_getLastOfPath2","removePending","done","loadedKeys","fcName","tried","wait","resolver","next","read","setTimeout","then","queueLoad","loadOne","prepareLoading","_this5","fallbackValue","isUpdate","clb","opts","get","initImmediate","preload","partialBundledLanguages","ret","tDescription","transformOptions","ownKeys","_objectSpread","_createSuper","_isNativeReflectConstruct","noop","I18n","inst","modules","external","getOwnPropertyNames","isInitialized","isClone","defOpts","createClassOnDemand","ClassOrObject","lu","on","languageDetector","detection","_this2$store","_this2$store2","deferred","finish","initializedStoreOnce","changeLanguage","usedCallback","append","resolvedLanguage","setResolvedLanguage","Error","li","lngInLngs","hasLanguageSomeTranslations","isLanguageChangingTo","setLngProps","setLng","getBestMatchFromCodes","cacheUserLanguage","loadResources","async","detect","keyPrefix","fixedT","rest","resultKey","_this$translator","_this$translator2","exists","_this6","lastLng","loadNotPending","loadState","precheck","preResult","_this7","preloaded","newLngs","_this8","mergedOptions","clone","createInstance","dir","reloadResources","use","getFixedT","_objectWithoutProperties","excluded","sourceKeys","objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_console","setDefaultNamespace","loadNamespaces","loadLanguages","alreadyWarned","warnOnce","Date","i18n","cb","initialized","off","matchHtmlEntity","htmlEntities","unescapeHtmlEntity","i18nInstance","defaultOptions","bindI18n","bindI18nStore","transEmptyNodeValue","transSupportBasicHtmlNodes","transWrapTextNodes","transKeepBasicHtmlNodesFor","useSuspense","unescape","text","initReactI18next","setDefaults","react","setI18n","I18nContext","createContext","ReportNamespaces","usedNamespaces","_slicedToArray","_i","_s","_e","_x","_r","_arr","_n","_d","iterableToArrayLimit","usePrevious","ignore","ref","useRef","useEffect","useTranslation","i18nFromProps","_ref","useContext","i18nFromContext","defaultNSFromContext","reportNamespaces","notReadyT","optsOrDefaultValue","retNotReady","ready","i18nOptions","addUsedNamespaces","every","oldI18nextHasLoadedNamespace","getT","nsMode","_useState2","useState","setT","joinedNS","previousJoinedNS","isMounted","boundReset","isInitial","_extends","assign","en","translation","QUERY_KEYS","queryClient","QueryClient","queryCache","QueryCache","queries","defaultStaleTime","keepPreviousData","onError","Toastr","withReactQuery","Component","React","createElement","QueryClientProvider","client","ReactQueryDevtools","initialIsOpen","position","useURLSearchParams","search","useLocation","useMemo","URLSearchParams","BASE_URL","PAYMENT_STATUS_TYPE","successful","declined","initiated","cancelled","REFUND_STATUS_TYPE","failed","requires_action","canceled","STRIPE_DASHBOARD_LINK","DEFAULT_PAGE_VALUES","DEFAULT_PAGE_INDEX","size","FILTER_COLUMNS","label","node","TAG_STYLE","completed","rejected","buildDefaultPageProperties","tabs","pageProperties","tab","buildPayload","_pageProperties$tab","_pageProperties$tab2","filters","page","limit","buildRowData","_ref2","_ref2$pageProperties","_ref2$tab","element","_pageProperties$tab3","_pageProperties$tab4","payable","identifier","id","isEmpty","TAB","all","TABS","values","TAB_METADATA","isHidden","refund","platform","connected","transfer","INITIAL_PANE_STATUS","transactionId","isOpen","_toConsumableArray","arrayWithoutHoles","nonIterableSpread","buildStripeTransactionLink","isLive","buildStripeSplitLink","buildStripeTransferLink","accountId","renderIdentifier","_ref$identifier","_ref$live","live","Button","href","curry","kind","Tooltip","content","className","Tag","renderSplitIdentifier","Typography","renderTransferIdentifier","_ref3","_ref3$identifier","_ref3$account","account","_ref3$live","startsWith","renderPlatformIdentifier","setPaneStatus","onClick","getTagStyle","status","renderStatus","renderDate","date","DateFormat","DateTime","COLUMNS","title","dataIndex","width","render","COLUMN_METADATA","paymentTime","splitIdentifier","transferIdentifier","refundStatus","refundAmount","refundTime","splitStatus","splitTime","paymentIntent","connectedPayment","refundPaymentIdentifier","refundIdentifier","mapToLabelAndValues","toLabelAndValue","isStatusTab","__","isPlatformKind","equals","isConnectedKind","isSplitKind","isTransferKind","isRefundKind","buildPaymentColumns","_ref$payableEntityCol","payableEntityColumns","_ref$specialColumnArg","specialColumnArguments","generateSpecialColumns","_COLUMN_METADATA$key","_COLUMN_METADATA$key$","_COLUMN_METADATA$key2","_COLUMN_METADATA$key3","buildFilterColumns","payableFilterColumns","filterBy","isFilterable","_isHidden","statuses","_TAB_METADATA$value","_TAB_METADATA$value$i","buildStatuses","statusOptions","assoc","processResponse","splits","refunds","transactions","accountsApi","holdableId","axios","transactionsApi","payload","params","refundsApi","splitsApi","SPLIT_COLUMNS","REFUND_COLUMNS","SubTable","_ref$data","_ref$className","_ref$kind","TableWrapper","hasPagination","Table","fixedHeight","columnData","pagination","rowData","scroll","y","ExpandedRow","_ref$splits","_ref$refunds","useFetchData","_data$kind","_data$kind2","_data$kind2$data","_data$kind2$data$coun","_data$kind3","isPlatformEnabled","useQuery","isPresent","useFetchStripeTransactions","enabled","useFetchStripeRefunds","useFetchStripePlatformTransactions","useFetchStripePlatformSplits","dataSize","counts","isDataLoading","isLoading","RowExpander","expanded","onExpand","record","expandable","Down","Right","Details","paneProps","_excluded","_useFetchStripePlatfo","useFetchStripePlatformTransaction","_useFetchStripePlatfo2","_useFetchStripePlatfo3","amount","netAmount","paymentAt","_useFetchStripePlatfo4","Pane","Header","Body","PageLoader","List","_pageProperties$tab5","_ref$isPlatformEnable","_ref$holdableId","setIsFilterButtonVisible","setPageProperties","handleTabChange","setDataSize","paneStatus","urlSearchParams","history","useHistory","_TAB_METADATA$tab","_TAB_METADATA$tab$isH","isStripePlatformAccountLoading","stripePlatformAccount","platformAccount","_useFetchConnectedStr","useFetchConnectedStripeAccount","isStripeAccountLoading","_useFetchConnectedStr2","stripeConnectedAccount","_useFetchData","isStripeAccountConnected","isConnected","handleTablePaginaton","validatedTab","pageIndex","pageSize","NoData","Fragment","allowRowClick","currentPageNumber","handlePageChange","rowSelection","totalCount","expandedRowRender","showExpandColumn","rowExpandable","columnWidth","expandIcon","paginationProps","showSizeChanger","hideOnSinglePage","total","TransactionPane","onClose","withTitle","searchProps","_ref$headerProps","headerProps","_useFiltersAndPaginat","isFilterButtonVisible","_useState4","isFilterPaneOpen","setIsFilterPaneOpen","_useState6","_useState8","searchTerm","setSearchTerm","_useState10","setTab","filterableColumns","_useState12","buildFiltersFromURL","setFilters","_useState14","useFiltersAndPagination","isTabsVisible","searchKeywordProps","setValue","onChange","placeholder","Tab","item","Item","active","SubHeader","leftActionBlock","component","rightActionBlock","FiltersBar","columns","keyword","setIsPaneOpen","RightBlock","filterProps","setIsOpen","asyncGeneratorStep","gen","_next","_throw","info","_asyncToGenerator","exports","__esModule","require$$0","_regeneratorRuntime","Op","hasOwn","desc","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","method","_invoke","AsyncIterator","PromiseImpl","invoke","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","iterable","iteratorMethod","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","reverse","skipTempReset","prev","stop","rootRecord","rval","exception","loc","caught","hasCatch","hasFinally","finallyEntry","complete","catch","thrown","delegateYield","runtime","regenerator","regeneratorRuntime","accidentalStrictMode","globalThis","Function","SQUARE_EVENTS","DEFAULT_SQUARE_CARD_OPTIONS","FilterWrapper","children","squarePayment","squareRefund","STATUSES","_ref$receiptUrl","receiptUrl","paymentIdentifier","pluck","isPaymentKind","initialTabs","tabMetaData","_tabMetaData$tab","_tabMetaData$tab$isHi","paymentsApi","refundsapi","useFetchSquareData","_data$kind$data","_data$kind3$data","_data$kind3$data$view","_data$kind4","useFetchSquarePayments","useFetchSquareRefunds","payments","views","_ref2$payableEntityCo","_ref4","_useFetchSquareAccoun","useFetchSquareAccount","isSquareAccountLoading","_useFetchSquareAccoun2","squareAccount","_useFetchSquareData","filterPaginationState","d","throw","Square","document","querySelector","head","body","src","appendChild","S","addEventListener","w","u","super","scriptSrc","V3_URL","V3_URL_REGEX","EXISTING_SCRIPT_MESSAGE","stripePromise","loadScript","Stripe","script","scripts","querySelectorAll","findScript","queryString","advancedFraudSignals","headOrBody","injectScript","stripePromise$1","loadCalled","startTime","now","maybeStripe","stripe","_registerWrapper","version","registerWrapper","initStripe","card","setCard","_ref$id","DEFAULT_CARD_CONTAINER_ID","_ref$onChange","_ref$options","_ref$disabled","disabled","setInstance","applicationId","env","SQUARE_APPLICATION_ID","locationId","SQUARE_CLIENT_LOCATION","loadPayment","_callee","square","_yield$square","paymentInstance","_context","useSquarePayment","fetchCard","cardResponse","attach","configure","classNames","Spinner","tokenizeCard","message","tokenize","token","t0","stripeAccountIdentifier","stripeJs","_yield$stripeJs","loadStripe","isNotPresent","globalProps","stripePublishableKey","stripeAccount"],"mappings":"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,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB,MAAO,MAAOpsB,MAAO,OACvB,CAAEosB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"}
|