dauth-context-react 0.2.0 → 0.2.100
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/constants.d.ts +1 -1
- package/dist/dauth-context-react.cjs.development.js +135 -97
- 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 +135 -97
- package/dist/dauth-context-react.esm.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/initialDauthState.d.ts +3 -3
- package/dist/reducer/dauth.actions.d.ts +17 -16
- package/dist/reducer/dauth.reducer.d.ts +2 -1
- package/dist/routes.d.ts +7 -0
- package/package.json +1 -1
- package/src/api/dauth.api.ts +9 -4
- package/src/constants.ts +1 -1
- package/src/index.tsx +21 -21
- package/src/initialDauthState.ts +6 -6
- package/src/reducer/dauth.actions.ts +31 -23
- package/src/reducer/dauth.reducer.ts +26 -15
- package/src/routes.ts +7 -0
package/dist/constants.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const TOKEN_LS = "dauth_state";
|
|
@@ -363,12 +363,14 @@ var initialDauthState = {
|
|
|
363
363
|
loginWithRedirect: function loginWithRedirect() {},
|
|
364
364
|
logout: function logout() {},
|
|
365
365
|
getAccessToken: function getAccessToken() {
|
|
366
|
-
return
|
|
366
|
+
return Promise.resolve('');
|
|
367
|
+
},
|
|
368
|
+
updateUser: function updateUser() {
|
|
369
|
+
return Promise.resolve(false);
|
|
367
370
|
},
|
|
368
|
-
updateUser: function updateUser() {},
|
|
369
371
|
updateUserWithRedirect: function updateUserWithRedirect() {},
|
|
370
372
|
// Send email verification
|
|
371
|
-
|
|
373
|
+
sendEmailVerificationStatus: {
|
|
372
374
|
status: {
|
|
373
375
|
type: 'info',
|
|
374
376
|
message: 'Sending email verification...'
|
|
@@ -389,39 +391,62 @@ function userReducer(state, action) {
|
|
|
389
391
|
payload = action.payload;
|
|
390
392
|
switch (type) {
|
|
391
393
|
case LOGIN:
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
394
|
+
{
|
|
395
|
+
var login = _extends({}, state, {
|
|
396
|
+
user: payload.user,
|
|
397
|
+
domain: payload.domain,
|
|
398
|
+
isAuthenticated: payload.isAuthenticated
|
|
399
|
+
});
|
|
400
|
+
return login;
|
|
401
|
+
}
|
|
397
402
|
case SET_IS_LOADING:
|
|
398
|
-
|
|
399
|
-
isLoading
|
|
400
|
-
|
|
403
|
+
{
|
|
404
|
+
var isLoading = _extends({}, state, {
|
|
405
|
+
isLoading: payload.isLoading
|
|
406
|
+
});
|
|
407
|
+
return isLoading;
|
|
408
|
+
}
|
|
401
409
|
case UPDATE_USER:
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
410
|
+
{
|
|
411
|
+
var updateUser = _extends({}, state, {
|
|
412
|
+
user: _extends({}, state.user, payload)
|
|
413
|
+
});
|
|
414
|
+
return updateUser;
|
|
415
|
+
}
|
|
405
416
|
case SET_SEND_EMAIL_VERIFICATION_STATUS:
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
417
|
+
{
|
|
418
|
+
var setSendEmailVerificationStatus = _extends({}, state, {
|
|
419
|
+
sendEmailVerificationStatus: _extends({}, state.sendEmailVerificationStatus, {
|
|
420
|
+
status: {
|
|
421
|
+
type: payload.type,
|
|
422
|
+
message: payload.message
|
|
423
|
+
}
|
|
424
|
+
})
|
|
425
|
+
});
|
|
426
|
+
return setSendEmailVerificationStatus;
|
|
427
|
+
}
|
|
414
428
|
case SET_SEND_EMAIL_VERIFICATION_IS_LOADING:
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
429
|
+
{
|
|
430
|
+
var setSendEmailVerificationIsLoading = _extends({}, state, {
|
|
431
|
+
sendEmailVerificationStatus: _extends({}, state.sendEmailVerificationStatus, {
|
|
432
|
+
isLoading: payload
|
|
433
|
+
})
|
|
434
|
+
});
|
|
435
|
+
return setSendEmailVerificationIsLoading;
|
|
436
|
+
}
|
|
420
437
|
default:
|
|
421
438
|
return state;
|
|
422
439
|
}
|
|
423
440
|
}
|
|
424
441
|
|
|
442
|
+
var routes = {
|
|
443
|
+
tenantSignin: 't-signin',
|
|
444
|
+
tenantUpdateUser: 't-update-user',
|
|
445
|
+
tenantGetUser: 't-get-user',
|
|
446
|
+
tenantResendEmailVerification: 't-resend-email-verification',
|
|
447
|
+
tenantRefreshAccessToken: 't-refresh-access-token'
|
|
448
|
+
};
|
|
449
|
+
|
|
425
450
|
var isLocalhost = /*#__PURE__*/Boolean(window.location.hostname === 'localhost' || window.location.hostname === '[::1]' || /*#__PURE__*/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) || /*#__PURE__*/window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));
|
|
426
451
|
var apiVersion = 'v1';
|
|
427
452
|
var serverDomain = 'dauth.ovh';
|
|
@@ -458,7 +483,7 @@ var getUserAPI = /*#__PURE__*/function () {
|
|
|
458
483
|
_context.next = 3;
|
|
459
484
|
return fetch(getServerBasePath({
|
|
460
485
|
domainName: domainName
|
|
461
|
-
}) + "/
|
|
486
|
+
}) + "/" + routes.tenantGetUser + "/" + domainName, params);
|
|
462
487
|
case 3:
|
|
463
488
|
response = _context.sent;
|
|
464
489
|
_context.next = 6;
|
|
@@ -496,7 +521,7 @@ var updateUserAPI = /*#__PURE__*/function () {
|
|
|
496
521
|
_context2.next = 3;
|
|
497
522
|
return fetch(getServerBasePath({
|
|
498
523
|
domainName: domainName
|
|
499
|
-
}) + "/
|
|
524
|
+
}) + "\n /" + routes.tenantUpdateUser + "\n /" + domainName, params);
|
|
500
525
|
case 3:
|
|
501
526
|
response = _context2.sent;
|
|
502
527
|
_context2.next = 6;
|
|
@@ -533,7 +558,7 @@ var sendEmailVerificationAPI = /*#__PURE__*/function () {
|
|
|
533
558
|
_context3.next = 3;
|
|
534
559
|
return fetch(getServerBasePath({
|
|
535
560
|
domainName: domainName
|
|
536
|
-
}) + "/
|
|
561
|
+
}) + "/" + routes.tenantResendEmailVerification + "/" + domainName, params);
|
|
537
562
|
case 3:
|
|
538
563
|
response = _context3.sent;
|
|
539
564
|
_context3.next = 6;
|
|
@@ -570,7 +595,7 @@ var refreshAccessTokenAPI = /*#__PURE__*/function () {
|
|
|
570
595
|
_context4.next = 3;
|
|
571
596
|
return fetch(getServerBasePath({
|
|
572
597
|
domainName: domainName
|
|
573
|
-
}) + "/
|
|
598
|
+
}) + "/" + routes.tenantRefreshAccessToken + "/" + domainName, params);
|
|
574
599
|
case 3:
|
|
575
600
|
response = _context4.sent;
|
|
576
601
|
_context4.next = 6;
|
|
@@ -592,18 +617,18 @@ var refreshAccessTokenAPI = /*#__PURE__*/function () {
|
|
|
592
617
|
};
|
|
593
618
|
}();
|
|
594
619
|
|
|
595
|
-
var
|
|
620
|
+
var TOKEN_LS = 'dauth_state';
|
|
596
621
|
|
|
597
622
|
function setDauthStateAction(_x) {
|
|
598
623
|
return _setDauthStateAction.apply(this, arguments);
|
|
599
624
|
}
|
|
600
625
|
function _setDauthStateAction() {
|
|
601
626
|
_setDauthStateAction = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref) {
|
|
602
|
-
var dispatch,
|
|
627
|
+
var dispatch, token, domainName, getUserFetch;
|
|
603
628
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
604
629
|
while (1) switch (_context.prev = _context.next) {
|
|
605
630
|
case 0:
|
|
606
|
-
dispatch = _ref.dispatch,
|
|
631
|
+
dispatch = _ref.dispatch, token = _ref.token, domainName = _ref.domainName;
|
|
607
632
|
dispatch({
|
|
608
633
|
type: SET_IS_LOADING,
|
|
609
634
|
payload: {
|
|
@@ -612,7 +637,7 @@ function _setDauthStateAction() {
|
|
|
612
637
|
});
|
|
613
638
|
_context.prev = 2;
|
|
614
639
|
_context.next = 5;
|
|
615
|
-
return getUserAPI(domainName,
|
|
640
|
+
return getUserAPI(domainName, token);
|
|
616
641
|
case 5:
|
|
617
642
|
getUserFetch = _context.sent;
|
|
618
643
|
if (!(getUserFetch.response.status === 200)) {
|
|
@@ -628,7 +653,7 @@ function _setDauthStateAction() {
|
|
|
628
653
|
}
|
|
629
654
|
});
|
|
630
655
|
window.history.replaceState({}, document.title, getUserFetch.data.domain.loginRedirect);
|
|
631
|
-
return _context.abrupt("return", localStorage.setItem(
|
|
656
|
+
return _context.abrupt("return", localStorage.setItem(TOKEN_LS, token));
|
|
632
657
|
case 12:
|
|
633
658
|
return _context.abrupt("return", resetUser(dispatch));
|
|
634
659
|
case 13:
|
|
@@ -697,12 +722,12 @@ function _setAutoLoginAction() {
|
|
|
697
722
|
isAuthenticated: true
|
|
698
723
|
}
|
|
699
724
|
});
|
|
700
|
-
localStorage.setItem(
|
|
725
|
+
localStorage.setItem(TOKEN_LS, refreshAccessTokenFetch.data.accessToken);
|
|
701
726
|
return _context2.abrupt("return");
|
|
702
727
|
case 16:
|
|
703
728
|
window.location.replace(getClientBasePath({
|
|
704
729
|
domainName: domainName
|
|
705
|
-
}) + "/
|
|
730
|
+
}) + "/" + routes.tenantSignin + "/" + sid);
|
|
706
731
|
return _context2.abrupt("return", resetUser(dispatch));
|
|
707
732
|
case 18:
|
|
708
733
|
_context2.next = 22;
|
|
@@ -710,7 +735,7 @@ function _setAutoLoginAction() {
|
|
|
710
735
|
case 20:
|
|
711
736
|
window.location.replace(getClientBasePath({
|
|
712
737
|
domainName: domainName
|
|
713
|
-
}) + "/
|
|
738
|
+
}) + "/" + routes.tenantSignin + "/" + sid);
|
|
714
739
|
return _context2.abrupt("return", resetUser(dispatch));
|
|
715
740
|
case 22:
|
|
716
741
|
_context2.next = 28;
|
|
@@ -763,7 +788,7 @@ function _setLogoutAction() {
|
|
|
763
788
|
isAuthenticated: false
|
|
764
789
|
}
|
|
765
790
|
});
|
|
766
|
-
localStorage.removeItem(
|
|
791
|
+
localStorage.removeItem(TOKEN_LS);
|
|
767
792
|
return _context3.abrupt("return", dispatch({
|
|
768
793
|
type: SET_IS_LOADING,
|
|
769
794
|
payload: {
|
|
@@ -792,42 +817,45 @@ function _setUpdateUserAction() {
|
|
|
792
817
|
window.document.documentElement.setAttribute('lang', user.language);
|
|
793
818
|
}
|
|
794
819
|
if (token) {
|
|
795
|
-
_context4.next =
|
|
820
|
+
_context4.next = 5;
|
|
796
821
|
break;
|
|
797
822
|
}
|
|
798
|
-
|
|
823
|
+
dispatch({
|
|
799
824
|
type: UPDATE_USER,
|
|
800
825
|
payload: user
|
|
801
|
-
})
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
_context4.
|
|
826
|
+
});
|
|
827
|
+
return _context4.abrupt("return", false);
|
|
828
|
+
case 5:
|
|
829
|
+
_context4.prev = 5;
|
|
830
|
+
_context4.next = 8;
|
|
805
831
|
return updateUserAPI(domainName, user, token);
|
|
806
|
-
case
|
|
832
|
+
case 8:
|
|
807
833
|
getUserFetch = _context4.sent;
|
|
808
834
|
if (!(getUserFetch.response.status === 200)) {
|
|
809
|
-
_context4.next =
|
|
835
|
+
_context4.next = 14;
|
|
810
836
|
break;
|
|
811
837
|
}
|
|
812
|
-
|
|
838
|
+
dispatch({
|
|
813
839
|
type: UPDATE_USER,
|
|
814
840
|
payload: getUserFetch.data.user
|
|
815
|
-
})
|
|
816
|
-
|
|
817
|
-
console.log('Update user error', getUserFetch.data.message);
|
|
818
|
-
return _context4.abrupt("return");
|
|
841
|
+
});
|
|
842
|
+
return _context4.abrupt("return", true);
|
|
819
843
|
case 14:
|
|
820
|
-
|
|
821
|
-
|
|
844
|
+
console.log('Update user error', getUserFetch.data.message);
|
|
845
|
+
return _context4.abrupt("return", false);
|
|
822
846
|
case 16:
|
|
823
|
-
_context4.
|
|
824
|
-
|
|
847
|
+
_context4.next = 22;
|
|
848
|
+
break;
|
|
849
|
+
case 18:
|
|
850
|
+
_context4.prev = 18;
|
|
851
|
+
_context4.t0 = _context4["catch"](5);
|
|
825
852
|
console.log('Update user error', _context4.t0);
|
|
826
|
-
|
|
853
|
+
return _context4.abrupt("return", false);
|
|
854
|
+
case 22:
|
|
827
855
|
case "end":
|
|
828
856
|
return _context4.stop();
|
|
829
857
|
}
|
|
830
|
-
}, _callee4, null, [[
|
|
858
|
+
}, _callee4, null, [[5, 18]]);
|
|
831
859
|
}));
|
|
832
860
|
return _setUpdateUserAction.apply(this, arguments);
|
|
833
861
|
}
|
|
@@ -932,7 +960,7 @@ function _checkTokenAction() {
|
|
|
932
960
|
case 9:
|
|
933
961
|
window.location.replace(getClientBasePath({
|
|
934
962
|
domainName: domainName
|
|
935
|
-
}) + "/
|
|
963
|
+
}) + "/" + routes.tenantSignin + "/" + sid);
|
|
936
964
|
return _context6.abrupt("return", resetUser(dispatch));
|
|
937
965
|
case 11:
|
|
938
966
|
_context6.next = 17;
|
|
@@ -962,7 +990,7 @@ function _getAccessTokenAction() {
|
|
|
962
990
|
while (1) switch (_context7.prev = _context7.next) {
|
|
963
991
|
case 0:
|
|
964
992
|
dispatch = _ref7.dispatch, domainName = _ref7.domainName;
|
|
965
|
-
token_ls = localStorage.getItem(
|
|
993
|
+
token_ls = localStorage.getItem(TOKEN_LS);
|
|
966
994
|
if (token_ls) {
|
|
967
995
|
_context7.next = 4;
|
|
968
996
|
break;
|
|
@@ -999,7 +1027,7 @@ function _getAccessTokenAction() {
|
|
|
999
1027
|
return _getAccessTokenAction.apply(this, arguments);
|
|
1000
1028
|
}
|
|
1001
1029
|
var resetUser = function resetUser(dispatch) {
|
|
1002
|
-
localStorage.removeItem(
|
|
1030
|
+
localStorage.removeItem(TOKEN_LS);
|
|
1003
1031
|
return dispatch({
|
|
1004
1032
|
type: LOGIN,
|
|
1005
1033
|
payload: {
|
|
@@ -1015,14 +1043,13 @@ var DauthProvider = function DauthProvider(props) {
|
|
|
1015
1043
|
sid = props.sid,
|
|
1016
1044
|
children = props.children;
|
|
1017
1045
|
var _useReducer = React.useReducer(userReducer, initialDauthState),
|
|
1018
|
-
|
|
1046
|
+
dauthState = _useReducer[0],
|
|
1019
1047
|
dispatch = _useReducer[1];
|
|
1020
|
-
var dauthState = ds;
|
|
1021
1048
|
// Check token periodically
|
|
1022
1049
|
React.useEffect(function () {
|
|
1023
1050
|
if (!dauthState.isAuthenticated) return;
|
|
1024
1051
|
var interval = setInterval(function () {
|
|
1025
|
-
var token_ls = localStorage.getItem(
|
|
1052
|
+
var token_ls = localStorage.getItem(TOKEN_LS);
|
|
1026
1053
|
if (!token_ls) return;
|
|
1027
1054
|
checkTokenAction({
|
|
1028
1055
|
dispatch: dispatch,
|
|
@@ -1040,18 +1067,18 @@ var DauthProvider = function DauthProvider(props) {
|
|
|
1040
1067
|
var queryString = window.location.search;
|
|
1041
1068
|
if (!queryString) return;
|
|
1042
1069
|
var urlParams = new URLSearchParams(queryString);
|
|
1043
|
-
var
|
|
1044
|
-
if (
|
|
1070
|
+
var token_url = urlParams.get(TOKEN_LS);
|
|
1071
|
+
if (token_url && !dauthState.isAuthenticated) {
|
|
1045
1072
|
setDauthStateAction({
|
|
1046
1073
|
dispatch: dispatch,
|
|
1047
|
-
|
|
1074
|
+
token: token_url,
|
|
1048
1075
|
domainName: domainName
|
|
1049
1076
|
});
|
|
1050
1077
|
}
|
|
1051
1078
|
}, []);
|
|
1052
1079
|
// Auto Login
|
|
1053
1080
|
React.useEffect(function () {
|
|
1054
|
-
var dauth_state_ls = localStorage.getItem(
|
|
1081
|
+
var dauth_state_ls = localStorage.getItem(TOKEN_LS);
|
|
1055
1082
|
if (dauth_state_ls && !dauthState.isAuthenticated) {
|
|
1056
1083
|
setAutoLoginAction({
|
|
1057
1084
|
dispatch: dispatch,
|
|
@@ -1064,7 +1091,7 @@ var DauthProvider = function DauthProvider(props) {
|
|
|
1064
1091
|
var loginWithRedirect = React.useCallback(function () {
|
|
1065
1092
|
return window.location.replace(getClientBasePath({
|
|
1066
1093
|
domainName: domainName
|
|
1067
|
-
}) + "/
|
|
1094
|
+
}) + "/" + routes.tenantSignin + "/" + sid);
|
|
1068
1095
|
}, [domainName, sid]);
|
|
1069
1096
|
var logout = React.useCallback(function () {
|
|
1070
1097
|
return setLogoutAction({
|
|
@@ -1090,40 +1117,51 @@ var DauthProvider = function DauthProvider(props) {
|
|
|
1090
1117
|
}
|
|
1091
1118
|
}, _callee);
|
|
1092
1119
|
})), []);
|
|
1093
|
-
var updateUser = React.useCallback(function (
|
|
1094
|
-
var
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1120
|
+
var updateUser = React.useCallback( /*#__PURE__*/function () {
|
|
1121
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref2) {
|
|
1122
|
+
var name, lastname, nickname, tel_prefix, tel_suffix, language, avatar, token_ls, user;
|
|
1123
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
1124
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
1125
|
+
case 0:
|
|
1126
|
+
name = _ref2.name, lastname = _ref2.lastname, nickname = _ref2.nickname, tel_prefix = _ref2.tel_prefix, tel_suffix = _ref2.tel_suffix, language = _ref2.language, avatar = _ref2.avatar;
|
|
1127
|
+
token_ls = localStorage.getItem(TOKEN_LS);
|
|
1128
|
+
user = {
|
|
1129
|
+
name: name,
|
|
1130
|
+
lastname: lastname,
|
|
1131
|
+
nickname: nickname,
|
|
1132
|
+
tel_prefix: tel_prefix,
|
|
1133
|
+
tel_suffix: tel_suffix,
|
|
1134
|
+
language: language,
|
|
1135
|
+
avatar: avatar
|
|
1136
|
+
};
|
|
1137
|
+
_context2.next = 5;
|
|
1138
|
+
return setUpdateUserAction({
|
|
1139
|
+
dispatch: dispatch,
|
|
1140
|
+
domainName: domainName,
|
|
1141
|
+
user: user,
|
|
1142
|
+
token: token_ls
|
|
1143
|
+
});
|
|
1144
|
+
case 5:
|
|
1145
|
+
return _context2.abrupt("return", _context2.sent);
|
|
1146
|
+
case 6:
|
|
1147
|
+
case "end":
|
|
1148
|
+
return _context2.stop();
|
|
1149
|
+
}
|
|
1150
|
+
}, _callee2);
|
|
1151
|
+
}));
|
|
1152
|
+
return function (_x) {
|
|
1153
|
+
return _ref3.apply(this, arguments);
|
|
1110
1154
|
};
|
|
1111
|
-
|
|
1112
|
-
dispatch: dispatch,
|
|
1113
|
-
domainName: domainName,
|
|
1114
|
-
user: user,
|
|
1115
|
-
token: token_ls
|
|
1116
|
-
});
|
|
1117
|
-
}, [domainName]);
|
|
1155
|
+
}(), [domainName]);
|
|
1118
1156
|
var updateUserWithRedirect = React.useCallback(function () {
|
|
1119
|
-
var token_ls = localStorage.getItem(
|
|
1157
|
+
var token_ls = localStorage.getItem(TOKEN_LS);
|
|
1120
1158
|
if (!token_ls) return;
|
|
1121
1159
|
return window.location.replace(getClientBasePath({
|
|
1122
1160
|
domainName: domainName
|
|
1123
|
-
}) + "/
|
|
1161
|
+
}) + "\n /" + routes.tenantUpdateUser + "\n /" + sid + "\n /" + token_ls);
|
|
1124
1162
|
}, [domainName, sid]);
|
|
1125
1163
|
var sendEmailVerification = React.useCallback(function () {
|
|
1126
|
-
var token_ls = localStorage.getItem(
|
|
1164
|
+
var token_ls = localStorage.getItem(TOKEN_LS);
|
|
1127
1165
|
if (!token_ls) return;
|
|
1128
1166
|
return sendEmailVerificationAction({
|
|
1129
1167
|
dispatch: dispatch,
|