dauth-context-react 1.0.1 → 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/api/utils/config.d.ts +2 -6
- package/dist/dauth-context-react.cjs.development.js +422 -687
- 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 +422 -687
- package/dist/dauth-context-react.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/api/dauth.api.ts +5 -11
- package/src/api/utils/config.ts +7 -11
- package/src/index.tsx +2 -2
- package/src/initialDauthState.ts +4 -1
- package/src/reducer/dauth.actions.ts +8 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dauth-context-react.cjs.development.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: (typeof window !== 'undefined' ? window.document.documentElement.getAttribute('lang') : 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(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n );\n}\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const isLocalhost = checkIsLocalhost();\n const serverPort = 4012;\n const serverLocalUrl = `${window.location.protocol}//${window.location.hostname}:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n\nexport function getClientBasePath({ domainName }: { domainName: string }) {\n const isLocalhost = checkIsLocalhost();\n const clientPort = 5185;\n const clientLocalUrl = `${window.location.protocol}//${window.location.hostname}:${clientPort}`;\n const clientProdUrl = `https://${domainName}.${serverDomain}`;\n const clientBasePath = isLocalhost ? clientLocalUrl : clientProdUrl;\n return clientBasePath;\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({ domainName })}/tenant/${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({ domainName })}/tenant/${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({\n domainName,\n })}/tenant/${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({\n domainName,\n })}/tenant/${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({\n domainName,\n })}/tenant/${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 })}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${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(TOKEN_LS, refreshAccessTokenFetch.data.accessToken);\n }\n return;\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${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 })}/${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 })}/${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","_ref","domainName","isLocalhost","serverPort","serverLocalUrl","protocol","serverProdUrl","serverBasePath","getClientBasePath","_ref2","clientPort","clientLocalUrl","clientProdUrl","clientBasePath","getUserAPI","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","fetch","sent","json","abrupt","stop","_x","_x2","apply","arguments","updateUserAPI","_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":"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"}
|
|
1
|
+
{"version":3,"file":"dauth-context-react.cjs.development.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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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=require("react"),r=(t=e)&&"object"==typeof t&&"default"in t?t.default:t;function n(){n=function(){return e};var t,e={},r=Object.prototype,a=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function p(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{p({},"")}catch(t){p=function(t,e,r){return t[e]=r}}function l(t,e,r,n){var a=Object.create((e&&e.prototype instanceof y?e:y).prototype),i=new T(n||[]);return o(a,"_invoke",{value:_(t,r,i)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var d="suspendedStart",h="executing",m="completed",v={};function y(){}function g(){}function w(){}var b={};p(b,u,(function(){return this}));var x=Object.getPrototypeOf,E=x&&x(x(O([])));E&&E!==r&&a.call(E,u)&&(b=E);var k=w.prototype=y.prototype=Object.create(b);function I(t){["next","throw","return"].forEach((function(e){p(t,e,(function(t){return this._invoke(e,t)}))}))}function S(t,e){function r(n,o,i,u){var s=f(t[n],t,o);if("throw"!==s.type){var c=s.arg,p=c.value;return p&&"object"==typeof p&&a.call(p,"__await")?e.resolve(p.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):e.resolve(p).then((function(t){c.value=t,i(c)}),(function(t){return r("throw",t,i,u)}))}u(s.arg)}var n;o(this,"_invoke",{value:function(t,a){function o(){return new e((function(e,n){r(t,a,e,n)}))}return n=n?n.then(o,o):o()}})}function _(e,r,n){var a=d;return function(o,i){if(a===h)throw new Error("Generator is already running");if(a===m){if("throw"===o)throw i;return{value:t,done:!0}}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var s=N(u,n);if(s){if(s===v)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===d)throw a=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=h;var c=f(e,r,n);if("normal"===c.type){if(a=n.done?m:"suspendedYield",c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(a=m,n.method="throw",n.arg=c.arg)}}}function N(e,r){var n=r.method,a=e.iterator[n];if(a===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,N(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),v;var o=f(a,e.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,v;var i=o.arg;return i?i.done?(r[e.resultName]=i.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,v):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function L(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function O(e){if(e||""===e){var r=e[u];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function r(){for(;++n<e.length;)if(a.call(e,n))return r.value=e[n],r.done=!1,r;return r.value=t,r.done=!0,r};return o.next=o}}throw new TypeError(typeof e+" is not iterable")}return g.prototype=w,o(k,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:g,configurable:!0}),g.displayName=p(w,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===g||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,p(t,c,"GeneratorFunction")),t.prototype=Object.create(k),t},e.awrap=function(t){return{__await:t}},I(S.prototype),p(S.prototype,s,(function(){return this})),e.AsyncIterator=S,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var i=new S(l(t,r,n,a),o);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},I(k),p(k,c,"Generator"),p(k,u,(function(){return this})),p(k,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=O,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(A),!e)for(var r in this)"t"===r.charAt(0)&&a.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function n(n,a){return u.type="throw",u.arg=e,r.next=n,a&&(r.method="next",r.arg=t),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],u=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=a.call(i,"catchLoc"),c=a.call(i,"finallyLoc");if(s&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&a.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=t,i.arg=e,o?(this.method="next",this.next=o.finallyLoc,v):this.complete(i)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var a=n.arg;A(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:O(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),v}},e}function a(t,e,r,n,a,o,i){try{var u=t[o](i),s=u.value}catch(t){return void r(t)}u.done?e(s):Promise.resolve(s).then(n,a)}function o(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function u(t){a(i,n,o,u,s,"next",t)}function s(t){a(i,n,o,u,s,"throw",t)}u(void 0)}))}}function i(){return(i=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}var u={user:{language:("undefined"!=typeof window?window.document.documentElement.getAttribute("lang"):null)||"es"},domain:{},isLoading:!0,isAuthenticated:!1,loginWithRedirect:function(){},logout:function(){},getAccessToken:function(){return Promise.resolve("")},updateUser:function(){return Promise.resolve(!1)},updateUserWithRedirect:function(){},sendEmailVerificationStatus:{status:{type:"info",message:"Sending email verification..."},isLoading:!1},sendEmailVerification:function(){return Promise.resolve(!1)}};function s(t,e){var r=e.payload;switch(e.type){case"LOGIN":return i({},t,{user:r.user,domain:r.domain,isAuthenticated:r.isAuthenticated});case"SET_IS_LOADING":return i({},t,{isLoading:r.isLoading});case"UPDATE_USER":return i({},t,{user:i({},t.user,r)});case"SET_SEND_EMAIL_VERIFICATION_STATUS":return i({},t,{sendEmailVerificationStatus:i({},t.sendEmailVerificationStatus,{status:{type:r.type,message:r.message}})});case"SET_SEND_EMAIL_VERIFICATION_IS_LOADING":return i({},t,{sendEmailVerificationStatus:i({},t.sendEmailVerificationStatus,{isLoading:r})});default:return t}}function c(){if("undefined"==typeof window)return!1;var t=window.location.hostname;return Boolean("localhost"===t||"[::1]"===t||t.match(/(192)\.(168)\.(1)\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm)||t.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))}function p(t){var e=t.domainName,r=c(),n=window.location.protocol+"//"+window.location.hostname+":4012/api/v1";return r?n:"https://"+e+".dauth.ovh/api/v1"}function l(t){var e=t.domainName,r=c(),n=window.location.protocol+"//"+window.location.hostname+":5185";return r?n:"https://"+e+".dauth.ovh"}var f=function(){var t=o(n().mark((function t(e,r){var a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(p({domainName:e})+"/tenant/"+e+"/user",a);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),d=function(){var t=o(n().mark((function t(e,r,a){var o,i;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o={method:"PATCH",headers:{Authorization:a,"Content-Type":"application/json"},body:JSON.stringify(r)},t.next=3,fetch(p({domainName:e})+"/tenant/"+e+"/user",o);case 3:return i=t.sent,t.next=6,i.json();case 6:return t.abrupt("return",{response:i,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r,n){return t.apply(this,arguments)}}(),h=function(){var t=o(n().mark((function t(e,r){var a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(p({domainName:e})+"/tenant/"+e+"/resend-email-verification",a);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),m=function(){var t=o(n().mark((function t(e,r){var a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(p({domainName:e})+"/tenant/"+e+"/refresh-access-token",a);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),v=function(){var t=o(n().mark((function t(e){var r,a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.domainName,a={method:"POST",headers:{Authorization:e.token,"Content-Type":"application/json"},body:JSON.stringify({tsk:e.tsk})},t.next=4,fetch(p({domainName:r})+"/tenant/"+r+"/verify-token",a);case 4:return o=t.sent,t.next=7,o.json();case 7:return t.abrupt("return",{response:o,data:t.sent});case 9:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),y="dauth_state";function g(t){return w.apply(this,arguments)}function w(){return(w=o(n().mark((function t(e){var r,a,o,i;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.token,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,f(o,a);case 5:if(200!==(i=t.sent).response.status){t.next=12;break}return r({type:"LOGIN",payload:{user:i.data.user,domain:i.data.domain,isAuthenticated:!0}}),window.history.replaceState({},document.title,i.data.domain.loginRedirect),t.abrupt("return",localStorage.setItem(y,a));case 12:return t.abrupt("return",O(r));case 13:t.next=19;break;case 15:return t.prev=15,t.t0=t.catch(2),console.error(t.t0),t.abrupt("return",O(r));case 19:return t.prev=19,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(19);case 22:case"end":return t.stop()}}),t,null,[[2,15,19,22]])})))).apply(this,arguments)}function b(t){return x.apply(this,arguments)}function x(){return(x=o(n().mark((function t(e){var r,a,o,i,u,s;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.token_ls,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,m(o,a);case 5:if(200!==(i=t.sent).response.status){t.next=21;break}return u=i.data.accessToken||a,t.next=10,f(o,u);case 10:if(200!==(s=t.sent).response.status){t.next=17;break}return r({type:"LOGIN",payload:{user:s.data.user,domain:s.data.domain,isAuthenticated:!0}}),localStorage.setItem(y,i.data.accessToken),t.abrupt("return");case 17:return window.location.replace(l({domainName:o})+"/"+o+"/signin"),t.abrupt("return",O(r));case 19:t.next=23;break;case 21:return window.location.replace(l({domainName:o})+"/"+o+"/signin"),t.abrupt("return",O(r));case 23:t.next=29;break;case 25:return t.prev=25,t.t0=t.catch(2),console.error(t.t0),t.abrupt("return",O(r));case 29:return t.prev=29,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(29);case 32:case"end":return t.stop()}}),t,null,[[2,25,29,32]])})))).apply(this,arguments)}function E(t){var e=t.dispatch;return e({type:"SET_IS_LOADING",payload:{isLoading:!0}}),e({type:"LOGIN",payload:{user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isAuthenticated:!1}}),localStorage.removeItem(y),e({type:"SET_IS_LOADING",payload:{isLoading:!1}})}function k(t){return I.apply(this,arguments)}function I(){return(I=o(n().mark((function t(e){var r,a,o,i,u;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.dispatch,a=e.domainName,i=e.token,(o=e.user).language&&window.document.documentElement.setAttribute("lang",o.language),i){t.next=5;break}return r({type:"UPDATE_USER",payload:o}),t.abrupt("return",!1);case 5:return t.prev=5,t.next=8,d(a,o,i);case 8:if(200!==(u=t.sent).response.status){t.next=14;break}return r({type:"UPDATE_USER",payload:u.data.user}),t.abrupt("return",!0);case 14:return console.error("Update user error",u.data.message),t.abrupt("return",!1);case 16:t.next=22;break;case 18:return t.prev=18,t.t0=t.catch(5),console.error("Update user error",t.t0),t.abrupt("return",!1);case 22:case"end":return t.stop()}}),t,null,[[5,18]])})))).apply(this,arguments)}function S(t){return _.apply(this,arguments)}function _(){return(_=o(n().mark((function t(e){var r,a,o,i;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.domainName,o=e.token,(r=e.dispatch)({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!0}),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"info",message:"Sending email verification..."}}),t.prev=3,t.next=6,h(a,o);case 6:if(200!==(i=t.sent).response.status){t.next=13;break}return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"success",message:i.data.message}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!0);case 13:return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:i.data.message}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!1);case 16:t.next=23;break;case 18:return t.prev=18,t.t0=t.catch(3),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:"Send email verification fetch error"}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!1);case 23:case"end":return t.stop()}}),t,null,[[3,18]])})))).apply(this,arguments)}function N(t){return L.apply(this,arguments)}function L(){return(L=o(n().mark((function t(e){var r,a,o,i;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.dispatch,a=e.domainName,o=e.token,t.prev=1,t.next=4,m(a,o);case 4:if(200!==(i=t.sent).response.status){t.next=10;break}return i.data.accessToken&&localStorage.setItem(y,i.data.accessToken),t.abrupt("return");case 10:return window.location.replace(l({domainName:a})+"/"+a+"/signin"),t.abrupt("return",O(r));case 12:t.next=18;break;case 14:throw t.prev=14,t.t0=t.catch(1),O(r),t.t0;case 18:case"end":return t.stop()}}),t,null,[[1,14]])})))).apply(this,arguments)}function A(t){return T.apply(this,arguments)}function T(){return(T=o(n().mark((function t(e){var r,a,o,i,u;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.dispatch,a=e.domainName,o=localStorage.getItem(y)){t.next=4;break}return t.abrupt("return");case 4:return t.prev=4,t.next=7,m(a,o);case 7:if(200!==(i=t.sent).response.status){t.next=12;break}return t.abrupt("return",null!=(u=i.data.accessToken)?u:o);case 12:return O(r),t.abrupt("return","token-not-found");case 14:t.next=20;break;case 16:throw t.prev=16,t.t0=t.catch(4),O(r),t.t0;case 20:case"end":return t.stop()}}),t,null,[[4,16]])})))).apply(this,arguments)}var O=function(t){return localStorage.removeItem(y),t({type:"LOGIN",payload:{user:{},domain:{},isAuthenticated:!1}})},D=e.createContext(u);exports.DauthProvider=function(t){var a=t.domainName,c=t.tsk,p=t.children,f=e.useReducer(s,u),d=f[0],h=f[1],m=e.useCallback(function(){var t=o(n().mark((function t(e){return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,v({domainName:a,token:e,tsk:c});case 3:if(200===t.sent.response.status){t.next=6;break}return t.abrupt("return",!1);case 6:return t.abrupt("return",!0);case 9:return t.prev=9,t.t0=t.catch(0),t.abrupt("return",!1);case 12:case"end":return t.stop()}}),t,null,[[0,9]])})));return function(e){return t.apply(this,arguments)}}(),[a,c]);e.useEffect((function(){if(d.isAuthenticated){var t=setInterval(o(n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=localStorage.getItem(y)){t.next=3;break}return t.abrupt("return");case 3:return t.next=5,m(e);case 5:if(!t.sent){t.next=10;break}return t.abrupt("return",N({dispatch:h,domainName:a,token:e}));case 10:throw E({dispatch:h}),new Error("Ask value in DauthProvider is not valid");case 12:case"end":return t.stop()}}),t)}))),3e5);return function(){return clearInterval(t)}}}),[d.isAuthenticated,m]),e.useEffect((function(){o(n().mark((function t(){var e,r,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=window.location.search){t.next=3;break}return t.abrupt("return");case 3:if(r=new URLSearchParams(e),!(o=r.get(y))||d.isAuthenticated){t.next=15;break}return t.next=8,m(o);case 8:if(!t.sent){t.next=13;break}return t.abrupt("return",g({dispatch:h,token:o,domainName:a}));case 13:throw E({dispatch:h}),new Error("Ask value in DauthProvider is not valid");case 15:case"end":return t.stop()}}),t)})))()}),[]),e.useEffect((function(){o(n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!(e=localStorage.getItem(y))||d.isAuthenticated){t.next=13;break}return t.next=4,m(e);case 4:if(!t.sent){t.next=9;break}return t.abrupt("return",b({dispatch:h,token_ls:e,domainName:a}));case 9:throw E({dispatch:h}),new Error("Ask value in DauthProvider is not valid");case 11:t.next=14;break;case 13:return t.abrupt("return",h({type:"SET_IS_LOADING",payload:{isLoading:!1}}));case 14:case"end":return t.stop()}}),t)})))()}),[]);var w=e.useCallback((function(){return window.location.replace(l({domainName:a})+"/"+a+"/signin")}),[a]),x=e.useCallback((function(){return E({dispatch:h})}),[]),I=e.useCallback(o(n().mark((function t(){return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,A({dispatch:h,domainName:a});case 2:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)}))),[a]),_=e.useCallback(function(){var t=o(n().mark((function t(e){var r,o,i,u,s,c,p,l,f;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.name,o=e.lastname,i=e.nickname,u=e.telPrefix,s=e.telSuffix,c=e.language,p=e.avatar,l=localStorage.getItem(y),f={name:r,lastname:o,nickname:i,telPrefix:u,telSuffix:s,language:c,avatar:p},t.next=5,k({dispatch:h,domainName:a,user:f,token:l});case 5:return t.abrupt("return",t.sent);case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),[a]),L=e.useCallback((function(){var t=localStorage.getItem(y);if(t)return window.location.replace(l({domainName:a})+"/"+a+"/update-user/"+t)}),[a]),T=e.useCallback(o(n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=localStorage.getItem(y)){t.next=3;break}return t.abrupt("return",!1);case 3:return t.next=5,S({dispatch:h,domainName:a,token:e});case 5:return t.abrupt("return",t.sent);case 6:case"end":return t.stop()}}),t)}))),[a]),O=e.useMemo((function(){return i({},d,{loginWithRedirect:w,logout:x,getAccessToken:I,updateUser:_,updateUserWithRedirect:L,sendEmailVerification:T})}),[d,w,x,I,_,L,T]);return r.createElement(D.Provider,{value:O},p)},exports.useDauth=function(){var t=e.useContext(D);if(!t)throw new Error("useDauth must be used inside DauthProvider");return t};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("react"),n=(e=t)&&"object"==typeof e&&"default"in e?e.default:e;function r(e,t,n,r,a,o,i){try{var u=e[o](i),s=u.value}catch(e){return void n(e)}u.done?t(s):Promise.resolve(s).then(r,a)}function a(e){return function(){var t=this,n=arguments;return new Promise((function(a,o){var i=e.apply(t,n);function u(e){r(i,a,o,u,s,"next",e)}function s(e){r(i,a,o,u,s,"throw",e)}u(void 0)}))}}function o(){return(o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(null,arguments)}function i(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",a=n.toStringTag||"@@toStringTag";function o(n,r,a,o){var i=Object.create((r&&r.prototype instanceof c?r:c).prototype);return u(i,"_invoke",function(n,r,a){var o,i,u,c=0,p=a||[],f=!1,l={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,n){return o=t,i=0,u=e,l.n=n,s}};function d(n,r){for(i=n,u=r,t=0;!f&&c&&!a&&t<p.length;t++){var a,o=p[t],d=l.p,h=o[2];n>3?(a=h===r)&&(u=o[(i=o[4])?5:(i=3,3)],o[4]=o[5]=e):o[0]<=d&&((a=n<2&&d<o[1])?(i=0,l.v=r,l.n=o[1]):d<h&&(a=n<3||o[0]>r||r>h)&&(o[4]=n,o[5]=r,l.n=h,i=0))}if(a||n>1)return s;throw f=!0,r}return function(a,p,h){if(c>1)throw TypeError("Generator is already running");for(f&&1===p&&d(p,h),i=p,u=h;(t=i<2?e:u)||!f;){o||(i?i<3?(i>1&&(l.n=-1),d(i,u)):l.n=u:l.v=u);try{if(c=2,o){if(i||(a="next"),t=o[a]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,i<2&&(i=0)}else 1===i&&(t=o.return)&&t.call(o),i<2&&(u=TypeError("The iterator does not provide a '"+a+"' method"),i=1);o=e}else if((t=(f=l.n<0)?u:n.call(r,l))!==s)break}catch(t){o=e,i=1,u=t}finally{c=1}}return{value:t,done:f}}}(n,a,o),!0),i}var s={};function c(){}function p(){}function f(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(u(t={},r,(function(){return this})),t),d=f.prototype=c.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,u(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return p.prototype=f,u(d,"constructor",f),u(f,"constructor",p),p.displayName="GeneratorFunction",u(f,a,"GeneratorFunction"),u(d),u(d,a,"Generator"),u(d,r,(function(){return this})),u(d,"toString",(function(){return"[object Generator]"})),(i=function(){return{w:o,m:h}})()}function u(e,t,n,r){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}(u=function(e,t,n,r){function o(t,n){u(e,t,(function(e){return this._invoke(t,n,e)}))}t?a?a(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))})(e,t,n,r)}var s={user:{language:("undefined"!=typeof window?window.document.documentElement.getAttribute("lang"):null)||"es"},domain:{},isLoading:!0,isAuthenticated:!1,loginWithRedirect:function(){},logout:function(){},getAccessToken:function(){return Promise.resolve("")},updateUser:function(){return Promise.resolve(!1)},updateUserWithRedirect:function(){},sendEmailVerificationStatus:{status:{type:"info",message:"Sending email verification..."},isLoading:!1},sendEmailVerification:function(){return Promise.resolve(!1)}};function c(e,t){var n=t.payload;switch(t.type){case"LOGIN":return o({},e,{user:n.user,domain:n.domain,isAuthenticated:n.isAuthenticated});case"SET_IS_LOADING":return o({},e,{isLoading:n.isLoading});case"UPDATE_USER":return o({},e,{user:o({},e.user,n)});case"SET_SEND_EMAIL_VERIFICATION_STATUS":return o({},e,{sendEmailVerificationStatus:o({},e.sendEmailVerificationStatus,{status:{type:n.type,message:n.message}})});case"SET_SEND_EMAIL_VERIFICATION_IS_LOADING":return o({},e,{sendEmailVerificationStatus:o({},e.sendEmailVerificationStatus,{isLoading:n})});default:return e}}function p(){if("undefined"==typeof window)return!1;var e=window.location.hostname;return Boolean("localhost"===e||"[::1]"===e||e.match(/(192)\.(168)\.(1)\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm)||e.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))}function f(){var e=p(),t=window.location.protocol+"//"+window.location.hostname+":4012/api/v1";return e?t:"https://dauth.ovh/api/v1"}function l(){var e=p(),t=window.location.protocol+"//"+window.location.hostname+":5185";return e?t:"https://dauth.ovh"}var d=function(){var e=a(i().m((function e(t,n){var r,a;return i().w((function(e){for(;;)switch(e.n){case 0:return r={method:"GET",headers:{Authorization:n,"Content-Type":"application/json"}},e.n=1,fetch(f()+"/app/"+t+"/user",r);case 1:return a=e.v,e.n=2,a.json();case 2:return e.a(2,{response:a,data:e.v})}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),h=function(){var e=a(i().m((function e(t,n,r){var a,o;return i().w((function(e){for(;;)switch(e.n){case 0:return a={method:"PATCH",headers:{Authorization:r,"Content-Type":"application/json"},body:JSON.stringify(n)},e.n=1,fetch(f()+"/app/"+t+"/user",a);case 1:return o=e.v,e.n=2,o.json();case 2:return e.a(2,{response:o,data:e.v})}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),m=function(){var e=a(i().m((function e(t,n){var r,a;return i().w((function(e){for(;;)switch(e.n){case 0:return r={method:"GET",headers:{Authorization:n,"Content-Type":"application/json"}},e.n=1,fetch(f()+"/app/"+t+"/resend-email-verification",r);case 1:return a=e.v,e.n=2,a.json();case 2:return e.a(2,{response:a,data:e.v})}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),v=function(){var e=a(i().m((function e(t,n){var r,a;return i().w((function(e){for(;;)switch(e.n){case 0:return r={method:"GET",headers:{Authorization:n,"Content-Type":"application/json"}},e.n=1,fetch(f()+"/app/"+t+"/refresh-access-token",r);case 1:return a=e.v,e.n=2,a.json();case 2:return e.a(2,{response:a,data:e.v})}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),y=function(){var e=a(i().m((function e(t){var n,r,a;return i().w((function(e){for(;;)switch(e.n){case 0:return n=t.domainName,r={method:"POST",headers:{Authorization:t.token,"Content-Type":"application/json"},body:JSON.stringify({tsk:t.tsk})},e.n=1,fetch(f()+"/app/"+n+"/verify-token",r);case 1:return a=e.v,e.n=2,a.json();case 2:return e.a(2,{response:a,data:e.v})}}),e)})));return function(t){return e.apply(this,arguments)}}(),w="dauth_state";function S(e){return g.apply(this,arguments)}function g(){return(g=a(i().m((function e(t){var n,r,a,o;return i().w((function(e){for(;;)switch(e.p=e.n){case 0:return r=t.token,a=t.domainName,(n=t.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),e.p=1,e.n=2,d(a,r);case 2:if(200!==(o=e.v).response.status){e.n=3;break}return n({type:"LOGIN",payload:{user:o.data.user,domain:o.data.domain,isAuthenticated:!0}}),window.history.replaceState({},document.title,window.location.pathname),e.a(2,localStorage.setItem(w,r));case 3:return e.a(2,G(n));case 4:e.n=6;break;case 5:return e.p=5,console.error(e.v),e.a(2,G(n));case 6:return e.p=6,n({type:"SET_IS_LOADING",payload:{isLoading:!1}}),e.f(6);case 7:return e.a(2)}}),e,null,[[1,5,6,7]])})))).apply(this,arguments)}function I(e){return E.apply(this,arguments)}function E(){return(E=a(i().m((function e(t){var n,r,a,o,u,s;return i().w((function(e){for(;;)switch(e.p=e.n){case 0:return r=t.token_ls,a=t.domainName,(n=t.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),e.p=1,e.n=2,v(a,r);case 2:if(200!==(o=e.v).response.status){e.n=6;break}return u=o.data.accessToken||r,e.n=3,d(a,u);case 3:if(200!==(s=e.v).response.status){e.n=4;break}return n({type:"LOGIN",payload:{user:s.data.user,domain:s.data.domain,isAuthenticated:!0}}),localStorage.setItem(w,o.data.accessToken),e.a(2);case 4:return window.location.replace(l()+"/"+a+"/signin"),e.a(2,G(n));case 5:e.n=7;break;case 6:return window.location.replace(l()+"/"+a+"/signin"),e.a(2,G(n));case 7:e.n=9;break;case 8:return e.p=8,console.error(e.v),e.a(2,G(n));case 9:return e.p=9,n({type:"SET_IS_LOADING",payload:{isLoading:!1}}),e.f(9);case 10:return e.a(2)}}),e,null,[[1,8,9,10]])})))).apply(this,arguments)}function _(e){var t=e.dispatch;return t({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t({type:"LOGIN",payload:{user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isAuthenticated:!1}}),localStorage.removeItem(w),t({type:"SET_IS_LOADING",payload:{isLoading:!1}})}function k(e){return A.apply(this,arguments)}function A(){return(A=a(i().m((function e(t){var n,r,a,o,u;return i().w((function(e){for(;;)switch(e.p=e.n){case 0:if(n=t.dispatch,r=t.domainName,o=t.token,(a=t.user).language&&window.document.documentElement.setAttribute("lang",a.language),o){e.n=1;break}return n({type:"UPDATE_USER",payload:a}),e.a(2,!1);case 1:return e.p=1,e.n=2,h(r,a,o);case 2:if(200!==(u=e.v).response.status){e.n=3;break}return n({type:"UPDATE_USER",payload:u.data.user}),e.a(2,!0);case 3:return console.error("Update user error",u.data.message),e.a(2,!1);case 4:e.n=6;break;case 5:return e.p=5,console.error("Update user error",e.v),e.a(2,!1);case 6:return e.a(2)}}),e,null,[[1,5]])})))).apply(this,arguments)}function T(e){return b.apply(this,arguments)}function b(){return(b=a(i().m((function e(t){var n,r,a,o;return i().w((function(e){for(;;)switch(e.p=e.n){case 0:return r=t.domainName,a=t.token,(n=t.dispatch)({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!0}),n({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"info",message:"Sending email verification..."}}),e.p=1,e.n=2,m(r,a);case 2:if(200!==(o=e.v).response.status){e.n=3;break}return n({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"success",message:o.data.message}}),n({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),e.a(2,!0);case 3:return n({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:o.data.message}}),n({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),e.a(2,!1);case 4:e.n=6;break;case 5:return e.p=5,n({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:"Send email verification fetch error"}}),n({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),e.a(2,!1);case 6:return e.a(2)}}),e,null,[[1,5]])})))).apply(this,arguments)}function N(e){return O.apply(this,arguments)}function O(){return(O=a(i().m((function e(t){var n,r,a,o,u;return i().w((function(e){for(;;)switch(e.p=e.n){case 0:return n=t.dispatch,r=t.domainName,a=t.token,e.p=1,e.n=2,v(r,a);case 2:if(200!==(o=e.v).response.status){e.n=3;break}return o.data.accessToken&&localStorage.setItem(w,o.data.accessToken),e.a(2);case 3:return window.location.replace(l()+"/"+r+"/signin"),e.a(2,G(n));case 4:e.n=6;break;case 5:throw e.p=5,u=e.v,G(n),u;case 6:return e.a(2)}}),e,null,[[1,5]])})))).apply(this,arguments)}function L(e){return D.apply(this,arguments)}function D(){return(D=a(i().m((function e(t){var n,r,a,o,u,s;return i().w((function(e){for(;;)switch(e.p=e.n){case 0:if(n=t.dispatch,r=t.domainName,a=localStorage.getItem(w)){e.n=1;break}return e.a(2);case 1:return e.p=1,e.n=2,v(r,a);case 2:if(200!==(o=e.v).response.status){e.n=3;break}return e.a(2,null!=(u=o.data.accessToken)?u:a);case 3:return G(n),e.a(2,"token-not-found");case 4:e.n=6;break;case 5:throw e.p=5,s=e.v,G(n),s;case 6:return e.a(2)}}),e,null,[[1,5]])})))).apply(this,arguments)}var G=function(e){return localStorage.removeItem(w),e({type:"LOGIN",payload:{user:{},domain:{},isAuthenticated:!1}})},C=t.createContext(s);exports.DauthProvider=function(e){var r=e.domainName,u=e.tsk,p=e.children,f=t.useReducer(c,s),d=f[0],h=f[1],m=t.useCallback(function(){var e=a(i().m((function e(t){return i().w((function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,y({domainName:r,token:t,tsk:u});case 1:if(200===e.v.response.status){e.n=2;break}return e.a(2,!1);case 2:return e.a(2,!0);case 3:return e.p=3,e.a(2,!1)}}),e,null,[[0,3]])})));return function(t){return e.apply(this,arguments)}}(),[r,u]);t.useEffect((function(){if(d.isAuthenticated){var e=setInterval(a(i().m((function e(){var t;return i().w((function(e){for(;;)switch(e.n){case 0:if(t=localStorage.getItem(w)){e.n=1;break}return e.a(2);case 1:return e.n=2,m(t);case 2:if(!e.v){e.n=3;break}return e.a(2,N({dispatch:h,domainName:r,token:t}));case 3:throw _({dispatch:h}),new Error("Ask value in DauthProvider is not valid");case 4:return e.a(2)}}),e)}))),3e5);return function(){return clearInterval(e)}}}),[d.isAuthenticated,m]),t.useEffect((function(){a(i().m((function e(){var t,n,a;return i().w((function(e){for(;;)switch(e.n){case 0:if(t=window.location.search){e.n=1;break}return e.a(2);case 1:if(n=new URLSearchParams(t),!(a=n.get(w))||d.isAuthenticated){e.n=4;break}return e.n=2,m(a);case 2:if(!e.v){e.n=3;break}return e.a(2,S({dispatch:h,token:a,domainName:r}));case 3:throw _({dispatch:h}),new Error("Ask value in DauthProvider is not valid");case 4:return e.a(2)}}),e)})))()}),[]),t.useEffect((function(){a(i().m((function e(){var t;return i().w((function(e){for(;;)switch(e.n){case 0:if(!(t=localStorage.getItem(w))||d.isAuthenticated){e.n=4;break}return e.n=1,m(t);case 1:if(!e.v){e.n=2;break}return e.a(2,I({dispatch:h,token_ls:t,domainName:r}));case 2:throw _({dispatch:h}),new Error("Ask value in DauthProvider is not valid");case 3:e.n=5;break;case 4:return e.a(2,h({type:"SET_IS_LOADING",payload:{isLoading:!1}}));case 5:return e.a(2)}}),e)})))()}),[]);var v=t.useCallback((function(){return window.location.replace(l()+"/"+r+"/signin")}),[r]),g=t.useCallback((function(){return _({dispatch:h})}),[]),E=t.useCallback(a(i().m((function e(){return i().w((function(e){for(;;)switch(e.n){case 0:return e.n=1,L({dispatch:h,domainName:r});case 1:return e.a(2,e.v)}}),e)}))),[r]),A=t.useCallback(function(){var e=a(i().m((function e(t){var n,a,o,u,s,c,p,f,l;return i().w((function(e){for(;;)switch(e.n){case 0:return n=t.name,a=t.lastname,o=t.nickname,u=t.telPrefix,s=t.telSuffix,c=t.language,p=t.avatar,f=localStorage.getItem(w),l={name:n,lastname:a,nickname:o,telPrefix:u,telSuffix:s,language:c,avatar:p},e.n=1,k({dispatch:h,domainName:r,user:l,token:f});case 1:return e.a(2,e.v)}}),e)})));return function(t){return e.apply(this,arguments)}}(),[r]),b=t.useCallback((function(){var e=localStorage.getItem(w);if(e)return window.location.replace(l()+"/"+r+"/update-user/"+e)}),[r]),O=t.useCallback(a(i().m((function e(){var t;return i().w((function(e){for(;;)switch(e.n){case 0:if(t=localStorage.getItem(w)){e.n=1;break}return e.a(2,!1);case 1:return e.n=2,T({dispatch:h,domainName:r,token:t});case 2:return e.a(2,e.v)}}),e)}))),[r]),D=t.useMemo((function(){return o({},d,{loginWithRedirect:v,logout:g,getAccessToken:E,updateUser:A,updateUserWithRedirect:b,sendEmailVerification:O})}),[d,v,g,E,A,b,O]);return n.createElement(C.Provider,{value:D},p)},exports.useDauth=function(){var e=t.useContext(C);if(!e)throw new Error("useDauth must be used inside DauthProvider");return e};
|
|
2
2
|
//# sourceMappingURL=dauth-context-react.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dauth-context-react.cjs.production.min.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.reducer.ts","../src/reducer/dauth.types.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.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: (typeof window !== 'undefined' ? window.document.documentElement.getAttribute('lang') : 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","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 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","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(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n );\n}\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const isLocalhost = checkIsLocalhost();\n const serverPort = 4012;\n const serverLocalUrl = `${window.location.protocol}//${window.location.hostname}:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n\nexport function getClientBasePath({ domainName }: { domainName: string }) {\n const isLocalhost = checkIsLocalhost();\n const clientPort = 5185;\n const clientLocalUrl = `${window.location.protocol}//${window.location.hostname}:${clientPort}`;\n const clientProdUrl = `https://${domainName}.${serverDomain}`;\n const clientBasePath = isLocalhost ? clientLocalUrl : clientProdUrl;\n return clientBasePath;\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({ domainName })}/tenant/${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({ domainName })}/tenant/${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({\n domainName,\n })}/tenant/${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({\n domainName,\n })}/tenant/${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({\n domainName,\n })}/tenant/${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","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 })}/${domainName}/${routes.signin}`\n );\n return resetUser(dispatch);\n }\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${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(TOKEN_LS, refreshAccessTokenFetch.data.accessToken);\n }\n return;\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${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 })}/${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 })}/${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","userReducer","state","action","payload","_extends","checkIsLocalhost","hostname","location","Boolean","match","getServerBasePath","_ref","domainName","isLocalhost","serverLocalUrl","protocol","getClientBasePath","_ref2","clientLocalUrl","getUserAPI","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","wrap","_context","prev","next","method","headers","Authorization","Content-Type","fetch","sent","json","abrupt","data","stop","_x","_x2","apply","arguments","updateUserAPI","_callee2","_context2","body","JSON","stringify","_x3","_x4","_x5","sendEmailVerificationAPI","_ref3","_callee3","_context3","_x6","_x7","refreshAccessTokenAPI","_ref4","_callee4","_context4","_x8","_x9","verifyTokenAPI","_ref6","_callee5","_ref5","_context5","tsk","_x10","TOKEN_LS","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","_context6","getItem","DauthContext","createContext","props","children","_useReducer","useReducer","dauthState","isValidTsk","useCallback","useEffect","interval","setInterval","Error","clearInterval","queryString","urlParams","token_url","search","URLSearchParams","get","name","lastname","nickname","telPrefix","telSuffix","avatar","_callee7","_context7","memoProvider","useMemo","React","Provider","value","context","useContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dauth-context-react.cjs.production.min.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.reducer.ts","../src/reducer/dauth.types.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.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","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 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","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","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","userReducer","state","action","payload","_extends","checkIsLocalhost","hostname","location","Boolean","match","getServerBasePath","isLocalhost","serverLocalUrl","protocol","getClientBasePath","clientLocalUrl","getUserAPI","_ref","_asyncToGenerator","_regenerator","m","_callee","domainName","token","params","response","w","_context","n","method","headers","Authorization","Content-Type","fetch","v","json","a","data","_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","_context5","tsk","_x0","TOKEN_LS","setDauthStateAction","_setDauthStateAction","dispatch","getUserFetch","p","history","replaceState","title","pathname","localStorage","setItem","resetUser","console","error","f","setAutoLoginAction","_setAutoLoginAction","token_ls","refreshAccessTokenFetch","newToken","accessToken","replace","setLogoutAction","removeItem","setUpdateUserAction","_setUpdateUserAction","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","sendEmailFetch","checkTokenAction","_checkTokenAction","_t5","getAccessTokenAction","_getAccessTokenAction","_callee6","_ref7","_refreshAccessTokenFe","_t6","_context6","getItem","DauthContext","createContext","props","children","_useReducer","useReducer","dauthState","isValidTsk","useCallback","useEffect","interval","setInterval","Error","clearInterval","queryString","urlParams","token_url","search","URLSearchParams","get","name","lastname","nickname","telPrefix","telSuffix","avatar","_callee7","_context7","memoProvider","useMemo","React","Provider","value","context","useContext"],"mappings":"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"}
|