phx-react 1.3.895 → 1.3.896
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/cjs/components/Func/axiosInstance.d.ts +2 -0
- package/dist/cjs/components/Func/axiosInstance.js +126 -0
- package/dist/cjs/components/Func/axiosInstance.js.map +1 -0
- package/dist/cjs/components/Func/clientMutationDataCenterV3.js +3 -12
- package/dist/cjs/components/Func/clientMutationDataCenterV3.js.map +1 -1
- package/dist/cjs/components/Func/clientMutationV3.js +3 -12
- package/dist/cjs/components/Func/clientMutationV3.js.map +1 -1
- package/dist/cjs/components/Func/clientQueryDataCenterV3.js +3 -12
- package/dist/cjs/components/Func/clientQueryDataCenterV3.js.map +1 -1
- package/dist/cjs/components/Func/clientQueryV3.d.ts +1 -1
- package/dist/cjs/components/Func/clientQueryV3.js +4 -13
- package/dist/cjs/components/Func/clientQueryV3.js.map +1 -1
- package/dist/cjs/components/Func/getActionPermission.d.ts +0 -4
- package/dist/cjs/components/Func/getActionPermission.js +5 -37
- package/dist/cjs/components/Func/getActionPermission.js.map +1 -1
- package/dist/cjs/components/Func/getCookieSession.d.ts +1 -0
- package/dist/cjs/components/Func/getCookieSession.js +14 -0
- package/dist/cjs/components/Func/getCookieSession.js.map +1 -0
- package/dist/cjs/components/Func/getLoginInfo.d.ts +24 -1
- package/dist/cjs/components/Func/getLoginInfo.js +15 -1
- package/dist/cjs/components/Func/getLoginInfo.js.map +1 -1
- package/dist/cjs/components/Func/saveCookiesClient.d.ts +1 -1
- package/dist/cjs/components/Func/saveCookiesClient.js +6 -11
- package/dist/cjs/components/Func/saveCookiesClient.js.map +1 -1
- package/dist/cjs/components/Func/serverQuery.js +3 -4
- package/dist/cjs/components/Func/serverQuery.js.map +1 -1
- package/dist/cjs/components/LoginSsoV3/login-sso-v3.js +12 -12
- package/dist/cjs/components/LoginSsoV3/login-sso-v3.js.map +1 -1
- package/dist/cjs/components/LoginV3/LoginV3.js +18 -23
- package/dist/cjs/components/LoginV3/LoginV3.js.map +1 -1
- package/dist/cjs/components/MainWrapV3/MainWrapV3.js +154 -131
- package/dist/cjs/components/MainWrapV3/MainWrapV3.js.map +1 -1
- package/dist/cjs/components/PagePermissionV3/PagePermissionV3.js +4 -6
- package/dist/cjs/components/PagePermissionV3/PagePermissionV3.js.map +1 -1
- package/dist/cjs/components/TableV3/TableV3.js +4 -23
- package/dist/cjs/components/TableV3/TableV3.js.map +1 -1
- package/dist/cjs/helpers/helpers.d.ts +2 -0
- package/dist/cjs/helpers/helpers.js +38 -0
- package/dist/cjs/helpers/helpers.js.map +1 -0
- package/dist/cjs/query/index.d.ts +1 -1
- package/dist/cjs/query/index.js +2 -2
- package/dist/cjs/query/index.js.map +1 -1
- package/dist/cjs/utils/constants.d.ts +6 -5
- package/dist/cjs/utils/constants.js +7 -6
- package/dist/cjs/utils/constants.js.map +1 -1
- package/dist/esm/components/Func/axiosInstance.d.ts +2 -0
- package/dist/esm/components/Func/axiosInstance.js +124 -0
- package/dist/esm/components/Func/axiosInstance.js.map +1 -0
- package/dist/esm/components/Func/clientMutationDataCenterV3.js +4 -13
- package/dist/esm/components/Func/clientMutationDataCenterV3.js.map +1 -1
- package/dist/esm/components/Func/clientMutationV3.js +4 -13
- package/dist/esm/components/Func/clientMutationV3.js.map +1 -1
- package/dist/esm/components/Func/clientQueryDataCenterV3.js +4 -13
- package/dist/esm/components/Func/clientQueryDataCenterV3.js.map +1 -1
- package/dist/esm/components/Func/clientQueryV3.d.ts +1 -1
- package/dist/esm/components/Func/clientQueryV3.js +5 -14
- package/dist/esm/components/Func/clientQueryV3.js.map +1 -1
- package/dist/esm/components/Func/getActionPermission.d.ts +0 -4
- package/dist/esm/components/Func/getActionPermission.js +5 -36
- package/dist/esm/components/Func/getActionPermission.js.map +1 -1
- package/dist/esm/components/Func/getCookieSession.d.ts +1 -0
- package/dist/esm/components/Func/getCookieSession.js +10 -0
- package/dist/esm/components/Func/getCookieSession.js.map +1 -0
- package/dist/esm/components/Func/getLoginInfo.d.ts +24 -1
- package/dist/esm/components/Func/getLoginInfo.js +15 -2
- package/dist/esm/components/Func/getLoginInfo.js.map +1 -1
- package/dist/esm/components/Func/saveCookiesClient.d.ts +1 -1
- package/dist/esm/components/Func/saveCookiesClient.js +6 -12
- package/dist/esm/components/Func/saveCookiesClient.js.map +1 -1
- package/dist/esm/components/Func/serverQuery.js +4 -5
- package/dist/esm/components/Func/serverQuery.js.map +1 -1
- package/dist/esm/components/LoginSsoV3/login-sso-v3.js +13 -13
- package/dist/esm/components/LoginSsoV3/login-sso-v3.js.map +1 -1
- package/dist/esm/components/LoginV3/LoginV3.js +19 -24
- package/dist/esm/components/LoginV3/LoginV3.js.map +1 -1
- package/dist/esm/components/MainWrapV3/MainWrapV3.js +156 -133
- package/dist/esm/components/MainWrapV3/MainWrapV3.js.map +1 -1
- package/dist/esm/components/PagePermissionV3/PagePermissionV3.js +4 -6
- package/dist/esm/components/PagePermissionV3/PagePermissionV3.js.map +1 -1
- package/dist/esm/components/TableV3/TableV3.js +5 -26
- package/dist/esm/components/TableV3/TableV3.js.map +1 -1
- package/dist/esm/helpers/helpers.d.ts +2 -0
- package/dist/esm/helpers/helpers.js +32 -0
- package/dist/esm/helpers/helpers.js.map +1 -0
- package/dist/esm/query/index.d.ts +1 -1
- package/dist/esm/query/index.js +1 -1
- package/dist/esm/query/index.js.map +1 -1
- package/dist/esm/utils/constants.d.ts +6 -5
- package/dist/esm/utils/constants.js +6 -5
- package/dist/esm/utils/constants.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login-sso-v3.js","sourceRoot":"","sources":["../../../../src/components/LoginSsoV3/login-sso-v3.tsx"],"names":[],"mappings":";;;;AAAA,qDAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"login-sso-v3.js","sourceRoot":"","sources":["../../../../src/components/LoginSsoV3/login-sso-v3.tsx"],"names":[],"mappings":"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"}
|
|
@@ -12,24 +12,24 @@ var read_env_config_1 = require("../../read-env-config");
|
|
|
12
12
|
var saveCookiesClient_1 = tslib_1.__importDefault(require("../Func/saveCookiesClient"));
|
|
13
13
|
var Checkbox_1 = require("../Checkbox");
|
|
14
14
|
var login_style_1 = tslib_1.__importDefault(require("./login-style"));
|
|
15
|
-
var
|
|
15
|
+
var getCookieSession_1 = tslib_1.__importDefault(require("../Func/getCookieSession"));
|
|
16
|
+
var helpers_1 = require("../../helpers/helpers");
|
|
16
17
|
var js_cookie_1 = tslib_1.__importDefault(require("js-cookie"));
|
|
17
18
|
var PHXLoginV3 = function (props) {
|
|
18
19
|
var logo = props.logo, banner = props.banner, router = props.router, redirectPath = props.redirectPath, buttonColor = props.buttonColor;
|
|
19
20
|
var _a = (0, react_1.useState)(true), remember = _a[0], setRemember = _a[1];
|
|
20
21
|
var _b = (0, react_1.useState)(false), loginError = _b[0], setLoginError = _b[1];
|
|
21
22
|
var _c = (0, react_1.useState)(false), loading = _c[0], setLoading = _c[1];
|
|
22
|
-
var authenCookies = (0, getLoginInfo_1["default"])();
|
|
23
23
|
var schoolLogo = (0, read_env_config_1.getEnv)('NEXT_PUBLIC_ENV_LOGIN_LOGO', process.env.NEXT_PUBLIC_ENV_LOGIN_LOGO);
|
|
24
24
|
var _d = (0, react_hook_form_1.useForm)(), handleSubmit = _d.handleSubmit, register = _d.register, errors = _d.formState.errors;
|
|
25
|
-
|
|
26
|
-
var
|
|
25
|
+
// const uri = getEnv('NEXT_PUBLIC_API_GATEWAY', process.env.NEXT_PUBLIC_API_GATEWAY)
|
|
26
|
+
var handleLogin = function (email, password) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
27
27
|
var response, error_1;
|
|
28
28
|
return tslib_1.__generator(this, function (_a) {
|
|
29
29
|
switch (_a.label) {
|
|
30
30
|
case 0:
|
|
31
31
|
_a.trys.push([0, 3, , 4]);
|
|
32
|
-
return [4 /*yield*/, fetch("
|
|
32
|
+
return [4 /*yield*/, fetch("http://localhost:8100/authen/login", {
|
|
33
33
|
headers: {
|
|
34
34
|
'Content-Type': 'application/json'
|
|
35
35
|
},
|
|
@@ -37,7 +37,8 @@ var PHXLoginV3 = function (props) {
|
|
|
37
37
|
body: JSON.stringify({
|
|
38
38
|
email: email,
|
|
39
39
|
password: password
|
|
40
|
-
})
|
|
40
|
+
}),
|
|
41
|
+
credentials: 'include'
|
|
41
42
|
})];
|
|
42
43
|
case 1:
|
|
43
44
|
response = _a.sent();
|
|
@@ -54,33 +55,28 @@ var PHXLoginV3 = function (props) {
|
|
|
54
55
|
});
|
|
55
56
|
}); };
|
|
56
57
|
var onSubmitForm = function (values) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
57
|
-
var email, password,
|
|
58
|
+
var email, password, response, userInfo, token;
|
|
58
59
|
return tslib_1.__generator(this, function (_a) {
|
|
59
60
|
switch (_a.label) {
|
|
60
61
|
case 0:
|
|
61
62
|
email = values.email, password = values.password;
|
|
62
63
|
setLoading(true);
|
|
63
|
-
return [4 /*yield*/,
|
|
64
|
+
return [4 /*yield*/, handleLogin(email, password)
|
|
64
65
|
// sai thông tin đăng nhập
|
|
65
66
|
];
|
|
66
67
|
case 1:
|
|
67
|
-
|
|
68
|
+
response = _a.sent();
|
|
68
69
|
// sai thông tin đăng nhập
|
|
69
|
-
if (!
|
|
70
|
+
if (!response || (response === null || response === void 0 ? void 0 : response.message)) {
|
|
70
71
|
console.log('login lỗi');
|
|
71
72
|
setLoginError(true);
|
|
72
73
|
setLoading(false);
|
|
73
74
|
return [2 /*return*/];
|
|
74
75
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
_a.sent();
|
|
80
|
-
userInfo = tokenInfo.userInfo;
|
|
81
|
-
if (userInfo && userInfo.roles[0].role_code) {
|
|
82
|
-
userObjectString = JSON.stringify(userInfo);
|
|
83
|
-
localStorage.setItem(constants_1.isLoggedCookie, userObjectString);
|
|
76
|
+
userInfo = response.userInfo, token = response.token;
|
|
77
|
+
(0, saveCookiesClient_1["default"])(constants_1.COOKIE_USER_INFO, (0, helpers_1.encryptDataSync)(userInfo), true);
|
|
78
|
+
(0, saveCookiesClient_1["default"])(constants_1.COOKIE_ACCESS_TOKEN, token, true);
|
|
79
|
+
if (userInfo && userInfo.user_roles[0].role.role_code) {
|
|
84
80
|
setLoading(false);
|
|
85
81
|
setLoginError(false);
|
|
86
82
|
router.push(redirectPath);
|
|
@@ -93,14 +89,13 @@ var PHXLoginV3 = function (props) {
|
|
|
93
89
|
}
|
|
94
90
|
});
|
|
95
91
|
}); };
|
|
96
|
-
var
|
|
92
|
+
var userSessionInfo = (0, getCookieSession_1["default"])();
|
|
97
93
|
// nếu đã có token login thì push về dasboard
|
|
98
94
|
(0, react_1.useEffect)(function () {
|
|
99
|
-
if (
|
|
95
|
+
if (userSessionInfo && typeof window !== 'undefined' && js_cookie_1["default"].get(constants_1.COOKIE_ACCESS_TOKEN)) {
|
|
100
96
|
window.location.replace(redirectPath);
|
|
101
97
|
}
|
|
102
|
-
|
|
103
|
-
}, [authenCookies, authenToken]);
|
|
98
|
+
}, [userSessionInfo]);
|
|
104
99
|
return (react_1["default"].createElement(react_1["default"].Fragment, null,
|
|
105
100
|
react_1["default"].createElement(login_style_1["default"], { buttonColor: buttonColor }),
|
|
106
101
|
react_1["default"].createElement("main", { className: 'flex min-h-full' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginV3.js","sourceRoot":"","sources":["../../../../src/components/LoginV3/LoginV3.tsx"],"names":[],"mappings":";;;;AAAA,qDAAkD;AAClD,mDAAyC;AACzC,kCAAmC;AACnC,oCAAqC;AACrC,oCAAqC;AACrC,
|
|
1
|
+
{"version":3,"file":"LoginV3.js","sourceRoot":"","sources":["../../../../src/components/LoginV3/LoginV3.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ exports.__esModule = true;
|
|
|
3
3
|
exports.PHXMainWrapV3 = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var free_solid_svg_icons_1 = require("@fortawesome/free-solid-svg-icons");
|
|
6
|
-
var react_fontawesome_1 = require("@fortawesome/react-fontawesome");
|
|
7
6
|
var react_1 = require("@headlessui/react");
|
|
8
7
|
var outline_1 = require("@heroicons/react/24/outline");
|
|
9
8
|
var react_2 = tslib_1.__importStar(require("react"));
|
|
@@ -16,19 +15,21 @@ var fontawesome_svg_core_1 = require("@fortawesome/fontawesome-svg-core");
|
|
|
16
15
|
var search_bar_1 = tslib_1.__importDefault(require("./search/search-bar"));
|
|
17
16
|
var Banner_1 = require("../Banner");
|
|
18
17
|
var solid_2 = require("@heroicons/react/24/solid");
|
|
19
|
-
var getLoginInfo_1 = tslib_1.__importDefault(require("../Func/getLoginInfo"));
|
|
20
18
|
var clientQueryV3_1 = tslib_1.__importDefault(require("../Func/clientQueryV3"));
|
|
21
19
|
var query_1 = require("../../query");
|
|
22
20
|
var Card_1 = require("../Card");
|
|
23
21
|
var getEnvPublic_1 = tslib_1.__importDefault(require("../Func/getEnvPublic"));
|
|
24
22
|
var saveCookiesClient_1 = tslib_1.__importDefault(require("../Func/saveCookiesClient"));
|
|
25
|
-
var getActionPermission_1 = require("../Func/getActionPermission");
|
|
26
23
|
var LoadingProvider_1 = require("../LoadingProvider");
|
|
27
24
|
var appearance_styled_1 = tslib_1.__importDefault(require("./appearance/appearance-styled"));
|
|
28
25
|
var nav_mobile_1 = tslib_1.__importDefault(require("./navigator/nav-mobile"));
|
|
29
26
|
var sub_menu_style_1 = require("./style/sub-menu-style");
|
|
30
27
|
var Icon_1 = require("./assets/Icon");
|
|
31
28
|
var image_1 = tslib_1.__importDefault(require("next/image"));
|
|
29
|
+
var axios_1 = tslib_1.__importDefault(require("axios"));
|
|
30
|
+
var read_env_config_1 = require("../../read-env-config");
|
|
31
|
+
var helpers_1 = require("../../helpers/helpers");
|
|
32
|
+
var getLoginInfo_1 = tslib_1.__importDefault(require("../Func/getLoginInfo"));
|
|
32
33
|
fontawesome_svg_core_1.library.add(free_solid_svg_icons_1.fas);
|
|
33
34
|
function classNames() {
|
|
34
35
|
var classes = [];
|
|
@@ -60,6 +61,7 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
60
61
|
var _0 = (0, react_2.useState)({}), configLayout = _0[0], setConfigLayout = _0[1];
|
|
61
62
|
var _1 = (0, react_2.useState)(true), isLoading = _1[0], setIsLoading = _1[1];
|
|
62
63
|
var _2 = (0, react_2.useState)(true), isLoadingPermission = _2[0], setIsLoadingPermission = _2[1];
|
|
64
|
+
var uri = (0, read_env_config_1.getEnv)('NEXT_PUBLIC_API_GATEWAY', process.env.NEXT_PUBLIC_API_GATEWAY);
|
|
63
65
|
var locationPathname = typeof window !== 'undefined' ? window.location.pathname : '';
|
|
64
66
|
var pathArr = locationPathname.split('/');
|
|
65
67
|
var pathNameWithBasePath = "/".concat(pathArr[1]).concat(pathName);
|
|
@@ -73,8 +75,9 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
73
75
|
path: '',
|
|
74
76
|
height: logoHeight
|
|
75
77
|
}), logo = _3[0], setLogo = _3[1];
|
|
76
|
-
var
|
|
77
|
-
var
|
|
78
|
+
var userSessionInfo = (0, getLoginInfo_1["default"])();
|
|
79
|
+
var schoolInfoId = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.school_id;
|
|
80
|
+
var userId = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.id;
|
|
78
81
|
function compareObjects(settingQuery, settingCookies) {
|
|
79
82
|
var keysSettingQuery = Object.keys(settingQuery);
|
|
80
83
|
if (keysSettingQuery.length !== Object.keys(settingCookies).length) {
|
|
@@ -91,9 +94,6 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
91
94
|
}
|
|
92
95
|
return true;
|
|
93
96
|
}
|
|
94
|
-
var schoolInfo = (0, getLoginInfo_1["default"])();
|
|
95
|
-
var schoolInfoId = schoolInfo === null || schoolInfo === void 0 ? void 0 : schoolInfo.school_id;
|
|
96
|
-
var userId = schoolInfo === null || schoolInfo === void 0 ? void 0 : schoolInfo.id;
|
|
97
97
|
// Lấy code phân quyền trong menu từ path hiện tại
|
|
98
98
|
function getCodesByPath(dataMenu, currentPath) {
|
|
99
99
|
var lastMatchingCode = null;
|
|
@@ -121,58 +121,113 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
121
121
|
}
|
|
122
122
|
// code phân quyền path hiện tại
|
|
123
123
|
var currentCode = getCodesByPath(navigation, locationPathname);
|
|
124
|
-
var
|
|
125
|
-
var
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
124
|
+
var checkIsQuitJob = function (_a) {
|
|
125
|
+
var profileStaff = _a.profileStaff, profileTeacher = _a.profileTeacher;
|
|
126
|
+
try {
|
|
127
|
+
// xóa cookies với những tài khoản giáo viên, nhân viên đã nghỉ việc
|
|
128
|
+
var staffIsQuitJob = profileStaff === null || profileStaff === void 0 ? void 0 : profileStaff.is_quit_job;
|
|
129
|
+
var teacherIsQuitJob = profileTeacher === null || profileTeacher === void 0 ? void 0 : profileTeacher.is_quit_job;
|
|
130
|
+
if (staffIsQuitJob || teacherIsQuitJob) {
|
|
131
|
+
console.log('Phiên đăng nhập đã hết hạn');
|
|
132
|
+
Object.keys(js_cookie_1["default"].get()).forEach(function (cookieName) {
|
|
133
|
+
js_cookie_1["default"].remove(cookieName);
|
|
134
|
+
});
|
|
135
|
+
requireLoginValidation();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
catch (error) {
|
|
139
|
+
console.log(error);
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
var fetchDataPer = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
143
|
+
var res, userPermissions, rolePermissions, allPermissions, permissionCodes, routePermissions, actionPermissions, actionPermissionMap, uniqueRoutePermissions, error_1;
|
|
144
|
+
var _a, _b, _c, _d;
|
|
145
|
+
return tslib_1.__generator(this, function (_e) {
|
|
146
|
+
switch (_e.label) {
|
|
129
147
|
case 0:
|
|
130
|
-
|
|
148
|
+
_e.trys.push([0, 2, 3, 4]);
|
|
131
149
|
return [4 /*yield*/, (0, clientQueryV3_1["default"])({
|
|
132
|
-
query: query_1.
|
|
150
|
+
query: query_1.GET_PERMISSION_DETAIL_USER_V3,
|
|
151
|
+
variables: { id: userId, school_id: schoolInfoId }
|
|
152
|
+
})];
|
|
153
|
+
case 1:
|
|
154
|
+
res = _e.sent();
|
|
155
|
+
userPermissions = (_b = (_a = res.data) === null || _a === void 0 ? void 0 : _a.permission_user) !== null && _b !== void 0 ? _b : [];
|
|
156
|
+
rolePermissions = (_d = (_c = res.data) === null || _c === void 0 ? void 0 : _c.permission_role) !== null && _d !== void 0 ? _d : [];
|
|
157
|
+
allPermissions = tslib_1.__spreadArray(tslib_1.__spreadArray([], userPermissions, true), rolePermissions, true);
|
|
158
|
+
permissionCodes = allPermissions.map(function (p) { return p.permission; });
|
|
159
|
+
routePermissions = permissionCodes.filter(function (p) { return !p.is_action; }).map(function (p) { return p.code; });
|
|
160
|
+
actionPermissions = permissionCodes.filter(function (p) { return p.is_action; }).map(function (p) { return p.code; });
|
|
161
|
+
actionPermissionMap = Object.fromEntries(actionPermissions.map(function (code) { return [code, true]; }));
|
|
162
|
+
// Mã hoá và lưu vào cookie
|
|
163
|
+
(0, saveCookiesClient_1["default"])(constants_1.COOKIE_ACTION_PERMISSION, (0, helpers_1.encryptDataSync)(actionPermissionMap), true);
|
|
164
|
+
uniqueRoutePermissions = Array.from(new Set(routePermissions));
|
|
165
|
+
setPerCode(uniqueRoutePermissions);
|
|
166
|
+
return [3 /*break*/, 4];
|
|
167
|
+
case 2:
|
|
168
|
+
error_1 = _e.sent();
|
|
169
|
+
console.error('Error fetching school data:', error_1);
|
|
170
|
+
return [3 /*break*/, 4];
|
|
171
|
+
case 3:
|
|
172
|
+
setIsLoadingPermission(false);
|
|
173
|
+
return [7 /*endfinally*/];
|
|
174
|
+
case 4: return [2 /*return*/];
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
}); };
|
|
178
|
+
var getProfileByUser = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
179
|
+
var response, profileUser, profile_staff, profile_teacher, user_roles, allRoleCodes, allRoleCodesLength, error_2;
|
|
180
|
+
return tslib_1.__generator(this, function (_a) {
|
|
181
|
+
switch (_a.label) {
|
|
182
|
+
case 0:
|
|
183
|
+
if (!userSessionInfo)
|
|
184
|
+
return [2 /*return*/];
|
|
185
|
+
_a.label = 1;
|
|
186
|
+
case 1:
|
|
187
|
+
_a.trys.push([1, 3, , 4]);
|
|
188
|
+
return [4 /*yield*/, (0, clientQueryV3_1["default"])({
|
|
189
|
+
query: query_1.QUERY_GET_PROFILE_USER,
|
|
133
190
|
variables: {
|
|
134
|
-
user_id: userId
|
|
135
|
-
school_id: schoolInfoId
|
|
191
|
+
user_id: userId
|
|
136
192
|
}
|
|
137
193
|
})];
|
|
138
|
-
case 1:
|
|
139
|
-
response = _g.sent();
|
|
140
|
-
profileStaff = (_c = (_b = (_a = response.data) === null || _a === void 0 ? void 0 : _a.profile_staff) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.is_quit_job;
|
|
141
|
-
profileTeacher = (_f = (_e = (_d = response.data) === null || _d === void 0 ? void 0 : _d.profile_teacher) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.is_quit_job;
|
|
142
|
-
if (profileStaff || profileTeacher) {
|
|
143
|
-
console.log('Phiên đăng nhập đã hết hạn');
|
|
144
|
-
Object.keys(js_cookie_1["default"].get()).forEach(function (cookieName) {
|
|
145
|
-
js_cookie_1["default"].remove(cookieName);
|
|
146
|
-
});
|
|
147
|
-
localStorage.removeItem(constants_1.isLoggedCookie);
|
|
148
|
-
}
|
|
149
|
-
return [3 /*break*/, 3];
|
|
150
194
|
case 2:
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
195
|
+
response = _a.sent();
|
|
196
|
+
profileUser = response.data.users_by_pk;
|
|
197
|
+
profile_staff = profileUser.profile_staff, profile_teacher = profileUser.profile_teacher, user_roles = profileUser.user_roles;
|
|
198
|
+
// check user is quit job
|
|
199
|
+
checkIsQuitJob({ profileStaff: profile_staff, profileTeacher: profile_teacher });
|
|
200
|
+
allRoleCodes = user_roles.map(function (userRole) { var _a; return (_a = userRole === null || userRole === void 0 ? void 0 : userRole.role) === null || _a === void 0 ? void 0 : _a.role_code; }) || [];
|
|
201
|
+
// renew list role in cookie
|
|
202
|
+
userSessionInfo.user_roles = user_roles;
|
|
203
|
+
(0, saveCookiesClient_1["default"])(constants_1.COOKIE_USER_INFO, (0, helpers_1.encryptDataSync)(userSessionInfo), true);
|
|
204
|
+
setRoleCode(allRoleCodes);
|
|
205
|
+
allRoleCodesLength = allRoleCodes === null || allRoleCodes === void 0 ? void 0 : allRoleCodes.length;
|
|
206
|
+
if (allRoleCodes && allRoleCodesLength > 0) {
|
|
207
|
+
fetchDataPer()["catch"](console.error);
|
|
208
|
+
}
|
|
209
|
+
return [3 /*break*/, 4];
|
|
210
|
+
case 3:
|
|
211
|
+
error_2 = _a.sent();
|
|
212
|
+
console.log(error_2);
|
|
213
|
+
return [3 /*break*/, 4];
|
|
214
|
+
case 4: return [2 /*return*/];
|
|
155
215
|
}
|
|
156
216
|
});
|
|
157
217
|
}); };
|
|
158
218
|
(0, react_2.useEffect)(function () {
|
|
159
|
-
|
|
160
|
-
js_cookie_1["default"].remove(constants_1.isLoggedCookie);
|
|
219
|
+
getProfileByUser();
|
|
161
220
|
}, []);
|
|
162
221
|
(0, react_2.useEffect)(function () {
|
|
163
|
-
|
|
164
|
-
if (!cookie || !authen) {
|
|
222
|
+
if (!userSessionInfo) {
|
|
165
223
|
// Require login if production mode
|
|
166
224
|
requireLoginValidation();
|
|
167
225
|
}
|
|
168
226
|
else {
|
|
169
|
-
var
|
|
170
|
-
|
|
171
|
-
var id_1 = data.id, _b = data.school, group_id_1 = _b.school_name.group_id, school_name_id_1 = _b.school_name_id, school_id_1 = data.school_id;
|
|
172
|
-
setRoleCode(allRoleCodes);
|
|
173
|
-
setSchoolId(data === null || data === void 0 ? void 0 : data.school_id);
|
|
227
|
+
var id_1 = userSessionInfo.id, _a = userSessionInfo.school, group_id_1 = _a.school_name.group_id, school_name_id_1 = _a.school_name_id, school_id = userSessionInfo.school_id;
|
|
228
|
+
setSchoolId(school_id);
|
|
174
229
|
var fetchData = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
175
|
-
var res,
|
|
230
|
+
var res, data, dataLength, settingFetchData, cleanedJsonString, jsonObjectSetting, getSeting, dataCompare, error_3;
|
|
176
231
|
var _a, _b, _c, _d;
|
|
177
232
|
return tslib_1.__generator(this, function (_e) {
|
|
178
233
|
switch (_e.label) {
|
|
@@ -189,22 +244,22 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
189
244
|
case 2:
|
|
190
245
|
res = _e.sent();
|
|
191
246
|
setDataSchool(res === null || res === void 0 ? void 0 : res.data);
|
|
192
|
-
|
|
193
|
-
dataLength =
|
|
194
|
-
if (
|
|
247
|
+
data = (_b = (_a = res === null || res === void 0 ? void 0 : res.data) === null || _a === void 0 ? void 0 : _a.school_name[0]) === null || _b === void 0 ? void 0 : _b.schools;
|
|
248
|
+
dataLength = data.length;
|
|
249
|
+
if (data && dataLength > 0) {
|
|
195
250
|
setLoadingSchool(false);
|
|
196
251
|
}
|
|
197
|
-
setInfoSchool(
|
|
252
|
+
setInfoSchool(data);
|
|
198
253
|
setIsLoading(false);
|
|
199
254
|
settingFetchData = (_d = (_c = res === null || res === void 0 ? void 0 : res.data) === null || _c === void 0 ? void 0 : _c.setting_site[0]) === null || _d === void 0 ? void 0 : _d.value_setting;
|
|
200
255
|
if (settingFetchData) {
|
|
201
256
|
cleanedJsonString = settingFetchData.replace(/^"(.*)"$/, '$1');
|
|
202
257
|
jsonObjectSetting = JSON.parse(cleanedJsonString);
|
|
203
258
|
setConfigLayout(jsonObjectSetting);
|
|
204
|
-
getSeting = js_cookie_1["default"].get(constants_1.
|
|
259
|
+
getSeting = js_cookie_1["default"].get(constants_1.COOKIE_SETTING_SITE);
|
|
205
260
|
// Nếu chưa có cookeis
|
|
206
261
|
if (!getSeting) {
|
|
207
|
-
js_cookie_1["default"].set(constants_1.
|
|
262
|
+
js_cookie_1["default"].set(constants_1.COOKIE_SETTING_SITE, JSON.stringify(jsonObjectSetting));
|
|
208
263
|
return [2 /*return*/];
|
|
209
264
|
}
|
|
210
265
|
dataCompare = compareObjects(jsonObjectSetting, JSON.parse(getSeting));
|
|
@@ -213,13 +268,13 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
213
268
|
return [2 /*return*/];
|
|
214
269
|
}
|
|
215
270
|
console.log('log debug database !== cookies');
|
|
216
|
-
js_cookie_1["default"].set(constants_1.
|
|
271
|
+
js_cookie_1["default"].set(constants_1.COOKIE_SETTING_SITE, JSON.stringify(jsonObjectSetting));
|
|
217
272
|
}
|
|
218
273
|
return [3 /*break*/, 4];
|
|
219
274
|
case 3:
|
|
220
|
-
|
|
275
|
+
error_3 = _e.sent();
|
|
221
276
|
setIsLoading(false);
|
|
222
|
-
console.error('Error fetching school data:',
|
|
277
|
+
console.error('Error fetching school data:', error_3);
|
|
223
278
|
return [3 /*break*/, 4];
|
|
224
279
|
case 4: return [2 /*return*/];
|
|
225
280
|
}
|
|
@@ -229,49 +284,8 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
229
284
|
console.log(err);
|
|
230
285
|
setIsLoading(false);
|
|
231
286
|
});
|
|
232
|
-
var allRoleCodesLength = allRoleCodes === null || allRoleCodes === void 0 ? void 0 : allRoleCodes.length;
|
|
233
|
-
if (allRoleCodes && allRoleCodesLength > 0) {
|
|
234
|
-
var fetchDataPer = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
235
|
-
var res, userPermission, rolePermission, dataPermissionUser, permissionRouter, permissionAction, objPermissionAction, encryptedData, uniqueValues, error_3;
|
|
236
|
-
var _a, _b, _c, _d;
|
|
237
|
-
return tslib_1.__generator(this, function (_e) {
|
|
238
|
-
switch (_e.label) {
|
|
239
|
-
case 0:
|
|
240
|
-
_e.trys.push([0, 3, 4, 5]);
|
|
241
|
-
return [4 /*yield*/, (0, clientQueryV3_1["default"])({
|
|
242
|
-
query: query_1.GET_PERMISSION_DETAIL_USER_V3,
|
|
243
|
-
variables: { id: id_1, school_id: school_id_1 }
|
|
244
|
-
})];
|
|
245
|
-
case 1:
|
|
246
|
-
res = _e.sent();
|
|
247
|
-
userPermission = (_a = res === null || res === void 0 ? void 0 : res.data) === null || _a === void 0 ? void 0 : _a.permission_user;
|
|
248
|
-
rolePermission = (_b = res === null || res === void 0 ? void 0 : res.data) === null || _b === void 0 ? void 0 : _b.permission_role;
|
|
249
|
-
dataPermissionUser = tslib_1.__spreadArray(tslib_1.__spreadArray([], userPermission, true), rolePermission, true);
|
|
250
|
-
permissionRouter = (_c = dataPermissionUser === null || dataPermissionUser === void 0 ? void 0 : dataPermissionUser.filter(function (value) { var _a; return !((_a = value === null || value === void 0 ? void 0 : value.permission) === null || _a === void 0 ? void 0 : _a.is_action); })) === null || _c === void 0 ? void 0 : _c.map(function (item) { var _a; return (_a = item === null || item === void 0 ? void 0 : item.permission) === null || _a === void 0 ? void 0 : _a.code; });
|
|
251
|
-
permissionAction = (_d = dataPermissionUser === null || dataPermissionUser === void 0 ? void 0 : dataPermissionUser.filter(function (value) { var _a; return (_a = value === null || value === void 0 ? void 0 : value.permission) === null || _a === void 0 ? void 0 : _a.is_action; })) === null || _d === void 0 ? void 0 : _d.map(function (item) { var _a; return (_a = item === null || item === void 0 ? void 0 : item.permission) === null || _a === void 0 ? void 0 : _a.code; });
|
|
252
|
-
objPermissionAction = Object.fromEntries(permissionAction.map(function (key) { return [key, true]; }));
|
|
253
|
-
encryptedData = (0, getActionPermission_1.encryptDataSync)(objPermissionAction);
|
|
254
|
-
return [4 /*yield*/, (0, saveCookiesClient_1["default"])(constants_1.ACTION_PERMISSION, JSON.stringify(encryptedData), true)];
|
|
255
|
-
case 2:
|
|
256
|
-
_e.sent();
|
|
257
|
-
uniqueValues = Array.from(new Set(permissionRouter));
|
|
258
|
-
setPerCode(uniqueValues);
|
|
259
|
-
return [3 /*break*/, 5];
|
|
260
|
-
case 3:
|
|
261
|
-
error_3 = _e.sent();
|
|
262
|
-
console.error('Error fetching school data:', error_3);
|
|
263
|
-
return [3 /*break*/, 5];
|
|
264
|
-
case 4:
|
|
265
|
-
setIsLoadingPermission(false);
|
|
266
|
-
return [7 /*endfinally*/];
|
|
267
|
-
case 5: return [2 /*return*/];
|
|
268
|
-
}
|
|
269
|
-
});
|
|
270
|
-
}); };
|
|
271
|
-
fetchDataPer()["catch"](console.error);
|
|
272
|
-
}
|
|
273
287
|
}
|
|
274
|
-
}, [
|
|
288
|
+
}, [JSON.stringify(userSessionInfo)]);
|
|
275
289
|
(0, react_2.useEffect)(function () {
|
|
276
290
|
// Let load left menu data
|
|
277
291
|
if (loadingMenu) {
|
|
@@ -282,7 +296,8 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
282
296
|
case 0: return [4 /*yield*/, (0, getEnvPublic_1["default"])()];
|
|
283
297
|
case 1:
|
|
284
298
|
envPublic = _a.sent();
|
|
285
|
-
menuUrl = envPublic === null || envPublic === void 0 ? void 0 : envPublic.SCHOOL_MENU
|
|
299
|
+
menuUrl = "".concat(envPublic === null || envPublic === void 0 ? void 0 : envPublic.SCHOOL_MENU, "&time=").concat(new Date().getMilliseconds()) // disable cache call menu
|
|
300
|
+
;
|
|
286
301
|
logoMenuTop = envPublic === null || envPublic === void 0 ? void 0 : envPublic.SCHOOL_TOP_MENU_LOGO;
|
|
287
302
|
if (!menuUrl || !logoMenuTop) {
|
|
288
303
|
console.error('menu or logo not found');
|
|
@@ -515,15 +530,41 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
515
530
|
var pushPath = "".concat(url[0], "//").concat(url[2], "/").concat(path);
|
|
516
531
|
window.location.replace(pushPath);
|
|
517
532
|
};
|
|
518
|
-
var
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
533
|
+
var callApiLogoutToken = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
534
|
+
var error_4;
|
|
535
|
+
return tslib_1.__generator(this, function (_a) {
|
|
536
|
+
switch (_a.label) {
|
|
537
|
+
case 0:
|
|
538
|
+
_a.trys.push([0, 2, , 3]);
|
|
539
|
+
return [4 /*yield*/, axios_1["default"].post("".concat(uri, "/authen/logout-portal"), {}, {
|
|
540
|
+
withCredentials: true
|
|
541
|
+
})];
|
|
542
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
543
|
+
case 2:
|
|
544
|
+
error_4 = _a.sent();
|
|
545
|
+
console.error(error_4);
|
|
546
|
+
return [2 /*return*/];
|
|
547
|
+
case 3: return [2 /*return*/];
|
|
548
|
+
}
|
|
522
549
|
});
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
550
|
+
}); };
|
|
551
|
+
var handleSignOut = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
552
|
+
return tslib_1.__generator(this, function (_a) {
|
|
553
|
+
switch (_a.label) {
|
|
554
|
+
case 0:
|
|
555
|
+
setModalSignOut(false);
|
|
556
|
+
Object.keys(js_cookie_1["default"].get()).forEach(function (cookieName) {
|
|
557
|
+
js_cookie_1["default"].remove(cookieName);
|
|
558
|
+
});
|
|
559
|
+
return [4 /*yield*/, callApiLogoutToken()];
|
|
560
|
+
case 1:
|
|
561
|
+
_a.sent();
|
|
562
|
+
console.log('Đăng xuất tài khoản');
|
|
563
|
+
handleRedirectRouter('login-sso');
|
|
564
|
+
return [2 /*return*/];
|
|
565
|
+
}
|
|
566
|
+
});
|
|
567
|
+
}); };
|
|
527
568
|
var handleProfilePage = function () {
|
|
528
569
|
handleRedirectRouter('profile');
|
|
529
570
|
};
|
|
@@ -543,17 +584,14 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
543
584
|
setSelected(id);
|
|
544
585
|
};
|
|
545
586
|
var handlePrimaryModal = function () {
|
|
546
|
-
if (
|
|
587
|
+
if (userSessionInfo) {
|
|
547
588
|
try {
|
|
548
|
-
var
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
localStorage.setItem(constants_1.isLoggedCookie, updatedCookie);
|
|
555
|
-
window.location.replace('/');
|
|
556
|
-
}
|
|
589
|
+
var newSchoolId = selected;
|
|
590
|
+
var schoolIdCurrent = userSessionInfo.school_id;
|
|
591
|
+
if (newSchoolId && newSchoolId !== schoolIdCurrent) {
|
|
592
|
+
userSessionInfo.school_id = newSchoolId;
|
|
593
|
+
(0, saveCookiesClient_1["default"])(constants_1.COOKIE_USER_INFO, (0, helpers_1.encryptDataSync)(userSessionInfo), true);
|
|
594
|
+
window.location.replace('/');
|
|
557
595
|
}
|
|
558
596
|
}
|
|
559
597
|
catch (error) {
|
|
@@ -672,16 +710,14 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
672
710
|
react_2["default"].createElement("div", { "aria-hidden": true, className: "".concat(openNavName ? 'w-64' : 'w-14', " menu-styled z-10 flex h-full flex-col justify-between border-r !bg-gray-200 transition-all duration-300 lg:fixed"), onMouseOut: function () { return setOpenNavName(false); }, onMouseOver: function () { return setOpenNavName(true); } },
|
|
673
711
|
react_2["default"].createElement("div", { className: classNames('flex flex-1 flex-col', openNavName ? 'overflow-y-auto' : 'overflow-y-hidden') },
|
|
674
712
|
react_2["default"].createElement("div", { className: 'relative flex-1' },
|
|
675
|
-
react_2["default"].createElement("div", { "aria-label": 'Sidebar', className: 'hidden overflow-x-hidden md:block md:flex-shrink-0 md:overflow-y-auto' }, !hiddenLeftMenu && (react_2["default"].createElement("div", { className: "space-y- flex ".concat(openNavName ? 'w-64' : 'w-12', " flex-col overflow-hidden p-3") }, navigation.map(function (item, index) { return (react_2["default"].createElement("div", { key: index, className: 'w-full' },
|
|
713
|
+
react_2["default"].createElement("div", { "aria-label": 'Sidebar', className: 'hidden overflow-x-hidden md:block md:flex-shrink-0 md:overflow-y-auto' }, !hiddenLeftMenu && (react_2["default"].createElement("div", { className: "space-y- flex ".concat(openNavName ? 'w-64' : 'w-12', " flex-col overflow-hidden p-3") }, navigation.map(function (item, index) { return (react_2["default"].createElement("div", { key: index, className: 'w-full' }, enablePer(item.code, perCode) && (react_2["default"].createElement("a", { className: "".concat(classNames(item.current && !openNavName
|
|
676
714
|
? 'menu-bg-color-icon-active-styled font-semibold' // màu background của icon đang active của menu
|
|
677
715
|
: 'menu-icon-color-styled', // màu icon của menu
|
|
678
716
|
!openNavName
|
|
679
717
|
? 'mb-1.5 inline-flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg'
|
|
680
718
|
: 'mb-1.5 inline-flex h-8 min-w-full flex-shrink-0 items-center rounded-lg', openNavName && item.current
|
|
681
719
|
? 'menu-bg-color-icon-active-styled rounded-lg'
|
|
682
|
-
: 'menu-hover-bg hover:rounded-lg hover:bg-opacity-50')), href: item.path,
|
|
683
|
-
// onClick={() => handleClicked(item.path)}
|
|
684
|
-
onMouseOver: function () { return setOpenNavName(true); } },
|
|
720
|
+
: 'menu-hover-bg hover:rounded-lg hover:bg-opacity-50')), href: item.path, onClick: function () { return handleClicked(item.path); }, onMouseOver: function () { return setOpenNavName(true); } },
|
|
685
721
|
react_2["default"].createElement("span", { className: 'sr-only' }, item.name),
|
|
686
722
|
react_2["default"].createElement("span", { className: classNames(!openNavName
|
|
687
723
|
? 'group cursor-pointer hover:z-10 focus-visible:outline-none'
|
|
@@ -693,20 +729,7 @@ var PHXMainWrapV3 = function (_a) {
|
|
|
693
729
|
// />
|
|
694
730
|
react_2["default"].createElement(image_1["default"], { alt: 'icon', className: classNames('h-[1.125rem] w-[1.125rem] text-gray-950', openNavName && 'mt-[0.2rem]'), height: 0, src: item.current ? Icon_1.Icons["".concat(item.code, "_SOLID")] : Icon_1.Icons[item.code], width: 0 })),
|
|
695
731
|
openNavName && (react_2["default"].createElement("div", { className: 'h-6' },
|
|
696
|
-
react_2["default"].createElement("p", { className: "mt-0.5 h-full text-[0.86rem] text-[#353A44] transition-all duration-300 ".concat(openNavName ? 'opacity-100' : 'opacity-0') }, item.name))))))))
|
|
697
|
-
? 'menu-bg-color-icon-active-styled font-semibold text-indigo-900' // màu background của icon đang active trong menu
|
|
698
|
-
: 'menu-icon-color-styled font-medium text-gray-700', // màu icon
|
|
699
|
-
!openNavName
|
|
700
|
-
? 'mb-1.5 inline-flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg'
|
|
701
|
-
: 'mb-1.5 inline-flex h-8 min-w-full flex-shrink-0 items-center rounded-lg', openNavName && item.current
|
|
702
|
-
? 'menu-bg-color-icon-active-styled rounded-lg text-indigo-900' // màu background của icon đang active
|
|
703
|
-
: 'menu-hover-bg hover:rounded-lg hover:bg-opacity-50'), href: item.path, onClick: function () { return handleClicked(item.path); }, onMouseOver: function () { return setOpenNavName(true); } },
|
|
704
|
-
react_2["default"].createElement("span", { className: classNames(!openNavName
|
|
705
|
-
? 'group mt-0.5 cursor-pointer hover:z-10 focus-visible:outline-none'
|
|
706
|
-
: "flex gap-x-2 ".concat(item.menuIconSL ? 'pl-[3px] pt-[2px]' : 'pl-[0.45rem]')) },
|
|
707
|
-
item.menuIconSL ? (react_2["default"].createElement("img", { alt: 'icon', className: 'w-[1.6rem]', src: item.menuIconSL })) : (react_2["default"].createElement(react_fontawesome_1.FontAwesomeIcon, { className: 'mt-1 h-[1.125rem] w-[1.125rem]', icon: item.image })),
|
|
708
|
-
openNavName && (react_2["default"].createElement("div", { className: 'h-6' },
|
|
709
|
-
react_2["default"].createElement("p", { className: "mt-0.5 h-full text-[0.86rem] transition-all duration-300 ".concat(openNavName ? 'opacity-100' : 'opacity-0', " ").concat(item.current ? 'font-semibold' : '', " ") }, item.name)))))))); })))))),
|
|
732
|
+
react_2["default"].createElement("p", { className: "mt-0.5 h-full text-[0.86rem] text-[#353A44] transition-all duration-300 ".concat(openNavName ? 'opacity-100' : 'opacity-0') }, item.name)))))))); })))))),
|
|
710
733
|
react_2["default"].createElement("div", { className: classNames('border-t', navigation.length > 0 && ((_e = navigation[0]) === null || _e === void 0 ? void 0 : _e.isSchoolink) ? 'border-[#1c222b]' : 'border-indigo-100') },
|
|
711
734
|
react_2["default"].createElement("div", { className: "mb-14 flex ".concat(openNavName ? 'w-64' : 'w-12', " overflow-hidden p-3") },
|
|
712
735
|
react_2["default"].createElement("a", { className: classNames('z-0', !openNavName
|