andoncloud-sdk 1.2.1 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"andoncloud-sdk.js","sources":["../node_modules/goober/dist/goober.esm.js","../node_modules/react-hot-toast/dist/react-hot-toast.esm.js","../src/app/providers/authConfig.js","../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/locales/i18n.js","../src/app/utils/fetch.js","../node_modules/js-cookie/dist/js.cookie.js","../src/app/utils/cookies-manager.js","../src/app/stores/userStore.js","../src/app/stores/sessionStore.js","../src/app/theme.js","../src/app/hooks/useQueryParams.js","../src/app/components/authRedirect.js","../node_modules/onscan.js/onscan.js","../src/app/components/loginForm.js","../src/app/components/loginModal.js","../src/app/hooks/useLogin.js","../src/app/components/header.styles.js","../src/app/components/header.js","../src/app/components/container.js","../src/app/components/fullscreenBackdrop.js","../src/app/pages/LoginPage.js","../src/app/components/loginRedirect.js","../src/app/components/router.js","../src/app/components/networkError.js","../src/app/components/app.js","../src/index.js"],"sourcesContent":["let e={data:\"\"},t=t=>\"object\"==typeof window?((t?t.querySelector(\"#_goober\"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement(\"style\")),{innerHTML:\" \",id:\"_goober\"})).firstChild:t||e,r=e=>{let r=t(e),l=r.data;return r.data=\"\",l},l=/(?:([\\u0080-\\uFFFF\\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\\s*)/g,a=/\\/\\*[^]*?\\*\\/|\\s\\s+|\\n/g,n=(e,t)=>{let r=\"\",l=\"\",a=\"\";for(let o in e){let s=e[o];\"@\"==o[0]?\"i\"==o[1]?r=o+\" \"+s+\";\":l+=\"f\"==o[1]?n(s,o):o+\"{\"+n(s,\"k\"==o[1]?\"\":t)+\"}\":\"object\"==typeof s?l+=n(s,t?t.replace(/([^,])+/g,e=>o.replace(/(^:.*)|([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+\" \"+t:t)):o):null!=s&&(o=o.replace(/[A-Z]/g,\"-$&\").toLowerCase(),a+=n.p?n.p(o,s):o+\":\"+s+\";\")}return r+(t&&a?t+\"{\"+a+\"}\":a)+l},o={},s=e=>{if(\"object\"==typeof e){let t=\"\";for(let r in e)t+=r+s(e[r]);return t}return e},c=(e,t,r,c,i)=>{let u=s(e),p=o[u]||(o[u]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return\"go\"+r})(u));if(!o[p]){let t=u!==e?e:(e=>{let t,r=[{}];for(;t=l.exec(e.replace(a,\"\"));)t[4]?r.shift():t[3]?r.unshift(r[0][t[3]]=r[0][t[3]]||{}):r[0][t[1]]=t[2];return r[0]})(e);o[p]=n(i?{[\"@keyframes \"+p]:t}:t,r?\"\":\".\"+p)}return((e,t,r)=>{-1==t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e)})(o[p],t,c),p},i=(e,t,r)=>e.reduce((e,l,a)=>{let o=t[a];if(o&&o.call){let e=o(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;o=t?\".\"+t:e&&\"object\"==typeof e?e.props?\"\":n(e,\"\"):!1===e?\"\":e}return e+l+(null==o?\"\":o)},\"\");function u(e){let r=this||{},l=e.call?e(r.p):e;return c(l.unshift?l.raw?i(l,[].slice.call(arguments,1),r.p):l.reduce((e,t)=>Object.assign(e,t&&t.call?t(r.p):t),{}):l,t(r.target),r.g,r.o,r.k)}let p,d,f,g=u.bind({g:1}),b=u.bind({k:1});function h(e,t,r,l){n.p=t,p=e,d=r,f=l}function m(e,t){let r=this||{};return function(){let l=arguments;function a(n,o){let s=Object.assign({},n),c=s.className||a.className;r.p=Object.assign({theme:d&&d()},s),r.o=/ *go\\d+/.test(c),s.className=u.apply(r,l)+(c?\" \"+c:\"\"),t&&(s.ref=o);let i=e;return e[0]&&(i=s.as||e,delete s.as),f&&i[0]&&f(s),p(i,s)}return t?t(a):a}}export{u as css,r as extractCss,g as glob,b as keyframes,h as setup,m as styled};\n","import { useState, useEffect, useMemo, createElement, memo, Fragment, forwardRef } from 'react';\nimport { styled, keyframes, setup, css } from 'goober';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _taggedTemplateLiteralLoose(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n\n strings.raw = raw;\n return strings;\n}\n\nvar isFunction = function isFunction(valOrFunction) {\n return typeof valOrFunction === 'function';\n};\n\nvar resolveValue = function resolveValue(valOrFunction, arg) {\n return isFunction(valOrFunction) ? valOrFunction(arg) : valOrFunction;\n};\n\nvar genId = /*#__PURE__*/function () {\n var count = 0;\n return function () {\n return (++count).toString();\n };\n}();\nvar createRectRef = function createRectRef(onRect) {\n return function (el) {\n if (el) {\n setTimeout(function () {\n var boundingRect = el.getBoundingClientRect();\n onRect(boundingRect);\n });\n }\n };\n};\nvar prefersReducedMotion = /*#__PURE__*/function () {\n // Cache result\n var shouldReduceMotion = undefined;\n return function () {\n if (shouldReduceMotion === undefined && typeof window !== 'undefined') {\n var mediaQuery = matchMedia('(prefers-reduced-motion: reduce)');\n shouldReduceMotion = !mediaQuery || mediaQuery.matches;\n }\n\n return shouldReduceMotion;\n };\n}();\n\nvar TOAST_LIMIT = 20;\nvar ActionType;\n\n(function (ActionType) {\n ActionType[ActionType[\"ADD_TOAST\"] = 0] = \"ADD_TOAST\";\n ActionType[ActionType[\"UPDATE_TOAST\"] = 1] = \"UPDATE_TOAST\";\n ActionType[ActionType[\"UPSERT_TOAST\"] = 2] = \"UPSERT_TOAST\";\n ActionType[ActionType[\"DISMISS_TOAST\"] = 3] = \"DISMISS_TOAST\";\n ActionType[ActionType[\"REMOVE_TOAST\"] = 4] = \"REMOVE_TOAST\";\n ActionType[ActionType[\"START_PAUSE\"] = 5] = \"START_PAUSE\";\n ActionType[ActionType[\"END_PAUSE\"] = 6] = \"END_PAUSE\";\n})(ActionType || (ActionType = {}));\n\nvar toastTimeouts = /*#__PURE__*/new Map();\n\nvar addToRemoveQueue = function addToRemoveQueue(toastId) {\n if (toastTimeouts.has(toastId)) {\n return;\n }\n\n var timeout = setTimeout(function () {\n toastTimeouts[\"delete\"](toastId);\n dispatch({\n type: ActionType.REMOVE_TOAST,\n toastId: toastId\n });\n }, 1000);\n toastTimeouts.set(toastId, timeout);\n};\n\nvar clearFromRemoveQueue = function clearFromRemoveQueue(toastId) {\n var timeout = toastTimeouts.get(toastId);\n\n if (timeout) {\n clearTimeout(timeout);\n }\n};\n\nvar reducer = function reducer(state, action) {\n switch (action.type) {\n case ActionType.ADD_TOAST:\n return _extends({}, state, {\n toasts: [action.toast].concat(state.toasts).slice(0, TOAST_LIMIT)\n });\n\n case ActionType.UPDATE_TOAST:\n // ! Side effects !\n if (action.toast.id) {\n clearFromRemoveQueue(action.toast.id);\n }\n\n return _extends({}, state, {\n toasts: state.toasts.map(function (t) {\n return t.id === action.toast.id ? _extends({}, t, action.toast) : t;\n })\n });\n\n case ActionType.UPSERT_TOAST:\n var toast = action.toast;\n return state.toasts.find(function (t) {\n return t.id === toast.id;\n }) ? reducer(state, {\n type: ActionType.UPDATE_TOAST,\n toast: toast\n }) : reducer(state, {\n type: ActionType.ADD_TOAST,\n toast: toast\n });\n\n case ActionType.DISMISS_TOAST:\n var toastId = action.toastId; // ! Side effects ! - This could be execrated into a dismissToast() action, but I'll keep it here for simplicity\n\n if (toastId) {\n addToRemoveQueue(toastId);\n } else {\n state.toasts.forEach(function (toast) {\n addToRemoveQueue(toast.id);\n });\n }\n\n return _extends({}, state, {\n toasts: state.toasts.map(function (t) {\n return t.id === toastId || toastId === undefined ? _extends({}, t, {\n visible: false\n }) : t;\n })\n });\n\n case ActionType.REMOVE_TOAST:\n if (action.toastId === undefined) {\n return _extends({}, state, {\n toasts: []\n });\n }\n\n return _extends({}, state, {\n toasts: state.toasts.filter(function (t) {\n return t.id !== action.toastId;\n })\n });\n\n case ActionType.START_PAUSE:\n return _extends({}, state, {\n pausedAt: action.time\n });\n\n case ActionType.END_PAUSE:\n var diff = action.time - (state.pausedAt || 0);\n return _extends({}, state, {\n pausedAt: undefined,\n toasts: state.toasts.map(function (t) {\n return _extends({}, t, {\n pauseDuration: t.pauseDuration + diff\n });\n })\n });\n }\n};\nvar listeners = [];\nvar memoryState = {\n toasts: [],\n pausedAt: undefined\n};\nvar dispatch = function dispatch(action) {\n memoryState = reducer(memoryState, action);\n listeners.forEach(function (listener) {\n listener(memoryState);\n });\n};\nvar defaultTimeouts = {\n blank: 4000,\n error: 4000,\n success: 2000,\n loading: Infinity,\n custom: 4000\n};\nvar useStore = function useStore(toastOptions) {\n if (toastOptions === void 0) {\n toastOptions = {};\n }\n\n var _useState = useState(memoryState),\n state = _useState[0],\n setState = _useState[1];\n\n useEffect(function () {\n listeners.push(setState);\n return function () {\n var index = listeners.indexOf(setState);\n\n if (index > -1) {\n listeners.splice(index, 1);\n }\n };\n }, [state]);\n var mergedToasts = state.toasts.map(function (t) {\n var _toastOptions$t$type, _toastOptions, _toastOptions$t$type2;\n\n return _extends({}, toastOptions, toastOptions[t.type], t, {\n duration: t.duration || ((_toastOptions$t$type = toastOptions[t.type]) == null ? void 0 : _toastOptions$t$type.duration) || ((_toastOptions = toastOptions) == null ? void 0 : _toastOptions.duration) || defaultTimeouts[t.type],\n style: _extends({}, toastOptions.style, (_toastOptions$t$type2 = toastOptions[t.type]) == null ? void 0 : _toastOptions$t$type2.style, t.style)\n });\n });\n return _extends({}, state, {\n toasts: mergedToasts\n });\n};\n\nvar createToast = function createToast(message, type, opts) {\n if (type === void 0) {\n type = 'blank';\n }\n\n return _extends({\n createdAt: Date.now(),\n visible: true,\n type: type,\n ariaProps: {\n role: 'status',\n 'aria-live': 'polite'\n },\n message: message,\n pauseDuration: 0\n }, opts, {\n id: (opts == null ? void 0 : opts.id) || genId()\n });\n};\n\nvar createHandler = function createHandler(type) {\n return function (message, options) {\n var toast = createToast(message, type, options);\n dispatch({\n type: ActionType.UPSERT_TOAST,\n toast: toast\n });\n return toast.id;\n };\n};\n\nvar toast = function toast(message, opts) {\n return createHandler('blank')(message, opts);\n};\n\ntoast.error = /*#__PURE__*/createHandler('error');\ntoast.success = /*#__PURE__*/createHandler('success');\ntoast.loading = /*#__PURE__*/createHandler('loading');\ntoast.custom = /*#__PURE__*/createHandler('custom');\n\ntoast.dismiss = function (toastId) {\n dispatch({\n type: ActionType.DISMISS_TOAST,\n toastId: toastId\n });\n};\n\ntoast.remove = function (toastId) {\n return dispatch({\n type: ActionType.REMOVE_TOAST,\n toastId: toastId\n });\n};\n\ntoast.promise = function (promise, msgs, opts) {\n var id = toast.loading(msgs.loading, _extends({}, opts, opts == null ? void 0 : opts.loading));\n promise.then(function (p) {\n toast.success(resolveValue(msgs.success, p), _extends({\n id: id\n }, opts, opts == null ? void 0 : opts.success));\n return p;\n })[\"catch\"](function (e) {\n toast.error(resolveValue(msgs.error, e), _extends({\n id: id\n }, opts, opts == null ? void 0 : opts.error));\n });\n return promise;\n};\n\nvar useToaster = function useToaster(toastOptions) {\n var _useStore = useStore(toastOptions),\n toasts = _useStore.toasts,\n pausedAt = _useStore.pausedAt;\n\n useEffect(function () {\n if (pausedAt) {\n return;\n }\n\n var now = Date.now();\n var timeouts = toasts.map(function (t) {\n if (t.duration === Infinity) {\n return;\n }\n\n var durationLeft = (t.duration || 0) + t.pauseDuration - (now - t.createdAt);\n\n if (durationLeft < 0) {\n if (t.visible) {\n toast.dismiss(t.id);\n }\n\n return;\n }\n\n return setTimeout(function () {\n return toast.dismiss(t.id);\n }, durationLeft);\n });\n return function () {\n timeouts.forEach(function (timeout) {\n return timeout && clearTimeout(timeout);\n });\n };\n }, [toasts, pausedAt]);\n var handlers = useMemo(function () {\n return {\n startPause: function startPause() {\n dispatch({\n type: ActionType.START_PAUSE,\n time: Date.now()\n });\n },\n endPause: function endPause() {\n if (pausedAt) {\n dispatch({\n type: ActionType.END_PAUSE,\n time: Date.now()\n });\n }\n },\n updateHeight: function updateHeight(toastId, height) {\n return dispatch({\n type: ActionType.UPDATE_TOAST,\n toast: {\n id: toastId,\n height: height\n }\n });\n },\n calculateOffset: function calculateOffset(toast, opts) {\n var _relevantToasts$filte;\n\n var _ref = opts || {},\n _ref$reverseOrder = _ref.reverseOrder,\n reverseOrder = _ref$reverseOrder === void 0 ? false : _ref$reverseOrder,\n _ref$gutter = _ref.gutter,\n gutter = _ref$gutter === void 0 ? 8 : _ref$gutter,\n defaultPosition = _ref.defaultPosition;\n\n var relevantToasts = toasts.filter(function (t) {\n return (t.position || defaultPosition) === (toast.position || defaultPosition) && t.height;\n });\n var toastIndex = relevantToasts.findIndex(function (t) {\n return t.id === toast.id;\n });\n var toastsBefore = relevantToasts.filter(function (toast, i) {\n return i < toastIndex && toast.visible;\n }).length;\n\n var offset = (_relevantToasts$filte = relevantToasts.filter(function (t) {\n return t.visible;\n })).slice.apply(_relevantToasts$filte, reverseOrder ? [toastsBefore + 1] : [0, toastsBefore]).reduce(function (acc, t) {\n return acc + (t.height || 0) + gutter;\n }, 0);\n\n return offset;\n }\n };\n }, [toasts, pausedAt]);\n return {\n toasts: toasts,\n handlers: handlers\n };\n};\n\nfunction _templateObject4() {\n var data = _taggedTemplateLiteralLoose([\"\\n width: 20px;\\n opacity: 0;\\n height: 20px;\\n border-radius: 10px;\\n background: \", \";\\n position: relative;\\n transform: rotate(45deg);\\n\\n animation: \", \" 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)\\n forwards;\\n animation-delay: 100ms;\\n\\n &:after,\\n &:before {\\n content: '';\\n animation: \", \" 0.15s ease-out forwards;\\n animation-delay: 150ms;\\n position: absolute;\\n border-radius: 3px;\\n opacity: 0;\\n background: \", \";\\n bottom: 9px;\\n left: 4px;\\n height: 2px;\\n width: 12px;\\n }\\n\\n &:before {\\n animation: \", \" 0.15s ease-out forwards;\\n animation-delay: 180ms;\\n transform: rotate(90deg);\\n }\\n\"]);\n\n _templateObject4 = function _templateObject4() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject3() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0) rotate(90deg);\\n\\topacity: 0;\\n}\\nto {\\n transform: scale(1) rotate(90deg);\\n\\topacity: 1;\\n}\"]);\n\n _templateObject3 = function _templateObject3() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject2() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0);\\n opacity: 0;\\n}\\nto {\\n transform: scale(1);\\n opacity: 1;\\n}\"]);\n\n _templateObject2 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0) rotate(45deg);\\n\\topacity: 0;\\n}\\nto {\\n transform: scale(1) rotate(45deg);\\n opacity: 1;\\n}\"]);\n\n _templateObject = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar circleAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject());\nvar firstLineAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject2());\nvar secondLineAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject3());\nvar ErrorIcon = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject4(), function (p) {\n return p.primary || '#ff4b4b';\n}, circleAnimation, firstLineAnimation, function (p) {\n return p.secondary || '#fff';\n}, secondLineAnimation);\n\nfunction _templateObject2$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n width: 12px;\\n height: 12px;\\n box-sizing: border-box;\\n border: 2px solid;\\n border-radius: 100%;\\n border-color: \", \";\\n border-right-color: \", \";\\n animation: \", \" 1s linear infinite;\\n\"]);\n\n _templateObject2$1 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n from {\\n transform: rotate(0deg);\\n }\\n to {\\n transform: rotate(360deg);\\n }\\n\"]);\n\n _templateObject$1 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar rotate = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject$1());\nvar LoaderIcon = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject2$1(), function (p) {\n return p.secondary || '#e0e0e0';\n}, function (p) {\n return p.primary || '#616161';\n}, rotate);\n\nfunction _templateObject3$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n width: 20px;\\n opacity: 0;\\n height: 20px;\\n border-radius: 10px;\\n background: \", \";\\n position: relative;\\n transform: rotate(45deg);\\n\\n animation: \", \" 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)\\n forwards;\\n animation-delay: 100ms;\\n &:after {\\n content: '';\\n box-sizing: border-box;\\n animation: \", \" 0.2s ease-out forwards;\\n opacity: 0;\\n animation-delay: 200ms;\\n position: absolute;\\n border-right: 2px solid;\\n border-bottom: 2px solid;\\n border-color: \", \";\\n bottom: 6px;\\n left: 6px;\\n height: 10px;\\n width: 6px;\\n }\\n\"]);\n\n _templateObject3$1 = function _templateObject3() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject2$2() {\n var data = _taggedTemplateLiteralLoose([\"\\n0% {\\n\\theight: 0;\\n\\twidth: 0;\\n\\topacity: 0;\\n}\\n40% {\\n height: 0;\\n\\twidth: 6px;\\n\\topacity: 1;\\n}\\n100% {\\n opacity: 1;\\n height: 10px;\\n}\"]);\n\n _templateObject2$2 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$2() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0) rotate(45deg);\\n\\topacity: 0;\\n}\\nto {\\n transform: scale(1) rotate(45deg);\\n\\topacity: 1;\\n}\"]);\n\n _templateObject$2 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar circleAnimation$1 = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject$2());\nvar checkmarkAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject2$2());\nvar CheckmarkIcon = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject3$1(), function (p) {\n return p.primary || '#61d345';\n}, circleAnimation$1, checkmarkAnimation, function (p) {\n return p.secondary || '#fff';\n});\n\nfunction _templateObject4$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n position: relative;\\n transform: scale(0.6);\\n opacity: 0.4;\\n min-width: 20px;\\n animation: \", \" 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275)\\n forwards;\\n\"]);\n\n _templateObject4$1 = function _templateObject4() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject3$2() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0.6);\\n opacity: 0.4;\\n}\\nto {\\n transform: scale(1);\\n opacity: 1;\\n}\"]);\n\n _templateObject3$2 = function _templateObject3() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject2$3() {\n var data = _taggedTemplateLiteralLoose([\"\\n position: relative;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n min-width: 20px;\\n min-height: 20px;\\n\"]);\n\n _templateObject2$3 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$3() {\n var data = _taggedTemplateLiteralLoose([\"\\n position: absolute;\\n\"]);\n\n _templateObject$3 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar StatusWrapper = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject$3());\nvar IndicatorWrapper = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject2$3());\nvar enter = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject3$2());\nvar AnimatedIconWrapper = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject4$1(), enter);\nvar ToastIcon = function ToastIcon(_ref) {\n var toast = _ref.toast;\n var icon = toast.icon,\n type = toast.type,\n iconTheme = toast.iconTheme;\n\n if (icon !== undefined) {\n if (typeof icon === 'string') {\n return createElement(AnimatedIconWrapper, null, icon);\n } else {\n return icon;\n }\n }\n\n if (type === 'blank') {\n return null;\n }\n\n return createElement(IndicatorWrapper, null, createElement(LoaderIcon, Object.assign({}, iconTheme)), type !== 'loading' && createElement(StatusWrapper, null, type === 'error' ? createElement(ErrorIcon, Object.assign({}, iconTheme)) : createElement(CheckmarkIcon, Object.assign({}, iconTheme))));\n};\n\nfunction _templateObject2$4() {\n var data = _taggedTemplateLiteralLoose([\"\\n display: flex;\\n justify-content: center;\\n margin: 4px 10px;\\n color: inherit;\\n flex: 1 1 auto;\\n white-space: pre-line;\\n\"]);\n\n _templateObject2$4 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$4() {\n var data = _taggedTemplateLiteralLoose([\"\\n display: flex;\\n align-items: center;\\n background: #fff;\\n color: #363636;\\n line-height: 1.3;\\n will-change: transform;\\n box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.05);\\n max-width: 350px;\\n pointer-events: auto;\\n padding: 8px 10px;\\n border-radius: 8px;\\n\"]);\n\n _templateObject$4 = function _templateObject() {\n return data;\n };\n\n return data;\n}\n\nvar enterAnimation = function enterAnimation(factor) {\n return \"\\n0% {transform: translate3d(0,\" + factor * -200 + \"%,0) scale(.6); opacity:.5;}\\n100% {transform: translate3d(0,0,0) scale(1); opacity:1;}\\n\";\n};\n\nvar exitAnimation = function exitAnimation(factor) {\n return \"\\n0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;}\\n100% {transform: translate3d(0,\" + factor * -150 + \"%,-1px) scale(.6); opacity:0;}\\n\";\n};\n\nvar fadeInAnimation = \"0%{opacity:0;} 100%{opacity:1;}\";\nvar fadeOutAnimation = \"0%{opacity:1;} 100%{opacity:0;}\";\nvar ToastBarBase = /*#__PURE__*/styled('div', forwardRef)( /*#__PURE__*/_templateObject$4());\nvar Message = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject2$4());\n\nvar getAnimationStyle = function getAnimationStyle(position, visible) {\n var top = position.includes('top');\n var factor = top ? 1 : -1;\n\n var _ref = prefersReducedMotion() ? [fadeInAnimation, fadeOutAnimation] : [enterAnimation(factor), exitAnimation(factor)],\n enter = _ref[0],\n exit = _ref[1];\n\n return {\n animation: visible ? keyframes(enter) + \" 0.35s cubic-bezier(.21,1.02,.73,1) forwards\" : keyframes(exit) + \" 0.4s forwards cubic-bezier(.06,.71,.55,1)\"\n };\n};\n\nvar ToastBar = /*#__PURE__*/memo(function (_ref2) {\n var toast = _ref2.toast,\n position = _ref2.position,\n style = _ref2.style,\n children = _ref2.children;\n var animationStyle = toast != null && toast.height ? getAnimationStyle(toast.position || position || 'top-center', toast.visible) : {\n opacity: 0\n };\n var icon = createElement(ToastIcon, {\n toast: toast\n });\n var message = createElement(Message, Object.assign({}, toast.ariaProps), resolveValue(toast.message, toast));\n return createElement(ToastBarBase, {\n className: toast.className,\n style: _extends({}, animationStyle, style, toast.style)\n }, typeof children === 'function' ? children({\n icon: icon,\n message: message\n }) : createElement(Fragment, null, icon, message));\n});\n\nfunction _templateObject$5() {\n var data = _taggedTemplateLiteralLoose([\"\\n z-index: 9999;\\n > * {\\n pointer-events: auto;\\n }\\n\"]);\n\n _templateObject$5 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nsetup(createElement);\n\nvar getPositionStyle = function getPositionStyle(position, offset) {\n var top = position.includes('top');\n var verticalStyle = top ? {\n top: 0\n } : {\n bottom: 0\n };\n var horizontalStyle = position.includes('center') ? {\n justifyContent: 'center'\n } : position.includes('right') ? {\n justifyContent: 'flex-end'\n } : {};\n return _extends({\n left: 0,\n right: 0,\n display: 'flex',\n position: 'absolute',\n transition: prefersReducedMotion() ? undefined : \"all 230ms cubic-bezier(.21,1.02,.73,1)\",\n transform: \"translateY(\" + offset * (top ? 1 : -1) + \"px)\"\n }, verticalStyle, horizontalStyle);\n};\n\nvar activeClass = /*#__PURE__*/css( /*#__PURE__*/_templateObject$5());\nvar DEFAULT_OFFSET = 16;\nvar Toaster = function Toaster(_ref) {\n var reverseOrder = _ref.reverseOrder,\n _ref$position = _ref.position,\n position = _ref$position === void 0 ? 'top-center' : _ref$position,\n toastOptions = _ref.toastOptions,\n gutter = _ref.gutter,\n children = _ref.children,\n containerStyle = _ref.containerStyle,\n containerClassName = _ref.containerClassName;\n\n var _useToaster = useToaster(toastOptions),\n toasts = _useToaster.toasts,\n handlers = _useToaster.handlers;\n\n return createElement(\"div\", {\n style: _extends({\n position: 'fixed',\n zIndex: 9999,\n top: DEFAULT_OFFSET,\n left: DEFAULT_OFFSET,\n right: DEFAULT_OFFSET,\n bottom: DEFAULT_OFFSET,\n pointerEvents: 'none'\n }, containerStyle),\n className: containerClassName,\n onMouseEnter: handlers.startPause,\n onMouseLeave: handlers.endPause\n }, toasts.map(function (t) {\n var toastPosition = t.position || position;\n var offset = handlers.calculateOffset(t, {\n reverseOrder: reverseOrder,\n gutter: gutter,\n defaultPosition: position\n });\n var positionStyle = getPositionStyle(toastPosition, offset);\n var ref = t.height ? undefined : createRectRef(function (rect) {\n handlers.updateHeight(t.id, rect.height);\n });\n return createElement(\"div\", {\n ref: ref,\n className: t.visible ? activeClass : '',\n key: t.id,\n style: positionStyle\n }, t.type === 'custom' ? resolveValue(t.message, t) : children ? children(t) : createElement(ToastBar, {\n toast: t,\n position: toastPosition\n }));\n }));\n};\n\nexport default toast;\nexport { CheckmarkIcon, ErrorIcon, LoaderIcon, ToastBar, ToastIcon, Toaster, resolveValue, toast, useToaster, useStore as useToasterStore };\n//# sourceMappingURL=react-hot-toast.esm.js.map\n","import React, { createContext, useContext } from 'react';\n\nconst AuthConfigContext = createContext();\n\nexport const AuthConfigProvider = ({ children, config }) => {\n return (\n <AuthConfigContext.Provider value={config}>\n {children}\n </AuthConfigContext.Provider>\n );\n};\n\nexport const useAuthConfig = () => {\n return useContext(AuthConfigContext);\n};\n","// A type of promise-like that resolves synchronously and supports only one observer\nexport const _Pact = /*#__PURE__*/(function() {\n\tfunction _Pact() {}\n\t_Pact.prototype.then = function(onFulfilled, onRejected) {\n\t\tconst result = new _Pact();\n\t\tconst state = this.s;\n\t\tif (state) {\n\t\t\tconst callback = state & 1 ? onFulfilled : onRejected;\n\t\t\tif (callback) {\n\t\t\t\ttry {\n\t\t\t\t\t_settle(result, 1, callback(this.v));\n\t\t\t\t} catch (e) {\n\t\t\t\t\t_settle(result, 2, e);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} else {\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}\n\t\tthis.o = function(_this) {\n\t\t\ttry {\n\t\t\t\tconst value = _this.v;\n\t\t\t\tif (_this.s & 1) {\n\t\t\t\t\t_settle(result, 1, onFulfilled ? onFulfilled(value) : value);\n\t\t\t\t} else if (onRejected) {\n\t\t\t\t\t_settle(result, 1, onRejected(value));\n\t\t\t\t} else {\n\t\t\t\t\t_settle(result, 2, value);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(result, 2, e);\n\t\t\t}\n\t\t};\n\t\treturn result;\n\t}\n\treturn _Pact;\n})();\n\n// Settles a pact synchronously\nexport function _settle(pact, state, value) {\n\tif (!pact.s) {\n\t\tif (value instanceof _Pact) {\n\t\t\tif (value.s) {\n\t\t\t\tif (state & 1) {\n\t\t\t\t\tstate = value.s;\n\t\t\t\t}\n\t\t\t\tvalue = value.v;\n\t\t\t} else {\n\t\t\t\tvalue.o = _settle.bind(null, pact, state);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value && value.then) {\n\t\t\tvalue.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));\n\t\t\treturn;\n\t\t}\n\t\tpact.s = state;\n\t\tpact.v = value;\n\t\tconst observer = pact.o;\n\t\tif (observer) {\n\t\t\tobserver(pact);\n\t\t}\n\t}\n}\n\nexport function _isSettledPact(thenable) {\n\treturn thenable instanceof _Pact && thenable.s & 1;\n}\n\n// Converts argument to a function that always returns a Promise\nexport function _async(f) {\n\treturn function() {\n\t\tfor (var args = [], i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\t\ttry {\n\t\t\treturn Promise.resolve(f.apply(this, args));\n\t\t} catch(e) {\n\t\t\treturn Promise.reject(e);\n\t\t}\n\t}\n}\n\n// Awaits on a value that may or may not be a Promise (equivalent to the await keyword in ES2015, with continuations passed explicitly)\nexport function _await(value, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(value) : value;\n\t}\n\tif (!value || !value.then) {\n\t\tvalue = Promise.resolve(value);\n\t}\n\treturn then ? value.then(then) : value;\n}\n\n// Awaits on a value that may or may not be a Promise, then ignores it\nexport function _awaitIgnored(value, direct) {\n\tif (!direct) {\n\t\treturn value && value.then ? value.then(_empty) : Promise.resolve();\n\t}\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continue(value, then) {\n\treturn value && value.then ? value.then(then) : then(value);\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continueIgnored(value) {\n\tif (value && value.then) {\n\t\treturn value.then(_empty);\n\t}\n}\n\n// Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)\nexport function _forTo(array, body, check) {\n\tvar i = -1, pact, reject;\n\tfunction _cycle(result) {\n\t\ttry {\n\t\t\twhile (++i < array.length && (!check || !check())) {\n\t\t\t\tresult = body(i);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pact) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t} else {\n\t\t\t\tpact = result;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t}\n\t}\n\t_cycle();\n\treturn pact;\n}\n\n// Asynchronously iterate through an object's properties (including properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forIn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tkeys.push(key);\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\n// Asynchronously iterate through an object's own properties (excluding properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forOwn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tif (Object.prototype.hasOwnProperty.call(target, key)) {\n\t\t\tkeys.push(key);\n\t\t}\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\nexport const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\n// Asynchronously iterate through an object's values\n// Uses for...of if the runtime supports it, otherwise iterates until length on a copy\nexport function _forOf(target, body, check) {\n\tif (typeof target[_iteratorSymbol] === \"function\") {\n\t\tvar iterator = target[_iteratorSymbol](), step, pact, reject;\n\t\tfunction _cycle(result) {\n\t\t\ttry {\n\t\t\t\twhile (!(step = iterator.next()).done && (!check || !check())) {\n\t\t\t\t\tresult = body(step.value);\n\t\t\t\t\tif (result && result.then) {\n\t\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (pact) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t} else {\n\t\t\t\t\tpact = result;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t\t}\n\t\t}\n\t\t_cycle();\n\t\tif (iterator.return) {\n\t\t\tvar _fixup = function(value) {\n\t\t\t\ttry {\n\t\t\t\t\tif (!step.done) {\n\t\t\t\t\t\titerator.return();\n\t\t\t\t\t}\n\t\t\t\t} catch(e) {\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tif (pact && pact.then) {\n\t\t\t\treturn pact.then(_fixup, function(e) {\n\t\t\t\t\tthrow _fixup(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\t_fixup();\n\t\t}\n\t\treturn pact;\n\t}\n\t// No support for Symbol.iterator\n\tif (!(\"length\" in target)) {\n\t\tthrow new TypeError(\"Object is not iterable\");\n\t}\n\t// Handle live collections properly\n\tvar values = [];\n\tfor (var i = 0; i < target.length; i++) {\n\t\tvalues.push(target[i]);\n\t}\n\treturn _forTo(values, function(i) { return body(values[i]); }, check);\n}\n\nexport const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously iterate on a value using it's async iterator if present, or its synchronous iterator if missing\nexport function _forAwaitOf(target, body, check) {\n\tif (typeof target[_asyncIteratorSymbol] === \"function\") {\n\t\tvar pact = new _Pact();\n\t\tvar iterator = target[_asyncIteratorSymbol]();\n\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\treturn pact;\n\t\tfunction _resumeAfterBody(result) {\n\t\t\tif (check && check()) {\n\t\t\t\treturn _settle(pact, 1, iterator.return ? iterator.return().then(function() { return result; }) : result);\n\t\t\t}\n\t\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\t}\n\t\tfunction _resumeAfterNext(step) {\n\t\t\tif (step.done) {\n\t\t\t\t_settle(pact, 1);\n\t\t\t} else {\n\t\t\t\tPromise.resolve(body(step.value)).then(_resumeAfterBody).then(void 0, _reject);\n\t\t\t}\n\t\t}\n\t\tfunction _reject(error) {\n\t\t\t_settle(pact, 2, iterator.return ? iterator.return().then(function() { return error; }) : error);\n\t\t}\n\t}\n\treturn Promise.resolve(_forOf(target, function(value) { return Promise.resolve(value).then(body); }, check));\n}\n\n// Asynchronously implement a generic for loop\nexport function _for(test, update, body) {\n\tvar stage;\n\tfor (;;) {\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t\tif (shouldContinue.then) {\n\t\t\tstage = 0;\n\t\t\tbreak;\n\t\t}\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.s;\n\t\t\t} else {\n\t\t\t\tstage = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (update) {\n\t\t\tvar updateValue = update();\n\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\tstage = 2;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tvar pact = new _Pact();\n\tvar reject = _settle.bind(null, pact, 2);\n\t(stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tdo {\n\t\t\tif (update) {\n\t\t\t\tupdateValue = update();\n\t\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\t\tupdateValue.then(_resumeAfterUpdate).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tshouldContinue = test();\n\t\t\tif (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t}\n\t\t} while (!result || !result.then);\n\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterBody(result);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n\tfunction _resumeAfterUpdate() {\n\t\tif (shouldContinue = test()) {\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterTest(shouldContinue);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a do ... while loop\nexport function _do(body, test) {\n\tvar awaitBody;\n\tdo {\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t} else {\n\t\t\t\tawaitBody = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t} while (!shouldContinue.then);\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : shouldContinue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tfor (;;) {\n\t\t\tshouldContinue = test();\n\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t}\n\t\t\tif (!shouldContinue) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\tresult = result.v;\n\t\t\t\t} else {\n\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tdo {\n\t\t\t\tresult = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tshouldContinue = test();\n\t\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t\t}\n\t\t\t\tif (!shouldContinue) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} while (!shouldContinue.then);\n\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a switch statement\nexport function _switch(discriminant, cases) {\n\tvar dispatchIndex = -1;\n\tvar awaitBody;\n\touter: {\n\t\tfor (var i = 0; i < cases.length; i++) {\n\t\t\tvar test = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvar testValue = test();\n\t\t\t\tif (testValue && testValue.then) {\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tif (testValue === discriminant) {\n\t\t\t\t\tdispatchIndex = i;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Found the default case, set it as the pending dispatch case\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tif (dispatchIndex !== -1) {\n\t\t\tdo {\n\t\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\t\twhile (!body) {\n\t\t\t\t\tdispatchIndex++;\n\t\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t\t}\n\t\t\t\tvar result = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tawaitBody = true;\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\t\tdispatchIndex++;\n\t\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t\treturn result;\n\t\t}\n\t}\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : testValue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterTest(value) {\n\t\tfor (;;) {\n\t\t\tif (value === discriminant) {\n\t\t\t\tdispatchIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (++i === cases.length) {\n\t\t\t\tif (dispatchIndex !== -1) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttest = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvalue = test();\n\t\t\t\tif (value && value.then) {\n\t\t\t\t\tvalue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tdo {\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tvar result = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tdispatchIndex++;\n\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterBody(result) {\n\t\tfor (;;) {\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tif (!fallthroughCheck || fallthroughCheck()) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdispatchIndex++;\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _call(body, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(body()) : body();\n\t}\n\ttry {\n\t\tvar result = Promise.resolve(body());\n\t\treturn then ? result.then(then) : result;\n\t} catch (e) {\n\t\treturn Promise.reject(e);\n\t}\n}\n\n// Asynchronously call a function and swallow the result\nexport function _callIgnored(body, direct) {\n\treturn _call(body, _empty, direct);\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _invoke(body, then) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(then);\n\t}\n\treturn then(result);\n}\n\n// Asynchronously call a function and swallow the result\nexport function _invokeIgnored(body) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(_empty);\n\t}\n}\n\n// Asynchronously call a function and send errors to recovery continuation\nexport function _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Asynchronously await a promise and pass the result to a finally continuation\nexport function _finallyRethrows(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer(true, e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer.bind(null, false), finalizer.bind(null, true));\n\t}\n\treturn finalizer(false, result);\n}\n\n// Asynchronously await a promise and invoke a finally continuation that always overrides the result\nexport function _finally(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer();\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer, finalizer);\n\t}\n\treturn finalizer();\n}\n\n// Rethrow or return a value from a finally continuation\nexport function _rethrow(thrown, value) {\n\tif (thrown)\n\t\tthrow value;\n\treturn value;\n}\n\n// Empty function to implement break and other control flow that ignores asynchronous results\nexport function _empty() {\n}\n\n// Sentinel value for early returns in generators \nexport const _earlyReturn = /*#__PURE__*/ {};\n\n// Asynchronously call a function and send errors to recovery continuation, skipping early returns\nexport function _catchInGenerator(body, recover) {\n\treturn _catch(body, function(e) {\n\t\tif (e === _earlyReturn) {\n\t\t\tthrow e;\n\t\t}\n\t\treturn recover(e);\n\t});\n}\n\n// Asynchronous generator class; accepts the entrypoint of the generator, to which it passes itself when the generator should start\nexport const _AsyncGenerator = /*#__PURE__*/(function() {\n\tfunction _AsyncGenerator(entry) {\n\t\tthis._entry = entry;\n\t\tthis._pact = null;\n\t\tthis._resolve = null;\n\t\tthis._return = null;\n\t\tthis._promise = null;\n\t}\n\n\tfunction _wrapReturnedValue(value) {\n\t\treturn { value: value, done: true };\n\t}\n\tfunction _wrapYieldedValue(value) {\n\t\treturn { value: value, done: false };\n\t}\n\n\t_AsyncGenerator.prototype._yield = function(value) {\n\t\t// Yield the value to the pending next call\n\t\tthis._resolve(value && value.then ? value.then(_wrapYieldedValue) : _wrapYieldedValue(value));\n\t\t// Return a pact for an upcoming next/return/throw call\n\t\treturn this._pact = new _Pact();\n\t};\n\t_AsyncGenerator.prototype.next = function(value) {\n\t\t// Advance the generator, starting it if it has yet to be started\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tconst _entry = _this._entry;\n\t\t\t\tif (_entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the next call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Start the generator\n\t\t\t\t_this._entry = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\tfunction returnValue(value) {\n\t\t\t\t\t_this._resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t_this._resolve = null;\n\t\t\t\t}\n\t\t\t\tvar result = _entry(_this);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tresult.then(returnValue, function(error) {\n\t\t\t\t\t\tif (error === _earlyReturn) {\n\t\t\t\t\t\t\treturnValue(_this._return);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst pact = new _Pact();\n\t\t\t\t\t\t\t_this._resolve(pact);\n\t\t\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t\t\t_this._resolve = null;\n\t\t\t\t\t\t\t_resolve(pact, 2, error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturnValue(result);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Generator is started and a yield expression is pending, settle it\n\t\t\t\t_this._pact = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\t_settle(_pact, 1, value);\n\t\t\t}\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.return = function(value) {\n\t\t// Early return from the generator if started, otherwise abandons the generator\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the return call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return the specified value\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t}\n\t\t\t// Settle the yield expression with a rejected \"early return\" value\n\t\t\t_this._return = value;\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, _earlyReturn);\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.throw = function(error) {\n\t\t// Inject an exception into the pending yield expression\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve, reject) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the throw call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return a rejected Promise containing the error\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn reject(error);\n\t\t\t}\n\t\t\t// Settle the yield expression with the value as a rejection\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, error);\n\t\t});\n\t};\n\n\t_AsyncGenerator.prototype[_asyncIteratorSymbol] = function() {\n\t\treturn this;\n\t};\n\t\n\treturn _AsyncGenerator;\n})();\n","import { observable, action, makeObservable } from \"mobx\";\nimport commonEn from \"./en/common.json\";\nimport commonPl from \"./pl/common.json\";\n\nconst defaultLocale = \"pl\"; // Can be based on browser language or user selection (localStorage, cookies)\n\nclass LanguageStore {\n locale = defaultLocale;\n translations = commonPl;\n\n constructor() {\n makeObservable(this, {\n locale: observable,\n translations: observable,\n setLocale: action,\n });\n }\n\n setLocale(locale) {\n this.locale = locale;\n\n switch (locale) {\n case \"en\": {\n this.translations = commonEn;\n break;\n }\n default: {\n this.translations = commonPl;\n }\n }\n }\n}\n\nexport default new LanguageStore();\n","import sessionStore from \"../stores/sessionStore\";\n\nclass AndoncloudFetch {\n constructor() {\n this.callback = () => {};\n }\n\n setCallback(callback) {\n this.callback = callback;\n }\n\n removeCallback() {\n this.callback = () => {};\n }\n}\n\nconst andoncloudFetch = new AndoncloudFetch();\n\nasync function acFetch(url, options = {}) {\n const headers = sessionStore.requestHeaders();\n\n if (headers !== null) {\n options.headers = Object.assign({}, headers, options.headers);\n }\n\n try {\n const response = await fetch(url, options);\n if (!response?.ok) {\n if (response.status === 401) {\n sessionStore.removeSession();\n }\n } else {\n andoncloudFetch.callback(response, false);\n }\n\n return response;\n } catch (e) {\n sessionStore.setNetworkError(true);\n }\n}\n\nexport default andoncloudFetch;\nexport { acFetch as fetch };\n","/*! js-cookie v3.0.1 | MIT */\n;\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = global || self, (function () {\n var current = global.Cookies;\n var exports = global.Cookies = factory();\n exports.noConflict = function () { global.Cookies = current; return exports; };\n }()));\n}(this, (function () { 'use strict';\n\n /* eslint-disable no-var */\n function assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n }\n /* eslint-enable no-var */\n\n /* eslint-disable no-var */\n var defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n };\n /* eslint-enable no-var */\n\n /* eslint-disable no-var */\n\n function init (converter, defaultAttributes) {\n function set (key, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n key = encodeURIComponent(key)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n key + '=' + converter.write(value, key) + stringifiedAttributes)\n }\n\n function get (key) {\n if (typeof document === 'undefined' || (arguments.length && !key)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var foundKey = decodeURIComponent(parts[0]);\n jar[foundKey] = converter.read(value, foundKey);\n\n if (key === foundKey) {\n break\n }\n } catch (e) {}\n }\n\n return key ? jar[key] : jar\n }\n\n return Object.create(\n {\n set: set,\n get: get,\n remove: function (key, attributes) {\n set(\n key,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n }\n\n var api = init(defaultConverter, { path: '/' });\n /* eslint-enable no-var */\n\n return api;\n\n})));\n","import Cookies from \"js-cookie\";\n\nexport default class CookiesManager {\n static rootDomain;\n\n static recognizeRootDomain() {\n if (!this.rootDomain) {\n const host = window.location.hostname;\n if (window.location.port.length === 0) {\n let subdomain, parts;\n [subdomain, ...parts] = host.split(\".\");\n this.subdomain = subdomain;\n this.rootDomain = parts.join(\".\");\n } else {\n this.rootDomain = host;\n }\n }\n return this.rootDomain;\n }\n\n static get(key) {\n const recognizeRootDomain = this.recognizeRootDomain();\n return Cookies.get(key, { domain: recognizeRootDomain });\n }\n\n static set(key, value) {\n const recognizeRootDomain = this.recognizeRootDomain();\n return Cookies.set(key, value, { domain: recognizeRootDomain });\n }\n\n static remove(key) {\n const recognizeRootDomain = this.recognizeRootDomain();\n return Cookies.remove(key, { domain: recognizeRootDomain });\n }\n}\n","import { action, computed, observable, makeObservable, toJS } from \"mobx\";\n\nclass UserStore {\n currentUser = null;\n\n constructor() {\n makeObservable(this, {\n setCurrentUser: action,\n removeCurrentUser: action,\n currentUser: observable.deep,\n getCurrentUserJS: computed,\n });\n }\n\n setCurrentUser(currentUser) {\n this.currentUser = currentUser;\n }\n\n removeCurrentUser() {\n this.currentUser = null;\n }\n\n get getCurrentUserJS() {\n return toJS(this.currentUser);\n }\n}\n\nexport default new UserStore();\n","import toast from \"react-hot-toast\";\n\nimport { observable, makeObservable } from \"mobx\";\n\nimport i18n from \"../../locales/i18n\";\nimport { fetch } from \"../utils/fetch\";\nimport CookiesManager from \"../utils/cookies-manager\";\nimport userStore from \"./userStore\";\n\nclass Session {\n constructor() {\n this.user = {};\n this.accessToken = null;\n this.tokenType = null;\n this.expiresIn = null;\n }\n}\n\nclass SessionAPI {\n setAuthConfig({ baseUrl, clientId, redirectUri }) {\n this.baseUrl = baseUrl;\n this.clientId = clientId;\n this.redirectUri = redirectUri;\n }\n\n async authorize(credentials) {\n const formData = new FormData();\n const { scope, code, username, password } = credentials;\n\n formData.append(\"client_id\", this.clientId);\n\n if (scope) {\n formData.append(\"scope\", scope);\n }\n if (code) {\n formData.append(\"grant_type\", \"authorization_code\");\n formData.append(\"code\", code);\n formData.append(\"redirect_uri\", this.redirectUri);\n } else {\n formData.append(\"grant_type\", \"password\");\n formData.append(\"username\", username);\n formData.append(\"password\", password);\n }\n let fetchParams = {\n method: \"POST\",\n body: formData,\n };\n let session;\n\n await fetch(`${this.baseUrl}/v2/oauth2/token`, fetchParams)\n .then(async (response) => {\n let data;\n\n try {\n data = await response.json();\n\n if (!response.ok || response.status !== 200) {\n toast.error(data.error_description);\n return;\n }\n } catch (error) {\n toast.error(i18n.translations.unexpectedErrorMessage);\n return;\n }\n session = new Session();\n session.user = await this.getUserData(data);\n session.accessToken = data.access_token;\n session.tokenType = data.token_type;\n session.expiresIn = data.expires_in;\n })\n .catch((e) => {\n toast.error(e.message);\n });\n\n return session;\n }\n\n async getUserData(authData) {\n const fetchParams = {\n method: \"GET\",\n };\n if (authData) {\n const { token_type, access_token } = authData;\n fetchParams.headers = {\n Authorization: `${token_type} ${access_token}`,\n };\n }\n let response;\n response = await fetch(`${this.baseUrl}/v2/me`, fetchParams);\n if (response) {\n const { user } = await response.json();\n return {\n id: user.id,\n companyId: user.company_id,\n roleId: user.role_id,\n username: user.username,\n email: user.email,\n name: user.name,\n };\n }\n }\n\n async signOut() {\n const formData = new FormData();\n formData.append(\"client_id\", this.clientId);\n\n const fetchParams = {\n method: \"POST\",\n body: formData,\n };\n await fetch(`${this.baseUrl}/v2/oauth2/revoke`, fetchParams);\n }\n}\n\nclass SessionStore {\n loading = false;\n\n constructor() {\n this.api = new SessionAPI();\n this.networkError = false;\n\n makeObservable(this, {\n loading: observable,\n });\n }\n\n setAuthConfig(config) {\n this.api.setAuthConfig(config);\n }\n\n setNetworkError(value) {\n this.networkError = value;\n }\n\n isLoggedIn() {\n return Boolean(this.session);\n }\n\n requestHeaders() {\n if (!this.isLoggedIn()) {\n return null;\n }\n const { accessToken, tokenType } = this.session;\n return {\n Authorization: `${tokenType} ${accessToken}`,\n };\n }\n\n getLoginStatus() {\n if (this.isLoggedIn()) {\n return {\n status: \"connected\",\n authResponse: {\n user: this.session.user,\n accessToken: this.session.accessToken,\n tokenType: this.session.tokenType,\n expiresIn: this.session.expiresIn,\n },\n };\n }\n return {\n status: \"not_authorized\",\n };\n }\n\n async authorize(credentials, storeSession = true) {\n this.loading = true;\n const session = await this.api.authorize(credentials);\n this.loading = false;\n\n if (!session) {\n return null;\n }\n if (storeSession) {\n this.session = session;\n this.storeSession();\n this.setCurrentUser(session.user);\n }\n return session;\n }\n\n async recover() {\n if (this.session) {\n return;\n }\n await this.restoreSession();\n if (this.session) {\n let user = await this.api.getUserData();\n this.setCurrentUser(user);\n }\n }\n\n async logout() {\n if (this.session) {\n await this.api.signOut();\n this.removeSession();\n this.removeCurrentUser();\n }\n }\n\n async storeSession() {\n let session_cookie = {};\n session_cookie[\"access-token\"] = this.session.accessToken;\n session_cookie[\"token-type\"] = this.session.tokenType;\n session_cookie[\"expires-in\"] = this.session.expiresIn;\n const authHeaders = JSON.stringify(session_cookie);\n CookiesManager.set(\"authHeaders\", authHeaders);\n }\n\n async restoreSession() {\n const cookie = CookiesManager.get(\"authHeaders\");\n if (!cookie || cookie === \"null\") {\n return;\n }\n const json = JSON.parse(cookie);\n const session = new Session();\n session.accessToken = json[\"access-token\"];\n session.tokenType = json[\"token-type\"];\n session.expiresIn = json[\"expires-in\"];\n this.session = session;\n this.session.user = await this.api.getUserData();\n }\n\n removeSession() {\n CookiesManager.remove(\"authHeaders\");\n this.session = null;\n }\n\n setCurrentUser(user) {\n userStore.setCurrentUser(user);\n }\n\n removeCurrentUser() {\n userStore.removeCurrentUser();\n }\n}\n\nconst sessionStore = new SessionStore();\n\nexport default sessionStore;\n","import { adaptV4Theme, createTheme } from \"@mui/material/styles\";\n\nexport default createTheme(\n adaptV4Theme({\n props: {\n MuiButton: {\n variant: \"contained\",\n disableElevation: true,\n },\n MuiLoadingButton: {\n variant: \"contained\",\n disableElevation: true,\n },\n },\n overrides: {\n MuiBackdrop: {\n root: {\n marginTop: 48,\n },\n },\n MuiButton: {\n root: {\n fontWeight: \"normal\",\n borderRadius: 6,\n },\n },\n MuiLoadingButton: {\n root: {\n fontWeight: \"normal\",\n borderRadius: 6,\n },\n },\n MuiCardHeader: {\n root: {\n textAlign: \"center\",\n color: \"white\",\n background: \"linear-gradient(#4a4a4a 0%, #3e3e3e 100%)\",\n },\n subheader: {\n marginTop: \"0.5em\",\n color: \"rgba(255,255,255,0.75)\",\n },\n },\n MuiPaper: {\n rounded: {\n borderRadius: \"20px\",\n },\n },\n MuiCard: {\n root: {\n borderRadius: \"19px\",\n boxShadow: \"0px 4px 8px rgba(0, 0, 0, 0.25)\",\n },\n },\n MuiCardContent: {\n root: {\n maxWidth: 600,\n minHeight: 800,\n minWidth: 550,\n background: \"linear-gradient(180deg, #393939 0%, #4A4A4A 100%)\",\n \"&:last-child\": {\n paddingBottom: 16,\n },\n },\n },\n MuiDialogTitle: {\n root: {\n textAlign: \"center\",\n color: \"white\",\n background: \"linear-gradient(#4a4a4a 0%, #3e3e3e 100%)\",\n },\n },\n MuiDialogContent: {\n root: {\n minWidth: 550,\n padding: \"16px 24px\",\n background: \"linear-gradient(180deg, #393939 0%, #4A4A4A 100%)\",\n },\n },\n MuiDialogContentText: {\n root: {\n textAlign: \"center\",\n color: \"white\",\n },\n },\n MuiFormControl: {\n root: {\n alignItems: \"center\",\n },\n },\n MuiOutlinedInput: {\n root: {\n color: \"white\",\n \"&:hover .MuiOutlinedInput-notchedOutline\": {\n borderColor: \"rgba(255,255,255,0.35)\",\n },\n },\n notchedOutline: {\n borderColor: \"rgba(255,255,255,0.25)\",\n },\n input: {\n padding: \"13px 16px\",\n background: \"transparent\",\n color: \"white\",\n borderColor: \"white\",\n },\n },\n },\n typography: {\n button: {\n textTransform: \"none\",\n },\n },\n palette: {\n primary: {\n light: \"#156bd1\",\n main: \"#155ed1\",\n dark: \"#1551d1\",\n contrastText: \"#fff\",\n },\n secondary: {\n light: \"#656565\",\n main: \"#595959\",\n dark: \"#4d4d4d\",\n contrastText: \"#fff\",\n },\n },\n })\n);\n","import { useLocation } from \"react-router-dom\";\n\nconst useQueryParams = () => {\n return new URLSearchParams(useLocation().search);\n}\n\nexport default useQueryParams;\n","import React, { useEffect } from \"react\";\nimport { Navigate } from \"react-router-dom\";\n\nimport useQueryParams from \"../hooks/useQueryParams\";\nimport sessionStore from \"../stores/sessionStore\";\n\nconst AuthRedirect = () => {\n const queryParams = useQueryParams();\n const nextPath = queryParams.get(\"next\");\n\n useEffect(() => {\n const code = queryParams.get(\"code\");\n\n if (code) {\n sessionStore.authorize({ code });\n }\n }, [queryParams]);\n\n if (sessionStore.isLoggedIn()) {\n return <Navigate to={nextPath} />;\n }\n return null;\n};\n\nexport default AuthRedirect;\n","/*\n * onScan.js - scan-events for hardware barcodes scanners in javascript\n */\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory()) :\n global.onScan = factory()\n}(this, (function () {\n\tvar onScan = {\t\n\t\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @param Object oOptions\n\t\t * @return self\n\t\t */\n\t\tattachTo: function(oDomElement, oOptions) {\n\t\n\t\t\tif(oDomElement.scannerDetectionData !== undefined){\n\t\t\t\tthrow new Error(\"onScan.js is already initialized for DOM element \" + oDomElement);\n\t\t\t}\n\t\n\t\t\tvar oDefaults = {\n\t\t\t\tonScan: function(sScanned, iQty){}, // Callback after detection of a successfull scanning: function(){sScancode, iCount)}()\n\t\t\t\tonScanError: function(oDebug){}, // Callback after detection of a unsuccessfull scanning (scanned string in parameter)\n\t\t\t\tonKeyProcess: function(sChar, oEvent){}, // Callback after receiving and processing a char (scanned char in parameter)\n\t\t\t\tonKeyDetect: function(iKeyCode, oEvent){}, // Callback after detecting a keyDown (key char in parameter) - in contrast to onKeyProcess, this fires for non-character keys like tab, arrows, etc. too!\n\t\t\t\tonPaste: function(sPasted, oEvent){}, // Callback after receiving a value on paste, no matter if it is a valid code or not\n\t\t\t\tkeyCodeMapper: function(oEvent) {return onScan.decodeKeyEvent(oEvent)}, // Custom function to decode a keydown event into a character. Must return decoded character or NULL if the given event should not be processed.\n\t\t\t\tonScanButtonLongPress: function(){}, // Callback after detection of a successfull scan while the scan button was pressed and held down\n\t\t\t\tscanButtonKeyCode:false, // Key code of the scanner hardware button (if the scanner button a acts as a key itself) \n\t\t\t\tscanButtonLongPressTime:500, // How long (ms) the hardware button should be pressed, until a callback gets executed\n\t\t\t\ttimeBeforeScanTest:100, // Wait duration (ms) after keypress event to check if scanning is finished\n\t\t\t\tavgTimeByChar:30, // Average time (ms) between 2 chars. Used to do difference between keyboard typing and scanning\n\t\t\t\tminLength:6, // Minimum length for a scanning\n\t\t\t\tsuffixKeyCodes:[9,13], // Chars to remove and means end of scanning\n\t\t\t\tprefixKeyCodes:[], // Chars to remove and means start of scanning\n\t\t\t\tignoreIfFocusOn:false, // do not handle scans if the currently focused element matches this selector or object\n\t\t\t\tstopPropagation:false, // Stop immediate propagation on keypress event\n\t\t\t\tpreventDefault:false, // Prevent default action on keypress event\n\t\t\t\tcaptureEvents:false, // Get the events before any listeners deeper in the DOM\n\t\t\t\treactToKeydown:true, // look for scan input in keyboard events\n\t\t\t\treactToPaste:false, // look for scan input in paste events\n\t\t\t\tsingleScanQty: 1, // Quantity of Items put out to onScan in a single scan\n\t\t\t}\n\t\t\t\t\t\t\t\t\t\n\t\t\toOptions = this._mergeOptions(oDefaults, oOptions);\n\t\n\t\t\t// initializing options and variables on DomElement\n\t\t\toDomElement.scannerDetectionData = {\n\t\t\t\t\toptions: oOptions,\n\t\t\t\t\tvars:{\n\t\t\t\t\t\tfirstCharTime: 0,\n\t\t\t\t\t\tlastCharTime: 0,\n\t\t\t\t\t\taccumulatedString: '',\n\t\t\t\t\t\ttestTimer: false,\n\t\t\t\t\t\tlongPressTimeStart: 0,\n\t\t\t\t\t\tlongPressed: false\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t};\n\t\t\t\n\t\t\t// initializing handlers (based on settings)\n\t\t\tif (oOptions.reactToPaste === true){\n\t\t\t\toDomElement.addEventListener(\"paste\", this._handlePaste, oOptions.captureEvents);\n\t\t\t}\n\t\t\tif (oOptions.scanButtonKeyCode !== false){\n\t\t\t\toDomElement.addEventListener(\"keyup\", this._handleKeyUp, oOptions.captureEvents);\n\t\t\t}\n\t\t\tif (oOptions.reactToKeydown === true || oOptions.scanButtonKeyCode !== false){\t\n\t\t\t\toDomElement.addEventListener(\"keydown\", this._handleKeyDown, oOptions.captureEvents);\n\t\t\t}\n\t\t\treturn this;\n\t\t},\n\t\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @return void\n\t\t */\n\t\tdetachFrom: function(oDomElement) {\n\t\t\t// detaching all used events\n\t\t\tif (oDomElement.scannerDetectionData.options.reactToPaste){\n\t\t\t\toDomElement.removeEventListener(\"paste\", this._handlePaste);\n\t\t\t}\n\t\t\tif (oDomElement.scannerDetectionData.options.scanButtonKeyCode !== false){\n\t\t\t\toDomElement.removeEventListener(\"keyup\", this._handleKeyUp);\n\t\t\t}\n\t\t\toDomElement.removeEventListener(\"keydown\", this._handleKeyDown);\n\t\t\t\n\t\t\t// clearing data off DomElement\n\t\t\toDomElement.scannerDetectionData = undefined; \n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @return Object\n\t\t */\n\t\tgetOptions: function(oDomElement){\n\t\t\treturn oDomElement.scannerDetectionData.options;\t\t\t\n\t\t},\n\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @param Object oOptions\n\t\t * @return self\n\t\t */\n\t\tsetOptions: function(oDomElement, oOptions){\n\t\t\t// check if some handlers need to be changed based on possible option changes\n\t\t\tswitch (oDomElement.scannerDetectionData.options.reactToPaste){\n\t\t\t\tcase true: \n\t\t\t\t\tif (oOptions.reactToPaste === false){\n\t\t\t\t\t\toDomElement.removeEventListener(\"paste\", this._handlePaste);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase false:\n\t\t\t\t\tif (oOptions.reactToPaste === true){\n\t\t\t\t\t\toDomElement.addEventListener(\"paste\", this._handlePaste);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\t\n\t\t\tswitch (oDomElement.scannerDetectionData.options.scanButtonKeyCode){\n\t\t\t\tcase false:\n\t\t\t\t\tif (oOptions.scanButtonKeyCode !== false){\n\t\t\t\t\t\toDomElement.addEventListener(\"keyup\", this._handleKeyUp);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault: \n\t\t\t\t\tif (oOptions.scanButtonKeyCode === false){\n\t\t\t\t\t\toDomElement.removeEventListener(\"keyup\", this._handleKeyUp);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\t\n\t\t\t// merge old and new options\n\t\t\toDomElement.scannerDetectionData.options = this._mergeOptions(oDomElement.scannerDetectionData.options, oOptions);\n\t\t\n\t\t\t// reinitiallize\n\t\t\tthis._reinitialize(oDomElement);\n\t\t\treturn this;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Transforms key codes into characters.\n\t\t * \n\t\t * By default, only the follwing key codes are taken into account\n\t\t * - 48-90 (letters and regular numbers)\n\t\t * - 96-105 (numeric keypad numbers)\n\t\t * - 106-111 (numeric keypad operations)\n\t\t * \n\t\t * All other keys will yield empty strings!\n\t\t * \n\t\t * The above keycodes will be decoded using the KeyboardEvent.key property on modern\n\t\t * browsers. On older browsers the method will fall back to String.fromCharCode()\n\t\t * putting the result to upper/lower case depending on KeyboardEvent.shiftKey if\n\t\t * it is set.\n\t\t * \n\t\t * @param KeyboardEvent oEvent\n\t\t * @return string\n\t\t */\n\t\tdecodeKeyEvent : function (oEvent) {\n\t\t\tvar iCode = this._getNormalizedKeyNum(oEvent);\n\t\t\tswitch (true) {\n\t\t\t\tcase iCode >= 48 && iCode <= 90: // numbers and letters\n\t\t\t\tcase iCode >= 106 && iCode <= 111: // operations on numeric keypad (+, -, etc.)\n\t\t\t\t\tif (oEvent.key !== undefined && oEvent.key !== '') {\n\t\t\t\t\t\treturn oEvent.key;\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\t\tvar sDecoded = String.fromCharCode(iCode);\n\t\t\t\t\tswitch (oEvent.shiftKey) {\n\t\t\t\t\t\tcase false: sDecoded = sDecoded.toLowerCase(); break;\n\t\t\t\t\t\tcase true: sDecoded = sDecoded.toUpperCase(); break;\n\t\t\t\t\t}\n\t\t\t\t\treturn sDecoded;\n\t\t\t\tcase iCode >= 96 && iCode <= 105: // numbers on numeric keypad\n\t\t\t\t\treturn 0+(iCode-96);\n\t\t\t}\n\t\t\treturn '';\n\t\t},\n\t\t\n\t\t/**\n\t\t * Simulates a scan of the provided code.\n\t *\n\t\t * The scan code can be defined as\n\t\t * - a string - in this case no keyCode decoding is done and the code is merely validated\n\t\t * against constraints like minLenght, etc.\n\t\t * - an array of keyCodes (e.g. `[70,71,80]`) - will produce `keydown` events with corresponding\n\t\t * `keyCode` properties. NOTE: these events will have empty `key` properties, so decoding may\n\t\t * yield different results than with native events.\n\t\t * - an array of objects (e.g. `[{keyCode: 70, key: \"F\", shiftKey: true}, {keyCode: 71, key: \"g\"}]`) -\n\t\t * this way almost any event can be simulated, but it's a lot of work to do.\n\t\t *\n\t\t * @param DomElement oDomElement\n\t\t * @param string|array mStringOrArray\n\t\t * @return self\n\t\t */\n\t\tsimulate: function(oDomElement, mStringOrArray){\n\t\t\tthis._reinitialize(oDomElement);\n\t\t\tif (Array.isArray(mStringOrArray)){\n\t\t\t\tmStringOrArray.forEach(function(mKey){\n\t\t\t\t\tvar oEventProps = {};\n\t\t\t\t\tif( (typeof mKey === \"object\" || typeof mKey === 'function') && (mKey !== null) ) {\n\t\t\t\t\t\toEventProps = mKey;\n\t\t\t\t\t} else {\n\t\t\t\t\t\toEventProps.keyCode = parseInt(mKey);\n\t\t\t\t\t}\n\t\t\t\t\tvar oEvent = new KeyboardEvent('keydown', oEventProps);\n\t\t\t\t\tdocument.dispatchEvent(oEvent);\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\tthis._validateScanCode(oDomElement, mStringOrArray);\n\t\t\t}\n\t\t\treturn this;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param DomElement oDomElement\n\t\t * @return void\n\t\t */\n\t\t_reinitialize: function(oDomElement){\n\t\t\tvar oVars = oDomElement.scannerDetectionData.vars;\n\t\t\toVars.firstCharTime = 0;\n\t\t\toVars.lastCharTime = 0;\n\t\t\toVars.accumulatedString = '';\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param DomElement oDomElement\n\t * @return boolean\n\t\t */\n\t\t_isFocusOnIgnoredElement: function(oDomElement){\n\t\t\t\n\t\t\tvar ignoreSelectors = oDomElement.scannerDetectionData.options.ignoreIfFocusOn;\n\t\n\t if(!ignoreSelectors){\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\n\t\t\tvar oFocused = document.activeElement;\n\t\t\t\n\t\t\t// checks if ignored element is an array, and if so it checks if one of the elements of it is an active one\n\t\t\tif (Array.isArray(ignoreSelectors)){\n\t\t\t\tfor(var i=0; i<ignoreSelectors.length; i++){\n\t\t\t\t\tif(oFocused.matches(ignoreSelectors[i]) === true){\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t// if the option consists of an single element, it only checks this one\n\t\t\t} else if (oFocused.matches(ignoreSelectors)){\n\t\t\t\treturn true;\t\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\t// if the active element is not listed in the ignoreIfFocusOn option, return false\n\t\t return false;\n\t },\n\t\t\n\t /**\n\t * Validates the scan code accumulated by the given DOM element and fires the respective events.\n\t * \n\t * @private\n\t * @param DomElement oDomElement\n\t * @return boolean\n\t */\n\t\t_validateScanCode: function(oDomElement, sScanCode){\n\t\t\tvar oScannerData = oDomElement.scannerDetectionData;\t\t\t\n\t\t\tvar oOptions = oScannerData.options;\n\t\t\tvar iSingleScanQty = oScannerData.options.singleScanQty;\n\t\t\tvar iFirstCharTime = oScannerData.vars.firstCharTime;\n\t\t\tvar iLastCharTime = oScannerData.vars.lastCharTime;\n\t\t\tvar oScanError = {};\n\t var oEvent;\n\t \n\t\t\tswitch(true){\n\t\t\t\t\n\t\t\t\t// detect codes that are too short\n\t\t\t\tcase (sScanCode.length < oOptions.minLength):\n\t\t\t\t\toScanError = {\n\t\t\t\t\t\tmessage: \"Receieved code is shorter then minimal length\"\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// detect codes that were entered too slow\t\n\t\t\t\tcase ((iLastCharTime - iFirstCharTime) > (sScanCode.length * oOptions.avgTimeByChar)):\n\t\t\t\t\toScanError = {\n\t\t\t\t\t\tmessage: \"Receieved code was not entered in time\"\n\t\t\t\t\t};\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// if a code was not filtered out earlier it is valid\t\n\t\t\t\tdefault:\n\t\t\t\t\toOptions.onScan.call(oDomElement, sScanCode, iSingleScanQty);\n\t\t\t\t\toEvent = new CustomEvent(\n\t\t\t\t\t\t'scan',\n\t\t\t\t\t\t{\t\n\t\t\t\t\t\t\tdetail: { \n\t\t\t\t\t\t\t\tscanCode: sScanCode,\n\t\t\t\t\t\t\t\tqty: iSingleScanQty\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t\toDomElement.dispatchEvent(oEvent);\n\t\t\t\t\tonScan._reinitialize(oDomElement);\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t\t\n\t\t\t// If an error occurred (otherwise the method would return earlier) create an object for errordetection\n\t\t\toScanError.scanCode = sScanCode;\n\t\t\toScanError.scanDuration = iLastCharTime - iFirstCharTime;\n\t\t\toScanError.avgTimeByChar = oOptions.avgTimeByChar;\n\t\t\toScanError.minLength = oOptions.minLength;\n\t\t\t\n\t\t\toOptions.onScanError.call(oDomElement, oScanError);\n\t\t\t\n\t\t\toEvent = new CustomEvent(\n\t\t\t\t'scanError', \n\t\t\t\t{detail: oScanError}\n\t\t\t);\n\t\t\toDomElement.dispatchEvent(oEvent);\n\t\t\t\n\t\t\tonScan._reinitialize(oDomElement);\n\t\t\treturn false;\n\t },\n\t\n\t /**\n\t * @private\n\t * @param Object oDefaults\n\t * @param Object oOptions\n\t * @return Object\n\t */\n\t\t_mergeOptions: function(oDefaults, oOptions){\n\t\t\tvar oExtended = {};\n\t\t\tvar prop;\n\t\t\tfor (prop in oDefaults){\n\t\t\t\tif (Object.prototype.hasOwnProperty.call(oDefaults, prop)){\n\t\t\t\t\toExtended[prop] = oDefaults[prop];\n\t\t\t\t}\n\t\t\t}\t\t\t\n\t\t\tfor (prop in oOptions){\n\t\t\t\tif (Object.prototype.hasOwnProperty.call(oOptions, prop)){\n\t\t\t\t\toExtended[prop] = oOptions[prop];\n\t\t\t\t}\n\t\t\t}\t\t\t\n\t\t\treturn oExtended;\n\t\t},\n\t\n\t\t/**\n\t\t * @private\n\t\t * @param KeyboardEvent e\n\t\t * @return int\n\t\t * @see https://www.w3schools.com/jsref/event_key_keycode.asp\n\t\t */\n\t\t_getNormalizedKeyNum: function(e){\n\t\t\treturn e.which || e.keyCode;\n\t\t},\n\t\n\t\n\t\t/**\n\t\t * @private\n\t\t * @param KeyboardEvent e\n\t\t * @return void\n\t\t */\n\t\t_handleKeyDown: function(e){\n\t\t\tvar iKeyCode = onScan._getNormalizedKeyNum(e);\n\t\t\tvar oOptions = this.scannerDetectionData.options;\n\t\t\tvar oVars = this.scannerDetectionData.vars;\n\t\t\tvar bScanFinished = false;\n\t\t\t\n\t\t\tif (oOptions.onKeyDetect.call(this, iKeyCode, e) === false) {\n\t\t\t\treturn;\n\t\t\t}\t\t\n\t\t\t\n\t\t\tif (onScan._isFocusOnIgnoredElement(this)){\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\t\t\t\n\t // If it's just the button of the scanner, ignore it and wait for the real input\n\t\t if(oOptions.scanButtonKeyCode !== false && iKeyCode==oOptions.scanButtonKeyCode) {\n\t\t\t\t\n\t\t\t\t// if the button was first pressed, start a timeout for the callback, which gets interrupted if the scanbutton gets released\n\t\t\t\tif (!oVars.longPressed){\n\t\t\t\t\toVars.longPressTimer = setTimeout( oOptions.onScanButtonLongPress, oOptions.scanButtonLongPressTime, this);\n\t\t\t\t\toVars.longPressed = true;\n\t\t\t\t}\n\t\n\t\t\t\treturn;\n\t }\n\t\t\t\n\t\t\tswitch(true){\n\t\t\t\t// If it's not the first character and we encounter a terminating character, trigger scan process\n\t\t\t\tcase (oVars.firstCharTime && oOptions.suffixKeyCodes.indexOf(iKeyCode)!==-1):\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\te.stopImmediatePropagation();\n\t\t\t\t\tbScanFinished=true;\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// If it's the first character and we encountered one of the starting characters, don't process the scan\t\n\t\t\t\tcase (!oVars.firstCharTime && oOptions.prefixKeyCodes.indexOf(iKeyCode)!==-1):\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\te.stopImmediatePropagation();\n\t\t\t\t\tbScanFinished=false;\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// Otherwise, just add the character to the scan string we're building\t\n\t\t\t\tdefault:\n\t\t\t\t\tvar character = oOptions.keyCodeMapper.call(this, e);\n\t\t\t\t\tif (character === null){\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\toVars.accumulatedString += character;\n\t\t\t\t\t\n\t\t\t\t\tif (oOptions.preventDefault) {\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\tif (oOptions.stopPropagation) {\n\t\t\t\t\t\te.stopImmediatePropagation();\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tbScanFinished=false;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t \n\t\t\tif(!oVars.firstCharTime){\n\t\t\t\toVars.firstCharTime=Date.now();\n\t\t\t}\n\t\t\t\n\t\t\toVars.lastCharTime=Date.now();\n\t\n\t\t\tif(oVars.testTimer){ \n\t\t\t\tclearTimeout(oVars.testTimer);\n\t\t\t}\n\t\t\t\n\t\t\tif(bScanFinished){\n\t\t\t\tonScan._validateScanCode(this, oVars.accumulatedString);\n\t\t\t\toVars.testTimer=false;\n\t\t\t} else {\n\t\t\t\toVars.testTimer=setTimeout(onScan._validateScanCode, oOptions.timeBeforeScanTest, this, oVars.accumulatedString);\n\t\t\t}\n\t\n\t\t\toOptions.onKeyProcess.call(this, character, e);\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param Event e\n\t\t * @return void\n\t\t */\n\t\t_handlePaste: function(e){\n\t\n\t\t\tvar oOptions = this.scannerDetectionData.options;\n\t\t\tvar oVars = this.scannerDetectionData.vars;\n\t\t\tvar sPasteString = (event.clipboardData || window.clipboardData).getData('text');\n\t\t\t\n\t\t\t// if the focus is on an ignored element, abort\n\t\t\tif (onScan._isFocusOnIgnoredElement(this)){\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\te.preventDefault();\n\n\t\t\tif (oOptions.stopPropagation) {\n\t\t\t\te.stopImmediatePropagation();\n\t\t\t}\n\t\t\t\t\t\t\n\t\t\toOptions.onPaste.call(this, sPasteString, event);\n\t\t\t\n\t\t\toVars.firstCharTime = 0;\n\t\t\toVars.lastCharTime = 0;\n\t\t\t\n\t\t\t// validate the string\n\t\t\tonScan._validateScanCode(this, sPasteString);\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param KeyboardEvent e\n\t\t * @return void\n\t\t */\n\t\t_handleKeyUp: function(e){\n\t\t\t// if the focus is on an ignored element, abort\n\t\t\tif (onScan._isFocusOnIgnoredElement(this)){\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tvar iKeyCode = onScan._getNormalizedKeyNum(e);\n\t\t\t\n\t\t\t// if hardware key is not being pressed anymore stop the timeout and reset\n\t\t\tif (iKeyCode == this.scannerDetectionData.options.scanButtonKeyCode){\n\t\t\t\tclearTimeout(this.scannerDetectionData.vars.longPressTimer);\n\t\t\t\tthis.scannerDetectionData.vars.longPressed = false;\n\t\t\t}\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Returns TRUE the scanner is currently in the middle of a scan sequence.\n\t\t * \n\t\t * @param DomElement\n\t\t * @return boolean\n\t\t */\n\t\tisScanInProgressFor: function(oDomElement) {\n\t\t\treturn oDomElement.scannerDetectionData.vars.firstCharTime > 0;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Returns TRUE if onScan is attached to the given DOM element and FALSE otherwise.\n\t\t * \n\t\t * @param DomElement\n\t\t * @return boolean\n\t\t */\n\t\tisAttachedTo: function(oDomElement) {\n\t\t\treturn (oDomElement.scannerDetectionData !== undefined);\n\t\t}\n\t};\n\t\n\treturn onScan;\n})));","import React, { useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { PropTypes } from \"prop-types\";\nimport { observer } from \"mobx-react-lite\";\nimport { Box, FormControl, TextField, Button, Typography } from \"@mui/material\";\nimport { LoadingButton } from \"@mui/lab\";\nimport sessionStore from \"../stores/sessionStore\";\nimport i18n from \"../../locales/i18n\";\nimport onScan from \"onscan.js\";\n\nconst LoginForm = ({\n scope,\n redirectPath,\n onSuccess,\n onFailure,\n onCancel,\n storeSession,\n title,\n \"data-testid\": dataTestID,\n}) => {\n const [username, setUsername] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const navigate = useNavigate();\n\n useEffect(() => {\n onScan.attachTo(document, {\n suffixKeyCodes: [13], // enter-key expected at the end of a scan\n reactToPaste: true, // Compatibility to built-in scanners in paste-mode (as opposed to keyboard-mode)\n // Alternative to document.addEventListener('scan')\n onScan: function (sCode, _) {\n console.log(\"logging in with code: \" + sCode);\n sessionStore.authorize(\n { username: \"code\", password: sCode },\n storeSession\n );\n },\n });\n return () => {\n onScan.detachFrom(document);\n };\n }, []);\n\n const handleCancel = (event) => {\n if (onCancel && typeof onCancel === \"function\") {\n onCancel();\n } else {\n navigate(\"/\");\n }\n };\n\n const handleSubmit = async (event) => {\n event.preventDefault();\n\n const session = await sessionStore.authorize(\n { scope, username, password },\n storeSession\n );\n if (session) {\n if (onSuccess && typeof onSuccess === \"function\") {\n onSuccess(session);\n }\n setPassword(\"\");\n navigate(redirectPath);\n } else if (onFailure && typeof onFailure === \"function\") {\n onFailure();\n }\n };\n\n const handleChangeForUsername = (event) => {\n setUsername(event.target.value);\n };\n\n const handleChangeForPassword = (event) => {\n setPassword(event.target.value);\n };\n\n return (\n <form\n onSubmit={handleSubmit}\n data-testid={dataTestID || \"ac-sdk-login-form\"}\n >\n <Box m=\"0 80px\">\n <Box\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n m=\"125px 0\"\n >\n <AcLogoSVG />\n </Box>\n <Box m=\"0 0 30px 0\" color=\"rgba(255, 255, 255, 0.6)\">\n <Typography align=\"center\" color=\"inherit\">\n {title}\n </Typography>\n </Box>\n <Box\n m=\"0\"\n display=\"grid\"\n sx={{ gridGap: \"18px\" }}\n gridTemplateColumns=\"1fr\"\n >\n <FormControl fullWidth>\n <TextField\n fullWidth\n variant=\"outlined\"\n placeholder={i18n.translations.loginCardUsernameHint}\n onChange={handleChangeForUsername}\n value={username}\n id=\"login-input\"\n inputProps={{\n \"data-testid\": \"ac-sdk-login-form-username-input\",\n }}\n />\n </FormControl>\n <FormControl fullWidth>\n <TextField\n fullWidth\n variant=\"outlined\"\n placeholder={i18n.translations.loginCardPasswordHint}\n onChange={handleChangeForPassword}\n value={password}\n type=\"password\"\n id=\"password-input\"\n inputProps={{\n \"data-testid\": \"ac-sdk-login-form-password-input\",\n }}\n />\n </FormControl>\n <LoadingButton\n id=\"login-button\"\n type=\"submit\"\n size=\"large\"\n color=\"primary\"\n onClick={handleSubmit}\n loading={sessionStore.loading}\n data-testid=\"ac-sdk-login-form-submit-button\"\n >\n {i18n.translations.loginCardSubmitButton}\n </LoadingButton>\n <Button\n id=\"cancel-button\"\n type=\"button\"\n size=\"large\"\n color=\"secondary\"\n onClick={handleCancel}\n data-testid=\"ac-sdk-login-form-cancel-button\"\n >\n {i18n.translations.loginCardCancelButton}\n </Button>\n </Box>\n <Box m=\"30px 0 40px 0\" color=\"rgba(255, 255, 255, 0.6)\">\n <Typography align=\"center\" color=\"inherit\">\n or scan\n </Typography>\n </Box>\n <Box\n display=\"grid\"\n gridTemplateColumns=\"1fr 1fr 1fr\"\n alignItems=\"center\"\n justifyItems=\"center\"\n marginBottom=\"30px\"\n >\n <Box style={{ filter: \"brightness(0.5)\" }}>\n <QRCodeSVG />\n </Box>\n <BarcodeSVG />\n <Box style={{ filter: \"brightness(0.5)\" }}>\n <RFIDCardSVG />\n </Box>\n </Box>\n </Box>\n </form>\n );\n};\n\nLoginForm.propTypes = {\n scope: PropTypes.string,\n redirectPath: PropTypes.string,\n onSuccess: PropTypes.func,\n onFailure: PropTypes.func,\n onCancel: PropTypes.func,\n storeSession: PropTypes.bool,\n};\n\nLoginForm.defaultProps = {\n redirectPath: \"/\",\n storeSession: true,\n};\n\nexport default observer(LoginForm);\n\nconst QRCodeSVG = () => {\n return (\n <svg\n width=\"51\"\n height=\"53\"\n viewBox=\"0 0 51 53\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M8.66868 45.6365C8.66868 42.8453 6.99822 41.1535 4.7397 41.1535C2.47266 41.1535 0.806463 42.8453 0.806463 45.6365C0.806463 48.4234 2.47266 50.1194 4.7397 50.1194C5.3022 50.1194 5.82635 50.0172 6.2951 49.8169L7.04084 50.7842H8.38743L7.21129 49.2501C8.1147 48.4873 8.66868 47.243 8.66868 45.6365ZM4.29652 47.1706L5.53658 48.7984C5.28942 48.8794 5.02095 48.9177 4.7397 48.9177C3.23544 48.9177 2.1147 47.7629 2.1147 45.6365C2.1147 43.5101 3.23544 42.3552 4.7397 42.3552C6.2397 42.3552 7.3647 43.5101 7.3647 45.6365C7.3647 46.8297 7.01101 47.7203 6.43146 48.2657L5.59197 47.1706H4.29652ZM10.3104 50.0001H11.6271V46.6976H13.4169C13.4467 46.6976 13.4723 46.6976 13.5021 46.6976L15.2749 50.0001H16.7749L14.8402 46.4675C15.9098 46.0711 16.4425 45.1805 16.4425 44.0086C16.4425 42.4021 15.4453 41.2728 13.4212 41.2728H10.3104V50.0001ZM11.6271 45.564V42.4021H13.2805C14.5803 42.4021 15.1172 43.02 15.1172 44.0086C15.1172 44.993 14.5803 45.564 13.2976 45.564H11.6271ZM28.4691 44.1109C28.1708 42.2444 26.7092 41.1535 24.864 41.1535C22.6055 41.1535 20.9393 42.8453 20.9393 45.6365C20.9393 48.4277 22.5969 50.1194 24.864 50.1194C26.7816 50.1194 28.1836 48.9177 28.4691 47.1919L27.1396 47.1876C26.9137 48.3041 25.9762 48.9177 24.8725 48.9177C23.3768 48.9177 22.2475 47.7714 22.2475 45.6365C22.2475 43.5186 23.3725 42.3552 24.8768 42.3552C25.989 42.3552 26.9222 42.9817 27.1396 44.1109H28.4691ZM32.6996 50.1322C34.5447 50.1322 35.7507 48.7814 35.7507 46.7572C35.7507 44.7203 34.5447 43.3694 32.6996 43.3694C30.8544 43.3694 29.6484 44.7203 29.6484 46.7572C29.6484 48.7814 30.8544 50.1322 32.6996 50.1322ZM32.7038 49.0626C31.4979 49.0626 30.9354 48.0101 30.9354 46.753C30.9354 45.5001 31.4979 44.4348 32.7038 44.4348C33.9013 44.4348 34.4638 45.5001 34.4638 46.753C34.4638 48.0101 33.9013 49.0626 32.7038 49.0626ZM39.6232 50.128C40.8164 50.128 41.2852 49.3993 41.5153 48.9817H41.6218V50.0001H42.8661V41.2728H41.592V44.5157H41.5153C41.2852 44.1109 40.8505 43.3694 39.6317 43.3694C38.0508 43.3694 36.8874 44.618 36.8874 46.7402C36.8874 48.8581 38.0337 50.128 39.6232 50.128ZM39.9045 49.0413C38.7667 49.0413 38.1744 48.0399 38.1744 46.7274C38.1744 45.4277 38.7539 44.4518 39.9045 44.4518C41.0167 44.4518 41.6133 45.3595 41.6133 46.7274C41.6133 48.1038 41.0039 49.0413 39.9045 49.0413ZM47.5057 50.1322C48.9332 50.1322 49.9432 49.4291 50.233 48.3638L49.027 48.1464C48.7969 48.7643 48.2429 49.0797 47.5185 49.0797C46.4276 49.0797 45.6946 48.3723 45.6605 47.1109H50.3139V46.6592C50.3139 44.2942 48.8991 43.3694 47.4162 43.3694C45.5923 43.3694 44.3906 44.7586 44.3906 46.77C44.3906 48.8027 45.5753 50.1322 47.5057 50.1322ZM45.6648 46.1564C45.7159 45.2274 46.3892 44.422 47.4247 44.422C48.4134 44.422 49.0611 45.155 49.0653 46.1564H45.6648Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <g clipPath=\"url(#clip0_2183_35009)\">\n <path\n d=\"M22.3002 3.27948H14.25V11.3318H22.3002V3.27948ZM20.6609 9.66275H15.9186V4.91923H20.6609V9.66275Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M19.1081 6.47128H17.4688V8.11102H19.1081V6.47128Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M14.2773 24.7206H22.3275V16.7122H14.2773V24.7206ZM15.9166 18.3373H20.6589V23.0809H15.9166V18.3373Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M35.7147 17.5176H34.0754V23.081H32.4653V21.8366H30.826V23.0591H28.8281V24.6988H35.7147V17.5176Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M19.1081 19.8893H17.4688V21.529H19.1081V19.8893Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M35.7142 3.27948H27.6641V11.3318H35.7142V3.27948ZM34.0749 9.66275H29.318V4.91923H34.0603L34.0749 9.66275Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M32.5221 6.47128H30.8828V8.11102H32.5221V6.47128Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M22.3014 13.184H17.5664V14.8237H22.3014V13.184Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M15.9167 13.184H14.2773V14.8237H15.9167V13.184Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M30.041 13.184H23.9375V14.8237H30.041V13.184Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M35.7121 15.8778V13.1766H31.6797V14.8237H34.0728V15.8778H35.7121Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25.819 6.56622H24.1797V11.3024H25.819V6.56622Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25.819 3.27948H24.1797V4.91922H25.819V3.27948Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25.82 21.4338H27.0348V19.7941H25.82V16.7122H24.1953V24.7645H27.1958V23.0809H25.8346L25.82 21.4338Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M29.1874 19.5598H30.8267V18.3373H32.1587V16.7122H27.8555V18.352H29.1874V19.5598Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M33.2539 6.42268e-05V1.6398H37.3668V5.73182H39.0061V-0.00726318L33.2539 6.42268e-05Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M12.6408 1.63985H16.7391V0.00012207H11.0234V5.73188H12.6627L12.6408 1.63985Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M37.3678 26.3603H33.2695V28.0001H39.0071V22.261H37.3678V26.3603Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M12.6408 22.261H11.0234V28.0001H16.761V26.3603H12.6627L12.6408 22.261Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_2183_35009\">\n <rect\n width=\"28\"\n height=\"28\"\n fill=\"white\"\n transform=\"translate(11 0.00012207)\"\n />\n </clipPath>\n </defs>\n </svg>\n );\n};\nconst BarcodeSVG = () => {\n return (\n <svg\n width=\"52\"\n height=\"49\"\n viewBox=\"0 0 52 49\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.42951 46.0001H4.77468C6.80309 46.0001 7.71928 44.9902 7.71928 43.6521C7.71928 42.3013 6.77326 41.5385 5.9082 41.4916V41.4064C6.70934 41.2018 7.37837 40.6564 7.37837 39.5655C7.37837 38.2743 6.48349 37.2728 4.62553 37.2728H1.42951V46.0001ZM2.74627 44.8709V42.0754H4.69371C5.75053 42.0754 6.41104 42.7572 6.41104 43.5882C6.41104 44.3211 5.91246 44.8709 4.64684 44.8709H2.74627ZM2.74627 41.0484V38.3936H4.54457C5.5886 38.3936 6.08718 38.9433 6.08718 39.6677C6.08718 40.5115 5.39684 41.0484 4.51048 41.0484H2.74627ZM11.0836 46.145C12.166 46.145 12.7754 45.5953 13.0183 45.1052H13.0694V46.0001H14.3137V41.6535C14.3137 39.7487 12.8137 39.3694 11.774 39.3694C10.5893 39.3694 9.4984 39.8467 9.07227 41.0399L10.2697 41.3126C10.4572 40.8481 10.9345 40.4007 11.791 40.4007C12.6135 40.4007 13.0353 40.8311 13.0353 41.5726V41.6024C13.0353 42.0669 12.5581 42.0584 11.3819 42.1947C10.1419 42.3396 8.87198 42.6635 8.87198 44.1507C8.87198 45.4376 9.83931 46.145 11.0836 46.145ZM11.3606 45.1223C10.6404 45.1223 10.1206 44.7984 10.1206 44.1677C10.1206 43.4859 10.7257 43.243 11.4629 43.145C11.8762 43.0896 12.8564 42.9788 13.0396 42.7956V43.6393C13.0396 44.4149 12.4217 45.1223 11.3606 45.1223ZM16.0108 46.0001H17.285V42.003C17.285 41.1464 17.9455 40.5285 18.8489 40.5285C19.1131 40.5285 19.4114 40.5754 19.5137 40.6052V39.3865C19.3858 39.3694 19.1344 39.3567 18.9725 39.3567C18.2054 39.3567 17.5492 39.7913 17.3105 40.4944H17.2424V39.4547H16.0108V46.0001ZM26.5492 46.1322C28.0961 46.1322 29.0975 45.2032 29.2381 43.9291H27.998C27.8361 44.6365 27.2864 45.0541 26.5577 45.0541C25.4796 45.0541 24.785 44.155 24.785 42.7274C24.785 41.3254 25.4924 40.4433 26.5577 40.4433C27.3674 40.4433 27.8617 40.9547 27.998 41.5683H29.2381C29.1017 40.2473 28.0236 39.3694 26.5364 39.3694C24.6912 39.3694 23.498 40.7586 23.498 42.7572C23.498 44.7302 24.6486 46.1322 26.5492 46.1322ZM33.3578 46.1322C35.2029 46.1322 36.4089 44.7814 36.4089 42.7572C36.4089 40.7203 35.2029 39.3694 33.3578 39.3694C31.5126 39.3694 30.3066 40.7203 30.3066 42.7572C30.3066 44.7814 31.5126 46.1322 33.3578 46.1322ZM33.362 45.0626C32.1561 45.0626 31.5936 44.0101 31.5936 42.753C31.5936 41.5001 32.1561 40.4348 33.362 40.4348C34.5595 40.4348 35.122 41.5001 35.122 42.753C35.122 44.0101 34.5595 45.0626 33.362 45.0626ZM40.2814 46.128C41.4746 46.128 41.9434 45.3993 42.1735 44.9817H42.28V46.0001H43.5243V37.2728H42.2502V40.5157H42.1735C41.9434 40.1109 41.5087 39.3694 40.29 39.3694C38.709 39.3694 37.5456 40.618 37.5456 42.7402C37.5456 44.8581 38.6919 46.128 40.2814 46.128ZM40.5627 45.0413C39.4249 45.0413 38.8326 44.0399 38.8326 42.7274C38.8326 41.4277 39.4121 40.4518 40.5627 40.4518C41.6749 40.4518 42.2715 41.3595 42.2715 42.7274C42.2715 44.1038 41.6621 45.0413 40.5627 45.0413ZM48.1639 46.1322C49.5914 46.1322 50.6014 45.4291 50.8912 44.3638L49.6852 44.1464C49.4551 44.7643 48.9011 45.0797 48.1767 45.0797C47.0858 45.0797 46.3528 44.3723 46.3187 43.1109H50.9721V42.6592C50.9721 40.2942 49.5574 39.3694 48.0744 39.3694C46.2505 39.3694 45.0488 40.7586 45.0488 42.77C45.0488 44.8027 46.2335 46.1322 48.1639 46.1322ZM46.323 42.1564C46.3741 41.2274 47.0474 40.422 48.0829 40.422C49.0716 40.422 49.7193 41.155 49.7235 42.1564H46.323Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <g clipPath=\"url(#clip0_2183_35008)\">\n <path\n d=\"M47 9.00012H7V10.0001H47V9.00012Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M43 0.00012207H42V7.00012H43V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M43 12.0001H42V19.0001H43V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M41 12.0001H39V19.0001H41V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M41 0.00012207H39V7.00012H41V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M38 0.00012207H35V7.00012H38V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M38 12.0001H35V19.0001H38V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M33 12.0001H31V19.0001H33V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M33 0.00012207H31V7.00012H33V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M30 0.00012207H28V7.00012H30V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M30 12.0001H28V19.0001H30V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M27 0.00012207H26V7.00012H27V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M27 12.0001H26V19.0001H27V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25 0.00012207H24V7.00012H25V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25 12.0001H24V19.0001H25V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M23 0.00012207H20V7.00012H23V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M23 12.0001H20V19.0001H23V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M18 0.00012207H16V7.00012H18V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M18 12.0001H16V19.0001H18V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M15 12.0001H14V19.0001H15V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M15 0.00012207H14V7.00012H15V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M13 0.00012207H10V7.00012H13V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M13 12.0001H10V19.0001H13V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_2183_35008\">\n <rect\n width=\"40\"\n height=\"20\"\n fill=\"white\"\n transform=\"translate(7 0.00012207)\"\n />\n </clipPath>\n </defs>\n </svg>\n );\n};\nconst RFIDCardSVG = () => {\n return (\n <svg\n width=\"58\"\n height=\"49\"\n viewBox=\"0 0 58 49\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.27131 46.0001H2.58807V42.6976H4.37784C4.40767 42.6976 4.43324 42.6976 4.46307 42.6976L6.2358 46.0001H7.7358L5.80114 42.4675C6.87074 42.0711 7.40341 41.1805 7.40341 40.0086C7.40341 38.4021 6.40625 37.2728 4.3821 37.2728H1.27131V46.0001ZM2.58807 41.564V38.4021H4.24148C5.54119 38.4021 6.07812 39.02 6.07812 40.0086C6.07812 40.993 5.54119 41.564 4.25852 41.564H2.58807ZM10.3224 37.2728H9.00568V46.0001H10.3224V37.2728ZM12.2401 46.0001H13.5568V42.1947H17.2642V41.0655H13.5568V38.4064H17.652V37.2728H12.2401V46.0001ZM22.0966 46.0001C24.7557 46.0001 26.294 44.351 26.294 41.6237C26.294 38.9092 24.7557 37.2728 22.1861 37.2728H19.2713V46.0001H22.0966ZM20.5881 44.8496V38.4234H22.1051C24.0142 38.4234 24.9986 39.5655 24.9986 41.6237C24.9986 43.6905 24.0142 44.8496 22.0241 44.8496H20.5881ZM38.3558 40.1109C38.0575 38.2444 36.5959 37.1535 34.7507 37.1535C32.4922 37.1535 30.826 38.8453 30.826 41.6365C30.826 44.4277 32.4837 46.1194 34.7507 46.1194C36.6683 46.1194 38.0703 44.9177 38.3558 43.1919L37.0263 43.1876C36.8004 44.3041 35.8629 44.9177 34.7592 44.9177C33.2635 44.9177 32.1342 43.7714 32.1342 41.6365C32.1342 39.5186 33.2592 38.3552 34.7635 38.3552C35.8757 38.3552 36.8089 38.9817 37.0263 40.1109H38.3558ZM41.734 46.145C42.8164 46.145 43.4258 45.5953 43.6687 45.1052H43.7198V46.0001H44.9641V41.6535C44.9641 39.7487 43.4641 39.3694 42.4244 39.3694C41.2397 39.3694 40.1488 39.8467 39.7227 41.0399L40.9201 41.3126C41.1076 40.8481 41.5849 40.4007 42.4414 40.4007C43.2638 40.4007 43.6857 40.8311 43.6857 41.5726V41.6024C43.6857 42.0669 43.2085 42.0584 42.0323 42.1947C40.7923 42.3396 39.5224 42.6635 39.5224 44.1507C39.5224 45.4376 40.4897 46.145 41.734 46.145ZM42.011 45.1223C41.2908 45.1223 40.771 44.7984 40.771 44.1677C40.771 43.4859 41.3761 43.243 42.1133 43.145C42.5266 43.0896 43.5067 42.9788 43.69 42.7956V43.6393C43.69 44.4149 43.0721 45.1223 42.011 45.1223ZM46.6612 46.0001H47.9354V42.003C47.9354 41.1464 48.5959 40.5285 49.4993 40.5285C49.7635 40.5285 50.0618 40.5754 50.1641 40.6052V39.3865C50.0362 39.3694 49.7848 39.3567 49.6229 39.3567C48.8558 39.3567 48.1996 39.7913 47.9609 40.4944H47.8928V39.4547H46.6612V46.0001ZM53.4826 46.128C54.6758 46.128 55.1445 45.3993 55.3746 44.9817H55.4812V46.0001H56.7255V37.2728H55.4513V40.5157H55.3746C55.1445 40.1109 54.7099 39.3694 53.4911 39.3694C51.9102 39.3694 50.7468 40.618 50.7468 42.7402C50.7468 44.8581 51.8931 46.128 53.4826 46.128ZM53.7638 45.0413C52.6261 45.0413 52.0337 44.0399 52.0337 42.7274C52.0337 41.4277 52.6133 40.4518 53.7638 40.4518C54.8761 40.4518 55.4727 41.3595 55.4727 42.7274C55.4727 44.1038 54.8633 45.0413 53.7638 45.0413Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <g clipPath=\"url(#clip0_2183_35036)\">\n <path\n d=\"M19.5998 19.9927H38.3927C40.7673 19.9927 41.9924 18.8037 41.9924 16.5215V3.47133C41.9924 1.1892 40.7673 0.00012207 38.3927 0.00012207H19.5998C17.2251 0.00012207 16 1.17443 16 3.47133V16.5215C16 18.8037 17.2251 19.9927 19.5998 19.9927ZM19.7283 17.8953C19.5129 17.9222 19.294 17.9003 19.0886 17.8313C18.8832 17.7623 18.6969 17.648 18.544 17.4973C18.3911 17.3466 18.2759 17.1635 18.2072 16.9623C18.1385 16.761 18.1181 16.547 18.1478 16.3369V3.64857C18.1197 3.43872 18.1411 3.22539 18.2104 3.02486C18.2796 2.82432 18.3949 2.6419 18.5474 2.49154C18.6999 2.34118 18.8856 2.22684 19.0903 2.15729C19.295 2.08774 19.5132 2.06481 19.7283 2.09024H38.2641C38.4792 2.06481 38.6975 2.08774 38.9022 2.15729C39.1068 2.22684 39.2925 2.34118 39.445 2.49154C39.5975 2.6419 39.7128 2.82432 39.7821 3.02486C39.8513 3.22539 39.8728 3.43872 39.8447 3.64857V16.3369C39.8728 16.5468 39.8513 16.7601 39.7821 16.9606C39.7128 17.1612 39.5975 17.3436 39.445 17.494C39.2925 17.6443 39.1068 17.7586 38.9022 17.8282C38.6975 17.8977 38.4792 17.9207 38.2641 17.8953H19.7283ZM24.5759 9.93366C24.9027 9.92527 25.2245 9.85291 25.5221 9.72085C25.8197 9.58879 26.0872 9.39974 26.3086 9.16488C26.5301 8.93003 26.701 8.65415 26.8112 8.3536C26.9215 8.05305 26.9689 7.73395 26.9505 7.41519C26.9123 6.96482 26.7407 6.53505 26.4565 6.1784C26.1723 5.82175 25.7879 5.55367 25.3502 5.40689C24.9125 5.26012 24.4405 5.24101 23.9919 5.3519C23.5433 5.46279 23.1375 5.69889 22.8241 6.03133C22.5106 6.36378 22.3031 6.77819 22.2269 7.22393C22.1506 7.66967 22.2089 8.12746 22.3947 8.54135C22.5805 8.95524 22.8858 9.3073 23.2731 9.55456C23.6605 9.80182 24.1132 9.93355 24.5759 9.93366ZM31.6091 6.54371H37.3112C37.4038 6.54577 37.4958 6.52936 37.5817 6.49548C37.6676 6.46159 37.7455 6.41095 37.8106 6.34665C37.8757 6.28235 37.9268 6.20575 37.9605 6.12153C37.9943 6.03731 38.0101 5.94725 38.007 5.85686C38.008 5.76802 37.9907 5.67989 37.9559 5.5978C37.9211 5.51571 37.8697 5.44134 37.8047 5.37922C37.7396 5.31709 37.6624 5.2685 37.5776 5.23634C37.4927 5.20419 37.4021 5.18914 37.3112 5.19214H31.6469C31.556 5.18914 31.4654 5.20419 31.3806 5.23634C31.2958 5.2685 31.2185 5.31709 31.1535 5.37922C31.0885 5.44134 31.037 5.51571 31.0022 5.5978C30.9674 5.67989 30.9501 5.76802 30.9511 5.85686C30.948 5.94725 30.9638 6.03731 30.9976 6.12153C31.0313 6.20575 31.0824 6.28235 31.1475 6.34665C31.2126 6.41095 31.2905 6.46159 31.3764 6.49548C31.4623 6.52936 31.5543 6.54577 31.6469 6.54371H31.6091ZM31.6091 10.6796H37.3112C37.4957 10.6796 37.6727 10.608 37.8032 10.4806C37.9337 10.3532 38.007 10.1803 38.007 10.0001C38.007 9.81992 37.9337 9.64709 37.8032 9.51967C37.6727 9.39224 37.4957 9.32065 37.3112 9.32065H31.6469C31.4624 9.32065 31.2854 9.39224 31.1549 9.51967C31.0245 9.64709 30.9511 9.81992 30.9511 10.0001C30.9511 10.1803 31.0245 10.3532 31.1549 10.4806C31.2854 10.608 31.4624 10.6796 31.6469 10.6796H31.6091ZM20.4392 14.8081H28.7126C28.796 14.8129 28.8794 14.7998 28.9571 14.7699C29.0347 14.74 29.1048 14.6939 29.1624 14.6349C29.22 14.5758 29.2637 14.5052 29.2905 14.428C29.3173 14.3508 29.3265 14.2688 29.3176 14.1877C29.3176 13.1907 27.8051 10.6501 24.5759 10.6501C21.3467 10.6501 19.8494 13.1907 19.8494 14.1877C19.8394 14.2678 19.8473 14.3489 19.8728 14.4256C19.8983 14.5023 19.9406 14.5726 19.9967 14.6317C20.0529 14.6908 20.1216 14.7372 20.198 14.7677C20.2745 14.7981 20.3567 14.8119 20.4392 14.8081ZM31.6091 14.8081H37.3112C37.4021 14.8111 37.4927 14.7961 37.5776 14.7639C37.6624 14.7318 37.7396 14.6832 37.8047 14.621C37.8697 14.5589 37.9211 14.4846 37.9559 14.4025C37.9907 14.3204 38.008 14.2322 38.007 14.1434C38.009 14.0529 37.9925 13.963 37.9584 13.8789C37.9243 13.7947 37.8734 13.718 37.8086 13.6534C37.7438 13.5887 37.6664 13.5373 37.581 13.5023C37.4956 13.4672 37.4039 13.4492 37.3112 13.4492H31.6469C31.5542 13.4492 31.4625 13.4672 31.3771 13.5023C31.2917 13.5373 31.2143 13.5887 31.1495 13.6534C31.0847 13.718 31.0338 13.7947 30.9997 13.8789C30.9656 13.963 30.9491 14.0529 30.9511 14.1434C30.9501 14.2322 30.9674 14.3204 31.0022 14.4025C31.037 14.4846 31.0885 14.5589 31.1535 14.621C31.2185 14.6832 31.2958 14.7318 31.3806 14.7639C31.4654 14.7961 31.556 14.8111 31.6469 14.8081H31.6091Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_2183_35036\">\n <rect\n width=\"26\"\n height=\"20\"\n fill=\"white\"\n transform=\"translate(16 0.00012207)\"\n />\n </clipPath>\n </defs>\n </svg>\n );\n};\n\nexport const AcLogoSVG = () => {\n return (\n <svg\n width=\"98\"\n height=\"50\"\n viewBox=\"0 0 98 50\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g opacity=\"0.25\">\n <path\n d=\"M66.8428 0.85791C66.2106 2.00303 65.7681 3.21177 65.3888 4.48413C64.883 4.54775 64.4405 4.61136 63.998 4.67498C63.5555 4.80222 63.0497 4.92945 62.6072 5.05669C61.8486 4.0388 61.0267 3.08453 60.0784 2.19388C59.4463 2.51197 58.8141 2.83006 58.1819 3.27539C58.3716 4.54774 58.6876 5.8201 59.1302 7.09246C58.7509 7.41055 58.4348 7.72864 58.1187 8.11034C57.8026 8.49205 57.4865 8.81014 57.2336 9.25547C56.0325 8.87376 54.7681 8.55567 53.5038 8.42843C53.1245 9.06461 52.8716 9.76441 52.6187 10.4006C53.5038 11.3549 54.5153 12.1819 55.59 12.8817C55.3371 13.8359 55.2107 14.7902 55.2739 15.7445C54.0727 16.1262 52.8716 16.6351 51.7969 17.2713C51.8601 17.9711 51.9865 18.7345 52.2394 19.4343C53.5038 19.6888 54.8313 19.7524 56.0957 19.6888C56.2854 20.1341 56.475 20.5794 56.7279 20.9611C56.9808 21.4065 57.2336 21.7882 57.4865 22.1699C56.7279 23.1878 56.0957 24.3329 55.5267 25.478C56.0325 25.987 56.5382 26.4959 57.1072 26.9412C58.2451 26.3687 59.383 25.6689 60.3945 24.8418C60.7738 25.0963 61.2164 25.3508 61.6589 25.5416C62.1014 25.7325 62.544 25.9233 62.9865 26.0506C62.9865 27.3229 63.1129 28.5953 63.3658 29.8676C64.0612 29.9949 64.8198 30.1221 65.5152 30.1221C66.1474 28.977 66.5899 27.7683 66.9692 26.4959C67.475 26.4323 67.9175 26.3687 68.36 26.305C68.8026 26.1778 69.3083 26.0506 69.7508 25.9233C70.5094 26.9412 71.3313 27.8955 72.2796 28.7861C72.9117 28.4681 73.5439 28.15 74.1761 27.7046C73.9864 26.4323 73.6704 25.1599 73.2278 23.8876C73.6071 23.5695 73.9232 23.2514 74.2393 22.8697C74.5554 22.488 74.8715 22.1699 75.1244 21.7246C76.3255 22.1063 77.5899 22.4244 78.8543 22.5516C79.2336 21.9154 79.4864 21.2156 79.7393 20.5794C78.8542 19.6252 77.8428 18.7981 76.7681 18.0983C77.0209 17.1441 77.1474 16.1898 77.0841 15.2355C78.2853 14.8538 79.4864 14.3449 80.5611 13.7087C80.4979 13.0089 80.3715 12.2455 80.1186 11.5457C78.8543 11.2912 77.5267 11.2276 76.2623 11.2912C76.0727 10.8459 75.883 10.4006 75.6301 10.0189C75.3773 9.57355 75.1244 9.19185 74.8715 8.81014C75.6301 7.79225 76.2623 6.64713 76.8313 5.50201C76.3255 4.99307 75.8198 4.48413 75.2508 4.0388C74.1129 4.61136 72.975 5.31116 71.9635 6.13819C71.5842 5.88372 71.1416 5.62925 70.6991 5.4384C70.2566 5.24754 69.8141 5.05669 69.3715 4.92945C69.3715 3.6571 69.2451 2.38474 68.9922 1.11238C68.2336 0.985147 67.5382 0.85791 66.8428 0.85791ZM68.929 9.25547C72.3428 10.8459 73.7968 14.8538 72.2796 18.2256C71.3945 20.1977 69.6244 21.5973 67.5382 22.0427C66.1474 22.2971 64.6934 22.1699 63.429 21.5973C60.0152 20.0069 58.5612 15.999 60.0784 12.6272C60.9635 10.6551 62.7336 9.25546 64.8198 8.81014C66.2106 8.49205 67.6646 8.6829 68.929 9.25547Z\"\n fill=\"white\"\n />\n <path\n d=\"M6.03298 22.8689L5.02149 29.2307H0.722656L5.4008 1.55695H11.0904L15.7054 29.2307H11.3433L10.395 22.8689H6.03298ZM8.1824 7.85511L6.66517 18.7974H9.76286L8.1824 7.85511Z\"\n fill=\"white\"\n />\n <path\n d=\"M23.861 1.49487L29.361 20.0713V1.49487H33.5334V29.1686H29.1081L23.4185 11.4193V29.1686H19.2461V1.49487H23.861Z\"\n fill=\"white\"\n />\n <path\n d=\"M50.2261 22.5524C50.2261 24.3337 49.5307 25.9878 48.3295 27.1965C47.1284 28.4688 45.4847 29.1686 43.7146 29.1686H37.2031V1.49487H43.7146C45.4847 1.49487 47.1284 2.19467 48.3295 3.46703C49.5939 4.67577 50.2261 6.39345 50.2261 8.11113V22.5524ZM41.3123 25.0971H43.7778C44.41 25.0971 45.0422 24.8426 45.4215 24.3973C45.864 23.952 46.1169 23.3158 46.1169 22.6796V8.17475C46.1169 7.53857 45.864 6.90239 45.4215 6.45707C44.979 6.01174 44.41 5.75727 43.7778 5.75727H41.3123V25.0971Z\"\n fill=\"white\"\n />\n <path\n d=\"M4.83183 49.0815C2.55598 49.0815 0.722656 47.2366 0.722656 45.01C0.722656 45.01 0.722656 45.01 0.722656 44.9464V35.5309C0.722656 33.2407 2.49276 31.3958 4.76862 31.3322C7.04447 31.2685 8.8778 33.1135 8.94101 35.4037C8.94101 35.4673 8.94101 35.4673 8.94101 35.5309V37.5031H6.28585V35.4673C6.28585 34.6403 5.59045 33.9405 4.76862 33.9405C4.38931 33.9405 4.01 34.0677 3.69391 34.3858C3.44104 34.6403 3.25138 35.022 3.25138 35.4673V44.9464C3.25138 45.7734 3.88356 46.4096 4.7054 46.4096C5.08471 46.4096 5.46402 46.2824 5.78011 45.9643C6.0962 45.7098 6.22263 45.3281 6.22263 44.8828V42.5289H8.94101V44.9464C8.94101 47.2366 7.10769 49.0815 4.83183 49.0815Z\"\n fill=\"white\"\n />\n <path\n d=\"M30.1227 48.8867H23.1055V31.6463H25.6974V46.342H30.1859L30.1227 48.8867Z\"\n fill=\"white\"\n />\n <path\n d=\"M48.0115 31.4559C50.2874 31.4559 52.1207 33.3009 52.1207 35.5911V45.0065C52.1207 47.2968 50.2874 49.1417 48.0115 49.1417C46.9368 49.1417 45.8621 48.6964 45.1035 47.933C44.3449 47.1696 43.9023 46.088 43.9023 45.0065V35.5911C43.9023 33.3009 45.7357 31.4559 48.0115 31.4559ZM49.4023 35.5275C49.4023 34.7004 48.7701 34.0643 47.9483 34.0643C47.569 34.0643 47.1897 34.1915 46.8736 34.5096C46.5575 34.7641 46.4311 35.1458 46.4311 35.5911V45.0065C46.4311 45.3883 46.5575 45.77 46.8736 46.0244C47.1265 46.2789 47.5058 46.4698 47.9483 46.4698C48.7701 46.4698 49.4023 45.8336 49.4023 45.0065V35.5275Z\"\n fill=\"white\"\n />\n <path\n d=\"M70.4451 49.0776C68.2325 49.0776 66.3992 47.2963 66.3359 45.0061V31.6463H68.8647V45.0061C68.8647 45.3878 68.9911 45.7695 69.3072 46.0876C69.5601 46.342 69.9394 46.5329 70.3819 46.5329C71.2037 46.5329 71.8359 45.8967 71.8359 45.0697V31.7099H74.5543V45.0697C74.5543 46.1512 74.1118 47.2327 73.3531 47.9961C72.5945 48.6959 71.583 49.1412 70.4451 49.0776Z\"\n fill=\"white\"\n />\n <path\n d=\"M97.0021 44.7516C97.0021 45.8331 96.5595 46.9146 95.8009 47.678C95.0423 48.4414 94.0308 48.8867 92.9561 48.8867H88.9102V31.6463H92.9561C94.0308 31.6463 95.1055 32.0916 95.8009 32.855C96.5595 33.6185 97.0021 34.7 97.0021 35.7815V44.7516ZM91.5021 46.342H93.0826C93.4619 46.342 93.8412 46.2148 94.094 45.8967C94.3469 45.6422 94.5366 45.2605 94.5366 44.8152V35.7815C94.5366 35.3998 94.4101 35.018 94.094 34.7C93.8412 34.4455 93.4619 34.2546 93.0826 34.2546H91.5021V46.342Z\"\n fill=\"white\"\n />\n <path\n d=\"M87.2555 1.49487L92.7555 20.0713V1.49487H96.9279V29.1686H92.5027L86.813 11.4193V29.1686H82.6406V1.49487H87.2555Z\"\n fill=\"white\"\n />\n </g>\n </svg>\n );\n};\n","import React from \"react\";\nimport { PropTypes } from \"prop-types\";\nimport { observer } from \"mobx-react-lite\";\nimport Dialog from \"@mui/material/Dialog\";\nimport DialogContent from \"@mui/material/DialogContent\";\nimport i18n from \"../../locales/i18n\";\nimport LoginForm from \"./loginForm\";\n\nconst LoginModal = ({\n open,\n title,\n subtitle,\n scope,\n redirectPath,\n onSuccess,\n onFailure,\n onCancel,\n storeSession,\n \"data-testid\": dataTestID,\n}) => {\n const getTitle = () => {\n return subtitle !== undefined\n ? subtitle\n : i18n.translations.loginCardSubtitle;\n };\n\n return (\n <Dialog\n open={open}\n onClose={onCancel}\n disableEscapeKeyDown\n data-testid={dataTestID || \"ac-sdk-login-modal\"}\n >\n <DialogContent>\n <LoginForm\n title={getTitle()}\n scope={scope}\n redirectPath={redirectPath}\n onSuccess={onSuccess}\n onFailure={onFailure}\n onCancel={onCancel}\n storeSession={storeSession}\n />\n </DialogContent>\n </Dialog>\n );\n};\n\nLoginModal.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n scope: PropTypes.string,\n redirectPath: PropTypes.string,\n onSuccess: PropTypes.func,\n onFailure: PropTypes.func,\n onCancel: PropTypes.func,\n storeSession: PropTypes.bool,\n};\n\nLoginModal.defaultProps = {\n redirectPath: \"/\",\n storeSession: false,\n};\n\nexport default observer(LoginModal);\n","import React, { useEffect, useState } from \"react\";\nimport { useModal } from \"use-modal-hook\";\n\nimport AndondCloudLoginModal from \"../components/loginModal\";\nimport { useAuthConfig } from \"../providers/authConfig\";\n\nconst LoginModal = ({ isOpen, title, subtitle, scope, redirectPath, onSuccess, onFailure, onCancel, storeSession = true}) => {\n const [open, setOpen] = useState(isOpen);\n\n useEffect(() => { setOpen(isOpen) }, [isOpen]);\n\n const handleSuccess = (session) => {\n if (onSuccess && typeof onSuccess === \"function\") {\n onSuccess(session);\n }\n setOpen(false);\n };\n\n const handleCancel = () => {\n if (onCancel && typeof onCancel === \"function\") {\n onCancel();\n }\n setOpen(false);\n };\n\n return (\n <AndondCloudLoginModal\n open={open}\n title={title}\n subtitle={subtitle}\n scope={scope}\n redirectPath={redirectPath}\n onSuccess={handleSuccess}\n onFailure={onFailure}\n onCancel={handleCancel}\n storeSession={storeSession}\n />\n );\n};\n\nconst useLogin = (scope, loginProps = {}) => {\n const { loginUrl, clientId, grantType, redirectUri, redirectPath: defaultRedirectPath } = useAuthConfig();\n const [showModal] = useModal(LoginModal, { scope, ...loginProps });\n const { redirectPath } = loginProps;\n const redirectUrl = encodeURIComponent(`${redirectUri}?next=${redirectPath || defaultRedirectPath}`);\n\n const buildLoginUrl = () => (\n `${loginUrl}?response_type=code&client_id=${clientId}&redirect_uri=${redirectUrl}&scope=${scope}`\n );\n\n if (grantType === \"password\") {\n return () => {\n showModal({ key: new Date().getTime() })\n };\n }\n return () => { window.location.assign(buildLoginUrl()) };\n};\n\nexport default useLogin;\n","import { makeStyles } from \"@mui/styles\";\n\nexport default makeStyles({\n root: ({ styles }) => styles,\n nav: {\n marginRight: 10,\n },\n user: {\n marginRight: 20,\n backgroundColor: \"rgba(0,0,0,0.05)\",\n borderRadius: 5,\n border: \"1px solid rgba(0,0,0, 0.25)\",\n },\n userInfo: {\n paddingLeft: \"1em\",\n },\n button: {\n color: \"white\",\n backgroundColor: \"transparent\",\n \"&:hover\": {\n backgroundColor: \"rgba(0,0,0,0.05)\",\n },\n },\n loginButton: {\n padding: \"6px 18px\",\n },\n logoutButton: {\n paddingRight: 18,\n },\n avatar: {\n paddingRight: \"0.5em\",\n },\n menu: ({ menuStyles }) => ({\n marginTop: 48,\n backgroundColor: \"rgba(0,0,0,0.5)\",\n ...menuStyles,\n }),\n popover: ({ menuDropdownStyles }) => ({\n minWidth: \"20%\",\n backgroundColor: \"#2d2d2d\",\n color: \"white\",\n ...menuDropdownStyles,\n }),\n});\n","import React, { useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { PropTypes } from \"prop-types\";\nimport { observer } from \"mobx-react-lite\";\nimport Button from \"@mui/material/Button\";\nimport ExitToAppIcon from \"@mui/icons-material/ExitToApp\";\nimport MenuIcon from \"@mui/icons-material/Menu\";\nimport sessionStore from \"../stores/sessionStore\";\nimport userStore from \"../stores/userStore\";\nimport i18n from \"../../locales/i18n\";\nimport AppBar from \"@mui/material/AppBar\";\nimport Box from \"@mui/material/Box\";\nimport Typography from \"@mui/material/Typography\";\nimport Toolbar from \"@mui/material/Toolbar\";\nimport IconButton from \"@mui/material/IconButton\";\nimport MenuItem from \"@mui/material/MenuItem\";\nimport Menu from \"@mui/material/Menu\";\nimport AccessTimeIcon from \"@mui/icons-material/AccessTime\";\nimport { useAuthConfig } from \"../providers/authConfig\";\nimport useStyles from \"./header.styles\";\n\nconst Header = ({\n position,\n showAcLogo,\n leadingText,\n title,\n navProps,\n userProps,\n menuProps,\n styles,\n \"data-testid\": dataTestID,\n}) => {\n const { baseUrl } = useAuthConfig();\n const { items: navItems } = {\n items: [],\n ...navProps,\n };\n const { show: showUserSection, showCompanyLogo } = {\n show: true,\n showCompanyLogo: false,\n ...userProps,\n };\n const {\n items: menuItems,\n buttonColor: menuButtonColor,\n dropdownStyles: menuDropdownStyles,\n styles: menuStyles,\n } = {\n items: [],\n dropdownStyles: {},\n styles: {},\n ...menuProps,\n };\n const [currentTime, setCurrentTime] = useState(new Date());\n const [menuAnchorEl, setMenuAnchorEl] = useState(null);\n const classes = useStyles({ styles, menuStyles, menuDropdownStyles });\n const navigate = useNavigate();\n\n useEffect(() => {\n const interval = setInterval(() => {\n setCurrentTime(new Date());\n }, 1000);\n return () => clearInterval(interval);\n });\n\n const handleMenuOpen = (event) => {\n setMenuAnchorEl(event.currentTarget);\n };\n\n const handleMenuClose = () => {\n setMenuAnchorEl(null);\n };\n\n const handleItemClick = (item) => {\n if (item.url) {\n navigate(item.url);\n } else if (item.action && typeof item.action === \"function\") {\n item.action();\n }\n handleMenuClose();\n };\n\n const renderUserCompanyLogo = () => {\n const logoUrl = companyLogoUrl();\n return <img src={logoUrl} alt=\"\" />;\n };\n\n const companyLogoUrl = () => {\n let logoUrl = \"\";\n const currentUser = userStore.getCurrentUserJS;\n if (currentUser === null) {\n return logoUrl;\n }\n const { company } = currentUser;\n logoUrl = company.logo_url;\n return `${baseUrl}/${logoUrl}`;\n };\n\n const handleLogout = async () => {\n await sessionStore.logout();\n\n navigate(\"/\");\n };\n\n const renderUserAvatar = () => {\n let { currentUser } = userStore;\n return (\n <Box display=\"inline-block\" className={classes.avatar}>\n {currentUser && currentUser.name}\n </Box>\n );\n };\n\n const renderNav = () => {\n return (\n navItems && (\n <Box display=\"flex\" className={classes.nav}>\n {navItems.map((item) => (\n <Button\n key={item.label}\n onClick={() => handleItemClick(item)}\n endIcon={item.icon}\n className={classes.button}\n >\n {item.label}\n </Button>\n ))}\n </Box>\n )\n );\n };\n\n const renderUser = () => {\n const currentUser = userStore.getCurrentUserJS;\n\n return (\n <Box display=\"flex\" className={classes.user}>\n {currentUser ? (\n <Box display=\"flex\" alignItems=\"center\" className={classes.userInfo}>\n {showCompanyLogo && renderUserCompanyLogo()}\n {renderUserAvatar()}\n <Button\n id=\"logout-button\"\n onClick={handleLogout}\n endIcon={<ExitToAppIcon />}\n className={`${classes.button} ${classes.logoutButton}`}\n data-testid=\"ac-sdk-header-logout-button\"\n >\n {i18n.translations.headerLogoutButton}\n </Button>\n </Box>\n ) : (\n <Button\n id=\"login-button\"\n onClick={() => navigate(\"/login\")}\n className={`${classes.button} ${classes.loginButton}`}\n data-testid=\"ac-sdk-header-login-button\"\n >\n {i18n.translations.headerLoginButton}\n </Button>\n )}\n </Box>\n );\n };\n\n const renderMenu = () => {\n return (\n menuItems && (\n <Box>\n <IconButton onClick={handleMenuOpen}>\n <MenuIcon\n style={menuButtonColor ? { color: menuButtonColor } : {}}\n />\n </IconButton>\n <Menu\n id=\"menu-appbar\"\n marginThreshold={0}\n anchorEl={menuAnchorEl}\n anchorOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n keepMounted\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n open={Boolean(menuAnchorEl)}\n onClose={handleMenuClose}\n className={classes.menu}\n PopoverClasses={{\n paper: classes.popover,\n }}\n >\n {menuItems.map((item) => (\n <MenuItem key={item.label} onClick={() => handleItemClick(item)}>\n {item.label}\n </MenuItem>\n ))}\n </Menu>\n </Box>\n )\n );\n };\n\n return (\n <AppBar\n position={position}\n elevation={0}\n className={classes.root}\n data-testid={dataTestID || \"ac-sdk-header\"}\n >\n <Toolbar variant=\"dense\">\n {showAcLogo && (\n <a href=\"/\">\n <img\n src=\"//static.andoncloud.com/shared/logo-white.svg\"\n alt=\"AndonCloud\"\n />\n </a>\n )}\n <Typography variant=\"subtitle1\">{leadingText}</Typography>\n <Typography variant=\"subtitle1\" align=\"center\" style={{ flexGrow: 1 }}>\n {title}\n </Typography>\n {renderNav()}\n {showUserSection && renderUser()}\n <AccessTimeIcon />\n <Typography variant=\"body1\" align=\"center\" style={{ padding: \"0 5px\" }}>\n {currentTime.toLocaleTimeString()}\n </Typography>\n {renderMenu()}\n </Toolbar>\n </AppBar>\n );\n};\n\nHeader.propTypes = {\n position: PropTypes.string,\n showAcLogo: PropTypes.bool,\n leadingText: PropTypes.string.isRequired,\n title: PropTypes.string,\n navProps: PropTypes.shape({\n items: PropTypes.any,\n }),\n userProps: PropTypes.shape({\n show: PropTypes.bool,\n showCompanyLogo: PropTypes.bool,\n }),\n menuProps: PropTypes.shape({\n items: PropTypes.any,\n buttonColor: PropTypes.string,\n dropdownStyles: PropTypes.any,\n styles: PropTypes.any,\n }),\n styles: PropTypes.any,\n};\n\nHeader.defaultProps = {\n navProps: {},\n userProps: {},\n menuProps: {},\n styles: {},\n};\n\nexport default observer(Header);\n","import React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport { PropTypes } from \"prop-types\";\nimport Header from \"./header\";\n\nconst Container = ({ children, headerProps, \"data-testid\": dataTestID }) => {\n return (\n <Box\n display=\"flex\"\n flexDirection=\"column\"\n data-testid={dataTestID || \"ac-sdk-container\"}\n >\n <Header {...headerProps} />\n {children}\n </Box>\n );\n};\n\nContainer.propTypes = {\n children: PropTypes.any,\n headerProps: PropTypes.shape({\n position: PropTypes.string,\n showAcLogo: PropTypes.bool,\n leadingText: PropTypes.string.isRequired,\n title: PropTypes.string,\n navProps: PropTypes.shape({\n items: PropTypes.any,\n }),\n userProps: PropTypes.shape({\n show: PropTypes.bool,\n showCompanyLogo: PropTypes.bool,\n }),\n menuProps: PropTypes.shape({\n items: PropTypes.any,\n buttonColor: PropTypes.string,\n dropdownStyles: PropTypes.any,\n styles: PropTypes.any,\n }),\n styles: PropTypes.any,\n }),\n};\n\nContainer.defaultProps = {\n headerProps: {},\n};\n\nexport default Container;\n","import React from \"react\";\n\nexport const FullscreenBackdrop = () => {\n return (\n <div\n style={{\n zIndex: -1,\n position: \"absolute\",\n top: \"0\",\n bottom: \"0\",\n right: \"0\",\n left: \"0\",\n width: \"100%\",\n height: \"100%\",\n overflow: \"hidden\",\n }}\n >\n <svg\n width=\"1920\"\n height=\"1080\"\n viewBox=\"0 0 1920 1080\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g filter=\"url(#filter0_d_2183_34073)\">\n <path d=\"M0 0H1920V1080H0V0Z\" fill=\"#1E1E1E\" />\n </g>\n <mask\n id=\"mask0_2183_34073\"\n style={{ maskType: \"alpha\" }}\n maskUnits=\"userSpaceOnUse\"\n x=\"0\"\n y=\"0\"\n width=\"1920\"\n height=\"1080\"\n >\n <rect width=\"1920\" height=\"1080\" fill=\"#1E1E1E\" />\n </mask>\n <g mask=\"url(#mask0_2183_34073)\">\n <path\n d=\"M948.46 -0.00012207L931.49 -0.00012207L0 931.49L0 948.46L948.46 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M914.52 -0.00012207L897.54 -0.00012207L0 897.54L0 914.52L914.52 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M880.58 -0.00012207L863.6 -0.00012207L0 863.6L0 880.58L880.58 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1016.34 -0.00012207L999.37 -0.00012207L0 999.37L0 1016.34L1016.34 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M982.4 -0.00012207L965.43 -0.00012207L0 965.43L0 982.4L982.4 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M846.63 -0.00012207L829.66 -0.00012207L0 829.66L0 846.63L846.63 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M778.75 -0.00012207L761.78 -0.00012207L0 761.78L0 778.75L778.75 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1050.28 -0.00012207L1033.31 -0.00012207L0 1033.31L0 1050.28L1050.28 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M812.69 -0.00012207L795.72 -0.00012207L0 795.72L0 812.69L812.69 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M744.81 -0.00012207L727.84 -0.00012207L0 727.84L0 744.81L744.81 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1457.57 -0.00012207L1440.6 -0.00012207L360.602 1080H377.572L1457.57 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1389.69 -0.00012207L1372.72 -0.00012207L292.719 1080H309.689L1389.69 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1321.81 -0.00012207L1304.84 -0.00012207L224.84 1080H241.81L1321.81 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1355.75 -0.00012207L1338.78 -0.00012207L258.781 1080H275.751L1355.75 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M710.87 -0.00012207L693.9 -0.00012207L0 693.9L0 710.87L710.87 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1423.63 -0.00012207L1406.66 -0.00012207L326.66 1080H343.63L1423.63 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1152.1 -0.00012207L1135.13 -0.00012207L55.1289 1080H72.0989L1152.1 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1118.16 -0.00012207L1101.19 -0.00012207L21.1914 1080H38.1614L1118.16 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1186.04 -0.00012207L1169.07 -0.00012207L89.0703 1080H106.04L1186.04 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1253.93 -0.00012207L1236.96 -0.00012207L156.961 1080H173.931L1253.93 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1219.99 -0.00012207L1203.02 -0.00012207L123.02 1080H139.99L1219.99 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1287.87 -0.00012207L1270.9 -0.00012207L190.898 1080H207.868L1287.87 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M439.34 -0.00012207L422.37 -0.00012207L0 422.37L0 439.34L439.34 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M167.81 -0.00012207L150.84 -0.00012207L0 150.84L0 167.81L167.81 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M201.75 -0.00012207L184.78 -0.00012207L0 184.78L0 201.75L201.75 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M133.87 -0.00012207L116.9 -0.00012207L0 116.9L0 133.87L133.87 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M235.69 -0.00012207L218.72 -0.00012207L0 218.72L0 235.69L235.69 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M269.63 -0.00012207L252.66 -0.00012207L0 252.66L0 269.63L269.63 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1067.25 -0.00012207L0 1067.25L0 1080H4.22L1084.22 -0.00012207L1067.25 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M303.57 -0.00012207L286.61 -0.00012207L0 286.61L0 303.57L303.57 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M32.05 -0.00012207L15.08 -0.00012207L0 15.0799L0 32.0499L32.05 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M65.99 -0.00012207L49.02 -0.00012207L0 49.0199L0 65.9899L65.99 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M99.93 -0.00012207L82.96 -0.00012207L0 82.9599L0 99.9299L99.93 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1491.52 -0.00012207L1474.54 -0.00012207L394.539 1080H411.509L1491.52 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M575.1 -0.00012207L558.13 -0.00012207L0 558.13L0 575.1L575.1 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M507.22 -0.00012207L490.25 -0.00012207L0 490.25L0 507.22L507.22 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M337.52 -0.00012207L320.55 -0.00012207L0 320.55L0 337.52L337.52 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M642.99 -0.00012207L626.02 -0.00012207L0 626.02L0 642.99L642.99 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M609.04 -0.00012207L592.08 -0.00012207L0 592.08L0 609.04L609.04 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M541.16 -0.00012207L524.19 -0.00012207L0 524.19L0 541.16L541.16 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M473.28 -0.00012207L456.31 -0.00012207L0 456.31L0 473.28L473.28 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M371.46 -0.00012207L354.49 -0.00012207L0 354.49L0 371.46L371.46 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M405.4 -0.00012207L388.43 -0.00012207L0 388.43L0 405.4L405.4 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M676.93 -0.00012207L659.96 -0.00012207L0 659.96L0 676.93L676.93 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 420.04V403.07L1243.07 1080H1260.04L1920 420.04Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 352.16V335.19L1175.19 1080H1192.16L1920 352.16Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 589.75V572.78L1412.78 1080H1429.75L1920 589.75Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 623.69V606.72L1446.72 1080H1463.69L1920 623.69Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 691.57V674.6L1514.6 1080H1531.57L1920 691.57Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 657.63V640.66L1480.66 1080H1497.63L1920 657.63Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 386.1V369.13L1209.13 1080H1226.1L1920 386.1Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 453.98V437.01L1277.01 1080H1293.98L1920 453.98Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 521.87V504.9L1344.9 1080H1361.87L1920 521.87Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 725.51V708.54L1548.54 1080H1565.51L1920 725.51Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 487.93V470.95L1310.95 1080H1327.92L1920 487.93Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 555.81V538.84L1378.84 1080H1395.81L1920 555.81Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 963.1V946.13L1786.13 1080H1803.1L1920 963.1Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 929.16V912.19L1752.19 1080H1769.16L1920 929.16Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 997.04V980.07L1820.07 1080H1837.04L1920 997.04Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 759.45V742.48L1582.48 1080H1599.45L1920 759.45Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 1064.92V1047.95L1887.95 1080H1904.92L1920 1064.92Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 1030.98V1014.01L1854.01 1080H1870.98L1920 1030.98Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 793.39V776.42L1616.42 1080H1633.39L1920 793.39Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 827.34V810.37L1650.37 1080H1667.34L1920 827.34Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 861.28V844.31L1684.31 1080H1701.28L1920 861.28Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 895.22V878.25L1718.25 1080H1735.22L1920 895.22Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 318.22V301.25L1141.25 1080H1158.22L1920 318.22Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1729.1 -0.00012207L1712.13 -0.00012207L632.129 1080H649.099L1729.1 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1763.04 -0.00012207L1746.07 -0.00012207L666.07 1080H683.04L1763.04 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1830.93 -0.00012207L1813.96 -0.00012207L733.961 1080H750.931L1830.93 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1796.98 -0.00012207L1780.01 -0.00012207L700.012 1080H716.992L1796.98 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1864.87 -0.00012207L1847.9 -0.00012207L767.898 1080H784.868L1864.87 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1695.16 -0.00012207L1678.19 -0.00012207L598.191 1080H615.161L1695.16 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1593.34 -0.00012207L1576.37 -0.00012207L496.371 1080H513.341L1593.34 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1559.4 -0.00012207L1542.43 -0.00012207L462.43 1080H479.4L1559.4 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1661.22 -0.00012207L1644.25 -0.00012207L564.25 1080H581.22L1661.22 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1627.28 -0.00012207L1610.31 -0.00012207L530.309 1080H547.279L1627.28 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 46.6898V29.7198L869.719 1080H886.689L1920 46.6898Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 216.4V199.43L1039.42 1080H1056.4L1920 216.4Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 182.46V165.48L1005.48 1080H1022.46L1920 182.46Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 250.34V233.37L1073.37 1080H1090.34L1920 250.34Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 148.51V131.54L971.539 1080H988.509L1920 148.51Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1898.81 -0.00012207L1881.84 -0.00012207L801.84 1080H818.81L1898.81 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 284.28V267.31L1107.31 1080H1124.28L1920 284.28Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1525.46 -0.00012207L1508.48 -0.00012207L428.488 1080H445.458L1525.46 -0.00012207Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 12.7499V-0.00012207L1915.78 -0.00012207L835.781 1080H852.751L1920 12.7499Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 80.6299V63.6599L903.66 1080H920.63L1920 80.6299Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n <path\n d=\"M1920 114.57V97.5999L937.602 1080H954.572L1920 114.57Z\"\n fill=\"black\"\n fillOpacity=\"0.1\"\n />\n </g>\n <defs>\n <filter\n id=\"filter0_d_2183_34073\"\n x=\"-60\"\n y=\"-64\"\n width=\"2048\"\n height=\"1208\"\n filterUnits=\"userSpaceOnUse\"\n colorInterpolationFilters=\"sRGB\"\n >\n <feFlood floodOpacity=\"0\" result=\"BackgroundImageFix\" />\n <feColorMatrix\n in=\"SourceAlpha\"\n type=\"matrix\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n result=\"hardAlpha\"\n />\n <feOffset dx=\"4\" />\n <feGaussianBlur stdDeviation=\"32\" />\n <feComposite in2=\"hardAlpha\" operator=\"out\" />\n <feColorMatrix\n type=\"matrix\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.28 0\"\n />\n <feBlend\n mode=\"normal\"\n in2=\"BackgroundImageFix\"\n result=\"effect1_dropShadow_2183_34073\"\n />\n <feBlend\n mode=\"normal\"\n in=\"SourceGraphic\"\n in2=\"effect1_dropShadow_2183_34073\"\n result=\"shape\"\n />\n </filter>\n </defs>\n </svg>\n </div>\n );\n};\n","import React from \"react\";\nimport { PropTypes } from \"prop-types\";\nimport Box from \"@mui/material/Box\";\nimport Card from \"@mui/material/Card\";\nimport CardContent from \"@mui/material/CardContent\";\nimport { observer } from \"mobx-react-lite\";\nimport i18n from \"../../locales/i18n\";\nimport Container from \"../components/container\";\nimport LoginForm from \"../components/loginForm\";\nimport { FullscreenBackdrop } from \"../components/fullscreenBackdrop\";\n\nconst LoginPage = ({ redirectPath }) => {\n const toggleLocale = () => {\n i18n.setLocale(i18n.locale === \"pl\" ? \"en\" : \"pl\");\n };\n\n return (\n <Container\n headerProps={{\n position: \"static\",\n leadingText: \"AndonCloud Software\",\n userProps: {\n show: false,\n },\n menuProps: {\n items: [\n {\n label: i18n.translations.changeLanguageText,\n action: toggleLocale,\n },\n ],\n buttonColor: \"white\",\n },\n }}\n >\n <Box\n display=\"flex\"\n height=\"calc(100vh - 48px)\"\n alignItems=\"center\"\n justifyContent=\"center\"\n position=\"relative\"\n >\n <FullscreenBackdrop />\n <Card style={{ zIndex: 1, backgroundColor: \"inherit\" }}>\n <CardContent>\n <LoginForm\n title={i18n.translations.loginFormText}\n redirectPath={redirectPath}\n />\n </CardContent>\n </Card>\n </Box>\n </Container>\n );\n};\n\nLoginPage.propTypes = {\n redirectPath: PropTypes.string,\n};\n\nLoginPage.defaultProps = {\n redirectPath: \"/\",\n};\n\nexport default observer(LoginPage);\n","import React from \"react\";\nimport { useNavigate } from \"react-router-dom\";\n\nimport useLogin from \"../hooks/useLogin\";\nimport LoginPage from \"../pages/LoginPage\";\nimport { useAuthConfig } from \"../providers/authConfig\";\n\nconst LoginRedirect = () => {\n const { grantType, redirectPath } = useAuthConfig();\n const login = useLogin(\"read write\");\n const navigate = useNavigate();\n\n if (grantType === \"password\") {\n return <LoginPage redirectPath={redirectPath} />;\n }\n // push before redirect to prevent going back to login route\n navigate(\"/\");\n // oauth2 authorization code flow redirect\n login();\n\n return null;\n};\n\nexport default LoginRedirect;\n","import React from \"react\";\nimport { BrowserRouter, Route, Routes } from \"react-router-dom\";\n\nimport AuthRedirect from \"./authRedirect\";\nimport LoginRedirect from \"./loginRedirect\";\n\nconst Router = ({ children }) => {\n return (\n <BrowserRouter>\n <Routes>\n {children}\n <Route exact path=\"/login\" element={<LoginRedirect />} />\n <Route path=\"/oauth2/redirect\" element={<AuthRedirect />} />\n </Routes>\n </BrowserRouter>\n );\n};\n\nexport default Router;\n","import React from \"react\";\nimport { Box, Card, CardContent } from \"@mui/material\";\nimport i18n from \"../../locales/i18n\";\nimport { FullscreenBackdrop } from \"./fullscreenBackdrop\";\n\nexport const NetworkError = () => {\n return (\n <Box>\n <FullscreenBackdrop />\n <Card\n style={{\n backgroundColor: \"inherit\",\n background: \"linear-gradient(180deg, #393939 0%, #4A4A4A 100%)\",\n maxWidth: \"600px\",\n margin: \"200px auto\",\n }}\n >\n <CardContent>\n <Box\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n m=\"125px 80px\"\n >\n <h1\n style={{\n textAlign: \"center\",\n color: \"rgba(255, 255, 255, 0.6)\",\n fontFamily: \"Roboto\",\n }}\n >\n {i18n.translations.networkErrorHeader}\n </h1>\n </Box>\n </CardContent>\n </Card>\n </Box>\n );\n};\n","import React, { useEffect, useState } from \"react\";\nimport { Route } from \"react-router-dom\";\nimport { Toaster } from \"react-hot-toast\";\nimport { PropTypes } from \"prop-types\";\n\nimport CssBaseline from \"@mui/material/CssBaseline\";\nimport { ThemeProvider, createTheme } from \"@mui/material/styles\";\nimport { ModalProvider } from \"use-modal-hook\";\n\nimport { AuthConfigProvider } from \"../providers/authConfig\";\nimport sessionStore from \"../stores/sessionStore\";\nimport defaultTheme from \"../theme\";\nimport Router from \"./router\";\nimport { NetworkError } from \"./networkError\";\nimport { observer } from \"mobx-react-lite\";\n\nconst App = observer(({ children, baseUrl, authProps, muiTheme }) => {\n const [appReady, setAppReady] = useState(false);\n const {\n enabled: authEnabled,\n clientId,\n redirectUri,\n } = {\n enabled: true,\n redirectPath: \"/\",\n ...authProps,\n };\n\n sessionStore.setAuthConfig({\n baseUrl,\n clientId,\n redirectUri,\n });\n global.andoncloud = { baseUrl };\n\n useEffect(() => {\n const recoverSession = async () => {\n if (authEnabled) {\n await sessionStore.recover();\n }\n };\n if (authEnabled) {\n recoverSession().then(() => setAppReady(true));\n } else {\n setAppReady(true);\n }\n }, [authEnabled]);\n\n return (\n <ThemeProvider theme={createTheme(muiTheme)}>\n <CssBaseline />\n <Toaster />\n <AuthConfigProvider config={{ baseUrl, ...authProps }}>\n {sessionStore.networkError ? (\n <NetworkError />\n ) : (\n appReady && (\n <Router>\n <Route\n path=\"*\"\n element={<ModalProvider>{children}</ModalProvider>}\n />\n </Router>\n )\n )}\n </AuthConfigProvider>\n </ThemeProvider>\n );\n});\n\nApp.propTypes = {\n children: PropTypes.any.isRequired,\n baseUrl: PropTypes.string.isRequired,\n authProps: PropTypes.shape({\n enabled: PropTypes.bool,\n loginUrl: PropTypes.string,\n redirectUri: PropTypes.string,\n redirectPath: PropTypes.string,\n clientId: PropTypes.string.isRequired,\n grantType: PropTypes.string,\n }),\n muiTheme: PropTypes.any,\n};\n\nApp.defaultProps = {\n authProps: {},\n muiTheme: defaultTheme,\n};\n\nexport default App;\n","import toast from \"react-hot-toast\";\n\nimport App from \"./app/components/app\";\nimport Container from \"./app/components/container\";\nimport useLogin from \"./app/hooks/useLogin\";\nimport sessionStore from \"./app/stores/sessionStore\";\nimport languageStore from \"./locales/i18n\";\n\nconst getLoginStatus = () => sessionStore.getLoginStatus();\nconst logout = () => sessionStore.logout();\nconst setLocale = (locale) => languageStore.setLocale(locale);\n\nexport {\n App,\n Container,\n useLogin,\n logout,\n getLoginStatus,\n setLocale,\n toast as notify,\n};\n"],"names":["useState","useEffect","useMemo","keyframes","styled","createElement","forwardRef","memo","Fragment","setup","css","AuthConfigContext","createContext","AuthConfigProvider","children","config","React","useAuthConfig","useContext","defaultLocale","LanguageStore","locale","translations","commonPl","makeObservable","observable","setLocale","action","commonEn","acFetch","url","options","headers","sessionStore","requestHeaders","Object","assign","fetch","response","ok","status","removeSession","andoncloudFetch","callback","setNetworkError","AndoncloudFetch","setCallback","removeCallback","this","CookiesManager","recognizeRootDomain","rootDomain","host","window","location","hostname","port","length","subdomain","parts","split","join","get","key","Cookies","domain","set","value","remove","UserStore","currentUser","setCurrentUser","removeCurrentUser","deep","getCurrentUserJS","computed","toJS","Session","user","accessToken","tokenType","expiresIn","SessionAPI","setAuthConfig","baseUrl","clientId","redirectUri","authorize","credentials","formData","FormData","scope","code","username","password","append","fetchParams","method","body","session","then","getUserData","data","access_token","token_type","expires_in","json","toast","error","error_description","i18n","unexpectedErrorMessage","catch","e","message","authData","Authorization","id","companyId","company_id","roleId","role_id","email","name","signOut","SessionStore","loading","api","networkError","isLoggedIn","Boolean","getLoginStatus","authResponse","storeSession","recover","restoreSession","logout","session_cookie","authHeaders","JSON","stringify","cookie","parse","userStore","createTheme","adaptV4Theme","props","MuiButton","variant","disableElevation","MuiLoadingButton","overrides","MuiBackdrop","root","marginTop","fontWeight","borderRadius","MuiCardHeader","textAlign","color","background","subheader","MuiPaper","rounded","MuiCard","boxShadow","MuiCardContent","maxWidth","minHeight","minWidth","paddingBottom","MuiDialogTitle","MuiDialogContent","padding","MuiDialogContentText","MuiFormControl","alignItems","MuiOutlinedInput","borderColor","notchedOutline","input","typography","button","textTransform","palette","primary","light","main","dark","contrastText","secondary","useQueryParams","URLSearchParams","useLocation","search","AuthRedirect","queryParams","nextPath","Navigate","LoginForm","redirectPath","onSuccess","onFailure","onCancel","title","dataTestID","setUsername","setPassword","navigate","useNavigate","onScan","attachTo","document","suffixKeyCodes","reactToPaste","sCode","_","console","log","detachFrom","handleCancel","event","handleSubmit","preventDefault","handleChangeForUsername","target","handleChangeForPassword","Box","Typography","gridGap","FormControl","TextField","loginCardUsernameHint","loginCardPasswordHint","LoadingButton","loginCardSubmitButton","Button","loginCardCancelButton","filter","propTypes","PropTypes","string","func","bool","defaultProps","observer","QRCodeSVG","BarcodeSVG","RFIDCardSVG","AcLogoSVG","LoginModal","open","subtitle","getTitle","undefined","loginCardSubtitle","isOpen","setOpen","handleSuccess","useLogin","loginProps","loginUrl","grantType","defaultRedirectPath","useModal","showModal","redirectUrl","encodeURIComponent","buildLoginUrl","Date","getTime","makeStyles","styles","nav","marginRight","backgroundColor","border","userInfo","paddingLeft","loginButton","logoutButton","paddingRight","avatar","menu","menuStyles","popover","menuDropdownStyles","Header","position","showAcLogo","leadingText","navProps","userProps","menuProps","items","navItems","show","showCompanyLogo","showUserSection","dropdownStyles","menuItems","menuButtonColor","buttonColor","currentTime","setCurrentTime","menuAnchorEl","setMenuAnchorEl","classes","useStyles","interval","setInterval","clearInterval","handleMenuOpen","currentTarget","handleMenuClose","handleItemClick","item","renderUserCompanyLogo","logoUrl","companyLogoUrl","company","logo_url","handleLogout","renderUserAvatar","renderNav","map","label","icon","renderUser","headerLogoutButton","headerLoginButton","renderMenu","vertical","horizontal","paper","flexGrow","toLocaleTimeString","isRequired","shape","any","Container","headerProps","FullscreenBackdrop","zIndex","top","bottom","right","left","width","height","overflow","maskType","LoginPage","toggleLocale","changeLanguageText","loginFormText","LoginRedirect","login","Router","BrowserRouter","Routes","Route","NetworkError","Card","margin","CardContent","fontFamily","networkErrorHeader","App","authProps","muiTheme","appReady","setAppReady","enabled","authEnabled","global","andoncloud","recoverSession","ThemeProvider","ModalProvider","defaultTheme","languageStore"],"mappings":"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"}
1
+ {"version":3,"file":"andoncloud-sdk.js","sources":["../node_modules/goober/dist/goober.esm.js","../node_modules/react-hot-toast/dist/react-hot-toast.esm.js","../src/app/providers/authConfig.js","../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/locales/i18n.js","../src/app/utils/fetch.js","../node_modules/js-cookie/dist/js.cookie.js","../src/app/utils/cookies-manager.js","../src/app/stores/userStore.js","../src/app/stores/sessionStore.js","../src/app/theme.js","../src/app/hooks/useQueryParams.js","../src/app/components/authRedirect.js","../node_modules/onscan.js/onscan.js","../src/app/components/loginForm.js","../src/app/components/loginModal.js","../src/app/hooks/useLogin.js","../src/app/components/header.styles.js","../src/app/components/header.js","../src/app/components/container.js","../src/app/components/fullscreenBackdrop.js","../src/app/pages/LoginPage.js","../src/app/components/loginRedirect.js","../src/app/components/router.js","../src/app/components/networkError.js","../src/app/components/app.js","../src/index.js"],"sourcesContent":["let e={data:\"\"},t=t=>\"object\"==typeof window?((t?t.querySelector(\"#_goober\"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement(\"style\")),{innerHTML:\" \",id:\"_goober\"})).firstChild:t||e,r=e=>{let r=t(e),l=r.data;return r.data=\"\",l},l=/(?:([\\u0080-\\uFFFF\\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\\s*)/g,a=/\\/\\*[^]*?\\*\\/|\\s\\s+|\\n/g,n=(e,t)=>{let r=\"\",l=\"\",a=\"\";for(let o in e){let s=e[o];\"@\"==o[0]?\"i\"==o[1]?r=o+\" \"+s+\";\":l+=\"f\"==o[1]?n(s,o):o+\"{\"+n(s,\"k\"==o[1]?\"\":t)+\"}\":\"object\"==typeof s?l+=n(s,t?t.replace(/([^,])+/g,e=>o.replace(/(^:.*)|([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+\" \"+t:t)):o):null!=s&&(o=/^--/.test(o)?o:o.replace(/[A-Z]/g,\"-$&\").toLowerCase(),a+=n.p?n.p(o,s):o+\":\"+s+\";\")}return r+(t&&a?t+\"{\"+a+\"}\":a)+l},o={},s=e=>{if(\"object\"==typeof e){let t=\"\";for(let r in e)t+=r+s(e[r]);return t}return e},c=(e,t,r,c,i)=>{let u=s(e),p=o[u]||(o[u]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return\"go\"+r})(u));if(!o[p]){let t=u!==e?e:(e=>{let t,r=[{}];for(;t=l.exec(e.replace(a,\"\"));)t[4]?r.shift():t[3]?r.unshift(r[0][t[3]]=r[0][t[3]]||{}):r[0][t[1]]=t[2];return r[0]})(e);o[p]=n(i?{[\"@keyframes \"+p]:t}:t,r?\"\":\".\"+p)}return((e,t,r)=>{-1==t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e)})(o[p],t,c),p},i=(e,t,r)=>e.reduce((e,l,a)=>{let o=t[a];if(o&&o.call){let e=o(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;o=t?\".\"+t:e&&\"object\"==typeof e?e.props?\"\":n(e,\"\"):!1===e?\"\":e}return e+l+(null==o?\"\":o)},\"\");function u(e){let r=this||{},l=e.call?e(r.p):e;return c(l.unshift?l.raw?i(l,[].slice.call(arguments,1),r.p):l.reduce((e,t)=>Object.assign(e,t&&t.call?t(r.p):t),{}):l,t(r.target),r.g,r.o,r.k)}let p,d,f,g=u.bind({g:1}),b=u.bind({k:1});function h(e,t,r,l){n.p=t,p=e,d=r,f=l}function m(e,t){let r=this||{};return function(){let l=arguments;function a(n,o){let s=Object.assign({},n),c=s.className||a.className;r.p=Object.assign({theme:d&&d()},s),r.o=/ *go\\d+/.test(c),s.className=u.apply(r,l)+(c?\" \"+c:\"\"),t&&(s.ref=o);let i=e;return e[0]&&(i=s.as||e,delete s.as),f&&i[0]&&f(s),p(i,s)}return t?t(a):a}}export{u as css,r as extractCss,g as glob,b as keyframes,h as setup,m as styled};\n","import { useState, useEffect, useMemo, createElement, memo, Fragment, forwardRef } from 'react';\nimport { styled, keyframes, setup, css } from 'goober';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _taggedTemplateLiteralLoose(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n\n strings.raw = raw;\n return strings;\n}\n\nvar isFunction = function isFunction(valOrFunction) {\n return typeof valOrFunction === 'function';\n};\n\nvar resolveValue = function resolveValue(valOrFunction, arg) {\n return isFunction(valOrFunction) ? valOrFunction(arg) : valOrFunction;\n};\n\nvar genId = /*#__PURE__*/function () {\n var count = 0;\n return function () {\n return (++count).toString();\n };\n}();\nvar createRectRef = function createRectRef(onRect) {\n return function (el) {\n if (el) {\n setTimeout(function () {\n var boundingRect = el.getBoundingClientRect();\n onRect(boundingRect);\n });\n }\n };\n};\nvar prefersReducedMotion = /*#__PURE__*/function () {\n // Cache result\n var shouldReduceMotion = undefined;\n return function () {\n if (shouldReduceMotion === undefined && typeof window !== 'undefined') {\n var mediaQuery = matchMedia('(prefers-reduced-motion: reduce)');\n shouldReduceMotion = !mediaQuery || mediaQuery.matches;\n }\n\n return shouldReduceMotion;\n };\n}();\n\nvar TOAST_LIMIT = 20;\nvar ActionType;\n\n(function (ActionType) {\n ActionType[ActionType[\"ADD_TOAST\"] = 0] = \"ADD_TOAST\";\n ActionType[ActionType[\"UPDATE_TOAST\"] = 1] = \"UPDATE_TOAST\";\n ActionType[ActionType[\"UPSERT_TOAST\"] = 2] = \"UPSERT_TOAST\";\n ActionType[ActionType[\"DISMISS_TOAST\"] = 3] = \"DISMISS_TOAST\";\n ActionType[ActionType[\"REMOVE_TOAST\"] = 4] = \"REMOVE_TOAST\";\n ActionType[ActionType[\"START_PAUSE\"] = 5] = \"START_PAUSE\";\n ActionType[ActionType[\"END_PAUSE\"] = 6] = \"END_PAUSE\";\n})(ActionType || (ActionType = {}));\n\nvar toastTimeouts = /*#__PURE__*/new Map();\n\nvar addToRemoveQueue = function addToRemoveQueue(toastId) {\n if (toastTimeouts.has(toastId)) {\n return;\n }\n\n var timeout = setTimeout(function () {\n toastTimeouts[\"delete\"](toastId);\n dispatch({\n type: ActionType.REMOVE_TOAST,\n toastId: toastId\n });\n }, 1000);\n toastTimeouts.set(toastId, timeout);\n};\n\nvar clearFromRemoveQueue = function clearFromRemoveQueue(toastId) {\n var timeout = toastTimeouts.get(toastId);\n\n if (timeout) {\n clearTimeout(timeout);\n }\n};\n\nvar reducer = function reducer(state, action) {\n switch (action.type) {\n case ActionType.ADD_TOAST:\n return _extends({}, state, {\n toasts: [action.toast].concat(state.toasts).slice(0, TOAST_LIMIT)\n });\n\n case ActionType.UPDATE_TOAST:\n // ! Side effects !\n if (action.toast.id) {\n clearFromRemoveQueue(action.toast.id);\n }\n\n return _extends({}, state, {\n toasts: state.toasts.map(function (t) {\n return t.id === action.toast.id ? _extends({}, t, action.toast) : t;\n })\n });\n\n case ActionType.UPSERT_TOAST:\n var toast = action.toast;\n return state.toasts.find(function (t) {\n return t.id === toast.id;\n }) ? reducer(state, {\n type: ActionType.UPDATE_TOAST,\n toast: toast\n }) : reducer(state, {\n type: ActionType.ADD_TOAST,\n toast: toast\n });\n\n case ActionType.DISMISS_TOAST:\n var toastId = action.toastId; // ! Side effects ! - This could be execrated into a dismissToast() action, but I'll keep it here for simplicity\n\n if (toastId) {\n addToRemoveQueue(toastId);\n } else {\n state.toasts.forEach(function (toast) {\n addToRemoveQueue(toast.id);\n });\n }\n\n return _extends({}, state, {\n toasts: state.toasts.map(function (t) {\n return t.id === toastId || toastId === undefined ? _extends({}, t, {\n visible: false\n }) : t;\n })\n });\n\n case ActionType.REMOVE_TOAST:\n if (action.toastId === undefined) {\n return _extends({}, state, {\n toasts: []\n });\n }\n\n return _extends({}, state, {\n toasts: state.toasts.filter(function (t) {\n return t.id !== action.toastId;\n })\n });\n\n case ActionType.START_PAUSE:\n return _extends({}, state, {\n pausedAt: action.time\n });\n\n case ActionType.END_PAUSE:\n var diff = action.time - (state.pausedAt || 0);\n return _extends({}, state, {\n pausedAt: undefined,\n toasts: state.toasts.map(function (t) {\n return _extends({}, t, {\n pauseDuration: t.pauseDuration + diff\n });\n })\n });\n }\n};\nvar listeners = [];\nvar memoryState = {\n toasts: [],\n pausedAt: undefined\n};\nvar dispatch = function dispatch(action) {\n memoryState = reducer(memoryState, action);\n listeners.forEach(function (listener) {\n listener(memoryState);\n });\n};\nvar defaultTimeouts = {\n blank: 4000,\n error: 4000,\n success: 2000,\n loading: Infinity,\n custom: 4000\n};\nvar useStore = function useStore(toastOptions) {\n if (toastOptions === void 0) {\n toastOptions = {};\n }\n\n var _useState = useState(memoryState),\n state = _useState[0],\n setState = _useState[1];\n\n useEffect(function () {\n listeners.push(setState);\n return function () {\n var index = listeners.indexOf(setState);\n\n if (index > -1) {\n listeners.splice(index, 1);\n }\n };\n }, [state]);\n var mergedToasts = state.toasts.map(function (t) {\n var _toastOptions$t$type, _toastOptions, _toastOptions$t$type2;\n\n return _extends({}, toastOptions, toastOptions[t.type], t, {\n duration: t.duration || ((_toastOptions$t$type = toastOptions[t.type]) == null ? void 0 : _toastOptions$t$type.duration) || ((_toastOptions = toastOptions) == null ? void 0 : _toastOptions.duration) || defaultTimeouts[t.type],\n style: _extends({}, toastOptions.style, (_toastOptions$t$type2 = toastOptions[t.type]) == null ? void 0 : _toastOptions$t$type2.style, t.style)\n });\n });\n return _extends({}, state, {\n toasts: mergedToasts\n });\n};\n\nvar createToast = function createToast(message, type, opts) {\n if (type === void 0) {\n type = 'blank';\n }\n\n return _extends({\n createdAt: Date.now(),\n visible: true,\n type: type,\n ariaProps: {\n role: 'status',\n 'aria-live': 'polite'\n },\n message: message,\n pauseDuration: 0\n }, opts, {\n id: (opts == null ? void 0 : opts.id) || genId()\n });\n};\n\nvar createHandler = function createHandler(type) {\n return function (message, options) {\n var toast = createToast(message, type, options);\n dispatch({\n type: ActionType.UPSERT_TOAST,\n toast: toast\n });\n return toast.id;\n };\n};\n\nvar toast = function toast(message, opts) {\n return createHandler('blank')(message, opts);\n};\n\ntoast.error = /*#__PURE__*/createHandler('error');\ntoast.success = /*#__PURE__*/createHandler('success');\ntoast.loading = /*#__PURE__*/createHandler('loading');\ntoast.custom = /*#__PURE__*/createHandler('custom');\n\ntoast.dismiss = function (toastId) {\n dispatch({\n type: ActionType.DISMISS_TOAST,\n toastId: toastId\n });\n};\n\ntoast.remove = function (toastId) {\n return dispatch({\n type: ActionType.REMOVE_TOAST,\n toastId: toastId\n });\n};\n\ntoast.promise = function (promise, msgs, opts) {\n var id = toast.loading(msgs.loading, _extends({}, opts, opts == null ? void 0 : opts.loading));\n promise.then(function (p) {\n toast.success(resolveValue(msgs.success, p), _extends({\n id: id\n }, opts, opts == null ? void 0 : opts.success));\n return p;\n })[\"catch\"](function (e) {\n toast.error(resolveValue(msgs.error, e), _extends({\n id: id\n }, opts, opts == null ? void 0 : opts.error));\n });\n return promise;\n};\n\nvar useToaster = function useToaster(toastOptions) {\n var _useStore = useStore(toastOptions),\n toasts = _useStore.toasts,\n pausedAt = _useStore.pausedAt;\n\n useEffect(function () {\n if (pausedAt) {\n return;\n }\n\n var now = Date.now();\n var timeouts = toasts.map(function (t) {\n if (t.duration === Infinity) {\n return;\n }\n\n var durationLeft = (t.duration || 0) + t.pauseDuration - (now - t.createdAt);\n\n if (durationLeft < 0) {\n if (t.visible) {\n toast.dismiss(t.id);\n }\n\n return;\n }\n\n return setTimeout(function () {\n return toast.dismiss(t.id);\n }, durationLeft);\n });\n return function () {\n timeouts.forEach(function (timeout) {\n return timeout && clearTimeout(timeout);\n });\n };\n }, [toasts, pausedAt]);\n var handlers = useMemo(function () {\n return {\n startPause: function startPause() {\n dispatch({\n type: ActionType.START_PAUSE,\n time: Date.now()\n });\n },\n endPause: function endPause() {\n if (pausedAt) {\n dispatch({\n type: ActionType.END_PAUSE,\n time: Date.now()\n });\n }\n },\n updateHeight: function updateHeight(toastId, height) {\n return dispatch({\n type: ActionType.UPDATE_TOAST,\n toast: {\n id: toastId,\n height: height\n }\n });\n },\n calculateOffset: function calculateOffset(toast, opts) {\n var _relevantToasts$filte;\n\n var _ref = opts || {},\n _ref$reverseOrder = _ref.reverseOrder,\n reverseOrder = _ref$reverseOrder === void 0 ? false : _ref$reverseOrder,\n _ref$gutter = _ref.gutter,\n gutter = _ref$gutter === void 0 ? 8 : _ref$gutter,\n defaultPosition = _ref.defaultPosition;\n\n var relevantToasts = toasts.filter(function (t) {\n return (t.position || defaultPosition) === (toast.position || defaultPosition) && t.height;\n });\n var toastIndex = relevantToasts.findIndex(function (t) {\n return t.id === toast.id;\n });\n var toastsBefore = relevantToasts.filter(function (toast, i) {\n return i < toastIndex && toast.visible;\n }).length;\n\n var offset = (_relevantToasts$filte = relevantToasts.filter(function (t) {\n return t.visible;\n })).slice.apply(_relevantToasts$filte, reverseOrder ? [toastsBefore + 1] : [0, toastsBefore]).reduce(function (acc, t) {\n return acc + (t.height || 0) + gutter;\n }, 0);\n\n return offset;\n }\n };\n }, [toasts, pausedAt]);\n return {\n toasts: toasts,\n handlers: handlers\n };\n};\n\nfunction _templateObject4() {\n var data = _taggedTemplateLiteralLoose([\"\\n width: 20px;\\n opacity: 0;\\n height: 20px;\\n border-radius: 10px;\\n background: \", \";\\n position: relative;\\n transform: rotate(45deg);\\n\\n animation: \", \" 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)\\n forwards;\\n animation-delay: 100ms;\\n\\n &:after,\\n &:before {\\n content: '';\\n animation: \", \" 0.15s ease-out forwards;\\n animation-delay: 150ms;\\n position: absolute;\\n border-radius: 3px;\\n opacity: 0;\\n background: \", \";\\n bottom: 9px;\\n left: 4px;\\n height: 2px;\\n width: 12px;\\n }\\n\\n &:before {\\n animation: \", \" 0.15s ease-out forwards;\\n animation-delay: 180ms;\\n transform: rotate(90deg);\\n }\\n\"]);\n\n _templateObject4 = function _templateObject4() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject3() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0) rotate(90deg);\\n\\topacity: 0;\\n}\\nto {\\n transform: scale(1) rotate(90deg);\\n\\topacity: 1;\\n}\"]);\n\n _templateObject3 = function _templateObject3() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject2() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0);\\n opacity: 0;\\n}\\nto {\\n transform: scale(1);\\n opacity: 1;\\n}\"]);\n\n _templateObject2 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0) rotate(45deg);\\n\\topacity: 0;\\n}\\nto {\\n transform: scale(1) rotate(45deg);\\n opacity: 1;\\n}\"]);\n\n _templateObject = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar circleAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject());\nvar firstLineAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject2());\nvar secondLineAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject3());\nvar ErrorIcon = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject4(), function (p) {\n return p.primary || '#ff4b4b';\n}, circleAnimation, firstLineAnimation, function (p) {\n return p.secondary || '#fff';\n}, secondLineAnimation);\n\nfunction _templateObject2$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n width: 12px;\\n height: 12px;\\n box-sizing: border-box;\\n border: 2px solid;\\n border-radius: 100%;\\n border-color: \", \";\\n border-right-color: \", \";\\n animation: \", \" 1s linear infinite;\\n\"]);\n\n _templateObject2$1 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n from {\\n transform: rotate(0deg);\\n }\\n to {\\n transform: rotate(360deg);\\n }\\n\"]);\n\n _templateObject$1 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar rotate = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject$1());\nvar LoaderIcon = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject2$1(), function (p) {\n return p.secondary || '#e0e0e0';\n}, function (p) {\n return p.primary || '#616161';\n}, rotate);\n\nfunction _templateObject3$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n width: 20px;\\n opacity: 0;\\n height: 20px;\\n border-radius: 10px;\\n background: \", \";\\n position: relative;\\n transform: rotate(45deg);\\n\\n animation: \", \" 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)\\n forwards;\\n animation-delay: 100ms;\\n &:after {\\n content: '';\\n box-sizing: border-box;\\n animation: \", \" 0.2s ease-out forwards;\\n opacity: 0;\\n animation-delay: 200ms;\\n position: absolute;\\n border-right: 2px solid;\\n border-bottom: 2px solid;\\n border-color: \", \";\\n bottom: 6px;\\n left: 6px;\\n height: 10px;\\n width: 6px;\\n }\\n\"]);\n\n _templateObject3$1 = function _templateObject3() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject2$2() {\n var data = _taggedTemplateLiteralLoose([\"\\n0% {\\n\\theight: 0;\\n\\twidth: 0;\\n\\topacity: 0;\\n}\\n40% {\\n height: 0;\\n\\twidth: 6px;\\n\\topacity: 1;\\n}\\n100% {\\n opacity: 1;\\n height: 10px;\\n}\"]);\n\n _templateObject2$2 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$2() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0) rotate(45deg);\\n\\topacity: 0;\\n}\\nto {\\n transform: scale(1) rotate(45deg);\\n\\topacity: 1;\\n}\"]);\n\n _templateObject$2 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar circleAnimation$1 = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject$2());\nvar checkmarkAnimation = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject2$2());\nvar CheckmarkIcon = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject3$1(), function (p) {\n return p.primary || '#61d345';\n}, circleAnimation$1, checkmarkAnimation, function (p) {\n return p.secondary || '#fff';\n});\n\nfunction _templateObject4$1() {\n var data = _taggedTemplateLiteralLoose([\"\\n position: relative;\\n transform: scale(0.6);\\n opacity: 0.4;\\n min-width: 20px;\\n animation: \", \" 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275)\\n forwards;\\n\"]);\n\n _templateObject4$1 = function _templateObject4() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject3$2() {\n var data = _taggedTemplateLiteralLoose([\"\\nfrom {\\n transform: scale(0.6);\\n opacity: 0.4;\\n}\\nto {\\n transform: scale(1);\\n opacity: 1;\\n}\"]);\n\n _templateObject3$2 = function _templateObject3() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject2$3() {\n var data = _taggedTemplateLiteralLoose([\"\\n position: relative;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n min-width: 20px;\\n min-height: 20px;\\n\"]);\n\n _templateObject2$3 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$3() {\n var data = _taggedTemplateLiteralLoose([\"\\n position: absolute;\\n\"]);\n\n _templateObject$3 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nvar StatusWrapper = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject$3());\nvar IndicatorWrapper = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject2$3());\nvar enter = /*#__PURE__*/keyframes( /*#__PURE__*/_templateObject3$2());\nvar AnimatedIconWrapper = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject4$1(), enter);\nvar ToastIcon = function ToastIcon(_ref) {\n var toast = _ref.toast;\n var icon = toast.icon,\n type = toast.type,\n iconTheme = toast.iconTheme;\n\n if (icon !== undefined) {\n if (typeof icon === 'string') {\n return createElement(AnimatedIconWrapper, null, icon);\n } else {\n return icon;\n }\n }\n\n if (type === 'blank') {\n return null;\n }\n\n return createElement(IndicatorWrapper, null, createElement(LoaderIcon, Object.assign({}, iconTheme)), type !== 'loading' && createElement(StatusWrapper, null, type === 'error' ? createElement(ErrorIcon, Object.assign({}, iconTheme)) : createElement(CheckmarkIcon, Object.assign({}, iconTheme))));\n};\n\nfunction _templateObject2$4() {\n var data = _taggedTemplateLiteralLoose([\"\\n display: flex;\\n justify-content: center;\\n margin: 4px 10px;\\n color: inherit;\\n flex: 1 1 auto;\\n white-space: pre-line;\\n\"]);\n\n _templateObject2$4 = function _templateObject2() {\n return data;\n };\n\n return data;\n}\n\nfunction _templateObject$4() {\n var data = _taggedTemplateLiteralLoose([\"\\n display: flex;\\n align-items: center;\\n background: #fff;\\n color: #363636;\\n line-height: 1.3;\\n will-change: transform;\\n box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.05);\\n max-width: 350px;\\n pointer-events: auto;\\n padding: 8px 10px;\\n border-radius: 8px;\\n\"]);\n\n _templateObject$4 = function _templateObject() {\n return data;\n };\n\n return data;\n}\n\nvar enterAnimation = function enterAnimation(factor) {\n return \"\\n0% {transform: translate3d(0,\" + factor * -200 + \"%,0) scale(.6); opacity:.5;}\\n100% {transform: translate3d(0,0,0) scale(1); opacity:1;}\\n\";\n};\n\nvar exitAnimation = function exitAnimation(factor) {\n return \"\\n0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;}\\n100% {transform: translate3d(0,\" + factor * -150 + \"%,-1px) scale(.6); opacity:0;}\\n\";\n};\n\nvar fadeInAnimation = \"0%{opacity:0;} 100%{opacity:1;}\";\nvar fadeOutAnimation = \"0%{opacity:1;} 100%{opacity:0;}\";\nvar ToastBarBase = /*#__PURE__*/styled('div', forwardRef)( /*#__PURE__*/_templateObject$4());\nvar Message = /*#__PURE__*/styled('div')( /*#__PURE__*/_templateObject2$4());\n\nvar getAnimationStyle = function getAnimationStyle(position, visible) {\n var top = position.includes('top');\n var factor = top ? 1 : -1;\n\n var _ref = prefersReducedMotion() ? [fadeInAnimation, fadeOutAnimation] : [enterAnimation(factor), exitAnimation(factor)],\n enter = _ref[0],\n exit = _ref[1];\n\n return {\n animation: visible ? keyframes(enter) + \" 0.35s cubic-bezier(.21,1.02,.73,1) forwards\" : keyframes(exit) + \" 0.4s forwards cubic-bezier(.06,.71,.55,1)\"\n };\n};\n\nvar ToastBar = /*#__PURE__*/memo(function (_ref2) {\n var toast = _ref2.toast,\n position = _ref2.position,\n style = _ref2.style,\n children = _ref2.children;\n var animationStyle = toast != null && toast.height ? getAnimationStyle(toast.position || position || 'top-center', toast.visible) : {\n opacity: 0\n };\n var icon = createElement(ToastIcon, {\n toast: toast\n });\n var message = createElement(Message, Object.assign({}, toast.ariaProps), resolveValue(toast.message, toast));\n return createElement(ToastBarBase, {\n className: toast.className,\n style: _extends({}, animationStyle, style, toast.style)\n }, typeof children === 'function' ? children({\n icon: icon,\n message: message\n }) : createElement(Fragment, null, icon, message));\n});\n\nfunction _templateObject$5() {\n var data = _taggedTemplateLiteralLoose([\"\\n z-index: 9999;\\n > * {\\n pointer-events: auto;\\n }\\n\"]);\n\n _templateObject$5 = function _templateObject() {\n return data;\n };\n\n return data;\n}\nsetup(createElement);\n\nvar getPositionStyle = function getPositionStyle(position, offset) {\n var top = position.includes('top');\n var verticalStyle = top ? {\n top: 0\n } : {\n bottom: 0\n };\n var horizontalStyle = position.includes('center') ? {\n justifyContent: 'center'\n } : position.includes('right') ? {\n justifyContent: 'flex-end'\n } : {};\n return _extends({\n left: 0,\n right: 0,\n display: 'flex',\n position: 'absolute',\n transition: prefersReducedMotion() ? undefined : \"all 230ms cubic-bezier(.21,1.02,.73,1)\",\n transform: \"translateY(\" + offset * (top ? 1 : -1) + \"px)\"\n }, verticalStyle, horizontalStyle);\n};\n\nvar activeClass = /*#__PURE__*/css( /*#__PURE__*/_templateObject$5());\nvar DEFAULT_OFFSET = 16;\nvar Toaster = function Toaster(_ref) {\n var reverseOrder = _ref.reverseOrder,\n _ref$position = _ref.position,\n position = _ref$position === void 0 ? 'top-center' : _ref$position,\n toastOptions = _ref.toastOptions,\n gutter = _ref.gutter,\n children = _ref.children,\n containerStyle = _ref.containerStyle,\n containerClassName = _ref.containerClassName;\n\n var _useToaster = useToaster(toastOptions),\n toasts = _useToaster.toasts,\n handlers = _useToaster.handlers;\n\n return createElement(\"div\", {\n style: _extends({\n position: 'fixed',\n zIndex: 9999,\n top: DEFAULT_OFFSET,\n left: DEFAULT_OFFSET,\n right: DEFAULT_OFFSET,\n bottom: DEFAULT_OFFSET,\n pointerEvents: 'none'\n }, containerStyle),\n className: containerClassName,\n onMouseEnter: handlers.startPause,\n onMouseLeave: handlers.endPause\n }, toasts.map(function (t) {\n var toastPosition = t.position || position;\n var offset = handlers.calculateOffset(t, {\n reverseOrder: reverseOrder,\n gutter: gutter,\n defaultPosition: position\n });\n var positionStyle = getPositionStyle(toastPosition, offset);\n var ref = t.height ? undefined : createRectRef(function (rect) {\n handlers.updateHeight(t.id, rect.height);\n });\n return createElement(\"div\", {\n ref: ref,\n className: t.visible ? activeClass : '',\n key: t.id,\n style: positionStyle\n }, t.type === 'custom' ? resolveValue(t.message, t) : children ? children(t) : createElement(ToastBar, {\n toast: t,\n position: toastPosition\n }));\n }));\n};\n\nexport default toast;\nexport { CheckmarkIcon, ErrorIcon, LoaderIcon, ToastBar, ToastIcon, Toaster, resolveValue, toast, useToaster, useStore as useToasterStore };\n//# sourceMappingURL=react-hot-toast.esm.js.map\n","import React, { createContext, useContext } from 'react';\n\nconst AuthConfigContext = createContext();\n\nexport const AuthConfigProvider = ({ children, config }) => {\n return (\n <AuthConfigContext.Provider value={config}>\n {children}\n </AuthConfigContext.Provider>\n );\n};\n\nexport const useAuthConfig = () => {\n return useContext(AuthConfigContext);\n};\n","// A type of promise-like that resolves synchronously and supports only one observer\nexport const _Pact = /*#__PURE__*/(function() {\n\tfunction _Pact() {}\n\t_Pact.prototype.then = function(onFulfilled, onRejected) {\n\t\tconst result = new _Pact();\n\t\tconst state = this.s;\n\t\tif (state) {\n\t\t\tconst callback = state & 1 ? onFulfilled : onRejected;\n\t\t\tif (callback) {\n\t\t\t\ttry {\n\t\t\t\t\t_settle(result, 1, callback(this.v));\n\t\t\t\t} catch (e) {\n\t\t\t\t\t_settle(result, 2, e);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} else {\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}\n\t\tthis.o = function(_this) {\n\t\t\ttry {\n\t\t\t\tconst value = _this.v;\n\t\t\t\tif (_this.s & 1) {\n\t\t\t\t\t_settle(result, 1, onFulfilled ? onFulfilled(value) : value);\n\t\t\t\t} else if (onRejected) {\n\t\t\t\t\t_settle(result, 1, onRejected(value));\n\t\t\t\t} else {\n\t\t\t\t\t_settle(result, 2, value);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(result, 2, e);\n\t\t\t}\n\t\t};\n\t\treturn result;\n\t}\n\treturn _Pact;\n})();\n\n// Settles a pact synchronously\nexport function _settle(pact, state, value) {\n\tif (!pact.s) {\n\t\tif (value instanceof _Pact) {\n\t\t\tif (value.s) {\n\t\t\t\tif (state & 1) {\n\t\t\t\t\tstate = value.s;\n\t\t\t\t}\n\t\t\t\tvalue = value.v;\n\t\t\t} else {\n\t\t\t\tvalue.o = _settle.bind(null, pact, state);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value && value.then) {\n\t\t\tvalue.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));\n\t\t\treturn;\n\t\t}\n\t\tpact.s = state;\n\t\tpact.v = value;\n\t\tconst observer = pact.o;\n\t\tif (observer) {\n\t\t\tobserver(pact);\n\t\t}\n\t}\n}\n\nexport function _isSettledPact(thenable) {\n\treturn thenable instanceof _Pact && thenable.s & 1;\n}\n\n// Converts argument to a function that always returns a Promise\nexport function _async(f) {\n\treturn function() {\n\t\tfor (var args = [], i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\t\ttry {\n\t\t\treturn Promise.resolve(f.apply(this, args));\n\t\t} catch(e) {\n\t\t\treturn Promise.reject(e);\n\t\t}\n\t}\n}\n\n// Awaits on a value that may or may not be a Promise (equivalent to the await keyword in ES2015, with continuations passed explicitly)\nexport function _await(value, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(value) : value;\n\t}\n\tif (!value || !value.then) {\n\t\tvalue = Promise.resolve(value);\n\t}\n\treturn then ? value.then(then) : value;\n}\n\n// Awaits on a value that may or may not be a Promise, then ignores it\nexport function _awaitIgnored(value, direct) {\n\tif (!direct) {\n\t\treturn value && value.then ? value.then(_empty) : Promise.resolve();\n\t}\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continue(value, then) {\n\treturn value && value.then ? value.then(then) : then(value);\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continueIgnored(value) {\n\tif (value && value.then) {\n\t\treturn value.then(_empty);\n\t}\n}\n\n// Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)\nexport function _forTo(array, body, check) {\n\tvar i = -1, pact, reject;\n\tfunction _cycle(result) {\n\t\ttry {\n\t\t\twhile (++i < array.length && (!check || !check())) {\n\t\t\t\tresult = body(i);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pact) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t} else {\n\t\t\t\tpact = result;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t}\n\t}\n\t_cycle();\n\treturn pact;\n}\n\n// Asynchronously iterate through an object's properties (including properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forIn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tkeys.push(key);\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\n// Asynchronously iterate through an object's own properties (excluding properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forOwn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tif (Object.prototype.hasOwnProperty.call(target, key)) {\n\t\t\tkeys.push(key);\n\t\t}\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\nexport const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\n// Asynchronously iterate through an object's values\n// Uses for...of if the runtime supports it, otherwise iterates until length on a copy\nexport function _forOf(target, body, check) {\n\tif (typeof target[_iteratorSymbol] === \"function\") {\n\t\tvar iterator = target[_iteratorSymbol](), step, pact, reject;\n\t\tfunction _cycle(result) {\n\t\t\ttry {\n\t\t\t\twhile (!(step = iterator.next()).done && (!check || !check())) {\n\t\t\t\t\tresult = body(step.value);\n\t\t\t\t\tif (result && result.then) {\n\t\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (pact) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t} else {\n\t\t\t\t\tpact = result;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t\t}\n\t\t}\n\t\t_cycle();\n\t\tif (iterator.return) {\n\t\t\tvar _fixup = function(value) {\n\t\t\t\ttry {\n\t\t\t\t\tif (!step.done) {\n\t\t\t\t\t\titerator.return();\n\t\t\t\t\t}\n\t\t\t\t} catch(e) {\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tif (pact && pact.then) {\n\t\t\t\treturn pact.then(_fixup, function(e) {\n\t\t\t\t\tthrow _fixup(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\t_fixup();\n\t\t}\n\t\treturn pact;\n\t}\n\t// No support for Symbol.iterator\n\tif (!(\"length\" in target)) {\n\t\tthrow new TypeError(\"Object is not iterable\");\n\t}\n\t// Handle live collections properly\n\tvar values = [];\n\tfor (var i = 0; i < target.length; i++) {\n\t\tvalues.push(target[i]);\n\t}\n\treturn _forTo(values, function(i) { return body(values[i]); }, check);\n}\n\nexport const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously iterate on a value using it's async iterator if present, or its synchronous iterator if missing\nexport function _forAwaitOf(target, body, check) {\n\tif (typeof target[_asyncIteratorSymbol] === \"function\") {\n\t\tvar pact = new _Pact();\n\t\tvar iterator = target[_asyncIteratorSymbol]();\n\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\treturn pact;\n\t\tfunction _resumeAfterBody(result) {\n\t\t\tif (check && check()) {\n\t\t\t\treturn _settle(pact, 1, iterator.return ? iterator.return().then(function() { return result; }) : result);\n\t\t\t}\n\t\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\t}\n\t\tfunction _resumeAfterNext(step) {\n\t\t\tif (step.done) {\n\t\t\t\t_settle(pact, 1);\n\t\t\t} else {\n\t\t\t\tPromise.resolve(body(step.value)).then(_resumeAfterBody).then(void 0, _reject);\n\t\t\t}\n\t\t}\n\t\tfunction _reject(error) {\n\t\t\t_settle(pact, 2, iterator.return ? iterator.return().then(function() { return error; }) : error);\n\t\t}\n\t}\n\treturn Promise.resolve(_forOf(target, function(value) { return Promise.resolve(value).then(body); }, check));\n}\n\n// Asynchronously implement a generic for loop\nexport function _for(test, update, body) {\n\tvar stage;\n\tfor (;;) {\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t\tif (shouldContinue.then) {\n\t\t\tstage = 0;\n\t\t\tbreak;\n\t\t}\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.s;\n\t\t\t} else {\n\t\t\t\tstage = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (update) {\n\t\t\tvar updateValue = update();\n\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\tstage = 2;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tvar pact = new _Pact();\n\tvar reject = _settle.bind(null, pact, 2);\n\t(stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tdo {\n\t\t\tif (update) {\n\t\t\t\tupdateValue = update();\n\t\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\t\tupdateValue.then(_resumeAfterUpdate).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tshouldContinue = test();\n\t\t\tif (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t}\n\t\t} while (!result || !result.then);\n\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterBody(result);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n\tfunction _resumeAfterUpdate() {\n\t\tif (shouldContinue = test()) {\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterTest(shouldContinue);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a do ... while loop\nexport function _do(body, test) {\n\tvar awaitBody;\n\tdo {\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t} else {\n\t\t\t\tawaitBody = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t} while (!shouldContinue.then);\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : shouldContinue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tfor (;;) {\n\t\t\tshouldContinue = test();\n\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t}\n\t\t\tif (!shouldContinue) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\tresult = result.v;\n\t\t\t\t} else {\n\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tdo {\n\t\t\t\tresult = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tshouldContinue = test();\n\t\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t\t}\n\t\t\t\tif (!shouldContinue) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} while (!shouldContinue.then);\n\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a switch statement\nexport function _switch(discriminant, cases) {\n\tvar dispatchIndex = -1;\n\tvar awaitBody;\n\touter: {\n\t\tfor (var i = 0; i < cases.length; i++) {\n\t\t\tvar test = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvar testValue = test();\n\t\t\t\tif (testValue && testValue.then) {\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tif (testValue === discriminant) {\n\t\t\t\t\tdispatchIndex = i;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Found the default case, set it as the pending dispatch case\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tif (dispatchIndex !== -1) {\n\t\t\tdo {\n\t\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\t\twhile (!body) {\n\t\t\t\t\tdispatchIndex++;\n\t\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t\t}\n\t\t\t\tvar result = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tawaitBody = true;\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\t\tdispatchIndex++;\n\t\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t\treturn result;\n\t\t}\n\t}\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : testValue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterTest(value) {\n\t\tfor (;;) {\n\t\t\tif (value === discriminant) {\n\t\t\t\tdispatchIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (++i === cases.length) {\n\t\t\t\tif (dispatchIndex !== -1) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttest = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvalue = test();\n\t\t\t\tif (value && value.then) {\n\t\t\t\t\tvalue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tdo {\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tvar result = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tdispatchIndex++;\n\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterBody(result) {\n\t\tfor (;;) {\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tif (!fallthroughCheck || fallthroughCheck()) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdispatchIndex++;\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _call(body, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(body()) : body();\n\t}\n\ttry {\n\t\tvar result = Promise.resolve(body());\n\t\treturn then ? result.then(then) : result;\n\t} catch (e) {\n\t\treturn Promise.reject(e);\n\t}\n}\n\n// Asynchronously call a function and swallow the result\nexport function _callIgnored(body, direct) {\n\treturn _call(body, _empty, direct);\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _invoke(body, then) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(then);\n\t}\n\treturn then(result);\n}\n\n// Asynchronously call a function and swallow the result\nexport function _invokeIgnored(body) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(_empty);\n\t}\n}\n\n// Asynchronously call a function and send errors to recovery continuation\nexport function _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Asynchronously await a promise and pass the result to a finally continuation\nexport function _finallyRethrows(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer(true, e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer.bind(null, false), finalizer.bind(null, true));\n\t}\n\treturn finalizer(false, result);\n}\n\n// Asynchronously await a promise and invoke a finally continuation that always overrides the result\nexport function _finally(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer();\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer, finalizer);\n\t}\n\treturn finalizer();\n}\n\n// Rethrow or return a value from a finally continuation\nexport function _rethrow(thrown, value) {\n\tif (thrown)\n\t\tthrow value;\n\treturn value;\n}\n\n// Empty function to implement break and other control flow that ignores asynchronous results\nexport function _empty() {\n}\n\n// Sentinel value for early returns in generators \nexport const _earlyReturn = /*#__PURE__*/ {};\n\n// Asynchronously call a function and send errors to recovery continuation, skipping early returns\nexport function _catchInGenerator(body, recover) {\n\treturn _catch(body, function(e) {\n\t\tif (e === _earlyReturn) {\n\t\t\tthrow e;\n\t\t}\n\t\treturn recover(e);\n\t});\n}\n\n// Asynchronous generator class; accepts the entrypoint of the generator, to which it passes itself when the generator should start\nexport const _AsyncGenerator = /*#__PURE__*/(function() {\n\tfunction _AsyncGenerator(entry) {\n\t\tthis._entry = entry;\n\t\tthis._pact = null;\n\t\tthis._resolve = null;\n\t\tthis._return = null;\n\t\tthis._promise = null;\n\t}\n\n\tfunction _wrapReturnedValue(value) {\n\t\treturn { value: value, done: true };\n\t}\n\tfunction _wrapYieldedValue(value) {\n\t\treturn { value: value, done: false };\n\t}\n\n\t_AsyncGenerator.prototype._yield = function(value) {\n\t\t// Yield the value to the pending next call\n\t\tthis._resolve(value && value.then ? value.then(_wrapYieldedValue) : _wrapYieldedValue(value));\n\t\t// Return a pact for an upcoming next/return/throw call\n\t\treturn this._pact = new _Pact();\n\t};\n\t_AsyncGenerator.prototype.next = function(value) {\n\t\t// Advance the generator, starting it if it has yet to be started\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tconst _entry = _this._entry;\n\t\t\t\tif (_entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the next call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Start the generator\n\t\t\t\t_this._entry = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\tfunction returnValue(value) {\n\t\t\t\t\t_this._resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t_this._resolve = null;\n\t\t\t\t}\n\t\t\t\tvar result = _entry(_this);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tresult.then(returnValue, function(error) {\n\t\t\t\t\t\tif (error === _earlyReturn) {\n\t\t\t\t\t\t\treturnValue(_this._return);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst pact = new _Pact();\n\t\t\t\t\t\t\t_this._resolve(pact);\n\t\t\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t\t\t_this._resolve = null;\n\t\t\t\t\t\t\t_resolve(pact, 2, error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturnValue(result);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Generator is started and a yield expression is pending, settle it\n\t\t\t\t_this._pact = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\t_settle(_pact, 1, value);\n\t\t\t}\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.return = function(value) {\n\t\t// Early return from the generator if started, otherwise abandons the generator\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the return call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return the specified value\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t}\n\t\t\t// Settle the yield expression with a rejected \"early return\" value\n\t\t\t_this._return = value;\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, _earlyReturn);\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.throw = function(error) {\n\t\t// Inject an exception into the pending yield expression\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve, reject) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the throw call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return a rejected Promise containing the error\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn reject(error);\n\t\t\t}\n\t\t\t// Settle the yield expression with the value as a rejection\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, error);\n\t\t});\n\t};\n\n\t_AsyncGenerator.prototype[_asyncIteratorSymbol] = function() {\n\t\treturn this;\n\t};\n\t\n\treturn _AsyncGenerator;\n})();\n","import { observable, action, makeObservable } from \"mobx\";\nimport commonEn from \"./en/common.json\";\nimport commonPl from \"./pl/common.json\";\n\nconst defaultLocale = \"pl\"; // Can be based on browser language or user selection (localStorage, cookies)\n\nclass LanguageStore {\n locale = defaultLocale;\n translations = commonPl;\n\n constructor() {\n makeObservable(this, {\n locale: observable,\n translations: observable,\n setLocale: action,\n });\n }\n\n setLocale(locale) {\n this.locale = locale;\n\n switch (locale) {\n case \"en\": {\n this.translations = commonEn;\n break;\n }\n default: {\n this.translations = commonPl;\n }\n }\n }\n}\n\nexport default new LanguageStore();\n","import sessionStore from \"../stores/sessionStore\";\n\nclass AndoncloudFetch {\n constructor() {\n this.callback = () => {};\n }\n\n setCallback(callback) {\n this.callback = callback;\n }\n\n removeCallback() {\n this.callback = () => {};\n }\n}\n\nconst andoncloudFetch = new AndoncloudFetch();\n\nasync function acFetch(url, options = {}) {\n const headers = sessionStore.requestHeaders();\n\n if (headers !== null) {\n options.headers = Object.assign({}, headers, options.headers);\n }\n\n try {\n const response = await fetch(url, options);\n if (!response?.ok) {\n if (response.status === 401) {\n sessionStore.removeSession();\n }\n } else {\n andoncloudFetch.callback(response, false);\n }\n\n return response;\n } catch (e) {\n sessionStore.setNetworkError(e.message);\n }\n}\n\nexport default andoncloudFetch;\nexport { acFetch as fetch };\n","/*! js-cookie v3.0.1 | MIT */\n;\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = global || self, (function () {\n var current = global.Cookies;\n var exports = global.Cookies = factory();\n exports.noConflict = function () { global.Cookies = current; return exports; };\n }()));\n}(this, (function () { 'use strict';\n\n /* eslint-disable no-var */\n function assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n }\n /* eslint-enable no-var */\n\n /* eslint-disable no-var */\n var defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n };\n /* eslint-enable no-var */\n\n /* eslint-disable no-var */\n\n function init (converter, defaultAttributes) {\n function set (key, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n key = encodeURIComponent(key)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n key + '=' + converter.write(value, key) + stringifiedAttributes)\n }\n\n function get (key) {\n if (typeof document === 'undefined' || (arguments.length && !key)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var foundKey = decodeURIComponent(parts[0]);\n jar[foundKey] = converter.read(value, foundKey);\n\n if (key === foundKey) {\n break\n }\n } catch (e) {}\n }\n\n return key ? jar[key] : jar\n }\n\n return Object.create(\n {\n set: set,\n get: get,\n remove: function (key, attributes) {\n set(\n key,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n }\n\n var api = init(defaultConverter, { path: '/' });\n /* eslint-enable no-var */\n\n return api;\n\n})));\n","import Cookies from \"js-cookie\";\n\nexport default class CookiesManager {\n static rootDomain;\n\n static recognizeRootDomain() {\n if (!this.rootDomain) {\n const host = window.location.hostname;\n if (window.location.port.length === 0) {\n let subdomain, parts;\n [subdomain, ...parts] = host.split(\".\");\n this.subdomain = subdomain;\n this.rootDomain = parts.join(\".\");\n } else {\n this.rootDomain = host;\n }\n }\n return this.rootDomain;\n }\n\n static get(key) {\n const recognizeRootDomain = this.recognizeRootDomain();\n return Cookies.get(key, { domain: recognizeRootDomain });\n }\n\n static set(key, value) {\n const recognizeRootDomain = this.recognizeRootDomain();\n return Cookies.set(key, value, { domain: recognizeRootDomain });\n }\n\n static remove(key) {\n const recognizeRootDomain = this.recognizeRootDomain();\n return Cookies.remove(key, { domain: recognizeRootDomain });\n }\n}\n","import { action, computed, observable, makeObservable, toJS } from \"mobx\";\n\nclass UserStore {\n currentUser = null;\n\n constructor() {\n makeObservable(this, {\n setCurrentUser: action,\n removeCurrentUser: action,\n currentUser: observable.deep,\n getCurrentUserJS: computed,\n });\n }\n\n setCurrentUser(currentUser) {\n this.currentUser = currentUser;\n }\n\n removeCurrentUser() {\n this.currentUser = null;\n }\n\n get getCurrentUserJS() {\n return toJS(this.currentUser);\n }\n}\n\nexport default new UserStore();\n","import toast from \"react-hot-toast\";\n\nimport { observable, makeObservable } from \"mobx\";\n\nimport i18n from \"../../locales/i18n\";\nimport { fetch } from \"../utils/fetch\";\nimport CookiesManager from \"../utils/cookies-manager\";\nimport userStore from \"./userStore\";\n\nclass Session {\n constructor() {\n this.user = {};\n this.accessToken = null;\n this.tokenType = null;\n this.expiresIn = null;\n }\n}\n\nclass SessionAPI {\n setAuthConfig({ baseUrl, clientId, redirectUri }) {\n this.baseUrl = baseUrl;\n this.clientId = clientId;\n this.redirectUri = redirectUri;\n }\n\n async authorize(credentials) {\n const formData = new FormData();\n const { scope, code, username, password } = credentials;\n\n formData.append(\"client_id\", this.clientId);\n\n if (scope) {\n formData.append(\"scope\", scope);\n }\n if (code) {\n formData.append(\"grant_type\", \"authorization_code\");\n formData.append(\"code\", code);\n formData.append(\"redirect_uri\", this.redirectUri);\n } else {\n formData.append(\"grant_type\", \"password\");\n formData.append(\"username\", username);\n formData.append(\"password\", password);\n }\n let fetchParams = {\n method: \"POST\",\n body: formData,\n };\n let session;\n\n await fetch(`${this.baseUrl}/v2/oauth2/token`, fetchParams)\n .then(async (response) => {\n let data;\n\n try {\n data = await response.json();\n\n if (!response.ok || response.status !== 200) {\n toast.error(data.error_description);\n return;\n }\n } catch (error) {\n toast.error(i18n.translations.unexpectedErrorMessage);\n return;\n }\n session = new Session();\n session.user = await this.getUserData(data);\n session.accessToken = data.access_token;\n session.tokenType = data.token_type;\n session.expiresIn = data.expires_in;\n })\n .catch((e) => {\n toast.error(e.message);\n });\n\n return session;\n }\n\n async getUserData(authData) {\n const fetchParams = {\n method: \"GET\",\n };\n if (authData) {\n const { token_type, access_token } = authData;\n fetchParams.headers = {\n Authorization: `${token_type} ${access_token}`,\n };\n }\n let response;\n response = await fetch(`${this.baseUrl}/v2/me`, fetchParams);\n if (response) {\n const { user } = await response.json();\n return {\n id: user.id,\n companyId: user.company_id,\n roleId: user.role_id,\n username: user.username,\n email: user.email,\n name: user.name,\n };\n }\n }\n\n async signOut() {\n const formData = new FormData();\n formData.append(\"client_id\", this.clientId);\n\n const fetchParams = {\n method: \"POST\",\n body: formData,\n };\n await fetch(`${this.baseUrl}/v2/oauth2/revoke`, fetchParams);\n }\n}\n\nclass SessionStore {\n loading = false;\n loginStatus = {\n status: \"not_authorized\",\n };\n\n constructor() {\n this.api = new SessionAPI();\n this.networkError = null;\n\n makeObservable(this, {\n loading: observable,\n loginStatus: observable.deep,\n });\n }\n\n updateLoginStatus() {\n this.loginStatus = {\n status: \"connected\",\n authResponse: {\n user: this.session.user,\n accessToken: this.session.accessToken,\n tokenType: this.session.tokenType,\n expiresIn: this.session.expiresIn,\n },\n };\n }\n\n setAuthConfig(config) {\n this.api.setAuthConfig(config);\n }\n\n setNetworkError(value) {\n this.networkError = value;\n }\n\n isLoggedIn() {\n return Boolean(this.session);\n }\n\n requestHeaders() {\n if (!this.isLoggedIn()) {\n return null;\n }\n const { accessToken, tokenType } = this.session;\n return {\n Authorization: `${tokenType} ${accessToken}`,\n };\n }\n\n async authorize(credentials, storeSession = true) {\n this.loading = true;\n const session = await this.api.authorize(credentials);\n this.loading = false;\n\n if (!session) {\n return null;\n }\n if (storeSession) {\n this.session = session;\n this.storeSession();\n this.setCurrentUser(session.user);\n this.updateLoginStatus();\n }\n return session;\n }\n\n async recover() {\n if (this.session) {\n return;\n }\n await this.restoreSession();\n if (this.session) {\n let user = await this.api.getUserData();\n this.setCurrentUser(user);\n this.updateLoginStatus();\n }\n }\n\n async logout() {\n if (this.session) {\n await this.api.signOut();\n this.removeSession();\n this.removeCurrentUser();\n this.loginStatus = {\n status: \"not_authorized\",\n };\n }\n }\n\n async storeSession() {\n let session_cookie = {};\n session_cookie[\"access-token\"] = this.session.accessToken;\n session_cookie[\"token-type\"] = this.session.tokenType;\n session_cookie[\"expires-in\"] = this.session.expiresIn;\n const authHeaders = JSON.stringify(session_cookie);\n CookiesManager.set(\"authHeaders\", authHeaders);\n }\n\n async restoreSession() {\n const cookie = CookiesManager.get(\"authHeaders\");\n if (!cookie || cookie === \"null\") {\n return;\n }\n const json = JSON.parse(cookie);\n const session = new Session();\n session.accessToken = json[\"access-token\"];\n session.tokenType = json[\"token-type\"];\n session.expiresIn = json[\"expires-in\"];\n this.session = session;\n this.session.user = await this.api.getUserData();\n }\n\n removeSession() {\n CookiesManager.remove(\"authHeaders\");\n this.session = null;\n }\n\n setCurrentUser(user) {\n userStore.setCurrentUser(user);\n }\n\n removeCurrentUser() {\n userStore.removeCurrentUser();\n }\n}\n\nconst sessionStore = new SessionStore();\n\nexport default sessionStore;\n","import { adaptV4Theme, createTheme } from \"@mui/material/styles\";\n\nexport default createTheme(\n adaptV4Theme({\n props: {\n MuiButton: {\n variant: \"contained\",\n disableElevation: true,\n },\n MuiLoadingButton: {\n variant: \"contained\",\n disableElevation: true,\n },\n },\n overrides: {\n MuiBackdrop: {\n root: {\n marginTop: 48,\n },\n },\n MuiButton: {\n root: {\n fontWeight: \"normal\",\n borderRadius: 6,\n },\n },\n MuiLoadingButton: {\n root: {\n fontWeight: \"normal\",\n borderRadius: 6,\n },\n },\n MuiCardHeader: {\n root: {\n textAlign: \"center\",\n color: \"white\",\n background: \"linear-gradient(#4a4a4a 0%, #3e3e3e 100%)\",\n },\n subheader: {\n marginTop: \"0.5em\",\n color: \"rgba(255,255,255,0.75)\",\n },\n },\n MuiPaper: {\n rounded: {\n borderRadius: \"20px\",\n },\n },\n MuiCard: {\n root: {\n borderRadius: \"19px\",\n boxShadow: \"0px 4px 8px rgba(0, 0, 0, 0.25)\",\n },\n },\n MuiCardContent: {\n root: {\n maxWidth: 600,\n minHeight: 800,\n minWidth: 550,\n background: \"linear-gradient(180deg, #393939 0%, #4A4A4A 100%)\",\n \"&:last-child\": {\n paddingBottom: 16,\n },\n },\n },\n MuiDialogTitle: {\n root: {\n textAlign: \"center\",\n color: \"white\",\n background: \"linear-gradient(#4a4a4a 0%, #3e3e3e 100%)\",\n },\n },\n MuiDialogContent: {\n root: {\n minWidth: 550,\n padding: \"16px 24px\",\n background: \"linear-gradient(180deg, #393939 0%, #4A4A4A 100%)\",\n },\n },\n MuiDialogContentText: {\n root: {\n textAlign: \"center\",\n color: \"white\",\n },\n },\n MuiFormControl: {\n root: {\n alignItems: \"center\",\n },\n },\n MuiOutlinedInput: {\n root: {\n color: \"white\",\n \"&:hover .MuiOutlinedInput-notchedOutline\": {\n borderColor: \"rgba(255,255,255,0.35)\",\n },\n },\n notchedOutline: {\n borderColor: \"rgba(255,255,255,0.25)\",\n },\n input: {\n padding: \"13px 16px\",\n background: \"transparent\",\n color: \"white\",\n borderColor: \"white\",\n },\n },\n },\n typography: {\n button: {\n textTransform: \"none\",\n },\n },\n palette: {\n primary: {\n light: \"#156bd1\",\n main: \"#155ed1\",\n dark: \"#1551d1\",\n contrastText: \"#fff\",\n },\n secondary: {\n light: \"#656565\",\n main: \"#595959\",\n dark: \"#4d4d4d\",\n contrastText: \"#fff\",\n },\n },\n })\n);\n","import { useLocation } from \"react-router-dom\";\n\nconst useQueryParams = () => {\n return new URLSearchParams(useLocation().search);\n}\n\nexport default useQueryParams;\n","import React, { useEffect } from \"react\";\nimport { Navigate } from \"react-router-dom\";\n\nimport useQueryParams from \"../hooks/useQueryParams\";\nimport sessionStore from \"../stores/sessionStore\";\n\nconst AuthRedirect = () => {\n const queryParams = useQueryParams();\n const nextPath = queryParams.get(\"next\");\n\n useEffect(() => {\n const code = queryParams.get(\"code\");\n\n if (code) {\n sessionStore.authorize({ code });\n }\n }, [queryParams]);\n\n if (sessionStore.isLoggedIn()) {\n return <Navigate to={nextPath} />;\n }\n return null;\n};\n\nexport default AuthRedirect;\n","/*\n * onScan.js - scan-events for hardware barcodes scanners in javascript\n */\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory()) :\n global.onScan = factory()\n}(this, (function () {\n\tvar onScan = {\t\n\t\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @param Object oOptions\n\t\t * @return self\n\t\t */\n\t\tattachTo: function(oDomElement, oOptions) {\n\t\n\t\t\tif(oDomElement.scannerDetectionData !== undefined){\n\t\t\t\tthrow new Error(\"onScan.js is already initialized for DOM element \" + oDomElement);\n\t\t\t}\n\t\n\t\t\tvar oDefaults = {\n\t\t\t\tonScan: function(sScanned, iQty){}, // Callback after detection of a successfull scanning: function(){sScancode, iCount)}()\n\t\t\t\tonScanError: function(oDebug){}, // Callback after detection of a unsuccessfull scanning (scanned string in parameter)\n\t\t\t\tonKeyProcess: function(sChar, oEvent){}, // Callback after receiving and processing a char (scanned char in parameter)\n\t\t\t\tonKeyDetect: function(iKeyCode, oEvent){}, // Callback after detecting a keyDown (key char in parameter) - in contrast to onKeyProcess, this fires for non-character keys like tab, arrows, etc. too!\n\t\t\t\tonPaste: function(sPasted, oEvent){}, // Callback after receiving a value on paste, no matter if it is a valid code or not\n\t\t\t\tkeyCodeMapper: function(oEvent) {return onScan.decodeKeyEvent(oEvent)}, // Custom function to decode a keydown event into a character. Must return decoded character or NULL if the given event should not be processed.\n\t\t\t\tonScanButtonLongPress: function(){}, // Callback after detection of a successfull scan while the scan button was pressed and held down\n\t\t\t\tscanButtonKeyCode:false, // Key code of the scanner hardware button (if the scanner button a acts as a key itself) \n\t\t\t\tscanButtonLongPressTime:500, // How long (ms) the hardware button should be pressed, until a callback gets executed\n\t\t\t\ttimeBeforeScanTest:100, // Wait duration (ms) after keypress event to check if scanning is finished\n\t\t\t\tavgTimeByChar:30, // Average time (ms) between 2 chars. Used to do difference between keyboard typing and scanning\n\t\t\t\tminLength:6, // Minimum length for a scanning\n\t\t\t\tsuffixKeyCodes:[9,13], // Chars to remove and means end of scanning\n\t\t\t\tprefixKeyCodes:[], // Chars to remove and means start of scanning\n\t\t\t\tignoreIfFocusOn:false, // do not handle scans if the currently focused element matches this selector or object\n\t\t\t\tstopPropagation:false, // Stop immediate propagation on keypress event\n\t\t\t\tpreventDefault:false, // Prevent default action on keypress event\n\t\t\t\tcaptureEvents:false, // Get the events before any listeners deeper in the DOM\n\t\t\t\treactToKeydown:true, // look for scan input in keyboard events\n\t\t\t\treactToPaste:false, // look for scan input in paste events\n\t\t\t\tsingleScanQty: 1, // Quantity of Items put out to onScan in a single scan\n\t\t\t}\n\t\t\t\t\t\t\t\t\t\n\t\t\toOptions = this._mergeOptions(oDefaults, oOptions);\n\t\n\t\t\t// initializing options and variables on DomElement\n\t\t\toDomElement.scannerDetectionData = {\n\t\t\t\t\toptions: oOptions,\n\t\t\t\t\tvars:{\n\t\t\t\t\t\tfirstCharTime: 0,\n\t\t\t\t\t\tlastCharTime: 0,\n\t\t\t\t\t\taccumulatedString: '',\n\t\t\t\t\t\ttestTimer: false,\n\t\t\t\t\t\tlongPressTimeStart: 0,\n\t\t\t\t\t\tlongPressed: false\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t};\n\t\t\t\n\t\t\t// initializing handlers (based on settings)\n\t\t\tif (oOptions.reactToPaste === true){\n\t\t\t\toDomElement.addEventListener(\"paste\", this._handlePaste, oOptions.captureEvents);\n\t\t\t}\n\t\t\tif (oOptions.scanButtonKeyCode !== false){\n\t\t\t\toDomElement.addEventListener(\"keyup\", this._handleKeyUp, oOptions.captureEvents);\n\t\t\t}\n\t\t\tif (oOptions.reactToKeydown === true || oOptions.scanButtonKeyCode !== false){\t\n\t\t\t\toDomElement.addEventListener(\"keydown\", this._handleKeyDown, oOptions.captureEvents);\n\t\t\t}\n\t\t\treturn this;\n\t\t},\n\t\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @return void\n\t\t */\n\t\tdetachFrom: function(oDomElement) {\n\t\t\t// detaching all used events\n\t\t\tif (oDomElement.scannerDetectionData.options.reactToPaste){\n\t\t\t\toDomElement.removeEventListener(\"paste\", this._handlePaste);\n\t\t\t}\n\t\t\tif (oDomElement.scannerDetectionData.options.scanButtonKeyCode !== false){\n\t\t\t\toDomElement.removeEventListener(\"keyup\", this._handleKeyUp);\n\t\t\t}\n\t\t\toDomElement.removeEventListener(\"keydown\", this._handleKeyDown);\n\t\t\t\n\t\t\t// clearing data off DomElement\n\t\t\toDomElement.scannerDetectionData = undefined; \n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @return Object\n\t\t */\n\t\tgetOptions: function(oDomElement){\n\t\t\treturn oDomElement.scannerDetectionData.options;\t\t\t\n\t\t},\n\t\n\t\t/**\n\t\t * \n\t\t * @param DomElement oDomElement\n\t\t * @param Object oOptions\n\t\t * @return self\n\t\t */\n\t\tsetOptions: function(oDomElement, oOptions){\n\t\t\t// check if some handlers need to be changed based on possible option changes\n\t\t\tswitch (oDomElement.scannerDetectionData.options.reactToPaste){\n\t\t\t\tcase true: \n\t\t\t\t\tif (oOptions.reactToPaste === false){\n\t\t\t\t\t\toDomElement.removeEventListener(\"paste\", this._handlePaste);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase false:\n\t\t\t\t\tif (oOptions.reactToPaste === true){\n\t\t\t\t\t\toDomElement.addEventListener(\"paste\", this._handlePaste);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\t\n\t\t\tswitch (oDomElement.scannerDetectionData.options.scanButtonKeyCode){\n\t\t\t\tcase false:\n\t\t\t\t\tif (oOptions.scanButtonKeyCode !== false){\n\t\t\t\t\t\toDomElement.addEventListener(\"keyup\", this._handleKeyUp);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault: \n\t\t\t\t\tif (oOptions.scanButtonKeyCode === false){\n\t\t\t\t\t\toDomElement.removeEventListener(\"keyup\", this._handleKeyUp);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\t\n\t\t\t// merge old and new options\n\t\t\toDomElement.scannerDetectionData.options = this._mergeOptions(oDomElement.scannerDetectionData.options, oOptions);\n\t\t\n\t\t\t// reinitiallize\n\t\t\tthis._reinitialize(oDomElement);\n\t\t\treturn this;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Transforms key codes into characters.\n\t\t * \n\t\t * By default, only the follwing key codes are taken into account\n\t\t * - 48-90 (letters and regular numbers)\n\t\t * - 96-105 (numeric keypad numbers)\n\t\t * - 106-111 (numeric keypad operations)\n\t\t * \n\t\t * All other keys will yield empty strings!\n\t\t * \n\t\t * The above keycodes will be decoded using the KeyboardEvent.key property on modern\n\t\t * browsers. On older browsers the method will fall back to String.fromCharCode()\n\t\t * putting the result to upper/lower case depending on KeyboardEvent.shiftKey if\n\t\t * it is set.\n\t\t * \n\t\t * @param KeyboardEvent oEvent\n\t\t * @return string\n\t\t */\n\t\tdecodeKeyEvent : function (oEvent) {\n\t\t\tvar iCode = this._getNormalizedKeyNum(oEvent);\n\t\t\tswitch (true) {\n\t\t\t\tcase iCode >= 48 && iCode <= 90: // numbers and letters\n\t\t\t\tcase iCode >= 106 && iCode <= 111: // operations on numeric keypad (+, -, etc.)\n\t\t\t\t\tif (oEvent.key !== undefined && oEvent.key !== '') {\n\t\t\t\t\t\treturn oEvent.key;\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\t\tvar sDecoded = String.fromCharCode(iCode);\n\t\t\t\t\tswitch (oEvent.shiftKey) {\n\t\t\t\t\t\tcase false: sDecoded = sDecoded.toLowerCase(); break;\n\t\t\t\t\t\tcase true: sDecoded = sDecoded.toUpperCase(); break;\n\t\t\t\t\t}\n\t\t\t\t\treturn sDecoded;\n\t\t\t\tcase iCode >= 96 && iCode <= 105: // numbers on numeric keypad\n\t\t\t\t\treturn 0+(iCode-96);\n\t\t\t}\n\t\t\treturn '';\n\t\t},\n\t\t\n\t\t/**\n\t\t * Simulates a scan of the provided code.\n\t *\n\t\t * The scan code can be defined as\n\t\t * - a string - in this case no keyCode decoding is done and the code is merely validated\n\t\t * against constraints like minLenght, etc.\n\t\t * - an array of keyCodes (e.g. `[70,71,80]`) - will produce `keydown` events with corresponding\n\t\t * `keyCode` properties. NOTE: these events will have empty `key` properties, so decoding may\n\t\t * yield different results than with native events.\n\t\t * - an array of objects (e.g. `[{keyCode: 70, key: \"F\", shiftKey: true}, {keyCode: 71, key: \"g\"}]`) -\n\t\t * this way almost any event can be simulated, but it's a lot of work to do.\n\t\t *\n\t\t * @param DomElement oDomElement\n\t\t * @param string|array mStringOrArray\n\t\t * @return self\n\t\t */\n\t\tsimulate: function(oDomElement, mStringOrArray){\n\t\t\tthis._reinitialize(oDomElement);\n\t\t\tif (Array.isArray(mStringOrArray)){\n\t\t\t\tmStringOrArray.forEach(function(mKey){\n\t\t\t\t\tvar oEventProps = {};\n\t\t\t\t\tif( (typeof mKey === \"object\" || typeof mKey === 'function') && (mKey !== null) ) {\n\t\t\t\t\t\toEventProps = mKey;\n\t\t\t\t\t} else {\n\t\t\t\t\t\toEventProps.keyCode = parseInt(mKey);\n\t\t\t\t\t}\n\t\t\t\t\tvar oEvent = new KeyboardEvent('keydown', oEventProps);\n\t\t\t\t\tdocument.dispatchEvent(oEvent);\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\tthis._validateScanCode(oDomElement, mStringOrArray);\n\t\t\t}\n\t\t\treturn this;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param DomElement oDomElement\n\t\t * @return void\n\t\t */\n\t\t_reinitialize: function(oDomElement){\n\t\t\tvar oVars = oDomElement.scannerDetectionData.vars;\n\t\t\toVars.firstCharTime = 0;\n\t\t\toVars.lastCharTime = 0;\n\t\t\toVars.accumulatedString = '';\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param DomElement oDomElement\n\t * @return boolean\n\t\t */\n\t\t_isFocusOnIgnoredElement: function(oDomElement){\n\t\t\t\n\t\t\tvar ignoreSelectors = oDomElement.scannerDetectionData.options.ignoreIfFocusOn;\n\t\n\t if(!ignoreSelectors){\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\n\t\t\tvar oFocused = document.activeElement;\n\t\t\t\n\t\t\t// checks if ignored element is an array, and if so it checks if one of the elements of it is an active one\n\t\t\tif (Array.isArray(ignoreSelectors)){\n\t\t\t\tfor(var i=0; i<ignoreSelectors.length; i++){\n\t\t\t\t\tif(oFocused.matches(ignoreSelectors[i]) === true){\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t// if the option consists of an single element, it only checks this one\n\t\t\t} else if (oFocused.matches(ignoreSelectors)){\n\t\t\t\treturn true;\t\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\t// if the active element is not listed in the ignoreIfFocusOn option, return false\n\t\t return false;\n\t },\n\t\t\n\t /**\n\t * Validates the scan code accumulated by the given DOM element and fires the respective events.\n\t * \n\t * @private\n\t * @param DomElement oDomElement\n\t * @return boolean\n\t */\n\t\t_validateScanCode: function(oDomElement, sScanCode){\n\t\t\tvar oScannerData = oDomElement.scannerDetectionData;\t\t\t\n\t\t\tvar oOptions = oScannerData.options;\n\t\t\tvar iSingleScanQty = oScannerData.options.singleScanQty;\n\t\t\tvar iFirstCharTime = oScannerData.vars.firstCharTime;\n\t\t\tvar iLastCharTime = oScannerData.vars.lastCharTime;\n\t\t\tvar oScanError = {};\n\t var oEvent;\n\t \n\t\t\tswitch(true){\n\t\t\t\t\n\t\t\t\t// detect codes that are too short\n\t\t\t\tcase (sScanCode.length < oOptions.minLength):\n\t\t\t\t\toScanError = {\n\t\t\t\t\t\tmessage: \"Receieved code is shorter then minimal length\"\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// detect codes that were entered too slow\t\n\t\t\t\tcase ((iLastCharTime - iFirstCharTime) > (sScanCode.length * oOptions.avgTimeByChar)):\n\t\t\t\t\toScanError = {\n\t\t\t\t\t\tmessage: \"Receieved code was not entered in time\"\n\t\t\t\t\t};\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// if a code was not filtered out earlier it is valid\t\n\t\t\t\tdefault:\n\t\t\t\t\toOptions.onScan.call(oDomElement, sScanCode, iSingleScanQty);\n\t\t\t\t\toEvent = new CustomEvent(\n\t\t\t\t\t\t'scan',\n\t\t\t\t\t\t{\t\n\t\t\t\t\t\t\tdetail: { \n\t\t\t\t\t\t\t\tscanCode: sScanCode,\n\t\t\t\t\t\t\t\tqty: iSingleScanQty\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t\toDomElement.dispatchEvent(oEvent);\n\t\t\t\t\tonScan._reinitialize(oDomElement);\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t\t\n\t\t\t// If an error occurred (otherwise the method would return earlier) create an object for errordetection\n\t\t\toScanError.scanCode = sScanCode;\n\t\t\toScanError.scanDuration = iLastCharTime - iFirstCharTime;\n\t\t\toScanError.avgTimeByChar = oOptions.avgTimeByChar;\n\t\t\toScanError.minLength = oOptions.minLength;\n\t\t\t\n\t\t\toOptions.onScanError.call(oDomElement, oScanError);\n\t\t\t\n\t\t\toEvent = new CustomEvent(\n\t\t\t\t'scanError', \n\t\t\t\t{detail: oScanError}\n\t\t\t);\n\t\t\toDomElement.dispatchEvent(oEvent);\n\t\t\t\n\t\t\tonScan._reinitialize(oDomElement);\n\t\t\treturn false;\n\t },\n\t\n\t /**\n\t * @private\n\t * @param Object oDefaults\n\t * @param Object oOptions\n\t * @return Object\n\t */\n\t\t_mergeOptions: function(oDefaults, oOptions){\n\t\t\tvar oExtended = {};\n\t\t\tvar prop;\n\t\t\tfor (prop in oDefaults){\n\t\t\t\tif (Object.prototype.hasOwnProperty.call(oDefaults, prop)){\n\t\t\t\t\toExtended[prop] = oDefaults[prop];\n\t\t\t\t}\n\t\t\t}\t\t\t\n\t\t\tfor (prop in oOptions){\n\t\t\t\tif (Object.prototype.hasOwnProperty.call(oOptions, prop)){\n\t\t\t\t\toExtended[prop] = oOptions[prop];\n\t\t\t\t}\n\t\t\t}\t\t\t\n\t\t\treturn oExtended;\n\t\t},\n\t\n\t\t/**\n\t\t * @private\n\t\t * @param KeyboardEvent e\n\t\t * @return int\n\t\t * @see https://www.w3schools.com/jsref/event_key_keycode.asp\n\t\t */\n\t\t_getNormalizedKeyNum: function(e){\n\t\t\treturn e.which || e.keyCode;\n\t\t},\n\t\n\t\n\t\t/**\n\t\t * @private\n\t\t * @param KeyboardEvent e\n\t\t * @return void\n\t\t */\n\t\t_handleKeyDown: function(e){\n\t\t\tvar iKeyCode = onScan._getNormalizedKeyNum(e);\n\t\t\tvar oOptions = this.scannerDetectionData.options;\n\t\t\tvar oVars = this.scannerDetectionData.vars;\n\t\t\tvar bScanFinished = false;\n\t\t\t\n\t\t\tif (oOptions.onKeyDetect.call(this, iKeyCode, e) === false) {\n\t\t\t\treturn;\n\t\t\t}\t\t\n\t\t\t\n\t\t\tif (onScan._isFocusOnIgnoredElement(this)){\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\t\t\t\n\t // If it's just the button of the scanner, ignore it and wait for the real input\n\t\t if(oOptions.scanButtonKeyCode !== false && iKeyCode==oOptions.scanButtonKeyCode) {\n\t\t\t\t\n\t\t\t\t// if the button was first pressed, start a timeout for the callback, which gets interrupted if the scanbutton gets released\n\t\t\t\tif (!oVars.longPressed){\n\t\t\t\t\toVars.longPressTimer = setTimeout( oOptions.onScanButtonLongPress, oOptions.scanButtonLongPressTime, this);\n\t\t\t\t\toVars.longPressed = true;\n\t\t\t\t}\n\t\n\t\t\t\treturn;\n\t }\n\t\t\t\n\t\t\tswitch(true){\n\t\t\t\t// If it's not the first character and we encounter a terminating character, trigger scan process\n\t\t\t\tcase (oVars.firstCharTime && oOptions.suffixKeyCodes.indexOf(iKeyCode)!==-1):\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\te.stopImmediatePropagation();\n\t\t\t\t\tbScanFinished=true;\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// If it's the first character and we encountered one of the starting characters, don't process the scan\t\n\t\t\t\tcase (!oVars.firstCharTime && oOptions.prefixKeyCodes.indexOf(iKeyCode)!==-1):\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\te.stopImmediatePropagation();\n\t\t\t\t\tbScanFinished=false;\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\t// Otherwise, just add the character to the scan string we're building\t\n\t\t\t\tdefault:\n\t\t\t\t\tvar character = oOptions.keyCodeMapper.call(this, e);\n\t\t\t\t\tif (character === null){\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\toVars.accumulatedString += character;\n\t\t\t\t\t\n\t\t\t\t\tif (oOptions.preventDefault) {\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\tif (oOptions.stopPropagation) {\n\t\t\t\t\t\te.stopImmediatePropagation();\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tbScanFinished=false;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t \n\t\t\tif(!oVars.firstCharTime){\n\t\t\t\toVars.firstCharTime=Date.now();\n\t\t\t}\n\t\t\t\n\t\t\toVars.lastCharTime=Date.now();\n\t\n\t\t\tif(oVars.testTimer){ \n\t\t\t\tclearTimeout(oVars.testTimer);\n\t\t\t}\n\t\t\t\n\t\t\tif(bScanFinished){\n\t\t\t\tonScan._validateScanCode(this, oVars.accumulatedString);\n\t\t\t\toVars.testTimer=false;\n\t\t\t} else {\n\t\t\t\toVars.testTimer=setTimeout(onScan._validateScanCode, oOptions.timeBeforeScanTest, this, oVars.accumulatedString);\n\t\t\t}\n\t\n\t\t\toOptions.onKeyProcess.call(this, character, e);\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param Event e\n\t\t * @return void\n\t\t */\n\t\t_handlePaste: function(e){\n\t\n\t\t\tvar oOptions = this.scannerDetectionData.options;\n\t\t\tvar oVars = this.scannerDetectionData.vars;\n\t\t\tvar sPasteString = (event.clipboardData || window.clipboardData).getData('text');\n\t\t\t\n\t\t\t// if the focus is on an ignored element, abort\n\t\t\tif (onScan._isFocusOnIgnoredElement(this)){\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\te.preventDefault();\n\n\t\t\tif (oOptions.stopPropagation) {\n\t\t\t\te.stopImmediatePropagation();\n\t\t\t}\n\t\t\t\t\t\t\n\t\t\toOptions.onPaste.call(this, sPasteString, event);\n\t\t\t\n\t\t\toVars.firstCharTime = 0;\n\t\t\toVars.lastCharTime = 0;\n\t\t\t\n\t\t\t// validate the string\n\t\t\tonScan._validateScanCode(this, sPasteString);\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * @private\n\t\t * @param KeyboardEvent e\n\t\t * @return void\n\t\t */\n\t\t_handleKeyUp: function(e){\n\t\t\t// if the focus is on an ignored element, abort\n\t\t\tif (onScan._isFocusOnIgnoredElement(this)){\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tvar iKeyCode = onScan._getNormalizedKeyNum(e);\n\t\t\t\n\t\t\t// if hardware key is not being pressed anymore stop the timeout and reset\n\t\t\tif (iKeyCode == this.scannerDetectionData.options.scanButtonKeyCode){\n\t\t\t\tclearTimeout(this.scannerDetectionData.vars.longPressTimer);\n\t\t\t\tthis.scannerDetectionData.vars.longPressed = false;\n\t\t\t}\n\t\t\treturn;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Returns TRUE the scanner is currently in the middle of a scan sequence.\n\t\t * \n\t\t * @param DomElement\n\t\t * @return boolean\n\t\t */\n\t\tisScanInProgressFor: function(oDomElement) {\n\t\t\treturn oDomElement.scannerDetectionData.vars.firstCharTime > 0;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Returns TRUE if onScan is attached to the given DOM element and FALSE otherwise.\n\t\t * \n\t\t * @param DomElement\n\t\t * @return boolean\n\t\t */\n\t\tisAttachedTo: function(oDomElement) {\n\t\t\treturn (oDomElement.scannerDetectionData !== undefined);\n\t\t}\n\t};\n\t\n\treturn onScan;\n})));","import React, { useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { PropTypes } from \"prop-types\";\nimport { observer } from \"mobx-react-lite\";\nimport { Box, FormControl, TextField, Button, Typography } from \"@mui/material\";\nimport { LoadingButton } from \"@mui/lab\";\nimport sessionStore from \"../stores/sessionStore\";\nimport i18n from \"../../locales/i18n\";\nimport onScan from \"onscan.js\";\n\nconst LoginForm = ({\n scope,\n redirectPath,\n onSuccess,\n onFailure,\n onCancel,\n storeSession,\n title,\n \"data-testid\": dataTestID,\n}) => {\n const [username, setUsername] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const navigate = useNavigate();\n\n const authorizeUser = async (credentials) => {\n const session = await sessionStore.authorize(\n { scope, ...credentials },\n storeSession\n );\n if (session) {\n if (onSuccess && typeof onSuccess === \"function\") {\n onSuccess(session);\n }\n setPassword(\"\");\n navigate(redirectPath);\n } else if (onFailure && typeof onFailure === \"function\") {\n onFailure();\n }\n };\n\n useEffect(() => {\n onScan.attachTo(document, {\n suffixKeyCodes: [13], // enter-key expected at the end of a scan\n reactToPaste: true, // Compatibility to built-in scanners in paste-mode (as opposed to keyboard-mode)\n // Alternative to document.addEventListener('scan')\n onScan: function (sCode, _) {\n void authorizeUser({ username: \"code\", password: sCode });\n },\n });\n return () => {\n onScan.detachFrom(document);\n };\n }, []);\n\n const handleCancel = (event) => {\n if (onCancel && typeof onCancel === \"function\") {\n onCancel();\n } else {\n navigate(\"/\");\n }\n };\n\n const handleSubmit = async (event) => {\n event.preventDefault();\n\n void authorizeUser({ username, password });\n };\n\n const handleChangeForUsername = (event) => {\n setUsername(event.target.value);\n };\n\n const handleChangeForPassword = (event) => {\n setPassword(event.target.value);\n };\n\n return (\n <form\n onSubmit={handleSubmit}\n data-testid={dataTestID || \"ac-sdk-login-form\"}\n >\n <Box m=\"0 80px\">\n <Box\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n m=\"125px 0\"\n >\n <AcLogoSVG />\n </Box>\n <Box m=\"0 0 30px 0\" color=\"rgba(255, 255, 255, 0.6)\">\n <Typography align=\"center\" color=\"inherit\">\n {title}\n </Typography>\n </Box>\n <Box\n m=\"0\"\n display=\"grid\"\n sx={{ gridGap: \"18px\" }}\n gridTemplateColumns=\"1fr\"\n >\n <FormControl fullWidth>\n <TextField\n fullWidth\n variant=\"outlined\"\n placeholder={i18n.translations.loginCardUsernameHint}\n onChange={handleChangeForUsername}\n value={username}\n id=\"login-input\"\n inputProps={{\n \"data-testid\": \"ac-sdk-login-form-username-input\",\n }}\n />\n </FormControl>\n <FormControl fullWidth>\n <TextField\n fullWidth\n variant=\"outlined\"\n placeholder={i18n.translations.loginCardPasswordHint}\n onChange={handleChangeForPassword}\n value={password}\n type=\"password\"\n id=\"password-input\"\n inputProps={{\n \"data-testid\": \"ac-sdk-login-form-password-input\",\n }}\n />\n </FormControl>\n <LoadingButton\n id=\"login-button\"\n type=\"submit\"\n size=\"large\"\n color=\"primary\"\n onClick={handleSubmit}\n loading={sessionStore.loading}\n data-testid=\"ac-sdk-login-form-submit-button\"\n >\n {i18n.translations.loginCardSubmitButton}\n </LoadingButton>\n <Button\n id=\"cancel-button\"\n type=\"button\"\n size=\"large\"\n color=\"secondary\"\n onClick={handleCancel}\n data-testid=\"ac-sdk-login-form-cancel-button\"\n >\n {i18n.translations.loginCardCancelButton}\n </Button>\n </Box>\n <Box m=\"30px 0 40px 0\" color=\"rgba(255, 255, 255, 0.6)\">\n <Typography align=\"center\" color=\"inherit\">\n or scan\n </Typography>\n </Box>\n <Box\n display=\"grid\"\n gridTemplateColumns=\"1fr 1fr 1fr\"\n alignItems=\"center\"\n justifyItems=\"center\"\n marginBottom=\"30px\"\n >\n <Box style={{ filter: \"brightness(0.5)\" }}>\n <QRCodeSVG />\n </Box>\n <BarcodeSVG />\n <Box style={{ filter: \"brightness(0.5)\" }}>\n <RFIDCardSVG />\n </Box>\n </Box>\n </Box>\n </form>\n );\n};\n\nLoginForm.propTypes = {\n scope: PropTypes.string,\n redirectPath: PropTypes.string,\n onSuccess: PropTypes.func,\n onFailure: PropTypes.func,\n onCancel: PropTypes.func,\n storeSession: PropTypes.bool,\n};\n\nLoginForm.defaultProps = {\n redirectPath: \"/\",\n storeSession: true,\n};\n\nexport default observer(LoginForm);\n\nconst QRCodeSVG = () => {\n return (\n <svg\n width=\"51\"\n height=\"53\"\n viewBox=\"0 0 51 53\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M8.66868 45.6365C8.66868 42.8453 6.99822 41.1535 4.7397 41.1535C2.47266 41.1535 0.806463 42.8453 0.806463 45.6365C0.806463 48.4234 2.47266 50.1194 4.7397 50.1194C5.3022 50.1194 5.82635 50.0172 6.2951 49.8169L7.04084 50.7842H8.38743L7.21129 49.2501C8.1147 48.4873 8.66868 47.243 8.66868 45.6365ZM4.29652 47.1706L5.53658 48.7984C5.28942 48.8794 5.02095 48.9177 4.7397 48.9177C3.23544 48.9177 2.1147 47.7629 2.1147 45.6365C2.1147 43.5101 3.23544 42.3552 4.7397 42.3552C6.2397 42.3552 7.3647 43.5101 7.3647 45.6365C7.3647 46.8297 7.01101 47.7203 6.43146 48.2657L5.59197 47.1706H4.29652ZM10.3104 50.0001H11.6271V46.6976H13.4169C13.4467 46.6976 13.4723 46.6976 13.5021 46.6976L15.2749 50.0001H16.7749L14.8402 46.4675C15.9098 46.0711 16.4425 45.1805 16.4425 44.0086C16.4425 42.4021 15.4453 41.2728 13.4212 41.2728H10.3104V50.0001ZM11.6271 45.564V42.4021H13.2805C14.5803 42.4021 15.1172 43.02 15.1172 44.0086C15.1172 44.993 14.5803 45.564 13.2976 45.564H11.6271ZM28.4691 44.1109C28.1708 42.2444 26.7092 41.1535 24.864 41.1535C22.6055 41.1535 20.9393 42.8453 20.9393 45.6365C20.9393 48.4277 22.5969 50.1194 24.864 50.1194C26.7816 50.1194 28.1836 48.9177 28.4691 47.1919L27.1396 47.1876C26.9137 48.3041 25.9762 48.9177 24.8725 48.9177C23.3768 48.9177 22.2475 47.7714 22.2475 45.6365C22.2475 43.5186 23.3725 42.3552 24.8768 42.3552C25.989 42.3552 26.9222 42.9817 27.1396 44.1109H28.4691ZM32.6996 50.1322C34.5447 50.1322 35.7507 48.7814 35.7507 46.7572C35.7507 44.7203 34.5447 43.3694 32.6996 43.3694C30.8544 43.3694 29.6484 44.7203 29.6484 46.7572C29.6484 48.7814 30.8544 50.1322 32.6996 50.1322ZM32.7038 49.0626C31.4979 49.0626 30.9354 48.0101 30.9354 46.753C30.9354 45.5001 31.4979 44.4348 32.7038 44.4348C33.9013 44.4348 34.4638 45.5001 34.4638 46.753C34.4638 48.0101 33.9013 49.0626 32.7038 49.0626ZM39.6232 50.128C40.8164 50.128 41.2852 49.3993 41.5153 48.9817H41.6218V50.0001H42.8661V41.2728H41.592V44.5157H41.5153C41.2852 44.1109 40.8505 43.3694 39.6317 43.3694C38.0508 43.3694 36.8874 44.618 36.8874 46.7402C36.8874 48.8581 38.0337 50.128 39.6232 50.128ZM39.9045 49.0413C38.7667 49.0413 38.1744 48.0399 38.1744 46.7274C38.1744 45.4277 38.7539 44.4518 39.9045 44.4518C41.0167 44.4518 41.6133 45.3595 41.6133 46.7274C41.6133 48.1038 41.0039 49.0413 39.9045 49.0413ZM47.5057 50.1322C48.9332 50.1322 49.9432 49.4291 50.233 48.3638L49.027 48.1464C48.7969 48.7643 48.2429 49.0797 47.5185 49.0797C46.4276 49.0797 45.6946 48.3723 45.6605 47.1109H50.3139V46.6592C50.3139 44.2942 48.8991 43.3694 47.4162 43.3694C45.5923 43.3694 44.3906 44.7586 44.3906 46.77C44.3906 48.8027 45.5753 50.1322 47.5057 50.1322ZM45.6648 46.1564C45.7159 45.2274 46.3892 44.422 47.4247 44.422C48.4134 44.422 49.0611 45.155 49.0653 46.1564H45.6648Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <g clipPath=\"url(#clip0_2183_35009)\">\n <path\n d=\"M22.3002 3.27948H14.25V11.3318H22.3002V3.27948ZM20.6609 9.66275H15.9186V4.91923H20.6609V9.66275Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M19.1081 6.47128H17.4688V8.11102H19.1081V6.47128Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M14.2773 24.7206H22.3275V16.7122H14.2773V24.7206ZM15.9166 18.3373H20.6589V23.0809H15.9166V18.3373Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M35.7147 17.5176H34.0754V23.081H32.4653V21.8366H30.826V23.0591H28.8281V24.6988H35.7147V17.5176Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M19.1081 19.8893H17.4688V21.529H19.1081V19.8893Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M35.7142 3.27948H27.6641V11.3318H35.7142V3.27948ZM34.0749 9.66275H29.318V4.91923H34.0603L34.0749 9.66275Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M32.5221 6.47128H30.8828V8.11102H32.5221V6.47128Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M22.3014 13.184H17.5664V14.8237H22.3014V13.184Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M15.9167 13.184H14.2773V14.8237H15.9167V13.184Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M30.041 13.184H23.9375V14.8237H30.041V13.184Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M35.7121 15.8778V13.1766H31.6797V14.8237H34.0728V15.8778H35.7121Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25.819 6.56622H24.1797V11.3024H25.819V6.56622Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25.819 3.27948H24.1797V4.91922H25.819V3.27948Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25.82 21.4338H27.0348V19.7941H25.82V16.7122H24.1953V24.7645H27.1958V23.0809H25.8346L25.82 21.4338Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M29.1874 19.5598H30.8267V18.3373H32.1587V16.7122H27.8555V18.352H29.1874V19.5598Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M33.2539 6.42268e-05V1.6398H37.3668V5.73182H39.0061V-0.00726318L33.2539 6.42268e-05Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M12.6408 1.63985H16.7391V0.00012207H11.0234V5.73188H12.6627L12.6408 1.63985Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M37.3678 26.3603H33.2695V28.0001H39.0071V22.261H37.3678V26.3603Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M12.6408 22.261H11.0234V28.0001H16.761V26.3603H12.6627L12.6408 22.261Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_2183_35009\">\n <rect\n width=\"28\"\n height=\"28\"\n fill=\"white\"\n transform=\"translate(11 0.00012207)\"\n />\n </clipPath>\n </defs>\n </svg>\n );\n};\nconst BarcodeSVG = () => {\n return (\n <svg\n width=\"52\"\n height=\"49\"\n viewBox=\"0 0 52 49\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.42951 46.0001H4.77468C6.80309 46.0001 7.71928 44.9902 7.71928 43.6521C7.71928 42.3013 6.77326 41.5385 5.9082 41.4916V41.4064C6.70934 41.2018 7.37837 40.6564 7.37837 39.5655C7.37837 38.2743 6.48349 37.2728 4.62553 37.2728H1.42951V46.0001ZM2.74627 44.8709V42.0754H4.69371C5.75053 42.0754 6.41104 42.7572 6.41104 43.5882C6.41104 44.3211 5.91246 44.8709 4.64684 44.8709H2.74627ZM2.74627 41.0484V38.3936H4.54457C5.5886 38.3936 6.08718 38.9433 6.08718 39.6677C6.08718 40.5115 5.39684 41.0484 4.51048 41.0484H2.74627ZM11.0836 46.145C12.166 46.145 12.7754 45.5953 13.0183 45.1052H13.0694V46.0001H14.3137V41.6535C14.3137 39.7487 12.8137 39.3694 11.774 39.3694C10.5893 39.3694 9.4984 39.8467 9.07227 41.0399L10.2697 41.3126C10.4572 40.8481 10.9345 40.4007 11.791 40.4007C12.6135 40.4007 13.0353 40.8311 13.0353 41.5726V41.6024C13.0353 42.0669 12.5581 42.0584 11.3819 42.1947C10.1419 42.3396 8.87198 42.6635 8.87198 44.1507C8.87198 45.4376 9.83931 46.145 11.0836 46.145ZM11.3606 45.1223C10.6404 45.1223 10.1206 44.7984 10.1206 44.1677C10.1206 43.4859 10.7257 43.243 11.4629 43.145C11.8762 43.0896 12.8564 42.9788 13.0396 42.7956V43.6393C13.0396 44.4149 12.4217 45.1223 11.3606 45.1223ZM16.0108 46.0001H17.285V42.003C17.285 41.1464 17.9455 40.5285 18.8489 40.5285C19.1131 40.5285 19.4114 40.5754 19.5137 40.6052V39.3865C19.3858 39.3694 19.1344 39.3567 18.9725 39.3567C18.2054 39.3567 17.5492 39.7913 17.3105 40.4944H17.2424V39.4547H16.0108V46.0001ZM26.5492 46.1322C28.0961 46.1322 29.0975 45.2032 29.2381 43.9291H27.998C27.8361 44.6365 27.2864 45.0541 26.5577 45.0541C25.4796 45.0541 24.785 44.155 24.785 42.7274C24.785 41.3254 25.4924 40.4433 26.5577 40.4433C27.3674 40.4433 27.8617 40.9547 27.998 41.5683H29.2381C29.1017 40.2473 28.0236 39.3694 26.5364 39.3694C24.6912 39.3694 23.498 40.7586 23.498 42.7572C23.498 44.7302 24.6486 46.1322 26.5492 46.1322ZM33.3578 46.1322C35.2029 46.1322 36.4089 44.7814 36.4089 42.7572C36.4089 40.7203 35.2029 39.3694 33.3578 39.3694C31.5126 39.3694 30.3066 40.7203 30.3066 42.7572C30.3066 44.7814 31.5126 46.1322 33.3578 46.1322ZM33.362 45.0626C32.1561 45.0626 31.5936 44.0101 31.5936 42.753C31.5936 41.5001 32.1561 40.4348 33.362 40.4348C34.5595 40.4348 35.122 41.5001 35.122 42.753C35.122 44.0101 34.5595 45.0626 33.362 45.0626ZM40.2814 46.128C41.4746 46.128 41.9434 45.3993 42.1735 44.9817H42.28V46.0001H43.5243V37.2728H42.2502V40.5157H42.1735C41.9434 40.1109 41.5087 39.3694 40.29 39.3694C38.709 39.3694 37.5456 40.618 37.5456 42.7402C37.5456 44.8581 38.6919 46.128 40.2814 46.128ZM40.5627 45.0413C39.4249 45.0413 38.8326 44.0399 38.8326 42.7274C38.8326 41.4277 39.4121 40.4518 40.5627 40.4518C41.6749 40.4518 42.2715 41.3595 42.2715 42.7274C42.2715 44.1038 41.6621 45.0413 40.5627 45.0413ZM48.1639 46.1322C49.5914 46.1322 50.6014 45.4291 50.8912 44.3638L49.6852 44.1464C49.4551 44.7643 48.9011 45.0797 48.1767 45.0797C47.0858 45.0797 46.3528 44.3723 46.3187 43.1109H50.9721V42.6592C50.9721 40.2942 49.5574 39.3694 48.0744 39.3694C46.2505 39.3694 45.0488 40.7586 45.0488 42.77C45.0488 44.8027 46.2335 46.1322 48.1639 46.1322ZM46.323 42.1564C46.3741 41.2274 47.0474 40.422 48.0829 40.422C49.0716 40.422 49.7193 41.155 49.7235 42.1564H46.323Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <g clipPath=\"url(#clip0_2183_35008)\">\n <path\n d=\"M47 9.00012H7V10.0001H47V9.00012Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M43 0.00012207H42V7.00012H43V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M43 12.0001H42V19.0001H43V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M41 12.0001H39V19.0001H41V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M41 0.00012207H39V7.00012H41V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M38 0.00012207H35V7.00012H38V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M38 12.0001H35V19.0001H38V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M33 12.0001H31V19.0001H33V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M33 0.00012207H31V7.00012H33V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M30 0.00012207H28V7.00012H30V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M30 12.0001H28V19.0001H30V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M27 0.00012207H26V7.00012H27V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M27 12.0001H26V19.0001H27V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25 0.00012207H24V7.00012H25V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M25 12.0001H24V19.0001H25V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M23 0.00012207H20V7.00012H23V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M23 12.0001H20V19.0001H23V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M18 0.00012207H16V7.00012H18V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M18 12.0001H16V19.0001H18V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M15 12.0001H14V19.0001H15V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M15 0.00012207H14V7.00012H15V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M13 0.00012207H10V7.00012H13V0.00012207Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <path\n d=\"M13 12.0001H10V19.0001H13V12.0001Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_2183_35008\">\n <rect\n width=\"40\"\n height=\"20\"\n fill=\"white\"\n transform=\"translate(7 0.00012207)\"\n />\n </clipPath>\n </defs>\n </svg>\n );\n};\nconst RFIDCardSVG = () => {\n return (\n <svg\n width=\"58\"\n height=\"49\"\n viewBox=\"0 0 58 49\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.27131 46.0001H2.58807V42.6976H4.37784C4.40767 42.6976 4.43324 42.6976 4.46307 42.6976L6.2358 46.0001H7.7358L5.80114 42.4675C6.87074 42.0711 7.40341 41.1805 7.40341 40.0086C7.40341 38.4021 6.40625 37.2728 4.3821 37.2728H1.27131V46.0001ZM2.58807 41.564V38.4021H4.24148C5.54119 38.4021 6.07812 39.02 6.07812 40.0086C6.07812 40.993 5.54119 41.564 4.25852 41.564H2.58807ZM10.3224 37.2728H9.00568V46.0001H10.3224V37.2728ZM12.2401 46.0001H13.5568V42.1947H17.2642V41.0655H13.5568V38.4064H17.652V37.2728H12.2401V46.0001ZM22.0966 46.0001C24.7557 46.0001 26.294 44.351 26.294 41.6237C26.294 38.9092 24.7557 37.2728 22.1861 37.2728H19.2713V46.0001H22.0966ZM20.5881 44.8496V38.4234H22.1051C24.0142 38.4234 24.9986 39.5655 24.9986 41.6237C24.9986 43.6905 24.0142 44.8496 22.0241 44.8496H20.5881ZM38.3558 40.1109C38.0575 38.2444 36.5959 37.1535 34.7507 37.1535C32.4922 37.1535 30.826 38.8453 30.826 41.6365C30.826 44.4277 32.4837 46.1194 34.7507 46.1194C36.6683 46.1194 38.0703 44.9177 38.3558 43.1919L37.0263 43.1876C36.8004 44.3041 35.8629 44.9177 34.7592 44.9177C33.2635 44.9177 32.1342 43.7714 32.1342 41.6365C32.1342 39.5186 33.2592 38.3552 34.7635 38.3552C35.8757 38.3552 36.8089 38.9817 37.0263 40.1109H38.3558ZM41.734 46.145C42.8164 46.145 43.4258 45.5953 43.6687 45.1052H43.7198V46.0001H44.9641V41.6535C44.9641 39.7487 43.4641 39.3694 42.4244 39.3694C41.2397 39.3694 40.1488 39.8467 39.7227 41.0399L40.9201 41.3126C41.1076 40.8481 41.5849 40.4007 42.4414 40.4007C43.2638 40.4007 43.6857 40.8311 43.6857 41.5726V41.6024C43.6857 42.0669 43.2085 42.0584 42.0323 42.1947C40.7923 42.3396 39.5224 42.6635 39.5224 44.1507C39.5224 45.4376 40.4897 46.145 41.734 46.145ZM42.011 45.1223C41.2908 45.1223 40.771 44.7984 40.771 44.1677C40.771 43.4859 41.3761 43.243 42.1133 43.145C42.5266 43.0896 43.5067 42.9788 43.69 42.7956V43.6393C43.69 44.4149 43.0721 45.1223 42.011 45.1223ZM46.6612 46.0001H47.9354V42.003C47.9354 41.1464 48.5959 40.5285 49.4993 40.5285C49.7635 40.5285 50.0618 40.5754 50.1641 40.6052V39.3865C50.0362 39.3694 49.7848 39.3567 49.6229 39.3567C48.8558 39.3567 48.1996 39.7913 47.9609 40.4944H47.8928V39.4547H46.6612V46.0001ZM53.4826 46.128C54.6758 46.128 55.1445 45.3993 55.3746 44.9817H55.4812V46.0001H56.7255V37.2728H55.4513V40.5157H55.3746C55.1445 40.1109 54.7099 39.3694 53.4911 39.3694C51.9102 39.3694 50.7468 40.618 50.7468 42.7402C50.7468 44.8581 51.8931 46.128 53.4826 46.128ZM53.7638 45.0413C52.6261 45.0413 52.0337 44.0399 52.0337 42.7274C52.0337 41.4277 52.6133 40.4518 53.7638 40.4518C54.8761 40.4518 55.4727 41.3595 55.4727 42.7274C55.4727 44.1038 54.8633 45.0413 53.7638 45.0413Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n <g clipPath=\"url(#clip0_2183_35036)\">\n <path\n d=\"M19.5998 19.9927H38.3927C40.7673 19.9927 41.9924 18.8037 41.9924 16.5215V3.47133C41.9924 1.1892 40.7673 0.00012207 38.3927 0.00012207H19.5998C17.2251 0.00012207 16 1.17443 16 3.47133V16.5215C16 18.8037 17.2251 19.9927 19.5998 19.9927ZM19.7283 17.8953C19.5129 17.9222 19.294 17.9003 19.0886 17.8313C18.8832 17.7623 18.6969 17.648 18.544 17.4973C18.3911 17.3466 18.2759 17.1635 18.2072 16.9623C18.1385 16.761 18.1181 16.547 18.1478 16.3369V3.64857C18.1197 3.43872 18.1411 3.22539 18.2104 3.02486C18.2796 2.82432 18.3949 2.6419 18.5474 2.49154C18.6999 2.34118 18.8856 2.22684 19.0903 2.15729C19.295 2.08774 19.5132 2.06481 19.7283 2.09024H38.2641C38.4792 2.06481 38.6975 2.08774 38.9022 2.15729C39.1068 2.22684 39.2925 2.34118 39.445 2.49154C39.5975 2.6419 39.7128 2.82432 39.7821 3.02486C39.8513 3.22539 39.8728 3.43872 39.8447 3.64857V16.3369C39.8728 16.5468 39.8513 16.7601 39.7821 16.9606C39.7128 17.1612 39.5975 17.3436 39.445 17.494C39.2925 17.6443 39.1068 17.7586 38.9022 17.8282C38.6975 17.8977 38.4792 17.9207 38.2641 17.8953H19.7283ZM24.5759 9.93366C24.9027 9.92527 25.2245 9.85291 25.5221 9.72085C25.8197 9.58879 26.0872 9.39974 26.3086 9.16488C26.5301 8.93003 26.701 8.65415 26.8112 8.3536C26.9215 8.05305 26.9689 7.73395 26.9505 7.41519C26.9123 6.96482 26.7407 6.53505 26.4565 6.1784C26.1723 5.82175 25.7879 5.55367 25.3502 5.40689C24.9125 5.26012 24.4405 5.24101 23.9919 5.3519C23.5433 5.46279 23.1375 5.69889 22.8241 6.03133C22.5106 6.36378 22.3031 6.77819 22.2269 7.22393C22.1506 7.66967 22.2089 8.12746 22.3947 8.54135C22.5805 8.95524 22.8858 9.3073 23.2731 9.55456C23.6605 9.80182 24.1132 9.93355 24.5759 9.93366ZM31.6091 6.54371H37.3112C37.4038 6.54577 37.4958 6.52936 37.5817 6.49548C37.6676 6.46159 37.7455 6.41095 37.8106 6.34665C37.8757 6.28235 37.9268 6.20575 37.9605 6.12153C37.9943 6.03731 38.0101 5.94725 38.007 5.85686C38.008 5.76802 37.9907 5.67989 37.9559 5.5978C37.9211 5.51571 37.8697 5.44134 37.8047 5.37922C37.7396 5.31709 37.6624 5.2685 37.5776 5.23634C37.4927 5.20419 37.4021 5.18914 37.3112 5.19214H31.6469C31.556 5.18914 31.4654 5.20419 31.3806 5.23634C31.2958 5.2685 31.2185 5.31709 31.1535 5.37922C31.0885 5.44134 31.037 5.51571 31.0022 5.5978C30.9674 5.67989 30.9501 5.76802 30.9511 5.85686C30.948 5.94725 30.9638 6.03731 30.9976 6.12153C31.0313 6.20575 31.0824 6.28235 31.1475 6.34665C31.2126 6.41095 31.2905 6.46159 31.3764 6.49548C31.4623 6.52936 31.5543 6.54577 31.6469 6.54371H31.6091ZM31.6091 10.6796H37.3112C37.4957 10.6796 37.6727 10.608 37.8032 10.4806C37.9337 10.3532 38.007 10.1803 38.007 10.0001C38.007 9.81992 37.9337 9.64709 37.8032 9.51967C37.6727 9.39224 37.4957 9.32065 37.3112 9.32065H31.6469C31.4624 9.32065 31.2854 9.39224 31.1549 9.51967C31.0245 9.64709 30.9511 9.81992 30.9511 10.0001C30.9511 10.1803 31.0245 10.3532 31.1549 10.4806C31.2854 10.608 31.4624 10.6796 31.6469 10.6796H31.6091ZM20.4392 14.8081H28.7126C28.796 14.8129 28.8794 14.7998 28.9571 14.7699C29.0347 14.74 29.1048 14.6939 29.1624 14.6349C29.22 14.5758 29.2637 14.5052 29.2905 14.428C29.3173 14.3508 29.3265 14.2688 29.3176 14.1877C29.3176 13.1907 27.8051 10.6501 24.5759 10.6501C21.3467 10.6501 19.8494 13.1907 19.8494 14.1877C19.8394 14.2678 19.8473 14.3489 19.8728 14.4256C19.8983 14.5023 19.9406 14.5726 19.9967 14.6317C20.0529 14.6908 20.1216 14.7372 20.198 14.7677C20.2745 14.7981 20.3567 14.8119 20.4392 14.8081ZM31.6091 14.8081H37.3112C37.4021 14.8111 37.4927 14.7961 37.5776 14.7639C37.6624 14.7318 37.7396 14.6832 37.8047 14.621C37.8697 14.5589 37.9211 14.4846 37.9559 14.4025C37.9907 14.3204 38.008 14.2322 38.007 14.1434C38.009 14.0529 37.9925 13.963 37.9584 13.8789C37.9243 13.7947 37.8734 13.718 37.8086 13.6534C37.7438 13.5887 37.6664 13.5373 37.581 13.5023C37.4956 13.4672 37.4039 13.4492 37.3112 13.4492H31.6469C31.5542 13.4492 31.4625 13.4672 31.3771 13.5023C31.2917 13.5373 31.2143 13.5887 31.1495 13.6534C31.0847 13.718 31.0338 13.7947 30.9997 13.8789C30.9656 13.963 30.9491 14.0529 30.9511 14.1434C30.9501 14.2322 30.9674 14.3204 31.0022 14.4025C31.037 14.4846 31.0885 14.5589 31.1535 14.621C31.2185 14.6832 31.2958 14.7318 31.3806 14.7639C31.4654 14.7961 31.556 14.8111 31.6469 14.8081H31.6091Z\"\n fill=\"white\"\n fillOpacity=\"0.35\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_2183_35036\">\n <rect\n width=\"26\"\n height=\"20\"\n fill=\"white\"\n transform=\"translate(16 0.00012207)\"\n />\n </clipPath>\n </defs>\n </svg>\n );\n};\n\nexport const AcLogoSVG = () => {\n return (\n <svg\n width=\"98\"\n height=\"50\"\n viewBox=\"0 0 98 50\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g opacity=\"0.25\">\n <path\n d=\"M66.8428 0.85791C66.2106 2.00303 65.7681 3.21177 65.3888 4.48413C64.883 4.54775 64.4405 4.61136 63.998 4.67498C63.5555 4.80222 63.0497 4.92945 62.6072 5.05669C61.8486 4.0388 61.0267 3.08453 60.0784 2.19388C59.4463 2.51197 58.8141 2.83006 58.1819 3.27539C58.3716 4.54774 58.6876 5.8201 59.1302 7.09246C58.7509 7.41055 58.4348 7.72864 58.1187 8.11034C57.8026 8.49205 57.4865 8.81014 57.2336 9.25547C56.0325 8.87376 54.7681 8.55567 53.5038 8.42843C53.1245 9.06461 52.8716 9.76441 52.6187 10.4006C53.5038 11.3549 54.5153 12.1819 55.59 12.8817C55.3371 13.8359 55.2107 14.7902 55.2739 15.7445C54.0727 16.1262 52.8716 16.6351 51.7969 17.2713C51.8601 17.9711 51.9865 18.7345 52.2394 19.4343C53.5038 19.6888 54.8313 19.7524 56.0957 19.6888C56.2854 20.1341 56.475 20.5794 56.7279 20.9611C56.9808 21.4065 57.2336 21.7882 57.4865 22.1699C56.7279 23.1878 56.0957 24.3329 55.5267 25.478C56.0325 25.987 56.5382 26.4959 57.1072 26.9412C58.2451 26.3687 59.383 25.6689 60.3945 24.8418C60.7738 25.0963 61.2164 25.3508 61.6589 25.5416C62.1014 25.7325 62.544 25.9233 62.9865 26.0506C62.9865 27.3229 63.1129 28.5953 63.3658 29.8676C64.0612 29.9949 64.8198 30.1221 65.5152 30.1221C66.1474 28.977 66.5899 27.7683 66.9692 26.4959C67.475 26.4323 67.9175 26.3687 68.36 26.305C68.8026 26.1778 69.3083 26.0506 69.7508 25.9233C70.5094 26.9412 71.3313 27.8955 72.2796 28.7861C72.9117 28.4681 73.5439 28.15 74.1761 27.7046C73.9864 26.4323 73.6704 25.1599 73.2278 23.8876C73.6071 23.5695 73.9232 23.2514 74.2393 22.8697C74.5554 22.488 74.8715 22.1699 75.1244 21.7246C76.3255 22.1063 77.5899 22.4244 78.8543 22.5516C79.2336 21.9154 79.4864 21.2156 79.7393 20.5794C78.8542 19.6252 77.8428 18.7981 76.7681 18.0983C77.0209 17.1441 77.1474 16.1898 77.0841 15.2355C78.2853 14.8538 79.4864 14.3449 80.5611 13.7087C80.4979 13.0089 80.3715 12.2455 80.1186 11.5457C78.8543 11.2912 77.5267 11.2276 76.2623 11.2912C76.0727 10.8459 75.883 10.4006 75.6301 10.0189C75.3773 9.57355 75.1244 9.19185 74.8715 8.81014C75.6301 7.79225 76.2623 6.64713 76.8313 5.50201C76.3255 4.99307 75.8198 4.48413 75.2508 4.0388C74.1129 4.61136 72.975 5.31116 71.9635 6.13819C71.5842 5.88372 71.1416 5.62925 70.6991 5.4384C70.2566 5.24754 69.8141 5.05669 69.3715 4.92945C69.3715 3.6571 69.2451 2.38474 68.9922 1.11238C68.2336 0.985147 67.5382 0.85791 66.8428 0.85791ZM68.929 9.25547C72.3428 10.8459 73.7968 14.8538 72.2796 18.2256C71.3945 20.1977 69.6244 21.5973 67.5382 22.0427C66.1474 22.2971 64.6934 22.1699 63.429 21.5973C60.0152 20.0069 58.5612 15.999 60.0784 12.6272C60.9635 10.6551 62.7336 9.25546 64.8198 8.81014C66.2106 8.49205 67.6646 8.6829 68.929 9.25547Z\"\n fill=\"white\"\n />\n <path\n d=\"M6.03298 22.8689L5.02149 29.2307H0.722656L5.4008 1.55695H11.0904L15.7054 29.2307H11.3433L10.395 22.8689H6.03298ZM8.1824 7.85511L6.66517 18.7974H9.76286L8.1824 7.85511Z\"\n fill=\"white\"\n />\n <path\n d=\"M23.861 1.49487L29.361 20.0713V1.49487H33.5334V29.1686H29.1081L23.4185 11.4193V29.1686H19.2461V1.49487H23.861Z\"\n fill=\"white\"\n />\n <path\n d=\"M50.2261 22.5524C50.2261 24.3337 49.5307 25.9878 48.3295 27.1965C47.1284 28.4688 45.4847 29.1686 43.7146 29.1686H37.2031V1.49487H43.7146C45.4847 1.49487 47.1284 2.19467 48.3295 3.46703C49.5939 4.67577 50.2261 6.39345 50.2261 8.11113V22.5524ZM41.3123 25.0971H43.7778C44.41 25.0971 45.0422 24.8426 45.4215 24.3973C45.864 23.952 46.1169 23.3158 46.1169 22.6796V8.17475C46.1169 7.53857 45.864 6.90239 45.4215 6.45707C44.979 6.01174 44.41 5.75727 43.7778 5.75727H41.3123V25.0971Z\"\n fill=\"white\"\n />\n <path\n d=\"M4.83183 49.0815C2.55598 49.0815 0.722656 47.2366 0.722656 45.01C0.722656 45.01 0.722656 45.01 0.722656 44.9464V35.5309C0.722656 33.2407 2.49276 31.3958 4.76862 31.3322C7.04447 31.2685 8.8778 33.1135 8.94101 35.4037C8.94101 35.4673 8.94101 35.4673 8.94101 35.5309V37.5031H6.28585V35.4673C6.28585 34.6403 5.59045 33.9405 4.76862 33.9405C4.38931 33.9405 4.01 34.0677 3.69391 34.3858C3.44104 34.6403 3.25138 35.022 3.25138 35.4673V44.9464C3.25138 45.7734 3.88356 46.4096 4.7054 46.4096C5.08471 46.4096 5.46402 46.2824 5.78011 45.9643C6.0962 45.7098 6.22263 45.3281 6.22263 44.8828V42.5289H8.94101V44.9464C8.94101 47.2366 7.10769 49.0815 4.83183 49.0815Z\"\n fill=\"white\"\n />\n <path\n d=\"M30.1227 48.8867H23.1055V31.6463H25.6974V46.342H30.1859L30.1227 48.8867Z\"\n fill=\"white\"\n />\n <path\n d=\"M48.0115 31.4559C50.2874 31.4559 52.1207 33.3009 52.1207 35.5911V45.0065C52.1207 47.2968 50.2874 49.1417 48.0115 49.1417C46.9368 49.1417 45.8621 48.6964 45.1035 47.933C44.3449 47.1696 43.9023 46.088 43.9023 45.0065V35.5911C43.9023 33.3009 45.7357 31.4559 48.0115 31.4559ZM49.4023 35.5275C49.4023 34.7004 48.7701 34.0643 47.9483 34.0643C47.569 34.0643 47.1897 34.1915 46.8736 34.5096C46.5575 34.7641 46.4311 35.1458 46.4311 35.5911V45.0065C46.4311 45.3883 46.5575 45.77 46.8736 46.0244C47.1265 46.2789 47.5058 46.4698 47.9483 46.4698C48.7701 46.4698 49.4023 45.8336 49.4023 45.0065V35.5275Z\"\n fill=\"white\"\n />\n <path\n d=\"M70.4451 49.0776C68.2325 49.0776 66.3992 47.2963 66.3359 45.0061V31.6463H68.8647V45.0061C68.8647 45.3878 68.9911 45.7695 69.3072 46.0876C69.5601 46.342 69.9394 46.5329 70.3819 46.5329C71.2037 46.5329 71.8359 45.8967 71.8359 45.0697V31.7099H74.5543V45.0697C74.5543 46.1512 74.1118 47.2327 73.3531 47.9961C72.5945 48.6959 71.583 49.1412 70.4451 49.0776Z\"\n fill=\"white\"\n />\n <path\n d=\"M97.0021 44.7516C97.0021 45.8331 96.5595 46.9146 95.8009 47.678C95.0423 48.4414 94.0308 48.8867 92.9561 48.8867H88.9102V31.6463H92.9561C94.0308 31.6463 95.1055 32.0916 95.8009 32.855C96.5595 33.6185 97.0021 34.7 97.0021 35.7815V44.7516ZM91.5021 46.342H93.0826C93.4619 46.342 93.8412 46.2148 94.094 45.8967C94.3469 45.6422 94.5366 45.2605 94.5366 44.8152V35.7815C94.5366 35.3998 94.4101 35.018 94.094 34.7C93.8412 34.4455 93.4619 34.2546 93.0826 34.2546H91.5021V46.342Z\"\n fill=\"white\"\n />\n <path\n d=\"M87.2555 1.49487L92.7555 20.0713V1.49487H96.9279V29.1686H92.5027L86.813 11.4193V29.1686H82.6406V1.49487H87.2555Z\"\n fill=\"white\"\n />\n </g>\n </svg>\n );\n};\n","import React from \"react\";\nimport { PropTypes } from \"prop-types\";\nimport { observer } from \"mobx-react-lite\";\nimport Dialog from \"@mui/material/Dialog\";\nimport DialogContent from \"@mui/material/DialogContent\";\nimport i18n from \"../../locales/i18n\";\nimport LoginForm from \"./loginForm\";\n\nconst LoginModal = ({\n open,\n title,\n subtitle,\n scope,\n redirectPath,\n onSuccess,\n onFailure,\n onCancel,\n storeSession,\n \"data-testid\": dataTestID,\n}) => {\n const getTitle = () => {\n return subtitle !== undefined\n ? subtitle\n : i18n.translations.loginCardSubtitle;\n };\n\n return (\n <Dialog\n open={open}\n onClose={onCancel}\n disableEscapeKeyDown\n data-testid={dataTestID || \"ac-sdk-login-modal\"}\n >\n <DialogContent>\n <LoginForm\n title={getTitle()}\n scope={scope}\n redirectPath={redirectPath}\n onSuccess={onSuccess}\n onFailure={onFailure}\n onCancel={onCancel}\n storeSession={storeSession}\n />\n </DialogContent>\n </Dialog>\n );\n};\n\nLoginModal.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n scope: PropTypes.string,\n redirectPath: PropTypes.string,\n onSuccess: PropTypes.func,\n onFailure: PropTypes.func,\n onCancel: PropTypes.func,\n storeSession: PropTypes.bool,\n};\n\nLoginModal.defaultProps = {\n redirectPath: \"/\",\n storeSession: false,\n};\n\nexport default observer(LoginModal);\n","import React, { useEffect, useState } from \"react\";\nimport { useModal } from \"use-modal-hook\";\n\nimport AndondCloudLoginModal from \"../components/loginModal\";\nimport { useAuthConfig } from \"../providers/authConfig\";\n\nconst LoginModal = ({ isOpen, title, subtitle, scope, redirectPath, onSuccess, onFailure, onCancel, storeSession = true}) => {\n const [open, setOpen] = useState(isOpen);\n\n useEffect(() => { setOpen(isOpen) }, [isOpen]);\n\n const handleSuccess = (session) => {\n if (onSuccess && typeof onSuccess === \"function\") {\n onSuccess(session);\n }\n setOpen(false);\n };\n\n const handleCancel = () => {\n if (onCancel && typeof onCancel === \"function\") {\n onCancel();\n }\n setOpen(false);\n };\n\n return (\n <AndondCloudLoginModal\n open={open}\n title={title}\n subtitle={subtitle}\n scope={scope}\n redirectPath={redirectPath}\n onSuccess={handleSuccess}\n onFailure={onFailure}\n onCancel={handleCancel}\n storeSession={storeSession}\n />\n );\n};\n\nconst useLogin = (scope, loginProps = {}) => {\n const { loginUrl, clientId, grantType, redirectUri, redirectPath: defaultRedirectPath } = useAuthConfig();\n const [showModal] = useModal(LoginModal, { scope, ...loginProps });\n const { redirectPath } = loginProps;\n const redirectUrl = encodeURIComponent(`${redirectUri}?next=${redirectPath || defaultRedirectPath}`);\n\n const buildLoginUrl = () => (\n `${loginUrl}?response_type=code&client_id=${clientId}&redirect_uri=${redirectUrl}&scope=${scope}`\n );\n\n if (grantType === \"password\") {\n return () => {\n showModal({ key: new Date().getTime() })\n };\n }\n return () => { window.location.assign(buildLoginUrl()) };\n};\n\nexport default useLogin;\n","import { makeStyles } from \"@mui/styles\";\n\nexport default makeStyles({\n root: ({ styles }) => styles,\n nav: {\n marginRight: 10,\n },\n user: {\n marginRight: 20,\n backgroundColor: \"rgba(0,0,0,0.05)\",\n borderRadius: 5,\n border: \"1px solid rgba(0,0,0, 0.25)\",\n },\n userInfo: {\n paddingLeft: \"1em\",\n },\n button: {\n color: \"white\",\n backgroundColor: \"transparent\",\n \"&:hover\": {\n backgroundColor: \"rgba(0,0,0,0.05)\",\n },\n },\n loginButton: {\n padding: \"6px 18px\",\n },\n logoutButton: {\n paddingRight: 18,\n },\n avatar: {\n paddingRight: \"0.5em\",\n },\n menu: ({ menuStyles }) => ({\n marginTop: 48,\n backgroundColor: \"rgba(0,0,0,0.5)\",\n ...menuStyles,\n }),\n popover: ({ menuDropdownStyles }) => ({\n minWidth: \"20%\",\n backgroundColor: \"#2d2d2d\",\n color: \"white\",\n ...menuDropdownStyles,\n }),\n});\n","import React, { useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { PropTypes } from \"prop-types\";\nimport { observer } from \"mobx-react-lite\";\nimport Button from \"@mui/material/Button\";\nimport ExitToAppIcon from \"@mui/icons-material/ExitToApp\";\nimport MenuIcon from \"@mui/icons-material/Menu\";\nimport sessionStore from \"../stores/sessionStore\";\nimport userStore from \"../stores/userStore\";\nimport i18n from \"../../locales/i18n\";\nimport AppBar from \"@mui/material/AppBar\";\nimport Box from \"@mui/material/Box\";\nimport Typography from \"@mui/material/Typography\";\nimport Toolbar from \"@mui/material/Toolbar\";\nimport IconButton from \"@mui/material/IconButton\";\nimport MenuItem from \"@mui/material/MenuItem\";\nimport Menu from \"@mui/material/Menu\";\nimport AccessTimeIcon from \"@mui/icons-material/AccessTime\";\nimport { useAuthConfig } from \"../providers/authConfig\";\nimport useStyles from \"./header.styles\";\n\nconst Header = ({\n position,\n showAcLogo,\n leadingText,\n title,\n navProps,\n userProps,\n menuProps,\n styles,\n \"data-testid\": dataTestID,\n}) => {\n const { baseUrl } = useAuthConfig();\n const { items: navItems } = {\n items: [],\n ...navProps,\n };\n const { show: showUserSection, showCompanyLogo } = {\n show: true,\n showCompanyLogo: false,\n ...userProps,\n };\n const {\n items: menuItems,\n buttonColor: menuButtonColor,\n dropdownStyles: menuDropdownStyles,\n styles: menuStyles,\n } = {\n items: [],\n dropdownStyles: {},\n styles: {},\n ...menuProps,\n };\n const [currentTime, setCurrentTime] = useState(new Date());\n const [menuAnchorEl, setMenuAnchorEl] = useState(null);\n const classes = useStyles({ styles, menuStyles, menuDropdownStyles });\n const navigate = useNavigate();\n\n useEffect(() => {\n const interval = setInterval(() => {\n setCurrentTime(new Date());\n }, 1000);\n return () => clearInterval(interval);\n });\n\n const handleMenuOpen = (event) => {\n setMenuAnchorEl(event.currentTarget);\n };\n\n const handleMenuClose = () => {\n setMenuAnchorEl(null);\n };\n\n const handleItemClick = (item) => {\n if (item.url) {\n navigate(item.url);\n } else if (item.action && typeof item.action === \"function\") {\n item.action();\n }\n handleMenuClose();\n };\n\n const renderUserCompanyLogo = () => {\n const logoUrl = companyLogoUrl();\n return <img src={logoUrl} alt=\"\" />;\n };\n\n const companyLogoUrl = () => {\n let logoUrl = \"\";\n const currentUser = userStore.getCurrentUserJS;\n if (currentUser === null) {\n return logoUrl;\n }\n const { company } = currentUser;\n logoUrl = company.logo_url;\n return `${baseUrl}/${logoUrl}`;\n };\n\n const handleLogout = async () => {\n await sessionStore.logout();\n\n navigate(\"/\");\n };\n\n const renderUserAvatar = () => {\n let { currentUser } = userStore;\n return (\n <Box display=\"inline-block\" className={classes.avatar}>\n {currentUser && currentUser.name}\n </Box>\n );\n };\n\n const renderNav = () => {\n return (\n navItems && (\n <Box display=\"flex\" className={classes.nav}>\n {navItems.map((item) => (\n <Button\n key={item.label}\n onClick={() => handleItemClick(item)}\n endIcon={item.icon}\n className={classes.button}\n >\n {item.label}\n </Button>\n ))}\n </Box>\n )\n );\n };\n\n const renderUser = () => {\n const currentUser = userStore.getCurrentUserJS;\n\n return (\n <Box display=\"flex\" className={classes.user}>\n {currentUser ? (\n <Box display=\"flex\" alignItems=\"center\" className={classes.userInfo}>\n {showCompanyLogo && renderUserCompanyLogo()}\n {renderUserAvatar()}\n <Button\n id=\"logout-button\"\n onClick={handleLogout}\n endIcon={<ExitToAppIcon />}\n className={`${classes.button} ${classes.logoutButton}`}\n data-testid=\"ac-sdk-header-logout-button\"\n >\n {i18n.translations.headerLogoutButton}\n </Button>\n </Box>\n ) : (\n <Button\n id=\"login-button\"\n onClick={() => navigate(\"/login\")}\n className={`${classes.button} ${classes.loginButton}`}\n data-testid=\"ac-sdk-header-login-button\"\n >\n {i18n.translations.headerLoginButton}\n </Button>\n )}\n </Box>\n );\n };\n\n const renderMenu = () => {\n return (\n menuItems && (\n <Box>\n <IconButton onClick={handleMenuOpen}>\n <MenuIcon\n style={menuButtonColor ? { color: menuButtonColor } : {}}\n />\n </IconButton>\n <Menu\n id=\"menu-appbar\"\n marginThreshold={0}\n anchorEl={menuAnchorEl}\n anchorOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n keepMounted\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n open={Boolean(menuAnchorEl)}\n onClose={handleMenuClose}\n className={classes.menu}\n PopoverClasses={{\n paper: classes.popover,\n }}\n >\n {menuItems.map((item) => (\n <MenuItem key={item.label} onClick={() => handleItemClick(item)}>\n {item.label}\n </MenuItem>\n ))}\n </Menu>\n </Box>\n )\n );\n };\n\n return (\n <AppBar\n position={position}\n elevation={0}\n className={classes.root}\n data-testid={dataTestID || \"ac-sdk-header\"}\n >\n <Toolbar variant=\"dense\">\n {showAcLogo && (\n <a href=\"/\">\n <img\n src=\"//static.andoncloud.com/shared/logo-white.svg\"\n alt=\"AndonCloud\"\n />\n </a>\n )}\n <Typography variant=\"subtitle1\">{leadingText}</Typography>\n <Typography variant=\"subtitle1\" align=\"center\" style={{ flexGrow: 1 }}>\n {title}\n </Typography>\n {renderNav()}\n {showUserSection && renderUser()}\n <AccessTimeIcon />\n <Typography variant=\"body1\" align=\"center\" style={{ padding: \"0 5px\" }}>\n {currentTime.toLocaleTimeString()}\n </Typography>\n {renderMenu()}\n </Toolbar>\n </AppBar>\n );\n};\n\nHeader.propTypes = {\n position: PropTypes.string,\n showAcLogo: PropTypes.bool,\n leadingText: PropTypes.string.isRequired,\n title: PropTypes.string,\n navProps: PropTypes.shape({\n items: PropTypes.any,\n }),\n userProps: PropTypes.shape({\n show: PropTypes.bool,\n showCompanyLogo: PropTypes.bool,\n }),\n menuProps: PropTypes.shape({\n items: PropTypes.any,\n buttonColor: PropTypes.string,\n dropdownStyles: PropTypes.any,\n styles: PropTypes.any,\n }),\n styles: PropTypes.any,\n};\n\nHeader.defaultProps = {\n navProps: {},\n userProps: {},\n menuProps: {},\n styles: {},\n};\n\nexport default observer(Header);\n","import React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport { PropTypes } from \"prop-types\";\nimport Header from \"./header\";\n\nconst Container = ({\n children,\n headerProps,\n styles,\n \"data-testid\": dataTestID,\n}) => {\n return (\n <Box\n display=\"flex\"\n flexDirection=\"column\"\n sx={styles}\n data-testid={dataTestID || \"ac-sdk-container\"}\n >\n <Header {...headerProps} />\n {children}\n </Box>\n );\n};\n\nContainer.propTypes = {\n children: PropTypes.any,\n headerProps: PropTypes.shape({\n position: PropTypes.string,\n showAcLogo: PropTypes.bool,\n leadingText: PropTypes.string.isRequired,\n title: PropTypes.string,\n navProps: PropTypes.shape({\n items: PropTypes.any,\n }),\n userProps: PropTypes.shape({\n show: PropTypes.bool,\n showCompanyLogo: PropTypes.bool,\n }),\n menuProps: PropTypes.shape({\n items: PropTypes.any,\n buttonColor: PropTypes.string,\n dropdownStyles: PropTypes.any,\n styles: PropTypes.any,\n }),\n styles: PropTypes.any,\n }),\n styles: PropTypes.any,\n};\n\nContainer.defaultProps = {\n headerProps: {},\n};\n\nexport default Container;\n","import React from \"react\";\n\nimport backdropPattern from \"../../images/backdropPattern.svg\";\n\nexport const FullscreenBackdrop = () => {\n return (\n <div\n style={{\n zIndex: -1,\n position: \"absolute\",\n top: \"0\",\n bottom: \"0\",\n right: \"0\",\n left: \"0\",\n width: \"100%\",\n height: \"100%\",\n overflow: \"hidden\",\n backgroundImage: `url(${backdropPattern})`,\n backgroundRepeat: \"no-repeat\",\n backgroundSize: \"cover\",\n }}\n />\n );\n};\n","import React from \"react\";\nimport { PropTypes } from \"prop-types\";\nimport Box from \"@mui/material/Box\";\nimport Card from \"@mui/material/Card\";\nimport CardContent from \"@mui/material/CardContent\";\nimport { observer } from \"mobx-react-lite\";\nimport i18n from \"../../locales/i18n\";\nimport Container from \"../components/container\";\nimport LoginForm from \"../components/loginForm\";\nimport { FullscreenBackdrop } from \"../components/fullscreenBackdrop\";\n\nconst LoginPage = ({ redirectPath }) => {\n const toggleLocale = () => {\n i18n.setLocale(i18n.locale === \"pl\" ? \"en\" : \"pl\");\n };\n\n return (\n <Container\n headerProps={{\n position: \"static\",\n leadingText: \"AndonCloud Software\",\n userProps: {\n show: false,\n },\n menuProps: {\n items: [\n {\n label: i18n.translations.changeLanguageText,\n action: toggleLocale,\n },\n ],\n buttonColor: \"white\",\n },\n }}\n >\n <Box\n display=\"flex\"\n height=\"calc(100vh - 48px)\"\n alignItems=\"center\"\n justifyContent=\"center\"\n position=\"relative\"\n >\n <FullscreenBackdrop />\n <Card style={{ zIndex: 1, backgroundColor: \"inherit\" }}>\n <CardContent>\n <LoginForm\n title={i18n.translations.loginFormText}\n redirectPath={redirectPath}\n />\n </CardContent>\n </Card>\n </Box>\n </Container>\n );\n};\n\nLoginPage.propTypes = {\n redirectPath: PropTypes.string,\n};\n\nLoginPage.defaultProps = {\n redirectPath: \"/\",\n};\n\nexport default observer(LoginPage);\n","import React from \"react\";\nimport { useNavigate } from \"react-router-dom\";\n\nimport useLogin from \"../hooks/useLogin\";\nimport LoginPage from \"../pages/LoginPage\";\nimport { useAuthConfig } from \"../providers/authConfig\";\n\nconst LoginRedirect = () => {\n const { grantType, redirectPath } = useAuthConfig();\n const login = useLogin(\"read write\");\n const navigate = useNavigate();\n\n if (grantType === \"password\") {\n return <LoginPage redirectPath={redirectPath} />;\n }\n // push before redirect to prevent going back to login route\n navigate(\"/\");\n // oauth2 authorization code flow redirect\n login();\n\n return null;\n};\n\nexport default LoginRedirect;\n","import React from \"react\";\nimport { BrowserRouter, Route, Routes } from \"react-router-dom\";\n\nimport AuthRedirect from \"./authRedirect\";\nimport LoginRedirect from \"./loginRedirect\";\n\nconst Router = ({ children }) => {\n return (\n <BrowserRouter>\n <Routes>\n {children}\n <Route exact path=\"/login\" element={<LoginRedirect />} />\n <Route path=\"/oauth2/redirect\" element={<AuthRedirect />} />\n </Routes>\n </BrowserRouter>\n );\n};\n\nexport default Router;\n","import React from \"react\";\nimport { Box, Card, CardContent } from \"@mui/material\";\nimport i18n from \"../../locales/i18n\";\nimport { FullscreenBackdrop } from \"./fullscreenBackdrop\";\n\nexport const NetworkError = ({ message }) => {\n return (\n <Box>\n <FullscreenBackdrop />\n <Card\n style={{\n backgroundColor: \"inherit\",\n background: \"linear-gradient(180deg, #393939 0%, #4A4A4A 100%)\",\n maxWidth: \"600px\",\n margin: \"200px auto\",\n }}\n >\n <CardContent style={{ minHeight: \"unset\" }}>\n <Box\n display=\"flex\"\n flexDirection=\"column\"\n alignItems=\"center\"\n justifyContent=\"center\"\n m=\"125px 80px\"\n >\n <h1\n style={{\n textAlign: \"center\",\n color: \"rgba(255, 255, 255, 0.6)\",\n fontFamily: \"Roboto\",\n }}\n >\n {i18n.translations.networkErrorHeader}\n </h1>\n <br />\n <p\n style={{\n textAlign: \"center\",\n color: \"rgba(255, 255, 255, 0.6)\",\n fontFamily: \"Roboto\",\n }}\n >\n {message}\n </p>\n </Box>\n </CardContent>\n </Card>\n </Box>\n );\n};\n","import React, { useEffect, useState } from \"react\";\nimport { Route } from \"react-router-dom\";\nimport { Toaster } from \"react-hot-toast\";\nimport { PropTypes } from \"prop-types\";\n\nimport CssBaseline from \"@mui/material/CssBaseline\";\nimport { ThemeProvider, createTheme } from \"@mui/material/styles\";\nimport { ModalProvider } from \"use-modal-hook\";\n\nimport { AuthConfigProvider } from \"../providers/authConfig\";\nimport sessionStore from \"../stores/sessionStore\";\nimport defaultTheme from \"../theme\";\nimport Loader from \"./loader\";\nimport Router from \"./router\";\nimport { NetworkError } from \"./networkError\";\nimport { observer } from \"mobx-react-lite\";\n\nconst App = observer(({ children, baseUrl, authProps, muiTheme }) => {\n const [appReady, setAppReady] = useState(false);\n const {\n enabled: authEnabled,\n clientId,\n redirectUri,\n } = {\n enabled: true,\n redirectPath: \"/\",\n ...authProps,\n };\n\n sessionStore.setAuthConfig({\n baseUrl,\n clientId,\n redirectUri,\n });\n global.andoncloud = { baseUrl };\n\n useEffect(() => {\n const recoverSession = async () => {\n if (authEnabled) {\n await sessionStore.recover();\n }\n };\n if (authEnabled) {\n recoverSession().then(() => setAppReady(true));\n } else {\n setAppReady(true);\n }\n }, [authEnabled]);\n\n return (\n <ThemeProvider theme={createTheme(muiTheme)}>\n <CssBaseline />\n <Toaster />\n <AuthConfigProvider config={{ baseUrl, ...authProps }}>\n {sessionStore.networkError ? (\n <NetworkError />\n ) : (\n appReady && (\n <Router>\n <Route\n path=\"*\"\n element={<ModalProvider>{children}</ModalProvider>}\n />\n </Router>\n )\n )}\n </AuthConfigProvider>\n </ThemeProvider>\n );\n});\n\nApp.propTypes = {\n children: PropTypes.any.isRequired,\n baseUrl: PropTypes.string.isRequired,\n authProps: PropTypes.shape({\n enabled: PropTypes.bool,\n loginUrl: PropTypes.string,\n redirectUri: PropTypes.string,\n redirectPath: PropTypes.string,\n clientId: PropTypes.string.isRequired,\n grantType: PropTypes.string,\n }),\n muiTheme: PropTypes.any,\n};\n\nApp.defaultProps = {\n authProps: {},\n muiTheme: defaultTheme,\n};\n\nexport default App;\n","import { useEffect, useState } from \"react\";\nimport toast from \"react-hot-toast\";\n\nimport { reaction, toJS } from \"mobx\";\n\nimport App from \"./app/components/app\";\nimport Container from \"./app/components/container\";\nimport useLogin from \"./app/hooks/useLogin\";\nimport sessionStore from \"./app/stores/sessionStore\";\nimport languageStore from \"./locales/i18n\";\n\nconst useLoginStatus = () => {\n const [loginStatus, setLoginStatus] = useState(sessionStore.loginStatus);\n\n useEffect(() => {\n return reaction(\n () => toJS(sessionStore.loginStatus),\n () => {\n setLoginStatus(sessionStore.loginStatus);\n }\n );\n }, []);\n\n return loginStatus;\n};\nconst logout = () => sessionStore.logout();\nconst setLocale = (locale) => languageStore.setLocale(locale);\n\nexport {\n App,\n Container,\n useLogin,\n useLoginStatus,\n logout,\n setLocale,\n toast as notify,\n};\n"],"names":["useState","useEffect","useMemo","keyframes","styled","createElement","forwardRef","memo","Fragment","setup","css","AuthConfigContext","createContext","AuthConfigProvider","children","config","React","useAuthConfig","useContext","defaultLocale","LanguageStore","locale","translations","commonPl","makeObservable","observable","setLocale","action","commonEn","acFetch","url","options","headers","sessionStore","requestHeaders","Object","assign","fetch","response","ok","status","removeSession","andoncloudFetch","callback","e","setNetworkError","message","AndoncloudFetch","setCallback","removeCallback","this","CookiesManager","recognizeRootDomain","rootDomain","host","window","location","hostname","port","length","subdomain","parts","split","join","get","key","Cookies","domain","set","value","remove","UserStore","currentUser","setCurrentUser","removeCurrentUser","deep","getCurrentUserJS","computed","toJS","Session","user","accessToken","tokenType","expiresIn","SessionAPI","setAuthConfig","baseUrl","clientId","redirectUri","authorize","credentials","formData","FormData","scope","code","username","password","append","fetchParams","method","body","session","then","getUserData","data","access_token","token_type","expires_in","json","toast","error","error_description","i18n","unexpectedErrorMessage","catch","authData","Authorization","id","companyId","company_id","roleId","role_id","email","name","signOut","SessionStore","loading","loginStatus","api","networkError","updateLoginStatus","authResponse","isLoggedIn","Boolean","storeSession","recover","restoreSession","logout","session_cookie","authHeaders","JSON","stringify","cookie","parse","userStore","createTheme","adaptV4Theme","props","MuiButton","variant","disableElevation","MuiLoadingButton","overrides","MuiBackdrop","root","marginTop","fontWeight","borderRadius","MuiCardHeader","textAlign","color","background","subheader","MuiPaper","rounded","MuiCard","boxShadow","MuiCardContent","maxWidth","minHeight","minWidth","paddingBottom","MuiDialogTitle","MuiDialogContent","padding","MuiDialogContentText","MuiFormControl","alignItems","MuiOutlinedInput","borderColor","notchedOutline","input","typography","button","textTransform","palette","primary","light","main","dark","contrastText","secondary","useQueryParams","URLSearchParams","useLocation","search","AuthRedirect","queryParams","nextPath","Navigate","LoginForm","redirectPath","onSuccess","onFailure","onCancel","title","dataTestID","setUsername","setPassword","navigate","useNavigate","authorizeUser","onScan","attachTo","document","suffixKeyCodes","reactToPaste","sCode","_","detachFrom","handleCancel","event","handleSubmit","preventDefault","handleChangeForUsername","target","handleChangeForPassword","Box","Typography","gridGap","FormControl","TextField","loginCardUsernameHint","loginCardPasswordHint","LoadingButton","loginCardSubmitButton","Button","loginCardCancelButton","filter","propTypes","PropTypes","string","func","bool","defaultProps","observer","QRCodeSVG","BarcodeSVG","RFIDCardSVG","AcLogoSVG","LoginModal","open","subtitle","getTitle","undefined","loginCardSubtitle","isOpen","setOpen","handleSuccess","useLogin","loginProps","loginUrl","grantType","defaultRedirectPath","useModal","showModal","redirectUrl","encodeURIComponent","buildLoginUrl","Date","getTime","makeStyles","styles","nav","marginRight","backgroundColor","border","userInfo","paddingLeft","loginButton","logoutButton","paddingRight","avatar","menu","menuStyles","popover","menuDropdownStyles","Header","position","showAcLogo","leadingText","navProps","userProps","menuProps","items","navItems","show","showCompanyLogo","showUserSection","dropdownStyles","menuItems","menuButtonColor","buttonColor","currentTime","setCurrentTime","menuAnchorEl","setMenuAnchorEl","classes","useStyles","interval","setInterval","clearInterval","handleMenuOpen","currentTarget","handleMenuClose","handleItemClick","item","renderUserCompanyLogo","logoUrl","companyLogoUrl","company","logo_url","handleLogout","renderUserAvatar","renderNav","map","label","icon","renderUser","headerLogoutButton","headerLoginButton","renderMenu","vertical","horizontal","paper","flexGrow","toLocaleTimeString","isRequired","shape","any","Container","headerProps","FullscreenBackdrop","zIndex","top","bottom","right","left","width","height","overflow","backgroundImage","backdropPattern","backgroundRepeat","backgroundSize","LoginPage","toggleLocale","changeLanguageText","loginFormText","LoginRedirect","login","Router","BrowserRouter","Routes","Route","NetworkError","Card","margin","CardContent","fontFamily","networkErrorHeader","App","authProps","muiTheme","appReady","setAppReady","enabled","authEnabled","global","andoncloud","recoverSession","ThemeProvider","ModalProvider","defaultTheme","useLoginStatus","setLoginStatus","reaction","languageStore"],"mappings":"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"}