dauth-context-react 1.0.2 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dauth-context-react.cjs.development.js +406 -647
- package/dist/dauth-context-react.cjs.development.js.map +1 -1
- package/dist/dauth-context-react.cjs.production.min.js +1 -1
- package/dist/dauth-context-react.cjs.production.min.js.map +1 -1
- package/dist/dauth-context-react.esm.js +406 -647
- package/dist/dauth-context-react.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/reducer/dauth.actions.ts +1 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dauth-context-react.esm.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.types.ts","../src/reducer/dauth.reducer.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.ts","../src/api/utils/routes.ts","../src/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["import {\n IActionStatus,\n IDauthDomainState,\n IDauthState,\n IDauthUser,\n} from './interfaces';\n\nconst initialDauthState: IDauthState = {\n user: {\n language:\n (typeof window !== 'undefined'\n ? window.document.documentElement.getAttribute('lang')\n : null) || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: true,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => Promise.resolve(''),\n updateUser: () => Promise.resolve(false),\n updateUserWithRedirect: () => {},\n // Send email verification\n sendEmailVerificationStatus: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => Promise.resolve(false),\n};\n\nexport default initialDauthState;\n","export const LOGIN = 'LOGIN';\nexport const SET_IS_LOADING = 'SET_IS_LOADING';\nexport const UPDATE_USER = 'UPDATE_USER';\nexport const SET_SEND_EMAIL_VERIFICATION_IS_LOADING =\n 'SET_SEND_EMAIL_VERIFICATION_IS_LOADING';\nexport const SET_SEND_EMAIL_VERIFICATION_STATUS =\n 'SET_SEND_EMAIL_VERIFICATION_STATUS';\n","import { IDauthState } from '../interfaces';\nimport * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: IDauthState, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN: {\n const login: IDauthState = {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n return login;\n }\n\n case DauthTypes.SET_IS_LOADING: {\n const isLoading: IDauthState = {\n ...state,\n isLoading: payload.isLoading,\n };\n return isLoading;\n }\n\n case DauthTypes.UPDATE_USER: {\n const updateUser: IDauthState = {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n return updateUser;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS: {\n const setSendEmailVerificationStatus: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n return setSendEmailVerificationStatus;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING: {\n const setSendEmailVerificationIsLoading: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n isLoading: payload,\n },\n };\n return setSendEmailVerificationIsLoading;\n }\n\n default:\n return state;\n }\n}\n","export const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nfunction checkIsLocalhost(): boolean {\n if (typeof window === 'undefined') return false;\n const hostname = window.location.hostname;\n return Boolean(\n hostname === 'localhost' ||\n hostname === '[::1]' ||\n hostname.match(\n /(192)\\.(168)\\.(1)\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm\n ) ||\n hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\n );\n}\n\nexport function getServerBasePath() {\n const isLocalhost = checkIsLocalhost();\n const serverPort = 4012;\n const serverLocalUrl = `${window.location.protocol}//${window.location.hostname}:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${serverDomain}/api/${apiVersion}`;\n return isLocalhost ? serverLocalUrl : serverProdUrl;\n}\n\nexport function getClientBasePath() {\n const isLocalhost = checkIsLocalhost();\n const clientPort = 5185;\n const clientLocalUrl = `${window.location.protocol}//${window.location.hostname}:${clientPort}`;\n const clientProdUrl = `https://${serverDomain}`;\n return isLocalhost ? clientLocalUrl : clientProdUrl;\n}\n","import { getServerBasePath } from './utils/config';\nimport { IDauthUser } from '../interfaces';\nimport {\n IgetUserAPIResponse,\n IrefreshAccessTokenAPIResponse,\n IsendEmailVerificationAPIResponse,\n IupdateUserAPIResponse,\n IverifyTokenAPIResponse,\n} from './interfaces/dauth.api.responses';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<IgetUserAPIResponse> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/user`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const updateUserAPI = async (\n domainName: string,\n user: Partial<IDauthUser>,\n token: string\n): Promise<IupdateUserAPIResponse> => {\n const params = {\n method: 'PATCH',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(user),\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/user`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const sendEmailVerificationAPI = async (\n domainName: string,\n token: string\n): Promise<IsendEmailVerificationAPIResponse> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/resend-email-verification`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const refreshAccessTokenAPI = async (\n domainName: string,\n token: string\n): Promise<IrefreshAccessTokenAPIResponse> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/refresh-access-token`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const verifyTokenAPI = async ({\n domainName,\n tsk,\n token,\n}: {\n domainName: string;\n tsk: string;\n token: string;\n}): Promise<IverifyTokenAPIResponse> => {\n const params = {\n method: 'POST',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ tsk }),\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/verify-token`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const TOKEN_LS = 'dauth_state';\n","export const routes = {\n signin: 'signin',\n updateUser: 'update-user',\n};\n","import {\n getUserAPI,\n refreshAccessTokenAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { getClientBasePath } from '../api/utils/config';\nimport { TOKEN_LS } from '../constants';\nimport { IDauthDomainState, IDauthUser } from '../interfaces';\nimport { routes } from '../api/utils/routes';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: React.Dispatch<any>;\n token: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n token,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n window.history.replaceState(\n {},\n document.title,\n getUserFetch.data.domain.loginRedirect\n );\n return localStorage.setItem(TOKEN_LS, token);\n } else {\n return resetUser(dispatch);\n }\n } catch (error) {\n console.error(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: React.Dispatch<any>;\n token_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n token_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token_ls\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n const newToken = refreshAccessTokenFetch.data.accessToken || token_ls;\n const getUserFetch = await getUserAPI(domainName, newToken);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n localStorage.setItem(\n TOKEN_LS,\n refreshAccessTokenFetch.data.accessToken\n );\n return;\n } else {\n window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } else {\n window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n console.error(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport function setLogoutAction({\n dispatch,\n}: {\n dispatch: React.Dispatch<any>;\n}) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n },\n domain: {},\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n user: Partial<IDauthUser>;\n token: string | null;\n};\nexport async function setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token,\n}: TSetUpdateAction) {\n if (user.language) {\n window.document.documentElement.setAttribute('lang', user.language);\n }\n if (!token) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n return false;\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n return true;\n } else {\n console.error('Update user error', getUserFetch.data.message);\n return false;\n }\n } catch (error) {\n console.error('Update user error', error);\n return false;\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n};\nexport async function sendEmailVerificationAction({\n dispatch,\n domainName,\n token,\n}: TSetSendEmailVerificationAction) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: true,\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'info', message: 'Sending email verification...' },\n });\n try {\n const sendEmailFetch = await sendEmailVerificationAPI(domainName, token);\n if (sendEmailFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'success', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return true;\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n } catch (error) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: {\n type: 'error',\n message: 'Send email verification fetch error',\n },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n}\n\nexport async function checkTokenAction({\n dispatch,\n domainName,\n token,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n}) {\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n if (refreshAccessTokenFetch.data.accessToken) {\n localStorage.setItem(\n TOKEN_LS,\n refreshAccessTokenFetch.data.accessToken\n );\n }\n return;\n } else {\n window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\nexport async function getAccessTokenAction({\n dispatch,\n domainName,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n}) {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token_ls\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n return refreshAccessTokenFetch.data.accessToken ?? token_ls;\n } else {\n resetUser(dispatch);\n return 'token-not-found';\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\n///////////////////////////////////////////\n//////////////////////////////////////////\nexport const resetUser = (dispatch: React.Dispatch<any>) => {\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n};\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { TOKEN_LS } from './constants';\nimport { routes } from './api/utils/routes';\nimport { verifyTokenAPI } from './api/dauth.api';\nimport { IDauthUser } from './interfaces';\nimport { SET_IS_LOADING } from './reducer/dauth.types';\n\ninterface DauthProviderProps {\n domainName: string;\n tsk: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, tsk, children } = props;\n const [dauthState, dispatch] = useReducer(userReducer, initialDauthState);\n\n const isValidTsk = useCallback(\n async (token: string) => {\n try {\n const verifyToken = await verifyTokenAPI({\n domainName,\n token,\n tsk,\n });\n if (verifyToken.response.status !== 200) {\n return false;\n }\n return true;\n } catch (error) {\n return false;\n }\n },\n [domainName, tsk]\n );\n\n // Check token periodically\n useEffect(() => {\n if (!dauthState.isAuthenticated) return;\n let interval = setInterval(async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n const isValid = await isValidTsk(token_ls);\n if (isValid) {\n return action.checkTokenAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n } else {\n action.setLogoutAction({ dispatch });\n throw new Error('Ask value in DauthProvider is not valid');\n }\n }, 1000 * 60 * 5);\n return () => clearInterval(interval);\n }, [dauthState.isAuthenticated, isValidTsk]);\n\n // Catch login redirect\n useEffect(() => {\n (async () => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const token_url = urlParams.get(TOKEN_LS);\n if (token_url && !dauthState.isAuthenticated) {\n const isValid = await isValidTsk(token_url);\n if (isValid) {\n return action.setDauthStateAction({\n dispatch,\n token: token_url,\n domainName,\n });\n } else {\n action.setLogoutAction({ dispatch });\n throw new Error('Ask value in DauthProvider is not valid');\n }\n }\n })();\n }, []);\n\n // Auto Login\n useEffect(() => {\n (async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (token_ls && !dauthState.isAuthenticated) {\n const isValid = await isValidTsk(token_ls);\n if (isValid) {\n return action.setAutoLoginAction({\n dispatch,\n token_ls,\n domainName,\n });\n } else {\n action.setLogoutAction({ dispatch });\n throw new Error('Ask value in DauthProvider is not valid');\n }\n } else {\n return dispatch({\n type: SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n })();\n }, []);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n }, [domainName]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(async () => {\n const token = await action.getAccessTokenAction({ dispatch, domainName });\n return token as string;\n }, [domainName]);\n\n const updateUser = useCallback(\n async ({\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n const user = {\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return (await action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n })) as boolean;\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.updateUser}/${token_ls}`\n );\n }, [domainName]);\n\n const sendEmailVerification = useCallback(async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return false;\n return (await action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n })) as boolean;\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n }),\n [\n dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n ]\n );\n\n return (\n <DauthContext.Provider value={memoProvider}>\n {children}\n </DauthContext.Provider>\n );\n};\n\nconst DauthContext = createContext(initialDauthState);\n\nexport const useDauth = () => {\n const context = useContext(DauthContext);\n if (!context) {\n throw new Error('useDauth must be used inside DauthProvider');\n }\n return context;\n};\n"],"names":["initialDauthState","user","language","window","document","documentElement","getAttribute","domain","isLoading","isAuthenticated","loginWithRedirect","logout","getAccessToken","Promise","resolve","updateUser","updateUserWithRedirect","sendEmailVerificationStatus","status","type","message","sendEmailVerification","LOGIN","SET_IS_LOADING","UPDATE_USER","SET_SEND_EMAIL_VERIFICATION_IS_LOADING","SET_SEND_EMAIL_VERIFICATION_STATUS","userReducer","state","action","payload","DauthTypes","login","_extends","setSendEmailVerificationStatus","setSendEmailVerificationIsLoading","apiVersion","serverDomain","checkIsLocalhost","hostname","location","Boolean","match","getServerBasePath","isLocalhost","serverPort","serverLocalUrl","protocol","serverProdUrl","getClientBasePath","clientPort","clientLocalUrl","clientProdUrl","getUserAPI","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","domainName","token","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","fetch","sent","json","abrupt","stop","_x","_x2","apply","arguments","updateUserAPI","_ref2","_callee2","_callee2$","_context2","body","JSON","stringify","_x3","_x4","_x5","sendEmailVerificationAPI","_ref3","_callee3","_callee3$","_context3","_x6","_x7","refreshAccessTokenAPI","_ref4","_callee4","_callee4$","_context4","_x8","_x9","verifyTokenAPI","_ref6","_callee5","_ref5","tsk","_callee5$","_context5","_x10","TOKEN_LS","routes","signin","setDauthStateAction","_setDauthStateAction","dispatch","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","resetUser","t0","console","error","finish","setAutoLoginAction","_setAutoLoginAction","token_ls","refreshAccessTokenFetch","newToken","accessToken","replace","setLogoutAction","removeItem","setUpdateUserAction","_setUpdateUserAction","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","sendEmailFetch","checkTokenAction","_checkTokenAction","getAccessTokenAction","_getAccessTokenAction","_callee6","_ref7","_refreshAccessTokenFe","_callee6$","_context6","getItem","DauthProvider","props","children","_useReducer","useReducer","dauthState","isValidTsk","useCallback","verifyToken","useEffect","interval","setInterval","isValid","Error","clearInterval","queryString","urlParams","token_url","search","URLSearchParams","get","name","lastname","nickname","telPrefix","telSuffix","avatar","_callee7","_callee7$","_context7","memoProvider","useMemo","React","DauthContext","Provider","value","createContext","useDauth","context","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,iBAAiB,GAAgB;EACrCC,IAAI,EAAE;IACJC,QAAQ,EACN,CAAC,OAAOC,MAAM,KAAK,WAAW,gBAC1BA,MAAM,CAACC,QAAQ,CAACC,eAAe,CAACC,YAAY,CAAC,MAAM,CAAC,GACpD,IAAI,KAAK;GACF;EACfC,MAAM,EAAE,EAAuB;EAC/BC,SAAS,EAAE,IAAI;EACfC,eAAe,EAAE,KAAK;EACtBC,iBAAiB,EAAE,SAAAA,sBAAQ;EAC3BC,MAAM,EAAE,SAAAA,WAAQ;EAChBC,cAAc,EAAE,SAAAA;IAAA,OAAMC,OAAO,CAACC,OAAO,CAAC,EAAE,CAAC;;EACzCC,UAAU,EAAE,SAAAA;IAAA,OAAMF,OAAO,CAACC,OAAO,CAAC,KAAK,CAAC;;EACxCE,sBAAsB,EAAE,SAAAA,2BAAQ;;EAEhCC,2BAA2B,EAAE;IAC3BC,MAAM,EAAE;MACNC,IAAI,EAAE,MAAM;MACZC,OAAO,EAAE;KACO;IAClBZ,SAAS,EAAE;GACZ;EACDa,qBAAqB,EAAE,SAAAA;IAAA,OAAMR,OAAO,CAACC,OAAO,CAAC,KAAK,CAAC;;CACpD;;AC/BM,IAAMQ,KAAK,GAAG,OAAO;AAC5B,AAAO,IAAMC,cAAc,GAAG,gBAAgB;AAC9C,AAAO,IAAMC,WAAW,GAAG,aAAa;AACxC,AAAO,IAAMC,sCAAsC,GACjD,wCAAwC;AAC1C,AAAO,IAAMC,kCAAkC,GAC7C,oCAAoC;;SCHdC,WAAWA,CAACC,KAAkB,EAAEC,MAAW;EACjE,IAAQV,IAAI,GAAcU,MAAM,CAAxBV,IAAI;IAAEW,OAAO,GAAKD,MAAM,CAAlBC,OAAO;EAErB,QAAQX,IAAI;IACV,KAAKY,KAAgB;MAAE;QACrB,IAAMC,KAAK,GAAAC,QAAA,KACNL,KAAK;UACR3B,IAAI,EAAE6B,OAAO,CAAC7B,IAAI;UAClBM,MAAM,EAAEuB,OAAO,CAACvB,MAAM;UACtBE,eAAe,EAAEqB,OAAO,CAACrB;UAC1B;QACD,OAAOuB,KAAK;;IAGd,KAAKD,cAAyB;MAAE;QAC9B,IAAMvB,SAAS,GAAAyB,QAAA,KACVL,KAAK;UACRpB,SAAS,EAAEsB,OAAO,CAACtB;UACpB;QACD,OAAOA,SAAS;;IAGlB,KAAKuB,WAAsB;MAAE;QAC3B,IAAMhB,UAAU,GAAAkB,QAAA,KACXL,KAAK;UACR3B,IAAI,EAAAgC,QAAA,KACCL,KAAK,CAAC3B,IAAI,EACV6B,OAAO;UAEb;QACD,OAAOf,UAAU;;IAGnB,KAAKgB,kCAA6C;MAAE;QAClD,IAAMG,8BAA8B,GAAAD,QAAA,KAC/BL,KAAK;UACRX,2BAA2B,EAAAgB,QAAA,KACtBL,KAAK,CAACX,2BAA2B;YACpCC,MAAM,EAAE;cACNC,IAAI,EAAEW,OAAO,CAACX,IAAI;cAClBC,OAAO,EAAEU,OAAO,CAACV;;;UAGtB;QACD,OAAOc,8BAA8B;;IAGvC,KAAKH,sCAAiD;MAAE;QACtD,IAAMI,iCAAiC,GAAAF,QAAA,KAClCL,KAAK;UACRX,2BAA2B,EAAAgB,QAAA,KACtBL,KAAK,CAACX,2BAA2B;YACpCT,SAAS,EAAEsB;;UAEd;QACD,OAAOK,iCAAiC;;IAG1C;MACE,OAAOP,KAAK;;AAElB;;AChEO,IAAMQ,UAAU,GAAG,IAAI;AAC9B,AAAO,IAAMC,YAAY,GAAG,WAAW;AAEvC,SAASC,gBAAgBA;EACvB,IAAI,OAAOnC,MAAM,KAAK,WAAW,EAAE,OAAO,KAAK;EAC/C,IAAMoC,QAAQ,GAAGpC,MAAM,CAACqC,QAAQ,CAACD,QAAQ;EACzC,OAAOE,OAAO,CACZF,QAAQ,KAAK,WAAW,IACtBA,QAAQ,KAAK,OAAO,IACpBA,QAAQ,CAACG,KAAK,CACZ,wEAAwE,CACzE,IACDH,QAAQ,CAACG,KAAK,CAAC,wDAAwD,CAAC,CAC3E;AACH;AAEA,SAAgBC,iBAAiBA;EAC/B,IAAMC,WAAW,GAAGN,gBAAgB,EAAE;EACtC,IAAMO,UAAU,GAAG,IAAI;EACvB,IAAMC,cAAc,GAAM3C,MAAM,CAACqC,QAAQ,CAACO,QAAQ,UAAK5C,MAAM,CAACqC,QAAQ,CAACD,QAAQ,SAAIM,UAAU,aAAQT,UAAY;EACjH,IAAMY,aAAa,gBAAcX,YAAY,aAAQD,UAAY;EACjE,OAAOQ,WAAW,GAAGE,cAAc,GAAGE,aAAa;AACrD;AAEA,SAAgBC,iBAAiBA;EAC/B,IAAML,WAAW,GAAGN,gBAAgB,EAAE;EACtC,IAAMY,UAAU,GAAG,IAAI;EACvB,IAAMC,cAAc,GAAMhD,MAAM,CAACqC,QAAQ,CAACO,QAAQ,UAAK5C,MAAM,CAACqC,QAAQ,CAACD,QAAQ,SAAIW,UAAY;EAC/F,IAAME,aAAa,gBAAcf,YAAc;EAC/C,OAAOO,WAAW,GAAGO,cAAc,GAAGC,aAAa;AACrD;;ACpBO,IAAMC,UAAU;EAAA,IAAAC,IAAA,gBAAAC,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAG,SAAAC,QACxBC,UAAkB,EAClBC,KAAa;IAAA,IAAAC,MAAA,EAAAC,QAAA,EAAAC,IAAA;IAAA,OAAAP,mBAAA,GAAAQ,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAEPP,MAAM,GAAG;YACbQ,MAAM,EAAE,KAAK;YACbC,OAAO,EAAE;cACPC,aAAa,EAAEX,KAAK;cACpB,cAAc,EAAE;;WAEnB;UAAAM,QAAA,CAAAE,IAAA;UAAA,OACsBI,KAAK,CACvB7B,iBAAiB,EAAE,aAAQgB,UAAU,YACxCE,MAAM,CACP;QAAA;UAHKC,QAAQ,GAAAI,QAAA,CAAAO,IAAA;UAAAP,QAAA,CAAAE,IAAA;UAAA,OAIKN,QAAQ,CAACY,IAAI,EAAE;QAAA;UAA5BX,IAAI,GAAAG,QAAA,CAAAO,IAAA;UAAA,OAAAP,QAAA,CAAAS,MAAA,WACH;YAAEb,QAAQ,EAARA,QAAQ;YAAEC,IAAI,EAAJA;WAAM;QAAA;QAAA;UAAA,OAAAG,QAAA,CAAAU,IAAA;;OAAAlB,OAAA;GAC1B;EAAA,gBAjBYL,UAAUA,CAAAwB,EAAA,EAAAC,GAAA;IAAA,OAAAxB,IAAA,CAAAyB,KAAA,OAAAC,SAAA;;AAAA,GAiBtB;AAED,AAAO,IAAMC,aAAa;EAAA,IAAAC,KAAA,gBAAA3B,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAG,SAAA0B,SAC3BxB,UAAkB,EAClB1D,IAAyB,EACzB2D,KAAa;IAAA,IAAAC,MAAA,EAAAC,QAAA,EAAAC,IAAA;IAAA,OAAAP,mBAAA,GAAAQ,IAAA,UAAAoB,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAlB,IAAA,GAAAkB,SAAA,CAAAjB,IAAA;QAAA;UAEPP,MAAM,GAAG;YACbQ,MAAM,EAAE,OAAO;YACfC,OAAO,EAAE;cACPC,aAAa,EAAEX,KAAK;cACpB,cAAc,EAAE;aACjB;YACD0B,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACvF,IAAI;WAC1B;UAAAoF,SAAA,CAAAjB,IAAA;UAAA,OACsBI,KAAK,CACvB7B,iBAAiB,EAAE,aAAQgB,UAAU,YACxCE,MAAM,CACP;QAAA;UAHKC,QAAQ,GAAAuB,SAAA,CAAAZ,IAAA;UAAAY,SAAA,CAAAjB,IAAA;UAAA,OAIKN,QAAQ,CAACY,IAAI,EAAE;QAAA;UAA5BX,IAAI,GAAAsB,SAAA,CAAAZ,IAAA;UAAA,OAAAY,SAAA,CAAAV,MAAA,WACH;YAAEb,QAAQ,EAARA,QAAQ;YAAEC,IAAI,EAAJA;WAAM;QAAA;QAAA;UAAA,OAAAsB,SAAA,CAAAT,IAAA;;OAAAO,QAAA;GAC1B;EAAA,gBAnBYF,aAAaA,CAAAQ,GAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAAT,KAAA,CAAAH,KAAA,OAAAC,SAAA;;AAAA,GAmBzB;AAED,AAAO,IAAMY,wBAAwB;EAAA,IAAAC,KAAA,gBAAAtC,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAG,SAAAqC,SACtCnC,UAAkB,EAClBC,KAAa;IAAA,IAAAC,MAAA,EAAAC,QAAA,EAAAC,IAAA;IAAA,OAAAP,mBAAA,GAAAQ,IAAA,UAAA+B,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA7B,IAAA,GAAA6B,SAAA,CAAA5B,IAAA;QAAA;UAEPP,MAAM,GAAG;YACbQ,MAAM,EAAE,KAAK;YACbC,OAAO,EAAE;cACPC,aAAa,EAAEX,KAAK;cACpB,cAAc,EAAE;;WAEnB;UAAAoC,SAAA,CAAA5B,IAAA;UAAA,OACsBI,KAAK,CACvB7B,iBAAiB,EAAE,aAAQgB,UAAU,iCACxCE,MAAM,CACP;QAAA;UAHKC,QAAQ,GAAAkC,SAAA,CAAAvB,IAAA;UAAAuB,SAAA,CAAA5B,IAAA;UAAA,OAIKN,QAAQ,CAACY,IAAI,EAAE;QAAA;UAA5BX,IAAI,GAAAiC,SAAA,CAAAvB,IAAA;UAAA,OAAAuB,SAAA,CAAArB,MAAA,WACH;YAAEb,QAAQ,EAARA,QAAQ;YAAEC,IAAI,EAAJA;WAAM;QAAA;QAAA;UAAA,OAAAiC,SAAA,CAAApB,IAAA;;OAAAkB,QAAA;GAC1B;EAAA,gBAjBYF,wBAAwBA,CAAAK,GAAA,EAAAC,GAAA;IAAA,OAAAL,KAAA,CAAAd,KAAA,OAAAC,SAAA;;AAAA,GAiBpC;AAED,AAAO,IAAMmB,qBAAqB;EAAA,IAAAC,KAAA,gBAAA7C,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAG,SAAA4C,SACnC1C,UAAkB,EAClBC,KAAa;IAAA,IAAAC,MAAA,EAAAC,QAAA,EAAAC,IAAA;IAAA,OAAAP,mBAAA,GAAAQ,IAAA,UAAAsC,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAApC,IAAA,GAAAoC,SAAA,CAAAnC,IAAA;QAAA;UAEPP,MAAM,GAAG;YACbQ,MAAM,EAAE,KAAK;YACbC,OAAO,EAAE;cACPC,aAAa,EAAEX,KAAK;cACpB,cAAc,EAAE;;WAEnB;UAAA2C,SAAA,CAAAnC,IAAA;UAAA,OACsBI,KAAK,CACvB7B,iBAAiB,EAAE,aAAQgB,UAAU,4BACxCE,MAAM,CACP;QAAA;UAHKC,QAAQ,GAAAyC,SAAA,CAAA9B,IAAA;UAAA8B,SAAA,CAAAnC,IAAA;UAAA,OAIKN,QAAQ,CAACY,IAAI,EAAE;QAAA;UAA5BX,IAAI,GAAAwC,SAAA,CAAA9B,IAAA;UAAA,OAAA8B,SAAA,CAAA5B,MAAA,WACH;YAAEb,QAAQ,EAARA,QAAQ;YAAEC,IAAI,EAAJA;WAAM;QAAA;QAAA;UAAA,OAAAwC,SAAA,CAAA3B,IAAA;;OAAAyB,QAAA;GAC1B;EAAA,gBAjBYF,qBAAqBA,CAAAK,GAAA,EAAAC,GAAA;IAAA,OAAAL,KAAA,CAAArB,KAAA,OAAAC,SAAA;;AAAA,GAiBjC;AAED,AAAO,IAAM0B,cAAc;EAAA,IAAAC,KAAA,gBAAApD,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAG,SAAAmD,SAAAC,KAAA;IAAA,IAAAlD,UAAA,EAAAmD,GAAA,EAAAlD,KAAA,EAAAC,MAAA,EAAAC,QAAA,EAAAC,IAAA;IAAA,OAAAP,mBAAA,GAAAQ,IAAA,UAAA+C,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA7C,IAAA,GAAA6C,SAAA,CAAA5C,IAAA;QAAA;UAC5BT,UAAU,GAAAkD,KAAA,CAAVlD,UAAU,EACVmD,GAAG,GAAAD,KAAA,CAAHC,GAAG,EACHlD,KAAK,GAAAiD,KAAA,CAALjD,KAAK;UAMCC,MAAM,GAAG;YACbQ,MAAM,EAAE,MAAM;YACdC,OAAO,EAAE;cACPC,aAAa,EAAEX,KAAK;cACpB,cAAc,EAAE;aACjB;YACD0B,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;cAAEsB,GAAG,EAAHA;aAAK;WAC7B;UAAAE,SAAA,CAAA5C,IAAA;UAAA,OACsBI,KAAK,CACvB7B,iBAAiB,EAAE,aAAQgB,UAAU,oBACxCE,MAAM,CACP;QAAA;UAHKC,QAAQ,GAAAkD,SAAA,CAAAvC,IAAA;UAAAuC,SAAA,CAAA5C,IAAA;UAAA,OAIKN,QAAQ,CAACY,IAAI,EAAE;QAAA;UAA5BX,IAAI,GAAAiD,SAAA,CAAAvC,IAAA;UAAA,OAAAuC,SAAA,CAAArC,MAAA,WACH;YAAEb,QAAQ,EAARA,QAAQ;YAAEC,IAAI,EAAJA;WAAM;QAAA;QAAA;UAAA,OAAAiD,SAAA,CAAApC,IAAA;;OAAAgC,QAAA;GAC1B;EAAA,gBAvBYF,cAAcA,CAAAO,IAAA;IAAA,OAAAN,KAAA,CAAA5B,KAAA,OAAAC,SAAA;;AAAA,GAuB1B;;AC/GM,IAAMkC,QAAQ,GAAG,aAAa;;ACA9B,IAAMC,MAAM,GAAG;EACpBC,MAAM,EAAE,QAAQ;EAChBrG,UAAU,EAAE;CACb;;SCcqBsG,mBAAmBA,CAAAxC,EAAA;EAAA,OAAAyC,oBAAA,CAAAvC,KAAA,OAAAC,SAAA;AAAA;AAmCxC,SAAAsC;EAAAA,oBAAA,GAAA/D,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAnCM,SAAAC,QAAAJ,IAAA;IAAA,IAAAiE,QAAA,EAAA3D,KAAA,EAAAD,UAAA,EAAA6D,YAAA;IAAA,OAAAhE,mBAAA,GAAAQ,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UACLmD,QAAQ,GAAAjE,IAAA,CAARiE,QAAQ,EACR3D,KAAK,GAAAN,IAAA,CAALM,KAAK,EACLD,UAAU,GAAAL,IAAA,CAAVK,UAAU;UAEV4D,QAAQ,CAAC;YAAEpG,IAAI,EAAEY,cAAyB;YAAED,OAAO,EAAE;cAAEtB,SAAS,EAAE;;WAAQ,CAAC;UAAC0D,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAE,IAAA;UAAA,OAE/Cf,UAAU,CAACM,UAAU,EAAEC,KAAK,CAAC;QAAA;UAAlD4D,YAAY,GAAAtD,QAAA,CAAAO,IAAA;UAAA,MACd+C,YAAY,CAAC1D,QAAQ,CAAC5C,MAAM,KAAK,GAAG;YAAAgD,QAAA,CAAAE,IAAA;YAAA;;UACtCmD,QAAQ,CAAC;YACPpG,IAAI,EAAEY,KAAgB;YACtBD,OAAO,EAAE;cACP7B,IAAI,EAAEuH,YAAY,CAACzD,IAAI,CAAC9D,IAAI;cAC5BM,MAAM,EAAEiH,YAAY,CAACzD,IAAI,CAACxD,MAAM;cAChCE,eAAe,EAAE;;WAEpB,CAAC;UACFN,MAAM,CAACsH,OAAO,CAACC,YAAY,CACzB,EAAE,EACFtH,QAAQ,CAACuH,KAAK,EACdH,YAAY,CAACzD,IAAI,CAACxD,MAAM,CAACqH,aAAa,CACvC;UAAC,OAAA1D,QAAA,CAAAS,MAAA,WACKkD,YAAY,CAACC,OAAO,CAACZ,QAAQ,EAAEtD,KAAK,CAAC;QAAA;UAAA,OAAAM,QAAA,CAAAS,MAAA,WAErCoD,SAAS,CAACR,QAAQ,CAAC;QAAA;UAAArD,QAAA,CAAAE,IAAA;UAAA;QAAA;UAAAF,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAA8D,EAAA,GAAA9D,QAAA;UAG5B+D,OAAO,CAACC,KAAK,CAAAhE,QAAA,CAAA8D,EAAM,CAAC;UAAC,OAAA9D,QAAA,CAAAS,MAAA,WACdoD,SAAS,CAACR,QAAQ,CAAC;QAAA;UAAArD,QAAA,CAAAC,IAAA;UAE1BoD,QAAQ,CAAC;YACPpG,IAAI,EAAEY,cAAyB;YAC/BD,OAAO,EAAE;cAAEtB,SAAS,EAAE;;WACvB,CAAC;UAAC,OAAA0D,QAAA,CAAAiE,MAAA;QAAA;QAAA;UAAA,OAAAjE,QAAA,CAAAU,IAAA;;OAAAlB,OAAA;GAEN;EAAA,OAAA4D,oBAAA,CAAAvC,KAAA,OAAAC,SAAA;AAAA;AAOD,SAAsBoD,kBAAkBA,CAAAtD,GAAA;EAAA,OAAAuD,mBAAA,CAAAtD,KAAA,OAAAC,SAAA;AAAA;AAiDvC,SAAAqD;EAAAA,mBAAA,GAAA9E,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAjDM,SAAA0B,SAAAD,KAAA;IAAA,IAAAqC,QAAA,EAAAe,QAAA,EAAA3E,UAAA,EAAA4E,uBAAA,EAAAC,QAAA,EAAAhB,YAAA;IAAA,OAAAhE,mBAAA,GAAAQ,IAAA,UAAAoB,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAlB,IAAA,GAAAkB,SAAA,CAAAjB,IAAA;QAAA;UACLmD,QAAQ,GAAArC,KAAA,CAARqC,QAAQ,EACRe,QAAQ,GAAApD,KAAA,CAARoD,QAAQ,EACR3E,UAAU,GAAAuB,KAAA,CAAVvB,UAAU;UAEV4D,QAAQ,CAAC;YAAEpG,IAAI,EAAEY,cAAyB;YAAED,OAAO,EAAE;cAAEtB,SAAS,EAAE;;WAAQ,CAAC;UAAC6E,SAAA,CAAAlB,IAAA;UAAAkB,SAAA,CAAAjB,IAAA;UAAA,OAEpC+B,qBAAqB,CACzDxC,UAAU,EACV2E,QAAQ,CACT;QAAA;UAHKC,uBAAuB,GAAAlD,SAAA,CAAAZ,IAAA;UAAA,MAIzB8D,uBAAuB,CAACzE,QAAQ,CAAC5C,MAAM,KAAK,GAAG;YAAAmE,SAAA,CAAAjB,IAAA;YAAA;;UAC3CoE,QAAQ,GAAGD,uBAAuB,CAACxE,IAAI,CAAC0E,WAAW,IAAIH,QAAQ;UAAAjD,SAAA,CAAAjB,IAAA;UAAA,OAC1Cf,UAAU,CAACM,UAAU,EAAE6E,QAAQ,CAAC;QAAA;UAArDhB,YAAY,GAAAnC,SAAA,CAAAZ,IAAA;UAAA,MACd+C,YAAY,CAAC1D,QAAQ,CAAC5C,MAAM,KAAK,GAAG;YAAAmE,SAAA,CAAAjB,IAAA;YAAA;;UACtCmD,QAAQ,CAAC;YACPpG,IAAI,EAAEY,KAAgB;YACtBD,OAAO,EAAE;cACP7B,IAAI,EAAEuH,YAAY,CAACzD,IAAI,CAAC9D,IAAI;cAC5BM,MAAM,EAAEiH,YAAY,CAACzD,IAAI,CAACxD,MAAM;cAChCE,eAAe,EAAE;;WAEpB,CAAC;UACFoH,YAAY,CAACC,OAAO,CAClBZ,QAAQ,EACRqB,uBAAuB,CAACxE,IAAI,CAAC0E,WAAW,CACzC;UAAC,OAAApD,SAAA,CAAAV,MAAA;QAAA;UAGFxE,MAAM,CAACqC,QAAQ,CAACkG,OAAO,CAClBzF,iBAAiB,EAAE,SAAIU,UAAU,SAAIwD,MAAM,CAACC,MAAQ,CACxD;UAAC,OAAA/B,SAAA,CAAAV,MAAA,WACKoD,SAAS,CAACR,QAAQ,CAAC;QAAA;UAAAlC,SAAA,CAAAjB,IAAA;UAAA;QAAA;UAG5BjE,MAAM,CAACqC,QAAQ,CAACkG,OAAO,CAClBzF,iBAAiB,EAAE,SAAIU,UAAU,SAAIwD,MAAM,CAACC,MAAQ,CACxD;UAAC,OAAA/B,SAAA,CAAAV,MAAA,WACKoD,SAAS,CAACR,QAAQ,CAAC;QAAA;UAAAlC,SAAA,CAAAjB,IAAA;UAAA;QAAA;UAAAiB,SAAA,CAAAlB,IAAA;UAAAkB,SAAA,CAAA2C,EAAA,GAAA3C,SAAA;UAG5B4C,OAAO,CAACC,KAAK,CAAA7C,SAAA,CAAA2C,EAAM,CAAC;UAAC,OAAA3C,SAAA,CAAAV,MAAA,WACdoD,SAAS,CAACR,QAAQ,CAAC;QAAA;UAAAlC,SAAA,CAAAlB,IAAA;UAE1BoD,QAAQ,CAAC;YACPpG,IAAI,EAAEY,cAAyB;YAC/BD,OAAO,EAAE;cAAEtB,SAAS,EAAE;;WACvB,CAAC;UAAC,OAAA6E,SAAA,CAAA8C,MAAA;QAAA;QAAA;UAAA,OAAA9C,SAAA,CAAAT,IAAA;;OAAAO,QAAA;GAEN;EAAA,OAAAkD,mBAAA,CAAAtD,KAAA,OAAAC,SAAA;AAAA;AAED,SAAgB2D,eAAeA,CAAA9C,KAAA;MAC7B0B,QAAQ,GAAA1B,KAAA,CAAR0B,QAAQ;EAIRA,QAAQ,CAAC;IAAEpG,IAAI,EAAEY,cAAyB;IAAED,OAAO,EAAE;MAAEtB,SAAS,EAAE;;GAAQ,CAAC;EAC3E+G,QAAQ,CAAC;IACPpG,IAAI,EAAEY,KAAgB;IACtBD,OAAO,EAAE;MACP7B,IAAI,EAAE;QACJC,QAAQ,EAAEC,MAAM,CAACC,QAAQ,CAACC,eAAe,CAACC,YAAY,CAAC,MAAM,CAAC,IAAI;OACnE;MACDC,MAAM,EAAE,EAAE;MACVE,eAAe,EAAE;;GAEpB,CAAC;EACFoH,YAAY,CAACe,UAAU,CAAC1B,QAAQ,CAAC;EACjC,OAAOK,QAAQ,CAAC;IACdpG,IAAI,EAAEY,cAAyB;IAC/BD,OAAO,EAAE;MAAEtB,SAAS,EAAE;;GACvB,CAAC;AACJ;AAQA,SAAsBqI,mBAAmBA,CAAApD,GAAA;EAAA,OAAAqD,oBAAA,CAAA/D,KAAA,OAAAC,SAAA;AAAA;AAgCxC,SAAA8D;EAAAA,oBAAA,GAAAvF,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAhCM,SAAAqC,SAAAM,KAAA;IAAA,IAAAmB,QAAA,EAAA5D,UAAA,EAAA1D,IAAA,EAAA2D,KAAA,EAAA4D,YAAA;IAAA,OAAAhE,mBAAA,GAAAQ,IAAA,UAAA+B,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA7B,IAAA,GAAA6B,SAAA,CAAA5B,IAAA;QAAA;UACLmD,QAAQ,GAAAnB,KAAA,CAARmB,QAAQ,EACR5D,UAAU,GAAAyC,KAAA,CAAVzC,UAAU,EACV1D,IAAI,GAAAmG,KAAA,CAAJnG,IAAI,EACJ2D,KAAK,GAAAwC,KAAA,CAALxC,KAAK;UAEL,IAAI3D,IAAI,CAACC,QAAQ,EAAE;YACjBC,MAAM,CAACC,QAAQ,CAACC,eAAe,CAAC0I,YAAY,CAAC,MAAM,EAAE9I,IAAI,CAACC,QAAQ,CAAC;;UACpE,IACI0D,KAAK;YAAAoC,SAAA,CAAA5B,IAAA;YAAA;;UACRmD,QAAQ,CAAC;YACPpG,IAAI,EAAEY,WAAsB;YAC5BD,OAAO,EAAE7B;WACV,CAAC;UAAC,OAAA+F,SAAA,CAAArB,MAAA,WACI,KAAK;QAAA;UAAAqB,SAAA,CAAA7B,IAAA;UAAA6B,SAAA,CAAA5B,IAAA;UAAA,OAGea,aAAa,CAACtB,UAAU,EAAE1D,IAAI,EAAE2D,KAAK,CAAC;QAAA;UAA3D4D,YAAY,GAAAxB,SAAA,CAAAvB,IAAA;UAAA,MACd+C,YAAY,CAAC1D,QAAQ,CAAC5C,MAAM,KAAK,GAAG;YAAA8E,SAAA,CAAA5B,IAAA;YAAA;;UACtCmD,QAAQ,CAAC;YACPpG,IAAI,EAAEY,WAAsB;YAC5BD,OAAO,EAAE0F,YAAY,CAACzD,IAAI,CAAC9D;WAC5B,CAAC;UAAC,OAAA+F,SAAA,CAAArB,MAAA,WACI,IAAI;QAAA;UAEXsD,OAAO,CAACC,KAAK,CAAC,mBAAmB,EAAEV,YAAY,CAACzD,IAAI,CAAC3C,OAAO,CAAC;UAAC,OAAA4E,SAAA,CAAArB,MAAA,WACvD,KAAK;QAAA;UAAAqB,SAAA,CAAA5B,IAAA;UAAA;QAAA;UAAA4B,SAAA,CAAA7B,IAAA;UAAA6B,SAAA,CAAAgC,EAAA,GAAAhC,SAAA;UAGdiC,OAAO,CAACC,KAAK,CAAC,mBAAmB,EAAAlC,SAAA,CAAAgC,EAAO,CAAC;UAAC,OAAAhC,SAAA,CAAArB,MAAA,WACnC,KAAK;QAAA;QAAA;UAAA,OAAAqB,SAAA,CAAApB,IAAA;;OAAAkB,QAAA;GAEf;EAAA,OAAAgD,oBAAA,CAAA/D,KAAA,OAAAC,SAAA;AAAA;AAOD,SAAsBgE,2BAA2BA,CAAAtD,GAAA;EAAA,OAAAuD,4BAAA,CAAAlE,KAAA,OAAAC,SAAA;AAAA;AAkDhD,SAAAiE;EAAAA,4BAAA,GAAA1F,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAlDM,SAAA4C,SAAAQ,KAAA;IAAA,IAAAU,QAAA,EAAA5D,UAAA,EAAAC,KAAA,EAAAsF,cAAA;IAAA,OAAA1F,mBAAA,GAAAQ,IAAA,UAAAsC,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAApC,IAAA,GAAAoC,SAAA,CAAAnC,IAAA;QAAA;UACLmD,QAAQ,GAAAV,KAAA,CAARU,QAAQ,EACR5D,UAAU,GAAAkD,KAAA,CAAVlD,UAAU,EACVC,KAAK,GAAAiD,KAAA,CAALjD,KAAK;UAEL2D,QAAQ,CAAC;YACPpG,IAAI,EAAEY,sCAAiD;YACvDD,OAAO,EAAE;WACV,CAAC;UACFyF,QAAQ,CAAC;YACPpG,IAAI,EAAEY,kCAA6C;YACnDD,OAAO,EAAE;cAAEX,IAAI,EAAE,MAAM;cAAEC,OAAO,EAAE;;WACnC,CAAC;UAACmF,SAAA,CAAApC,IAAA;UAAAoC,SAAA,CAAAnC,IAAA;UAAA,OAE4BwB,wBAAwB,CAACjC,UAAU,EAAEC,KAAK,CAAC;QAAA;UAAlEsF,cAAc,GAAA3C,SAAA,CAAA9B,IAAA;UAAA,MAChByE,cAAc,CAACpF,QAAQ,CAAC5C,MAAM,KAAK,GAAG;YAAAqF,SAAA,CAAAnC,IAAA;YAAA;;UACxCmD,QAAQ,CAAC;YACPpG,IAAI,EAAEY,kCAA6C;YACnDD,OAAO,EAAE;cAAEX,IAAI,EAAE,SAAS;cAAEC,OAAO,EAAE8H,cAAc,CAACnF,IAAI,CAAC3C;;WAC1D,CAAC;UACFmG,QAAQ,CAAC;YACPpG,IAAI,EAAEY,sCAAiD;YACvDD,OAAO,EAAE;WACV,CAAC;UAAC,OAAAyE,SAAA,CAAA5B,MAAA,WACI,IAAI;QAAA;UAEX4C,QAAQ,CAAC;YACPpG,IAAI,EAAEY,kCAA6C;YACnDD,OAAO,EAAE;cAAEX,IAAI,EAAE,OAAO;cAAEC,OAAO,EAAE8H,cAAc,CAACnF,IAAI,CAAC3C;;WACxD,CAAC;UACFmG,QAAQ,CAAC;YACPpG,IAAI,EAAEY,sCAAiD;YACvDD,OAAO,EAAE;WACV,CAAC;UAAC,OAAAyE,SAAA,CAAA5B,MAAA,WACI,KAAK;QAAA;UAAA4B,SAAA,CAAAnC,IAAA;UAAA;QAAA;UAAAmC,SAAA,CAAApC,IAAA;UAAAoC,SAAA,CAAAyB,EAAA,GAAAzB,SAAA;UAGdgB,QAAQ,CAAC;YACPpG,IAAI,EAAEY,kCAA6C;YACnDD,OAAO,EAAE;cACPX,IAAI,EAAE,OAAO;cACbC,OAAO,EAAE;;WAEZ,CAAC;UACFmG,QAAQ,CAAC;YACPpG,IAAI,EAAEY,sCAAiD;YACvDD,OAAO,EAAE;WACV,CAAC;UAAC,OAAAyE,SAAA,CAAA5B,MAAA,WACI,KAAK;QAAA;QAAA;UAAA,OAAA4B,SAAA,CAAA3B,IAAA;;OAAAyB,QAAA;GAEf;EAAA,OAAA4C,4BAAA,CAAAlE,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsBmE,gBAAgBA,CAAAxD,GAAA;EAAA,OAAAyD,iBAAA,CAAArE,KAAA,OAAAC,SAAA;AAAA;AAgCrC,SAAAoE;EAAAA,iBAAA,GAAA7F,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAhCM,SAAAmD,SAAAD,KAAA;IAAA,IAAAY,QAAA,EAAA5D,UAAA,EAAAC,KAAA,EAAA2E,uBAAA;IAAA,OAAA/E,mBAAA,GAAAQ,IAAA,UAAA+C,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA7C,IAAA,GAAA6C,SAAA,CAAA5C,IAAA;QAAA;UACLmD,QAAQ,GAAAZ,KAAA,CAARY,QAAQ,EACR5D,UAAU,GAAAgD,KAAA,CAAVhD,UAAU,EACVC,KAAK,GAAA+C,KAAA,CAAL/C,KAAK;UAAAoD,SAAA,CAAA7C,IAAA;UAAA6C,SAAA,CAAA5C,IAAA;UAAA,OAOmC+B,qBAAqB,CACzDxC,UAAU,EACVC,KAAK,CACN;QAAA;UAHK2E,uBAAuB,GAAAvB,SAAA,CAAAvC,IAAA;UAAA,MAIzB8D,uBAAuB,CAACzE,QAAQ,CAAC5C,MAAM,KAAK,GAAG;YAAA8F,SAAA,CAAA5C,IAAA;YAAA;;UACjD,IAAImE,uBAAuB,CAACxE,IAAI,CAAC0E,WAAW,EAAE;YAC5CZ,YAAY,CAACC,OAAO,CAClBZ,QAAQ,EACRqB,uBAAuB,CAACxE,IAAI,CAAC0E,WAAW,CACzC;;UACF,OAAAzB,SAAA,CAAArC,MAAA;QAAA;UAGDxE,MAAM,CAACqC,QAAQ,CAACkG,OAAO,CAClBzF,iBAAiB,EAAE,SAAIU,UAAU,SAAIwD,MAAM,CAACC,MAAQ,CACxD;UAAC,OAAAJ,SAAA,CAAArC,MAAA,WACKoD,SAAS,CAACR,QAAQ,CAAC;QAAA;UAAAP,SAAA,CAAA5C,IAAA;UAAA;QAAA;UAAA4C,SAAA,CAAA7C,IAAA;UAAA6C,SAAA,CAAAgB,EAAA,GAAAhB,SAAA;UAG5Be,SAAS,CAACR,QAAQ,CAAC;UAAC,MAAAP,SAAA,CAAAgB,EAAA;QAAA;QAAA;UAAA,OAAAhB,SAAA,CAAApC,IAAA;;OAAAgC,QAAA;GAGvB;EAAA,OAAAwC,iBAAA,CAAArE,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsBqE,oBAAoBA,CAAApD,GAAA;EAAA,OAAAqD,qBAAA,CAAAvE,KAAA,OAAAC,SAAA;AAAA;AA0B1C;AACA;AAAA,SAAAsE;EAAAA,qBAAA,GAAA/F,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CA3BO,SAAA8F,SAAAC,KAAA;IAAA,IAAAjC,QAAA,EAAA5D,UAAA,EAAA2E,QAAA,EAAAC,uBAAA,EAAAkB,qBAAA;IAAA,OAAAjG,mBAAA,GAAAQ,IAAA,UAAA0F,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAxF,IAAA,GAAAwF,SAAA,CAAAvF,IAAA;QAAA;UACLmD,QAAQ,GAAAiC,KAAA,CAARjC,QAAQ,EACR5D,UAAU,GAAA6F,KAAA,CAAV7F,UAAU;UAKJ2E,QAAQ,GAAGT,YAAY,CAAC+B,OAAO,CAAC1C,QAAQ,CAAC;UAAA,IAC1CoB,QAAQ;YAAAqB,SAAA,CAAAvF,IAAA;YAAA;;UAAA,OAAAuF,SAAA,CAAAhF,MAAA;QAAA;UAAAgF,SAAA,CAAAxF,IAAA;UAAAwF,SAAA,CAAAvF,IAAA;UAAA,OAE2B+B,qBAAqB,CACzDxC,UAAU,EACV2E,QAAQ,CACT;QAAA;UAHKC,uBAAuB,GAAAoB,SAAA,CAAAlF,IAAA;UAAA,MAIzB8D,uBAAuB,CAACzE,QAAQ,CAAC5C,MAAM,KAAK,GAAG;YAAAyI,SAAA,CAAAvF,IAAA;YAAA;;UAAA,OAAAuF,SAAA,CAAAhF,MAAA,YAAA8E,qBAAA,GAC1ClB,uBAAuB,CAACxE,IAAI,CAAC0E,WAAW,YAAAgB,qBAAA,GAAInB,QAAQ;QAAA;UAE3DP,SAAS,CAACR,QAAQ,CAAC;UAAC,OAAAoC,SAAA,CAAAhF,MAAA,WACb,iBAAiB;QAAA;UAAAgF,SAAA,CAAAvF,IAAA;UAAA;QAAA;UAAAuF,SAAA,CAAAxF,IAAA;UAAAwF,SAAA,CAAA3B,EAAA,GAAA2B,SAAA;UAG1B5B,SAAS,CAACR,QAAQ,CAAC;UAAC,MAAAoC,SAAA,CAAA3B,EAAA;QAAA;QAAA;UAAA,OAAA2B,SAAA,CAAA/E,IAAA;;OAAA2E,QAAA;GAGvB;EAAA,OAAAD,qBAAA,CAAAvE,KAAA,OAAAC,SAAA;AAAA;AAID,AAAO,IAAM+C,SAAS,GAAG,SAAZA,SAASA,CAAIR,QAA6B;EACrDM,YAAY,CAACe,UAAU,CAAC1B,QAAQ,CAAC;EACjC,OAAOK,QAAQ,CAAC;IACdpG,IAAI,EAAEY,KAAgB;IACtBD,OAAO,EAAE;MACP7B,IAAI,EAAE,EAAgB;MACtBM,MAAM,EAAE,EAAuB;MAC/BE,eAAe,EAAE;;GAEpB,CAAC;AACJ,CAAC;;ICtRYoJ,aAAa,GAAiC,SAA9CA,aAAaA,CACxBC,KAAyB;EAEzB,IAAQnG,UAAU,GAAoBmG,KAAK,CAAnCnG,UAAU;IAAEmD,GAAG,GAAegD,KAAK,CAAvBhD,GAAG;IAAEiD,QAAQ,GAAKD,KAAK,CAAlBC,QAAQ;EACjC,IAAAC,WAAA,GAA+BC,UAAU,CAACtI,WAAW,EAAE3B,iBAAiB,CAAC;IAAlEkK,UAAU,GAAAF,WAAA;IAAEzC,QAAQ,GAAAyC,WAAA;EAE3B,IAAMG,UAAU,GAAGC,WAAW;IAAA,IAAA9G,IAAA,GAAAC,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAC5B,SAAAC,QAAOE,KAAa;MAAA,IAAAyG,WAAA;MAAA,OAAA7G,mBAAA,GAAAQ,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAAF,QAAA,CAAAC,IAAA;YAAAD,QAAA,CAAAE,IAAA;YAAA,OAEUsC,cAAc,CAAC;cACvC/C,UAAU,EAAVA,UAAU;cACVC,KAAK,EAALA,KAAK;cACLkD,GAAG,EAAHA;aACD,CAAC;UAAA;YAJIuD,WAAW,GAAAnG,QAAA,CAAAO,IAAA;YAAA,MAKb4F,WAAW,CAACvG,QAAQ,CAAC5C,MAAM,KAAK,GAAG;cAAAgD,QAAA,CAAAE,IAAA;cAAA;;YAAA,OAAAF,QAAA,CAAAS,MAAA,WAC9B,KAAK;UAAA;YAAA,OAAAT,QAAA,CAAAS,MAAA,WAEP,IAAI;UAAA;YAAAT,QAAA,CAAAC,IAAA;YAAAD,QAAA,CAAA8D,EAAA,GAAA9D,QAAA;YAAA,OAAAA,QAAA,CAAAS,MAAA,WAEJ,KAAK;UAAA;UAAA;YAAA,OAAAT,QAAA,CAAAU,IAAA;;SAAAlB,OAAA;KAEf;IAAA,iBAAAmB,EAAA;MAAA,OAAAvB,IAAA,CAAAyB,KAAA,OAAAC,SAAA;;OACD,CAACrB,UAAU,EAAEmD,GAAG,CAAC,CAClB;;EAGDwD,SAAS,CAAC;IACR,IAAI,CAACJ,UAAU,CAACzJ,eAAe,EAAE;IACjC,IAAI8J,QAAQ,GAAGC,WAAW,eAAAjH,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAC,SAAA0B;MAAA,IAAAmD,QAAA,EAAAmC,OAAA;MAAA,OAAAjH,mBAAA,GAAAQ,IAAA,UAAAoB,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAlB,IAAA,GAAAkB,SAAA,CAAAjB,IAAA;UAAA;YACnBkE,QAAQ,GAAGT,YAAY,CAAC+B,OAAO,CAAC1C,QAAQ,CAAC;YAAA,IAC1CoB,QAAQ;cAAAjD,SAAA,CAAAjB,IAAA;cAAA;;YAAA,OAAAiB,SAAA,CAAAV,MAAA;UAAA;YAAAU,SAAA,CAAAjB,IAAA;YAAA,OACS+F,UAAU,CAAC7B,QAAQ,CAAC;UAAA;YAApCmC,OAAO,GAAApF,SAAA,CAAAZ,IAAA;YAAA,KACTgG,OAAO;cAAApF,SAAA,CAAAjB,IAAA;cAAA;;YAAA,OAAAiB,SAAA,CAAAV,MAAA,WACF9C,gBAAuB,CAAC;cAC7B0F,QAAQ,EAARA,QAAQ;cACR5D,UAAU,EAAVA,UAAU;cACVC,KAAK,EAAE0E;aACR,CAAC;UAAA;YAEFzG,eAAsB,CAAC;cAAE0F,QAAQ,EAARA;aAAU,CAAC;YAAC,MAC/B,IAAImD,KAAK,CAAC,yCAAyC,CAAC;UAAA;UAAA;YAAA,OAAArF,SAAA,CAAAT,IAAA;;SAAAO,QAAA;KAE7D,IAAE,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;IACjB,OAAO;MAAA,OAAMwF,aAAa,CAACJ,QAAQ,CAAC;;GACrC,EAAE,CAACL,UAAU,CAACzJ,eAAe,EAAE0J,UAAU,CAAC,CAAC;;EAG5CG,SAAS,CAAC;IACR/G,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAC,SAAAqC;MAAA,IAAA8E,WAAA,EAAAC,SAAA,EAAAC,SAAA,EAAAL,OAAA;MAAA,OAAAjH,mBAAA,GAAAQ,IAAA,UAAA+B,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA7B,IAAA,GAAA6B,SAAA,CAAA5B,IAAA;UAAA;YACOwG,WAAW,GAAGzK,MAAM,CAACqC,QAAQ,CAACuI,MAAM;YAAA,IACrCH,WAAW;cAAA5E,SAAA,CAAA5B,IAAA;cAAA;;YAAA,OAAA4B,SAAA,CAAArB,MAAA;UAAA;YACVkG,SAAS,GAAG,IAAIG,eAAe,CAACJ,WAAW,CAAC;YAC5CE,SAAS,GAAGD,SAAS,CAACI,GAAG,CAAC/D,QAAQ,CAAC;YAAA,MACrC4D,SAAS,IAAI,CAACZ,UAAU,CAACzJ,eAAe;cAAAuF,SAAA,CAAA5B,IAAA;cAAA;;YAAA4B,SAAA,CAAA5B,IAAA;YAAA,OACpB+F,UAAU,CAACW,SAAS,CAAC;UAAA;YAArCL,OAAO,GAAAzE,SAAA,CAAAvB,IAAA;YAAA,KACTgG,OAAO;cAAAzE,SAAA,CAAA5B,IAAA;cAAA;;YAAA,OAAA4B,SAAA,CAAArB,MAAA,WACF9C,mBAA0B,CAAC;cAChC0F,QAAQ,EAARA,QAAQ;cACR3D,KAAK,EAAEkH,SAAS;cAChBnH,UAAU,EAAVA;aACD,CAAC;UAAA;YAEF9B,eAAsB,CAAC;cAAE0F,QAAQ,EAARA;aAAU,CAAC;YAAC,MAC/B,IAAImD,KAAK,CAAC,yCAAyC,CAAC;UAAA;UAAA;YAAA,OAAA1E,SAAA,CAAApB,IAAA;;SAAAkB,QAAA;KAG/D,IAAG;GACL,EAAE,EAAE,CAAC;;EAGNwE,SAAS,CAAC;IACR/G,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAC,SAAA4C;MAAA,IAAAiC,QAAA,EAAAmC,OAAA;MAAA,OAAAjH,mBAAA,GAAAQ,IAAA,UAAAsC,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAApC,IAAA,GAAAoC,SAAA,CAAAnC,IAAA;UAAA;YACOkE,QAAQ,GAAGT,YAAY,CAAC+B,OAAO,CAAC1C,QAAQ,CAAC;YAAA,MAC3CoB,QAAQ,IAAI,CAAC4B,UAAU,CAACzJ,eAAe;cAAA8F,SAAA,CAAAnC,IAAA;cAAA;;YAAAmC,SAAA,CAAAnC,IAAA;YAAA,OACnB+F,UAAU,CAAC7B,QAAQ,CAAC;UAAA;YAApCmC,OAAO,GAAAlE,SAAA,CAAA9B,IAAA;YAAA,KACTgG,OAAO;cAAAlE,SAAA,CAAAnC,IAAA;cAAA;;YAAA,OAAAmC,SAAA,CAAA5B,MAAA,WACF9C,kBAAyB,CAAC;cAC/B0F,QAAQ,EAARA,QAAQ;cACRe,QAAQ,EAARA,QAAQ;cACR3E,UAAU,EAAVA;aACD,CAAC;UAAA;YAEF9B,eAAsB,CAAC;cAAE0F,QAAQ,EAARA;aAAU,CAAC;YAAC,MAC/B,IAAImD,KAAK,CAAC,yCAAyC,CAAC;UAAA;YAAAnE,SAAA,CAAAnC,IAAA;YAAA;UAAA;YAAA,OAAAmC,SAAA,CAAA5B,MAAA,WAGrD4C,QAAQ,CAAC;cACdpG,IAAI,EAAEI,cAAc;cACpBO,OAAO,EAAE;gBAAEtB,SAAS,EAAE;;aACvB,CAAC;UAAA;UAAA;YAAA,OAAA+F,SAAA,CAAA3B,IAAA;;SAAAyB,QAAA;KAEL,IAAG;GACL,EAAE,EAAE,CAAC;EAEN,IAAM3F,iBAAiB,GAAG0J,WAAW,CAAC;IACpC,OAAOjK,MAAM,CAACqC,QAAQ,CAACkG,OAAO,CACzBzF,iBAAiB,EAAE,SAAIU,UAAU,SAAIwD,MAAM,CAACC,MAAQ,CACxD;GACF,EAAE,CAACzD,UAAU,CAAC,CAAC;EAEhB,IAAMhD,MAAM,GAAGyJ,WAAW,CAAC;IACzB,OAAOvI,eAAsB,CAAC;MAAE0F,QAAQ,EAARA;KAAU,CAAC;GAC5C,EAAE,EAAE,CAAC;EAEN,IAAM3G,cAAc,GAAGwJ,WAAW,eAAA7G,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAC,SAAAmD;IAAA,IAAAhD,KAAA;IAAA,OAAAJ,mBAAA,GAAAQ,IAAA,UAAA+C,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA7C,IAAA,GAAA6C,SAAA,CAAA5C,IAAA;QAAA;UAAA4C,SAAA,CAAA5C,IAAA;UAAA,OACbvC,oBAA2B,CAAC;YAAE0F,QAAQ,EAARA,QAAQ;YAAE5D,UAAU,EAAVA;WAAY,CAAC;QAAA;UAAnEC,KAAK,GAAAoD,SAAA,CAAAvC,IAAA;UAAA,OAAAuC,SAAA,CAAArC,MAAA,WACJf,KAAe;QAAA;QAAA;UAAA,OAAAoD,SAAA,CAAApC,IAAA;;OAAAgC,QAAA;GACvB,IAAE,CAACjD,UAAU,CAAC,CAAC;EAEhB,IAAM5C,UAAU,GAAGqJ,WAAW;IAAA,IAAAZ,KAAA,GAAAjG,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAC5B,SAAA8F,SAAA5C,KAAA;MAAA,IAAAuE,IAAA,EAAAC,QAAA,EAAAC,QAAA,EAAAC,SAAA,EAAAC,SAAA,EAAApL,QAAA,EAAAqL,MAAA,EAAAjD,QAAA,EAAArI,IAAA;MAAA,OAAAuD,mBAAA,GAAAQ,IAAA,UAAA0F,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAxF,IAAA,GAAAwF,SAAA,CAAAvF,IAAA;UAAA;YACE8G,IAAI,GAAAvE,KAAA,CAAJuE,IAAI,EACJC,QAAQ,GAAAxE,KAAA,CAARwE,QAAQ,EACRC,QAAQ,GAAAzE,KAAA,CAARyE,QAAQ,EACRC,SAAS,GAAA1E,KAAA,CAAT0E,SAAS,EACTC,SAAS,GAAA3E,KAAA,CAAT2E,SAAS,EACTpL,QAAQ,GAAAyG,KAAA,CAARzG,QAAQ,EACRqL,MAAM,GAAA5E,KAAA,CAAN4E,MAAM;YAEAjD,QAAQ,GAAGT,YAAY,CAAC+B,OAAO,CAAC1C,QAAQ,CAAC;YACzCjH,IAAI,GAAG;cACXiL,IAAI,EAAJA,IAAI;cACJC,QAAQ,EAARA,QAAQ;cACRC,QAAQ,EAARA,QAAQ;cACRC,SAAS,EAATA,SAAS;cACTC,SAAS,EAATA,SAAS;cACTpL,QAAQ,EAARA,QAAQ;cACRqL,MAAM,EAANA;aACsB;YAAA5B,SAAA,CAAAvF,IAAA;YAAA,OACVvC,mBAA0B,CAAC;cACvC0F,QAAQ,EAARA,QAAQ;cACR5D,UAAU,EAAVA,UAAU;cACV1D,IAAI,EAAJA,IAAI;cACJ2D,KAAK,EAAE0E;aACR,CAAC;UAAA;YAAA,OAAAqB,SAAA,CAAAhF,MAAA,WAAAgF,SAAA,CAAAlF,IAAA;UAAA;UAAA;YAAA,OAAAkF,SAAA,CAAA/E,IAAA;;SAAA2E,QAAA;KACH;IAAA,iBAAAzE,GAAA;MAAA,OAAA0E,KAAA,CAAAzE,KAAA,OAAAC,SAAA;;OACD,CAACrB,UAAU,CAAC,CACb;EAED,IAAM3C,sBAAsB,GAAGoJ,WAAW,CAAC;IACzC,IAAM9B,QAAQ,GAAGT,YAAY,CAAC+B,OAAO,CAAC1C,QAAQ,CAAC;IAC/C,IAAI,CAACoB,QAAQ,EAAE;IACf,OAAOnI,MAAM,CAACqC,QAAQ,CAACkG,OAAO,CACzBzF,iBAAiB,EAAE,SAAIU,UAAU,SAAIwD,MAAM,CAACpG,UAAU,SAAIuH,QAAU,CACxE;GACF,EAAE,CAAC3E,UAAU,CAAC,CAAC;EAEhB,IAAMtC,qBAAqB,GAAG+I,WAAW,eAAA7G,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAC,SAAA+H;IAAA,IAAAlD,QAAA;IAAA,OAAA9E,mBAAA,GAAAQ,IAAA,UAAAyH,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAvH,IAAA,GAAAuH,SAAA,CAAAtH,IAAA;QAAA;UAClCkE,QAAQ,GAAGT,YAAY,CAAC+B,OAAO,CAAC1C,QAAQ,CAAC;UAAA,IAC1CoB,QAAQ;YAAAoD,SAAA,CAAAtH,IAAA;YAAA;;UAAA,OAAAsH,SAAA,CAAA/G,MAAA,WAAS,KAAK;QAAA;UAAA+G,SAAA,CAAAtH,IAAA;UAAA,OACbvC,2BAAkC,CAAC;YAC/C0F,QAAQ,EAARA,QAAQ;YACR5D,UAAU,EAAVA,UAAU;YACVC,KAAK,EAAE0E;WACR,CAAC;QAAA;UAAA,OAAAoD,SAAA,CAAA/G,MAAA,WAAA+G,SAAA,CAAAjH,IAAA;QAAA;QAAA;UAAA,OAAAiH,SAAA,CAAA9G,IAAA;;OAAA4G,QAAA;GACH,IAAE,CAAC7H,UAAU,CAAC,CAAC;EAEhB,IAAMgI,YAAY,GAAGC,OAAO,CAC1B;IAAA,OAAA3J,QAAA,KACKiI,UAAU;MACbxJ,iBAAiB,EAAjBA,iBAAiB;MACjBC,MAAM,EAANA,MAAM;MACNC,cAAc,EAAdA,cAAc;MACdG,UAAU,EAAVA,UAAU;MACVC,sBAAsB,EAAtBA,sBAAsB;MACtBK,qBAAqB,EAArBA;;GACA,EACF,CACE6I,UAAU,EACVxJ,iBAAiB,EACjBC,MAAM,EACNC,cAAc,EACdG,UAAU,EACVC,sBAAsB,EACtBK,qBAAqB,CACtB,CACF;EAED,OACEwK,oBAACC,YAAY,CAACC,QAAQ;IAACC,KAAK,EAAEL;KAC3B5B,QAAQ,CACa;AAE5B,CAAC;AAED,IAAM+B,YAAY,gBAAGG,aAAa,CAACjM,iBAAiB,CAAC;AAErD,IAAakM,QAAQ,GAAG,SAAXA,QAAQA;EACnB,IAAMC,OAAO,GAAGC,UAAU,CAACN,YAAY,CAAC;EACxC,IAAI,CAACK,OAAO,EAAE;IACZ,MAAM,IAAIzB,KAAK,CAAC,4CAA4C,CAAC;;EAE/D,OAAOyB,OAAO;AAChB,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"dauth-context-react.esm.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.types.ts","../src/reducer/dauth.reducer.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.ts","../src/api/utils/routes.ts","../src/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["import {\n IActionStatus,\n IDauthDomainState,\n IDauthState,\n IDauthUser,\n} from './interfaces';\n\nconst initialDauthState: IDauthState = {\n user: {\n language:\n (typeof window !== 'undefined'\n ? window.document.documentElement.getAttribute('lang')\n : null) || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: true,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => Promise.resolve(''),\n updateUser: () => Promise.resolve(false),\n updateUserWithRedirect: () => {},\n // Send email verification\n sendEmailVerificationStatus: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => Promise.resolve(false),\n};\n\nexport default initialDauthState;\n","export const LOGIN = 'LOGIN';\nexport const SET_IS_LOADING = 'SET_IS_LOADING';\nexport const UPDATE_USER = 'UPDATE_USER';\nexport const SET_SEND_EMAIL_VERIFICATION_IS_LOADING =\n 'SET_SEND_EMAIL_VERIFICATION_IS_LOADING';\nexport const SET_SEND_EMAIL_VERIFICATION_STATUS =\n 'SET_SEND_EMAIL_VERIFICATION_STATUS';\n","import { IDauthState } from '../interfaces';\nimport * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: IDauthState, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN: {\n const login: IDauthState = {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n return login;\n }\n\n case DauthTypes.SET_IS_LOADING: {\n const isLoading: IDauthState = {\n ...state,\n isLoading: payload.isLoading,\n };\n return isLoading;\n }\n\n case DauthTypes.UPDATE_USER: {\n const updateUser: IDauthState = {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n return updateUser;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS: {\n const setSendEmailVerificationStatus: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n return setSendEmailVerificationStatus;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING: {\n const setSendEmailVerificationIsLoading: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n isLoading: payload,\n },\n };\n return setSendEmailVerificationIsLoading;\n }\n\n default:\n return state;\n }\n}\n","export const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nfunction checkIsLocalhost(): boolean {\n if (typeof window === 'undefined') return false;\n const hostname = window.location.hostname;\n return Boolean(\n hostname === 'localhost' ||\n hostname === '[::1]' ||\n hostname.match(\n /(192)\\.(168)\\.(1)\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm\n ) ||\n hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\n );\n}\n\nexport function getServerBasePath() {\n const isLocalhost = checkIsLocalhost();\n const serverPort = 4012;\n const serverLocalUrl = `${window.location.protocol}//${window.location.hostname}:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${serverDomain}/api/${apiVersion}`;\n return isLocalhost ? serverLocalUrl : serverProdUrl;\n}\n\nexport function getClientBasePath() {\n const isLocalhost = checkIsLocalhost();\n const clientPort = 5185;\n const clientLocalUrl = `${window.location.protocol}//${window.location.hostname}:${clientPort}`;\n const clientProdUrl = `https://${serverDomain}`;\n return isLocalhost ? clientLocalUrl : clientProdUrl;\n}\n","import { getServerBasePath } from './utils/config';\nimport { IDauthUser } from '../interfaces';\nimport {\n IgetUserAPIResponse,\n IrefreshAccessTokenAPIResponse,\n IsendEmailVerificationAPIResponse,\n IupdateUserAPIResponse,\n IverifyTokenAPIResponse,\n} from './interfaces/dauth.api.responses';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<IgetUserAPIResponse> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/user`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const updateUserAPI = async (\n domainName: string,\n user: Partial<IDauthUser>,\n token: string\n): Promise<IupdateUserAPIResponse> => {\n const params = {\n method: 'PATCH',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(user),\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/user`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const sendEmailVerificationAPI = async (\n domainName: string,\n token: string\n): Promise<IsendEmailVerificationAPIResponse> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/resend-email-verification`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const refreshAccessTokenAPI = async (\n domainName: string,\n token: string\n): Promise<IrefreshAccessTokenAPIResponse> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/refresh-access-token`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const verifyTokenAPI = async ({\n domainName,\n tsk,\n token,\n}: {\n domainName: string;\n tsk: string;\n token: string;\n}): Promise<IverifyTokenAPIResponse> => {\n const params = {\n method: 'POST',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ tsk }),\n };\n const response = await fetch(\n `${getServerBasePath()}/app/${domainName}/verify-token`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const TOKEN_LS = 'dauth_state';\n","export const routes = {\n signin: 'signin',\n updateUser: 'update-user',\n};\n","import {\n getUserAPI,\n refreshAccessTokenAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { getClientBasePath } from '../api/utils/config';\nimport { TOKEN_LS } from '../constants';\nimport { IDauthDomainState, IDauthUser } from '../interfaces';\nimport { routes } from '../api/utils/routes';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: React.Dispatch<any>;\n token: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n token,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n window.history.replaceState({}, document.title, window.location.pathname);\n return localStorage.setItem(TOKEN_LS, token);\n } else {\n return resetUser(dispatch);\n }\n } catch (error) {\n console.error(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: React.Dispatch<any>;\n token_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n token_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token_ls\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n const newToken = refreshAccessTokenFetch.data.accessToken || token_ls;\n const getUserFetch = await getUserAPI(domainName, newToken);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n localStorage.setItem(\n TOKEN_LS,\n refreshAccessTokenFetch.data.accessToken\n );\n return;\n } else {\n window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } else {\n window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n console.error(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport function setLogoutAction({\n dispatch,\n}: {\n dispatch: React.Dispatch<any>;\n}) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n },\n domain: {},\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n user: Partial<IDauthUser>;\n token: string | null;\n};\nexport async function setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token,\n}: TSetUpdateAction) {\n if (user.language) {\n window.document.documentElement.setAttribute('lang', user.language);\n }\n if (!token) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n return false;\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n return true;\n } else {\n console.error('Update user error', getUserFetch.data.message);\n return false;\n }\n } catch (error) {\n console.error('Update user error', error);\n return false;\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n};\nexport async function sendEmailVerificationAction({\n dispatch,\n domainName,\n token,\n}: TSetSendEmailVerificationAction) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: true,\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'info', message: 'Sending email verification...' },\n });\n try {\n const sendEmailFetch = await sendEmailVerificationAPI(domainName, token);\n if (sendEmailFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'success', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return true;\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n } catch (error) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: {\n type: 'error',\n message: 'Send email verification fetch error',\n },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n}\n\nexport async function checkTokenAction({\n dispatch,\n domainName,\n token,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n}) {\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n if (refreshAccessTokenFetch.data.accessToken) {\n localStorage.setItem(\n TOKEN_LS,\n refreshAccessTokenFetch.data.accessToken\n );\n }\n return;\n } else {\n window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\nexport async function getAccessTokenAction({\n dispatch,\n domainName,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n}) {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token_ls\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n return refreshAccessTokenFetch.data.accessToken ?? token_ls;\n } else {\n resetUser(dispatch);\n return 'token-not-found';\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\n///////////////////////////////////////////\n//////////////////////////////////////////\nexport const resetUser = (dispatch: React.Dispatch<any>) => {\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n};\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { TOKEN_LS } from './constants';\nimport { routes } from './api/utils/routes';\nimport { verifyTokenAPI } from './api/dauth.api';\nimport { IDauthUser } from './interfaces';\nimport { SET_IS_LOADING } from './reducer/dauth.types';\n\ninterface DauthProviderProps {\n domainName: string;\n tsk: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, tsk, children } = props;\n const [dauthState, dispatch] = useReducer(userReducer, initialDauthState);\n\n const isValidTsk = useCallback(\n async (token: string) => {\n try {\n const verifyToken = await verifyTokenAPI({\n domainName,\n token,\n tsk,\n });\n if (verifyToken.response.status !== 200) {\n return false;\n }\n return true;\n } catch (error) {\n return false;\n }\n },\n [domainName, tsk]\n );\n\n // Check token periodically\n useEffect(() => {\n if (!dauthState.isAuthenticated) return;\n let interval = setInterval(async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n const isValid = await isValidTsk(token_ls);\n if (isValid) {\n return action.checkTokenAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n } else {\n action.setLogoutAction({ dispatch });\n throw new Error('Ask value in DauthProvider is not valid');\n }\n }, 1000 * 60 * 5);\n return () => clearInterval(interval);\n }, [dauthState.isAuthenticated, isValidTsk]);\n\n // Catch login redirect\n useEffect(() => {\n (async () => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const token_url = urlParams.get(TOKEN_LS);\n if (token_url && !dauthState.isAuthenticated) {\n const isValid = await isValidTsk(token_url);\n if (isValid) {\n return action.setDauthStateAction({\n dispatch,\n token: token_url,\n domainName,\n });\n } else {\n action.setLogoutAction({ dispatch });\n throw new Error('Ask value in DauthProvider is not valid');\n }\n }\n })();\n }, []);\n\n // Auto Login\n useEffect(() => {\n (async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (token_ls && !dauthState.isAuthenticated) {\n const isValid = await isValidTsk(token_ls);\n if (isValid) {\n return action.setAutoLoginAction({\n dispatch,\n token_ls,\n domainName,\n });\n } else {\n action.setLogoutAction({ dispatch });\n throw new Error('Ask value in DauthProvider is not valid');\n }\n } else {\n return dispatch({\n type: SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n })();\n }, []);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.signin}`\n );\n }, [domainName]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(async () => {\n const token = await action.getAccessTokenAction({ dispatch, domainName });\n return token as string;\n }, [domainName]);\n\n const updateUser = useCallback(\n async ({\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n const user = {\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return (await action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n })) as boolean;\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath()}/${domainName}/${routes.updateUser}/${token_ls}`\n );\n }, [domainName]);\n\n const sendEmailVerification = useCallback(async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return false;\n return (await action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n })) as boolean;\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n }),\n [\n dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n ]\n );\n\n return (\n <DauthContext.Provider value={memoProvider}>\n {children}\n </DauthContext.Provider>\n );\n};\n\nconst DauthContext = createContext(initialDauthState);\n\nexport const useDauth = () => {\n const context = useContext(DauthContext);\n if (!context) {\n throw new Error('useDauth must be used inside DauthProvider');\n }\n return context;\n};\n"],"names":["initialDauthState","user","language","window","document","documentElement","getAttribute","domain","isLoading","isAuthenticated","loginWithRedirect","logout","getAccessToken","Promise","resolve","updateUser","updateUserWithRedirect","sendEmailVerificationStatus","status","type","message","sendEmailVerification","LOGIN","SET_IS_LOADING","UPDATE_USER","SET_SEND_EMAIL_VERIFICATION_IS_LOADING","SET_SEND_EMAIL_VERIFICATION_STATUS","userReducer","state","action","payload","DauthTypes","login","_extends","setSendEmailVerificationStatus","setSendEmailVerificationIsLoading","apiVersion","serverDomain","checkIsLocalhost","hostname","location","Boolean","match","getServerBasePath","isLocalhost","serverPort","serverLocalUrl","protocol","serverProdUrl","getClientBasePath","clientPort","clientLocalUrl","clientProdUrl","getUserAPI","_ref","_asyncToGenerator","_regenerator","m","_callee","domainName","token","params","response","data","w","_context","n","method","headers","Authorization","fetch","v","json","a","_x","_x2","apply","arguments","updateUserAPI","_ref2","_callee2","_context2","body","JSON","stringify","_x3","_x4","_x5","sendEmailVerificationAPI","_ref3","_callee3","_context3","_x6","_x7","refreshAccessTokenAPI","_ref4","_callee4","_context4","_x8","_x9","verifyTokenAPI","_ref6","_callee5","_ref5","tsk","_context5","_x0","TOKEN_LS","routes","signin","setDauthStateAction","_setDauthStateAction","dispatch","getUserFetch","_t","p","history","replaceState","title","pathname","localStorage","setItem","resetUser","console","error","f","setAutoLoginAction","_setAutoLoginAction","token_ls","refreshAccessTokenFetch","newToken","_t2","accessToken","replace","setLogoutAction","removeItem","setUpdateUserAction","_setUpdateUserAction","_t3","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","sendEmailFetch","checkTokenAction","_checkTokenAction","_t5","getAccessTokenAction","_getAccessTokenAction","_callee6","_ref7","_refreshAccessTokenFe","_t6","_context6","getItem","DauthProvider","props","children","_useReducer","useReducer","dauthState","isValidTsk","useCallback","verifyToken","useEffect","interval","setInterval","isValid","Error","clearInterval","queryString","urlParams","token_url","search","URLSearchParams","get","name","lastname","nickname","telPrefix","telSuffix","avatar","_callee7","_context7","memoProvider","useMemo","React","DauthContext","Provider","value","createContext","useDauth","context","useContext"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -32,11 +32,7 @@ export async function setDauthStateAction({
|
|
|
32
32
|
isAuthenticated: true,
|
|
33
33
|
},
|
|
34
34
|
});
|
|
35
|
-
window.history.replaceState(
|
|
36
|
-
{},
|
|
37
|
-
document.title,
|
|
38
|
-
getUserFetch.data.domain.loginRedirect
|
|
39
|
-
);
|
|
35
|
+
window.history.replaceState({}, document.title, window.location.pathname);
|
|
40
36
|
return localStorage.setItem(TOKEN_LS, token);
|
|
41
37
|
} else {
|
|
42
38
|
return resetUser(dispatch);
|