mario-core 2.9.433-feedback → 2.9.500-release
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/index.d.ts +1 -2
- package/dist/index.js +496 -546
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +484 -533
- package/dist/index.modern.js.map +1 -1
- package/package.json +105 -105
- package/dist/containers/Login/views/block/BlockAssignTeacherByCode.d.ts +0 -8
package/dist/index.js
CHANGED
|
@@ -42064,6 +42064,212 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
|
|
|
42064
42064
|
})), t("log_out")))));
|
|
42065
42065
|
};
|
|
42066
42066
|
|
|
42067
|
+
var apiGetLanguage = function apiGetLanguage() {
|
|
42068
|
+
return api.get(BASE_URL + "/api/language");
|
|
42069
|
+
};
|
|
42070
|
+
|
|
42071
|
+
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
42072
|
+
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
42073
|
+
};
|
|
42074
|
+
|
|
42075
|
+
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
42076
|
+
|
|
42077
|
+
var useLanguages = function useLanguages() {
|
|
42078
|
+
var dispatch = reactRedux.useDispatch();
|
|
42079
|
+
|
|
42080
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
42081
|
+
i18n = _useTranslation.i18n;
|
|
42082
|
+
|
|
42083
|
+
var language = reactRedux.useSelector(function (state) {
|
|
42084
|
+
return state.common.language;
|
|
42085
|
+
});
|
|
42086
|
+
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
42087
|
+
|
|
42088
|
+
var _useState = React.useState([]),
|
|
42089
|
+
languageList = _useState[0],
|
|
42090
|
+
setLanguageList = _useState[1];
|
|
42091
|
+
|
|
42092
|
+
var _useState2 = React.useState(false),
|
|
42093
|
+
dropdownOpen = _useState2[0],
|
|
42094
|
+
setDropdownOpen = _useState2[1];
|
|
42095
|
+
|
|
42096
|
+
var _useState3 = React.useState(defaultLanguage),
|
|
42097
|
+
currentLang = _useState3[0],
|
|
42098
|
+
setCurrentLang = _useState3[1];
|
|
42099
|
+
|
|
42100
|
+
var toggle = function toggle() {
|
|
42101
|
+
return setDropdownOpen(function (prevState) {
|
|
42102
|
+
return !prevState;
|
|
42103
|
+
});
|
|
42104
|
+
};
|
|
42105
|
+
|
|
42106
|
+
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
42107
|
+
try {
|
|
42108
|
+
var _temp3 = function _temp3() {
|
|
42109
|
+
dispatch(setLoading(false));
|
|
42110
|
+
};
|
|
42111
|
+
|
|
42112
|
+
dispatch(setLoading(true));
|
|
42113
|
+
|
|
42114
|
+
var _temp4 = _catch(function () {
|
|
42115
|
+
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
42116
|
+
i18n.changeLanguage(lang);
|
|
42117
|
+
setCurrentLang(lang);
|
|
42118
|
+
dispatch(setLanguage(lang));
|
|
42119
|
+
});
|
|
42120
|
+
}, function (err) {
|
|
42121
|
+
var _err$response, _err$response$data;
|
|
42122
|
+
|
|
42123
|
+
dispatch(setAlert({
|
|
42124
|
+
type: "danger",
|
|
42125
|
+
message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
|
|
42126
|
+
}));
|
|
42127
|
+
});
|
|
42128
|
+
|
|
42129
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
42130
|
+
} catch (e) {
|
|
42131
|
+
return Promise.reject(e);
|
|
42132
|
+
}
|
|
42133
|
+
};
|
|
42134
|
+
|
|
42135
|
+
var getListLanguage = function getListLanguage() {
|
|
42136
|
+
try {
|
|
42137
|
+
var _temp6 = _catch(function () {
|
|
42138
|
+
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
42139
|
+
setLanguageList(res.data);
|
|
42140
|
+
});
|
|
42141
|
+
}, function (err) {
|
|
42142
|
+
var _err$response2, _err$response2$data;
|
|
42143
|
+
|
|
42144
|
+
dispatch(setAlert({
|
|
42145
|
+
type: "danger",
|
|
42146
|
+
message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message
|
|
42147
|
+
}));
|
|
42148
|
+
});
|
|
42149
|
+
|
|
42150
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
42151
|
+
} catch (e) {
|
|
42152
|
+
return Promise.reject(e);
|
|
42153
|
+
}
|
|
42154
|
+
};
|
|
42155
|
+
|
|
42156
|
+
React.useEffect(function () {
|
|
42157
|
+
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
42158
|
+
getListLanguage();
|
|
42159
|
+
}, []);
|
|
42160
|
+
return {
|
|
42161
|
+
languageList: languageList,
|
|
42162
|
+
toggle: toggle,
|
|
42163
|
+
dropdownOpen: dropdownOpen,
|
|
42164
|
+
currentLang: currentLang,
|
|
42165
|
+
changeLanguageApp: changeLanguageApp,
|
|
42166
|
+
setCurrentLang: setCurrentLang
|
|
42167
|
+
};
|
|
42168
|
+
};
|
|
42169
|
+
|
|
42170
|
+
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
42171
|
+
var _useLanguages = useLanguages(),
|
|
42172
|
+
languageList = _useLanguages.languageList,
|
|
42173
|
+
toggle = _useLanguages.toggle,
|
|
42174
|
+
dropdownOpen = _useLanguages.dropdownOpen,
|
|
42175
|
+
currentLang = _useLanguages.currentLang,
|
|
42176
|
+
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
42177
|
+
|
|
42178
|
+
var currentLanguage = React.useMemo(function () {
|
|
42179
|
+
var current = languageList.find(function (i) {
|
|
42180
|
+
return i.code === currentLang;
|
|
42181
|
+
});
|
|
42182
|
+
if (!current) return null;
|
|
42183
|
+
return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
|
|
42184
|
+
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
42185
|
+
src: "" + getStaticFileUrl(current.image)
|
|
42186
|
+
}), " ", current.name);
|
|
42187
|
+
}, [currentLang, languageList]);
|
|
42188
|
+
return React__default.createElement(reactstrap.Dropdown, {
|
|
42189
|
+
isOpen: dropdownOpen,
|
|
42190
|
+
toggle: toggle,
|
|
42191
|
+
className: "" + styles["dropdown-menu"]
|
|
42192
|
+
}, React__default.createElement(reactstrap.DropdownToggle, {
|
|
42193
|
+
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
42194
|
+
}, React__default.createElement("span", {
|
|
42195
|
+
style: {
|
|
42196
|
+
color: "#000",
|
|
42197
|
+
textTransform: "capitalize",
|
|
42198
|
+
display: 'flex',
|
|
42199
|
+
alignItems: 'center'
|
|
42200
|
+
}
|
|
42201
|
+
}, currentLanguage, React__default.createElement(bs.BsChevronDown, {
|
|
42202
|
+
className: "ml-2",
|
|
42203
|
+
style: {
|
|
42204
|
+
fontSize: '10px'
|
|
42205
|
+
}
|
|
42206
|
+
}))), React__default.createElement(reactstrap.DropdownMenu, {
|
|
42207
|
+
className: styles["dropdown-content-language"]
|
|
42208
|
+
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
42209
|
+
return React__default.createElement(reactstrap.DropdownItem, {
|
|
42210
|
+
key: lang.code,
|
|
42211
|
+
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
42212
|
+
onClick: function onClick() {
|
|
42213
|
+
return changeLanguageApp(lang.code);
|
|
42214
|
+
}
|
|
42215
|
+
}, React__default.createElement("div", {
|
|
42216
|
+
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
42217
|
+
}, React__default.createElement("span", {
|
|
42218
|
+
className: "mr-2 d-flex hover-opacity"
|
|
42219
|
+
}, React__default.createElement("img", {
|
|
42220
|
+
style: {
|
|
42221
|
+
width: "30px",
|
|
42222
|
+
height: "25px",
|
|
42223
|
+
borderRadius: "5px"
|
|
42224
|
+
},
|
|
42225
|
+
src: getStaticFileUrl(lang.image)
|
|
42226
|
+
})), lang.name));
|
|
42227
|
+
})));
|
|
42228
|
+
};
|
|
42229
|
+
|
|
42230
|
+
var TheHeader = function TheHeader(_ref) {
|
|
42231
|
+
var onToggleModel = _ref.onToggleModel;
|
|
42232
|
+
var dispatch = reactRedux.useDispatch();
|
|
42233
|
+
var sidebarShow = reactRedux.useSelector(function (state) {
|
|
42234
|
+
return state.common.sidebarShow;
|
|
42235
|
+
});
|
|
42236
|
+
|
|
42237
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
42238
|
+
t = _useTranslation.t;
|
|
42239
|
+
|
|
42240
|
+
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
42241
|
+
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
42242
|
+
dispatch(setSidebar(val));
|
|
42243
|
+
};
|
|
42244
|
+
|
|
42245
|
+
var isDistrict = window.location.host.includes("-district");
|
|
42246
|
+
return React__default.createElement(react.CHeader, {
|
|
42247
|
+
withSubheader: true,
|
|
42248
|
+
className: "d-flex align-items-center justify-content-end"
|
|
42249
|
+
}, React__default.createElement(react.CToggler, {
|
|
42250
|
+
inHeader: true,
|
|
42251
|
+
className: "ml-md-3 d-lg-none",
|
|
42252
|
+
onClick: toggleSidebarMobile
|
|
42253
|
+
}), React__default.createElement(react.CHeaderBrand, {
|
|
42254
|
+
className: "mx-auto flex-grow-1 d-lg-none",
|
|
42255
|
+
to: "/"
|
|
42256
|
+
}, React__default.createElement("img", {
|
|
42257
|
+
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
42258
|
+
className: styles["header-logo"]
|
|
42259
|
+
})), React__default.createElement(react.CHeaderNav, {
|
|
42260
|
+
className: "pr-3"
|
|
42261
|
+
}, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
|
|
42262
|
+
className: "mr-3",
|
|
42263
|
+
style: {
|
|
42264
|
+
color: '#000'
|
|
42265
|
+
},
|
|
42266
|
+
href: '/privacy-policy',
|
|
42267
|
+
target: "blank"
|
|
42268
|
+
}, t("privacy_policy")), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
|
|
42269
|
+
onToggleModel: onToggleModel
|
|
42270
|
+
})));
|
|
42271
|
+
};
|
|
42272
|
+
|
|
42067
42273
|
var TITLE$3 = "Not found";
|
|
42068
42274
|
|
|
42069
42275
|
var NotFound = function NotFound() {
|
|
@@ -42121,25 +42327,277 @@ var TheContent = function TheContent(_ref) {
|
|
|
42121
42327
|
|
|
42122
42328
|
var TheContent$1 = React__default.memo(TheContent);
|
|
42123
42329
|
|
|
42124
|
-
var
|
|
42125
|
-
|
|
42330
|
+
var loadingStyle = {
|
|
42331
|
+
minWidth: "100vw",
|
|
42332
|
+
minHeight: "100vh",
|
|
42333
|
+
position: "fixed",
|
|
42334
|
+
top: 0,
|
|
42335
|
+
left: 0,
|
|
42336
|
+
zIndex: 999999999,
|
|
42337
|
+
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
42338
|
+
display: "flex",
|
|
42339
|
+
justifyContent: "center",
|
|
42340
|
+
alignItems: "center"
|
|
42126
42341
|
};
|
|
42127
|
-
|
|
42128
|
-
|
|
42342
|
+
|
|
42343
|
+
var Loading = function Loading() {
|
|
42344
|
+
var isLoading = reactRedux.useSelector(function (state) {
|
|
42345
|
+
return state.common.isLoading;
|
|
42346
|
+
});
|
|
42347
|
+
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
42348
|
+
return isLoading ? React__default.createElement("div", {
|
|
42349
|
+
style: loadingStyle
|
|
42350
|
+
}, React__default.createElement("div", {
|
|
42351
|
+
className: "spinner-border text-secondary",
|
|
42352
|
+
role: "status"
|
|
42353
|
+
}, React__default.createElement("span", {
|
|
42354
|
+
className: "sr-only"
|
|
42355
|
+
}, "Loading..."))) : null;
|
|
42129
42356
|
};
|
|
42130
42357
|
|
|
42131
|
-
var
|
|
42132
|
-
|
|
42133
|
-
|
|
42134
|
-
|
|
42135
|
-
|
|
42136
|
-
|
|
42137
|
-
|
|
42138
|
-
|
|
42139
|
-
}
|
|
42140
|
-
|
|
42141
|
-
|
|
42142
|
-
|
|
42358
|
+
var firstCheckToken = function firstCheckToken() {
|
|
42359
|
+
return Promise.resolve(_catch(function () {
|
|
42360
|
+
var token = getAccessToken();
|
|
42361
|
+
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
42362
|
+
return tokenStatus.data ? true : false;
|
|
42363
|
+
}) : false;
|
|
42364
|
+
}, function () {
|
|
42365
|
+
return false;
|
|
42366
|
+
}));
|
|
42367
|
+
};
|
|
42368
|
+
|
|
42369
|
+
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
42370
|
+
if (!Array.isArray(userRoles)) {
|
|
42371
|
+
return false;
|
|
42372
|
+
}
|
|
42373
|
+
|
|
42374
|
+
if (Array.isArray(componentRoles)) {
|
|
42375
|
+
var intersects = userRoles.filter(function (i) {
|
|
42376
|
+
return componentRoles.includes(i);
|
|
42377
|
+
});
|
|
42378
|
+
return intersects.length > 0;
|
|
42379
|
+
}
|
|
42380
|
+
|
|
42381
|
+
return true;
|
|
42382
|
+
};
|
|
42383
|
+
|
|
42384
|
+
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
42385
|
+
var _handleUserRole;
|
|
42386
|
+
|
|
42387
|
+
var open = _ref.open,
|
|
42388
|
+
onToggleModel = _ref.onToggleModel;
|
|
42389
|
+
var dispatch = reactRedux.useDispatch();
|
|
42390
|
+
|
|
42391
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
42392
|
+
t = _useTranslation.t;
|
|
42393
|
+
|
|
42394
|
+
var history = reactRouterDom.useHistory();
|
|
42395
|
+
var pathname = window.location.pathname;
|
|
42396
|
+
var user = reactRedux.useSelector(function (state) {
|
|
42397
|
+
return state.common.user;
|
|
42398
|
+
});
|
|
42399
|
+
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
42400
|
+
|
|
42401
|
+
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
42402
|
+
dispatch(setLoading(true));
|
|
42403
|
+
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
42404
|
+
dispatch(setUser(_extends({}, user, {
|
|
42405
|
+
roles: roleSelect
|
|
42406
|
+
})));
|
|
42407
|
+
localStorage.setItem("ROLES", roleSelect.toString());
|
|
42408
|
+
onToggleModel();
|
|
42409
|
+
|
|
42410
|
+
if (roles.includes("Parent")) {
|
|
42411
|
+
history.push("/parent");
|
|
42412
|
+
} else if (roles.includes("Admin")) {
|
|
42413
|
+
history.push("/admin/home");
|
|
42414
|
+
} else {
|
|
42415
|
+
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
42416
|
+
}
|
|
42417
|
+
};
|
|
42418
|
+
|
|
42419
|
+
return React__default.createElement(reactstrap.Modal, {
|
|
42420
|
+
isOpen: open,
|
|
42421
|
+
toggle: function toggle() {
|
|
42422
|
+
return onToggleModel();
|
|
42423
|
+
},
|
|
42424
|
+
className: "" + styles["model-switch-roles"],
|
|
42425
|
+
centered: true
|
|
42426
|
+
}, React__default.createElement("p", {
|
|
42427
|
+
className: "" + styles["title"]
|
|
42428
|
+
}, t("continue_as")), React__default.createElement("div", null, (_handleUserRole = handleUserRole(user === null || user === void 0 ? void 0 : user.roles)) === null || _handleUserRole === void 0 ? void 0 : _handleUserRole.map(function (r) {
|
|
42429
|
+
return React__default.createElement("p", {
|
|
42430
|
+
key: r,
|
|
42431
|
+
className: styles["item-select-role"] + " " + styles[roles.includes("Teacher") && roles.includes("Assistant") && r === "Teacher/Assistant" && !roles.includes("Admin") || roles.includes("Admin") && r === "Admin" || roles.includes(r) && !roles.includes("Admin") ? "item-role-active" : ""],
|
|
42432
|
+
onClick: function onClick() {
|
|
42433
|
+
return handleSelectUserRoles([r]);
|
|
42434
|
+
}
|
|
42435
|
+
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
42436
|
+
})));
|
|
42437
|
+
};
|
|
42438
|
+
|
|
42439
|
+
var TheLayout = function TheLayout(_ref) {
|
|
42440
|
+
var routes = _ref.routes,
|
|
42441
|
+
navigation = _ref.navigation;
|
|
42442
|
+
var history = reactRouterDom.useHistory();
|
|
42443
|
+
var dispatch = reactRedux.useDispatch();
|
|
42444
|
+
var user = reactRedux.useSelector(function (state) {
|
|
42445
|
+
return state.common.user;
|
|
42446
|
+
});
|
|
42447
|
+
var language = reactRedux.useSelector(function (state) {
|
|
42448
|
+
return state.common.language;
|
|
42449
|
+
});
|
|
42450
|
+
|
|
42451
|
+
var _useState = React.useState(false),
|
|
42452
|
+
openModelSelectRole = _useState[0],
|
|
42453
|
+
setOpenModelSelectRole = _useState[1];
|
|
42454
|
+
|
|
42455
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
42456
|
+
t = _useTranslation.t;
|
|
42457
|
+
|
|
42458
|
+
var location = reactRouterDom.useLocation();
|
|
42459
|
+
var isNotification = location.pathname.includes("notifications");
|
|
42460
|
+
var isDistrict = window.location.host.includes("-district");
|
|
42461
|
+
|
|
42462
|
+
var handleToggleModel = function handleToggleModel() {
|
|
42463
|
+
setOpenModelSelectRole(!openModelSelectRole);
|
|
42464
|
+
};
|
|
42465
|
+
|
|
42466
|
+
var authRoutes = React.useMemo(function () {
|
|
42467
|
+
return routes.filter(function (route) {
|
|
42468
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
42469
|
+
}).filter(function (route) {
|
|
42470
|
+
return !!route.isDistrict === isDistrict;
|
|
42471
|
+
});
|
|
42472
|
+
}, [user, language]);
|
|
42473
|
+
var authNavigations = React.useMemo(function () {
|
|
42474
|
+
return navigation.map(function (item) {
|
|
42475
|
+
var _item$_children, _item$_children2;
|
|
42476
|
+
|
|
42477
|
+
return _extends({}, item, {
|
|
42478
|
+
name: t(item.name),
|
|
42479
|
+
_children: item !== null && item !== void 0 && (_item$_children = item._children) !== null && _item$_children !== void 0 && _item$_children.length ? item === null || item === void 0 ? void 0 : (_item$_children2 = item._children) === null || _item$_children2 === void 0 ? void 0 : _item$_children2.map(function (x) {
|
|
42480
|
+
return _extends({}, x, {
|
|
42481
|
+
name: t(x.name)
|
|
42482
|
+
});
|
|
42483
|
+
}) : undefined
|
|
42484
|
+
});
|
|
42485
|
+
}).filter(function (nav) {
|
|
42486
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
42487
|
+
}).filter(function (nav) {
|
|
42488
|
+
return !!nav.isDistrict === isDistrict;
|
|
42489
|
+
});
|
|
42490
|
+
}, [user, language]);
|
|
42491
|
+
|
|
42492
|
+
var getInformationSetting = function getInformationSetting() {
|
|
42493
|
+
try {
|
|
42494
|
+
var _temp2 = _catch(function () {
|
|
42495
|
+
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
42496
|
+
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
42497
|
+
});
|
|
42498
|
+
}, function (err) {
|
|
42499
|
+
console.error(err);
|
|
42500
|
+
});
|
|
42501
|
+
|
|
42502
|
+
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
42503
|
+
} catch (e) {
|
|
42504
|
+
return Promise.reject(e);
|
|
42505
|
+
}
|
|
42506
|
+
};
|
|
42507
|
+
|
|
42508
|
+
React.useEffect(function () {
|
|
42509
|
+
checkAuthentication();
|
|
42510
|
+
}, []);
|
|
42511
|
+
React.useEffect(function () {
|
|
42512
|
+
getInformationSetting();
|
|
42513
|
+
}, [location.pathname]);
|
|
42514
|
+
|
|
42515
|
+
var checkAuthentication = function checkAuthentication() {
|
|
42516
|
+
try {
|
|
42517
|
+
var _temp4 = _catch(function () {
|
|
42518
|
+
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
42519
|
+
tokenStatus ? loadInfo() : resetAuth();
|
|
42520
|
+
});
|
|
42521
|
+
}, function () {
|
|
42522
|
+
resetAuth();
|
|
42523
|
+
});
|
|
42524
|
+
|
|
42525
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
42526
|
+
} catch (e) {
|
|
42527
|
+
return Promise.reject(e);
|
|
42528
|
+
}
|
|
42529
|
+
};
|
|
42530
|
+
|
|
42531
|
+
var loadInfo = function loadInfo() {
|
|
42532
|
+
try {
|
|
42533
|
+
var _temp6 = _catch(function () {
|
|
42534
|
+
return Promise.resolve(getInfo()).then(function (info) {
|
|
42535
|
+
var _info$data, _info$data$roles;
|
|
42536
|
+
|
|
42537
|
+
if (!info || !(info !== null && info !== void 0 && (_info$data = info.data) !== null && _info$data !== void 0 && (_info$data$roles = _info$data.roles) !== null && _info$data$roles !== void 0 && _info$data$roles.includes("Admin"))) {
|
|
42538
|
+
resetAuth();
|
|
42539
|
+
}
|
|
42540
|
+
|
|
42541
|
+
dispatch(setUser(info.data));
|
|
42542
|
+
});
|
|
42543
|
+
}, function () {
|
|
42544
|
+
resetAuth();
|
|
42545
|
+
});
|
|
42546
|
+
|
|
42547
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
42548
|
+
} catch (e) {
|
|
42549
|
+
return Promise.reject(e);
|
|
42550
|
+
}
|
|
42551
|
+
};
|
|
42552
|
+
|
|
42553
|
+
var resetAuth = function resetAuth() {
|
|
42554
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
42555
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
42556
|
+
localStorage.removeItem("ROLES");
|
|
42557
|
+
history.push("/");
|
|
42558
|
+
};
|
|
42559
|
+
|
|
42560
|
+
if (!user) {
|
|
42561
|
+
return React__default.createElement(Loading, null);
|
|
42562
|
+
}
|
|
42563
|
+
|
|
42564
|
+
return React__default.createElement("div", {
|
|
42565
|
+
className: "c-app c-default-layout"
|
|
42566
|
+
}, !isNotification && React__default.createElement(TheSidebar, {
|
|
42567
|
+
navigation: authNavigations
|
|
42568
|
+
}), React__default.createElement("div", {
|
|
42569
|
+
className: "c-wrapper"
|
|
42570
|
+
}, !isNotification && React__default.createElement(TheHeader, {
|
|
42571
|
+
onToggleModel: handleToggleModel
|
|
42572
|
+
}), React__default.createElement("div", {
|
|
42573
|
+
className: "c-body bg-white"
|
|
42574
|
+
}, React__default.createElement(TheContent$1, {
|
|
42575
|
+
routes: authRoutes
|
|
42576
|
+
}))), React__default.createElement(ModelSelectRole, {
|
|
42577
|
+
open: openModelSelectRole,
|
|
42578
|
+
onToggleModel: handleToggleModel
|
|
42579
|
+
}));
|
|
42580
|
+
};
|
|
42581
|
+
|
|
42582
|
+
var buttonTextStyle = {
|
|
42583
|
+
fontWeight: 500
|
|
42584
|
+
};
|
|
42585
|
+
var buttonStyle = {
|
|
42586
|
+
height: 38
|
|
42587
|
+
};
|
|
42588
|
+
|
|
42589
|
+
var AddButton = function AddButton(_ref) {
|
|
42590
|
+
var text = _ref.text,
|
|
42591
|
+
onClick = _ref.onClick;
|
|
42592
|
+
return React__default.createElement(reactstrap.Button, {
|
|
42593
|
+
onClick: onClick,
|
|
42594
|
+
color: 'success',
|
|
42595
|
+
style: buttonStyle,
|
|
42596
|
+
className: 'd-flex align-items-center'
|
|
42597
|
+
}, React__default.createElement(fa.FaPlus, null), React__default.createElement("span", {
|
|
42598
|
+
className: 'ml-2',
|
|
42599
|
+
style: buttonTextStyle
|
|
42600
|
+
}, text));
|
|
42143
42601
|
};
|
|
42144
42602
|
|
|
42145
42603
|
var DeleteButtonIcon = function DeleteButtonIcon(_ref) {
|
|
@@ -47872,8 +48330,6 @@ var useAssignStudent = function useAssignStudent(teacherSelected, assistantSelec
|
|
|
47872
48330
|
|
|
47873
48331
|
var onAssignStaffToStudents = function onAssignStaffToStudents(listUserIds) {
|
|
47874
48332
|
try {
|
|
47875
|
-
var _userSelected$filter$, _userSelected$filter;
|
|
47876
|
-
|
|
47877
48333
|
var _temp27 = function _temp27() {
|
|
47878
48334
|
dispatch(setLoading(false));
|
|
47879
48335
|
};
|
|
@@ -47894,20 +48350,6 @@ var useAssignStudent = function useAssignStudent(teacherSelected, assistantSelec
|
|
|
47894
48350
|
return Promise.resolve();
|
|
47895
48351
|
}
|
|
47896
48352
|
|
|
47897
|
-
var allUsersHaveTeachers = (_userSelected$filter$ = userSelected === null || userSelected === void 0 ? void 0 : (_userSelected$filter = userSelected.filter(function (user) {
|
|
47898
|
-
return listUserIds === null || listUserIds === void 0 ? void 0 : listUserIds.includes(user.id);
|
|
47899
|
-
})) === null || _userSelected$filter === void 0 ? void 0 : _userSelected$filter.every(function (u) {
|
|
47900
|
-
return Array.isArray(u.teachers) && u.teachers.length > 0;
|
|
47901
|
-
})) != null ? _userSelected$filter$ : false;
|
|
47902
|
-
|
|
47903
|
-
if (staffBulkAssign.teacher.length === 0 && !allUsersHaveTeachers) {
|
|
47904
|
-
dispatch(setAlert({
|
|
47905
|
-
type: "danger",
|
|
47906
|
-
message: "Please assign a teacher to each student before giving other educators access to them"
|
|
47907
|
-
}));
|
|
47908
|
-
return Promise.resolve();
|
|
47909
|
-
}
|
|
47910
|
-
|
|
47911
48353
|
dispatch(setLoading(true));
|
|
47912
48354
|
|
|
47913
48355
|
var _temp28 = _catch(function () {
|
|
@@ -51517,34 +51959,6 @@ var UserDetail = function UserDetail() {
|
|
|
51517
51959
|
});
|
|
51518
51960
|
};
|
|
51519
51961
|
|
|
51520
|
-
var loadingStyle = {
|
|
51521
|
-
minWidth: "100vw",
|
|
51522
|
-
minHeight: "100vh",
|
|
51523
|
-
position: "fixed",
|
|
51524
|
-
top: 0,
|
|
51525
|
-
left: 0,
|
|
51526
|
-
zIndex: 999999999,
|
|
51527
|
-
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
51528
|
-
display: "flex",
|
|
51529
|
-
justifyContent: "center",
|
|
51530
|
-
alignItems: "center"
|
|
51531
|
-
};
|
|
51532
|
-
|
|
51533
|
-
var Loading = function Loading() {
|
|
51534
|
-
var isLoading = reactRedux.useSelector(function (state) {
|
|
51535
|
-
return state.common.isLoading;
|
|
51536
|
-
});
|
|
51537
|
-
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
51538
|
-
return isLoading ? React__default.createElement("div", {
|
|
51539
|
-
style: loadingStyle
|
|
51540
|
-
}, React__default.createElement("div", {
|
|
51541
|
-
className: "spinner-border text-secondary",
|
|
51542
|
-
role: "status"
|
|
51543
|
-
}, React__default.createElement("span", {
|
|
51544
|
-
className: "sr-only"
|
|
51545
|
-
}, "Loading..."))) : null;
|
|
51546
|
-
};
|
|
51547
|
-
|
|
51548
51962
|
var ScrollToTop = function ScrollToTop() {
|
|
51549
51963
|
var _useLocation = reactRouterDom.useLocation(),
|
|
51550
51964
|
pathname = _useLocation.pathname;
|
|
@@ -51652,12 +52066,7 @@ var CommonHeader = function CommonHeader(_ref) {
|
|
|
51652
52066
|
}, header))));
|
|
51653
52067
|
};
|
|
51654
52068
|
|
|
51655
|
-
var IDLE_MINUTES_WARNING = 13;
|
|
51656
|
-
var AUTO_LOGOUT_MINUTES = 15;
|
|
51657
|
-
|
|
51658
52069
|
var NotificationLogoutModal = function NotificationLogoutModal() {
|
|
51659
|
-
var history = reactRouterDom.useHistory();
|
|
51660
|
-
|
|
51661
52070
|
var _useState = React.useState(false),
|
|
51662
52071
|
isOpen = _useState[0],
|
|
51663
52072
|
setIsOpen = _useState[1];
|
|
@@ -51669,65 +52078,37 @@ var NotificationLogoutModal = function NotificationLogoutModal() {
|
|
|
51669
52078
|
objTime = _useState2[0],
|
|
51670
52079
|
setObjTime = _useState2[1];
|
|
51671
52080
|
|
|
51672
|
-
var getLastActivity = function getLastActivity() {
|
|
51673
|
-
try {
|
|
51674
|
-
var _localStorage$getItem, _localStorage, _localStorage$getItem2;
|
|
51675
|
-
|
|
51676
|
-
return (_localStorage$getItem = (_localStorage = localStorage) === null || _localStorage === void 0 ? void 0 : (_localStorage$getItem2 = _localStorage.getItem) === null || _localStorage$getItem2 === void 0 ? void 0 : _localStorage$getItem2.call(_localStorage, "LAST_ACTIVITY_TIME")) != null ? _localStorage$getItem : null;
|
|
51677
|
-
} catch (_unused) {
|
|
51678
|
-
return null;
|
|
51679
|
-
}
|
|
51680
|
-
};
|
|
51681
|
-
|
|
51682
|
-
var doLogout = function doLogout() {
|
|
51683
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
51684
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
51685
|
-
localStorage.removeItem("ROLES");
|
|
51686
|
-
localStorage.removeItem("LAST_ACTIVITY_TIME");
|
|
51687
|
-
setIsOpen(false);
|
|
51688
|
-
history.replace("/login");
|
|
51689
|
-
};
|
|
51690
|
-
|
|
51691
52081
|
var checkOpenModalLogout = function checkOpenModalLogout() {
|
|
51692
|
-
var
|
|
51693
|
-
|
|
51694
|
-
var lastActivity = getLastActivity();
|
|
51695
|
-
|
|
51696
|
-
if (!lastActivity) {
|
|
51697
|
-
var _localStorage2, _localStorage2$setIte;
|
|
51698
|
-
|
|
51699
|
-
(_localStorage2 = localStorage) === null || _localStorage2 === void 0 ? void 0 : (_localStorage2$setIte = _localStorage2.setItem) === null || _localStorage2$setIte === void 0 ? void 0 : _localStorage2$setIte.call(_localStorage2, "LAST_ACTIVITY_TIME", new Date().toISOString());
|
|
51700
|
-
return;
|
|
51701
|
-
}
|
|
51702
|
-
|
|
51703
|
-
var timeMoment = moment(lastActivity, "YYYY-MM-DD HH:mm");
|
|
52082
|
+
var lastTimeOut = localStorage.getItem("LAST_TIME_REQUETST");
|
|
52083
|
+
var timeMoment = moment(lastTimeOut, "YYYY-MM-DD HH:mm");
|
|
51704
52084
|
var currentTime = moment(moment().utc().format("YYYY-MM-DD HH:mm"));
|
|
51705
52085
|
var minutes = currentTime.diff(timeMoment, "minutes");
|
|
52086
|
+
var timeLogout = utcToLocalTime(currentTime.add(16 - minutes, 'minutes').format("YYYY-MM-DD HH:mm"), "HH:mm");
|
|
51706
52087
|
|
|
51707
|
-
if (minutes
|
|
51708
|
-
|
|
51709
|
-
return;
|
|
51710
|
-
}
|
|
51711
|
-
|
|
51712
|
-
var timeLogout = utcToLocalTime(currentTime.add(AUTO_LOGOUT_MINUTES - minutes, 'minutes').format("YYYY-MM-DD HH:mm"), "HH:mm");
|
|
51713
|
-
|
|
51714
|
-
if (minutes >= IDLE_MINUTES_WARNING) {
|
|
51715
|
-
setObjTime({
|
|
52088
|
+
if (minutes == 13) {
|
|
52089
|
+
var dataTime = {
|
|
51716
52090
|
minutes: minutes,
|
|
51717
52091
|
timeLogout: timeLogout
|
|
51718
|
-
}
|
|
51719
|
-
|
|
52092
|
+
};
|
|
52093
|
+
setObjTime(dataTime);
|
|
52094
|
+
onToggle();
|
|
51720
52095
|
}
|
|
51721
52096
|
};
|
|
51722
52097
|
|
|
51723
52098
|
React.useEffect(function () {
|
|
51724
|
-
var
|
|
51725
|
-
|
|
51726
|
-
|
|
51727
|
-
|
|
51728
|
-
|
|
51729
|
-
|
|
51730
|
-
|
|
52099
|
+
var accessToken = getAccessToken();
|
|
52100
|
+
|
|
52101
|
+
if (accessToken) {
|
|
52102
|
+
var interval = setInterval(function () {
|
|
52103
|
+
checkOpenModalLogout();
|
|
52104
|
+
}, 60 * 1000);
|
|
52105
|
+
return function () {
|
|
52106
|
+
return clearInterval(interval);
|
|
52107
|
+
};
|
|
52108
|
+
}
|
|
52109
|
+
|
|
52110
|
+
return;
|
|
52111
|
+
}, [location.href]);
|
|
51731
52112
|
|
|
51732
52113
|
var onToggle = function onToggle() {
|
|
51733
52114
|
setIsOpen(!isOpen);
|
|
@@ -51739,7 +52120,7 @@ var NotificationLogoutModal = function NotificationLogoutModal() {
|
|
|
51739
52120
|
size: "xs"
|
|
51740
52121
|
}, React__default.createElement(reactstrap.ModalHeader, {
|
|
51741
52122
|
toggle: onToggle
|
|
51742
|
-
}, "Notification Logout"), React__default.createElement(reactstrap.ModalBody, null, "Are you still here? You have had no action for " + (objTime === null || objTime === void 0 ? void 0 : objTime.minutes) + " mins. \n Your account could be log out after " + (
|
|
52123
|
+
}, "Notification Logout"), React__default.createElement(reactstrap.ModalBody, null, "Are you still here? You have had no action for " + (objTime === null || objTime === void 0 ? void 0 : objTime.minutes) + " mins. \n Your account could be log out after " + (15 - (objTime === null || objTime === void 0 ? void 0 : objTime.minutes)) + " mins at " + (objTime === null || objTime === void 0 ? void 0 : objTime.timeLogout) + " if you don't action."), React__default.createElement(reactstrap.ModalFooter, {
|
|
51743
52124
|
className: "text-right"
|
|
51744
52125
|
}, React__default.createElement(reactstrap.Button, {
|
|
51745
52126
|
color: "primary",
|
|
@@ -54601,32 +54982,6 @@ var store = toolkit.configureStore({
|
|
|
54601
54982
|
}
|
|
54602
54983
|
});
|
|
54603
54984
|
|
|
54604
|
-
var firstCheckToken = function firstCheckToken() {
|
|
54605
|
-
return Promise.resolve(_catch(function () {
|
|
54606
|
-
var token = getAccessToken();
|
|
54607
|
-
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
54608
|
-
return tokenStatus.data ? true : false;
|
|
54609
|
-
}) : false;
|
|
54610
|
-
}, function () {
|
|
54611
|
-
return false;
|
|
54612
|
-
}));
|
|
54613
|
-
};
|
|
54614
|
-
|
|
54615
|
-
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
54616
|
-
if (!Array.isArray(userRoles)) {
|
|
54617
|
-
return false;
|
|
54618
|
-
}
|
|
54619
|
-
|
|
54620
|
-
if (Array.isArray(componentRoles)) {
|
|
54621
|
-
var intersects = userRoles.filter(function (i) {
|
|
54622
|
-
return componentRoles.includes(i);
|
|
54623
|
-
});
|
|
54624
|
-
return intersects.length > 0;
|
|
54625
|
-
}
|
|
54626
|
-
|
|
54627
|
-
return true;
|
|
54628
|
-
};
|
|
54629
|
-
|
|
54630
54985
|
var isInViewport = function isInViewport(el) {
|
|
54631
54986
|
var rect = el === null || el === void 0 ? void 0 : el.getBoundingClientRect();
|
|
54632
54987
|
return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);
|
|
@@ -54660,410 +55015,6 @@ var generateRandomString = (function () {
|
|
|
54660
55015
|
return (Math.random() + 1).toString(36).substring(7);
|
|
54661
55016
|
});
|
|
54662
55017
|
|
|
54663
|
-
var apiGetLanguage = function apiGetLanguage() {
|
|
54664
|
-
return api.get(BASE_URL + "/api/language");
|
|
54665
|
-
};
|
|
54666
|
-
|
|
54667
|
-
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
54668
|
-
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
54669
|
-
};
|
|
54670
|
-
|
|
54671
|
-
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
54672
|
-
|
|
54673
|
-
var useLanguages = function useLanguages() {
|
|
54674
|
-
var dispatch = reactRedux.useDispatch();
|
|
54675
|
-
|
|
54676
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54677
|
-
i18n = _useTranslation.i18n;
|
|
54678
|
-
|
|
54679
|
-
var language = reactRedux.useSelector(function (state) {
|
|
54680
|
-
return state.common.language;
|
|
54681
|
-
});
|
|
54682
|
-
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
54683
|
-
|
|
54684
|
-
var _useState = React.useState([]),
|
|
54685
|
-
languageList = _useState[0],
|
|
54686
|
-
setLanguageList = _useState[1];
|
|
54687
|
-
|
|
54688
|
-
var _useState2 = React.useState(false),
|
|
54689
|
-
dropdownOpen = _useState2[0],
|
|
54690
|
-
setDropdownOpen = _useState2[1];
|
|
54691
|
-
|
|
54692
|
-
var _useState3 = React.useState(defaultLanguage),
|
|
54693
|
-
currentLang = _useState3[0],
|
|
54694
|
-
setCurrentLang = _useState3[1];
|
|
54695
|
-
|
|
54696
|
-
var toggle = function toggle() {
|
|
54697
|
-
return setDropdownOpen(function (prevState) {
|
|
54698
|
-
return !prevState;
|
|
54699
|
-
});
|
|
54700
|
-
};
|
|
54701
|
-
|
|
54702
|
-
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
54703
|
-
try {
|
|
54704
|
-
var _temp3 = function _temp3() {
|
|
54705
|
-
dispatch(setLoading(false));
|
|
54706
|
-
};
|
|
54707
|
-
|
|
54708
|
-
dispatch(setLoading(true));
|
|
54709
|
-
|
|
54710
|
-
var _temp4 = _catch(function () {
|
|
54711
|
-
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
54712
|
-
i18n.changeLanguage(lang);
|
|
54713
|
-
setCurrentLang(lang);
|
|
54714
|
-
dispatch(setLanguage(lang));
|
|
54715
|
-
});
|
|
54716
|
-
}, function (err) {
|
|
54717
|
-
var _err$response, _err$response$data;
|
|
54718
|
-
|
|
54719
|
-
dispatch(setAlert({
|
|
54720
|
-
type: "danger",
|
|
54721
|
-
message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
|
|
54722
|
-
}));
|
|
54723
|
-
});
|
|
54724
|
-
|
|
54725
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
54726
|
-
} catch (e) {
|
|
54727
|
-
return Promise.reject(e);
|
|
54728
|
-
}
|
|
54729
|
-
};
|
|
54730
|
-
|
|
54731
|
-
var getListLanguage = function getListLanguage() {
|
|
54732
|
-
try {
|
|
54733
|
-
var _temp6 = _catch(function () {
|
|
54734
|
-
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
54735
|
-
setLanguageList(res.data);
|
|
54736
|
-
});
|
|
54737
|
-
}, function (err) {
|
|
54738
|
-
var _err$response2, _err$response2$data;
|
|
54739
|
-
|
|
54740
|
-
dispatch(setAlert({
|
|
54741
|
-
type: "danger",
|
|
54742
|
-
message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message
|
|
54743
|
-
}));
|
|
54744
|
-
});
|
|
54745
|
-
|
|
54746
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
54747
|
-
} catch (e) {
|
|
54748
|
-
return Promise.reject(e);
|
|
54749
|
-
}
|
|
54750
|
-
};
|
|
54751
|
-
|
|
54752
|
-
React.useEffect(function () {
|
|
54753
|
-
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
54754
|
-
getListLanguage();
|
|
54755
|
-
}, []);
|
|
54756
|
-
return {
|
|
54757
|
-
languageList: languageList,
|
|
54758
|
-
toggle: toggle,
|
|
54759
|
-
dropdownOpen: dropdownOpen,
|
|
54760
|
-
currentLang: currentLang,
|
|
54761
|
-
changeLanguageApp: changeLanguageApp,
|
|
54762
|
-
setCurrentLang: setCurrentLang
|
|
54763
|
-
};
|
|
54764
|
-
};
|
|
54765
|
-
|
|
54766
|
-
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
54767
|
-
var _useLanguages = useLanguages(),
|
|
54768
|
-
languageList = _useLanguages.languageList,
|
|
54769
|
-
toggle = _useLanguages.toggle,
|
|
54770
|
-
dropdownOpen = _useLanguages.dropdownOpen,
|
|
54771
|
-
currentLang = _useLanguages.currentLang,
|
|
54772
|
-
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
54773
|
-
|
|
54774
|
-
var currentLanguage = React.useMemo(function () {
|
|
54775
|
-
var current = languageList.find(function (i) {
|
|
54776
|
-
return i.code === currentLang;
|
|
54777
|
-
});
|
|
54778
|
-
if (!current) return null;
|
|
54779
|
-
return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
|
|
54780
|
-
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
54781
|
-
src: "" + getStaticFileUrl(current.image)
|
|
54782
|
-
}), " ", current.name);
|
|
54783
|
-
}, [currentLang, languageList]);
|
|
54784
|
-
return React__default.createElement(reactstrap.Dropdown, {
|
|
54785
|
-
isOpen: dropdownOpen,
|
|
54786
|
-
toggle: toggle,
|
|
54787
|
-
className: "" + styles["dropdown-menu"]
|
|
54788
|
-
}, React__default.createElement(reactstrap.DropdownToggle, {
|
|
54789
|
-
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
54790
|
-
}, React__default.createElement("span", {
|
|
54791
|
-
style: {
|
|
54792
|
-
color: "#000",
|
|
54793
|
-
textTransform: "capitalize",
|
|
54794
|
-
display: 'flex',
|
|
54795
|
-
alignItems: 'center'
|
|
54796
|
-
}
|
|
54797
|
-
}, currentLanguage, React__default.createElement(bs.BsChevronDown, {
|
|
54798
|
-
className: "ml-2",
|
|
54799
|
-
style: {
|
|
54800
|
-
fontSize: '10px'
|
|
54801
|
-
}
|
|
54802
|
-
}))), React__default.createElement(reactstrap.DropdownMenu, {
|
|
54803
|
-
className: styles["dropdown-content-language"]
|
|
54804
|
-
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
54805
|
-
return React__default.createElement(reactstrap.DropdownItem, {
|
|
54806
|
-
key: lang.code,
|
|
54807
|
-
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
54808
|
-
onClick: function onClick() {
|
|
54809
|
-
return changeLanguageApp(lang.code);
|
|
54810
|
-
}
|
|
54811
|
-
}, React__default.createElement("div", {
|
|
54812
|
-
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
54813
|
-
}, React__default.createElement("span", {
|
|
54814
|
-
className: "mr-2 d-flex hover-opacity"
|
|
54815
|
-
}, React__default.createElement("img", {
|
|
54816
|
-
style: {
|
|
54817
|
-
width: "30px",
|
|
54818
|
-
height: "25px",
|
|
54819
|
-
borderRadius: "5px"
|
|
54820
|
-
},
|
|
54821
|
-
src: getStaticFileUrl(lang.image)
|
|
54822
|
-
})), lang.name));
|
|
54823
|
-
})));
|
|
54824
|
-
};
|
|
54825
|
-
|
|
54826
|
-
var TheHeader = function TheHeader(_ref) {
|
|
54827
|
-
var onToggleModel = _ref.onToggleModel;
|
|
54828
|
-
var dispatch = reactRedux.useDispatch();
|
|
54829
|
-
var sidebarShow = reactRedux.useSelector(function (state) {
|
|
54830
|
-
return state.common.sidebarShow;
|
|
54831
|
-
});
|
|
54832
|
-
|
|
54833
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54834
|
-
t = _useTranslation.t;
|
|
54835
|
-
|
|
54836
|
-
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
54837
|
-
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
54838
|
-
dispatch(setSidebar(val));
|
|
54839
|
-
};
|
|
54840
|
-
|
|
54841
|
-
var isDistrict = window.location.host.includes("-district");
|
|
54842
|
-
return React__default.createElement(react.CHeader, {
|
|
54843
|
-
withSubheader: true,
|
|
54844
|
-
className: "d-flex align-items-center justify-content-end"
|
|
54845
|
-
}, React__default.createElement(react.CToggler, {
|
|
54846
|
-
inHeader: true,
|
|
54847
|
-
className: "ml-md-3 d-lg-none",
|
|
54848
|
-
onClick: toggleSidebarMobile
|
|
54849
|
-
}), React__default.createElement(react.CHeaderBrand, {
|
|
54850
|
-
className: "mx-auto flex-grow-1 d-lg-none",
|
|
54851
|
-
to: "/"
|
|
54852
|
-
}, React__default.createElement("img", {
|
|
54853
|
-
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
54854
|
-
className: styles["header-logo"]
|
|
54855
|
-
})), React__default.createElement(react.CHeaderNav, {
|
|
54856
|
-
className: "pr-3"
|
|
54857
|
-
}, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
|
|
54858
|
-
className: "mr-3",
|
|
54859
|
-
style: {
|
|
54860
|
-
color: '#000'
|
|
54861
|
-
},
|
|
54862
|
-
href: '/privacy-policy',
|
|
54863
|
-
target: "blank"
|
|
54864
|
-
}, t("privacy_policy")), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
|
|
54865
|
-
onToggleModel: onToggleModel
|
|
54866
|
-
})));
|
|
54867
|
-
};
|
|
54868
|
-
|
|
54869
|
-
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
54870
|
-
var _handleUserRole;
|
|
54871
|
-
|
|
54872
|
-
var open = _ref.open,
|
|
54873
|
-
onToggleModel = _ref.onToggleModel;
|
|
54874
|
-
var dispatch = reactRedux.useDispatch();
|
|
54875
|
-
|
|
54876
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54877
|
-
t = _useTranslation.t;
|
|
54878
|
-
|
|
54879
|
-
var history = reactRouterDom.useHistory();
|
|
54880
|
-
var pathname = window.location.pathname;
|
|
54881
|
-
var user = reactRedux.useSelector(function (state) {
|
|
54882
|
-
return state.common.user;
|
|
54883
|
-
});
|
|
54884
|
-
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
54885
|
-
|
|
54886
|
-
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
54887
|
-
dispatch(setLoading(true));
|
|
54888
|
-
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
54889
|
-
dispatch(setUser(_extends({}, user, {
|
|
54890
|
-
roles: roleSelect
|
|
54891
|
-
})));
|
|
54892
|
-
localStorage.setItem("ROLES", roleSelect.toString());
|
|
54893
|
-
onToggleModel();
|
|
54894
|
-
|
|
54895
|
-
if (roles.includes("Parent")) {
|
|
54896
|
-
history.push("/parent");
|
|
54897
|
-
} else if (roles.includes("Admin")) {
|
|
54898
|
-
history.push("/admin/home");
|
|
54899
|
-
} else {
|
|
54900
|
-
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
54901
|
-
}
|
|
54902
|
-
};
|
|
54903
|
-
|
|
54904
|
-
return React__default.createElement(reactstrap.Modal, {
|
|
54905
|
-
isOpen: open,
|
|
54906
|
-
toggle: function toggle() {
|
|
54907
|
-
return onToggleModel();
|
|
54908
|
-
},
|
|
54909
|
-
className: "" + styles["model-switch-roles"],
|
|
54910
|
-
centered: true
|
|
54911
|
-
}, React__default.createElement("p", {
|
|
54912
|
-
className: "" + styles["title"]
|
|
54913
|
-
}, t("continue_as")), React__default.createElement("div", null, (_handleUserRole = handleUserRole(user === null || user === void 0 ? void 0 : user.roles)) === null || _handleUserRole === void 0 ? void 0 : _handleUserRole.map(function (r) {
|
|
54914
|
-
return React__default.createElement("p", {
|
|
54915
|
-
key: r,
|
|
54916
|
-
className: styles["item-select-role"] + " " + styles[roles.includes("Teacher") && roles.includes("Assistant") && r === "Teacher/Assistant" && !roles.includes("Admin") || roles.includes("Admin") && r === "Admin" || roles.includes(r) && !roles.includes("Admin") ? "item-role-active" : ""],
|
|
54917
|
-
onClick: function onClick() {
|
|
54918
|
-
return handleSelectUserRoles([r]);
|
|
54919
|
-
}
|
|
54920
|
-
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
54921
|
-
})));
|
|
54922
|
-
};
|
|
54923
|
-
|
|
54924
|
-
var TheLayout = function TheLayout(_ref) {
|
|
54925
|
-
var routes = _ref.routes,
|
|
54926
|
-
navigation = _ref.navigation;
|
|
54927
|
-
var history = reactRouterDom.useHistory();
|
|
54928
|
-
var dispatch = reactRedux.useDispatch();
|
|
54929
|
-
var user = reactRedux.useSelector(function (state) {
|
|
54930
|
-
return state.common.user;
|
|
54931
|
-
});
|
|
54932
|
-
var language = reactRedux.useSelector(function (state) {
|
|
54933
|
-
return state.common.language;
|
|
54934
|
-
});
|
|
54935
|
-
|
|
54936
|
-
var _useState = React.useState(false),
|
|
54937
|
-
openModelSelectRole = _useState[0],
|
|
54938
|
-
setOpenModelSelectRole = _useState[1];
|
|
54939
|
-
|
|
54940
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54941
|
-
t = _useTranslation.t;
|
|
54942
|
-
|
|
54943
|
-
var location = reactRouterDom.useLocation();
|
|
54944
|
-
var isNotification = location.pathname.includes("notifications");
|
|
54945
|
-
var isDistrict = window.location.host.includes("-district");
|
|
54946
|
-
|
|
54947
|
-
var handleToggleModel = function handleToggleModel() {
|
|
54948
|
-
setOpenModelSelectRole(!openModelSelectRole);
|
|
54949
|
-
};
|
|
54950
|
-
|
|
54951
|
-
var authRoutes = React.useMemo(function () {
|
|
54952
|
-
return routes.filter(function (route) {
|
|
54953
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
54954
|
-
}).filter(function (route) {
|
|
54955
|
-
return !!route.isDistrict === isDistrict;
|
|
54956
|
-
});
|
|
54957
|
-
}, [user, language]);
|
|
54958
|
-
var authNavigations = React.useMemo(function () {
|
|
54959
|
-
return navigation.map(function (item) {
|
|
54960
|
-
var _item$_children, _item$_children2;
|
|
54961
|
-
|
|
54962
|
-
return _extends({}, item, {
|
|
54963
|
-
name: t(item.name),
|
|
54964
|
-
_children: item !== null && item !== void 0 && (_item$_children = item._children) !== null && _item$_children !== void 0 && _item$_children.length ? item === null || item === void 0 ? void 0 : (_item$_children2 = item._children) === null || _item$_children2 === void 0 ? void 0 : _item$_children2.map(function (x) {
|
|
54965
|
-
return _extends({}, x, {
|
|
54966
|
-
name: t(x.name)
|
|
54967
|
-
});
|
|
54968
|
-
}) : undefined
|
|
54969
|
-
});
|
|
54970
|
-
}).filter(function (nav) {
|
|
54971
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
54972
|
-
}).filter(function (nav) {
|
|
54973
|
-
return !!nav.isDistrict === isDistrict;
|
|
54974
|
-
});
|
|
54975
|
-
}, [user, language]);
|
|
54976
|
-
|
|
54977
|
-
var getInformationSetting = function getInformationSetting() {
|
|
54978
|
-
try {
|
|
54979
|
-
var _temp2 = _catch(function () {
|
|
54980
|
-
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
54981
|
-
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
54982
|
-
});
|
|
54983
|
-
}, function (err) {
|
|
54984
|
-
console.error(err);
|
|
54985
|
-
});
|
|
54986
|
-
|
|
54987
|
-
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
54988
|
-
} catch (e) {
|
|
54989
|
-
return Promise.reject(e);
|
|
54990
|
-
}
|
|
54991
|
-
};
|
|
54992
|
-
|
|
54993
|
-
React.useEffect(function () {
|
|
54994
|
-
checkAuthentication();
|
|
54995
|
-
}, []);
|
|
54996
|
-
React.useEffect(function () {
|
|
54997
|
-
getInformationSetting();
|
|
54998
|
-
}, [location.pathname]);
|
|
54999
|
-
|
|
55000
|
-
var checkAuthentication = function checkAuthentication() {
|
|
55001
|
-
try {
|
|
55002
|
-
var _temp4 = _catch(function () {
|
|
55003
|
-
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
55004
|
-
tokenStatus ? loadInfo() : resetAuth();
|
|
55005
|
-
});
|
|
55006
|
-
}, function () {
|
|
55007
|
-
resetAuth();
|
|
55008
|
-
});
|
|
55009
|
-
|
|
55010
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
55011
|
-
} catch (e) {
|
|
55012
|
-
return Promise.reject(e);
|
|
55013
|
-
}
|
|
55014
|
-
};
|
|
55015
|
-
|
|
55016
|
-
var loadInfo = function loadInfo() {
|
|
55017
|
-
try {
|
|
55018
|
-
var _temp6 = _catch(function () {
|
|
55019
|
-
return Promise.resolve(getInfo()).then(function (info) {
|
|
55020
|
-
var _info$data, _info$data$roles;
|
|
55021
|
-
|
|
55022
|
-
if (!info || !(info !== null && info !== void 0 && (_info$data = info.data) !== null && _info$data !== void 0 && (_info$data$roles = _info$data.roles) !== null && _info$data$roles !== void 0 && _info$data$roles.includes("Admin"))) {
|
|
55023
|
-
resetAuth();
|
|
55024
|
-
}
|
|
55025
|
-
|
|
55026
|
-
dispatch(setUser(info.data));
|
|
55027
|
-
});
|
|
55028
|
-
}, function () {
|
|
55029
|
-
resetAuth();
|
|
55030
|
-
});
|
|
55031
|
-
|
|
55032
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
55033
|
-
} catch (e) {
|
|
55034
|
-
return Promise.reject(e);
|
|
55035
|
-
}
|
|
55036
|
-
};
|
|
55037
|
-
|
|
55038
|
-
var resetAuth = function resetAuth() {
|
|
55039
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
55040
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
55041
|
-
localStorage.removeItem("ROLES");
|
|
55042
|
-
history.push("/");
|
|
55043
|
-
};
|
|
55044
|
-
|
|
55045
|
-
if (!user) {
|
|
55046
|
-
return React__default.createElement(Loading, null);
|
|
55047
|
-
}
|
|
55048
|
-
|
|
55049
|
-
return React__default.createElement("div", {
|
|
55050
|
-
className: "c-app c-default-layout"
|
|
55051
|
-
}, !isNotification && React__default.createElement(TheSidebar, {
|
|
55052
|
-
navigation: authNavigations
|
|
55053
|
-
}), React__default.createElement("div", {
|
|
55054
|
-
className: "c-wrapper"
|
|
55055
|
-
}, !isNotification && React__default.createElement(TheHeader, {
|
|
55056
|
-
onToggleModel: handleToggleModel
|
|
55057
|
-
}), React__default.createElement("div", {
|
|
55058
|
-
className: "c-body bg-white"
|
|
55059
|
-
}, React__default.createElement(TheContent$1, {
|
|
55060
|
-
routes: authRoutes
|
|
55061
|
-
}))), React__default.createElement(ModelSelectRole, {
|
|
55062
|
-
open: openModelSelectRole,
|
|
55063
|
-
onToggleModel: handleToggleModel
|
|
55064
|
-
}));
|
|
55065
|
-
};
|
|
55066
|
-
|
|
55067
55018
|
var amplitudeClient = amplitude;
|
|
55068
55019
|
|
|
55069
55020
|
Object.defineProperty(exports, 'I18nextProvider', {
|
|
@@ -55168,7 +55119,6 @@ exports.editTab = editTab;
|
|
|
55168
55119
|
exports.editorConfig = editorConfig;
|
|
55169
55120
|
exports.firstCheckToken = firstCheckToken;
|
|
55170
55121
|
exports.generateRandomString = generateRandomString;
|
|
55171
|
-
exports.getAccessToken = getAccessToken;
|
|
55172
55122
|
exports.getCookieValue = getCookieValue;
|
|
55173
55123
|
exports.getFileUrl = getFileUrl;
|
|
55174
55124
|
exports.getInfo = getInfo;
|