dauth-context-react 0.1.975 → 0.1.977
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/dauth.api.d.ts +1 -0
- package/dist/dauth-context-react.cjs.development.js +104 -1
- 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 +104 -1
- package/dist/dauth-context-react.esm.js.map +1 -1
- package/dist/initialDauthState.d.ts +1 -1
- package/dist/reducer/dauth.actions.d.ts +5 -0
- package/package.json +1 -1
- package/src/api/dauth.api.ts +22 -1
- package/src/index.tsx +7 -0
- package/src/initialDauthState.ts +1 -1
- package/src/reducer/dauth.actions.ts +48 -1
package/dist/api/dauth.api.d.ts
CHANGED
|
@@ -2,3 +2,4 @@ import { IDauthUser } from '../initialDauthState';
|
|
|
2
2
|
export declare const getUserAPI: (domainName: string, token: string) => Promise<any>;
|
|
3
3
|
export declare const updateUserAPI: (domainName: string, user: Partial<IDauthUser>, token: string) => Promise<any>;
|
|
4
4
|
export declare const sendEmailVerificationAPI: (domainName: string, token: string) => Promise<any>;
|
|
5
|
+
export declare const refreshAccessTokenAPI: (domainName: string, token: string) => Promise<any>;
|
|
@@ -526,7 +526,7 @@ var sendEmailVerificationAPI = /*#__PURE__*/function () {
|
|
|
526
526
|
params = {
|
|
527
527
|
method: 'GET',
|
|
528
528
|
headers: {
|
|
529
|
-
Authorization:
|
|
529
|
+
Authorization: token,
|
|
530
530
|
'Content-Type': 'application/json'
|
|
531
531
|
}
|
|
532
532
|
};
|
|
@@ -554,6 +554,43 @@ var sendEmailVerificationAPI = /*#__PURE__*/function () {
|
|
|
554
554
|
return _ref3.apply(this, arguments);
|
|
555
555
|
};
|
|
556
556
|
}();
|
|
557
|
+
var refreshAccessTokenAPI = /*#__PURE__*/function () {
|
|
558
|
+
var _ref4 = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(domainName, token) {
|
|
559
|
+
var params, response, data;
|
|
560
|
+
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
|
561
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
562
|
+
case 0:
|
|
563
|
+
params = {
|
|
564
|
+
method: 'GET',
|
|
565
|
+
headers: {
|
|
566
|
+
Authorization: token,
|
|
567
|
+
'Content-Type': 'application/json'
|
|
568
|
+
}
|
|
569
|
+
};
|
|
570
|
+
_context4.next = 3;
|
|
571
|
+
return fetch(getServerBasePath({
|
|
572
|
+
domainName: domainName
|
|
573
|
+
}) + "/t-refresh-access-token/" + domainName, params);
|
|
574
|
+
case 3:
|
|
575
|
+
response = _context4.sent;
|
|
576
|
+
_context4.next = 6;
|
|
577
|
+
return response.json();
|
|
578
|
+
case 6:
|
|
579
|
+
data = _context4.sent;
|
|
580
|
+
return _context4.abrupt("return", {
|
|
581
|
+
response: response,
|
|
582
|
+
data: data
|
|
583
|
+
});
|
|
584
|
+
case 8:
|
|
585
|
+
case "end":
|
|
586
|
+
return _context4.stop();
|
|
587
|
+
}
|
|
588
|
+
}, _callee4);
|
|
589
|
+
}));
|
|
590
|
+
return function refreshAccessTokenAPI(_x8, _x9) {
|
|
591
|
+
return _ref4.apply(this, arguments);
|
|
592
|
+
};
|
|
593
|
+
}();
|
|
557
594
|
|
|
558
595
|
var DAUTH_STATE = 'dauth_state';
|
|
559
596
|
|
|
@@ -849,6 +886,62 @@ function _sendEmailVerificationAction() {
|
|
|
849
886
|
}));
|
|
850
887
|
return _sendEmailVerificationAction.apply(this, arguments);
|
|
851
888
|
}
|
|
889
|
+
function refreshTokenAction(_x6) {
|
|
890
|
+
return _refreshTokenAction.apply(this, arguments);
|
|
891
|
+
}
|
|
892
|
+
function _refreshTokenAction() {
|
|
893
|
+
_refreshTokenAction = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(_ref6) {
|
|
894
|
+
var dispatch, domainName, token, refreshAccessTokenFetch;
|
|
895
|
+
return _regeneratorRuntime().wrap(function _callee6$(_context6) {
|
|
896
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
897
|
+
case 0:
|
|
898
|
+
dispatch = _ref6.dispatch, domainName = _ref6.domainName, token = _ref6.token;
|
|
899
|
+
_context6.prev = 1;
|
|
900
|
+
_context6.next = 4;
|
|
901
|
+
return refreshAccessTokenAPI(domainName, token);
|
|
902
|
+
case 4:
|
|
903
|
+
refreshAccessTokenFetch = _context6.sent;
|
|
904
|
+
if (!(refreshAccessTokenFetch.response.status === 200)) {
|
|
905
|
+
_context6.next = 10;
|
|
906
|
+
break;
|
|
907
|
+
}
|
|
908
|
+
localStorage.setItem(DAUTH_STATE, refreshAccessTokenFetch.data.accessToken);
|
|
909
|
+
return _context6.abrupt("return");
|
|
910
|
+
case 10:
|
|
911
|
+
dispatch({
|
|
912
|
+
type: LOGIN,
|
|
913
|
+
payload: {
|
|
914
|
+
user: {},
|
|
915
|
+
domain: {},
|
|
916
|
+
isAuthenticated: false
|
|
917
|
+
}
|
|
918
|
+
});
|
|
919
|
+
localStorage.removeItem(DAUTH_STATE);
|
|
920
|
+
return _context6.abrupt("return");
|
|
921
|
+
case 13:
|
|
922
|
+
_context6.next = 20;
|
|
923
|
+
break;
|
|
924
|
+
case 15:
|
|
925
|
+
_context6.prev = 15;
|
|
926
|
+
_context6.t0 = _context6["catch"](1);
|
|
927
|
+
dispatch({
|
|
928
|
+
type: LOGIN,
|
|
929
|
+
payload: {
|
|
930
|
+
user: {},
|
|
931
|
+
domain: {},
|
|
932
|
+
isAuthenticated: false
|
|
933
|
+
}
|
|
934
|
+
});
|
|
935
|
+
localStorage.removeItem(DAUTH_STATE);
|
|
936
|
+
console.log(_context6.t0);
|
|
937
|
+
case 20:
|
|
938
|
+
case "end":
|
|
939
|
+
return _context6.stop();
|
|
940
|
+
}
|
|
941
|
+
}, _callee6, null, [[1, 15]]);
|
|
942
|
+
}));
|
|
943
|
+
return _refreshTokenAction.apply(this, arguments);
|
|
944
|
+
}
|
|
852
945
|
|
|
853
946
|
var DauthProvider = function DauthProvider(props) {
|
|
854
947
|
var domainName = props.domainName,
|
|
@@ -858,6 +951,16 @@ var DauthProvider = function DauthProvider(props) {
|
|
|
858
951
|
ds = _useReducer[0],
|
|
859
952
|
dispatch = _useReducer[1];
|
|
860
953
|
var dauthState = ds;
|
|
954
|
+
// Refresh access token
|
|
955
|
+
React.useEffect(function () {
|
|
956
|
+
var token_ls = localStorage.getItem(DAUTH_STATE);
|
|
957
|
+
if (!token_ls) return;
|
|
958
|
+
refreshTokenAction({
|
|
959
|
+
dispatch: dispatch,
|
|
960
|
+
domainName: domainName,
|
|
961
|
+
token: token_ls
|
|
962
|
+
});
|
|
963
|
+
}, [dauthState]);
|
|
861
964
|
// Catch login redirect
|
|
862
965
|
React.useEffect(function () {
|
|
863
966
|
var queryString = window.location.search;
|
|
@@ -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/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["export interface IDauthUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: {\n id: string;\n url: string;\n };\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n}\n\ninterface IDauthDomainState {\n name: string;\n loginRedirect: string;\n allowedOrigins: string[];\n}\n\nexport interface IDauthState {\n user: IDauthUser;\n domain: IDauthDomainState;\n isLoading: boolean;\n isAuthenticated: boolean;\n loginWithRedirect: () => void;\n logout: () => void;\n getAccessToken: () => string;\n updateUser: ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => void;\n updateUserWithRedirect: () => void;\n // Send email verification\n sev: {\n status: IActionStatus;\n isLoading: boolean;\n };\n sendEmailVerification: () => void;\n}\n\nexport interface IActionStatus {\n type: TStatusTypes;\n message: string;\n}\nexport type TStatusTypes = 'success' | 'error' | 'info' | 'warning';\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => initialDauthState.getAccessToken() || '',\n updateUser: () => {},\n updateUserWithRedirect: () => {},\n // Send email verification\n sev: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => {},\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 * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: any, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN:\n return {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n\n case DauthTypes.SET_IS_LOADING:\n return {\n ...state,\n isLoading: payload.isLoading,\n };\n\n case DauthTypes.UPDATE_USER:\n return {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS:\n return {\n ...state,\n sev: {\n ...state.sev,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING:\n return {\n ...state,\n sev: {\n ...state.sev,\n isLoading: payload,\n },\n };\n\n default:\n return state;\n }\n}\n","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.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 window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\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 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 { IDauthUser } from '../initialDauthState';\nimport { getServerBasePath } from './utils/config';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\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 })}/t-get-user/${domainName}`,\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<any> => {\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 })}/t-update-user/${domainName}`,\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<any> => {\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 })}/t-resend-email-verification/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const DAUTH_STATE = 'dauth_state';\n","import {\n getUserAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { DAUTH_STATE } from '../constants';\nimport { IDauthUser } from '../initialDauthState';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: any;\n dauth_state: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n dauth_state,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state);\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(DAUTH_STATE, dauth_state);\n } else {\n return localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: any;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\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(DAUTH_STATE, dauth_state_ls);\n } else {\n localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport async function setLogoutAction({ dispatch }: { dispatch: any }) {\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(DAUTH_STATE);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n 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 return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n } else {\n console.log('Update user error');\n return;\n }\n } catch (error) {\n console.log('Update user error', error);\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n 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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n }\n}\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState, {\n IDauthState,\n IDauthUser,\n} from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { DAUTH_STATE } from './constants';\n\ninterface DauthProviderProps {\n domainName: string;\n sid: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, sid, children } = props;\n const [ds, dispatch] = useReducer(userReducer, initialDauthState);\n const dauthState = ds as IDauthState;\n\n // Catch login redirect\n useEffect(() => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const dauth_state = urlParams.get(DAUTH_STATE);\n if (dauth_state && !dauthState.isAuthenticated) {\n action.setDauthStateAction({ dispatch, dauth_state, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n // Auto Login\n useEffect(() => {\n const dauth_state_ls = localStorage.getItem(DAUTH_STATE);\n if (dauth_state_ls && !dauthState.isAuthenticated) {\n action.setAutoLoginAction({ dispatch, dauth_state_ls, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-sign/${sid}`\n );\n }, [domainName, sid]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n return token_ls ?? 'token-not-found';\n }, []);\n\n const updateUser = useCallback(\n ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n const user = {\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n });\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-update-user/${sid}/${token_ls}`\n );\n }, [domainName, sid]);\n\n const sendEmailVerification = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken: () => 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","updateUser","updateUserWithRedirect","sev","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","_extends","isLocalhost","Boolean","location","hostname","match","apiVersion","serverDomain","getServerBasePath","_ref","domainName","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","DAUTH_STATE","setDauthStateAction","_setDauthStateAction","dispatch","dauth_state","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","removeItem","t0","console","log","finish","setAutoLoginAction","_setAutoLoginAction","dauth_state_ls","setLogoutAction","_setLogoutAction","setUpdateUserAction","_setUpdateUserAction","_callee4","_ref4","_callee4$","_context4","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","_callee5","_ref5","sendEmailFetch","_callee5$","_context5","DauthProvider","props","sid","children","_useReducer","useReducer","ds","dauthState","useEffect","queryString","search","urlParams","URLSearchParams","get","getItem","useCallback","replace","token_ls","name","lastname","nickname","tel_prefix","tel_suffix","avatar","memoProvider","useMemo","React","DauthContext","Provider","value","createContext","useDauth","context","useContext","Error"],"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/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["export interface IDauthUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: {\n id: string;\n url: string;\n };\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n}\n\nexport interface IDauthDomainState {\n name: string;\n loginRedirect: string;\n allowedOrigins: string[];\n}\n\nexport interface IDauthState {\n user: IDauthUser;\n domain: IDauthDomainState;\n isLoading: boolean;\n isAuthenticated: boolean;\n loginWithRedirect: () => void;\n logout: () => void;\n getAccessToken: () => string;\n updateUser: ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => void;\n updateUserWithRedirect: () => void;\n // Send email verification\n sev: {\n status: IActionStatus;\n isLoading: boolean;\n };\n sendEmailVerification: () => void;\n}\n\nexport interface IActionStatus {\n type: TStatusTypes;\n message: string;\n}\nexport type TStatusTypes = 'success' | 'error' | 'info' | 'warning';\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => initialDauthState.getAccessToken() || '',\n updateUser: () => {},\n updateUserWithRedirect: () => {},\n // Send email verification\n sev: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => {},\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 * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: any, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN:\n return {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n\n case DauthTypes.SET_IS_LOADING:\n return {\n ...state,\n isLoading: payload.isLoading,\n };\n\n case DauthTypes.UPDATE_USER:\n return {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS:\n return {\n ...state,\n sev: {\n ...state.sev,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING:\n return {\n ...state,\n sev: {\n ...state.sev,\n isLoading: payload,\n },\n };\n\n default:\n return state;\n }\n}\n","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.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 window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\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 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 { IDauthUser } from '../initialDauthState';\nimport { getServerBasePath } from './utils/config';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\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 })}/t-get-user/${domainName}`,\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<any> => {\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 })}/t-update-user/${domainName}`,\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<any> => {\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 })}/t-resend-email-verification/${domainName}`,\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<any> => {\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 })}/t-refresh-access-token/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const DAUTH_STATE = 'dauth_state';\n","import {\n getUserAPI,\n refreshAccessTokenAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { DAUTH_STATE } from '../constants';\nimport { IDauthDomainState, IDauthUser } from '../initialDauthState';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: any;\n dauth_state: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n dauth_state,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state);\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(DAUTH_STATE, dauth_state);\n } else {\n return localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: any;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\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(DAUTH_STATE, dauth_state_ls);\n } else {\n localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport async function setLogoutAction({ dispatch }: { dispatch: any }) {\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(DAUTH_STATE);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n 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 return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n } else {\n console.log('Update user error');\n return;\n }\n } catch (error) {\n console.log('Update user error', error);\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n 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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n }\n}\n\nexport async function refreshTokenAction({\n dispatch,\n domainName,\n token,\n}: {\n 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 localStorage.setItem(\n DAUTH_STATE,\n refreshAccessTokenFetch.data.accessToken\n );\n return;\n } else {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(DAUTH_STATE);\n return;\n }\n } catch (error) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n }\n}\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState, {\n IDauthState,\n IDauthUser,\n} from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { DAUTH_STATE } from './constants';\n\ninterface DauthProviderProps {\n domainName: string;\n sid: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, sid, children } = props;\n const [ds, dispatch] = useReducer(userReducer, initialDauthState);\n const dauthState = ds as IDauthState;\n\n // Refresh access token\n useEffect(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n action.refreshTokenAction({ dispatch, domainName, token: token_ls });\n }, [dauthState]);\n\n // Catch login redirect\n useEffect(() => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const dauth_state = urlParams.get(DAUTH_STATE);\n if (dauth_state && !dauthState.isAuthenticated) {\n action.setDauthStateAction({ dispatch, dauth_state, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n // Auto Login\n useEffect(() => {\n const dauth_state_ls = localStorage.getItem(DAUTH_STATE);\n if (dauth_state_ls && !dauthState.isAuthenticated) {\n action.setAutoLoginAction({ dispatch, dauth_state_ls, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-sign/${sid}`\n );\n }, [domainName, sid]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n return token_ls ?? 'token-not-found';\n }, []);\n\n const updateUser = useCallback(\n ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n const user = {\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n });\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-update-user/${sid}/${token_ls}`\n );\n }, [domainName, sid]);\n\n const sendEmailVerification = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken: () => 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","updateUser","updateUserWithRedirect","sev","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","_extends","isLocalhost","Boolean","location","hostname","match","apiVersion","serverDomain","getServerBasePath","_ref","domainName","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","DAUTH_STATE","setDauthStateAction","_setDauthStateAction","dispatch","dauth_state","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","removeItem","t0","console","log","finish","setAutoLoginAction","_setAutoLoginAction","dauth_state_ls","setLogoutAction","_setLogoutAction","setUpdateUserAction","_setUpdateUserAction","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","_callee5","_ref5","sendEmailFetch","_callee5$","_context5","refreshTokenAction","_refreshTokenAction","_callee6","_ref6","refreshAccessTokenFetch","_callee6$","_context6","accessToken","DauthProvider","props","sid","children","_useReducer","useReducer","ds","dauthState","useEffect","token_ls","getItem","queryString","search","urlParams","URLSearchParams","get","useCallback","replace","name","lastname","nickname","tel_prefix","tel_suffix","avatar","memoProvider","useMemo","React","DauthContext","Provider","value","createContext","useDauth","context","useContext","Error"],"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",c=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function p(t,e,r,n){var a=Object.create((e&&e.prototype instanceof y?e:y).prototype),i=new O(n||[]);return o(a,"_invoke",{value:A(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=p;var h="suspendedStart",d="executing",m="completed",v={};function y(){}function g(){}function w(){}var _={};l(_,u,(function(){return this}));var E=Object.getPrototypeOf,I=E&&E(E(k([])));I&&I!==r&&a.call(I,u)&&(_=I);var S=w.prototype=y.prototype=Object.create(_);function L(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function r(n,o,i,u){var c=f(t[n],t,o);if("throw"!==c.type){var s=c.arg,l=s.value;return l&&"object"==typeof l&&a.call(l,"__await")?e.resolve(l.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):e.resolve(l).then((function(t){s.value=t,i(s)}),(function(t){return r("throw",t,i,u)}))}u(c.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 A(e,r,n){var a=h;return function(o,i){if(a===d)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 c=N(u,n);if(c){if(c===v)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===h)throw a=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=d;var s=f(e,r,n);if("normal"===s.type){if(a=n.done?m:"suspendedYield",s.arg===v)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(a=m,n.method="throw",n.arg=s.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 x(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 T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function O(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function k(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(S,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:g,configurable:!0}),g.displayName=l(w,s,"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,l(t,s,"GeneratorFunction")),t.prototype=Object.create(S),t},e.awrap=function(t){return{__await:t}},L(b.prototype),l(b.prototype,c,(function(){return this})),e.AsyncIterator=b,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var i=new b(p(t,r,n,a),o);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},L(S),l(S,s,"Generator"),l(S,u,(function(){return this})),l(S,"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=k,O.prototype={constructor:O,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(T),!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 c=a.call(i,"catchLoc"),s=a.call(i,"finallyLoc");if(c&&s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!s)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),T(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;T(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:k(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),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).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,c,"next",t)}function c(t){a(i,n,o,u,c,"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:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isLoading:!1,isAuthenticated:!1,loginWithRedirect:function(){},logout:function(){},getAccessToken:function(){return u.getAccessToken()||""},updateUser:function(){},updateUserWithRedirect:function(){},sev:{status:{type:"info",message:"Sending email verification..."},isLoading:!1},sendEmailVerification:function(){}};function c(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,{sev:i({},t.sev,{status:{type:r.type,message:r.message}})});case"SET_SEND_EMAIL_VERIFICATION_IS_LOADING":return i({},t,{sev:i({},t.sev,{isLoading:r})});default:return t}}var s=Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/(192)\.(168)\.(1)\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm)||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));function l(t){var e=window.location.protocol+"//"+window.location.hostname+":4012/api/v1";return s?e:"https://"+t.domainName+".dauth.ovh/api/v1"}function p(t){var e=window.location.protocol+"//"+window.location.hostname+":5185";return s?e:"https://"+t.domainName+".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(l({domainName:e})+"/t-get-user/"+e,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)}}(),h=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(l({domainName:e})+"/t-update-user/"+e,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)}}(),d=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(l({domainName:e})+"/t-resend-email-verification/"+e,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="dauth_state";function v(){return(v=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.dauth_state,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(m,a));case 12:return t.abrupt("return",localStorage.removeItem(m));case 13:t.next=19;break;case 15:t.prev=15,t.t0=t.catch(2),localStorage.removeItem(m),console.log(t.t0);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 y(){return(y=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.dauth_state_ls,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,f(o,a);case 5:200===(i=t.sent).response.status?(r({type:"LOGIN",payload:{user:i.data.user,domain:i.data.domain,isAuthenticated:!0}}),localStorage.setItem(m,a)):localStorage.removeItem(m),t.next=13;break;case 9:t.prev=9,t.t0=t.catch(2),localStorage.removeItem(m),console.log(t.t0);case 13:return t.prev=13,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(13);case 16:case"end":return t.stop()}}),t,null,[[2,9,13,16]])})))).apply(this,arguments)}function g(){return(g=o(n().mark((function t(e){var r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),r({type:"LOGIN",payload:{user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isAuthenticated:!1}}),localStorage.removeItem(m),t.abrupt("return",r({type:"SET_IS_LOADING",payload:{isLoading:!1}}));case 5:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function w(){return(w=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=4;break}return t.abrupt("return",r({type:"UPDATE_USER",payload:o}));case 4:return t.prev=4,t.next=7,h(a,o,i);case 7:if(200!==(u=t.sent).response.status){t.next=12;break}return t.abrupt("return",r({type:"UPDATE_USER",payload:u.data.user}));case 12:return console.log("Update user error"),t.abrupt("return");case 14:t.next=19;break;case 16:t.prev=16,t.t0=t.catch(4),console.log("Update user error",t.t0);case 19:case"end":return t.stop()}}),t,null,[[4,16]])})))).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,d(a,o);case 6:if(200!==(i=t.sent).response.status){t.next=12;break}return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"success",message:i.data.message}}),t.abrupt("return",r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}));case 12:return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:i.data.message}}),t.abrupt("return",r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}));case 14:t.next=20;break;case 16:return t.prev=16,t.t0=t.catch(3),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:"Send email verification fetch error"}}),t.abrupt("return",r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}));case 20:case"end":return t.stop()}}),t,null,[[3,16]])})))).apply(this,arguments)}var E=e.createContext(u);exports.DauthProvider=function(t){var n=t.domainName,a=t.sid,o=t.children,s=e.useReducer(c,u),l=s[1],f=s[0];e.useEffect((function(){var t=window.location.search;if(t){var e=new URLSearchParams(t).get(m);e&&!f.isAuthenticated&&function(t){v.apply(this,arguments)}({dispatch:l,dauth_state:e,domainName:n})}}),[f.isAuthenticated,n]),e.useEffect((function(){var t=localStorage.getItem(m);t&&!f.isAuthenticated&&function(t){y.apply(this,arguments)}({dispatch:l,dauth_state_ls:t,domainName:n})}),[f.isAuthenticated,n]);var h=e.useCallback((function(){return window.location.replace(p({domainName:n})+"/t-sign/"+a)}),[n,a]),d=e.useCallback((function(){return function(t){return g.apply(this,arguments)}({dispatch:l})}),[]),I=e.useCallback((function(){var t=localStorage.getItem(m);return null!=t?t:"token-not-found"}),[]),S=e.useCallback((function(t){var e=t.name,r=t.lastname,a=t.nickname,o=t.tel_prefix,i=t.tel_suffix,u=t.language,c=t.avatar,s=localStorage.getItem(m);return function(t){return w.apply(this,arguments)}({dispatch:l,domainName:n,user:{name:e,lastname:r,nickname:a,tel_prefix:o,tel_suffix:i,language:u,avatar:c},token:s})}),[n]),L=e.useCallback((function(){var t=localStorage.getItem(m);if(t)return window.location.replace(p({domainName:n})+"/t-update-user/"+a+"/"+t)}),[n,a]),b=e.useCallback((function(){var t=localStorage.getItem(m);if(t)return function(t){return _.apply(this,arguments)}({dispatch:l,domainName:n,token:t})}),[n]),A=e.useMemo((function(){return i({},f,{loginWithRedirect:h,logout:d,getAccessToken:function(){return I()||""},updateUser:S,updateUserWithRedirect:L,sendEmailVerification:b})}),[f,h,d,I,S,L,b]);return r.createElement(E.Provider,{value:A},o)},exports.useDauth=function(){var t=e.useContext(E);if(!t)throw new Error("useDauth must be used inside DauthProvider");return t};
|
|
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",c=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function p(t,e,r,n){var a=Object.create((e&&e.prototype instanceof y?e:y).prototype),i=new k(n||[]);return o(a,"_invoke",{value:A(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=p;var h="suspendedStart",d="executing",m="completed",v={};function y(){}function g(){}function w(){}var _={};l(_,u,(function(){return this}));var E=Object.getPrototypeOf,I=E&&E(E(O([])));I&&I!==r&&a.call(I,u)&&(_=I);var S=w.prototype=y.prototype=Object.create(_);function b(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function x(t,e){function r(n,o,i,u){var c=f(t[n],t,o);if("throw"!==c.type){var s=c.arg,l=s.value;return l&&"object"==typeof l&&a.call(l,"__await")?e.resolve(l.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):e.resolve(l).then((function(t){s.value=t,i(s)}),(function(t){return r("throw",t,i,u)}))}u(c.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 A(e,r,n){var a=h;return function(o,i){if(a===d)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 c=L(u,n);if(c){if(c===v)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===h)throw a=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=d;var s=f(e,r,n);if("normal"===s.type){if(a=n.done?m:"suspendedYield",s.arg===v)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(a=m,n.method="throw",n.arg=s.arg)}}}function L(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,L(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 N(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 T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,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(S,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:g,configurable:!0}),g.displayName=l(w,s,"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,l(t,s,"GeneratorFunction")),t.prototype=Object.create(S),t},e.awrap=function(t){return{__await:t}},b(x.prototype),l(x.prototype,c,(function(){return this})),e.AsyncIterator=x,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var i=new x(p(t,r,n,a),o);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},b(S),l(S,s,"Generator"),l(S,u,(function(){return this})),l(S,"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,k.prototype={constructor:k,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(T),!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 c=a.call(i,"catchLoc"),s=a.call(i,"finallyLoc");if(c&&s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!s)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),T(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;T(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),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).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,c,"next",t)}function c(t){a(i,n,o,u,c,"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:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isLoading:!1,isAuthenticated:!1,loginWithRedirect:function(){},logout:function(){},getAccessToken:function(){return u.getAccessToken()||""},updateUser:function(){},updateUserWithRedirect:function(){},sev:{status:{type:"info",message:"Sending email verification..."},isLoading:!1},sendEmailVerification:function(){}},c="LOGIN";function s(t,e){var r=e.payload;switch(e.type){case c: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,{sev:i({},t.sev,{status:{type:r.type,message:r.message}})});case"SET_SEND_EMAIL_VERIFICATION_IS_LOADING":return i({},t,{sev:i({},t.sev,{isLoading:r})});default:return t}}var l=Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/(192)\.(168)\.(1)\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm)||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));function p(t){var e=window.location.protocol+"//"+window.location.hostname+":4012/api/v1";return l?e:"https://"+t.domainName+".dauth.ovh/api/v1"}function f(t){var e=window.location.protocol+"//"+window.location.hostname+":5185";return l?e:"https://"+t.domainName+".dauth.ovh"}var 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})+"/t-get-user/"+e,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})+"/t-update-user/"+e,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)}}(),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})+"/t-resend-email-verification/"+e,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,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})+"/t-refresh-access-token/"+e,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)}}(),y="dauth_state";function g(){return(g=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.dauth_state,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,h(o,a);case 5:if(200!==(i=t.sent).response.status){t.next=12;break}return r({type:c,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",localStorage.removeItem(y));case 13:t.next=19;break;case 15:t.prev=15,t.t0=t.catch(2),localStorage.removeItem(y),console.log(t.t0);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 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.dauth_state_ls,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,h(o,a);case 5:200===(i=t.sent).response.status?(r({type:c,payload:{user:i.data.user,domain:i.data.domain,isAuthenticated:!0}}),localStorage.setItem(y,a)):localStorage.removeItem(y),t.next=13;break;case 9:t.prev=9,t.t0=t.catch(2),localStorage.removeItem(y),console.log(t.t0);case 13:return t.prev=13,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(13);case 16:case"end":return t.stop()}}),t,null,[[2,9,13,16]])})))).apply(this,arguments)}function _(){return(_=o(n().mark((function t(e){var r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),r({type:c,payload:{user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isAuthenticated:!1}}),localStorage.removeItem(y),t.abrupt("return",r({type:"SET_IS_LOADING",payload:{isLoading:!1}}));case 5:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function E(){return(E=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=4;break}return t.abrupt("return",r({type:"UPDATE_USER",payload:o}));case 4:return t.prev=4,t.next=7,d(a,o,i);case 7:if(200!==(u=t.sent).response.status){t.next=12;break}return t.abrupt("return",r({type:"UPDATE_USER",payload:u.data.user}));case 12:return console.log("Update user error"),t.abrupt("return");case 14:t.next=19;break;case 16:t.prev=16,t.t0=t.catch(4),console.log("Update user error",t.t0);case 19:case"end":return t.stop()}}),t,null,[[4,16]])})))).apply(this,arguments)}function I(){return(I=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,m(a,o);case 6:if(200!==(i=t.sent).response.status){t.next=12;break}return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"success",message:i.data.message}}),t.abrupt("return",r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}));case 12:return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:i.data.message}}),t.abrupt("return",r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}));case 14:t.next=20;break;case 16:return t.prev=16,t.t0=t.catch(3),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:"Send email verification fetch error"}}),t.abrupt("return",r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}));case 20:case"end":return t.stop()}}),t,null,[[3,16]])})))).apply(this,arguments)}function S(){return(S=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,v(a,o);case 4:if(200!==(i=t.sent).response.status){t.next=10;break}return localStorage.setItem(y,i.data.accessToken),t.abrupt("return");case 10:return r({type:c,payload:{user:{},domain:{},isAuthenticated:!1}}),localStorage.removeItem(y),t.abrupt("return");case 13:t.next=20;break;case 15:t.prev=15,t.t0=t.catch(1),r({type:c,payload:{user:{},domain:{},isAuthenticated:!1}}),localStorage.removeItem(y),console.log(t.t0);case 20:case"end":return t.stop()}}),t,null,[[1,15]])})))).apply(this,arguments)}var b=e.createContext(u);exports.DauthProvider=function(t){var n=t.domainName,a=t.sid,o=t.children,c=e.useReducer(s,u),l=c[1],p=c[0];e.useEffect((function(){var t=localStorage.getItem(y);t&&function(t){S.apply(this,arguments)}({dispatch:l,domainName:n,token:t})}),[p]),e.useEffect((function(){var t=window.location.search;if(t){var e=new URLSearchParams(t).get(y);e&&!p.isAuthenticated&&function(t){g.apply(this,arguments)}({dispatch:l,dauth_state:e,domainName:n})}}),[p.isAuthenticated,n]),e.useEffect((function(){var t=localStorage.getItem(y);t&&!p.isAuthenticated&&function(t){w.apply(this,arguments)}({dispatch:l,dauth_state_ls:t,domainName:n})}),[p.isAuthenticated,n]);var h=e.useCallback((function(){return window.location.replace(f({domainName:n})+"/t-sign/"+a)}),[n,a]),d=e.useCallback((function(){return function(t){return _.apply(this,arguments)}({dispatch:l})}),[]),m=e.useCallback((function(){var t=localStorage.getItem(y);return null!=t?t:"token-not-found"}),[]),v=e.useCallback((function(t){var e=t.name,r=t.lastname,a=t.nickname,o=t.tel_prefix,i=t.tel_suffix,u=t.language,c=t.avatar,s=localStorage.getItem(y);return function(t){return E.apply(this,arguments)}({dispatch:l,domainName:n,user:{name:e,lastname:r,nickname:a,tel_prefix:o,tel_suffix:i,language:u,avatar:c},token:s})}),[n]),x=e.useCallback((function(){var t=localStorage.getItem(y);if(t)return window.location.replace(f({domainName:n})+"/t-update-user/"+a+"/"+t)}),[n,a]),A=e.useCallback((function(){var t=localStorage.getItem(y);if(t)return function(t){return I.apply(this,arguments)}({dispatch:l,domainName:n,token:t})}),[n]),L=e.useMemo((function(){return i({},p,{loginWithRedirect:h,logout:d,getAccessToken:function(){return m()||""},updateUser:v,updateUserWithRedirect:x,sendEmailVerification:A})}),[p,h,d,m,v,x,A]);return r.createElement(b.Provider,{value:L},o)},exports.useDauth=function(){var t=e.useContext(b);if(!t)throw new Error("useDauth must be used inside DauthProvider");return t};
|
|
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":["export interface IDauthUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: {\n id: string;\n url: string;\n };\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n}\n\ninterface IDauthDomainState {\n name: string;\n loginRedirect: string;\n allowedOrigins: string[];\n}\n\nexport interface IDauthState {\n user: IDauthUser;\n domain: IDauthDomainState;\n isLoading: boolean;\n isAuthenticated: boolean;\n loginWithRedirect: () => void;\n logout: () => void;\n getAccessToken: () => string;\n updateUser: ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => void;\n updateUserWithRedirect: () => void;\n // Send email verification\n sev: {\n status: IActionStatus;\n isLoading: boolean;\n };\n sendEmailVerification: () => void;\n}\n\nexport interface IActionStatus {\n type: TStatusTypes;\n message: string;\n}\nexport type TStatusTypes = 'success' | 'error' | 'info' | 'warning';\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => initialDauthState.getAccessToken() || '',\n updateUser: () => {},\n updateUserWithRedirect: () => {},\n // Send email verification\n sev: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => {},\n};\n\nexport default initialDauthState;\n","import * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: any, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN:\n return {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n\n case DauthTypes.SET_IS_LOADING:\n return {\n ...state,\n isLoading: payload.isLoading,\n };\n\n case DauthTypes.UPDATE_USER:\n return {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS:\n return {\n ...state,\n sev: {\n ...state.sev,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING:\n return {\n ...state,\n sev: {\n ...state.sev,\n isLoading: payload,\n },\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","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.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 window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\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 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 { IDauthUser } from '../initialDauthState';\nimport { getServerBasePath } from './utils/config';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\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 })}/t-get-user/${domainName}`,\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<any> => {\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 })}/t-update-user/${domainName}`,\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<any> => {\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 })}/t-resend-email-verification/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const DAUTH_STATE = 'dauth_state';\n","import {\n getUserAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { DAUTH_STATE } from '../constants';\nimport { IDauthUser } from '../initialDauthState';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: any;\n dauth_state: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n dauth_state,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state);\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(DAUTH_STATE, dauth_state);\n } else {\n return localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: any;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\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(DAUTH_STATE, dauth_state_ls);\n } else {\n localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport async function setLogoutAction({ dispatch }: { dispatch: any }) {\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(DAUTH_STATE);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n 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 return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n } else {\n console.log('Update user error');\n return;\n }\n } catch (error) {\n console.log('Update user error', error);\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n 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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n }\n}\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState, {\n IDauthState,\n IDauthUser,\n} from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { DAUTH_STATE } from './constants';\n\ninterface DauthProviderProps {\n domainName: string;\n sid: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, sid, children } = props;\n const [ds, dispatch] = useReducer(userReducer, initialDauthState);\n const dauthState = ds as IDauthState;\n\n // Catch login redirect\n useEffect(() => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const dauth_state = urlParams.get(DAUTH_STATE);\n if (dauth_state && !dauthState.isAuthenticated) {\n action.setDauthStateAction({ dispatch, dauth_state, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n // Auto Login\n useEffect(() => {\n const dauth_state_ls = localStorage.getItem(DAUTH_STATE);\n if (dauth_state_ls && !dauthState.isAuthenticated) {\n action.setAutoLoginAction({ dispatch, dauth_state_ls, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-sign/${sid}`\n );\n }, [domainName, sid]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n return token_ls ?? 'token-not-found';\n }, []);\n\n const updateUser = useCallback(\n ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n const user = {\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n });\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-update-user/${sid}/${token_ls}`\n );\n }, [domainName, sid]);\n\n const sendEmailVerification = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken: () => 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","updateUser","updateUserWithRedirect","sev","status","type","message","sendEmailVerification","userReducer","state","action","payload","_extends","isLocalhost","Boolean","location","hostname","match","getServerBasePath","_ref","serverLocalUrl","protocol","domainName","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","DAUTH_STATE","_setDauthStateAction","dispatch","dauth_state","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","removeItem","t0","console","log","finish","_setAutoLoginAction","dauth_state_ls","_setLogoutAction","_setUpdateUserAction","_callee4","_ref4","_context4","setAttribute","_sendEmailVerificationAction","_callee5","_ref5","sendEmailFetch","_context5","DauthContext","createContext","props","sid","children","_useReducer","useReducer","dauthState","useEffect","queryString","search","URLSearchParams","get","getItem","useCallback","replace","token_ls","name","lastname","nickname","tel_prefix","tel_suffix","avatar","memoProvider","useMemo","React","Provider","value","context","useContext","Error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dauth-context-react.cjs.production.min.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/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["export interface IDauthUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: {\n id: string;\n url: string;\n };\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n}\n\nexport interface IDauthDomainState {\n name: string;\n loginRedirect: string;\n allowedOrigins: string[];\n}\n\nexport interface IDauthState {\n user: IDauthUser;\n domain: IDauthDomainState;\n isLoading: boolean;\n isAuthenticated: boolean;\n loginWithRedirect: () => void;\n logout: () => void;\n getAccessToken: () => string;\n updateUser: ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => void;\n updateUserWithRedirect: () => void;\n // Send email verification\n sev: {\n status: IActionStatus;\n isLoading: boolean;\n };\n sendEmailVerification: () => void;\n}\n\nexport interface IActionStatus {\n type: TStatusTypes;\n message: string;\n}\nexport type TStatusTypes = 'success' | 'error' | 'info' | 'warning';\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => initialDauthState.getAccessToken() || '',\n updateUser: () => {},\n updateUserWithRedirect: () => {},\n // Send email verification\n sev: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => {},\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 * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: any, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN:\n return {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n\n case DauthTypes.SET_IS_LOADING:\n return {\n ...state,\n isLoading: payload.isLoading,\n };\n\n case DauthTypes.UPDATE_USER:\n return {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS:\n return {\n ...state,\n sev: {\n ...state.sev,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING:\n return {\n ...state,\n sev: {\n ...state.sev,\n isLoading: payload,\n },\n };\n\n default:\n return state;\n }\n}\n","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.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 window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\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 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 { IDauthUser } from '../initialDauthState';\nimport { getServerBasePath } from './utils/config';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\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 })}/t-get-user/${domainName}`,\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<any> => {\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 })}/t-update-user/${domainName}`,\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<any> => {\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 })}/t-resend-email-verification/${domainName}`,\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<any> => {\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 })}/t-refresh-access-token/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const DAUTH_STATE = 'dauth_state';\n","import {\n getUserAPI,\n refreshAccessTokenAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { DAUTH_STATE } from '../constants';\nimport { IDauthDomainState, IDauthUser } from '../initialDauthState';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: any;\n dauth_state: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n dauth_state,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state);\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(DAUTH_STATE, dauth_state);\n } else {\n return localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: any;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\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(DAUTH_STATE, dauth_state_ls);\n } else {\n localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport async function setLogoutAction({ dispatch }: { dispatch: any }) {\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(DAUTH_STATE);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n 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 return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n } else {\n console.log('Update user error');\n return;\n }\n } catch (error) {\n console.log('Update user error', error);\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n 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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n }\n}\n\nexport async function refreshTokenAction({\n dispatch,\n domainName,\n token,\n}: {\n 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 localStorage.setItem(\n DAUTH_STATE,\n refreshAccessTokenFetch.data.accessToken\n );\n return;\n } else {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(DAUTH_STATE);\n return;\n }\n } catch (error) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n }\n}\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState, {\n IDauthState,\n IDauthUser,\n} from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { DAUTH_STATE } from './constants';\n\ninterface DauthProviderProps {\n domainName: string;\n sid: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, sid, children } = props;\n const [ds, dispatch] = useReducer(userReducer, initialDauthState);\n const dauthState = ds as IDauthState;\n\n // Refresh access token\n useEffect(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n action.refreshTokenAction({ dispatch, domainName, token: token_ls });\n }, [dauthState]);\n\n // Catch login redirect\n useEffect(() => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const dauth_state = urlParams.get(DAUTH_STATE);\n if (dauth_state && !dauthState.isAuthenticated) {\n action.setDauthStateAction({ dispatch, dauth_state, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n // Auto Login\n useEffect(() => {\n const dauth_state_ls = localStorage.getItem(DAUTH_STATE);\n if (dauth_state_ls && !dauthState.isAuthenticated) {\n action.setAutoLoginAction({ dispatch, dauth_state_ls, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-sign/${sid}`\n );\n }, [domainName, sid]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n return token_ls ?? 'token-not-found';\n }, []);\n\n const updateUser = useCallback(\n ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n const user = {\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n });\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-update-user/${sid}/${token_ls}`\n );\n }, [domainName, sid]);\n\n const sendEmailVerification = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken: () => 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","updateUser","updateUserWithRedirect","sev","status","type","message","sendEmailVerification","LOGIN","userReducer","state","action","payload","DauthTypes","_extends","isLocalhost","Boolean","location","hostname","match","getServerBasePath","_ref","serverLocalUrl","protocol","domainName","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","DAUTH_STATE","_setDauthStateAction","dispatch","dauth_state","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","removeItem","t0","console","log","finish","_setAutoLoginAction","dauth_state_ls","_setLogoutAction","_setUpdateUserAction","setAttribute","_sendEmailVerificationAction","_callee5","_ref5","sendEmailFetch","_context5","_refreshTokenAction","_callee6","_ref6","refreshAccessTokenFetch","_context6","accessToken","DauthContext","createContext","props","sid","children","_useReducer","useReducer","dauthState","useEffect","token_ls","getItem","queryString","search","URLSearchParams","get","useCallback","replace","name","lastname","nickname","tel_prefix","tel_suffix","avatar","memoProvider","useMemo","React","Provider","value","context","useContext","Error"],"mappings":"+hOA4DA,IAAMA,EAAiC,CACrCC,KAAM,CACJC,SAAUC,OAAOC,SAASC,gBAAgBC,aAAa,SAAW,MAEpEC,OAAQ,GACRC,WAAW,EACXC,iBAAiB,EACjBC,kBAAmB,aACnBC,OAAQ,aACRC,eAAgB,WAAA,OAAMZ,EAAkBY,kBAAoB,IAC5DC,WAAY,aACZC,uBAAwB,aAExBC,IAAK,CACHC,OAAQ,CACNC,KAAM,OACNC,QAAS,iCAEXV,WAAW,GAEbW,sBAAuB,cChFZC,EAAQ,iBCEGC,EAAYC,EAAYC,GAC9C,IAAcC,EAAYD,EAAZC,QAEd,OAF0BD,EAAlBN,MAGN,KAAKQ,EACH,OAAAC,KACKJ,GACHrB,KAAMuB,EAAQvB,KACdM,OAAQiB,EAAQjB,OAChBE,gBAAiBe,EAAQf,kBAG7B,IDb0B,iBCcxB,OAAAiB,KACKJ,GACHd,UAAWgB,EAAQhB,YAGvB,IDlBuB,cCmBrB,OAAAkB,KACKJ,GACHrB,KAAIyB,KACCJ,EAAMrB,KACNuB,KAIT,IDvBF,qCCwBI,OAAAE,KACKJ,GACHP,IAAGW,KACEJ,EAAMP,KACTC,OAAQ,CACNC,KAAMO,EAAQP,KACdC,QAASM,EAAQN,aAKzB,IDrCF,yCCsCI,OAAAQ,KACKJ,GACHP,IAAGW,KACEJ,EAAMP,KACTP,UAAWgB,MAIjB,QACE,OAAOF,GCnDb,IAAMK,EAAcC,QACW,cAA7BzB,OAAO0B,SAASC,UACe,UAA7B3B,OAAO0B,SAASC,UAChB3B,OAAO0B,SAASC,SAASC,MACvB,2EAEF5B,OAAO0B,SAASC,SAASC,MACvB,oEAMUC,EAAiBC,OAEzBC,EAAoB/B,OAAO0B,SAASM,cAAahC,OAAO0B,SAASC,SAA7C3B,eAG1B,OADuBwB,EAAcO,aAJOD,EAAVG,wCAQpBC,EAAiBC,OAEzBC,EAAoBpC,OAAO0B,SAASM,cAAahC,OAAO0B,SAASC,SAA7C3B,QAG1B,OADuBwB,EAAcY,aAJOD,EAAVF,4BClBvBI,aAAU,IAAAP,EAAAQ,EAAAC,IAAAC,MAAG,SAAAC,EACxBR,EACAS,GAAa,IAAAC,EAAAC,EAAA,OAAAL,IAAAM,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAQZ,OANKL,EAAS,CACbM,OAAQ,MACRC,QAAS,CACPC,iBAAkBT,EAClBU,eAAgB,qBAEnBN,EAAAE,OACsBK,MAClBxB,EAAkB,CAAEI,WAAAA,mBAA4BA,EACnDU,GACD,OAHa,OAARC,EAAQE,EAAAQ,KAAAR,EAAAE,OAIKJ,EAASW,OAAM,OAAxB,OAAAT,EAAAU,gBACH,CAAEZ,SAAAA,EAAUa,KADTX,EAAAQ,OACe,OAAA,UAAA,OAAAR,EAAAY,UAAAjB,OAC1B,gBAjBsBkB,EAAAC,GAAA,OAAA9B,EAAA+B,WAAAC,eAmBVC,aAAa,IAAA5B,EAAAG,EAAAC,IAAAC,MAAG,SAAAwB,EAC3B/B,EACAnC,EACA4C,GAAa,IAAAC,EAAAC,EAAA,OAAAL,IAAAM,eAAAoB,GAAA,cAAAA,EAAAlB,KAAAkB,EAAAjB,MAAA,OASZ,OAPKL,EAAS,CACbM,OAAQ,QACRC,QAAS,CACPC,iBAAkBT,EAClBU,eAAgB,oBAElBc,KAAMC,KAAKC,UAAUtE,IACtBmE,EAAAjB,OACsBK,MAClBxB,EAAkB,CAAEI,WAAAA,sBAA+BA,EACtDU,GACD,OAHa,OAARC,EAAQqB,EAAAX,KAAAW,EAAAjB,OAIKJ,EAASW,OAAM,OAAxB,OAAAU,EAAAT,gBACH,CAAEZ,SAAAA,EAAUa,KADTQ,EAAAX,OACe,OAAA,UAAA,OAAAW,EAAAP,UAAAM,OAC1B,gBAnByBK,EAAAC,EAAAC,GAAA,OAAApC,EAAA0B,WAAAC,eAqBbU,aAAwB,IAAAC,EAAAnC,EAAAC,IAAAC,MAAG,SAAAkC,EACtCzC,EACAS,GAAa,IAAAC,EAAAC,EAAA,OAAAL,IAAAM,eAAA8B,GAAA,cAAAA,EAAA5B,KAAA4B,EAAA3B,MAAA,OAQZ,OANKL,EAAS,CACbM,OAAQ,MACRC,QAAS,CACPC,cAAeT,EACfU,eAAgB,qBAEnBuB,EAAA3B,OACsBK,MAClBxB,EAAkB,CACnBI,WAAAA,oCACgCA,EAClCU,GACD,OALa,OAARC,EAAQ+B,EAAArB,KAAAqB,EAAA3B,OAMKJ,EAASW,OAAM,OAAxB,OAAAoB,EAAAnB,gBACH,CAAEZ,SAAAA,EAAUa,KADTkB,EAAArB,OACe,OAAA,UAAA,OAAAqB,EAAAjB,UAAAgB,OAC1B,gBAnBoCE,EAAAC,GAAA,OAAAJ,EAAAZ,WAAAC,eAqBxBgB,aAAqB,IAAAC,EAAAzC,EAAAC,IAAAC,MAAG,SAAAwC,EACnC/C,EACAS,GAAa,IAAAC,EAAAC,EAAA,OAAAL,IAAAM,eAAAoC,GAAA,cAAAA,EAAAlC,KAAAkC,EAAAjC,MAAA,OAQZ,OANKL,EAAS,CACbM,OAAQ,MACRC,QAAS,CACPC,cAAeT,EACfU,eAAgB,qBAEnB6B,EAAAjC,OACsBK,MAClBxB,EAAkB,CACnBI,WAAAA,+BAC2BA,EAC7BU,GACD,OALa,OAARC,EAAQqC,EAAA3B,KAAA2B,EAAAjC,OAMKJ,EAASW,OAAM,OAAxB,OAAA0B,EAAAzB,gBACH,CAAEZ,SAAAA,EAAUa,KADTwB,EAAA3B,OACe,OAAA,UAAA,OAAA2B,EAAAvB,UAAAsB,OAC1B,gBAnBiCE,EAAAC,GAAA,OAAAJ,EAAAlB,WAAAC,eChErBsB,EAAc,cCkD1B,SAAAC,IAAA,OAAAA,EAAA/C,EAAAC,IAAAC,MAnCM,SAAAC,EAAAX,GAAA,IAAAwD,EAAAC,EAAAtD,EAAAuD,EAAA,OAAAjD,IAAAM,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAKuE,OAH5EuC,EAAWzD,EAAXyD,YACAtD,EAAUH,EAAVG,YAFAqD,EAAQxD,EAARwD,UAIS,CAAExE,KLnBiB,iBKmBgBO,QAAS,CAAEhB,WAAW,KAAUyC,EAAAC,OAAAD,EAAAE,OAE/CX,EAAWJ,EAAYsD,GAAY,OAA5C,GACmB,OAD/BC,EAAY1C,EAAAQ,MACDV,SAAS/B,QAAciC,EAAAE,QAAA,MAapC,OAZFsC,EAAS,CACPxE,KAAMQ,EACND,QAAS,CACPvB,KAAM0F,EAAa/B,KAAK3D,KACxBM,OAAQoF,EAAa/B,KAAKrD,OAC1BE,iBAAiB,KAGrBN,OAAOyF,QAAQC,aACb,GACAzF,SAAS0F,MACTH,EAAa/B,KAAKrD,OAAOwF,eACzB9C,EAAAU,gBACKqC,aAAaC,QAAQV,EAAaG,IAAY,QAAA,OAAAzC,EAAAU,gBAE9CqC,aAAaE,WAAWX,IAAY,QAAAtC,EAAAE,QAAA,MAAA,QAAAF,EAAAC,QAAAD,EAAAkD,GAAAlD,WAG7C+C,aAAaE,WAAWX,GACxBa,QAAQC,IAAGpD,EAAAkD,IAAQ,QAKhB,OALgBlD,EAAAC,QAEnBuC,EAAS,CACPxE,KL7CwB,iBK8CxBO,QAAS,CAAEhB,WAAW,KACrByC,EAAAqD,WAAA,QAAA,UAAA,OAAArD,EAAAY,UAAAjB,4BAENoB,WAAAC,WAqCA,SAAAsC,IAAA,OAAAA,EAAA9D,EAAAC,IAAAC,MA9BM,SAAAwB,EAAA7B,GAAA,IAAAmD,EAAAe,EAAApE,EAAAuD,EAAA,OAAAjD,IAAAM,eAAAoB,GAAA,cAAAA,EAAAlB,KAAAkB,EAAAjB,MAAA,OAKuE,OAH5EqD,EAAclE,EAAdkE,eACApE,EAAUE,EAAVF,YAFAqD,EAAQnD,EAARmD,UAIS,CAAExE,KL7DiB,iBK6DgBO,QAAS,CAAEhB,WAAW,KAAU4D,EAAAlB,OAAAkB,EAAAjB,OAE/CX,EAAWJ,EAAYoE,GAAe,OAC5B,OAD/Bb,EAAYvB,EAAAX,MACDV,SAAS/B,QACxByE,EAAS,CACPxE,KAAMQ,EACND,QAAS,CACPvB,KAAM0F,EAAa/B,KAAK3D,KACxBM,OAAQoF,EAAa/B,KAAKrD,OAC1BE,iBAAiB,KAGrBuF,aAAaC,QAAQV,EAAaiB,IAElCR,aAAaE,WAAWX,GACzBnB,EAAAjB,QAAA,MAAA,OAAAiB,EAAAlB,OAAAkB,EAAA+B,GAAA/B,WAED4B,aAAaE,WAAWX,GACxBa,QAAQC,IAAGjC,EAAA+B,IAAQ,QAKhB,OALgB/B,EAAAlB,QAEnBuC,EAAS,CACPxE,KLlFwB,iBKmFxBO,QAAS,CAAEhB,WAAW,KACrB4D,EAAAkC,WAAA,QAAA,UAAA,OAAAlC,EAAAP,UAAAM,2BAENH,WAAAC,WAmBA,SAAAwC,IAAA,OAAAA,EAAAhE,EAAAC,IAAAC,MAjBM,SAAAkC,EAAAD,GAAA,IAAAa,EAAA,OAAA/C,IAAAM,eAAA8B,GAAA,cAAAA,EAAA5B,KAAA4B,EAAA3B,MAAA,OAYgC,OAZCsC,EAAQb,EAARa,UAC7B,CAAExE,KLzFiB,iBKyFgBO,QAAS,CAAEhB,WAAW,KAClEiF,EAAS,CACPxE,KAAMQ,EACND,QAAS,CACPvB,KAAM,CACJC,SAAUC,OAAOC,SAASC,gBAAgBC,aAAa,SAAW,MAEpEC,OAAQ,GACRE,iBAAiB,KAGrBuF,aAAaE,WAAWX,GAAaT,EAAAnB,gBAC9B8B,EAAS,CACdxE,KLtG0B,iBKuG1BO,QAAS,CAAEhB,WAAW,MACtB,OAAA,UAAA,OAAAsE,EAAAjB,UAAAgB,QACHb,WAAAC,WAqCA,SAAAyC,IAAA,OAAAA,EAAAjE,EAAAC,IAAAC,MA7BM,SAAAwC,EAAAD,GAAA,IAAAO,EAAArD,EAAAnC,EAAA4C,EAAA8C,EAAA,OAAAjD,IAAAM,eAAAoC,GAAA,cAAAA,EAAAlC,KAAAkC,EAAAjC,MAAA,OAQJ,GAPDsC,EAAQP,EAARO,SACArD,EAAU8C,EAAV9C,WAEAS,EAAKqC,EAALrC,OADA5C,EAAIiF,EAAJjF,MAGSC,UACPC,OAAOC,SAASC,gBAAgBsG,aAAa,OAAQ1G,EAAKC,UAEvD2C,GAAKuC,EAAAjC,OAAA,MAAA,OAAAiC,EAAAzB,gBACD8B,EAAS,CACdxE,KL3HqB,cK4HrBO,QAASvB,KACT,OAAA,OAAAmF,EAAAlC,OAAAkC,EAAAjC,OAGyBe,EAAc9B,EAAYnC,EAAM4C,GAAM,OAA/C,GACmB,OAD/B8C,EAAYP,EAAA3B,MACDV,SAAS/B,QAAcoE,EAAAjC,QAAA,MAAA,OAAAiC,EAAAzB,gBAC/B8B,EAAS,CACdxE,KLnImB,cKoInBO,QAASmE,EAAa/B,KAAK3D,QAC3B,QAE+B,OAAjCmG,QAAQC,IAAI,qBAAqBjB,EAAAzB,iBAAA,QAAAyB,EAAAjC,QAAA,MAAA,QAAAiC,EAAAlC,QAAAkC,EAAAe,GAAAf,WAInCgB,QAAQC,IAAI,oBAAmBjB,EAAAe,IAAS,QAAA,UAAA,OAAAf,EAAAvB,UAAAsB,sBAE3CnB,WAAAC,WAsDA,SAAA2C,IAAA,OAAAA,EAAAnE,EAAAC,IAAAC,MA/CM,SAAAkE,EAAAC,GAAA,IAAArB,EAAArD,EAAAS,EAAAkE,EAAA,OAAArE,IAAAM,eAAAgE,GAAA,cAAAA,EAAA9D,KAAA8D,EAAA7D,MAAA,OAYF,OAVHf,EAAU0E,EAAV1E,WACAS,EAAKiE,EAALjE,OAFA4C,EAAQqB,EAARrB,UAIS,CACPxE,KLxJF,yCKyJEO,SAAS,IAEXiE,EAAS,CACPxE,KL1JF,qCK2JEO,QAAS,CAAEP,KAAM,OAAQC,QAAS,mCACjC8F,EAAA9D,OAAA8D,EAAA7D,OAE4BwB,EAAyBvC,EAAYS,GAAM,OAApD,GACmB,OADjCkE,EAAcC,EAAAvD,MACDV,SAAS/B,QAAcgG,EAAA7D,QAAA,MAIrC,OAHHsC,EAAS,CACPxE,KLjKN,qCKkKMO,QAAS,CAAEP,KAAM,UAAWC,QAAS6F,EAAenD,KAAK1C,WACxD8F,EAAArD,gBACI8B,EAAS,CACdxE,KLvKN,yCKwKMO,SAAS,KACT,QAKC,OAHHiE,EAAS,CACPxE,KL1KN,qCK2KMO,QAAS,CAAEP,KAAM,QAASC,QAAS6F,EAAenD,KAAK1C,WACtD8F,EAAArD,gBACI8B,EAAS,CACdxE,KLhLN,yCKiLMO,SAAS,KACT,QAAAwF,EAAA7D,QAAA,MAAA,QASD,OATC6D,EAAA9D,QAAA8D,EAAAb,GAAAa,WAGJvB,EAAS,CACPxE,KLpLJ,qCKqLIO,QAAS,CACPP,KAAM,QACNC,QAAS,yCAEV8F,EAAArD,gBACI8B,EAAS,CACdxE,KL7LJ,yCK8LIO,SAAS,KACT,QAAA,UAAA,OAAAwF,EAAAnD,UAAAgD,sBAEL7C,WAAAC,WA8CA,SAAAgD,IAAA,OAAAA,EAAAxE,EAAAC,IAAAC,MA5CM,SAAAuE,EAAAC,GAAA,IAAA1B,EAAArD,EAAAS,EAAAuE,EAAA,OAAA1E,IAAAM,eAAAqE,GAAA,cAAAA,EAAAnE,KAAAmE,EAAAlE,MAAA,OAGA,OAFLsC,EAAQ0B,EAAR1B,SACArD,EAAU+E,EAAV/E,WACAS,EAAKsE,EAALtE,MAAKwE,EAAAnE,OAAAmE,EAAAlE,OAOmC8B,EACpC7C,EACAS,GACD,OAH4B,GAImB,OAJ1CuE,EAAuBC,EAAA5D,MAIDV,SAAS/B,QAAcqG,EAAAlE,QAAA,MAI/C,OAHF6C,aAAaC,QACXV,EACA6B,EAAwBxD,KAAK0D,aAC7BD,EAAA1D,iBAAA,QAWmC,OARrC8B,EAAS,CACPxE,KAAMQ,EACND,QAAS,CACPvB,KAAM,GACNM,OAAQ,GACRE,iBAAiB,KAGrBuF,aAAaE,WAAWX,GAAa8B,EAAA1D,iBAAA,QAAA0D,EAAAlE,QAAA,MAAA,QAAAkE,EAAAnE,QAAAmE,EAAAlB,GAAAkB,WAIvC5B,EAAS,CACPxE,KAAMQ,EACND,QAAS,CACPvB,KAAM,GACNM,OAAQ,GACRE,iBAAiB,KAGrBuF,aAAaE,WAAWX,GACxBa,QAAQC,IAAGgB,EAAAlB,IAAQ,QAAA,UAAA,OAAAkB,EAAAxD,UAAAqD,sBAEtBlD,WAAAC,eChGKsD,EAAeC,gBAAcxH,yBA5HwB,SACzDyH,GAEA,IAAQrF,EAA8BqF,EAA9BrF,WAAYsF,EAAkBD,EAAlBC,IAAKC,EAAaF,EAAbE,SACzBC,EAAuBC,aAAWxG,EAAarB,GAApCyF,EAAQmC,KACbE,EADGF,KAITG,aAAU,WACR,IAAMC,EAAWhC,aAAaiC,QAAQ1C,GACjCyC,YDsK+BjD,GAAAkC,EAAAjD,WAAAC,WCrKpC1C,CAA0B,CAAEkE,SAAAA,EAAUrD,WAAAA,EAAYS,MAAOmF,MACxD,CAACF,IAGJC,aAAU,WACR,IAAMG,EAAc/H,OAAO0B,SAASsG,OACpC,GAAKD,EAAL,CACA,IACMxC,EADY,IAAI0C,gBAAgBF,GACRG,IAAI9C,GAC9BG,IAAgBoC,EAAWrH,0BD5BMqD,GAAA0B,EAAAxB,WAAAC,WC6BnC1C,CAA2B,CAAEkE,SAAAA,EAAUC,YAAAA,EAAatD,WAAAA,OAErD,CAAC0F,EAAWrH,gBAAiB2B,IAGhC2F,aAAU,WACR,IAAMvB,EAAiBR,aAAaiC,QAAQ1C,GACxCiB,IAAmBsB,EAAWrH,0BDMEsD,GAAAwC,EAAAvC,WAAAC,WCLlC1C,CAA0B,CAAEkE,SAAAA,EAAUe,eAAAA,EAAgBpE,WAAAA,MAEvD,CAAC0F,EAAWrH,gBAAiB2B,IAEhC,IAAM1B,EAAoB4H,eAAY,WACpC,OAAOnI,OAAO0B,SAAS0G,QAClBlG,EAAkB,CAAED,WAAAA,eAAwBsF,KAEhD,CAACtF,EAAYsF,IAEV/G,EAAS2H,eAAY,WACzB,gBD0BiC9D,GAAA,OAAAiC,EAAAzC,WAAAC,WC1B1B1C,CAAuB,CAAEkE,SAAAA,MAC/B,IAEG7E,EAAiB0H,eAAY,WACjC,IAAMN,EAAWhC,aAAaiC,QAAQ1C,GACtC,aAAOyC,EAAAA,EAAY,oBAClB,IAEGnH,EAAayH,eACjB,SAAArG,OACEuG,EAAIvG,EAAJuG,KACAC,EAAQxG,EAARwG,SACAC,EAAQzG,EAARyG,SACAC,EAAU1G,EAAV0G,WACAC,EAAU3G,EAAV2G,WACA1I,EAAQ+B,EAAR/B,SACA2I,EAAM5G,EAAN4G,OAEMb,EAAWhC,aAAaiC,QAAQ1C,GAUtC,gBDuBmCd,GAAA,OAAAiC,EAAA1C,WAAAC,WCvB5B1C,CAA2B,CAChCkE,SAAAA,EACArD,WAAAA,EACAnC,KAZW,CACXuI,KAAAA,EACAC,SAAAA,EACAC,SAAAA,EACAC,WAAAA,EACAC,WAAAA,EACA1I,SAAAA,EACA2I,OAAAA,GAMAhG,MAAOmF,MAGX,CAAC5F,IAGGtB,EAAyBwH,eAAY,WACzC,IAAMN,EAAWhC,aAAaiC,QAAQ1C,GACtC,GAAKyC,EACL,OAAO7H,OAAO0B,SAAS0G,QAClBlG,EAAkB,CAAED,WAAAA,sBAA+BsF,MAAOM,KAE9D,CAAC5F,EAAYsF,IAEVvG,EAAwBmH,eAAY,WACxC,IAAMN,EAAWhC,aAAaiC,QAAQ1C,GACtC,GAAKyC,EACL,gBDsC6CtD,GAAA,OAAAkC,EAAA5C,WAAAC,WCtCtC1C,CAAmC,CACxCkE,SAAAA,EACArD,WAAAA,EACAS,MAAOmF,MAER,CAAC5F,IAEE0G,EAAeC,WACnB,WAAA,OAAArH,KACKoG,GACHpH,kBAAAA,EACAC,OAAAA,EACAC,eAAgB,WAAA,OAAMA,KAAoB,IAC1CC,WAAAA,EACAC,uBAAAA,EACAK,sBAAAA,MAEF,CACE2G,EACApH,EACAC,EACAC,EACAC,EACAC,EACAK,IAIJ,OACE6H,gBAACzB,EAAa0B,UAASC,MAAOJ,GAC3BnB,qBAOiB,WACtB,IAAMwB,EAAUC,aAAW7B,GAC3B,IAAK4B,EACH,MAAM,IAAIE,MAAM,8CAElB,OAAOF"}
|
|
@@ -519,7 +519,7 @@ var sendEmailVerificationAPI = /*#__PURE__*/function () {
|
|
|
519
519
|
params = {
|
|
520
520
|
method: 'GET',
|
|
521
521
|
headers: {
|
|
522
|
-
Authorization:
|
|
522
|
+
Authorization: token,
|
|
523
523
|
'Content-Type': 'application/json'
|
|
524
524
|
}
|
|
525
525
|
};
|
|
@@ -547,6 +547,43 @@ var sendEmailVerificationAPI = /*#__PURE__*/function () {
|
|
|
547
547
|
return _ref3.apply(this, arguments);
|
|
548
548
|
};
|
|
549
549
|
}();
|
|
550
|
+
var refreshAccessTokenAPI = /*#__PURE__*/function () {
|
|
551
|
+
var _ref4 = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(domainName, token) {
|
|
552
|
+
var params, response, data;
|
|
553
|
+
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
|
554
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
555
|
+
case 0:
|
|
556
|
+
params = {
|
|
557
|
+
method: 'GET',
|
|
558
|
+
headers: {
|
|
559
|
+
Authorization: token,
|
|
560
|
+
'Content-Type': 'application/json'
|
|
561
|
+
}
|
|
562
|
+
};
|
|
563
|
+
_context4.next = 3;
|
|
564
|
+
return fetch(getServerBasePath({
|
|
565
|
+
domainName: domainName
|
|
566
|
+
}) + "/t-refresh-access-token/" + domainName, params);
|
|
567
|
+
case 3:
|
|
568
|
+
response = _context4.sent;
|
|
569
|
+
_context4.next = 6;
|
|
570
|
+
return response.json();
|
|
571
|
+
case 6:
|
|
572
|
+
data = _context4.sent;
|
|
573
|
+
return _context4.abrupt("return", {
|
|
574
|
+
response: response,
|
|
575
|
+
data: data
|
|
576
|
+
});
|
|
577
|
+
case 8:
|
|
578
|
+
case "end":
|
|
579
|
+
return _context4.stop();
|
|
580
|
+
}
|
|
581
|
+
}, _callee4);
|
|
582
|
+
}));
|
|
583
|
+
return function refreshAccessTokenAPI(_x8, _x9) {
|
|
584
|
+
return _ref4.apply(this, arguments);
|
|
585
|
+
};
|
|
586
|
+
}();
|
|
550
587
|
|
|
551
588
|
var DAUTH_STATE = 'dauth_state';
|
|
552
589
|
|
|
@@ -842,6 +879,62 @@ function _sendEmailVerificationAction() {
|
|
|
842
879
|
}));
|
|
843
880
|
return _sendEmailVerificationAction.apply(this, arguments);
|
|
844
881
|
}
|
|
882
|
+
function refreshTokenAction(_x6) {
|
|
883
|
+
return _refreshTokenAction.apply(this, arguments);
|
|
884
|
+
}
|
|
885
|
+
function _refreshTokenAction() {
|
|
886
|
+
_refreshTokenAction = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(_ref6) {
|
|
887
|
+
var dispatch, domainName, token, refreshAccessTokenFetch;
|
|
888
|
+
return _regeneratorRuntime().wrap(function _callee6$(_context6) {
|
|
889
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
890
|
+
case 0:
|
|
891
|
+
dispatch = _ref6.dispatch, domainName = _ref6.domainName, token = _ref6.token;
|
|
892
|
+
_context6.prev = 1;
|
|
893
|
+
_context6.next = 4;
|
|
894
|
+
return refreshAccessTokenAPI(domainName, token);
|
|
895
|
+
case 4:
|
|
896
|
+
refreshAccessTokenFetch = _context6.sent;
|
|
897
|
+
if (!(refreshAccessTokenFetch.response.status === 200)) {
|
|
898
|
+
_context6.next = 10;
|
|
899
|
+
break;
|
|
900
|
+
}
|
|
901
|
+
localStorage.setItem(DAUTH_STATE, refreshAccessTokenFetch.data.accessToken);
|
|
902
|
+
return _context6.abrupt("return");
|
|
903
|
+
case 10:
|
|
904
|
+
dispatch({
|
|
905
|
+
type: LOGIN,
|
|
906
|
+
payload: {
|
|
907
|
+
user: {},
|
|
908
|
+
domain: {},
|
|
909
|
+
isAuthenticated: false
|
|
910
|
+
}
|
|
911
|
+
});
|
|
912
|
+
localStorage.removeItem(DAUTH_STATE);
|
|
913
|
+
return _context6.abrupt("return");
|
|
914
|
+
case 13:
|
|
915
|
+
_context6.next = 20;
|
|
916
|
+
break;
|
|
917
|
+
case 15:
|
|
918
|
+
_context6.prev = 15;
|
|
919
|
+
_context6.t0 = _context6["catch"](1);
|
|
920
|
+
dispatch({
|
|
921
|
+
type: LOGIN,
|
|
922
|
+
payload: {
|
|
923
|
+
user: {},
|
|
924
|
+
domain: {},
|
|
925
|
+
isAuthenticated: false
|
|
926
|
+
}
|
|
927
|
+
});
|
|
928
|
+
localStorage.removeItem(DAUTH_STATE);
|
|
929
|
+
console.log(_context6.t0);
|
|
930
|
+
case 20:
|
|
931
|
+
case "end":
|
|
932
|
+
return _context6.stop();
|
|
933
|
+
}
|
|
934
|
+
}, _callee6, null, [[1, 15]]);
|
|
935
|
+
}));
|
|
936
|
+
return _refreshTokenAction.apply(this, arguments);
|
|
937
|
+
}
|
|
845
938
|
|
|
846
939
|
var DauthProvider = function DauthProvider(props) {
|
|
847
940
|
var domainName = props.domainName,
|
|
@@ -851,6 +944,16 @@ var DauthProvider = function DauthProvider(props) {
|
|
|
851
944
|
ds = _useReducer[0],
|
|
852
945
|
dispatch = _useReducer[1];
|
|
853
946
|
var dauthState = ds;
|
|
947
|
+
// Refresh access token
|
|
948
|
+
useEffect(function () {
|
|
949
|
+
var token_ls = localStorage.getItem(DAUTH_STATE);
|
|
950
|
+
if (!token_ls) return;
|
|
951
|
+
refreshTokenAction({
|
|
952
|
+
dispatch: dispatch,
|
|
953
|
+
domainName: domainName,
|
|
954
|
+
token: token_ls
|
|
955
|
+
});
|
|
956
|
+
}, [dauthState]);
|
|
854
957
|
// Catch login redirect
|
|
855
958
|
useEffect(function () {
|
|
856
959
|
var queryString = window.location.search;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dauth-context-react.esm.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.types.ts","../src/reducer/dauth.reducer.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.ts","../src/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["export interface IDauthUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: {\n id: string;\n url: string;\n };\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n}\n\ninterface IDauthDomainState {\n name: string;\n loginRedirect: string;\n allowedOrigins: string[];\n}\n\nexport interface IDauthState {\n user: IDauthUser;\n domain: IDauthDomainState;\n isLoading: boolean;\n isAuthenticated: boolean;\n loginWithRedirect: () => void;\n logout: () => void;\n getAccessToken: () => string;\n updateUser: ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => void;\n updateUserWithRedirect: () => void;\n // Send email verification\n sev: {\n status: IActionStatus;\n isLoading: boolean;\n };\n sendEmailVerification: () => void;\n}\n\nexport interface IActionStatus {\n type: TStatusTypes;\n message: string;\n}\nexport type TStatusTypes = 'success' | 'error' | 'info' | 'warning';\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => initialDauthState.getAccessToken() || '',\n updateUser: () => {},\n updateUserWithRedirect: () => {},\n // Send email verification\n sev: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => {},\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 * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: any, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN:\n return {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n\n case DauthTypes.SET_IS_LOADING:\n return {\n ...state,\n isLoading: payload.isLoading,\n };\n\n case DauthTypes.UPDATE_USER:\n return {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS:\n return {\n ...state,\n sev: {\n ...state.sev,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING:\n return {\n ...state,\n sev: {\n ...state.sev,\n isLoading: payload,\n },\n };\n\n default:\n return state;\n }\n}\n","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.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 window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\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 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 { IDauthUser } from '../initialDauthState';\nimport { getServerBasePath } from './utils/config';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\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 })}/t-get-user/${domainName}`,\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<any> => {\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 })}/t-update-user/${domainName}`,\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<any> => {\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 })}/t-resend-email-verification/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const DAUTH_STATE = 'dauth_state';\n","import {\n getUserAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { DAUTH_STATE } from '../constants';\nimport { IDauthUser } from '../initialDauthState';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: any;\n dauth_state: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n dauth_state,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state);\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(DAUTH_STATE, dauth_state);\n } else {\n return localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: any;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\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(DAUTH_STATE, dauth_state_ls);\n } else {\n localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport async function setLogoutAction({ dispatch }: { dispatch: any }) {\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(DAUTH_STATE);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n 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 return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n } else {\n console.log('Update user error');\n return;\n }\n } catch (error) {\n console.log('Update user error', error);\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n 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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n }\n}\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState, {\n IDauthState,\n IDauthUser,\n} from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { DAUTH_STATE } from './constants';\n\ninterface DauthProviderProps {\n domainName: string;\n sid: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, sid, children } = props;\n const [ds, dispatch] = useReducer(userReducer, initialDauthState);\n const dauthState = ds as IDauthState;\n\n // Catch login redirect\n useEffect(() => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const dauth_state = urlParams.get(DAUTH_STATE);\n if (dauth_state && !dauthState.isAuthenticated) {\n action.setDauthStateAction({ dispatch, dauth_state, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n // Auto Login\n useEffect(() => {\n const dauth_state_ls = localStorage.getItem(DAUTH_STATE);\n if (dauth_state_ls && !dauthState.isAuthenticated) {\n action.setAutoLoginAction({ dispatch, dauth_state_ls, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-sign/${sid}`\n );\n }, [domainName, sid]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n return token_ls ?? 'token-not-found';\n }, []);\n\n const updateUser = useCallback(\n ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n const user = {\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n });\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-update-user/${sid}/${token_ls}`\n );\n }, [domainName, sid]);\n\n const sendEmailVerification = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken: () => 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","updateUser","updateUserWithRedirect","sev","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","_extends","isLocalhost","Boolean","location","hostname","match","apiVersion","serverDomain","getServerBasePath","_ref","domainName","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","DAUTH_STATE","setDauthStateAction","_setDauthStateAction","dispatch","dauth_state","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","removeItem","t0","console","log","finish","setAutoLoginAction","_setAutoLoginAction","dauth_state_ls","setLogoutAction","_setLogoutAction","setUpdateUserAction","_setUpdateUserAction","_callee4","_ref4","_callee4$","_context4","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","_callee5","_ref5","sendEmailFetch","_callee5$","_context5","DauthProvider","props","sid","children","_useReducer","useReducer","ds","dauthState","useEffect","queryString","search","urlParams","URLSearchParams","get","getItem","useCallback","replace","token_ls","name","lastname","nickname","tel_prefix","tel_suffix","avatar","memoProvider","useMemo","React","DauthContext","Provider","value","createContext","useDauth","context","useContext","Error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dauth-context-react.esm.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.types.ts","../src/reducer/dauth.reducer.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.ts","../src/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["export interface IDauthUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: {\n id: string;\n url: string;\n };\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n}\n\nexport interface IDauthDomainState {\n name: string;\n loginRedirect: string;\n allowedOrigins: string[];\n}\n\nexport interface IDauthState {\n user: IDauthUser;\n domain: IDauthDomainState;\n isLoading: boolean;\n isAuthenticated: boolean;\n loginWithRedirect: () => void;\n logout: () => void;\n getAccessToken: () => string;\n updateUser: ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => void;\n updateUserWithRedirect: () => void;\n // Send email verification\n sev: {\n status: IActionStatus;\n isLoading: boolean;\n };\n sendEmailVerification: () => void;\n}\n\nexport interface IActionStatus {\n type: TStatusTypes;\n message: string;\n}\nexport type TStatusTypes = 'success' | 'error' | 'info' | 'warning';\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => initialDauthState.getAccessToken() || '',\n updateUser: () => {},\n updateUserWithRedirect: () => {},\n // Send email verification\n sev: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => {},\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 * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: any, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN:\n return {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n\n case DauthTypes.SET_IS_LOADING:\n return {\n ...state,\n isLoading: payload.isLoading,\n };\n\n case DauthTypes.UPDATE_USER:\n return {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS:\n return {\n ...state,\n sev: {\n ...state.sev,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING:\n return {\n ...state,\n sev: {\n ...state.sev,\n isLoading: payload,\n },\n };\n\n default:\n return state;\n }\n}\n","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.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 window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\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 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 { IDauthUser } from '../initialDauthState';\nimport { getServerBasePath } from './utils/config';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\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 })}/t-get-user/${domainName}`,\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<any> => {\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 })}/t-update-user/${domainName}`,\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<any> => {\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 })}/t-resend-email-verification/${domainName}`,\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<any> => {\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 })}/t-refresh-access-token/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const DAUTH_STATE = 'dauth_state';\n","import {\n getUserAPI,\n refreshAccessTokenAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { DAUTH_STATE } from '../constants';\nimport { IDauthDomainState, IDauthUser } from '../initialDauthState';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: any;\n dauth_state: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n dauth_state,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state);\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(DAUTH_STATE, dauth_state);\n } else {\n return localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: any;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\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(DAUTH_STATE, dauth_state_ls);\n } else {\n localStorage.removeItem(DAUTH_STATE);\n }\n } catch (error) {\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport async function setLogoutAction({ dispatch }: { dispatch: any }) {\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(DAUTH_STATE);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n 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 return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n return dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n } else {\n console.log('Update user error');\n return;\n }\n } catch (error) {\n console.log('Update user error', error);\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n 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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\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 return dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n }\n}\n\nexport async function refreshTokenAction({\n dispatch,\n domainName,\n token,\n}: {\n 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 localStorage.setItem(\n DAUTH_STATE,\n refreshAccessTokenFetch.data.accessToken\n );\n return;\n } else {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(DAUTH_STATE);\n return;\n }\n } catch (error) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(DAUTH_STATE);\n console.log(error);\n }\n}\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState, {\n IDauthState,\n IDauthUser,\n} from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { DAUTH_STATE } from './constants';\n\ninterface DauthProviderProps {\n domainName: string;\n sid: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, sid, children } = props;\n const [ds, dispatch] = useReducer(userReducer, initialDauthState);\n const dauthState = ds as IDauthState;\n\n // Refresh access token\n useEffect(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n action.refreshTokenAction({ dispatch, domainName, token: token_ls });\n }, [dauthState]);\n\n // Catch login redirect\n useEffect(() => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const dauth_state = urlParams.get(DAUTH_STATE);\n if (dauth_state && !dauthState.isAuthenticated) {\n action.setDauthStateAction({ dispatch, dauth_state, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n // Auto Login\n useEffect(() => {\n const dauth_state_ls = localStorage.getItem(DAUTH_STATE);\n if (dauth_state_ls && !dauthState.isAuthenticated) {\n action.setAutoLoginAction({ dispatch, dauth_state_ls, domainName });\n }\n }, [dauthState.isAuthenticated, domainName]);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-sign/${sid}`\n );\n }, [domainName, sid]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n return token_ls ?? 'token-not-found';\n }, []);\n\n const updateUser = useCallback(\n ({\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n const user = {\n name,\n lastname,\n nickname,\n tel_prefix,\n tel_suffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n });\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/t-update-user/${sid}/${token_ls}`\n );\n }, [domainName, sid]);\n\n const sendEmailVerification = useCallback(() => {\n const token_ls = localStorage.getItem(DAUTH_STATE);\n if (!token_ls) return;\n return action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n });\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken: () => 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","updateUser","updateUserWithRedirect","sev","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","_extends","isLocalhost","Boolean","location","hostname","match","apiVersion","serverDomain","getServerBasePath","_ref","domainName","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","DAUTH_STATE","setDauthStateAction","_setDauthStateAction","dispatch","dauth_state","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","removeItem","t0","console","log","finish","setAutoLoginAction","_setAutoLoginAction","dauth_state_ls","setLogoutAction","_setLogoutAction","setUpdateUserAction","_setUpdateUserAction","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","_callee5","_ref5","sendEmailFetch","_callee5$","_context5","refreshTokenAction","_refreshTokenAction","_callee6","_ref6","refreshAccessTokenFetch","_callee6$","_context6","accessToken","DauthProvider","props","sid","children","_useReducer","useReducer","ds","dauthState","useEffect","token_ls","getItem","queryString","search","urlParams","URLSearchParams","get","useCallback","replace","name","lastname","nickname","tel_prefix","tel_suffix","avatar","memoProvider","useMemo","React","DauthContext","Provider","value","createContext","useDauth","context","useContext","Error"],"mappings":"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"}
|
|
@@ -27,4 +27,9 @@ declare type TSetSendEmailVerificationAction = {
|
|
|
27
27
|
token: string;
|
|
28
28
|
};
|
|
29
29
|
export declare function sendEmailVerificationAction({ dispatch, domainName, token, }: TSetSendEmailVerificationAction): Promise<any>;
|
|
30
|
+
export declare function refreshTokenAction({ dispatch, domainName, token, }: {
|
|
31
|
+
dispatch: any;
|
|
32
|
+
domainName: string;
|
|
33
|
+
token: string;
|
|
34
|
+
}): Promise<void>;
|
|
30
35
|
export {};
|
package/package.json
CHANGED
package/src/api/dauth.api.ts
CHANGED
|
@@ -48,7 +48,7 @@ export const sendEmailVerificationAPI = async (
|
|
|
48
48
|
const params = {
|
|
49
49
|
method: 'GET',
|
|
50
50
|
headers: {
|
|
51
|
-
Authorization:
|
|
51
|
+
Authorization: token,
|
|
52
52
|
'Content-Type': 'application/json',
|
|
53
53
|
},
|
|
54
54
|
};
|
|
@@ -61,3 +61,24 @@ export const sendEmailVerificationAPI = async (
|
|
|
61
61
|
const data = await response.json();
|
|
62
62
|
return { response, data };
|
|
63
63
|
};
|
|
64
|
+
|
|
65
|
+
export const refreshAccessTokenAPI = async (
|
|
66
|
+
domainName: string,
|
|
67
|
+
token: string
|
|
68
|
+
): Promise<any> => {
|
|
69
|
+
const params = {
|
|
70
|
+
method: 'GET',
|
|
71
|
+
headers: {
|
|
72
|
+
Authorization: token,
|
|
73
|
+
'Content-Type': 'application/json',
|
|
74
|
+
},
|
|
75
|
+
};
|
|
76
|
+
const response = await fetch(
|
|
77
|
+
`${getServerBasePath({
|
|
78
|
+
domainName,
|
|
79
|
+
})}/t-refresh-access-token/${domainName}`,
|
|
80
|
+
params
|
|
81
|
+
);
|
|
82
|
+
const data = await response.json();
|
|
83
|
+
return { response, data };
|
|
84
|
+
};
|
package/src/index.tsx
CHANGED
|
@@ -28,6 +28,13 @@ export const DauthProvider: React.FC<DauthProviderProps> = (
|
|
|
28
28
|
const [ds, dispatch] = useReducer(userReducer, initialDauthState);
|
|
29
29
|
const dauthState = ds as IDauthState;
|
|
30
30
|
|
|
31
|
+
// Refresh access token
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
const token_ls = localStorage.getItem(DAUTH_STATE);
|
|
34
|
+
if (!token_ls) return;
|
|
35
|
+
action.refreshTokenAction({ dispatch, domainName, token: token_ls });
|
|
36
|
+
}, [dauthState]);
|
|
37
|
+
|
|
31
38
|
// Catch login redirect
|
|
32
39
|
useEffect(() => {
|
|
33
40
|
const queryString = window.location.search;
|
package/src/initialDauthState.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getUserAPI,
|
|
3
|
+
refreshAccessTokenAPI,
|
|
3
4
|
sendEmailVerificationAPI,
|
|
4
5
|
updateUserAPI,
|
|
5
6
|
} from '../api/dauth.api';
|
|
6
7
|
import { DAUTH_STATE } from '../constants';
|
|
7
|
-
import { IDauthUser } from '../initialDauthState';
|
|
8
|
+
import { IDauthDomainState, IDauthUser } from '../initialDauthState';
|
|
8
9
|
import * as DauthTypes from './dauth.types';
|
|
9
10
|
|
|
10
11
|
type TSetDauthStateAction = {
|
|
@@ -195,3 +196,49 @@ export async function sendEmailVerificationAction({
|
|
|
195
196
|
});
|
|
196
197
|
}
|
|
197
198
|
}
|
|
199
|
+
|
|
200
|
+
export async function refreshTokenAction({
|
|
201
|
+
dispatch,
|
|
202
|
+
domainName,
|
|
203
|
+
token,
|
|
204
|
+
}: {
|
|
205
|
+
dispatch: any;
|
|
206
|
+
domainName: string;
|
|
207
|
+
token: string;
|
|
208
|
+
}) {
|
|
209
|
+
try {
|
|
210
|
+
const refreshAccessTokenFetch = await refreshAccessTokenAPI(
|
|
211
|
+
domainName,
|
|
212
|
+
token
|
|
213
|
+
);
|
|
214
|
+
if (refreshAccessTokenFetch.response.status === 200) {
|
|
215
|
+
localStorage.setItem(
|
|
216
|
+
DAUTH_STATE,
|
|
217
|
+
refreshAccessTokenFetch.data.accessToken
|
|
218
|
+
);
|
|
219
|
+
return;
|
|
220
|
+
} else {
|
|
221
|
+
dispatch({
|
|
222
|
+
type: DauthTypes.LOGIN,
|
|
223
|
+
payload: {
|
|
224
|
+
user: {} as IDauthUser,
|
|
225
|
+
domain: {} as IDauthDomainState,
|
|
226
|
+
isAuthenticated: false,
|
|
227
|
+
},
|
|
228
|
+
});
|
|
229
|
+
localStorage.removeItem(DAUTH_STATE);
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
} catch (error) {
|
|
233
|
+
dispatch({
|
|
234
|
+
type: DauthTypes.LOGIN,
|
|
235
|
+
payload: {
|
|
236
|
+
user: {} as IDauthUser,
|
|
237
|
+
domain: {} as IDauthDomainState,
|
|
238
|
+
isAuthenticated: false,
|
|
239
|
+
},
|
|
240
|
+
});
|
|
241
|
+
localStorage.removeItem(DAUTH_STATE);
|
|
242
|
+
console.log(error);
|
|
243
|
+
}
|
|
244
|
+
}
|