phx-uikit 1.0.177 → 1.0.179
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.
|
@@ -14,56 +14,64 @@ var getCookieSession_1 = tslib_1.__importDefault(require("../Func/getCookieSessi
|
|
|
14
14
|
var PHXLoginSsoV3 = function (props) {
|
|
15
15
|
var onClick = props.onClick, banner = props.banner, dataSession = props.dataSession, redirectPath = props.redirectPath, router = props.router, logo = props.logo;
|
|
16
16
|
var schoolLogo = (0, read_env_config_1.getEnv)('NEXT_PUBLIC_ENV_LOGIN_LOGO', process.env.NEXT_PUBLIC_ENV_LOGIN_LOGO);
|
|
17
|
+
// const publicUrl = getEnv('NEXT_PUBLIC_API_GATEWAY', process.env.NEXT_PUBLIC_API_GATEWAY)
|
|
17
18
|
var _a = (0, react_1.useState)(false), loading = _a[0], setLoading = _a[1];
|
|
18
19
|
var _b = (0, react_1.useState)(false), error = _b[0], setError = _b[1];
|
|
19
|
-
var sessionCookie = (0, getCookieSession_1["default"])();
|
|
20
|
+
var sessionCookie = (0, react_1.useRef)((0, getCookieSession_1["default"])());
|
|
20
21
|
var handlerOnClick = function () {
|
|
21
22
|
setLoading(true);
|
|
22
23
|
onClick();
|
|
23
24
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
25
|
+
var saveRefreshTokenSso = function (refreshToken) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
26
|
+
return tslib_1.__generator(this, function (_a) {
|
|
27
|
+
switch (_a.label) {
|
|
28
|
+
case 0: return [4 /*yield*/, fetch("https://production-api-portalv2.phx-smartschool.com/auth/set-token", {
|
|
29
|
+
headers: {
|
|
30
|
+
'Content-Type': 'application/json'
|
|
31
|
+
},
|
|
32
|
+
method: 'post',
|
|
33
|
+
body: JSON.stringify({
|
|
34
|
+
refreshToken: refreshToken
|
|
35
|
+
}),
|
|
36
|
+
credentials: 'include'
|
|
37
|
+
})];
|
|
38
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}); };
|
|
35
42
|
var handlerSaveCookies = function (session) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
36
|
-
var token, userInfo, accessToken;
|
|
43
|
+
var token, userInfo, accessToken, refreshToken;
|
|
37
44
|
var _a;
|
|
38
45
|
return tslib_1.__generator(this, function (_b) {
|
|
39
46
|
switch (_b.label) {
|
|
40
47
|
case 0:
|
|
41
48
|
token = session.data.token;
|
|
42
|
-
userInfo = token.userInfo, accessToken = token.token;
|
|
43
|
-
if (!(userInfo && ((_a = userInfo === null || userInfo === void 0 ? void 0 : userInfo.user_roles) === null || _a === void 0 ? void 0 : _a[0].role.role_code))) return [3 /*break*/,
|
|
49
|
+
userInfo = token.userInfo, accessToken = token.token, refreshToken = token.refreshToken;
|
|
50
|
+
if (!(userInfo && ((_a = userInfo === null || userInfo === void 0 ? void 0 : userInfo.user_roles) === null || _a === void 0 ? void 0 : _a[0].role.role_code))) return [3 /*break*/, 3];
|
|
44
51
|
// ghi nhớ tài khoản
|
|
45
52
|
(0, saveCookiesClient_1["default"])({ value: tslib_1.__assign(tslib_1.__assign({}, sessionCookie), { user_info: userInfo, access_token: accessToken }) });
|
|
46
53
|
// save refresh token after login sso success
|
|
47
|
-
|
|
48
|
-
return [4 /*yield*/, dataSession.update({ name: null })];
|
|
54
|
+
return [4 /*yield*/, saveRefreshTokenSso(refreshToken)];
|
|
49
55
|
case 1:
|
|
50
56
|
// save refresh token after login sso success
|
|
51
|
-
// await saveRefreshTokenSso(refreshToken)
|
|
52
57
|
_b.sent();
|
|
53
|
-
|
|
54
|
-
return [3 /*break*/, 3];
|
|
58
|
+
return [4 /*yield*/, dataSession.update({ name: null })];
|
|
55
59
|
case 2:
|
|
60
|
+
_b.sent();
|
|
61
|
+
router === null || router === void 0 ? void 0 : router.push(redirectPath);
|
|
62
|
+
return [3 /*break*/, 4];
|
|
63
|
+
case 3:
|
|
56
64
|
setError(true);
|
|
57
65
|
setLoading(false);
|
|
58
|
-
_b.label =
|
|
59
|
-
case
|
|
66
|
+
_b.label = 4;
|
|
67
|
+
case 4: return [2 /*return*/];
|
|
60
68
|
}
|
|
61
69
|
});
|
|
62
70
|
}); };
|
|
63
71
|
var handlerCheckLogin = function () {
|
|
64
|
-
var _a, _b;
|
|
65
|
-
if (!sessionCookie || !(sessionCookie === null ||
|
|
66
|
-
if (dataSession.status === constants_1.AUTHENTICATED && ((
|
|
72
|
+
var _a, _b, _c;
|
|
73
|
+
if (!sessionCookie.current || !((_a = sessionCookie.current) === null || _a === void 0 ? void 0 : _a.access_token)) {
|
|
74
|
+
if (dataSession.status === constants_1.AUTHENTICATED && ((_c = (_b = dataSession === null || dataSession === void 0 ? void 0 : dataSession.data) === null || _b === void 0 ? void 0 : _b.session.user) === null || _c === void 0 ? void 0 : _c.name)) {
|
|
67
75
|
setLoading(true);
|
|
68
76
|
handlerSaveCookies(dataSession);
|
|
69
77
|
}
|
|
@@ -75,7 +83,7 @@ var PHXLoginSsoV3 = function (props) {
|
|
|
75
83
|
}
|
|
76
84
|
}
|
|
77
85
|
else {
|
|
78
|
-
router === null || router === void 0 ? void 0 : router.push(
|
|
86
|
+
router === null || router === void 0 ? void 0 : router.push(redirectPath);
|
|
79
87
|
}
|
|
80
88
|
};
|
|
81
89
|
(0, react_1.useEffect)(function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login-sso-v3.js","sourceRoot":"","sources":["../../../../src/components/LoginSsoV3/login-sso-v3.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;AACZ,
|
|
1
|
+
{"version":3,"file":"login-sso-v3.js","sourceRoot":"","sources":["../../../../src/components/LoginSsoV3/login-sso-v3.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,66 +1,74 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { __assign, __awaiter, __generator } from "tslib";
|
|
3
|
-
import React, { useEffect, useState } from 'react';
|
|
3
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
4
4
|
import { PHXSkeleton } from '../Skeleton';
|
|
5
5
|
import { PHXButton } from '../Button';
|
|
6
6
|
import { PHXBanner } from '../Banner';
|
|
7
7
|
import { getEnv } from '../../read-env-config';
|
|
8
|
-
import { AUTHENTICATED
|
|
8
|
+
import { AUTHENTICATED } from '../../utils/constants';
|
|
9
9
|
import saveCookiesClient from '../Func/saveCookiesClient';
|
|
10
10
|
import PHXFuncGetCookieSession from '../Func/getCookieSession';
|
|
11
11
|
export var PHXLoginSsoV3 = function (props) {
|
|
12
12
|
var onClick = props.onClick, banner = props.banner, dataSession = props.dataSession, redirectPath = props.redirectPath, router = props.router, logo = props.logo;
|
|
13
13
|
var schoolLogo = getEnv('NEXT_PUBLIC_ENV_LOGIN_LOGO', process.env.NEXT_PUBLIC_ENV_LOGIN_LOGO);
|
|
14
|
+
// const publicUrl = getEnv('NEXT_PUBLIC_API_GATEWAY', process.env.NEXT_PUBLIC_API_GATEWAY)
|
|
14
15
|
var _a = useState(false), loading = _a[0], setLoading = _a[1];
|
|
15
16
|
var _b = useState(false), error = _b[0], setError = _b[1];
|
|
16
|
-
var sessionCookie = PHXFuncGetCookieSession();
|
|
17
|
+
var sessionCookie = useRef(PHXFuncGetCookieSession());
|
|
17
18
|
var handlerOnClick = function () {
|
|
18
19
|
setLoading(true);
|
|
19
20
|
onClick();
|
|
20
21
|
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
22
|
+
var saveRefreshTokenSso = function (refreshToken) { return __awaiter(void 0, void 0, void 0, function () {
|
|
23
|
+
return __generator(this, function (_a) {
|
|
24
|
+
switch (_a.label) {
|
|
25
|
+
case 0: return [4 /*yield*/, fetch("https://production-api-portalv2.phx-smartschool.com/auth/set-token", {
|
|
26
|
+
headers: {
|
|
27
|
+
'Content-Type': 'application/json'
|
|
28
|
+
},
|
|
29
|
+
method: 'post',
|
|
30
|
+
body: JSON.stringify({
|
|
31
|
+
refreshToken: refreshToken
|
|
32
|
+
}),
|
|
33
|
+
credentials: 'include'
|
|
34
|
+
})];
|
|
35
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}); };
|
|
32
39
|
var handlerSaveCookies = function (session) { return __awaiter(void 0, void 0, void 0, function () {
|
|
33
|
-
var token, userInfo, accessToken;
|
|
40
|
+
var token, userInfo, accessToken, refreshToken;
|
|
34
41
|
var _a;
|
|
35
42
|
return __generator(this, function (_b) {
|
|
36
43
|
switch (_b.label) {
|
|
37
44
|
case 0:
|
|
38
45
|
token = session.data.token;
|
|
39
|
-
userInfo = token.userInfo, accessToken = token.token;
|
|
40
|
-
if (!(userInfo && ((_a = userInfo === null || userInfo === void 0 ? void 0 : userInfo.user_roles) === null || _a === void 0 ? void 0 : _a[0].role.role_code))) return [3 /*break*/,
|
|
46
|
+
userInfo = token.userInfo, accessToken = token.token, refreshToken = token.refreshToken;
|
|
47
|
+
if (!(userInfo && ((_a = userInfo === null || userInfo === void 0 ? void 0 : userInfo.user_roles) === null || _a === void 0 ? void 0 : _a[0].role.role_code))) return [3 /*break*/, 3];
|
|
41
48
|
// ghi nhớ tài khoản
|
|
42
49
|
saveCookiesClient({ value: __assign(__assign({}, sessionCookie), { user_info: userInfo, access_token: accessToken }) });
|
|
43
50
|
// save refresh token after login sso success
|
|
44
|
-
|
|
45
|
-
return [4 /*yield*/, dataSession.update({ name: null })];
|
|
51
|
+
return [4 /*yield*/, saveRefreshTokenSso(refreshToken)];
|
|
46
52
|
case 1:
|
|
47
53
|
// save refresh token after login sso success
|
|
48
|
-
// await saveRefreshTokenSso(refreshToken)
|
|
49
54
|
_b.sent();
|
|
50
|
-
|
|
51
|
-
return [3 /*break*/, 3];
|
|
55
|
+
return [4 /*yield*/, dataSession.update({ name: null })];
|
|
52
56
|
case 2:
|
|
57
|
+
_b.sent();
|
|
58
|
+
router === null || router === void 0 ? void 0 : router.push(redirectPath);
|
|
59
|
+
return [3 /*break*/, 4];
|
|
60
|
+
case 3:
|
|
53
61
|
setError(true);
|
|
54
62
|
setLoading(false);
|
|
55
|
-
_b.label =
|
|
56
|
-
case
|
|
63
|
+
_b.label = 4;
|
|
64
|
+
case 4: return [2 /*return*/];
|
|
57
65
|
}
|
|
58
66
|
});
|
|
59
67
|
}); };
|
|
60
68
|
var handlerCheckLogin = function () {
|
|
61
|
-
var _a, _b;
|
|
62
|
-
if (!sessionCookie || !(sessionCookie === null ||
|
|
63
|
-
if (dataSession.status === AUTHENTICATED && ((
|
|
69
|
+
var _a, _b, _c;
|
|
70
|
+
if (!sessionCookie.current || !((_a = sessionCookie.current) === null || _a === void 0 ? void 0 : _a.access_token)) {
|
|
71
|
+
if (dataSession.status === AUTHENTICATED && ((_c = (_b = dataSession === null || dataSession === void 0 ? void 0 : dataSession.data) === null || _b === void 0 ? void 0 : _b.session.user) === null || _c === void 0 ? void 0 : _c.name)) {
|
|
64
72
|
setLoading(true);
|
|
65
73
|
handlerSaveCookies(dataSession);
|
|
66
74
|
}
|
|
@@ -72,7 +80,7 @@ export var PHXLoginSsoV3 = function (props) {
|
|
|
72
80
|
}
|
|
73
81
|
}
|
|
74
82
|
else {
|
|
75
|
-
router === null || router === void 0 ? void 0 : router.push(
|
|
83
|
+
router === null || router === void 0 ? void 0 : router.push(redirectPath);
|
|
76
84
|
}
|
|
77
85
|
};
|
|
78
86
|
useEffect(function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login-sso-v3.js","sourceRoot":"","sources":["../../../../src/components/LoginSsoV3/login-sso-v3.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AACZ,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"login-sso-v3.js","sourceRoot":"","sources":["../../../../src/components/LoginSsoV3/login-sso-v3.tsx"],"names":[],"mappings":"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"}
|