g(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","__webpack_require__.p = \"/back-office/menu-ui-component-react-v2/\";","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\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\";\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}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\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}","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 _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _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 \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n };\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}","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}","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 _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","var _g, _defs;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgLogo(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 61,\n height: 16,\n viewBox: \"0 0 61 16\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n className: \"logo\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0_2_21115)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M9.80964 2.79998L11.8148 0H0L1.53944 2.1497L1.53846 2.14964L1.66372 2.32325L2.00512 2.79998H2.00769L2.00779 2.80011H2.00512L5.73771 7.9693L0 16H3.45497L3.45503 15.9999H14.565V15.9999H17.1206V9.35377H20.082L22.0871 13.1999L23.537 15.9999H28.5343L31.3106 13.2307V9.35377H33.5008C35.9687 9.35377 37.0483 8.76916 37.0483 8.76916C37.8812 8.4307 38.5599 7.96916 39.0535 7.35378C39.6704 6.58456 40.0097 5.66149 40.0097 4.67688C40.0097 3.78458 39.7321 2.92305 39.2077 2.15383C38.6833 1.41537 37.9429 0.830762 37.0483 0.492303C36.1538 0.153845 35.0432 0 33.7168 0H28.5343V13.1999H25.141L22.8583 8.73839C23.6912 8.39993 24.3698 7.9384 24.8634 7.32301C25.4804 6.55379 25.8197 5.63072 25.8197 4.64612C25.8197 3.75381 25.5421 2.89228 25.0177 2.12306C24.4932 1.3846 23.7529 0.799994 22.8583 0.461535C21.9637 0.153845 20.8532 0 19.5267 0H14.3443V12.0922L14.3442 13.1998H5.44796L9.19268 7.93853L7.4652 5.56932L5.46008 2.80011H5.45851L5.45841 2.79998H9.80964ZM21.6244 6.49225C20.9457 6.70764 20.2671 6.76917 19.5576 6.76917H17.0897V2.76921H20.082C21.1308 2.76921 21.8095 2.86151 22.2105 3.19997C22.6424 3.59997 22.8275 3.99997 22.8275 4.64612C22.8275 5.10765 22.7041 5.44611 22.519 5.7538C22.3339 6.06149 22.0563 6.33841 21.6244 6.49225ZM36.7399 5.7538C36.5239 6.06149 36.2463 6.33841 35.8453 6.49225C35.1666 6.70764 34.488 6.76917 33.7785 6.76917H31.3106V2.76921H34.272C35.3209 2.76921 35.9995 2.86151 36.4005 3.19997C36.8324 3.59997 37.0175 3.99997 37.0175 4.64612C37.0483 5.07688 36.9558 5.44611 36.7399 5.7538ZM60.3077 0H57.1612L54.2285 5.08902L54.2265 5.08417L54.2306 5.07688L51.2692 0H48.1227L52.0909 6.83893L52.0883 6.84369L52.2562 7.12386L52.6574 7.81532V13.1999V13.2307L44.0817 13.1999V0H41.3054V15.9999H55.4029V8.46147L55.3983 8.46929V8.4582L60.3077 0Z\",\n fillOpacity: 0.8\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_2_21115\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n width: 60.3077,\n height: 16,\n fill: \"none\"\n })))));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogo);\nexport default __webpack_public_path__ + \"static/media/logo.6f0749d99ac7f6f97552f712f9f30ae0.svg\";\nexport { ForwardRef as ReactComponent };","import {\n ILanguage,\n IItems,\n IMenuItem,\n INewMenuItem,\n IFilterData,\n ISystemItems,\n IMenuData,\n} from \"../@types/types\";\nimport settings from \"../../package.json\";\n\nexport const requestERPLYData = async (\n requestData: Record\n) => {\n const url = `https://${requestData.clientCode}.erply.com/api/`;\n const requestFormData = new FormData();\n Object.entries(requestData).forEach((fieldValue) => {\n const [key, value] = fieldValue;\n requestFormData.set(`${key}`, `${value}`);\n });\n\n const response = await fetch(url, {\n method: \"POST\",\n body: requestFormData,\n });\n\n return await response.json();\n};\n\nexport const createLanguageData = (\n languages: ILanguage[],\n link: string,\n accountLang: string,\n lastPage: string\n) => {\n const langs: ILanguage[] = [];\n\n languages.forEach((lang) => {\n let targetUrl = \"\";\n if (lastPage) {\n targetUrl = lastPage.replace(\n `=${accountLang}`,\n `=${lang.legacyIdentifier}`\n );\n } else {\n targetUrl = link.replace(`=${accountLang}`, `=${lang.legacyIdentifier}`);\n }\n\n const isActive = accountLang === lang.legacyIdentifier ? true : false;\n langs.push({ ...lang, targetUrl, isActive });\n });\n\n return langs;\n};\n\nexport const colors = [\n \"#05d24b\",\n \"#2196F3\",\n \"#00D1B2\",\n \"#D1C51B\",\n \"#FF3860\",\n \"#BA2F2A\",\n \"#600B6C\",\n \"#DD6EDD\",\n \"#70A14F\",\n \"#507181\",\n \"#AA5083\",\n \"#20CDD3\",\n \"#33E129\",\n \"#BF4680\",\n \"#50D2F0\",\n \"#F03272\",\n \"#5A69A2\",\n \"#EA286A\",\n \"#5AC688\",\n \"#B9975B\",\n \"#282528\",\n \"#FFDD57\",\n \"#B524D5\",\n \"#AA349F\",\n \"#30885A\",\n \"#572571\",\n \"#143A21\",\n \"#0E8DF0\",\n \"#7E4D5D\",\n \"#827146\",\n \"#7B4E83\",\n \"#7B05A4\",\n \"#292772\",\n \"#B34266\",\n \"#9B06D1\",\n \"#FB3130\",\n \"#346568\",\n \"#13182D\",\n \"#32052B\",\n \"#C5628B\",\n];\n\nexport const flatenArray = (data: IItems[]) => {\n const newArray: Pick<\n IMenuItem,\n \"title\" | \"targetType\" | \"targetUrl\" | \"iconClass\"\n >[] = [];\n\n const filterData: IFilterData = {\n quickLinks: [],\n mainItems: [],\n };\n\n data.forEach((item) => {\n const {\n title,\n menu,\n targetUrl,\n isGroup,\n isVisible,\n targetType,\n iconClass,\n } = item;\n if (isVisible) {\n newArray.push({ title, targetUrl, targetType, iconClass });\n if (isGroup && menu) {\n const { additionalLinks, menuGroups, quickLinks } = menu;\n if (additionalLinks && additionalLinks?.length) {\n additionalLinks.forEach((link) => {\n if (link.isVisible) {\n newArray.push({\n title: link.title,\n targetUrl: link.targetUrl,\n targetType: link.targetType,\n iconClass: link.iconClass,\n });\n\n filterData.mainItems.push({\n title: link.title,\n targetUrl: link.targetUrl,\n targetType: link.targetType,\n iconClass: link.iconClass,\n breadCrumbs: title,\n });\n }\n });\n }\n\n if (quickLinks && quickLinks?.length) {\n quickLinks.forEach((link) => {\n if (link.isVisible) {\n newArray.push({\n title: link.title,\n targetUrl: link.targetUrl,\n targetType: link.targetType,\n iconClass: link.iconClass,\n });\n filterData.quickLinks.push({\n title: link.title,\n targetUrl: link.targetUrl,\n targetType: link.targetType,\n iconClass: link.iconClass,\n });\n }\n });\n }\n\n if (menuGroups && menuGroups?.length) {\n menuGroups.forEach((group) => {\n const { items, isVisible, title: groupTitle } = group;\n if (isVisible && items?.length) {\n items.forEach((item) => {\n const {\n title: itemTitle,\n targetUrl,\n isVisible,\n targetType,\n iconClass,\n } = item;\n if (isVisible) {\n newArray.push({ title, targetUrl, targetType, iconClass });\n filterData.mainItems.push({\n title: itemTitle,\n targetUrl: targetUrl,\n targetType: targetType,\n iconClass: iconClass,\n breadCrumbs: `${title} - ${groupTitle}`,\n });\n }\n });\n }\n });\n }\n }\n }\n });\n\n return filterData;\n};\n\nexport const addNewMenuItem = (menuItems: IItems[], newItem: INewMenuItem) => {\n const newArray: IItems[] = [...menuItems];\n\n if (newItem && newArray?.length) {\n const { item, parentId } = newItem;\n\n if (parentId) {\n const isParent = newArray?.find((item) => item.id === parentId);\n const index = newArray?.findIndex((item) => item.id === parentId);\n if (isParent && isParent.menu) {\n const { menu } = isParent;\n if (menu.additionalLinks) {\n const isAddedAlready = menu.additionalLinks?.find(\n (link) => link.id === item.id\n );\n if (isAddedAlready) {\n return newArray;\n } else {\n const target = newArray[index].menu;\n if (target) {\n target.additionalLinks = [...menu.additionalLinks, item];\n newArray[index].menu = target;\n return newArray;\n }\n }\n } else {\n const target = newArray[index].menu;\n if (target) {\n target.additionalLinks = [item];\n newArray[index].menu = target;\n return newArray;\n }\n }\n } else {\n item.menu = null;\n newArray.push(item);\n return newArray;\n }\n } else {\n const isAddedAlready = newArray?.find((target) => target.id === item.id);\n if (isAddedAlready) {\n return newArray;\n } else {\n item.menu = null;\n newArray.push(item);\n return newArray;\n }\n }\n }\n};\n\nexport const addItemsInBulk = (\n savedItems: INewMenuItem[],\n menuItems: IMenuData\n) => {\n const menuData = JSON.parse(JSON.stringify(menuItems)) as IMenuData;\n savedItems.forEach((item) => {\n const items = addNewMenuItem(menuData.items, item);\n if (items) {\n menuData.items = items;\n }\n });\n\n return menuData;\n};\n\nexport const getFirstTwoChars = (value: string) => {\n return value.substring(0, 2).toUpperCase();\n};\n\nexport const filterItems = (array: ISystemItems[], infoGroups: string[]) => {\n const result: {\n infoGroup: ISystemItems[];\n settingsGroup: ISystemItems[];\n authGroup: ISystemItems[];\n } = {\n infoGroup: [],\n settingsGroup: [],\n authGroup: [],\n };\n\n array.forEach((el) => {\n if (infoGroups.includes(el.id)) {\n result.infoGroup.push({ ...el });\n } else if ([\"sys-menu-clock-in-out\", \"sys-menu-logout\"].includes(el.id)) {\n result.authGroup.push({ ...el });\n } else {\n result.settingsGroup.push({ ...el });\n }\n });\n\n return result;\n};\n\nexport const addActiveClassname = (\n className: string,\n isActive: boolean,\n activeClassName: string\n): string => {\n if (isActive) {\n return `${className} ${activeClassName}`;\n }\n return className;\n};\n\nexport const handleFilter = (data: IFilterData, filterValue: string) => {\n const { quickLinks, mainItems } = data;\n const result: IFilterData = {\n quickLinks: [],\n mainItems: [],\n };\n const quickLinksResult = [...quickLinks].filter((e) =>\n e.title.toLowerCase().includes(filterValue.toLowerCase())\n );\n\n const mainItemsResult = [...mainItems].filter((e) =>\n e.title.toLowerCase().includes(filterValue.toLowerCase())\n );\n\n result.quickLinks = quickLinksResult;\n result.mainItems = mainItemsResult;\n\n return result;\n};\n\nexport const getReleaseInfo = () => settings.version;\n\nexport const createStyle = () => {\n const sheet = document.createElement(\"style\");\n sheet.innerHTML = `\n \n @font-face {\n font-family: \"ErplyLadna\";\n src: url(https://assets.erply.com/global/fonts/erply-ladna/WOFF/ErplyLadna-Light.woff)\n format(\"woff\");\n font-display: swap;\n font-weight: 70;\n }\n\n @font-face {\n font-family: \"ErplyLadna\";\n src: url(https://assets.erply.com/global/fonts/erply-ladna/WOFF/ErplyLadna-Regular.woff)\n format(\"woff\");\n font-display: swap;\n font-weight: 96;\n }\n \n \n \n `;\n document.body.appendChild(sheet);\n};\n\nexport const handleLinkClick = (href: string, isBlank: boolean) => {\n if (isBlank) {\n Object.assign(document.createElement(\"a\"), {\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n href: href,\n }).click();\n } else {\n window.location.href = href;\n }\n};\n","import { useEffect, useState } from \"react\";\nconst localStorageKey = \"mode\";\n\nexport type Mode = \"light\" | \"dark\" | \"system\";\n\nexport type Theme = \"light\" | \"dark\";\n\nconst useTheme = () => {\n const [mode, setMode] = useState(() => {\n const initialMode =\n (localStorage.getItem(localStorageKey) as Mode | undefined) || \"system\";\n return initialMode;\n });\n\n const [theme, setTheme] = useState(() => {\n if (mode !== \"system\") {\n return mode;\n }\n const isSystemInDarkMode = matchMedia(\n \"(prefers-color-scheme: dark)\"\n ).matches;\n return isSystemInDarkMode ? \"dark\" : \"light\";\n });\n\n // When the mode changes, save it to the localStorage and to the database\n useEffect(() => {\n localStorage.setItem(localStorageKey, mode);\n }, [mode]);\n\n // Update the theme according to the mode\n useEffect(() => {\n if (mode !== \"system\") {\n setTheme(mode);\n return;\n }\n\n const isSystemInDarkMode = matchMedia(\"(prefers-color-scheme: dark)\");\n // If system mode, immediately change theme according to the current system value\n setTheme(isSystemInDarkMode.matches ? \"dark\" : \"light\");\n\n // As the system value can change, we define an event listener when in system mode\n // to track down its changes\n const listener = (event: MediaQueryListEvent) => {\n setTheme(event.matches ? \"dark\" : \"light\");\n };\n isSystemInDarkMode.addListener(listener);\n return () => {\n isSystemInDarkMode.removeListener(listener);\n };\n }, [mode]);\n\n // Update the visuals on theme change\n useEffect(() => {\n if (theme === \"dark\") {\n document.documentElement.classList.add(\"dark\");\n document.documentElement.setAttribute(\"data-theme\", \"dark\");\n } else {\n document.documentElement.classList.remove(\"dark\");\n document.documentElement.removeAttribute(\"data-theme\");\n }\n }, [theme]);\n\n // useEffect(() => {\n // // On page load or when changing themes, best to add inline in `head` to avoid FOUC\n // if (\n // localStorage.theme === \"dark\" ||\n // (!(\"theme\" in localStorage) && isDarkMode)\n // ) {\n // document.documentElement.classList.add(\"dark\");\n // document.documentElement.setAttribute(\"data-theme\", \"dark\");\n // setIsDarkTheme(true);\n\n // //dev\n // // document.documentElement.classList.remove(\"dark\");\n // // document.documentElement.removeAttribute(\"data-theme\");\n // } else {\n // // for dev\n // // document.documentElement.classList.add(\"dark\");\n // // document.documentElement.setAttribute(\"data-theme\", \"dark\");\n\n // // main\n // document.documentElement.classList.remove(\"dark\");\n // document.documentElement.removeAttribute(\"data-theme\");\n // setIsDarkTheme(false);\n // }\n\n // // // Whenever the user explicitly chooses light mode\n // // localStorage.theme = \"light\";\n\n // // // Whenever the user explicitly chooses dark mode\n // // localStorage.theme = \"dark\";\n\n // // // Whenever the user explicitly chooses to respect the OS preference\n // // localStorage.removeItem(\"theme\");\n // }, [isDarkMode]);\n\n return { theme, mode, setMode };\n};\n\nexport default useTheme;\n","import React, {\n useContext,\n useState,\n createContext,\n useEffect,\n useCallback,\n} from \"react\";\nimport {\n ILanguage,\n IMenuData,\n IMainProps,\n // INewMenuItem,\n IFilterData,\n INewMenuItem,\n} from \"../@types/types\";\nimport {\n requestERPLYData,\n createLanguageData,\n addNewMenuItem,\n flatenArray,\n createStyle,\n} from \"../utils\";\n// import GBFlag from \"../components/icons/GB.svg\";\n// import EEFlag from \"../components/icons/EE.svg\";\n// import FIFlag from \"../components/icons/FI.svg\";\n// import RUFlag from \"../components/icons/RU.svg\";\nimport FeatherIcon from \"feather-icons-react\";\nimport useTheme, { Theme, Mode } from \"../hooks/useTheme\";\n\nconst partnerKey = \"48452def9c79dfa6b0434567001a0bf2ab64d68e\";\n\nexport const refreshState = {\n MAIN: \"MAIN\",\n RELOAD: \"RELOAD\",\n REFRESH: \"REFRESH\",\n};\n\ninterface IContext {\n languages: ILanguage[];\n flatenedData: IFilterData;\n menuData: IMenuData | null;\n baseUrl: string;\n init: (type: keyof typeof refreshState) => Promise;\n isError: boolean;\n theme: Theme;\n user: string;\n clientCode: string;\n sessionKey: string;\n accountLang: string;\n renderFlag: (type: string, size?: number) => JSX.Element;\n isCloseAppDropDownsFromApp: boolean;\n setIsCloseAppDropDownsFromApp: (value: React.SetStateAction) => void;\n isGlobalSearchVisible: boolean;\n setMode: React.Dispatch>;\n setIsGlobalSearchVisible: React.Dispatch>;\n mode: Mode;\n}\n\nconst initialState: IContext = {\n languages: [],\n flatenedData: { quickLinks: [], mainItems: [] },\n menuData: null,\n baseUrl: \"\",\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n init: async () => {},\n isError: false,\n theme: \"dark\",\n user: \"\",\n clientCode: \"\",\n sessionKey: \"\",\n accountLang: \"\",\n isCloseAppDropDownsFromApp: false,\n isGlobalSearchVisible: false,\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n setIsCloseAppDropDownsFromApp: () => {},\n renderFlag: () => ,\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n setMode: () => {},\n mode: \"system\",\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n setIsGlobalSearchVisible: () => {},\n};\n\nconst AppStateContext = createContext(initialState);\n\nexport const AppStateContextProvider: React.FC = ({\n clientCode,\n sessionKey,\n accountLang,\n user,\n children,\n // isCloseComDropDown,\n // isGlobalSearchVisible,\n}) => {\n const [languages, setLanguages] = useState([]);\n const [flatenedData, setFlatenedData] = useState({\n quickLinks: [],\n mainItems: [],\n });\n const [menuData, setMenuData] = useState(null);\n const [lastVistedPage, setLastVistedPage] = useState(\"\");\n const [baseUrl, setBaseUrl] = useState(\"\");\n const [isError, setIsError] = useState(false);\n const [isCloseAppDropDownsFromApp, setIsCloseAppDropDownsFromApp] =\n useState(false);\n // const [first, setfirst] = useState(second)\n const [isGlobalSVisible, setIsGlobalSearchVisible] = useState(false);\n // eslint-disable-next-line\n const [newMenuItem, setNewMenuItem] = useState(null);\n\n const { mode, setMode, theme } = useTheme();\n\n const init = async (type: keyof typeof refreshState) => {\n setIsError(false);\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new`;\n const langPhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-lang`;\n const newItemPhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new-item`;\n\n sessionStorage.setItem(newItemPhrase, JSON.stringify([]));\n\n try {\n const services = await requestERPLYData({\n clientCode,\n request: \"getServiceEndpoints\",\n partnerKey,\n });\n if (services) {\n if (services.status.responseStatus === \"error\") {\n const value = sessionStorage.getItem(cachePhrase);\n const savedMenu = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMenuData;\n if (savedMenu) {\n if (savedMenu.system.languages.length) {\n setLanguages(\n createLanguageData(\n savedMenu.system.languages,\n savedMenu.system.homeMenuItem.targetUrl,\n accountLang,\n lastVistedPage\n )\n );\n } else {\n setLanguages([]);\n }\n if (newMenuItem) {\n savedMenu.items =\n addNewMenuItem(savedMenu.items, newMenuItem) || [];\n sessionStorage.setItem(cachePhrase, JSON.stringify(savedMenu));\n }\n // this.menuData = savedMenu;\n setMenuData(savedMenu);\n setFlatenedData(flatenArray(savedMenu.items));\n // this.render(savedMenu);\n } else {\n // this.renderError();\n setMenuData(null);\n setIsError(true);\n setLanguages([]);\n }\n } else {\n const baseUrl = services.records[0].user.url;\n setBaseUrl(baseUrl);\n const response = await fetch(\n `${baseUrl}v2/user-menu?language=${accountLang}®enerate=true`,\n {\n method: \"GET\",\n headers: {\n clientCode: clientCode,\n sessionKey: sessionKey,\n },\n credentials: \"include\",\n }\n );\n\n const data = await response.json();\n\n if (data && data.data) {\n const lastCall = `${clientCode}-last-load`;\n sessionStorage.setItem(\n lastCall,\n (new Date().getTime() / 1000).toString()\n );\n const result = data.data as IMenuData;\n\n const requestData = {\n request: \"getActiveLanguages\",\n clientCode,\n sessionKey,\n partnerKey,\n };\n\n const response = await requestERPLYData(requestData);\n\n if (response.status.responseStatus !== \"error\") {\n result.system.languages = response.records;\n sessionStorage.setItem(\n langPhrase,\n JSON.stringify(response.records)\n );\n } else {\n const value = sessionStorage.getItem(langPhrase);\n const savedLang = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as ILanguage[];\n if (savedLang) {\n result.system.languages = savedLang;\n } else {\n result.system.languages = [];\n }\n }\n\n if (type === refreshState.RELOAD) {\n if (result.system.languages.length) {\n setLanguages(\n createLanguageData(\n result.system.languages,\n result.system.homeMenuItem.targetUrl,\n accountLang,\n lastVistedPage\n )\n );\n } else {\n setLanguages([]);\n }\n const menuDataItem = result;\n if (newMenuItem) {\n menuDataItem.items =\n addNewMenuItem(menuDataItem.items, newMenuItem) || [];\n }\n\n setMenuData(menuDataItem);\n // this.render(this.menuData);\n setFlatenedData(flatenArray(menuDataItem.items));\n sessionStorage.setItem(cachePhrase, JSON.stringify(menuDataItem));\n } else if (type === refreshState.MAIN) {\n if (result.system.languages.length) {\n setLanguages(\n createLanguageData(\n result.system.languages,\n result.system.homeMenuItem.targetUrl,\n accountLang,\n lastVistedPage\n )\n );\n } else {\n setLanguages([]);\n }\n\n const menuDataItem = result;\n setMenuData(menuDataItem);\n // this.menuData = result;\n // this.render(this.menuData);\n setFlatenedData(flatenArray(menuDataItem.items));\n sessionStorage.setItem(cachePhrase, JSON.stringify(menuDataItem));\n // console.log(\"menuData\", result);\n } else if (type === refreshState.REFRESH) {\n if (result.system.languages.length) {\n setLanguages(\n createLanguageData(\n result.system.languages,\n result.system.homeMenuItem.targetUrl,\n accountLang,\n lastVistedPage\n )\n );\n } else {\n setLanguages([]);\n }\n // this.menuData = result;\n // this.render(this.menuData);\n const menuDataItem = result;\n setMenuData(menuDataItem);\n setFlatenedData(flatenArray(menuDataItem.items));\n sessionStorage.setItem(cachePhrase, JSON.stringify(menuDataItem));\n window.location.reload();\n }\n\n // this.getNotifications();\n } else {\n const value = sessionStorage.getItem(cachePhrase);\n const savedMenu = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMenuData;\n if (savedMenu) {\n if (savedMenu.system.languages.length) {\n setLanguages(\n createLanguageData(\n savedMenu.system.languages,\n savedMenu.system.homeMenuItem.targetUrl,\n accountLang,\n lastVistedPage\n )\n );\n } else {\n setLanguages([]);\n }\n if (newMenuItem) {\n savedMenu.items =\n addNewMenuItem(savedMenu.items, newMenuItem) || [];\n sessionStorage.setItem(cachePhrase, JSON.stringify(savedMenu));\n }\n setMenuData(savedMenu);\n setFlatenedData(flatenArray(savedMenu.items));\n // this.render(savedMenu);\n // this.getNotifications();\n } else {\n // this.renderError();\n setMenuData(null);\n setIsError(true);\n }\n }\n }\n }\n } catch (error) {\n console.log(error);\n const value = sessionStorage.getItem(cachePhrase);\n const savedMenu = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMenuData;\n if (savedMenu) {\n if (savedMenu.system.languages.length) {\n setLanguages(\n createLanguageData(\n savedMenu.system.languages,\n savedMenu.system.homeMenuItem.targetUrl,\n accountLang,\n lastVistedPage\n )\n );\n } else {\n setLanguages([]);\n }\n\n // this.menuData = savedMenu;\n // this.flatMenuData = flatenArray(savedMenu.items);\n setMenuData(savedMenu);\n setFlatenedData(flatenArray(savedMenu.items));\n // this.render(savedMenu);\n } else {\n // this.renderError();\n setMenuData(null);\n setIsError(true);\n }\n }\n };\n\n useEffect(() => {\n createStyle();\n }, []);\n\n useEffect(() => {\n // handle keyboard shortcut for opening and closing global search\n document.addEventListener(\"keydown\", (e) => {\n let handled = false;\n\n if (e.key !== undefined && e.key.toLowerCase() === \"k\" && e.metaKey) {\n // element.isCloseComDropDown = false;\n setIsCloseAppDropDownsFromApp(false);\n\n // element.isGlobalSearchVisible = true;\n setIsGlobalSearchVisible(true);\n handled = true;\n } else if (e.keyCode !== undefined && e.keyCode === 75 && e.metaKey) {\n // element.isCloseComDropDown = false;\n setIsCloseAppDropDownsFromApp(false);\n setIsGlobalSearchVisible(true);\n // element.isGlobalSearchVisible = true;\n handled = true;\n } else if (e.key === \"Escape\") {\n handled = true;\n // element.isGlobalSearchVisible = false;\n // element.isCloseComDropDown = true;\n setIsGlobalSearchVisible(false);\n setIsCloseAppDropDownsFromApp(true);\n }\n\n if (handled) {\n // Suppress \"double action\" if event handled\n e.preventDefault();\n }\n });\n }, []);\n\n useEffect(() => {\n const lastVisited =\n localStorage.getItem(`erply_last_page_${clientCode}`) || \"\"; // localStorage storage used because this is been set by another application.\n\n setLastVistedPage(lastVisited);\n }, [clientCode]);\n\n useEffect(() => {\n if (clientCode && sessionKey && accountLang) {\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new`;\n const lastVisited =\n localStorage.getItem(`erply_last_page_${clientCode}`) || \"\"; // localStorage storage used because this is been set by another application.\n\n const value = sessionStorage.getItem(cachePhrase);\n const savedMenu = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMenuData;\n\n const currentTime = new Date().getTime() / 1000;\n const lastCallKey = `${clientCode}-last-load`;\n const lastLoadValue = sessionStorage.getItem(lastCallKey);\n const lastLoad = JSON.parse(\n lastLoadValue ? lastLoadValue : JSON.stringify(\"\")\n ) as number;\n\n if (savedMenu) {\n if (lastLoad && currentTime - lastLoad >= 300) {\n init(\"RELOAD\");\n } else {\n if (savedMenu.system.languages.length) {\n setLanguages(\n createLanguageData(\n savedMenu.system.languages,\n savedMenu.system.homeMenuItem.targetUrl,\n accountLang,\n lastVisited\n )\n );\n }\n\n const menuDataItem = savedMenu;\n setMenuData(menuDataItem);\n setFlatenedData(flatenArray(menuDataItem.items));\n // this.render(savedMenu);\n // this.getNotifications();\n }\n } else {\n init(\"MAIN\");\n }\n } else if (clientCode && !sessionKey && accountLang) {\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new`;\n const lastVisited =\n localStorage.getItem(`erply_last_page_${clientCode}`) || \"\"; // localStorage storage used because this is been set by another application.\n\n const value = sessionStorage.getItem(cachePhrase);\n const savedMenu = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMenuData;\n\n if (savedMenu) {\n if (savedMenu.system.languages.length) {\n setLanguages(\n createLanguageData(\n savedMenu.system.languages,\n savedMenu.system.homeMenuItem.targetUrl,\n accountLang,\n lastVisited\n )\n );\n }\n\n // this.menuData = savedMenu;\n // this.flatMenuData = flatenArray(savedMenu.items);\n const menuDataItem = savedMenu;\n setMenuData(menuDataItem);\n setFlatenedData(flatenArray(menuDataItem.items));\n // this.render(savedMenu);\n // this.getNotifications();\n } else {\n init(\"MAIN\");\n }\n }\n\n // eslint-disable-next-line\n }, [clientCode, sessionKey, user, accountLang]);\n\n // useEffect(() => {\n // const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new`;\n\n // const value = sessionStorage.getItem(cachePhrase);\n // const savedMenu = JSON.parse(\n // value ? value : JSON.stringify(\"\")\n // ) as IMenuData;\n // window.addEventListener(\"addMenuItem\", (e) => {\n // const customEvent = e as CustomEvent;\n\n // const newItem = customEvent.detail;\n\n // if (newItem) {\n // // console.log(\"newMenuItem\", newItem);\n\n // if (savedMenu) {\n // savedMenu.items = addNewMenuItem(savedMenu.items, newItem) || [];\n // sessionStorage.setItem(cachePhrase, JSON.stringify(savedMenu));\n // setMenuData(savedMenu);\n // } else if (menuData) {\n // const item = { ...menuData };\n // item.items = addNewMenuItem(item.items, newItem) || [];\n // sessionStorage.setItem(cachePhrase, JSON.stringify(item));\n // setMenuData(item);\n // }\n // }\n // // element.newMenuItem = e.detail;\n // });\n\n // // eslint-disable-next-line\n // }, []);\n\n // const handleAddNewItem = useCallback(\n // (newMenuItems: INewMenuItem[]) => {\n // const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new`;\n\n // const value = sessionStorage.getItem(cachePhrase);\n // const savedMenu = JSON.parse(\n // value ? value : JSON.stringify(\"\")\n // ) as IMenuData;\n\n // if (newMenuItems.length) {\n // if (savedMenu) {\n // // savedMenu.items = addNewMenuItem(savedMenu.items, newMenuItem) || [];\n // const newMenuData = addItemsInBulk(newMenuItems, savedMenu);\n // sessionStorage.setItem(cachePhrase, JSON.stringify(newMenuData));\n // setMenuData(JSON.parse(JSON.stringify(newMenuData)));\n // } else if (menuData) {\n // // const item = { ...menuData };\n // // item.items = addNewMenuItem(item.items, newMenuItem) || [];\n // const newMenuData = addItemsInBulk(newMenuItems, menuData);\n // sessionStorage.setItem(cachePhrase, JSON.stringify(newMenuData));\n // setMenuData(JSON.parse(JSON.stringify(newMenuData)));\n // }\n // }\n // },\n // [clientCode, accountLang, user, setMenuData, menuData]\n // );\n\n const addNewItem = useCallback(\n (newMenuItem: INewMenuItem) => {\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new`;\n\n const value = sessionStorage.getItem(cachePhrase);\n const savedMenu = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMenuData;\n\n if (newMenuItem) {\n if (savedMenu) {\n savedMenu.items = addNewMenuItem(savedMenu.items, newMenuItem) || [];\n sessionStorage.setItem(cachePhrase, JSON.stringify(savedMenu));\n setMenuData(JSON.parse(JSON.stringify(savedMenu)));\n } else if (menuData) {\n const item = JSON.parse(JSON.stringify(menuData));\n item.items = addNewMenuItem(item.items, newMenuItem) || [];\n // const newMenuData = addItemsInBulk(item, menuData);\n sessionStorage.setItem(cachePhrase, JSON.stringify(item));\n setMenuData(JSON.parse(JSON.stringify(item)));\n }\n }\n },\n [clientCode, accountLang, user, setMenuData, menuData]\n );\n useEffect(() => {\n document.addEventListener(\"addMenuItem\", (e) => {\n const customEvent = e as CustomEvent;\n const newItem = customEvent.detail;\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new-item`;\n const value = sessionStorage.getItem(cachePhrase);\n const savedNewItems = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as INewMenuItem[];\n if (newItem) {\n if (savedNewItems && Array.isArray(savedNewItems)) {\n const isFound = savedNewItems.find(\n (e) => e.item.id === newItem.item.id\n );\n if (!isFound) {\n savedNewItems.push(newItem);\n sessionStorage.setItem(cachePhrase, JSON.stringify(savedNewItems));\n }\n } else {\n sessionStorage.setItem(cachePhrase, JSON.stringify([newItem]));\n }\n // setNewMenuItem(newItem);\n addNewItem(newItem);\n console.log(\"newItem-doc\", newItem);\n }\n });\n }, [addNewItem, clientCode, user, accountLang]);\n\n useEffect(() => {\n // listen to event to add new menuItem\n window.addEventListener(\"addMenuItem\", (e) => {\n const customEvent = e as CustomEvent;\n const newItem = customEvent.detail;\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new-item`;\n const value = sessionStorage.getItem(cachePhrase);\n const savedNewItems = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as INewMenuItem[];\n if (newItem) {\n if (savedNewItems && Array.isArray(savedNewItems)) {\n const isFound = savedNewItems.find(\n (e) => e.item.id === newItem.item.id\n );\n if (!isFound) {\n savedNewItems.push(newItem);\n sessionStorage.setItem(cachePhrase, JSON.stringify(savedNewItems));\n }\n } else {\n sessionStorage.setItem(cachePhrase, JSON.stringify([newItem]));\n }\n // setNewMenuItem(newItem);\n addNewItem(newItem);\n console.log(\"newItem-win\", newItem);\n }\n });\n }, [addNewItem, clientCode, user, accountLang]);\n\n useEffect(() => {\n const interval = setInterval(() => {\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new-item`;\n const value = sessionStorage.getItem(cachePhrase);\n const savedNewItems = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as INewMenuItem[];\n\n if (\n savedNewItems &&\n Array.isArray(savedNewItems) &&\n savedNewItems.length\n ) {\n savedNewItems.forEach((item) => {\n addNewItem(item);\n });\n }\n }, 5000);\n\n return () => clearInterval(interval);\n }, [clientCode, user, accountLang, addNewItem]);\n\n // useEffect(() => {\n // if (newMenuItem) {\n // addNewItem(newMenuItem);\n // }\n\n // // eslint-disable-next-line\n // }, [newMenuItem, addNewItem]);\n\n // useEffect(() => {\n // setIsCloseAppDropDownsFromApp(isCloseComDropDown);\n // }, [isCloseComDropDown]);\n\n const renderFlag = (type: string, size?: number) => {\n // switch (type) {\n // case \"en\":\n // return ;\n\n // case \"et\":\n // return ;\n\n // case \"ru\":\n // return ;\n\n // case \"fi\":\n // return ;\n\n // default:\n // return ;\n // }\n return ;\n };\n\n return (\n \n {children}\n \n );\n};\n\nexport const useAppState = () => useContext(AppStateContext);\n","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgSearch(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 17,\n height: 17,\n viewBox: \"0 0 17 17\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M1.75 6.5C1.75 3.87665 3.87665 1.75 6.5 1.75C9.12335 1.75 11.25 3.87665 11.25 6.5C11.25 9.12335 9.12335 11.25 6.5 11.25C3.87665 11.25 1.75 9.12335 1.75 6.5ZM6.5 0.25C3.04822 0.25 0.25 3.04822 0.25 6.5C0.25 9.95178 3.04822 12.75 6.5 12.75C7.96156 12.75 9.30595 12.2483 10.3703 11.4078C10.3985 11.4512 10.4316 11.4923 10.4697 11.5303L15.4697 16.5303C15.7626 16.8232 16.2374 16.8232 16.5303 16.5303C16.8232 16.2374 16.8232 15.7626 16.5303 15.4697L11.5303 10.4697C11.4923 10.4316 11.4512 10.3985 11.4078 10.3703C12.2483 9.30595 12.75 7.96156 12.75 6.5C12.75 3.04822 9.95178 0.25 6.5 0.25Z\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSearch);\nexport default __webpack_public_path__ + \"static/media/search.9fbbcdf7b51bae614747b5d3f5d450a4.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgReload(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 16 17\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.07 1C15.07 0.585786 14.7342 0.25 14.32 0.25C13.9058 0.25 13.57 0.585786 13.57 1V3.61148C12.1616 2.15598 10.1868 1.25 8 1.25C3.71979 1.25 0.25 4.71979 0.25 9C0.25 13.2802 3.71979 16.75 8 16.75C10.1684 16.75 12.1299 15.8585 13.5357 14.4239C13.7942 14.1601 14.034 13.8779 14.253 13.5793C14.4979 13.2453 14.4258 12.776 14.0918 12.531C13.7578 12.286 13.2884 12.3582 13.0434 12.6922C12.8667 12.9331 12.6731 13.161 12.4643 13.3741C11.3291 14.5326 9.74899 15.25 8 15.25C4.54822 15.25 1.75 12.4518 1.75 9C1.75 5.54822 4.54822 2.75 8 2.75C10.0439 2.75 11.8595 3.73084 13.0006 5.25H9.32001C8.90579 5.25 8.57001 5.58579 8.57001 6C8.57001 6.41421 8.90579 6.75 9.32001 6.75H14.32C14.7342 6.75 15.07 6.41421 15.07 6V1Z\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgReload);\nexport default __webpack_public_path__ + \"static/media/reload.88de84ab8961bd2cffa8c4219555bd28.svg\";\nexport { ForwardRef as ReactComponent };","import React from \"react\";\nimport { ReactComponent as SearchIcon } from \"../icons/search.svg\";\n// import Chevron from \"../icons/chevron.svg\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { getFirstTwoChars } from \"../../utils\";\nimport { useAppState } from \"../../context/appContex\";\n\ninterface ActionsProps {\n toggleDropDown: () => void;\n isSearch?: boolean;\n openSearch?: () => void;\n isSamll?: boolean;\n}\n\nconst Actions: React.FC = ({\n toggleDropDown,\n isSearch,\n openSearch,\n isSamll,\n}) => {\n const { user } = useAppState();\n\n return (\n \n {isSearch && (\n
\n \n
\n )}\n
\n {user ? getFirstTwoChars(user) : }\n
\n {/*
\n EN\n */}\n {/*
*/}\n
\n );\n};\n\nexport default Actions;\n","import React from \"react\";\nimport { IMenuItem } from \"../../@types/types\";\nimport { handleLinkClick } from \"../../utils\";\n\ninterface NavItemsProps {\n items: IMenuItem[];\n}\n\nconst NavItems: React.FC = ({ items }) => {\n const firstItem = items.filter((e) => e.isVisible)[0];\n\n return (\n \n {items.map((item) => {\n if (item.isVisible) {\n return (\n - \n handleLinkClick(item.targetUrl, item.targetType === \"BLANK\")\n }\n >\n {item.targetType === \"BLANK\" ? (\n \n {item.title}\n \n ) : (\n \n {item.title}\n \n )}\n
\n );\n }\n\n return null;\n })}\n
\n );\n};\n\nexport default NavItems;\n","import React from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { IMenuGroup } from \"../../@types/types\";\nimport { addActiveClassname } from \"../../utils\";\nimport NavItems from \"./NavItems\";\n\ninterface GroupItemProps {\n groupItem: IMenuGroup;\n isSearch?: boolean;\n selectedId: string;\n toggleMenu: (id: string) => void;\n}\n\nconst GroupItem: React.FC = ({\n groupItem,\n isSearch,\n selectedId,\n toggleMenu,\n}) => {\n const isActive = selectedId === groupItem.id;\n\n // const getClass = (className: string): string => {\n // if (isActive) {\n // return `${className} active-inner`;\n // }\n // return className;\n // };\n\n return (\n \n {\n toggleMenu(groupItem.id);\n }}\n className='nav-text-inner'\n >\n {groupItem.title}\n \n <>\n {selectedId && selectedId === groupItem.id ? (\n toggleMenu(groupItem.id)}\n />\n ) : (\n toggleMenu(groupItem.id)}\n />\n )}\n >\n {groupItem.items.length && selectedId === groupItem.id ? (\n \n ) : null}\n \n );\n};\n\nexport default GroupItem;\n","import React from \"react\";\nimport { IMenuItem } from \"../../@types/types\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { addActiveClassname } from \"../../utils\";\nimport NavItems from \"./NavItems\";\n\ninterface AdditionalLinksProps {\n links: IMenuItem[];\n selectedId: string;\n toggleMenu: (id: string) => void;\n isOnly?: boolean;\n}\n\nconst id = \"additional_links\";\n\nconst AdditionalLinks: React.FC = ({\n links,\n selectedId,\n toggleMenu,\n isOnly,\n}) => {\n const isActive = selectedId === id;\n return (\n \n {\n toggleMenu(id);\n }}\n className='nav-text-inner'\n >\n Additional Links\n \n <>\n {selectedId && selectedId === id ? (\n toggleMenu(id)}\n />\n ) : (\n toggleMenu(id)}\n />\n )}\n >\n {links.length && selectedId === id ? : null}\n \n );\n};\n\nexport default AdditionalLinks;\n","import React, { useState } from \"react\";\nimport { IMenuGroup, IMenuItem } from \"../../@types/types\";\nimport GroupItem from \"./GroupItem\";\nimport AdditionalLinks from \"./AdditionalLinks\";\n\ninterface MenuGroupsProps {\n groups: IMenuGroup[];\n additionalLinks: IMenuItem[];\n isSearch?: boolean;\n quickLinks: IMenuItem[];\n}\n\nconst MenuGroups: React.FC = ({\n groups,\n isSearch,\n additionalLinks,\n}) => {\n const [selectedId, setSelectedId] = useState(\"\");\n\n const toggleMenu = (id: string) => {\n if (id) {\n if (selectedId && id === selectedId) {\n setSelectedId(\"\");\n } else {\n setSelectedId(id);\n }\n }\n };\n\n return (\n \n {groups.map((group) => {\n if (group.isVisible && group?.items?.length) {\n return (\n \n );\n }\n\n return null;\n })}\n\n {additionalLinks.length ? (\n \n ) : null}\n
\n );\n};\n\nexport default MenuGroups;\n","import React from \"react\";\nimport { IItems } from \"../../@types/types\";\n// import SearchInput from \"../common/SearchInput\";\nimport MenuGroups from \"./MenuGroups\";\n// import QuickLinks from \"./QuickLinks\";\n\ninterface MenuItemProps {\n item: IItems;\n inputValue: string;\n onChange: (e: React.ChangeEvent) => void;\n}\n\nconst MenuItem: React.FC = ({ item }) => {\n return (\n \n {/* {item.menu?.search ? (\n \n ) : null} */}\n\n {item.menu?.menuGroups || item.menu?.additionalLinks ? (\n // !!item.menu?.search\n \n ) : null}\n\n {/* {item.menu?.quickLinks ? (\n \n ) : null} */}\n
\n );\n};\n\nexport default MenuItem;\n","import React, { useState } from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport MenuItem from \"./MenuItem\";\nimport { useAppState } from \"../../context/appContex\";\n\nconst SubMenu: React.FC = () => {\n const [selectedId, setSelectedId] = useState(\"\");\n const [inputValue, setInputValue] = useState(\"\");\n\n const { menuData } = useAppState();\n\n const onChange = (e: React.ChangeEvent) => {\n setInputValue(e.target.value);\n };\n\n const toggleMenu = (id: string) => {\n if (id) {\n if (selectedId && id === selectedId) {\n setSelectedId(\"\");\n } else {\n setSelectedId(id);\n }\n }\n };\n\n return (\n \n {menuData?.items.map((item) => {\n const { isGroup, isVisible, title, targetType, targetUrl, id } = item;\n const isPop = targetUrl.includes(\"popup.php\");\n\n if (isVisible) {\n return (\n - {\n // if (isGroup) {\n // toggleMenu(id);\n // }\n // }}\n >\n {isGroup ? (\n {\n toggleMenu(id);\n }}\n className='nav-text'\n style={selectedId === id ? { fontWeight: \"bold\" } : {}}\n >\n {title}\n \n ) : isPop || targetType === \"BLANK\" ? (\n \n {title}\n \n ) : (\n \n {title}\n \n )}\n {item.isGroup && (\n <>\n {selectedId && selectedId === id ? (\n toggleMenu(id)}\n />\n ) : (\n toggleMenu(id)}\n />\n )}\n >\n )}\n\n {selectedId === id ? (\n \n ) : null}\n
\n );\n }\n return null;\n })}\n
\n );\n};\n\nexport default SubMenu;\n","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgLogOut(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 17 19\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M0.75 1C0.75 0.585786 1.08579 0.25 1.5 0.25H10.5C10.9142 0.25 11.25 0.585786 11.25 1C11.25 1.41421 10.9142 1.75 10.5 1.75H2.25V17.25H10.5C10.9142 17.25 11.25 17.5858 11.25 18C11.25 18.4142 10.9142 18.75 10.5 18.75H1.5C1.08579 18.75 0.75 18.4142 0.75 18V1ZM12.1364 13.1968C11.8435 12.9039 11.8435 12.4291 12.1364 12.1362L14.1891 10.0835H8.5C8.08579 10.0835 7.75 9.74771 7.75 9.3335C7.75 8.91928 8.08579 8.5835 8.5 8.5835H14.1897L12.1364 6.53017C11.8435 6.23727 11.8435 5.7624 12.1364 5.46951C12.4293 5.17661 12.9042 5.17661 13.1971 5.46951L16.5304 8.80284C16.6023 8.87476 16.6581 8.95979 16.6955 9.05231C16.7118 9.09266 16.7246 9.13444 16.7337 9.17717L16.7355 9.18617C16.7451 9.23422 16.7501 9.28344 16.7501 9.33317C16.7501 9.35708 16.7489 9.38088 16.7467 9.40448C16.7294 9.58892 16.6453 9.75394 16.5188 9.87511L13.1971 13.1968C12.9042 13.4897 12.4293 13.4897 12.1364 13.1968ZM5 8.75C4.58579 8.75 4.25 9.08579 4.25 9.5C4.25 9.91421 4.58579 10.25 5 10.25C5.41421 10.25 5.75 9.91421 5.75 9.5C5.75 9.08579 5.41421 8.75 5 8.75Z\",\n fillOpacity: 0.8\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogOut);\nexport default __webpack_public_path__ + \"static/media/log-out.b88d82b578c7f869c70dd8a3d1eb7be2.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgClock(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 14 16\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M5.3335 0.583252C4.91928 0.583252 4.5835 0.919038 4.5835 1.33325C4.5835 1.74747 4.91928 2.08325 5.3335 2.08325H8.66683C9.08104 2.08325 9.41683 1.74747 9.41683 1.33325C9.41683 0.919038 9.08104 0.583252 8.66683 0.583252H5.3335ZM1.9165 9.25008C1.9165 6.44263 4.19239 4.16675 6.99984 4.16675C9.80729 4.16675 12.0832 6.44263 12.0832 9.25008C12.0832 12.0575 9.80729 14.3334 6.99984 14.3334C4.19239 14.3334 1.9165 12.0575 1.9165 9.25008ZM6.99984 2.66675C5.45225 2.66675 4.02938 3.20075 2.90545 4.09454L2.11383 3.30292C1.82093 3.01003 1.34606 3.01003 1.05317 3.30292C0.760273 3.59581 0.760273 4.07069 1.05317 4.36358L1.84473 5.15514C0.950676 6.27917 0.416504 7.70224 0.416504 9.25008C0.416504 12.886 3.36396 15.8334 6.99984 15.8334C10.6357 15.8334 13.5832 12.886 13.5832 9.25008C13.5832 7.70233 13.0491 6.27932 12.1551 5.15533L12.9468 4.36358C13.2397 4.07069 13.2397 3.59582 12.9468 3.30292C12.6539 3.01003 12.1791 3.01003 11.8862 3.30292L11.0944 4.09468C9.97045 3.2008 8.54751 2.66675 6.99984 2.66675ZM7.75 8.24991V6.75C7.75 6.33579 7.41421 6 7 6C6.58579 6 6.25 6.33579 6.25 6.75V8.24991C5.94639 8.47796 5.75 8.84105 5.75 9.25C5.75 9.94036 6.30964 10.5 7 10.5C7.69036 10.5 8.25 9.94036 8.25 9.25C8.25 8.84105 8.05361 8.47796 7.75 8.24991Z\",\n fillOpacity: 0.7\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgClock);\nexport default __webpack_public_path__ + \"static/media/clock.a549d77dcafffef77d7e9705964df932.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgEnter(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 14,\n height: 12,\n viewBox: \"0 0 14 12\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.33333 4.33334L1 7.66668L4.33333 11\",\n strokeWidth: 1.5,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.83337 7.66667H10.6667C11.7713 7.66667 12.6667 6.77124 12.6667 5.66667V3C12.6667 1.89543 11.7713 1 10.6667 1H8.91671\",\n strokeWidth: 1.5,\n strokeLinecap: \"round\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgEnter);\nexport default __webpack_public_path__ + \"static/media/enter.b5f6b089c03b8d8147626e05d0288954.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useState } from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { useAppState } from \"../../context/appContex\";\nimport { filterItems } from \"../../utils\";\nimport { ReactComponent as ReloadIcon } from \"../icons/reload.svg\";\nimport { ReactComponent as LogoutIcon } from \"../icons/log-out.svg\";\nimport { ReactComponent as ClockIcon } from \"../icons/clock.svg\";\n\nconst INFO_ID = \"HELP\";\nconst USER_ID = \"USER\";\n\nconst ActionDropDown: React.FC = () => {\n const [selectedId, setSelectedId] = useState(\"\");\n\n const { user, renderFlag, languages, menuData, init } = useAppState();\n\n const toggleMenu = (id: string) => {\n if (id) {\n if (selectedId && id === selectedId) {\n setSelectedId(\"\");\n } else {\n setSelectedId(id);\n }\n }\n };\n\n const { infoGroup, settingsGroup, authGroup } = filterItems(\n menuData?.system?.items || [],\n [\"sys-menu-terms\", \"sys-menu-help\"]\n );\n\n const renderInfoGroup = () => {\n return (\n \n );\n };\n\n const renderSettings = () => {\n return (\n \n
\n {settingsGroup.map((sett) => {\n return (\n - \n \n
\n );\n })}\n
\n
\n );\n };\n\n return (\n \n );\n};\n\nexport default ActionDropDown;\n","import React, { useState } from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { ReactComponent as SearchIcon } from \"../icons/search.svg\";\nimport { useAppState } from \"../../context/appContex\";\n\ninterface GlobalSearchProps {\n handleSearch: (searchValue: string) => void;\n closeGlobalSearch: () => void;\n}\nconst GlobalSearch: React.FC = ({\n handleSearch,\n closeGlobalSearch,\n}) => {\n const [searchValue, setSearchValue] = useState(\"\");\n const { menuData } = useAppState();\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n e.stopPropagation();\n if (menuData) {\n window.location.href = `${menuData.system.homeMenuItem.targetUrl}§ion=search&q=${searchValue}`;\n }\n };\n\n return (\n \n \n \n {\n setSearchValue(\"\");\n closeGlobalSearch();\n }}\n />\n
\n );\n};\n\nexport default GlobalSearch;\n","import React from \"react\";\nimport escapeRegExp from \"lodash.escaperegexp\";\n\ninterface IHighlightedProps {\n text: string;\n highlight: string;\n onClick: () => void;\n}\n\nconst Highlighted = ({ text, highlight, onClick }: IHighlightedProps) => {\n if (!highlight.trim()) {\n return (\n \n {text}\n \n );\n }\n const regex = new RegExp(`(${escapeRegExp(highlight)})`, \"gi\");\n const parts = text.split(regex);\n return (\n \n {parts\n .filter((part) => part)\n .map((part, i) =>\n regex.test(part) ? (\n \n {part}\n \n ) : (\n {part}\n )\n )}\n \n );\n};\n\nexport default Highlighted;\n","import React, { memo } from \"react\";\nimport { IMainItem } from \"../../@types/types\";\nimport Highlighted from \"./Highlighted\";\n\nexport interface MainResultProps {\n // onMouseEnter: (item: IMainItem) => void;\n // onMouseLeave: () => void;\n // cursor: number;\n items: IMainItem[];\n searchValue: string;\n // showEnterKey: boolean;\n clientCode: string;\n user: string;\n\n // addToRef: (ele: HTMLDivElement) => void;\n}\n\nconst Results = ({\n items,\n // cursor,\n // onMouseEnter,\n // onMouseLeave,\n searchValue,\n clientCode,\n user,\n}: // showEnterKey,\nMainResultProps) => {\n const onNavigate = (item: IMainItem) => {\n const value = sessionStorage.getItem(`recent_search_${clientCode}_${user}`);\n const recentSearches = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMainItem[];\n\n if (recentSearches && recentSearches.length) {\n const index = recentSearches.findIndex(\n (e) => e.targetUrl === item.targetUrl\n );\n if (index === -1) {\n recentSearches.push(item);\n sessionStorage.setItem(\n `recent_search_${clientCode}_${user}`,\n JSON.stringify(recentSearches)\n );\n }\n } else {\n sessionStorage.setItem(\n `recent_search_${clientCode}_${user}`,\n JSON.stringify([item])\n );\n }\n\n window.location.href = item.targetUrl;\n };\n\n return (\n \n {items.map((item, index) => {\n return (\n
{\n onNavigate(item);\n }}\n // onMouseEnter={() => onMouseEnter(item)}\n // onMouseLeave={onMouseLeave}\n >\n
\n {\n onNavigate(item);\n }}\n />\n\n {item.breadCrumbs}\n
\n {/* {showEnterKey && cursor === index &&
} */}\n
\n );\n })}\n
\n );\n};\n\nexport const Recent = ({ recentSearches }: { recentSearches: IMainItem[] }) => {\n return (\n \n {recentSearches.map((rec, index) => {\n return (\n
{\n window.location.href = rec.targetUrl;\n }}\n >\n
\n
\n );\n })}\n
\n );\n};\n\nexport const MainResults = memo(Results);\nexport const RecentSearches = memo(Recent);\n","import React from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { IFilterData, IMenuItem, IMainItem } from \"../../@types/types\";\nimport { ReactComponent as Enter } from \"../icons/enter.svg\";\nimport { colors } from \"../../utils\";\nimport { useAppState } from \"../../context/appContex\";\nimport { RecentSearches, MainResults } from \"../common/MainSearch\";\n\ninterface SearchDropDownProps {\n searchResult: IFilterData;\n searchValue: string;\n}\n\nconst Notification = () => {\n return (\n \n
\n Press\n \n Enter\n \n to search for customers, invoices, tasks and products.\n
\n
\n );\n};\n\nconst QuickLinks = ({\n links,\n}: {\n links: Pick[];\n}) => {\n return (\n \n );\n};\n\nconst SearchDropDown: React.FC = ({\n searchResult,\n searchValue,\n}) => {\n const { quickLinks, mainItems } = searchResult;\n\n const { clientCode, user } = useAppState();\n\n const value = sessionStorage.getItem(`recent_search_${clientCode}_${user}`);\n const recentSearches = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMainItem[];\n\n return (\n \n
\n {searchValue ? (\n <>\n \n {recentSearches && recentSearches.length ? (\n <>\n \n Recent searches\n \n \n >\n ) : null}\n {mainItems.length ? (\n <>\n \n Results in Menus\n \n \n >\n ) : null}\n >\n ) : (\n \n )}\n
\n
\n );\n};\n\nexport default SearchDropDown;\n","import React, { useState } from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { ReactComponent as Logo } from \"../logo/logo.svg\";\nimport Actions from \"../common/Actions\";\nimport SubMenu from \"./SubMenu\";\nimport ActionDropDown from \"./ActionDropDown\";\nimport { useAppState } from \"../../context/appContex\";\nimport { IFilterData } from \"../../@types/types\";\nimport { getReleaseInfo, handleFilter } from \"../../utils\";\nimport GlobalSearch from \"./GlobalSearch\";\nimport SearchDropDown from \"./SearchDropDown\";\n\nconst Header: React.FC = () => {\n const [isDropDown, setIsDropDown] = useState(false);\n const [isUserDropDown, setIsUserDropDown] = useState(false);\n const [isGlobalSearch, setIsGlobalSearch] = useState(false);\n const [searchResult, setSearchResult] = useState({\n quickLinks: [],\n mainItems: [],\n });\n const [searchValue, setSearchValue] = useState(\"\");\n\n const { menuData, flatenedData, setMode, theme } = useAppState();\n\n const closeGlobalSearch = () => {\n setIsGlobalSearch(false);\n setSearchValue(\"\");\n setSearchResult({\n quickLinks: [],\n mainItems: [],\n });\n };\n\n const openGlobalSearch = () => {\n setIsDropDown(false);\n setIsUserDropDown(false);\n setIsGlobalSearch(true);\n };\n\n const switchTheme = () => {\n const newMode = theme === \"light\" ? \"dark\" : \"light\";\n\n setMode(newMode);\n };\n\n const handleSearch = (searchValue: string) => {\n setSearchValue(searchValue);\n const result = handleFilter(flatenedData, searchValue);\n\n // console.log(\"result\", result);\n\n setSearchResult(result);\n };\n\n return (\n \n {isGlobalSearch ? (\n \n ) : (\n \n
\n
{\n setIsDropDown((prev) => !prev);\n if (isUserDropDown) {\n setIsUserDropDown(false);\n }\n }}\n >\n \n
\n
{\n if (menuData?.system.homeMenuItem.targetUrl) {\n window.location.href =\n menuData?.system.homeMenuItem.targetUrl;\n }\n }}\n >\n \n \n
\n
\n
\n v. {getReleaseInfo()}\n \n
\n
{\n setIsUserDropDown((prev) => !prev);\n if (isDropDown) {\n setIsDropDown(false);\n }\n }}\n openSearch={openGlobalSearch}\n isSearch\n isSamll\n />\n \n
\n )}\n {isDropDown && }\n {isUserDropDown && }\n {isGlobalSearch && (\n \n )}\n \n );\n};\n\nexport default Header;\n","import React from \"react\";\nimport Header from \"./Header\";\nimport mobileStyles from \"../../styles/mobileStyles\";\n\nconst Mobile: React.FC = () => {\n return (\n <>\n \n \n >\n );\n};\n\nexport default Mobile;\n","const mobileStyles = `\n\n.header {\n /* display: flex; */\n position: relative;\n /* align-items: center; */\n /* justify-content: space-between; */\n background: var(--header-bg);\n height: 50px;\n color: var(--header-text);\n border-bottom: var(--header-border-bottom);\n width: 100%;\n }\n \n .menu {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 13px 12px;\n height: 100%;\n margin-right: 15px;\n z-index: 10000;\n }\n \n .active {\n background: var(--toggle-active);\n }\n \n .header-content {\n height: 100%;\n margin: 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n \n .left {\n display: flex;\n align-items: center;\n }\n \n .left svg {\n fill: var(--header-text);\n }\n \n .right {\n margin-right: 10px;\n }\n \n .submenu-wrapper {\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 100vh;\n border-top: none;\n overflow-x: hidden;\n overflow-y: auto !important;\n z-index: 100000;\n width: 100%;\n background: var(--sm-bg);\n top: 34px;\n color: var(--text-color);\n font-weight: normal;\n cursor: pointer !important;\n }\n \n .nav-item {\n position: relative;\n padding: 15px 0px 15px 1px;\n border-bottom: var(--header-border-bottom);\n width: 100%;\n \n /* display: flex;\n align-items: center;\n justify-content: space-between; */\n }\n \n /* .inner-nav {\n padding: 15px 7px 15px 0px !important;\n } */\n \n /* .nav-item-inner {\n position: relative;\n padding: 15px 7px 15px 7px;\n border-bottom: var(--header-border-bottom);\n width: 100%;\n } */\n \n .top:first-child {\n margin-top: 15px;\n border-top: var(--header-border-bottom);\n }\n \n /* .first:first-child {\n \n } */\n \n .drop-down {\n position: absolute;\n right: 17px;\n top: 11px;\n /* left: 15px; */\n }\n \n .drop-down-inner {\n position: absolute;\n right: 20px;\n }\n \n .external-link {\n position: absolute;\n right: 23px;\n }\n \n .nav-text-inner {\n margin-left: 25px;\n font-weight: normal !important;\n display: block;\n width: 100%;\n }\n \n .nav-text-link {\n margin-left: 35px;\n }\n \n .nav-text {\n margin-left: 18px;\n display: block;\n width: 100%;\n }\n \n .action-drop-text {\n margin-left: 10px;\n }\n \n .nav-item:last-child {\n border-bottom: none;\n }\n \n .menu-item {\n /* background: var(--toggle-active); */\n }\n \n .active-menu {\n background: var(--sub-menu-bg) !important;\n }\n \n .active-inner {\n background: transparent !important;\n }\n \n .active-inner span {\n font-weight: bold !important;\n }\n \n .input {\n width: 100%;\n padding: 12px 30px 12px 12px;\n margin: 0px 5px 0px 5px;\n background: var(--input-bg);\n border: var(--input-border);\n border-radius: var(--border-radius);\n }\n \n .input:focus {\n border-color: var(--nav-hover);\n outline: 0 none;\n }\n \n .input-form {\n position: relative;\n margin-top: 10px;\n }\n \n .input-form svg {\n position: absolute;\n right: 12px;\n top: 12px;\n fill: var(--input-placeholder-color);\n }\n \n input::placeholder {\n color: var(--input-placeholder-color);\n }\n \n .inner-group {\n margin: 0;\n }\n \n .inner-nav {\n background: var(--sm-bg);\n }\n \n .inner-nav:last-child {\n /* padding-bottom: 100px; */\n }\n \n .quick-links {\n background: transparent;\n display: flex;\n flex-wrap: wrap;\n \n align-items: center;\n }\n \n .quick-links-item {\n display: flex;\n align-items: center;\n width: auto;\n padding: 20px;\n }\n \n .quick-links-icon {\n margin-right: 10px;\n }\n \n .flex-col {\n width: 100%;\n padding: 25px;\n display: flex;\n flex-direction: column;\n }\n \n .language-item {\n display: flex;\n align-items: center;\n margin-bottom: 20px;\n cursor: pointer;\n justify-content: space-between;\n }\n \n .language-item:hover {\n color: var(--nav-hover);\n }\n \n .language-name {\n margin-left: 10px;\n }\n \n .language-item .right {\n display: flex;\n align-items: center;\n }\n \n .info-group svg {\n fill: var(--header-text);\n /* width: 16px;\n height: 17px; */\n }\n \n .btn {\n width: 100%;\n height: 40px;\n border-radius: 3px;\n display: flex;\n align-items: center;\n justify-content: center;\n text-transform: capitalize;\n border: none;\n transition: all 0.2s ease-in-out;\n }\n \n .btn:hover {\n transform: scale(1.02);\n }\n \n .btn svg {\n fill: inherit;\n margin-right: 10px;\n }\n \n .clock-out {\n background: var(--clock-out-bg);\n color: var(--clock-text);\n }\n \n .btn-main {\n background: var(--btn-main-bg);\n color: var(--btn-main-text);\n }\n \n .btn-main svg {\n fill: var(--btn-main-text);\n }\n \n .clock-out svg {\n fill: var(--clock-svg);\n }\n \n .search-container {\n width: 100%;\n position: fixed;\n z-index: 200000;\n }\n \n .search-drop-down {\n background: var(--nav-bg);\n height: 100vh;\n width: 100%;\n border-top: none;\n overflow-x: auto;\n overflow-y: auto !important;\n z-index: 100000;\n top: 50px;\n color: var(--text-color);\n padding: 10px 15px 10px 15px;\n position: absolute;\n }\n \n .s-quick-links {\n display: flex;\n flex-direction: column;\n }\n \n .s-quick-item {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px 15px 20px 32px;\n border-bottom: 0.5px solid var(--s-result-border-color);\n }\n \n\n\n`;\n\nexport default mobileStyles;\n","const deskTopStyles = `\n\n .nav {\n display: flex;\n position: relative !important;\n align-items: center;\n /* flex-wrap: wrap; */\n justify-content: space-between;\n background: var(--header-bg);\n min-height: 50px;\n height: auto;\n padding-right: 20px;\n color: var(--header-text);\n font-weight: 96;\n font-size: 14px;\n line-height: 20px;\n top: 0;\n left: 0;\n border-bottom: var(--group-heading-border-bottom);\n }\n \n .link {\n color: var(--header-text) !important;\n }\n \n .left-item {\n display: flex;\n align-items: center;\n }\n \n .nav .first-row svg {\n margin-left: 20px;\n margin-right: 21px;\n cursor: pointer;\n fill: var(--icon-color);\n }\n \n .nav .nav-item svg {\n margin-right: 0;\n /* margin-top: 21px;\n margin-bottom: 17px; */\n cursor: pointer;\n fill: var(--icon-color);\n opacity: 0.5;\n }\n \n .first-row {\n display: flex;\n align-items: center;\n /* margin-top: 20px;\n margin-bottom: 17px; */\n }\n \n .second-row {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n /* margin-top: 20px;\n margin-bottom: 17px; */\n }\n \n .divider {\n width: 1px;\n height: 16px;\n background: #fff;\n opacity: 0.2;\n margin-left: 21px;\n margin-right: 21px;\n }\n \n .nav-item {\n cursor: pointer;\n margin-left: 2px;\n margin-right: 2px;\n font-family: ErplyLadna !important;\n user-select: none;\n min-width: 50px;\n /* background-color: aqua; */\n display: flex;\n align-items: center;\n padding: 2px 10px;\n /* padding-left: 10px;\n padding-right: 10px; */\n }\n \n .active {\n color: var(--nav-hover);\n font-weight: 500;\n }\n \n .nav-item:hover {\n color: var(--nav-hover);\n }\n \n .first {\n margin-left: 0px;\n }\n \n .subitem-wrapper {\n position: absolute !important;\n display: flex;\n max-height: 700px;\n border-top: none;\n overflow-x: auto;\n overflow-y: auto !important;\n z-index: 100000;\n width: 100%;\n background: var(--nav-bg);\n top: 50px;\n color: var(--text-color);\n }\n \n .side-bar-inner {\n height: auto;\n width: 260px;\n border-radius: 0px;\n padding: 20px 30px 20px 30px;\n background: var(--side-inner-bg);\n text-align: center;\n /* display: flex;\n flex-direction: column; */\n /* align-items: center;\n justify-content: flex-start; */\n }\n \n .menu-groups {\n /* display: grid;\n grid-template-columns: auto auto auto; */\n padding: 20px 30px 20px 30px;\n display: flex;\n flex-wrap: wrap;\n }\n \n /* .menu-groups::after {\n content: \"\";\n display: table;\n clear: both;\n } */\n \n .menu-groups-item {\n height: auto;\n max-width: 258px;\n padding: 0px 15px 15px 15px;\n /* flex: 1 0 calc(25% - 10px); */\n }\n \n .menu-groups-title {\n display: flex;\n align-items: center;\n margin-bottom: 15px;\n background: var(--group-heading-bg);\n padding: 10px;\n border-bottom: var(--group-heading-border-bottom);\n font-weight: bold;\n font-size: 12px !important;\n line-height: 16px;\n letter-spacing: 0.015em;\n text-transform: uppercase;\n }\n \n .menu-groups-children {\n padding: 3px 10px 10px 10px;\n display: flex;\n flex-direction: column;\n }\n \n .menu-groups-children a {\n margin-bottom: 10px;\n font-style: normal;\n font-weight: 96;\n line-height: 24px;\n letter-spacing: 0.005em;\n }\n \n .menu-groups-children a:hover {\n opacity: 0.5;\n }\n \n /* .side-bar-inner input {\n background: var(--input-bg);\n border: var(--input-border);\n border-radius: var(--border-radius);\n padding: 10px;\n width: 200px;\n color: var(--text-color); \n } */\n \n input::placeholder {\n color: var(--input-placeholder-color);\n }\n \n label {\n display: grid;\n grid-template: 1fr / auto 1fr;\n /* gap: 7px; */\n background: var(--input-bg);\n border: var(--input-border);\n border-radius: var(--border-radius);\n padding: 10px;\n /* width: 237px; */\n color: var(--text-color);\n cursor: text;\n }\n \n label svg {\n fill: var(--icon-color);\n margin-left: 64px !important;\n }\n \n label:focus-within {\n border: var(--input-border);\n }\n \n label > input {\n outline: none;\n border: none;\n background: transparent;\n color: var(--text-color);\n width: 157%;\n }\n \n .quick-links {\n width: 100%;\n text-align: left !important;\n display: flex;\n flex-direction: column;\n }\n \n .quick-links-heading {\n margin-top: 20px;\n margin-bottom: 10px;\n display: inline-block;\n font-size: 14px;\n font-style: normal;\n font-weight: bold;\n line-height: 16px;\n letter-spacing: 0.015em;\n text-align: left;\n text-transform: uppercase;\n color: var(--quick-link-heading);\n }\n \n .quick-links-items {\n display: flex;\n align-items: center;\n margin-top: 15px;\n font-size: 14px;\n font-style: normal;\n font-weight: bold;\n line-height: 20px;\n letter-spacing: 0.0025em;\n text-align: left;\n width: 100%;\n }\n \n .quick-links-items:hover {\n opacity: 0.5;\n }\n \n /* .actions {\n display: flex;\n align-items: center;\n \n } */\n \n /* .actions svg {\n margin-top: 17px;\n margin-bottom: 15px;\n fill: rgba(255, 255, 255, 0.8);\n cursor: pointer;\n }\n \n .actions svg:hover {\n fill: #fff;\n } */\n \n .btn {\n padding: 5px;\n border: none;\n border-radius: 3px;\n cursor: pointer;\n font-weight: 96 !important;\n /* text-transform: uppercase; */\n }\n \n /* .user {\n height: 40px;\n width: 40px;\n border-radius: 100px;\n padding: 10px;\n background: var(--user-bg);\n cursor: pointer;\n } */\n .username {\n font-weight: bold !important;\n }\n \n .user:hover {\n color: var(--hover-text) !important;\n background: var(--nav-hover);\n }\n \n .lang:hover {\n color: #fff;\n }\n \n .action-bar {\n position: absolute;\n width: 725px;\n max-height: 100vh;\n /* left: 0px; */\n top: 50px;\n right: 0;\n background: var(--action-drop-bg);\n box-shadow: var(--nav-shadow);\n display: flex;\n /* justify-content: flex-end;\n align-items: flex-start; */\n padding: 20px 30px;\n z-index: 200000;\n color: var(--text-color);\n }\n \n .action-bar a {\n color: var(--text-color);\n }\n \n .action-bar a:hover {\n color: var(--nav-hover);\n }\n \n .item {\n width: auto;\n padding: 10px;\n display: flex;\n flex-direction: column;\n }\n \n .languages {\n width: 191px;\n padding: 10px;\n display: flex;\n flex-direction: column;\n }\n \n .drop-divider {\n background: var(--divider-bg);\n width: 1px;\n height: 320px;\n margin: 0px 20px 0px 20px;\n }\n \n .language-item {\n display: flex;\n align-items: center;\n margin-bottom: 20px;\n cursor: pointer;\n justify-content: space-between;\n }\n \n .language-item:hover {\n color: var(--nav-hover);\n }\n \n .language-name {\n margin-left: 10px;\n }\n \n .language-item .right {\n display: flex;\n align-items: center;\n }\n \n .flex-item {\n display: flex;\n align-items: center;\n margin-bottom: 20px;\n }\n \n .flex-item:hover {\n color: var(--nav-hover);\n }\n \n .btn {\n width: 169px;\n height: 40px;\n border-radius: 3px;\n display: flex;\n align-items: center;\n justify-content: center;\n /* text-transform: capitalize; */\n border: none;\n transition: all 0.2s ease-in-out;\n }\n \n .btn:hover {\n transform: scale(1.02);\n }\n \n .btn svg {\n fill: inherit;\n margin-right: 10px;\n }\n \n .clock-out {\n background: var(--clock-out-bg);\n color: var(--clock-text);\n }\n \n .clock-out a {\n color: var(--clock-text) !important;\n }\n \n .btn-main {\n background: var(--btn-main-bg);\n color: var(--btn-main-text);\n }\n \n .btn-main a {\n color: var(--btn-main-text) !important;\n }\n \n .btn-main svg {\n fill: var(--btn-main-text);\n }\n \n .clock-out svg {\n fill: var(--clock-svg);\n }\n \n .info-group {\n cursor: pointer;\n color: var(--header-text);\n }\n \n .info-group:hover svg {\n fill: var(--nav-hover);\n }\n \n .info-group svg {\n fill: var(--header-text);\n /* width: 24px;\n height: 23px; */\n }\n \n .search-drop-down {\n background: var(--nav-bg);\n max-height: 600px;\n width: 100%;\n border-top: none;\n overflow-x: auto;\n overflow-y: auto !important;\n z-index: 100000;\n top: 51px;\n color: var(--text-color);\n padding: 30px 30px 30px 100px;\n position: absolute;\n }\n \n .content {\n width: 740px;\n }\n \n .close-icon {\n position: absolute;\n right: 74px;\n top: 22px;\n cursor: pointer;\n color: var(--icon-color);\n }\n \n .close-icon:hover {\n opacity: 1;\n }\n \n .s-quick-links {\n display: flex;\n flex-wrap: wrap;\n }\n \n .s-quick-item {\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 8px 20px 8px 15px;\n background: var(--s-quick-link-bg);\n border-radius: 3px;\n margin: 0px 10px 15px 0px;\n color: var(--s-quick-link-color);\n }\n \n .s-quick-item:hover {\n background-color: var(--s-quick-link-hover);\n }\n \n .text-with-icon {\n color: var(--header-text);\n cursor: pointer;\n }\n\n \n .text-with-icon a {\n color: var(--header-text);\n }\n \n .text-with-icon:hover {\n color: var(--nav-hover);\n }\n\n .text-with-icon:hover a {\n color: var(--nav-hover);\n }\n\n .text-with-icon:hover svg {\n color: var(--nav-hover);\n }\n\n .close-icon-sub {\n position: absolute;\n right: 15px;\n top: 5px;\n color: var(--icon-color);\n cursor: pointer;\n }\n\n .close-icon-sub:hover {\n opacity: 1;\n }\n\n`;\n\nexport default deskTopStyles;\n","import React from \"react\";\nimport { IItems } from \"../../@types/types\";\n\ninterface NavItemProps {\n item: IItems;\n isFirst: boolean;\n toggleNavItem: (item: IItems | null) => void;\n selectedId: string;\n}\n\nconst NavItem: React.FC = ({\n item,\n isFirst,\n toggleNavItem,\n selectedId,\n}) => {\n const { isGroup, targetUrl, title, targetType, id } = item;\n\n const isPop = targetUrl.includes(\"popup.php\");\n return (\n {\n e.stopPropagation();\n if (isGroup) {\n toggleNavItem(item);\n } else {\n toggleNavItem(null);\n }\n }}\n onDoubleClick={() => {\n window.location.href = targetUrl;\n }}\n >\n {isGroup ? (\n {title}\n ) : isPop || targetType === \"BLANK\" ? (\n \n {title}\n \n ) : (\n \n {title}\n \n )}\n \n );\n};\n\nexport default NavItem;\n","import React from \"react\";\nimport { IMenuItem } from \"../../@types/types\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { colors } from \"../../utils\";\n\ninterface AdditionalLinksProps {\n links: IMenuItem[];\n}\n\nexport const AdditionalLinks: React.FC = ({ links }) => {\n return (\n \n
\n \n Additional Links\n
\n
\n {links.map((e) => {\n if (e.isVisible) {\n if (e.targetType === \"BLANK\") {\n return (\n
\n {e.title}\n \n );\n } else {\n return (\n
\n {e.title}\n \n );\n }\n }\n return null;\n })}\n
\n
\n );\n};\n","import React from \"react\";\nimport { IMenuGroup } from \"../../@types/types\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { colors } from \"../../utils\";\n\ninterface GroupItemProps {\n item: IMenuGroup;\n index: number;\n}\n\nconst GroupItem: React.FC = ({ item, index }) => {\n return (\n \n
\n {item.iconClass ? (\n \n ) : null}\n \n {item.title}\n \n
\n
\n {item.items.map((e) => {\n if (e.isVisible) {\n if (e.targetType === \"BLANK\") {\n return (\n
\n {e.title}\n \n );\n } else {\n return (\n
\n {e.title}\n \n );\n }\n }\n return null;\n })}\n
\n
\n );\n};\n\nexport default GroupItem;\n","import React from \"react\";\nimport { IMenuGroup, IMenuItem } from \"../../@types/types\";\nimport { AdditionalLinks } from \"./AdditionalLinks\";\nimport GroupItem from \"./GroupItem\";\n\ninterface MenuGroupsProps {\n groups: IMenuGroup[];\n additionalLinks: IMenuItem[];\n}\n\nconst MenuGroups: React.FC = ({ groups, additionalLinks }) => {\n return (\n \n {groups.map((group, index) => {\n if (group.isVisible && group?.items?.length) {\n return
;\n }\n return null;\n })}\n {additionalLinks.length ? (\n
\n ) : null}\n
\n );\n};\n\nexport default MenuGroups;\n","import React from \"react\";\nimport { IMenuItem } from \"../../@types/types\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { handleLinkClick } from \"../../utils\";\n\ninterface QuickLinksProps {\n quickLinks: IMenuItem[];\n isSearch: boolean;\n}\n\nconst QuickLinks: React.FC = ({ quickLinks, isSearch }) => {\n return (\n \n
\n Quick Links\n \n {quickLinks.map((item) => {\n if (item.isVisible) {\n return (\n
{\n handleLinkClick(item.targetUrl, item.targetType === \"BLANK\");\n }}\n >\n {item.iconClass ? (\n
\n ) : null}\n {item.targetType === \"BLANK\" ? (\n
\n {item.title}\n \n ) : (\n
\n {item.title}\n \n )}\n
\n );\n }\n return null;\n })}\n
\n );\n};\n\nexport default QuickLinks;\n","import React from \"react\";\nimport { ReactComponent as SearchIcon } from \"../icons/search.svg\";\nimport { ISearch } from \"../../@types/types\";\n\ninterface SearchInputProps {\n search: ISearch;\n inputValue: string;\n onChange: (e: React.ChangeEvent) => void;\n hasMargin?: boolean;\n}\n\nconst SearchInput: React.FC = ({\n search,\n inputValue,\n onChange,\n hasMargin,\n}) => {\n const onSearch = (e: React.FormEvent) => {\n e.preventDefault();\n\n const url = search.targetUrl.split(\"{SEARCH_VALUE}\");\n if (url.length) {\n window.location.href = `${url[0]}${inputValue}`;\n }\n };\n\n return (\n // \n \n );\n};\n\nexport default SearchInput;\n","import React from \"react\";\nimport QuickLinks from \"../menu-items/QuickLinks\";\nimport { IItems } from \"../../@types/types\";\nimport SearchInput from \"../common/SearchInput\";\n\ninterface SideBarInnerProps {\n selectedItem: IItems;\n inputValue: string;\n onChange: (e: React.ChangeEvent) => void;\n}\n\nconst SideBarInner: React.FC = ({\n selectedItem,\n onChange,\n inputValue,\n}) => {\n return (\n \n {selectedItem.menu?.search && (\n \n )}\n \n
\n );\n};\n\nexport default SideBarInner;\n","import React from \"react\";\nimport { IItems } from \"../../@types/types\";\nimport { getReleaseInfo } from \"../../utils\";\nimport MenuGroups from \"../menu-items/MenuGroups\";\nimport SideBarInner from \"./SideBarInner\";\nimport FeatherIcon from \"feather-icons-react\";\n\ninterface SubMenuItemProps {\n selectedItem: IItems;\n inputValue: string;\n onChange: (e: React.ChangeEvent) => void;\n top: number;\n handleSubMenuClose: () => void;\n}\n\nexport const SubMenuItem: React.FC = ({\n selectedItem,\n inputValue,\n onChange,\n top,\n handleSubMenuClose,\n}) => {\n return (\n \n \n v. {getReleaseInfo()}\n \n {\n handleSubMenuClose();\n }}\n />\n {selectedItem.menu?.search || selectedItem.menu?.quickLinks?.length ? (\n \n ) : null}\n {selectedItem.menu?.menuGroups || selectedItem.menu?.additionalLinks ? (\n \n ) : null}\n
\n );\n};\n","import React from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { ReactComponent as LogoutIcon } from \"../icons/log-out.svg\";\nimport { ReactComponent as ClockIcon } from \"../icons/clock.svg\";\nimport { ReactComponent as ReloadIcon } from \"../icons/reload.svg\";\nimport { filterItems, handleLinkClick } from \"../../utils\";\nimport { useAppState } from \"../../context/appContex\";\n\nconst ActionDropDown: React.FC<{\n top: number;\n}> = ({ top }) => {\n const { menuData, languages, init, user, renderFlag } = useAppState();\n\n const { infoGroup, settingsGroup, authGroup } = filterItems(\n menuData?.system?.items || [],\n [\"sys-menu-terms\", \"sys-menu-help\"]\n );\n\n return (\n \n
\n {languages.map((lang) => {\n return (\n
{\n window.location.href = lang.targetUrl;\n }}\n >\n
\n {lang.isActive &&
}\n
\n );\n })}\n
\n
\n
\n {infoGroup.map((info) => {\n return (\n
{\n e.stopPropagation();\n handleLinkClick(info.targetUrl, true);\n return;\n }}\n >\n {info.iconClass ? (\n
\n ) : (\n
\n )}\n {info.targetType === \"BLANK\" || info.targetType === \"POPUP\" ? (\n
\n {info.title}\n \n ) : (\n
\n {info.title}\n \n )}\n
\n );\n })}\n
init(\"REFRESH\")}\n >\n \n Reload Menu\n
\n
\n
\n
\n {user ? (\n
\n \n {user}\n \n
\n ) : null}\n {settingsGroup.map((group) => {\n return (\n
{\n e.stopPropagation();\n handleLinkClick(group.targetUrl, group.targetType === \"BLANK\");\n return;\n }}\n >\n {group.iconClass ? (\n
\n ) : null}\n {group.targetType === \"BLANK\" || group.targetType === \"POPUP\" ? (\n
\n {group.title}\n \n ) : (\n
\n {group.title}\n \n )}\n
\n );\n })}\n {authGroup.map((auth) => {\n if (auth.id === \"sys-menu-logout\") {\n return (\n
\n
\n
\n );\n }\n\n return (\n
\n
\n
\n );\n })}\n
\n
\n );\n};\n\nexport default ActionDropDown;\n","import React, { useEffect, useState } from \"react\";\nimport { useAppState } from \"../../context/appContex\";\nimport { ReactComponent as SearchIcon } from \"../icons/search.svg\";\n// import { EventContext } from \"direflow-component\";\n\ninterface GlobalSearchProps {\n handleSearch: (searchValue: string) => void;\n closeGlobalSearch: () => void;\n}\nconst GlobalSearch: React.FC = ({\n handleSearch,\n closeGlobalSearch,\n}) => {\n const [searchValue, setSearchValue] = useState(\"\");\n const { menuData, isGlobalSearchVisible } = useAppState();\n\n // const dispatch = useContext(EventContext);\n\n // const escFunction = useCallback(\n // (event: KeyboardEvent) => {\n // if (event.key === \"Escape\") {\n // closeGlobalSearch();\n // setSearchValue(\"\");\n // }\n // },\n // [closeGlobalSearch]\n // );\n\n useEffect(() => {\n if (!isGlobalSearchVisible) {\n setSearchValue(\"\");\n }\n }, [isGlobalSearchVisible]);\n\n // useEffect(() => {\n // document.addEventListener(\"keydown\", escFunction, false);\n\n // return () => {\n // document.removeEventListener(\"keydown\", escFunction, false);\n // };\n // }, [escFunction]);\n\n // §ion=search&q=\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n e.stopPropagation();\n if (menuData) {\n window.location.href = `${menuData.system.homeMenuItem.targetUrl}§ion=search&q=${searchValue}`;\n }\n };\n\n return (\n \n \n \n \n
\n );\n};\n\nexport default GlobalSearch;\n","import React from \"react\";\nimport FeatherIcon from \"feather-icons-react\";\nimport { ReactComponent as Enter } from \"../icons/enter.svg\";\nimport { IFilterData, IMenuItem, IMainItem } from \"../../@types/types\";\nimport { colors } from \"../../utils\";\n// import useKeyPress from \"../../../../hooks/useKeyPress\";\nimport { useAppState } from \"../../context/appContex\";\nimport { RecentSearches, MainResults } from \"../common/MainSearch\";\n// import { EventContext } from \"direflow-component\";\n\ninterface SearchDropDownProps {\n closeGlobalSearch: () => void;\n searchResult: IFilterData;\n searchValue: string;\n}\n\nconst Notification = () => {\n return (\n \n
\n Use ⌘+K{\" \"}\n keyboard shortcut to start searching any time and{\" \"}\n esc to dismiss search window.\n
\n
\n Press\n \n Enter\n {\" \"}\n to search for customers, invoices, tasks and products.\n
\n
\n );\n};\n\nconst QuickLinks = ({\n links,\n}: {\n links: Pick[];\n}) => {\n return (\n \n );\n};\n\nconst SearchDropDown: React.FC = ({\n closeGlobalSearch,\n searchResult,\n searchValue,\n}) => {\n // const [cursor, setCursor] = useState(-1);\n // const [hovered, setHovered] = useState(undefined);\n // const [selected, setSelected] = useState(undefined);\n // const downPress = useKeyPress(\"ArrowDown\");\n // const upPress = useKeyPress(\"ArrowUp\");\n // const enterPress = useKeyPress(\"Enter\");\n // const [showEnterKey, setShowEnterKey] = useState(false);\n\n // const ref = useRef(null);\n\n // const dispatch = useContext(EventContext);\n\n const { clientCode, user } = useAppState();\n\n const { quickLinks, mainItems } = searchResult;\n\n // const refs = useRef>([]);\n // refs.current = [];\n\n // useEffect(() => {\n // if (mainItems.length && downPress) {\n // setCursor((prevState) =>\n // prevState < mainItems.length - 1 ? prevState + 1 : prevState\n // );\n // }\n // }, [downPress, mainItems]);\n\n // useEffect(() => {\n // if (mainItems.length && upPress) {\n // setCursor((prevState) => (prevState > 0 ? prevState - 1 : prevState));\n // }\n // }, [upPress, mainItems]);\n\n // useEffect(() => {\n // if (mainItems.length && enterPress) {\n // setSelected(mainItems[cursor]);\n // }\n // }, [cursor, enterPress, mainItems]);\n\n // useEffect(() => {\n // if (mainItems.length && hovered) {\n // setCursor(mainItems.indexOf(hovered));\n // }\n // }, [hovered, mainItems]);\n\n // useEffect(() => {\n // setCursor(-1);\n // }, [searchValue]);\n\n // const addToRef = (ele: HTMLDivElement) => {\n // if (ele && !refs.current.includes(ele)) {\n // refs.current.push(ele);\n // }\n // };\n\n // useEffect(() => {\n // if ((cursor === 0 || cursor > 0) && (upPress || downPress)) {\n // refs.current[cursor].scrollIntoView({ behavior: \"smooth\" });\n // }\n // }, [cursor, upPress, downPress]);\n\n const value = sessionStorage.getItem(`recent_search_${clientCode}_${user}`);\n const recentSearches = JSON.parse(\n value ? value : JSON.stringify(\"\")\n ) as IMainItem[];\n\n return (\n \n
\n {searchValue ? (\n <>\n \n {recentSearches && recentSearches.length ? (\n <>\n Recent searches\n \n >\n ) : null}\n {mainItems.length ? (\n <>\n \n Results in Menus\n \n {\n // setHovered(item);\n // setShowEnterKey(true);\n // }}\n // onMouseLeave={() => {\n // setHovered(undefined);\n // setShowEnterKey(false);\n // setCursor(-1);\n // }}\n searchValue={searchValue}\n // showEnterKey={showEnterKey}\n clientCode={clientCode}\n user={user}\n // addToRef={addToRef}\n />\n >\n ) : null}\n >\n ) : (\n \n )}\n
\n
{\n const event = new CustomEvent(\"close-global-search\");\n dispatchEvent(event);\n closeGlobalSearch();\n }}\n />\n \n );\n};\n\nexport default SearchDropDown;\n","import React, { useState, useEffect, useRef } from \"react\";\nimport { ReactComponent as Logo } from \"../logo/logo.svg\";\nimport { IItems, IFilterData } from \"../../@types/types\";\nimport NavItem from \"./NavItem\";\nimport { SubMenuItem } from \"./SubMenuItem\";\nimport Actions from \"../common/Actions\";\nimport ActionDropDown from \"./ActionDropDown\";\nimport { useAppState } from \"../../context/appContex\";\nimport { ReactComponent as SearchIcon } from \"../icons/search.svg\";\nimport GlobalSearch from \"./GlobalSearch\";\nimport SearchDropDown from \"./SearchDropDown\";\nimport { handleFilter } from \"../../utils\";\n// import { EventContext } from \"direflow-component\";\nimport FeatherIcon from \"feather-icons-react\";\n\nconst Header: React.FC = () => {\n const [selectedItem, setSelectedItem] = useState(null);\n const [inputValue, setInputValue] = useState(\"\");\n const [isDropDown, setIsDropDown] = useState(false);\n const [isGlobalSearch, setIsGlobalSearch] = useState(false);\n const [searchResult, setSearchResult] = useState({\n quickLinks: [],\n mainItems: [],\n });\n const [top, setTop] = useState(50);\n\n const [searchValue, setSearchValue] = useState(\"\");\n // const dispatch = useContext(EventContext);\n\n const headerRef = useRef(null);\n\n const {\n menuData,\n flatenedData,\n isCloseAppDropDownsFromApp,\n setIsCloseAppDropDownsFromApp,\n isGlobalSearchVisible,\n theme,\n setMode,\n setIsGlobalSearchVisible,\n } = useAppState();\n\n const onChange = (e: React.ChangeEvent) => {\n setInputValue(e.target.value);\n };\n\n const switchTheme = () => {\n const newMode = theme === \"light\" ? \"dark\" : \"light\";\n\n setMode(newMode);\n };\n\n const closeGlobalSearch = () => {\n setIsGlobalSearch(false);\n setIsGlobalSearchVisible(false);\n setIsCloseAppDropDownsFromApp(false);\n setSearchValue(\"\");\n setSearchResult({\n quickLinks: [],\n mainItems: [],\n });\n };\n\n const handleSearch = (searchValue: string) => {\n setSearchValue(searchValue);\n const result = handleFilter(flatenedData, searchValue);\n\n // console.log(\"result\", result);\n\n setSearchResult(result);\n };\n\n const openGlobalSearch = () => {\n setIsDropDown(false);\n setSelectedItem(null);\n setIsGlobalSearch(true);\n setIsCloseAppDropDownsFromApp(false);\n setIsGlobalSearchVisible(true);\n };\n\n const toggleNavItem = (item: IItems | null) => {\n setInputValue(\"\");\n setIsCloseAppDropDownsFromApp(false);\n\n if (isDropDown) {\n setIsDropDown(false);\n }\n\n if (item) {\n if (selectedItem && selectedItem.id === item.id) {\n setSelectedItem(null);\n } else {\n setSelectedItem(item);\n }\n } else {\n setSelectedItem(null);\n }\n };\n\n const closeSubMenuItem = () => {\n if (selectedItem) {\n setSelectedItem(null);\n }\n };\n\n const closeSideDropDown = () => {\n if (isDropDown) {\n setIsDropDown(false);\n }\n };\n\n // const handleKeyDown = useCallback(\n // (e: KeyboardEvent) => {\n // if (e.defaultPrevented) {\n // return; // Should do nothing if the default action has been cancelled\n // }\n // let handled = false;\n // if (e.key !== undefined && e.key.toLowerCase() === \"k\" && e.metaKey) {\n // if (!isGlobalSearch) {\n // openGlobalSearch();\n // handled = true;\n // }\n // } else if (e.keyCode !== undefined && e.keyCode === 75 && e.metaKey) {\n // if (!isGlobalSearch) {\n // openGlobalSearch();\n // handled = true;\n // }\n // }\n\n // if (handled) {\n // // Suppress \"double action\" if event handled\n // e.preventDefault();\n // }\n // },\n\n // // eslint-disable-next-line\n // [isGlobalSearch]\n // );\n\n // useEffect(() => {\n // document.addEventListener(\"keydown\", handleKeyDown, false);\n\n // return () => {\n // document.removeEventListener(\"keydown\", handleKeyDown, false);\n // };\n // }, [handleKeyDown]);\n\n useEffect(() => {\n if (isCloseAppDropDownsFromApp) {\n closeSubMenuItem();\n closeSideDropDown();\n closeGlobalSearch();\n }\n\n // eslint-disable-next-line\n }, [isCloseAppDropDownsFromApp]);\n\n useEffect(() => {\n if (isGlobalSearchVisible) {\n closeSubMenuItem();\n closeSideDropDown();\n } else {\n closeGlobalSearch();\n }\n // eslint-disable-next-line\n }, [isGlobalSearchVisible]);\n\n useEffect(() => {\n if (headerRef.current) {\n setTop(headerRef.current.offsetHeight);\n }\n // eslint-disable-next-line\n }, [headerRef, headerRef.current]);\n\n useEffect(() => {\n window.addEventListener(\"resize\", () => {\n if (headerRef.current) {\n setTop(headerRef.current.offsetHeight);\n }\n });\n // eslint-disable-next-line\n }, [headerRef, headerRef.current]);\n\n return (\n \n );\n};\n\nexport default Header;\n","import React from \"react\";\nimport deskTopStyles from \"../../styles/desktopStyles\";\nimport Header from \"./Header\";\n\nconst DeskTop: React.FC = () => {\n return (\n <>\n \n \n >\n );\n};\n\nexport default DeskTop;\n","import React from \"react\";\nimport { useMediaQuery } from \"react-responsive\";\nimport Mobile from \"../components/mobile/Main\";\nimport DeskTop from \"../components/desktop/Main\";\n\nconst Main: React.FC = () => {\n const isTabletOrMobile = useMediaQuery({ query: \"(max-width: 820px)\" });\n\n return <>{isTabletOrMobile ? : }>;\n};\n\nexport default Main;\n","import React from \"react\";\nimport { ReactComponent as Logo } from \"./components/logo/logo.svg\";\nimport { ReactComponent as ReloadIcon } from \"./components/icons/reload.svg\";\nimport { useAppState } from \"./context/appContex\";\nimport NavItem from \"./components/desktop/NavItem\";\nimport { ReactComponent as SearchIcon } from \"./components/icons/search.svg\";\nimport FeatherIcon from \"feather-icons-react\";\nimport Actions from \"./components/common/Actions\";\nimport { useMediaQuery } from \"react-responsive\";\nimport { IMenuData } from \"./@types/types\";\nimport deskTopStyles from \"./styles/desktopStyles\";\n\nexport const InitialRender: React.FC = () => {\n const { init, clientCode, accountLang, user, theme } = useAppState();\n const isTabletOrMobile = useMediaQuery({ query: \"(max-width: 820px)\" });\n\n const cachePhrase = `${clientCode}-${user?.trim()}-${accountLang?.trim()}-${user?.trim()}-new`;\n const value = sessionStorage.getItem(cachePhrase);\n const savedMenu = JSON.parse(value ? value : JSON.stringify(\"\")) as IMenuData;\n\n const showRefreshButton = !!(clientCode && accountLang) && !value;\n\n const renderInfo = () => {\n if (!clientCode && !accountLang) {\n return (\n <>\n \n clientCode\n \n and\n \n accountLang\n \n are required\n >\n );\n }\n if (!clientCode) {\n return (\n <>\n \n clientCode\n {\" \"}\n is required\n >\n );\n }\n\n if (!accountLang) {\n return (\n <>\n \n accountLang\n {\" \"}\n is required\n >\n );\n }\n };\n\n return (\n <>\n \n \n >\n );\n};\n","import React, { useRef, useEffect } from \"react\";\nimport rootStyles from \"./styles/rootStyle\";\nimport { AppStateContextProvider, useAppState } from \"./context/appContex\";\nimport { IMainProps } from \"./@types/types\";\nimport Main from \"./container/Main\";\nimport { InitialRender } from \"./InitialRender\";\n\nconst App: React.FC = () => {\n const {\n theme,\n menuData,\n isError,\n clientCode,\n accountLang,\n setIsGlobalSearchVisible,\n setIsCloseAppDropDownsFromApp,\n } = useAppState();\n const ref = useRef(null);\n\n useEffect(() => {\n if (ref && ref.current) {\n const element = ref.current;\n document.addEventListener(\"click\", (e) => {\n if (!e.composedPath().includes(element)) {\n // close any open drop down if clicked outside of the component\n // element.isCloseComDropDown = true;\n setIsCloseAppDropDownsFromApp(true);\n // element.isGlobalSearchVisible = false;\n setIsGlobalSearchVisible(false);\n } else {\n setIsCloseAppDropDownsFromApp(false);\n // element.isCloseComDropDown = false;\n }\n });\n // close global search when a this event is fired from the component\n\n // console.log(\"new-user-menu is mounted on the DOM\");\n }\n }, [ref, setIsGlobalSearchVisible, setIsCloseAppDropDownsFromApp]);\n\n return (\n \n \n
\n {menuData ? : null}\n {isError || !menuData || !accountLang || !clientCode ? (\n \n ) : null}\n {/* */}\n
\n
\n );\n};\n\nconst MainApp: React.FC = ({ ...props }) => {\n return (\n \n \n \n );\n};\n\nMainApp.defaultProps = {\n clientCode: \"104180\",\n accountLang: \"eng\",\n user: \"Prince Test\",\n sessionKey: \"10a0b4dceb3711efff95d838ef0488dc068cdd639555\",\n // newMenuItem: null,\n // isCloseComDropDown: false,\n // isGlobalSearchVisible: false,\n};\n\nexport default MainApp;\n","const rootStyles = `\n\n:host {\n --header-bg: #ffffff;\n --header-text: #000000b2;\n --nav-hover: #1679e8;\n --hover-text: #ffffff;\n --nav-bg: linear-gradient(\n 0deg,\n rgba(61, 148, 246, 0.05),\n rgba(61, 148, 246, 0.05)\n ),\n linear-gradient(0deg, #ffffff, #ffffff);\n --side-inner-bg: rgba(0, 0, 0, 0.025);\n --input-bg: #ffffff;\n --input-placeholder-color: #808080;\n --input-border: 1px solid #cccccc;\n --text-color: #000000b2;\n --heading-bg: rgba(0, 0, 0, 0.025);\n --heading-shadow: 0px 2px 0px rgba(0, 0, 0, 0.1);\n --border-radius: 5px;\n --nav-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1);\n --nav-border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n --quick-link-heading: #00000066;\n --group-heading-bg: rgba(0, 0, 0, 0.025);\n --header-border-bottom: 0.2px solid #bdbdbd;\n --group-heading-border-bottom: 0.2px solid #bdbdbd;\n --user-bg: rgba(0, 0, 0, 0.05);\n --action-drop-bg: #f9f9f9;\n --divider-bg: rgba(0, 0, 0, 0.1);\n --clock-out-bg: #e0e0e0;\n --clock-text: #000000;\n --clock-svg: rgba(0, 0, 0, 0.7);\n --btn-main-bg: #3d94f6;\n --btn-main-text: rgba(255, 255, 255, 0.8);\n --toggle-active: rgba(0, 0, 0, 0.05);\n --sub-menu-bg: rgba(0, 0, 0, 0.05);\n --sm-bg: #fff;\n --global-search-container-bg: linear-gradient(\n 0deg,\n rgba(61, 148, 246, 0.05),\n rgba(61, 148, 246, 0.05)\n );\n --global-search-color: #000000b2;\n --esc-border-color: rgba(0, 0, 0, 0.4);\n --icon-color: #4b4b4b;\n --notify-bg: rgba(0, 0, 0, 0.025);\n --enter-bg: #4b4b4b;\n --s-quick-link-bg: #384555;\n --s-quick-link-color: #ffff;\n --s-result-border-color: #384555;\n --s-result-hover-bg: #384555;\n --s-section-header-color: #000000b2;\n --s-breadcrumbs-color: #000000b2;\n --s-section-header-color-hover: rgba(255, 255, 255, 0.6);\n --s-quick-link-hover: rgba(0, 0, 0, 0.4);\n --key-bg: linear-gradient(\n 0deg,\n rgba(61, 148, 246, 0.05),\n rgba(61, 148, 246, 0.05)\n );\n font-family: ErplyLadna, sans-serif;\n }\n \n [data-theme=\"dark\"] {\n --key-bg: rgba(0, 0, 0, 0.4);\n --s-quick-link-bg: rgba(255, 255, 255, 0.1);\n --s-quick-link-hover: rgba(255, 255, 255, 0.3);\n --s-result-border-color: rgba(255, 255, 255, 0.1);\n --s-result-hover-bg: rgba(0, 0, 0, 0.4);\n --s-breadcrumbs-color: rgba(255, 255, 255, 0.6);\n --s-quick-link-color: #ffff;\n --s-section-header-color: rgba(255, 255, 255, 0.6);\n --s-section-header-color-hover: rgba(255, 255, 255, 0.6);\n --icon-color: #bec2c8;\n --header-bg: #1e2833;\n --sm-bg: #223042;\n --header-text: rgba(255, 255, 255, 0.8);\n --nav-hover: #fff;\n --nav-bg: #223042;\n --side-inner-bg: rgba(255, 255, 255, 0.025);\n --input-bg: rgba(255, 255, 255, 0.05);\n --input-placeholder-color: rgba(255, 255, 255, 0.4);\n --input-border: 1px solid rgba(0, 0, 0, 0.2);\n --text-color: #ffffff;\n --heading-bg: rgba(255, 255, 255, 0.8);\n --heading-shadow: none;\n --nav-shadow: none;\n --nav-border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n --quick-link-heading: #ffffffcc;\n --group-heading-bg: #223042;\n --group-heading-border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n --header-border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n --user-bg: #ffffff0d;\n --hover-text: #000000b2;\n --action-drop-bg: #283547;\n --divider-bg: rgba(255, 255, 255, 0.1);\n --clock-out-bg: rgba(255, 255, 255, 0.2);\n --clock-text: #ffffff;\n --clock-svg: rgba(255, 255, 255, 0.7);\n --btn-main-bg: #ffff;\n --btn-main-text: rgba(0, 0, 0, 0.8);\n --toggle-active: rgba(255, 255, 255, 0.1);\n --sub-menu-bg: #384555;\n --global-search-container-bg: #ffff;\n --global-search-color: #000000b2;\n --esc-border-color: rgba(0, 0, 0, 0.4);\n --notify-bg: rgba(255, 255, 255, 0.05);\n --enter-bg: #a1a4a9;\n }\n \n * {\n box-sizing: border-box;\n font-family: ErplyLadna !important;\n }\n \n ul {\n list-style-type: none;\n /* margin: 0; */\n padding: 0;\n }\n \n a {\n text-decoration: none;\n color: inherit;\n cursor: pointer;\n }\n \n .actions {\n display: flex;\n align-items: center;\n /* position: relative; */\n }\n \n .actions svg {\n margin-top: 17px;\n margin-bottom: 15px;\n fill: var(--header-text);\n cursor: pointer;\n }\n \n .actions svg:hover {\n fill: var(--nav-hover);\n }\n \n .user {\n height: 40px;\n width: 40px;\n border-radius: 100px;\n padding: 10px;\n background: var(--user-bg);\n cursor: pointer;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n \n .input {\n width: 100%;\n padding: 12px 30px 12px 12px;\n background: var(--input-bg);\n border: var(--input-border);\n border-radius: var(--border-radius);\n color: var(--text-color);\n }\n \n .input:focus {\n border-color: var(--nav-hover);\n outline: 0 none;\n }\n \n .input-form {\n position: relative;\n }\n \n .input-form svg {\n position: absolute;\n right: 12px;\n top: 12px;\n fill: var(--input-placeholder-color);\n }\n \n input::placeholder {\n color: var(--input-placeholder-color);\n }\n \n .drop-text {\n font-size: 14px;\n font-style: normal;\n font-weight: 96;\n line-height: 24px;\n letter-spacing: 0.005em;\n text-align: left;\n margin-left: 10px;\n }\n \n .search-container {\n display: flex;\n align-items: center;\n background: var(--global-search-container-bg);\n padding: 0px 10px 0px 10px;\n width: 600px;\n border-bottom: none;\n height: 51.25px;\n color: var(--global-search-color);\n }\n \n .search-container svg {\n fill: var(--global-search-color);\n opacity: 0.5;\n }\n \n .search-container input {\n width: 100%;\n padding: 12px 30px 12px 12px;\n background: var(--global-search-container-bg);\n border: none;\n font-weight: 96;\n font-size: 16px;\n line-height: 20px;\n color: var(--global-search-color);\n }\n \n .search-container input:focus {\n outline: 0 none;\n background: transparent;\n }\n \n .esc {\n width: 38px;\n height: 24px;\n border: 1px solid var(--esc-border-color) !important;\n box-sizing: border-box;\n border-radius: 3px;\n background-color: #fff;\n color: rgba(0, 0, 0, 0.6);\n cursor: pointer;\n font-style: normal;\n font-weight: bold;\n font-size: 12px;\n line-height: 20px;\n }\n \n .search-container input::placeholder {\n color: var(--global-search-color) !important;\n opacity: 0.5;\n }\n \n .init-render svg {\n width: 16px;\n height: 17px;\n }\n \n .notify {\n background: var(--notify-bg);\n border-radius: 5px;\n width: 100%;\n padding: 25px;\n }\n \n .key {\n width: auto;\n height: 24px;\n background: var(--key-bg);\n border: 1px solid rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n border-radius: 3px;\n padding: 1px 8px 3px;\n margin: 0px 10px;\n text-align: center;\n color: var(--text-color);\n display: flex;\n align-items: center;\n justify-content: center;\n }\n \n .key-sm {\n width: auto;\n height: 24px;\n background: var(--key-bg);\n border: 1px solid rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n border-radius: 3px;\n padding: 1px 8px 3px;\n margin: 0px 10px;\n text-align: center;\n color: var(--text-color);\n }\n \n .key svg {\n padding-top: 2px;\n margin-right: 5px;\n \n /* fill: var(--icon-color); */\n stroke: var(--text-color);\n }\n \n .key-sm svg {\n padding-top: 2px;\n margin-right: 5px;\n \n /* fill: var(--icon-color); */\n stroke: var(--enter-bg);\n }\n \n .s-section-header {\n font-weight: bold;\n font-size: 14px;\n line-height: 24px;\n color: var(--s-section-header-color);\n margin-top: 10px;\n margin-bottom: 10px;\n display: block;\n }\n \n .s-results-menu {\n padding: 20px 15px 20px 32px;\n border-top: 0.5px solid var(--s-result-border-color);\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n .s-results-menu:last-child {\n border-bottom: 0.5px solid var(--s-result-border-color);\n }\n \n .s-breadcrumbs {\n display: block;\n margin-top: 5px;\n font-size: 12px;\n color: var(--s-breadcrumbs-color);\n }\n \n .s-results-link {\n font-size: 16px;\n line-height: 24px;\n /* identical to box height, or 150% */\n \n letter-spacing: 0.005em;\n }\n \n .active-result,\n .s-results-menu:hover {\n background: var(--s-result-hover-bg);\n }\n \n .s-results-menu:hover .s-results-link {\n color: var(--s-section-header-color-hover);\n }\n \n .s-results-menu:hover .s-breadcrumbs {\n color: var(--s-section-header-color-hover);\n }\n \n .s-results-menu svg {\n stroke: var(--enter-bg);\n }\n \n .s-results-menu:hover svg {\n stroke: var(--s-section-header-color-hover);\n }\n \n .release-info {\n position: absolute;\n right: 40px;\n font-weight: 600;\n top: 5px;\n }\n \n\n`;\n\nexport default rootStyles;\n","export default function _objectDestructuringEmpty(obj) {\n if (obj == null) throw new TypeError(\"Cannot destructure \" + 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 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 _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}","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}","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\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 _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}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n _construct = Reflect.construct.bind();\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n return _construct.apply(null, arguments);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}","import * as React from 'react';\nimport * as ReactDOM from 'react-dom/client';\n\n/* global HTMLElement */\n\n/*\n * Adapted from https://cdn.jsdelivr.net/npm/@webcomponents/webcomponentsjs@2.0.4/custom-elements-es5-adapter.js\n * Rolling this in so we don't need another polyfill.\n */\n\nfunction inject() {\n if (\n (window.HTMLElement && window.HTMLElement._babelES5Adapter) ||\n void 0 === window.Reflect ||\n void 0 === window.customElements ||\n window.customElements.hasOwnProperty('polyfillWrapFlushCallback')\n ) {\n return\n }\n const a = HTMLElement;\n\n window.HTMLElement = function() {\n return Reflect.construct(a, [], this.constructor)\n };\n\n HTMLElement.prototype = a.prototype;\n HTMLElement.prototype.constructor = HTMLElement;\n Object.setPrototypeOf(HTMLElement, a);\n HTMLElement._babelES5Adapter = true;\n}\n\n// @ts-check\n\n/**\n * The name of this strategy.\n * @type string\n */\n\nconst name$1 = 'CustomElements';\n\n/**\n * Registers a custom element.\n *\n * This creates a custom element (ie, a subclass of `window.HTMLElement`) and\n * registers it (ie, `window.customElements.define`).\n *\n * Events will be triggered when something interesting happens.\n *\n * @example\n * defineElement(\n * { component: Tooltip },\n * 'x-tooltip',\n * { onUpdate, onUnmount }\n * )\n *\n * @private\n * @param {ElementSpec} elSpec\n * @param {string} elName\n * @param {ElementEvents} events\n */\n\nfunction defineElement$1(elSpec, elName, events) {\n const { onUpdate, onUnmount, onMount } = events;\n inject();\n const attributes = elSpec.attributes || [];\n\n class ComponentElement extends HTMLElement {\n static get observedAttributes() {\n return ['props-json', ...attributes]\n }\n\n connectedCallback() {\n this._mountPoint = createMountPoint(this, elSpec);\n onMount(this, this._mountPoint);\n }\n\n disconnectedCallback() {\n if (!this._mountPoint) {\n return\n }\n onUnmount(this, this._mountPoint);\n }\n\n attributeChangedCallback() {\n if (!this._mountPoint) {\n return\n }\n onUpdate(this, this._mountPoint);\n }\n }\n\n // Supress warning when quiet mode is on\n if (elSpec.quiet && window.customElements.get(elName)) {\n return\n }\n\n window.customElements.define(elName, ComponentElement);\n}\n\nfunction isSupported$1() {\n return !!(window.customElements && window.customElements.define)\n}\n\n/**\n * Creates a `` element that serves as the mounting point for React\n * components. If `shadow: true` is requested, it'll attach a shadow node.\n *\n * @private\n * @param {HTMLElement} element\n * @param {ElementSpec} elSpec\n */\n\nfunction createMountPoint(element, elSpec) {\n const { shadow } = elSpec;\n if (shadow && element.attachShadow) {\n const mountPoint = document.createElement('span');\n element.attachShadow({ mode: 'open' }).appendChild(mountPoint);\n return mountPoint\n } else {\n return element\n }\n}\n\n/**\n * Check if Shadow DOM is supported.\n */\n\nfunction supportsShadow$1() {\n return !!(document && document.body && document.body.attachShadow)\n}\n\nvar CustomElementsStrategy = /*#__PURE__*/Object.freeze({\n __proto__: null,\n name: name$1,\n defineElement: defineElement$1,\n isSupported: isSupported$1,\n supportsShadow: supportsShadow$1\n});\n\n// @ts-check\n\n/**\n * Some implementations of MutationObserver don't have .forEach,\n * so we need our own `forEach` shim. This is usually the case with\n * polyfilled environments.\n *\n * @type { import('./types').Each }\n */\n\nfunction each(/** @type any */ list, /** @type any */ fn) {\n for (let i = 0, len = list.length; i < len; i++) {\n fn(list[i]);\n }\n}\n\n// @ts-check\n\n/**\n * The name of this strategy.\n * @type string\n */\n\nconst name = 'MutationObserver';\n\n/**\n * List of observers tags.\n * @type ObserverList\n */\n\nconst observers = {};\n\nfunction isSupported() {\n return 'MutationObserver' in window\n}\n\n/**\n * Defines a custom element.\n *\n * @example\n * defineElement(\n * { component: MyComponent },\n * 'my-div',\n * {\n * onMount: () => {},\n * onUpdate: () => {},\n * onUnmount: () => {},\n * }\n * )\n *\n * @private\n * @param {ElementSpec} elSpec\n * @param {string} elName\n * @param {ElementEvents} events\n */\n\nfunction defineElement(elSpec, elName, events) {\n elName = elName.toLowerCase();\n\n // Maintain parity with what would happen in Custom Elements mode\n if (!isValidName(elName)) {\n if (elSpec.quiet) {\n return\n }\n throw new Error(`Remount: \"${elName}\" is not a valid custom element elName`)\n }\n\n if (observers[elName]) {\n if (elSpec.quiet) {\n return\n }\n throw new Error(`Remount: \"${elName}\" is already registered`)\n }\n\n const observer = new MutationObserver(\n /** @type MutationCallback */ mutations => {\n each(mutations, (/** @type MutationRecord */ mutation) => {\n each(mutation.addedNodes, (/** @type Node */ node) => {\n if (isElement(node)) {\n checkForMount(node, elName, events);\n }\n });\n });\n }\n );\n\n observer.observe(document.body, {\n childList: true,\n subtree: true\n });\n\n observers[elName] = /* true */ observer;\n\n function mountElementsInDOM() {\n const nodes = document.getElementsByTagName(elName);\n each(nodes, (/** @type HTMLElement */ node) =>\n checkForMount(node, elName, events)\n );\n }\n\n if (\n document.readyState === 'complete' ||\n document.readyState === 'interactive'\n ) {\n mountElementsInDOM();\n } else {\n window.addEventListener('DOMContentLoaded', mountElementsInDOM);\n }\n}\n\n/**\n * Checks if this new element should fire an `onUpdate` hook.\n * Recurses down to its descendant nodes.\n *\n * @param {HTMLElement} node\n * @param {string} elName\n * @param {ElementEvents} events\n */\n\nfunction checkForMount(node, elName, events) {\n if (node.nodeName.toLowerCase() === elName) {\n // It's a match!\n events.onMount(node, node);\n observeForUpdates(node, events);\n observeForRemoval(node, events);\n } else if (node.children && node.children.length) {\n // Recurse down into the other additions\n each(node.children, (/** @type HTMLElement */ subnode) => {\n if (isElement(subnode)) {\n checkForMount(subnode, elName, events);\n }\n });\n }\n}\n\n/**\n * Observes for any changes in attributes.\n *\n * @param {Element} node\n * @param {ElementEvents} events\n */\n\nfunction observeForUpdates(node, events) {\n const { onUpdate } = events;\n const observer = new MutationObserver(\n /** @type MutationCallback */ mutations => {\n each(mutations, (/** @type MutationRecord */ mutation) => {\n const targetNode = mutation.target;\n if (isElement(targetNode)) {\n onUpdate(targetNode, targetNode);\n }\n });\n }\n );\n\n observer.observe(node, { attributes: true });\n}\n\n/**\n * Observes a node's parent to wait until the node is removed\n * @param {HTMLElement} node\n * @param {ElementEvents} events\n */\n\nfunction observeForRemoval(node, events) {\n const { onUnmount } = events;\n const parent = node.parentNode;\n\n // Not sure when this can happen, but let's add this for type safety\n if (!parent) {\n return\n }\n\n const observer = new MutationObserver(\n /** @type MutationCallback */ mutations => {\n each(mutations, (/** @type MutationRecord */ mutation) => {\n each(mutation.removedNodes, (/** @type Node */ subnode) => {\n if (node !== subnode) {\n return\n }\n if (isElement(node)) {\n // @ts-ignore TypeScript expects 0 arguments...?\n observer.disconnect(parent);\n onUnmount(node, node);\n }\n });\n });\n }\n );\n\n observer.observe(parent, { childList: true, subtree: true });\n}\n\n/**\n * Validate a custom tag.\n *\n * Since Remount can work with either Custom Elements or MutationObserver API's,\n * it'd be wise if we rejected element names that won't work in Custom Elements\n * mode (even if we're using MutationObserver mode).\n *\n * @param {string} elName\n * @returns {boolean}\n *\n * @example\n * isValidName('div') // => false\n * isValidName('my-div') // => true\n * isValidName('123-456') // => false\n * isValidName('my-123') // => true\n *\n * @private\n */\n\nfunction isValidName(elName) {\n return !!(elName.indexOf('-') !== -1 && elName.match(/^[a-z][a-z0-9-]*$/))\n}\n\n/**\n * Shadow DOM is not supported with the Mutation Observer strategy.\n */\n\nfunction supportsShadow() {\n return false\n}\n\n/**\n * Checks if a given Node is an HTMLElement.\n *\n * It's possible that a mutation's `addedNodes` return something that isn't an\n * HTMLElement.\n *\n * @param {any} node\n * @returns {node is HTMLElement}\n */\n\nfunction isElement(node) {\n if (node) {\n return true\n }\n return false\n}\n\nvar MutationObserverStrategy = /*#__PURE__*/Object.freeze({\n __proto__: null,\n name: name,\n observers: observers,\n isSupported: isSupported,\n defineElement: defineElement,\n supportsShadow: supportsShadow\n});\n\n// @ts-check\n\n/**\n * Cache of the strategy determined by `getStrategy()`.\n * @type {Strategy | null | undefined}\n */\n\nlet cachedStrategy;\n\n/**\n * Detect what API can be used.\n *\n * @example\n * Remount.getStrategy().name\n */\n\nfunction getStrategy() {\n if (cachedStrategy) {\n return cachedStrategy\n }\n\n const StrategyUsed = [CustomElementsStrategy, MutationObserverStrategy].find(\n strategy => !!strategy.isSupported()\n );\n\n if (!StrategyUsed) {\n console.warn(\n \"Remount: This browser doesn't support the \" +\n 'MutationObserver API or the Custom Elements API. Including ' +\n 'polyfills might fix this. Remount elements will not work. ' +\n 'https://github.com/rstacruz/remount'\n );\n }\n\n cachedStrategy = StrategyUsed;\n return StrategyUsed\n}\n\n/**\n * Registers custom elements and links them to React components.\n * @param {ElementMap} components\n * @param {Defaults=} defaults\n *\n * @example\n * define({ 'x-tooltip': Tooltip })\n *\n * @example\n * define(\n * { 'x-tooltip': Tooltip },\n * { attributes: ['title', 'body'] }\n * )\n */\n\nfunction define(components, defaults) {\n const Strategy = getStrategy();\n if (!Strategy) {\n return\n }\n\n Object.keys(components).forEach((/** @type string */ name) => {\n // Construct the specs for the element.\n // (eg, { component: Tooltip, attributes: ['title'] })\n /** @type ElementSpec */\n const elSpec = Object.assign({}, defaults, toElementSpec(components[name]));\n\n /** @type Adapter | null | undefined */\n const adapter = elSpec.adapter;\n if (!adapter) throw new Error('No suitable adapter found')\n\n // Define a custom element.\n Strategy.defineElement(elSpec, name, {\n onMount(element, mountPoint) {\n const props = getProps(element, elSpec.attributes);\n if (elSpec.shadow && elSpec.retarget) {\n adapter.mount(elSpec, mountPoint, props, element);\n } else {\n adapter.mount(elSpec, mountPoint, props, null);\n }\n },\n\n onUpdate(element, mountPoint) {\n const props = getProps(element, elSpec.attributes);\n adapter.update(elSpec, mountPoint, props, null);\n },\n\n onUnmount(element, mountPoint) {\n adapter.unmount(elSpec, mountPoint);\n }\n });\n });\n}\n\n/**\n * Coerces something into an `ElementSpec` type.\n *\n * @param {ElementSpec | Component} thing\n * @returns {ElementSpec}\n * @private\n *\n * @example\n * toElementSpec(Tooltip)\n * // => { component: Tooltip }\n *\n * toElementSpec({ component: Tooltip })\n * // => { component: Tooltip }\n */\n\nfunction toElementSpec(thing) {\n if (isElementSpec(thing)) {\n return thing\n }\n return { component: thing }\n}\n\n/**\n * Checks if a given `spec` is an ElementSpec.\n *\n * @param {any} spec\n * @returns {spec is ElementSpec}\n */\n\nfunction isElementSpec(spec) {\n return typeof spec === 'object' && spec.component\n}\n\n/**\n * Returns properties for a given HTML element.\n *\n * @private\n * @param {HTMLElement} element\n * @param {string[] | null | undefined} attributes\n *\n * @example\n * getProps(div, ['name'])\n * // => { name: 'Romeo' }\n */\n\nfunction getProps(element, attributes) {\n const rawJson = element.getAttribute('props-json');\n if (rawJson) {\n return JSON.parse(rawJson)\n }\n\n const names = attributes || [];\n return names.reduce((\n /** @type PropertyMap */ result,\n /** @type string */ attribute\n ) => {\n result[attribute] = element.getAttribute(attribute);\n return result\n }, {})\n}\n\n// @ts-check\n\n/** @type {Map} */\nconst roots = new Map();\n\n/**\n * @param {ElementSpec} elSpec\n * @param {HTMLElement} mountPoint\n * @param {object} props\n * @param {HTMLElement | null} element\n */\n\nfunction mount(elSpec, mountPoint, props, element) {\n const reactElement = React.createElement(elSpec.component, props);\n const root = ReactDOM.createRoot(mountPoint);\n roots.set(mountPoint, root);\n root.render(reactElement);\n}\n\n/**\n * Updates a custom element by calling `ReactDOM.render()`.\n * @private\n *\n * @param {ElementSpec} elSpec\n * @param {HTMLElement} mountPoint\n * @param {object} props\n * @param {HTMLElement | null} element\n */\n\nfunction update(elSpec, mountPoint, props, element) {\n const reactElement = React.createElement(elSpec.component, props);\n const root = roots.get(mountPoint);\n if (root) root.render(reactElement);\n}\n\n/**\n * Unmounts a component.\n * @private\n *\n * @param {ElementSpec} elSpec\n * @param {HTMLElement} mountPoint\n */\n\nfunction unmount(elSpec, mountPoint) {\n const root = roots.get(mountPoint);\n if (!root) return\n\n root.unmount();\n roots.delete(mountPoint);\n}\n\nvar ReactAdapter = /*#__PURE__*/Object.freeze({\n __proto__: null,\n mount: mount,\n update: update,\n unmount: unmount\n});\n\n/** @typedef { import('./types').ElementMap } ElementMap */\n\n/**\n * @param {ElementMap} components\n * @param {Defaults=} defaults\n */\n\nfunction defineReact(components = {}, options = {}) {\n return define(components, {\n adapter: ReactAdapter,\n ...options\n })\n}\n\nexport { defineReact as define, getStrategy };\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 getPrototypeOf from \"./getPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn.js\";\nexport default function _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return possibleConstructorReturn(this, result);\n };\n}","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React from \"react\";\nimport ReactDOM from \"react-dom/client\";\nimport App from \"./App\";\nimport { define } from \"remount\";\n\ndefine(\n { \"new-user-menu\": App },\n {\n shadow: true,\n retarget: true,\n attributes: [\n \"clientCode\",\n \"accountLang\",\n \"user\",\n \"sessionKey\",\n // \"newMenuItem\",\n // \"isCloseComDropDown\",\n // \"isGlobalSearchVisible\",\n ],\n }\n);\n"],"names":["Object","defineProperty","exports","value","_react","_interopRequireDefault","require","_propTypes","_icons","obj","__esModule","IconInner","_ref","markup","icon","iconMarkup","createElement","dangerouslySetInnerHTML","__html","propTypes","string","isRequired","_default","_IconInner","_extends","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","FeatherIcon","_ref$size","size","_ref$className","className","_ref$fill","fill","otherProps","width","height","viewBox","stroke","strokeWidth","strokeLinecap","strokeLinejoin","concat","oneOfType","number","symbolTag","reRegExpChar","reHasRegExpChar","RegExp","freeGlobal","global","freeSelf","self","root","Function","objectToString","toString","Symbol","symbolProto","undefined","symbolToString","baseToString","isObjectLike","isSymbol","result","module","test","replace","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","props","propName","componentName","location","propFullName","secret","err","Error","name","getShim","ReactPropTypes","array","bigint","bool","func","object","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","shape","exact","checkPropTypes","PropTypes","aa","ca","p","a","b","c","encodeURIComponent","da","Set","ea","fa","ha","add","ia","window","document","ja","ka","la","ma","v","d","e","f","g","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","type","sanitizeURL","removeEmptyString","z","split","forEach","toLowerCase","ra","sa","toUpperCase","ta","slice","pa","isNaN","qa","oa","removeAttribute","setAttribute","setAttributeNS","xlinkHref","ua","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","va","for","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","iterator","Ka","La","A","Ma","stack","trim","match","Na","Oa","prepareStackTrace","set","Reflect","construct","l","h","k","displayName","includes","Pa","tag","render","Qa","$$typeof","_context","_payload","_init","Ra","Sa","Ta","nodeName","Va","_valueTracker","getOwnPropertyDescriptor","constructor","get","configurable","enumerable","getValue","setValue","stopTracking","Ua","Wa","checked","Xa","activeElement","body","Ya","defaultChecked","defaultValue","_wrapperState","initialChecked","Za","initialValue","controlled","ab","bb","cb","db","ownerDocument","eb","Array","isArray","fb","options","selected","defaultSelected","disabled","gb","children","hb","ib","jb","textContent","kb","lb","mb","nb","namespaceURI","innerHTML","valueOf","firstChild","removeChild","appendChild","MSApp","execUnsafeLocalFunction","ob","lastChild","nodeType","nodeValue","pb","animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","qb","rb","sb","style","setProperty","charAt","substring","tb","menuitem","area","base","br","col","embed","hr","img","input","keygen","link","meta","param","track","wbr","ub","vb","is","wb","xb","srcElement","correspondingUseElement","parentNode","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","push","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","addEventListener","removeEventListener","Nb","m","onError","Ob","Pb","Qb","Rb","Sb","Tb","Vb","alternate","return","flags","Wb","memoizedState","dehydrated","Xb","Zb","child","sibling","current","Yb","$b","ac","unstable_scheduleCallback","bc","unstable_cancelCallback","cc","unstable_shouldYield","dc","unstable_requestPaint","B","unstable_now","ec","unstable_getCurrentPriorityLevel","fc","unstable_ImmediatePriority","gc","unstable_UserBlockingPriority","hc","unstable_NormalPriority","ic","unstable_LowPriority","jc","unstable_IdlePriority","kc","lc","oc","Math","clz32","pc","qc","log","LN2","rc","sc","tc","uc","pendingLanes","suspendedLanes","pingedLanes","entangledLanes","entanglements","vc","xc","yc","zc","Ac","eventTimes","Cc","C","Dc","Ec","Fc","Gc","Hc","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Map","Pc","Qc","Rc","Sc","delete","pointerId","Tc","nativeEvent","blockedOn","domEventName","eventSystemFlags","targetContainers","Vc","Wc","priority","isDehydrated","containerInfo","Xc","Yc","dispatchEvent","shift","Zc","$c","ad","bd","cd","ReactCurrentBatchConfig","dd","ed","transition","fd","gd","hd","id","Uc","stopPropagation","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","currentTarget","isDefaultPrevented","defaultPrevented","returnValue","isPropagationStopped","preventDefault","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","Date","now","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Id","clipboardData","Jd","Ld","data","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","Od","Alt","Control","Meta","Shift","Pd","Qd","String","fromCharCode","code","repeat","locale","which","Rd","Td","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Yd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","Zd","$d","ae","be","documentMode","ce","de","ee","fe","ge","he","ie","le","color","date","datetime","email","month","password","range","search","tel","text","time","url","week","me","ne","oe","event","listeners","pe","qe","re","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","detachEvent","Be","Ce","attachEvent","De","Ee","Fe","He","Ie","Je","Ke","offset","nextSibling","Le","contains","compareDocumentPosition","Me","HTMLIFrameElement","contentWindow","href","Ne","contentEditable","Oe","focusedElem","selectionRange","documentElement","start","end","selectionStart","selectionEnd","min","defaultView","getSelection","extend","rangeCount","anchorNode","anchorOffset","focusNode","focusOffset","createRange","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","focus","Pe","Qe","Re","Se","Te","Ue","Ve","We","animationend","animationiteration","animationstart","transitionend","Xe","Ye","Ze","animation","$e","af","bf","cf","df","ef","ff","gf","hf","lf","mf","nf","Ub","instance","listener","D","of","has","pf","qf","rf","random","sf","bind","capture","passive","n","t","J","x","u","w","F","tf","uf","parentWindow","vf","wf","na","xa","$a","ba","je","char","ke","unshift","xf","yf","zf","Af","Bf","Cf","Df","Ef","Ff","setTimeout","Gf","clearTimeout","Hf","Promise","Jf","queueMicrotask","resolve","then","catch","If","Kf","Lf","Mf","previousSibling","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","E","G","Vf","H","Wf","Xf","Yf","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Zf","childContextTypes","$f","ag","bg","getChildContext","cg","__reactInternalMemoizedMergedChildContext","dg","eg","fg","gg","hg","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","tg","ug","vg","wg","xg","yg","I","zg","Ag","Bg","deletions","Cg","pendingProps","overflow","treeContext","retryLane","Dg","mode","Eg","Fg","Gg","memoizedProps","Hg","Ig","Jg","Kg","Lg","defaultProps","Mg","Ng","Og","Pg","Qg","Rg","_currentValue","Sg","childLanes","Tg","dependencies","firstContext","lanes","Ug","Vg","context","memoizedValue","next","Wg","Xg","Yg","interleaved","Zg","$g","ah","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","bh","ch","eventTime","lane","payload","callback","dh","K","eh","fh","gh","q","r","y","hh","ih","jh","Component","refs","kh","nh","isMounted","_reactInternals","enqueueSetState","L","lh","mh","enqueueReplaceState","enqueueForceUpdate","oh","shouldComponentUpdate","isPureReactComponent","ph","contextType","state","updater","qh","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","rh","getDerivedStateFromProps","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","sh","ref","_owner","_stringRef","th","join","uh","vh","index","wh","xh","yh","implementation","zh","Ah","done","Bh","Ch","Dh","Eh","Fh","Gh","Hh","Ih","tagName","Jh","Kh","Lh","M","Mh","revealOrder","Nh","Oh","_workInProgressVersionPrimary","Ph","ReactCurrentDispatcher","Qh","Rh","N","O","P","Sh","Th","Uh","Vh","Q","Wh","Xh","Yh","Zh","$h","ai","bi","ci","baseQueue","queue","di","ei","fi","lastRenderedReducer","action","hasEagerState","eagerState","lastRenderedState","dispatch","gi","hi","ii","ji","ki","getSnapshot","li","mi","R","ni","lastEffect","stores","oi","pi","qi","ri","create","destroy","deps","si","ti","ui","vi","wi","xi","yi","zi","Ai","Bi","Ci","Di","Ei","Fi","Gi","Hi","Ii","Ji","readContext","useCallback","useContext","useEffect","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","useReducer","useRef","useState","useDebugValue","useDeferredValue","useTransition","useMutableSource","useSyncExternalStore","useId","unstable_isNewReconciler","identifierPrefix","Ki","message","digest","Li","Mi","console","error","Ni","WeakMap","Oi","Pi","Qi","Ri","getDerivedStateFromError","componentDidCatch","Si","componentStack","Ti","pingCache","Ui","Vi","Wi","Xi","ReactCurrentOwner","Yi","Zi","$i","aj","bj","compare","cj","dj","ej","baseLanes","cachePool","transitions","fj","gj","hj","ij","jj","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","kj","lj","pendingContext","mj","Aj","Cj","Dj","nj","oj","pj","fallback","qj","rj","tj","dataset","dgst","uj","vj","_reactRetry","sj","subtreeFlags","wj","xj","isBackwards","rendering","renderingStartTime","last","tail","tailMode","yj","Ej","S","Fj","Gj","wasMultiple","multiple","suppressHydrationWarning","onClick","onclick","createElementNS","autoFocus","createTextNode","T","Hj","Ij","Jj","Kj","U","Lj","WeakSet","V","Mj","W","Nj","Oj","Qj","Rj","Sj","Tj","Uj","Vj","Wj","insertBefore","_reactRootContainer","Xj","X","Yj","Zj","ak","onCommitFiberUnmount","componentWillUnmount","bk","ck","dk","ek","fk","isHidden","gk","hk","display","ik","jk","kk","lk","__reactInternalSnapshotBeforeUpdate","src","Wk","mk","ceil","nk","ok","pk","Y","Z","qk","rk","sk","tk","uk","Infinity","vk","wk","xk","yk","zk","Ak","Bk","Ck","Dk","Ek","callbackNode","expirationTimes","expiredLanes","wc","callbackPriority","ig","Fk","Gk","Hk","Ik","Jk","Kk","Lk","Mk","Nk","Ok","Pk","finishedWork","finishedLanes","Qk","timeoutHandle","Rk","Sk","Tk","Uk","Vk","mutableReadLanes","Bc","Pj","onCommitFiberRoot","mc","onRecoverableError","Xk","onPostCommitFiberRoot","Yk","Zk","al","isReactComponent","pendingChildren","bl","mutableSourceEagerHydrationData","cl","cache","pendingSuspenseBoundaries","dl","el","fl","gl","hl","il","jl","zj","$k","ll","reportError","ml","_internalRoot","nl","ol","pl","ql","sl","rl","unmount","unstable_scheduleHydration","splice","querySelectorAll","JSON","stringify","form","tl","usingClientEntryPoint","Events","ul","findFiberByHostInstance","bundleType","version","rendererPackageName","vl","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setErrorHandler","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","reconcilerVersion","__REACT_DEVTOOLS_GLOBAL_HOOK__","wl","isDisabled","supportsFiber","inject","createPortal","createRoot","unstable_strictMode","findDOMNode","flushSync","hydrate","hydrateRoot","hydratedSources","_getVersion","_source","unmountComponentAtNode","unstable_batchedUpdates","unstable_renderSubtreeIntoContainer","checkDCE","factory","mediaQuery","values","modifier","expValue","parse","parseQuery","RE_MEDIA_QUERY","RE_MQ_EXPRESSION","RE_MQ_FEATURE","RE_LENGTH_UNIT","RE_RESOLUTION_UNIT","query","expressions","parsed","feature","toDecimal","ratio","numbers","decimal","toDpi","resolution","units","toPx","uppercasePattern","msPattern","toHyphenLower","staticMatch","__webpack_require__","dynamicMatch","matchMedia","Mql","forceStatic","mql","propIsEnumerable","toObject","val","test1","test2","test3","shouldUseNative","s","from","to","symbols","printWarning","typeSpecs","getStack","ex","loggedTypeFailures","ReactIs","emptyFunctionThatReturnsNull","propValue","expectedValues","arrayOfTypeCheckers","expectedTypes","shapeTypes","manualPropTypeWarningCount","manualPropTypeCallCache","chainedCheckType","expectedType","PropTypeError","isElement","hasSymbol","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_PROVIDER_TYPE","REACT_CONTEXT_TYPE","REACT_ASYNC_MODE_TYPE","REACT_CONCURRENT_MODE_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_BLOCK_TYPE","REACT_FUNDAMENTAL_TYPE","REACT_RESPONDER_TYPE","REACT_SCOPE_TYPE","typeOf","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","hasWarnedAboutDeprecatedIsAsyncMode","isConcurrentMode","isAsyncMode","isContextConsumer","isContextProvider","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","len","_a","device","onChange","settings","matches","Context","createContext","useMediaQuery_1","Component_1","toQuery_1","Context_1","stringOrNumber","prop_types_1","types","all","grid","aural","braille","handheld","print","projection","screen","tty","tv","embossed","matchers","orientation","scan","deviceAspectRatio","deviceHeight","deviceWidth","colorIndex","monochrome","featureMatchers","features","minAspectRatio","maxAspectRatio","minDeviceAspectRatio","maxDeviceAspectRatio","minHeight","maxHeight","minDeviceHeight","maxDeviceHeight","minWidth","maxWidth","minDeviceWidth","maxDeviceWidth","minColor","maxColor","minColorIndex","maxColorIndex","minMonochrome","maxMonochrome","minResolution","maxResolution","rules","mediaQuery_1","realKey","keyVal","hyphenateKeys","reduce","useIsUpdate","useQuery","getQuery","makeQuery","setQuery","newQuery","deviceSettings","deviceFromProps","deviceFromContext","getDevice","setDevice","newDevice","shallowEqualObjects","useDevice","mq","getMatchMedia","setMq","isUpdate","newMq_1","dispose","useMatchMedia","setMatches","updateMatches","ev","addListener","removeListener","useMatches","__WEBPACK_EXTERNAL_MODULE_react__","__webpack_module_cache__","moduleId","__webpack_modules__","o","__self","__source","jsx","jsxs","setState","forceUpdate","escape","_status","_result","default","Children","map","count","toArray","only","PureComponent","cloneElement","_currentValue2","_threadCount","Provider","Consumer","_defaultValue","_globalName","createFactory","createRef","forwardRef","isValidElement","lazy","memo","startTransition","unstable_act","pop","sortIndex","performance","setImmediate","startTime","expirationTime","priorityLevel","navigator","scheduling","isInputPending","MessageChannel","port2","port1","onmessage","postMessage","unstable_Profiling","unstable_continueExecution","unstable_forceFrameRate","floor","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_runWithPriority","delay","unstable_wrapCallback","cachedModule","getter","definition","globalThis","prop","_typeof","_toPropertyKey","arg","hint","prim","toPrimitive","res","TypeError","Number","_defineProperty","writable","ownKeys","enumerableOnly","filter","sym","_objectSpread2","getOwnPropertyDescriptors","defineProperties","_arrayLikeToArray","arr","arr2","_unsupportedIterableToArray","minLen","_slicedToArray","_i","_s","_e","_x","_r","_arr","_n","_d","_regeneratorRuntime","Op","hasOwn","desc","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","makeInvokeMethod","tryCatch","fn","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","Gp","defineIteratorMethods","method","_invoke","AsyncIterator","PromiseImpl","invoke","reject","record","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","info","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isGeneratorFunction","genFun","ctor","mark","setPrototypeOf","__proto__","awrap","async","iter","reverse","skipTempReset","prev","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","_toConsumableArray","_g","_defs","requestERPLYData","requestData","clientCode","requestFormData","FormData","entries","fieldValue","fetch","response","json","createLanguageData","languages","accountLang","lastPage","langs","lang","targetUrl","legacyIdentifier","isActive","colors","flatenArray","newArray","filterData","quickLinks","mainItems","item","title","menu","isGroup","isVisible","targetType","iconClass","additionalLinks","menuGroups","breadCrumbs","group","items","groupTitle","itemTitle","addNewMenuItem","menuItems","newItem","parentId","isAddedAlready","find","isParent","findIndex","filterItems","infoGroups","infoGroup","settingsGroup","authGroup","addActiveClassname","activeClassName","handleFilter","filterValue","quickLinksResult","mainItemsResult","getReleaseInfo","handleLinkClick","isBlank","rel","click","localStorageKey","localStorage","getItem","setMode","theme","setTheme","setItem","isSystemInDarkMode","classList","remove","partnerKey","refreshState","initialState","flatenedData","menuData","baseUrl","init","isError","user","sessionKey","isCloseAppDropDownsFromApp","isGlobalSearchVisible","setIsCloseAppDropDownsFromApp","renderFlag","setIsGlobalSearchVisible","AppStateContext","AppStateContextProvider","setLanguages","setFlatenedData","setMenuData","lastVistedPage","setLastVistedPage","setBaseUrl","setIsError","isGlobalSVisible","newMenuItem","useTheme","cachePhrase","langPhrase","newItemPhrase","sessionStorage","request","services","status","responseStatus","savedMenu","system","homeMenuItem","records","headers","credentials","lastCall","getTime","savedLang","menuDataItem","reload","sheet","createStyle","handled","lastVisited","currentTime","lastCallKey","lastLoadValue","lastLoad","addNewItem","savedNewItems","isFound","interval","setInterval","clearInterval","useAppState","_excluded","SvgLogo","svgRef","titleId","xmlns","clipPath","fillRule","clipRule","_path","SvgSearch","toggleDropDown","isSearch","openSearch","isSamll","marginLeft","firstItem","groupItem","selectedId","toggleMenu","links","isOnly","groups","setSelectedId","inputValue","setInputValue","isPop","SvgReload","SvgLogOut","SvgClock","_path2","INFO_ID","USER_ID","alignItems","sett","isoCode","nativeName","auth","flexDirection","paddingRight","paddingLeft","marginTop","handleSearch","closeGlobalSearch","searchValue","setSearchValue","onSubmit","placeholder","SvgEnter","highlight","regex","escapeRegExp","parts","part","backgroundColor","Results","onNavigate","recentSearches","Recent","rec","MainResults","RecentSearches","Notification","QuickLinks","marginRight","searchResult","isDropDown","setIsDropDown","isUserDropDown","setIsUserDropDown","isGlobalSearch","setIsGlobalSearch","setSearchResult","margin","padding","cursor","isFirst","toggleNavItem","onDoubleClick","AdditionalLinks","hasMargin","marginBottom","selectedItem","SubMenuItem","handleSubMenuClose","CustomEvent","setSelectedItem","setTop","headerRef","closeSubMenuItem","closeSideDropDown","offsetHeight","deskTopStyles","isTabletOrMobile","useMediaQuery","InitialRender","showRefreshButton","App","composedPath","MainApp","_classCallCheck","Constructor","_defineProperties","descriptor","_setPrototypeOf","_getPrototypeOf","_isNativeReflectConstruct","sham","Proxy","Boolean","_possibleConstructorReturn","ReferenceError","_construct","Parent","Class","_wrapNativeSuper","_cache","Wrapper","CustomElementsStrategy","freeze","defineElement","elSpec","elName","events","onUpdate","onUnmount","onMount","HTMLElement","_babelES5Adapter","customElements","attributes","ComponentElement","subClass","superClass","protoProps","staticProps","Derived","hasNativeReflectConstruct","Super","NewTarget","_mountPoint","shadow","attachShadow","mountPoint","createMountPoint","quiet","isSupported","supportsShadow","each","list","observers","checkForMount","MutationObserver","mutations","mutation","targetNode","observe","observeForUpdates","parent","observer","removedNodes","subnode","disconnect","childList","subtree","observeForRemoval","cachedStrategy","MutationObserverStrategy","isValidName","addedNodes","mountElementsInDOM","getElementsByTagName","readyState","components","defaults","Strategy","StrategyUsed","strategy","warn","getStrategy","thing","spec","component","toElementSpec","adapter","getProps","retarget","mount","update","rawJson","getAttribute","attribute","roots","ReactAdapter","reactElement","React","ReactDOM"],"sourceRoot":""}