{"version":3,"file":"static/js/2044.5d55110a.chunk.js","mappings":"qNA2BO,MAAMA,EAAiBA,KAC5B,MAAOC,EAAkBC,IAAuBC,EAAAA,EAAAA,WAAS,GACnDC,GAAgBC,EAAAA,EAAAA,MAEhB,EAAEC,IAAMC,EAAAA,EAAAA,MAER,cAAEC,IAAkBC,EAAAA,EAAAA,GAAiB,CACzCC,YAAY,EACZC,SAAU,KACVC,SAAU,QAGZC,EAAAA,EAAAA,YAAU,KAAO,IAADC,EACG,QAAjBA,EAAIC,OAAOC,cAAM,IAAAF,GAAbA,EAAeG,MACjBF,OAAOC,OAAOC,KAAKC,OAAO,CACxBC,iBAAmBC,IACbA,GAAQA,EAAKC,YAAcD,EAAKE,WAClCpB,GAAoB,EACtB,GAGN,GACC,IAEH,MAAMqB,EAAeA,KAAO,IAADC,EACR,QAAjBA,EAAIT,OAAOC,cAAM,IAAAQ,GAAbA,EAAeP,OACjBF,OAAOC,OAAOC,KAAKQ,SACnBvB,GAAoB,GACtB,EAgCIwB,EAAiBA,CAACd,EAAkBD,KAAsB,IAADgB,EAC5C,QAAjBA,EAAIZ,OAAOC,cAAM,IAAAW,GAAbA,EAAeV,OACjBM,IACAR,OAAOC,OAAOC,KAAKC,OAAO,CACxBC,iBAAmBC,IACjB,GAAIA,GAAQA,EAAKC,WAAY,CAC3B,MAAMO,EAASC,KAAKC,UAAU,CAC5BlB,SAAUA,EACVD,SAAUA,IAGZI,OAAOC,OAAOC,KAAKc,KAAK,CAAEH,OAAQA,GACpC,GAEFI,OAAQ,WAEZ,EAmCF,MAAO,CACLT,eACAU,gBAlFsBA,KAAO,IAADC,EACX,QAAjBA,EAAInB,OAAOC,cAAM,IAAAkB,GAAbA,EAAejB,MACjBF,OAAOC,OAAOC,KAAKC,OAAO,CACxBC,iBAAmBC,IACbA,GAAQA,EAAKC,YAAcD,EAAKE,WAClCP,OAAOC,OAAOC,KAAKkB,IAAI,CACrBhB,iBAAmBiB,IACjB,GAAIA,GAAOA,EAAIC,SAAWD,EAAIR,OAAQ,CACpC,MAAMU,EAAcT,KAAKU,MAAMH,EAAIR,QAC7BhB,EAAW0B,EAAY1B,SACvBD,EAAW2B,EAAY3B,SAEzBC,GAAYD,IACd6B,EAAAA,EAAAA,IAAM,CAAE5B,WAAUD,YAAYH,EAElC,MAAW4B,GAAOA,EAAIK,MACpBrC,GAGF,EAEFsC,iBAAkB,QAEtB,GAGN,EAyDAhB,iBACAzB,mBACA0C,sBArC4BA,CAAC/B,EAAkBD,KAA4B,IAADiC,EACzD,QAAjBA,EAAI7B,OAAOC,cAAM,IAAA4B,GAAbA,EAAe3B,MACjBF,OAAOC,OAAOC,KAAKC,OAAO,CACxBC,iBAAmBC,IACbA,GAAQA,EAAKC,aACfwB,EAAAA,EAAAA,GAAW,CACTC,MAAMC,EAAAA,EAAAA,IAAU,mBACZzC,EAAE,qCACFA,EAAE,yCACN0C,KAAM,CACJC,IAAK,UACLC,MAAMH,EAAAA,EAAAA,IAAU,mBAAqB,SAAW,aAChDI,MAAO,WAETC,WAAY,CACVN,KAAMxC,EAAE,cACR+C,QAASA,KACP3B,EAAed,EAAUD,EAAS,GAGtC2C,UAAW,CACTR,KAAMxC,EAAE,mBAEViD,UAAU,GAEd,EAEFvB,OAAQ,UAEZ,EASD,C,wOCxIH,MAAMwB,EAEF,CAAC,EAEQC,EAAiCA,KAC5CC,OAAOC,KAAKH,GAAWI,SAASC,IAC9BC,aAAaN,EAAUK,WAEhBL,EAAUK,EAAQ,GACzB,EAGSE,EAA2BA,CACtCC,EACAC,MAmBAC,EAAAA,EAAAA,IACEC,EAAAA,EAAaC,+BAA+BC,eAC5CC,IAA0D,IAAzD,QAAEC,GAAiDD,EAClD,MAAME,EAAQd,OAAOe,OAAOF,GAAW,CAAC,GAExC,GAAS,OAALC,QAAK,IAALA,GAAAA,EAAOE,OAAQ,CACjB,MAAMC,EAAQC,KAAKC,OAAOL,GAE1Bd,OAAOoB,QAAQP,GAAW,CAAC,GAAGX,SAAQmB,IAAkB,IAAhBC,EAAKC,GAAKF,EAChDE,IAASN,GACPX,EAAQgB,KACPxB,EAAUwB,IA5BDE,EAACF,EAAaC,MAChC,SAASE,EAAYlB,EAAsBJ,GACrCA,GAAW,EACbI,IAEAT,EAAUwB,GAAOI,YAAW,WAC1BD,EAAYlB,EAAUJ,EAAUwB,EAAAA,GAClC,GAAGT,KAAKC,IAAIhB,EAASwB,EAAAA,IAEzB,CAEAF,EAAY,WACVlB,EAASe,GACTvB,GACF,GAAGwB,EAAOK,EAAAA,GAAyBC,EAAAA,GAAmB,EAe9CL,CAAYF,EAAKC,EAAK,GAE5B,IAEH,E,2JCXI,MAAMO,EAAkB,WAGf,IAFdC,EAAUC,UAAAhB,OAAA,QAAAiB,IAAAD,UAAA,IAAAA,UAAA,GACVE,EAAmBF,UAAAhB,OAAA,QAAAiB,IAAAD,UAAA,IAAAA,UAAA,GAEnB,MAAMG,GAAUC,EAAAA,EAAAA,MACVC,GAAWC,EAAAA,EAAAA,MACX5F,GAAgBC,EAAAA,EAAAA,KAChB4F,GAAaC,EAAAA,EAAAA,IAAYC,EAAAA,IACzBC,GAAgBF,EAAAA,EAAAA,IAAYG,EAAAA,IAE5BC,GAAyBJ,EAAAA,EAAAA,KAC7B5B,IAAA,IAAC,OAAEiC,GAA8CjC,EAAA,OAAKiC,EAAOC,WAAW,IAGpEC,GAAiBP,EAAAA,EAAAA,IAAYQ,EAAAA,KAC7B,cAAEC,IAAkBC,EAAAA,EAAAA,KACpBC,GAAqBX,EAAAA,EAAAA,IAAYY,EAAAA,KAEjC,gBAAE7E,IAAoBjC,EAAAA,EAAAA,MACtB,qBAAE+G,IAAyBC,EAAAA,EAAAA,KAE3BtG,GAAauG,EAAAA,EAAAA,UAAQ,MACiB,MAArB,OAAbN,QAAa,IAAbA,OAAa,EAAbA,EAAeO,iBAAsC,OAAdT,QAAc,IAAdA,GAAAA,EAAgBU,eAE3DN,GACH,CACY,OAAbF,QAAa,IAAbA,OAAa,EAAbA,EAAeO,eACfL,EACc,OAAdJ,QAAc,IAAdA,OAAc,EAAdA,EAAgBU,gBAGZ,UAAEC,IAAcC,EAAAA,EAAAA,KAEhBC,GAAYC,EAAAA,EAAAA,cACfC,IACqC,CAClC,gCACA,mCAGmB5D,SAAQ6D,IAC3B,MAAMC,EAAiBC,EAAAA,EAAaC,SAClCC,EAAAA,EAAAA,GAAe,UAAWJ,IAGxBA,KACFK,EAAAA,EAAAA,GAAiBJ,EAAgBF,GACjCG,EAAAA,EAAaI,YAAWF,EAAAA,EAAAA,GAAe,UAAWJ,IACpD,IAGFD,EAASQ,uBACPC,EAAAA,EAAeC,SACbL,EAAAA,EAAAA,GAAe,UAAW,yBAC1B,GAAGL,EAASQ,yBAGhBjC,GACEoC,EAAAA,EAAAA,IACEC,EAAAA,EAAAA,IAAYZ,IACZa,EAAAA,EAAAA,KAAgB,IAChBC,EAAAA,EAAAA,KAAed,EAASe,kBAAoB,GAAKhD,EAAAA,OAIrDiD,EAAAA,EAAAA,KAEIC,EAAAA,GAAcC,6BAChBC,EAAAA,EAAAA,MAGFC,EAAAA,EAAAA,GACE,CAAEC,KAAM,SAAUC,MAAOtB,EAASuB,SAClCC,EAAAA,GAEFrB,EAAAA,EAAaI,YACXF,EAAAA,EAAAA,GAAe,UAAW,wBAC3B,GAEH,CAAC9B,KAGHlF,EAAAA,EAAAA,YAAU,KAIR,IAFG4E,GAAcwD,QAAoB,OAAbtC,QAAa,IAAbA,OAAa,EAAbA,EAAeuC,gBAAiB,GAE7B,CACzB,IAAKjD,EAGH,YAFAxC,IAKFM,EACE,CACEoF,uBAAwBF,QAAoB,OAAbtC,QAAa,IAAbA,OAAa,EAAbA,EAAeyC,mBAAoB,GAClEC,wBAAyBJ,QACV,OAAbtC,QAAa,IAAbA,OAAa,EAAbA,EAAe2C,oBAAqB,GAEtCC,yBAA0BN,QACX,OAAbtC,QAAa,IAAbA,OAAa,EAAbA,EAAe6C,qBAAsB,KAGxCX,IACCzI,GAAc,GAEd2F,GACE0D,EAAAA,EAAAA,IAAiC,CAC/BZ,OACAa,QAAQ,IAEX,GAGP,IACC,CAAC/C,EAAeV,EAAYR,IAE/B,MAAMkE,EAAaA,MACjBC,EAAAA,EAAAA,MACA7D,GAAS8D,EAAAA,EAAAA,OACT9D,GAAS+D,EAAAA,EAAAA,IAAyB,OAGhCrB,EAAAA,GAAcsB,+BACbtB,EAAAA,GAAcuB,aAEfjD,GACF,GAGI,WAAEkD,IAAeC,EAAAA,EAAAA,KAEjBC,GAAS5C,EAAAA,EAAAA,cACb,WAAyB,IAAxBjF,EAAWoD,UAAAhB,OAAA,QAAAiB,IAAAD,UAAA,GAAAA,UAAA,GAAG,KACb,MAAM0E,EAAcvI,KAAKU,MACvBoF,EAAAA,EAAaC,SAAQC,EAAAA,EAAAA,GAAe,UAAW,eAG3CwC,EAAuB,OAAXD,QAAW,IAAXA,OAAW,EAAXA,EAAaE,WACzBC,EAAqB7J,GAAc0G,EACnCoD,EACJlI,GACAmI,IAAAA,MAAS5E,EAAQ6E,SAASC,OAAQ,CAChCC,mBAAmB,IAGjBC,EAA0B,OAAbzE,QAAa,IAAbA,OAAa,EAAbA,EAAe0E,MAChCC,GAASA,GAA4B,eAAnBA,EAAMC,WAGpBC,KACJJ,IACAA,EAAWK,SAASC,mBACmB,MAAvCN,EAAWK,SAASE,gBACuB,MAA3CP,EAAWK,SAASG,oBAGtB,GAAIb,EAAQF,WAAY,CACtB,MAAMgB,EAAiB,CACrBhB,WAAYE,EAAQF,YAGtBzE,EAAQ0F,SACNC,EAAAA,EAAAA,IAAS,CAAElB,gBAAY3E,EAAWoD,aAASpD,MAG7C8F,EAAAA,EAAAA,IACEH,EACAhE,EACA2C,GACA,IAAMN,KACNsB,GACA,EAEJ,MAAWV,GACTkB,EAAAA,EAAAA,IACE,CAAErE,UAAWA,EAAWkD,WAAYD,GACpC/C,EACA2C,GACA,IAAMN,KACNsB,EACArF,GAEOyE,IACToB,EAAAA,EAAAA,IACErB,EACA9C,EACA2C,GACA,IAAMN,KACNsB,EACArF,GAIAK,GAAcoE,GAAaE,GACzBC,EAAQhI,OAASgI,EAAQkB,aAC3BC,EAAAA,EAAAA,MACA9F,EAAQ0F,SAAQK,EAAAA,EAAAA,IAAY,CAAEC,SAAU,IAAKC,QAAS,SAGpDtB,EAAQuB,UAAYvB,EAAQsB,YAC9BH,EAAAA,EAAAA,MACA9F,EAAQ0F,SAAQK,EAAAA,EAAAA,IAAY,CAAEC,SAAU,IAAKrJ,MAAO,OAG1D,GACA,CAACyD,EAAYqB,EAAW5G,EAAY0F,IAwBtC,OArBAvF,EAAAA,EAAAA,YAAU,KACR,GAAIuF,GAAiBE,IAAkBb,EAAY,CAAC,IAAD3E,EACjD,MAAMkL,GAAgBjJ,EAAAA,EAAAA,IAAU,wBAEf,QAAbjC,EAAAC,OAAOC,cAAM,IAAAF,GAAbA,EAAeG,MAAQ+K,EACzBjL,OAAOC,OAAOC,KAAKC,OAAO,CACxBC,iBAAmBC,IACbA,GAAQA,EAAKC,YAAcD,EAAKE,UAClCW,IAEAkI,GACF,EAEFnI,OAAQ,WAGVmI,GAEJ,IACC,CAAC7D,EAAeF,IAEZ+D,CACT,C","sources":["components/Login/hooks/useFaceIdLogin.tsx","services/account/get-remaining-session-duration.ts","hooks/auth/useRestoreLogin.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { getCookie } from 'utils/bom-dom-manipulation/cookies';\nimport { login } from 'services/authentication';\nimport { useLoginCallback } from 'components/Login/hooks/useLoginCallback';\nimport { useAccountLogout } from 'hooks/auth/useAccountLogout';\nimport { modalAlert } from 'hooks/usePopup';\n\ntype ReturnType = {\n removeSecret: () => void;\n loginWithFaceId: () => void;\n setCredentials: (username: string, password: string) => void;\n showConfirmationPopup: (username: string, password: string) => void;\n credentialsExist: boolean;\n};\n\nexport type TStatus = {\n hasTouchId: boolean;\n hasSecret: boolean;\n};\n\ntype TGetAuth = {\n success: boolean;\n secret: string;\n error: string;\n};\n\nexport const useFaceIdLogin = (): ReturnType => {\n const [credentialsExist, setCredentialsExist] = useState(false);\n const accountLogout = useAccountLogout();\n\n const { t } = useTranslation();\n\n const { loginCallback } = useLoginCallback({\n rememberMe: false,\n password: null,\n username: null\n });\n\n useEffect(() => {\n if (window.median?.auth) {\n window.median.auth.status({\n callbackFunction: (data: TStatus) => {\n if (data && data.hasTouchId && data.hasSecret) {\n setCredentialsExist(true);\n }\n }\n });\n }\n }, []);\n\n const removeSecret = () => {\n if (window.median?.auth) {\n window.median.auth.delete();\n setCredentialsExist(false);\n }\n };\n\n const loginWithFaceId = () => {\n if (window.median?.auth) {\n window.median.auth.status({\n callbackFunction: (data: TStatus) => {\n if (data && data.hasTouchId && data.hasSecret) {\n window.median.auth.get({\n callbackFunction: (res: TGetAuth) => {\n if (res && res.success && res.secret) {\n const credentials = JSON.parse(res.secret);\n const username = credentials.username;\n const password = credentials.password;\n\n if (username && password) {\n login({ username, password }, loginCallback);\n }\n } else if (res && res.error) {\n accountLogout();\n } else {\n accountLogout();\n }\n },\n callbackOnCancel: 'true'\n });\n }\n }\n });\n }\n };\n\n const setCredentials = (username: string, password: string) => {\n if (window.median?.auth) {\n removeSecret();\n window.median.auth.status({\n callbackFunction: (data: TStatus) => {\n if (data && data.hasTouchId) {\n const secret = JSON.stringify({\n username: username,\n password: password\n });\n\n window.median.auth.save({ secret: secret });\n }\n },\n prompt: 'PROMPT'\n });\n }\n };\n\n const showConfirmationPopup = (username: string, password: string): void => {\n if (window.median?.auth) {\n window.median.auth.status({\n callbackFunction: (data: TStatus) => {\n if (data && data.hasTouchId) {\n modalAlert({\n text: getCookie('isIOSWrapperApp')\n ? t('account.faceIdConfirmationInfoIos')\n : t('account.faceIdConfirmationInfoAndroid'),\n icon: {\n lib: 'account',\n name: getCookie('isIOSWrapperApp') ? 'FaceId' : 'Biometrics',\n theme: 'colored'\n },\n successBtn: {\n text: t('account.ok'),\n onClick: () => {\n setCredentials(username, password);\n }\n },\n cancelBtn: {\n text: t('account.cancel')\n },\n closable: false\n });\n }\n },\n prompt: 'PROMPT'\n });\n }\n };\n\n return {\n removeSecret,\n loginWithFaceId,\n setCredentials,\n credentialsExist,\n showConfirmationPopup\n };\n};\n","import {\n MILLISECONDS_IN_SECOND,\n SECONDS_PER_MINUTE,\n setTimeOutGreatestValue\n} from 'utils/constants/dateInfo/time-numbers';\nimport { CommandNames } from 'utils/constants/swarm/swarm-command-names';\nimport { getGenericAccountCommand } from 'services/account-settings';\n\nconst durations: {\n [key: string]: ReturnType;\n} = {};\n\nexport const clearRemainingSessionDurations = (): void => {\n Object.keys(durations).forEach((timeout: string) => {\n clearTimeout(durations[timeout]);\n\n delete durations[timeout];\n });\n};\n\nexport const remainingSessionDuration = (\n configs: { [key: string]: number },\n callback: (type: string) => void\n): void => {\n const createTimer = (key: string, time: number) => {\n function longTimeout(callback: () => void, timeout: number) {\n if (timeout <= 0) {\n callback();\n } else {\n durations[key] = setTimeout(function () {\n longTimeout(callback, timeout - setTimeOutGreatestValue);\n }, Math.min(timeout, setTimeOutGreatestValue));\n }\n }\n\n longTimeout(function () {\n callback(key);\n clearRemainingSessionDurations();\n }, time * MILLISECONDS_IN_SECOND * SECONDS_PER_MINUTE);\n };\n\n getGenericAccountCommand(\n CommandNames.GET_REMAINING_SESSION_DURATION.toUpperCase(),\n ({ details }: { details: { [key: string]: number } }) => {\n const times = Object.values(details || {});\n\n if (times?.length) {\n const timer = Math.min(...times);\n\n Object.entries(details || {}).forEach(([key, time]) => {\n time === timer &&\n configs[key] &&\n !durations[key] &&\n createTimer(key, time);\n });\n }\n }\n );\n};\n","import { useCallback, useEffect, useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useHistory } from 'react-router-dom';\nimport qs from 'qs';\nimport { checkAndStoreFcmToken } from 'utils/account/push-notifications';\nimport { getCookie } from 'utils/bom-dom-manipulation/cookies';\nimport LocalStorage from 'utils/bom-dom-manipulation/local-storage';\nimport { getCookieLoginCredentials } from 'utils/bom-dom-manipulation/login-credentials';\nimport { sendPostMessage } from 'utils/bom-dom-manipulation/send-post-message-to-iframe';\nimport SessionStorage from 'utils/bom-dom-manipulation/session-storage';\nimport { VAIX_IFRAME_ID } from 'utils/constants/app/iframe-ids';\nimport { Key } from 'utils/constants/app/local-storage-keys';\nimport { SECONDS_PER_MINUTE } from 'utils/constants/dateInfo/time-numbers';\nimport SpringConfigs from 'utils/constants/swarm/spring-configs';\nimport { storageKeyName } from 'utils/generic/storage-key-name';\nimport { appendCustomCode } from 'utils/other/customCode';\nimport { ProfileData } from 'interfaces/authentication';\nimport {\n clearRemainingSessionDurations,\n remainingSessionDuration\n} from 'services/account/get-remaining-session-duration';\nimport { removeUserFromStorage, restoreLogin } from 'services/authentication';\nimport { FavoritePersonalization } from 'services/favorite-personalization';\nimport { getUserAllNotifications } from 'services/sportsbook/notifications';\nimport { useAccountLogout } from './useAccountLogout';\nimport { useUpdateUser } from './useUpdateUser';\nimport { TStatus, useFaceIdLogin } from 'components/Login/hooks/useFaceIdLogin';\nimport {\n addQuery,\n saveCurrentLocation,\n updateQuery\n} from 'components/QueryRoute';\nimport { useFetchAccountParams } from 'newhooks/account/useFetchAccountParams';\nimport { setRemainingSessionDurationModal } from 'store/actions/app-data';\nimport { batchActions } from 'store/actions/batch';\nimport {\n removeUserData,\n setClientGamingStateInfo,\n setLoginLimit,\n setUserData,\n setUserLoggedIn\n} from 'store/actions/user-data';\nimport { getRegFieldData } from 'store/selectors/app-data';\nimport { getPartnerConfigs } from 'store/selectors/socket';\nimport { getIsLoggedIn, getRememberMe } from 'store/selectors/user-data';\n\nexport const useRestoreLogin = (\n isFunction = false,\n refreshWhenLoggedIn = false\n): Function => {\n const history = useHistory();\n const dispatch = useDispatch();\n const accountLogout = useAccountLogout();\n const isLoggedIn = useSelector(getIsLoggedIn);\n const regFieldsData = useSelector(getRegFieldData);\n // @Todo FIX_MY_TYPE create selector with reselect @todo-account\n const shouldRestore: boolean = useSelector(\n ({ socket }: { socket: { isConnected: boolean } }) => socket.isConnected\n );\n\n const partnerConfigs = useSelector(getPartnerConfigs);\n const { accountParams } = useFetchAccountParams();\n const rememberMeSelector = useSelector(getRememberMe);\n\n const { loginWithFaceId } = useFaceIdLogin();\n const { clearDataFromStorage } = FavoritePersonalization();\n\n const rememberMe = useMemo(() => {\n return +accountParams?.rememberMeTick === 0 || partnerConfigs?.single_login\n ? false\n : rememberMeSelector;\n }, [\n accountParams?.rememberMeTick,\n rememberMeSelector,\n partnerConfigs?.single_login\n ]);\n\n const { jwe_token } = getCookieLoginCredentials();\n\n const storeUser = useCallback(\n (userData: ProfileData) => {\n const customCodeAfterLogin: Key[] = [\n 'CUSTOM_CODE_REG_AFTER_REFRESH',\n 'CUSTOM_CODE_LOGIN_AFTER_REFRESH'\n ];\n\n customCodeAfterLogin.forEach(elem => {\n const elemCustomCode = LocalStorage.getItem(\n storageKeyName('account', elem)\n );\n\n if (elem) {\n appendCustomCode(elemCustomCode, userData);\n LocalStorage.removeItem(storageKeyName('account', elem as Key));\n }\n });\n\n userData.active_time_in_casino &&\n SessionStorage.setItem(\n storageKeyName('account', 'ACTIVE_TIME_IN_CASINO'),\n `${userData.active_time_in_casino}`\n );\n\n dispatch(\n batchActions(\n setUserData(userData),\n setUserLoggedIn(true),\n setLoginLimit((userData.session_duration || 0) * SECONDS_PER_MINUTE)\n )\n );\n\n checkAndStoreFcmToken();\n\n if (SpringConfigs.PUSH_NOTIFICATIONS_ENABLED) {\n getUserAllNotifications();\n }\n\n sendPostMessage(\n { type: 'userId', value: userData.user_id },\n VAIX_IFRAME_ID\n );\n LocalStorage.removeItem(\n storageKeyName('account', 'SWITCH_MULTI_ACCOUNT')\n );\n },\n [dispatch]\n );\n\n useEffect(() => {\n const checkRemainingSession =\n !isFunction && Number(accountParams?.sessionLimits || 0);\n\n if (checkRemainingSession) {\n if (!isLoggedIn) {\n clearRemainingSessionDurations();\n\n return;\n }\n\n remainingSessionDuration(\n {\n RemainingDailyDuration: Number(accountParams?.showDailySession || 0),\n RemainingWeeklyDuration: Number(\n accountParams?.showWeeklySession || 0\n ),\n RemainingMonthlyDuration: Number(\n accountParams?.showMonthlySession || 0\n )\n },\n (type: string) => {\n accountLogout(true);\n\n dispatch(\n setRemainingSessionDurationModal({\n type,\n isOpen: true\n })\n );\n }\n );\n }\n }, [accountParams, isLoggedIn, isFunction]);\n\n const deleteUser = () => {\n removeUserFromStorage();\n dispatch(removeUserData());\n dispatch(setClientGamingStateInfo(null));\n\n if (\n SpringConfigs.USER_PERSONALIZATION_ENABLED &&\n !SpringConfigs.MOCKED_DATA\n ) {\n clearDataFromStorage();\n }\n };\n\n const { updateUser } = useUpdateUser();\n\n const handle = useCallback(\n (credentials = null) => {\n const auth_data_x = JSON.parse(\n LocalStorage.getItem(storageKeyName('account', 'AUTH_DATA'))\n );\n\n const mustLogIn = auth_data_x?.auth_token;\n const mustLoginEncrypted = rememberMe && jwe_token;\n const queries =\n credentials ||\n qs.parse(history.location.search, {\n ignoreQueryPrefix: true\n });\n\n const personalId = regFieldsData?.find(\n field => field && field.formType === 'personalId'\n );\n\n const isOverridePersonalId = !!(\n personalId &&\n personalId.editForm.showOnEditProfile &&\n personalId.editForm.personalIdType === '2' &&\n personalId.editForm.sendCPFAsDocNumber === '1'\n );\n\n if (queries.auth_token) {\n const customAuthData = {\n auth_token: queries.auth_token as string\n };\n\n history.replace(\n addQuery({ auth_token: undefined, user_id: undefined })\n );\n\n restoreLogin(\n customAuthData,\n storeUser,\n updateUser,\n () => deleteUser(),\n isOverridePersonalId,\n true\n );\n } else if (mustLoginEncrypted) {\n restoreLogin(\n { jwe_token: jwe_token, auth_token: mustLogIn },\n storeUser,\n updateUser,\n () => deleteUser(),\n isOverridePersonalId,\n refreshWhenLoggedIn\n );\n } else if (mustLogIn) {\n restoreLogin(\n auth_data_x,\n storeUser,\n updateUser,\n () => deleteUser(),\n isOverridePersonalId,\n refreshWhenLoggedIn\n );\n }\n\n if (isLoggedIn || mustLogIn || mustLoginEncrypted) {\n if (queries.login || queries.register) {\n saveCurrentLocation();\n history.replace(updateQuery({ accounts: '*', profile: '*' }));\n }\n } else {\n if (queries.settings || queries.profile) {\n saveCurrentLocation();\n history.replace(updateQuery({ accounts: '*', login: '*' }));\n }\n }\n },\n [isLoggedIn, storeUser, rememberMe, regFieldsData]\n );\n\n useEffect(() => {\n if (regFieldsData && shouldRestore && !isFunction) {\n const isFirstLaunch = getCookie('isWrapperFirstLaunch');\n\n if (window.median?.auth && isFirstLaunch) {\n window.median.auth.status({\n callbackFunction: (data: TStatus) => {\n if (data && data.hasTouchId && data.hasSecret) {\n loginWithFaceId();\n } else {\n handle();\n }\n },\n prompt: 'PROMPT'\n });\n } else {\n handle();\n }\n }\n }, [shouldRestore, regFieldsData]);\n\n return handle;\n};\n"],"names":["useFaceIdLogin","credentialsExist","setCredentialsExist","useState","accountLogout","useAccountLogout","t","useTranslation","loginCallback","useLoginCallback","rememberMe","password","username","useEffect","_window$median","window","median","auth","status","callbackFunction","data","hasTouchId","hasSecret","removeSecret","_window$median2","delete","setCredentials","_window$median4","secret","JSON","stringify","save","prompt","loginWithFaceId","_window$median3","get","res","success","credentials","parse","login","error","callbackOnCancel","showConfirmationPopup","_window$median5","modalAlert","text","getCookie","icon","lib","name","theme","successBtn","onClick","cancelBtn","closable","durations","clearRemainingSessionDurations","Object","keys","forEach","timeout","clearTimeout","remainingSessionDuration","configs","callback","getGenericAccountCommand","CommandNames","GET_REMAINING_SESSION_DURATION","toUpperCase","_ref","details","times","values","length","timer","Math","min","entries","_ref2","key","time","createTimer","longTimeout","setTimeout","setTimeOutGreatestValue","MILLISECONDS_IN_SECOND","SECONDS_PER_MINUTE","useRestoreLogin","isFunction","arguments","undefined","refreshWhenLoggedIn","history","useHistory","dispatch","useDispatch","isLoggedIn","useSelector","getIsLoggedIn","regFieldsData","getRegFieldData","shouldRestore","socket","isConnected","partnerConfigs","getPartnerConfigs","accountParams","useFetchAccountParams","rememberMeSelector","getRememberMe","clearDataFromStorage","FavoritePersonalization","useMemo","rememberMeTick","single_login","jwe_token","getCookieLoginCredentials","storeUser","useCallback","userData","elem","elemCustomCode","LocalStorage","getItem","storageKeyName","appendCustomCode","removeItem","active_time_in_casino","SessionStorage","setItem","batchActions","setUserData","setUserLoggedIn","setLoginLimit","session_duration","checkAndStoreFcmToken","SpringConfigs","PUSH_NOTIFICATIONS_ENABLED","getUserAllNotifications","sendPostMessage","type","value","user_id","VAIX_IFRAME_ID","Number","sessionLimits","RemainingDailyDuration","showDailySession","RemainingWeeklyDuration","showWeeklySession","RemainingMonthlyDuration","showMonthlySession","setRemainingSessionDurationModal","isOpen","deleteUser","removeUserFromStorage","removeUserData","setClientGamingStateInfo","USER_PERSONALIZATION_ENABLED","MOCKED_DATA","updateUser","useUpdateUser","handle","auth_data_x","mustLogIn","auth_token","mustLoginEncrypted","queries","qs","location","search","ignoreQueryPrefix","personalId","find","field","formType","isOverridePersonalId","editForm","showOnEditProfile","personalIdType","sendCPFAsDocNumber","customAuthData","replace","addQuery","restoreLogin","register","saveCurrentLocation","updateQuery","accounts","profile","settings","isFirstLaunch"],"sourceRoot":""}