mario-core 2.9.413-feedback → 2.9.415-feedback
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.js +482 -482
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +461 -461
- 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
|
@@ -41880,6 +41880,212 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
|
|
|
41880
41880
|
})), t("log_out")))));
|
|
41881
41881
|
};
|
|
41882
41882
|
|
|
41883
|
+
var apiGetLanguage = function apiGetLanguage() {
|
|
41884
|
+
return api.get(BASE_URL + "/api/language");
|
|
41885
|
+
};
|
|
41886
|
+
|
|
41887
|
+
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
41888
|
+
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
41889
|
+
};
|
|
41890
|
+
|
|
41891
|
+
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
41892
|
+
|
|
41893
|
+
var useLanguages = function useLanguages() {
|
|
41894
|
+
var dispatch = reactRedux.useDispatch();
|
|
41895
|
+
|
|
41896
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
41897
|
+
i18n = _useTranslation.i18n;
|
|
41898
|
+
|
|
41899
|
+
var language = reactRedux.useSelector(function (state) {
|
|
41900
|
+
return state.common.language;
|
|
41901
|
+
});
|
|
41902
|
+
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
41903
|
+
|
|
41904
|
+
var _useState = React.useState([]),
|
|
41905
|
+
languageList = _useState[0],
|
|
41906
|
+
setLanguageList = _useState[1];
|
|
41907
|
+
|
|
41908
|
+
var _useState2 = React.useState(false),
|
|
41909
|
+
dropdownOpen = _useState2[0],
|
|
41910
|
+
setDropdownOpen = _useState2[1];
|
|
41911
|
+
|
|
41912
|
+
var _useState3 = React.useState(defaultLanguage),
|
|
41913
|
+
currentLang = _useState3[0],
|
|
41914
|
+
setCurrentLang = _useState3[1];
|
|
41915
|
+
|
|
41916
|
+
var toggle = function toggle() {
|
|
41917
|
+
return setDropdownOpen(function (prevState) {
|
|
41918
|
+
return !prevState;
|
|
41919
|
+
});
|
|
41920
|
+
};
|
|
41921
|
+
|
|
41922
|
+
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
41923
|
+
try {
|
|
41924
|
+
var _temp3 = function _temp3() {
|
|
41925
|
+
dispatch(setLoading(false));
|
|
41926
|
+
};
|
|
41927
|
+
|
|
41928
|
+
dispatch(setLoading(true));
|
|
41929
|
+
|
|
41930
|
+
var _temp4 = _catch(function () {
|
|
41931
|
+
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
41932
|
+
i18n.changeLanguage(lang);
|
|
41933
|
+
setCurrentLang(lang);
|
|
41934
|
+
dispatch(setLanguage(lang));
|
|
41935
|
+
});
|
|
41936
|
+
}, function (err) {
|
|
41937
|
+
var _err$response, _err$response$data;
|
|
41938
|
+
|
|
41939
|
+
dispatch(setAlert({
|
|
41940
|
+
type: "danger",
|
|
41941
|
+
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
|
|
41942
|
+
}));
|
|
41943
|
+
});
|
|
41944
|
+
|
|
41945
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
41946
|
+
} catch (e) {
|
|
41947
|
+
return Promise.reject(e);
|
|
41948
|
+
}
|
|
41949
|
+
};
|
|
41950
|
+
|
|
41951
|
+
var getListLanguage = function getListLanguage() {
|
|
41952
|
+
try {
|
|
41953
|
+
var _temp6 = _catch(function () {
|
|
41954
|
+
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
41955
|
+
setLanguageList(res.data);
|
|
41956
|
+
});
|
|
41957
|
+
}, function (err) {
|
|
41958
|
+
var _err$response2, _err$response2$data;
|
|
41959
|
+
|
|
41960
|
+
dispatch(setAlert({
|
|
41961
|
+
type: "danger",
|
|
41962
|
+
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
|
|
41963
|
+
}));
|
|
41964
|
+
});
|
|
41965
|
+
|
|
41966
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
41967
|
+
} catch (e) {
|
|
41968
|
+
return Promise.reject(e);
|
|
41969
|
+
}
|
|
41970
|
+
};
|
|
41971
|
+
|
|
41972
|
+
React.useEffect(function () {
|
|
41973
|
+
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
41974
|
+
getListLanguage();
|
|
41975
|
+
}, []);
|
|
41976
|
+
return {
|
|
41977
|
+
languageList: languageList,
|
|
41978
|
+
toggle: toggle,
|
|
41979
|
+
dropdownOpen: dropdownOpen,
|
|
41980
|
+
currentLang: currentLang,
|
|
41981
|
+
changeLanguageApp: changeLanguageApp,
|
|
41982
|
+
setCurrentLang: setCurrentLang
|
|
41983
|
+
};
|
|
41984
|
+
};
|
|
41985
|
+
|
|
41986
|
+
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
41987
|
+
var _useLanguages = useLanguages(),
|
|
41988
|
+
languageList = _useLanguages.languageList,
|
|
41989
|
+
toggle = _useLanguages.toggle,
|
|
41990
|
+
dropdownOpen = _useLanguages.dropdownOpen,
|
|
41991
|
+
currentLang = _useLanguages.currentLang,
|
|
41992
|
+
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
41993
|
+
|
|
41994
|
+
var currentLanguage = React.useMemo(function () {
|
|
41995
|
+
var current = languageList.find(function (i) {
|
|
41996
|
+
return i.code === currentLang;
|
|
41997
|
+
});
|
|
41998
|
+
if (!current) return null;
|
|
41999
|
+
return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
|
|
42000
|
+
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
42001
|
+
src: "" + getStaticFileUrl(current.image)
|
|
42002
|
+
}), " ", current.name);
|
|
42003
|
+
}, [currentLang, languageList]);
|
|
42004
|
+
return React__default.createElement(reactstrap.Dropdown, {
|
|
42005
|
+
isOpen: dropdownOpen,
|
|
42006
|
+
toggle: toggle,
|
|
42007
|
+
className: "" + styles["dropdown-menu"]
|
|
42008
|
+
}, React__default.createElement(reactstrap.DropdownToggle, {
|
|
42009
|
+
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
42010
|
+
}, React__default.createElement("span", {
|
|
42011
|
+
style: {
|
|
42012
|
+
color: "#000",
|
|
42013
|
+
textTransform: "capitalize",
|
|
42014
|
+
display: 'flex',
|
|
42015
|
+
alignItems: 'center'
|
|
42016
|
+
}
|
|
42017
|
+
}, currentLanguage, React__default.createElement(bs.BsChevronDown, {
|
|
42018
|
+
className: "ml-2",
|
|
42019
|
+
style: {
|
|
42020
|
+
fontSize: '10px'
|
|
42021
|
+
}
|
|
42022
|
+
}))), React__default.createElement(reactstrap.DropdownMenu, {
|
|
42023
|
+
className: styles["dropdown-content-language"]
|
|
42024
|
+
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
42025
|
+
return React__default.createElement(reactstrap.DropdownItem, {
|
|
42026
|
+
key: lang.code,
|
|
42027
|
+
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
42028
|
+
onClick: function onClick() {
|
|
42029
|
+
return changeLanguageApp(lang.code);
|
|
42030
|
+
}
|
|
42031
|
+
}, React__default.createElement("div", {
|
|
42032
|
+
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
42033
|
+
}, React__default.createElement("span", {
|
|
42034
|
+
className: "mr-2 d-flex hover-opacity"
|
|
42035
|
+
}, React__default.createElement("img", {
|
|
42036
|
+
style: {
|
|
42037
|
+
width: "30px",
|
|
42038
|
+
height: "25px",
|
|
42039
|
+
borderRadius: "5px"
|
|
42040
|
+
},
|
|
42041
|
+
src: getStaticFileUrl(lang.image)
|
|
42042
|
+
})), lang.name));
|
|
42043
|
+
})));
|
|
42044
|
+
};
|
|
42045
|
+
|
|
42046
|
+
var TheHeader = function TheHeader(_ref) {
|
|
42047
|
+
var onToggleModel = _ref.onToggleModel;
|
|
42048
|
+
var dispatch = reactRedux.useDispatch();
|
|
42049
|
+
var sidebarShow = reactRedux.useSelector(function (state) {
|
|
42050
|
+
return state.common.sidebarShow;
|
|
42051
|
+
});
|
|
42052
|
+
|
|
42053
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
42054
|
+
t = _useTranslation.t;
|
|
42055
|
+
|
|
42056
|
+
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
42057
|
+
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
42058
|
+
dispatch(setSidebar(val));
|
|
42059
|
+
};
|
|
42060
|
+
|
|
42061
|
+
var isDistrict = window.location.host.includes("-district");
|
|
42062
|
+
return React__default.createElement(react.CHeader, {
|
|
42063
|
+
withSubheader: true,
|
|
42064
|
+
className: "d-flex align-items-center justify-content-end"
|
|
42065
|
+
}, React__default.createElement(react.CToggler, {
|
|
42066
|
+
inHeader: true,
|
|
42067
|
+
className: "ml-md-3 d-lg-none",
|
|
42068
|
+
onClick: toggleSidebarMobile
|
|
42069
|
+
}), React__default.createElement(react.CHeaderBrand, {
|
|
42070
|
+
className: "mx-auto flex-grow-1 d-lg-none",
|
|
42071
|
+
to: "/"
|
|
42072
|
+
}, React__default.createElement("img", {
|
|
42073
|
+
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
42074
|
+
className: styles["header-logo"]
|
|
42075
|
+
})), React__default.createElement(react.CHeaderNav, {
|
|
42076
|
+
className: "pr-3"
|
|
42077
|
+
}, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
|
|
42078
|
+
className: "mr-3",
|
|
42079
|
+
style: {
|
|
42080
|
+
color: '#000'
|
|
42081
|
+
},
|
|
42082
|
+
href: '/privacy-policy',
|
|
42083
|
+
target: "blank"
|
|
42084
|
+
}, t("privacy_policy")), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
|
|
42085
|
+
onToggleModel: onToggleModel
|
|
42086
|
+
})));
|
|
42087
|
+
};
|
|
42088
|
+
|
|
41883
42089
|
var TITLE$3 = "Not found";
|
|
41884
42090
|
|
|
41885
42091
|
var NotFound = function NotFound() {
|
|
@@ -41937,25 +42143,277 @@ var TheContent = function TheContent(_ref) {
|
|
|
41937
42143
|
|
|
41938
42144
|
var TheContent$1 = React__default.memo(TheContent);
|
|
41939
42145
|
|
|
41940
|
-
var
|
|
41941
|
-
|
|
42146
|
+
var loadingStyle = {
|
|
42147
|
+
minWidth: "100vw",
|
|
42148
|
+
minHeight: "100vh",
|
|
42149
|
+
position: "fixed",
|
|
42150
|
+
top: 0,
|
|
42151
|
+
left: 0,
|
|
42152
|
+
zIndex: 999999999,
|
|
42153
|
+
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
42154
|
+
display: "flex",
|
|
42155
|
+
justifyContent: "center",
|
|
42156
|
+
alignItems: "center"
|
|
41942
42157
|
};
|
|
41943
|
-
|
|
41944
|
-
|
|
42158
|
+
|
|
42159
|
+
var Loading = function Loading() {
|
|
42160
|
+
var isLoading = reactRedux.useSelector(function (state) {
|
|
42161
|
+
return state.common.isLoading;
|
|
42162
|
+
});
|
|
42163
|
+
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
42164
|
+
return isLoading ? React__default.createElement("div", {
|
|
42165
|
+
style: loadingStyle
|
|
42166
|
+
}, React__default.createElement("div", {
|
|
42167
|
+
className: "spinner-border text-secondary",
|
|
42168
|
+
role: "status"
|
|
42169
|
+
}, React__default.createElement("span", {
|
|
42170
|
+
className: "sr-only"
|
|
42171
|
+
}, "Loading..."))) : null;
|
|
41945
42172
|
};
|
|
41946
42173
|
|
|
41947
|
-
var
|
|
41948
|
-
|
|
41949
|
-
|
|
41950
|
-
|
|
41951
|
-
|
|
41952
|
-
|
|
41953
|
-
|
|
41954
|
-
|
|
41955
|
-
}
|
|
41956
|
-
|
|
41957
|
-
|
|
41958
|
-
|
|
42174
|
+
var firstCheckToken = function firstCheckToken() {
|
|
42175
|
+
return Promise.resolve(_catch(function () {
|
|
42176
|
+
var token = getAccessToken();
|
|
42177
|
+
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
42178
|
+
return tokenStatus.data ? true : false;
|
|
42179
|
+
}) : false;
|
|
42180
|
+
}, function () {
|
|
42181
|
+
return false;
|
|
42182
|
+
}));
|
|
42183
|
+
};
|
|
42184
|
+
|
|
42185
|
+
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
42186
|
+
if (!Array.isArray(userRoles)) {
|
|
42187
|
+
return false;
|
|
42188
|
+
}
|
|
42189
|
+
|
|
42190
|
+
if (Array.isArray(componentRoles)) {
|
|
42191
|
+
var intersects = userRoles.filter(function (i) {
|
|
42192
|
+
return componentRoles.includes(i);
|
|
42193
|
+
});
|
|
42194
|
+
return intersects.length > 0;
|
|
42195
|
+
}
|
|
42196
|
+
|
|
42197
|
+
return true;
|
|
42198
|
+
};
|
|
42199
|
+
|
|
42200
|
+
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
42201
|
+
var _handleUserRole;
|
|
42202
|
+
|
|
42203
|
+
var open = _ref.open,
|
|
42204
|
+
onToggleModel = _ref.onToggleModel;
|
|
42205
|
+
var dispatch = reactRedux.useDispatch();
|
|
42206
|
+
|
|
42207
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
42208
|
+
t = _useTranslation.t;
|
|
42209
|
+
|
|
42210
|
+
var history = reactRouterDom.useHistory();
|
|
42211
|
+
var pathname = window.location.pathname;
|
|
42212
|
+
var user = reactRedux.useSelector(function (state) {
|
|
42213
|
+
return state.common.user;
|
|
42214
|
+
});
|
|
42215
|
+
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
42216
|
+
|
|
42217
|
+
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
42218
|
+
dispatch(setLoading(true));
|
|
42219
|
+
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
42220
|
+
dispatch(setUser(_extends({}, user, {
|
|
42221
|
+
roles: roleSelect
|
|
42222
|
+
})));
|
|
42223
|
+
localStorage.setItem("ROLES", roleSelect.toString());
|
|
42224
|
+
onToggleModel();
|
|
42225
|
+
|
|
42226
|
+
if (roles.includes("Parent")) {
|
|
42227
|
+
history.push("/parent");
|
|
42228
|
+
} else if (roles.includes("Admin")) {
|
|
42229
|
+
history.push("/admin/home");
|
|
42230
|
+
} else {
|
|
42231
|
+
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
42232
|
+
}
|
|
42233
|
+
};
|
|
42234
|
+
|
|
42235
|
+
return React__default.createElement(reactstrap.Modal, {
|
|
42236
|
+
isOpen: open,
|
|
42237
|
+
toggle: function toggle() {
|
|
42238
|
+
return onToggleModel();
|
|
42239
|
+
},
|
|
42240
|
+
className: "" + styles["model-switch-roles"],
|
|
42241
|
+
centered: true
|
|
42242
|
+
}, React__default.createElement("p", {
|
|
42243
|
+
className: "" + styles["title"]
|
|
42244
|
+
}, 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) {
|
|
42245
|
+
return React__default.createElement("p", {
|
|
42246
|
+
key: r,
|
|
42247
|
+
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" : ""],
|
|
42248
|
+
onClick: function onClick() {
|
|
42249
|
+
return handleSelectUserRoles([r]);
|
|
42250
|
+
}
|
|
42251
|
+
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
42252
|
+
})));
|
|
42253
|
+
};
|
|
42254
|
+
|
|
42255
|
+
var TheLayout = function TheLayout(_ref) {
|
|
42256
|
+
var routes = _ref.routes,
|
|
42257
|
+
navigation = _ref.navigation;
|
|
42258
|
+
var history = reactRouterDom.useHistory();
|
|
42259
|
+
var dispatch = reactRedux.useDispatch();
|
|
42260
|
+
var user = reactRedux.useSelector(function (state) {
|
|
42261
|
+
return state.common.user;
|
|
42262
|
+
});
|
|
42263
|
+
var language = reactRedux.useSelector(function (state) {
|
|
42264
|
+
return state.common.language;
|
|
42265
|
+
});
|
|
42266
|
+
|
|
42267
|
+
var _useState = React.useState(false),
|
|
42268
|
+
openModelSelectRole = _useState[0],
|
|
42269
|
+
setOpenModelSelectRole = _useState[1];
|
|
42270
|
+
|
|
42271
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
42272
|
+
t = _useTranslation.t;
|
|
42273
|
+
|
|
42274
|
+
var location = reactRouterDom.useLocation();
|
|
42275
|
+
var isNotification = location.pathname.includes("notifications");
|
|
42276
|
+
var isDistrict = window.location.host.includes("-district");
|
|
42277
|
+
|
|
42278
|
+
var handleToggleModel = function handleToggleModel() {
|
|
42279
|
+
setOpenModelSelectRole(!openModelSelectRole);
|
|
42280
|
+
};
|
|
42281
|
+
|
|
42282
|
+
var authRoutes = React.useMemo(function () {
|
|
42283
|
+
return routes.filter(function (route) {
|
|
42284
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
42285
|
+
}).filter(function (route) {
|
|
42286
|
+
return !!route.isDistrict === isDistrict;
|
|
42287
|
+
});
|
|
42288
|
+
}, [user, language]);
|
|
42289
|
+
var authNavigations = React.useMemo(function () {
|
|
42290
|
+
return navigation.map(function (item) {
|
|
42291
|
+
var _item$_children, _item$_children2;
|
|
42292
|
+
|
|
42293
|
+
return _extends({}, item, {
|
|
42294
|
+
name: t(item.name),
|
|
42295
|
+
_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) {
|
|
42296
|
+
return _extends({}, x, {
|
|
42297
|
+
name: t(x.name)
|
|
42298
|
+
});
|
|
42299
|
+
}) : undefined
|
|
42300
|
+
});
|
|
42301
|
+
}).filter(function (nav) {
|
|
42302
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
42303
|
+
}).filter(function (nav) {
|
|
42304
|
+
return !!nav.isDistrict === isDistrict;
|
|
42305
|
+
});
|
|
42306
|
+
}, [user, language]);
|
|
42307
|
+
|
|
42308
|
+
var getInformationSetting = function getInformationSetting() {
|
|
42309
|
+
try {
|
|
42310
|
+
var _temp2 = _catch(function () {
|
|
42311
|
+
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
42312
|
+
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
42313
|
+
});
|
|
42314
|
+
}, function (err) {
|
|
42315
|
+
console.error(err);
|
|
42316
|
+
});
|
|
42317
|
+
|
|
42318
|
+
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
42319
|
+
} catch (e) {
|
|
42320
|
+
return Promise.reject(e);
|
|
42321
|
+
}
|
|
42322
|
+
};
|
|
42323
|
+
|
|
42324
|
+
React.useEffect(function () {
|
|
42325
|
+
checkAuthentication();
|
|
42326
|
+
}, []);
|
|
42327
|
+
React.useEffect(function () {
|
|
42328
|
+
getInformationSetting();
|
|
42329
|
+
}, [location.pathname]);
|
|
42330
|
+
|
|
42331
|
+
var checkAuthentication = function checkAuthentication() {
|
|
42332
|
+
try {
|
|
42333
|
+
var _temp4 = _catch(function () {
|
|
42334
|
+
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
42335
|
+
tokenStatus ? loadInfo() : resetAuth();
|
|
42336
|
+
});
|
|
42337
|
+
}, function () {
|
|
42338
|
+
resetAuth();
|
|
42339
|
+
});
|
|
42340
|
+
|
|
42341
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
42342
|
+
} catch (e) {
|
|
42343
|
+
return Promise.reject(e);
|
|
42344
|
+
}
|
|
42345
|
+
};
|
|
42346
|
+
|
|
42347
|
+
var loadInfo = function loadInfo() {
|
|
42348
|
+
try {
|
|
42349
|
+
var _temp6 = _catch(function () {
|
|
42350
|
+
return Promise.resolve(getInfo()).then(function (info) {
|
|
42351
|
+
var _info$data, _info$data$roles;
|
|
42352
|
+
|
|
42353
|
+
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"))) {
|
|
42354
|
+
resetAuth();
|
|
42355
|
+
}
|
|
42356
|
+
|
|
42357
|
+
dispatch(setUser(info.data));
|
|
42358
|
+
});
|
|
42359
|
+
}, function () {
|
|
42360
|
+
resetAuth();
|
|
42361
|
+
});
|
|
42362
|
+
|
|
42363
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
42364
|
+
} catch (e) {
|
|
42365
|
+
return Promise.reject(e);
|
|
42366
|
+
}
|
|
42367
|
+
};
|
|
42368
|
+
|
|
42369
|
+
var resetAuth = function resetAuth() {
|
|
42370
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
42371
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
42372
|
+
localStorage.removeItem("ROLES");
|
|
42373
|
+
history.push("/");
|
|
42374
|
+
};
|
|
42375
|
+
|
|
42376
|
+
if (!user) {
|
|
42377
|
+
return React__default.createElement(Loading, null);
|
|
42378
|
+
}
|
|
42379
|
+
|
|
42380
|
+
return React__default.createElement("div", {
|
|
42381
|
+
className: "c-app c-default-layout"
|
|
42382
|
+
}, !isNotification && React__default.createElement(TheSidebar, {
|
|
42383
|
+
navigation: authNavigations
|
|
42384
|
+
}), React__default.createElement("div", {
|
|
42385
|
+
className: "c-wrapper"
|
|
42386
|
+
}, !isNotification && React__default.createElement(TheHeader, {
|
|
42387
|
+
onToggleModel: handleToggleModel
|
|
42388
|
+
}), React__default.createElement("div", {
|
|
42389
|
+
className: "c-body bg-white"
|
|
42390
|
+
}, React__default.createElement(TheContent$1, {
|
|
42391
|
+
routes: authRoutes
|
|
42392
|
+
}))), React__default.createElement(ModelSelectRole, {
|
|
42393
|
+
open: openModelSelectRole,
|
|
42394
|
+
onToggleModel: handleToggleModel
|
|
42395
|
+
}));
|
|
42396
|
+
};
|
|
42397
|
+
|
|
42398
|
+
var buttonTextStyle = {
|
|
42399
|
+
fontWeight: 500
|
|
42400
|
+
};
|
|
42401
|
+
var buttonStyle = {
|
|
42402
|
+
height: 38
|
|
42403
|
+
};
|
|
42404
|
+
|
|
42405
|
+
var AddButton = function AddButton(_ref) {
|
|
42406
|
+
var text = _ref.text,
|
|
42407
|
+
onClick = _ref.onClick;
|
|
42408
|
+
return React__default.createElement(reactstrap.Button, {
|
|
42409
|
+
onClick: onClick,
|
|
42410
|
+
color: 'success',
|
|
42411
|
+
style: buttonStyle,
|
|
42412
|
+
className: 'd-flex align-items-center'
|
|
42413
|
+
}, React__default.createElement(fa.FaPlus, null), React__default.createElement("span", {
|
|
42414
|
+
className: 'ml-2',
|
|
42415
|
+
style: buttonTextStyle
|
|
42416
|
+
}, text));
|
|
41959
42417
|
};
|
|
41960
42418
|
|
|
41961
42419
|
var DeleteButtonIcon = function DeleteButtonIcon(_ref) {
|
|
@@ -51283,42 +51741,14 @@ var UserDetail = function UserDetail() {
|
|
|
51283
51741
|
});
|
|
51284
51742
|
};
|
|
51285
51743
|
|
|
51286
|
-
var
|
|
51287
|
-
|
|
51288
|
-
|
|
51289
|
-
|
|
51290
|
-
|
|
51291
|
-
|
|
51292
|
-
|
|
51293
|
-
|
|
51294
|
-
display: "flex",
|
|
51295
|
-
justifyContent: "center",
|
|
51296
|
-
alignItems: "center"
|
|
51297
|
-
};
|
|
51298
|
-
|
|
51299
|
-
var Loading = function Loading() {
|
|
51300
|
-
var isLoading = reactRedux.useSelector(function (state) {
|
|
51301
|
-
return state.common.isLoading;
|
|
51302
|
-
});
|
|
51303
|
-
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
51304
|
-
return isLoading ? React__default.createElement("div", {
|
|
51305
|
-
style: loadingStyle
|
|
51306
|
-
}, React__default.createElement("div", {
|
|
51307
|
-
className: "spinner-border text-secondary",
|
|
51308
|
-
role: "status"
|
|
51309
|
-
}, React__default.createElement("span", {
|
|
51310
|
-
className: "sr-only"
|
|
51311
|
-
}, "Loading..."))) : null;
|
|
51312
|
-
};
|
|
51313
|
-
|
|
51314
|
-
var ScrollToTop = function ScrollToTop() {
|
|
51315
|
-
var _useLocation = reactRouterDom.useLocation(),
|
|
51316
|
-
pathname = _useLocation.pathname;
|
|
51317
|
-
|
|
51318
|
-
React.useEffect(function () {
|
|
51319
|
-
window.scrollTo(0, 0);
|
|
51320
|
-
}, [pathname]);
|
|
51321
|
-
return null;
|
|
51744
|
+
var ScrollToTop = function ScrollToTop() {
|
|
51745
|
+
var _useLocation = reactRouterDom.useLocation(),
|
|
51746
|
+
pathname = _useLocation.pathname;
|
|
51747
|
+
|
|
51748
|
+
React.useEffect(function () {
|
|
51749
|
+
window.scrollTo(0, 0);
|
|
51750
|
+
}, [pathname]);
|
|
51751
|
+
return null;
|
|
51322
51752
|
};
|
|
51323
51753
|
|
|
51324
51754
|
var modalInfo = function modalInfo(type) {
|
|
@@ -54334,32 +54764,6 @@ var store = toolkit.configureStore({
|
|
|
54334
54764
|
}
|
|
54335
54765
|
});
|
|
54336
54766
|
|
|
54337
|
-
var firstCheckToken = function firstCheckToken() {
|
|
54338
|
-
return Promise.resolve(_catch(function () {
|
|
54339
|
-
var token = getAccessToken();
|
|
54340
|
-
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
54341
|
-
return tokenStatus.data ? true : false;
|
|
54342
|
-
}) : false;
|
|
54343
|
-
}, function () {
|
|
54344
|
-
return false;
|
|
54345
|
-
}));
|
|
54346
|
-
};
|
|
54347
|
-
|
|
54348
|
-
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
54349
|
-
if (!Array.isArray(userRoles)) {
|
|
54350
|
-
return false;
|
|
54351
|
-
}
|
|
54352
|
-
|
|
54353
|
-
if (Array.isArray(componentRoles)) {
|
|
54354
|
-
var intersects = userRoles.filter(function (i) {
|
|
54355
|
-
return componentRoles.includes(i);
|
|
54356
|
-
});
|
|
54357
|
-
return intersects.length > 0;
|
|
54358
|
-
}
|
|
54359
|
-
|
|
54360
|
-
return true;
|
|
54361
|
-
};
|
|
54362
|
-
|
|
54363
54767
|
var isInViewport = function isInViewport(el) {
|
|
54364
54768
|
var rect = el === null || el === void 0 ? void 0 : el.getBoundingClientRect();
|
|
54365
54769
|
return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);
|
|
@@ -54393,410 +54797,6 @@ var generateRandomString = (function () {
|
|
|
54393
54797
|
return (Math.random() + 1).toString(36).substring(7);
|
|
54394
54798
|
});
|
|
54395
54799
|
|
|
54396
|
-
var apiGetLanguage = function apiGetLanguage() {
|
|
54397
|
-
return api.get(BASE_URL + "/api/language");
|
|
54398
|
-
};
|
|
54399
|
-
|
|
54400
|
-
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
54401
|
-
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
54402
|
-
};
|
|
54403
|
-
|
|
54404
|
-
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
54405
|
-
|
|
54406
|
-
var useLanguages = function useLanguages() {
|
|
54407
|
-
var dispatch = reactRedux.useDispatch();
|
|
54408
|
-
|
|
54409
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54410
|
-
i18n = _useTranslation.i18n;
|
|
54411
|
-
|
|
54412
|
-
var language = reactRedux.useSelector(function (state) {
|
|
54413
|
-
return state.common.language;
|
|
54414
|
-
});
|
|
54415
|
-
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
54416
|
-
|
|
54417
|
-
var _useState = React.useState([]),
|
|
54418
|
-
languageList = _useState[0],
|
|
54419
|
-
setLanguageList = _useState[1];
|
|
54420
|
-
|
|
54421
|
-
var _useState2 = React.useState(false),
|
|
54422
|
-
dropdownOpen = _useState2[0],
|
|
54423
|
-
setDropdownOpen = _useState2[1];
|
|
54424
|
-
|
|
54425
|
-
var _useState3 = React.useState(defaultLanguage),
|
|
54426
|
-
currentLang = _useState3[0],
|
|
54427
|
-
setCurrentLang = _useState3[1];
|
|
54428
|
-
|
|
54429
|
-
var toggle = function toggle() {
|
|
54430
|
-
return setDropdownOpen(function (prevState) {
|
|
54431
|
-
return !prevState;
|
|
54432
|
-
});
|
|
54433
|
-
};
|
|
54434
|
-
|
|
54435
|
-
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
54436
|
-
try {
|
|
54437
|
-
var _temp3 = function _temp3() {
|
|
54438
|
-
dispatch(setLoading(false));
|
|
54439
|
-
};
|
|
54440
|
-
|
|
54441
|
-
dispatch(setLoading(true));
|
|
54442
|
-
|
|
54443
|
-
var _temp4 = _catch(function () {
|
|
54444
|
-
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
54445
|
-
i18n.changeLanguage(lang);
|
|
54446
|
-
setCurrentLang(lang);
|
|
54447
|
-
dispatch(setLanguage(lang));
|
|
54448
|
-
});
|
|
54449
|
-
}, function (err) {
|
|
54450
|
-
var _err$response, _err$response$data;
|
|
54451
|
-
|
|
54452
|
-
dispatch(setAlert({
|
|
54453
|
-
type: "danger",
|
|
54454
|
-
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
|
|
54455
|
-
}));
|
|
54456
|
-
});
|
|
54457
|
-
|
|
54458
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
54459
|
-
} catch (e) {
|
|
54460
|
-
return Promise.reject(e);
|
|
54461
|
-
}
|
|
54462
|
-
};
|
|
54463
|
-
|
|
54464
|
-
var getListLanguage = function getListLanguage() {
|
|
54465
|
-
try {
|
|
54466
|
-
var _temp6 = _catch(function () {
|
|
54467
|
-
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
54468
|
-
setLanguageList(res.data);
|
|
54469
|
-
});
|
|
54470
|
-
}, function (err) {
|
|
54471
|
-
var _err$response2, _err$response2$data;
|
|
54472
|
-
|
|
54473
|
-
dispatch(setAlert({
|
|
54474
|
-
type: "danger",
|
|
54475
|
-
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
|
|
54476
|
-
}));
|
|
54477
|
-
});
|
|
54478
|
-
|
|
54479
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
54480
|
-
} catch (e) {
|
|
54481
|
-
return Promise.reject(e);
|
|
54482
|
-
}
|
|
54483
|
-
};
|
|
54484
|
-
|
|
54485
|
-
React.useEffect(function () {
|
|
54486
|
-
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
54487
|
-
getListLanguage();
|
|
54488
|
-
}, []);
|
|
54489
|
-
return {
|
|
54490
|
-
languageList: languageList,
|
|
54491
|
-
toggle: toggle,
|
|
54492
|
-
dropdownOpen: dropdownOpen,
|
|
54493
|
-
currentLang: currentLang,
|
|
54494
|
-
changeLanguageApp: changeLanguageApp,
|
|
54495
|
-
setCurrentLang: setCurrentLang
|
|
54496
|
-
};
|
|
54497
|
-
};
|
|
54498
|
-
|
|
54499
|
-
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
54500
|
-
var _useLanguages = useLanguages(),
|
|
54501
|
-
languageList = _useLanguages.languageList,
|
|
54502
|
-
toggle = _useLanguages.toggle,
|
|
54503
|
-
dropdownOpen = _useLanguages.dropdownOpen,
|
|
54504
|
-
currentLang = _useLanguages.currentLang,
|
|
54505
|
-
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
54506
|
-
|
|
54507
|
-
var currentLanguage = React.useMemo(function () {
|
|
54508
|
-
var current = languageList.find(function (i) {
|
|
54509
|
-
return i.code === currentLang;
|
|
54510
|
-
});
|
|
54511
|
-
if (!current) return null;
|
|
54512
|
-
return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
|
|
54513
|
-
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
54514
|
-
src: "" + getStaticFileUrl(current.image)
|
|
54515
|
-
}), " ", current.name);
|
|
54516
|
-
}, [currentLang, languageList]);
|
|
54517
|
-
return React__default.createElement(reactstrap.Dropdown, {
|
|
54518
|
-
isOpen: dropdownOpen,
|
|
54519
|
-
toggle: toggle,
|
|
54520
|
-
className: "" + styles["dropdown-menu"]
|
|
54521
|
-
}, React__default.createElement(reactstrap.DropdownToggle, {
|
|
54522
|
-
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
54523
|
-
}, React__default.createElement("span", {
|
|
54524
|
-
style: {
|
|
54525
|
-
color: "#000",
|
|
54526
|
-
textTransform: "capitalize",
|
|
54527
|
-
display: 'flex',
|
|
54528
|
-
alignItems: 'center'
|
|
54529
|
-
}
|
|
54530
|
-
}, currentLanguage, React__default.createElement(bs.BsChevronDown, {
|
|
54531
|
-
className: "ml-2",
|
|
54532
|
-
style: {
|
|
54533
|
-
fontSize: '10px'
|
|
54534
|
-
}
|
|
54535
|
-
}))), React__default.createElement(reactstrap.DropdownMenu, {
|
|
54536
|
-
className: styles["dropdown-content-language"]
|
|
54537
|
-
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
54538
|
-
return React__default.createElement(reactstrap.DropdownItem, {
|
|
54539
|
-
key: lang.code,
|
|
54540
|
-
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
54541
|
-
onClick: function onClick() {
|
|
54542
|
-
return changeLanguageApp(lang.code);
|
|
54543
|
-
}
|
|
54544
|
-
}, React__default.createElement("div", {
|
|
54545
|
-
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
54546
|
-
}, React__default.createElement("span", {
|
|
54547
|
-
className: "mr-2 d-flex hover-opacity"
|
|
54548
|
-
}, React__default.createElement("img", {
|
|
54549
|
-
style: {
|
|
54550
|
-
width: "30px",
|
|
54551
|
-
height: "25px",
|
|
54552
|
-
borderRadius: "5px"
|
|
54553
|
-
},
|
|
54554
|
-
src: getStaticFileUrl(lang.image)
|
|
54555
|
-
})), lang.name));
|
|
54556
|
-
})));
|
|
54557
|
-
};
|
|
54558
|
-
|
|
54559
|
-
var TheHeader = function TheHeader(_ref) {
|
|
54560
|
-
var onToggleModel = _ref.onToggleModel;
|
|
54561
|
-
var dispatch = reactRedux.useDispatch();
|
|
54562
|
-
var sidebarShow = reactRedux.useSelector(function (state) {
|
|
54563
|
-
return state.common.sidebarShow;
|
|
54564
|
-
});
|
|
54565
|
-
|
|
54566
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54567
|
-
t = _useTranslation.t;
|
|
54568
|
-
|
|
54569
|
-
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
54570
|
-
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
54571
|
-
dispatch(setSidebar(val));
|
|
54572
|
-
};
|
|
54573
|
-
|
|
54574
|
-
var isDistrict = window.location.host.includes("-district");
|
|
54575
|
-
return React__default.createElement(react.CHeader, {
|
|
54576
|
-
withSubheader: true,
|
|
54577
|
-
className: "d-flex align-items-center justify-content-end"
|
|
54578
|
-
}, React__default.createElement(react.CToggler, {
|
|
54579
|
-
inHeader: true,
|
|
54580
|
-
className: "ml-md-3 d-lg-none",
|
|
54581
|
-
onClick: toggleSidebarMobile
|
|
54582
|
-
}), React__default.createElement(react.CHeaderBrand, {
|
|
54583
|
-
className: "mx-auto flex-grow-1 d-lg-none",
|
|
54584
|
-
to: "/"
|
|
54585
|
-
}, React__default.createElement("img", {
|
|
54586
|
-
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
54587
|
-
className: styles["header-logo"]
|
|
54588
|
-
})), React__default.createElement(react.CHeaderNav, {
|
|
54589
|
-
className: "pr-3"
|
|
54590
|
-
}, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
|
|
54591
|
-
className: "mr-3",
|
|
54592
|
-
style: {
|
|
54593
|
-
color: '#000'
|
|
54594
|
-
},
|
|
54595
|
-
href: '/privacy-policy',
|
|
54596
|
-
target: "blank"
|
|
54597
|
-
}, t("privacy_policy")), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
|
|
54598
|
-
onToggleModel: onToggleModel
|
|
54599
|
-
})));
|
|
54600
|
-
};
|
|
54601
|
-
|
|
54602
|
-
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
54603
|
-
var _handleUserRole;
|
|
54604
|
-
|
|
54605
|
-
var open = _ref.open,
|
|
54606
|
-
onToggleModel = _ref.onToggleModel;
|
|
54607
|
-
var dispatch = reactRedux.useDispatch();
|
|
54608
|
-
|
|
54609
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54610
|
-
t = _useTranslation.t;
|
|
54611
|
-
|
|
54612
|
-
var history = reactRouterDom.useHistory();
|
|
54613
|
-
var pathname = window.location.pathname;
|
|
54614
|
-
var user = reactRedux.useSelector(function (state) {
|
|
54615
|
-
return state.common.user;
|
|
54616
|
-
});
|
|
54617
|
-
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
54618
|
-
|
|
54619
|
-
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
54620
|
-
dispatch(setLoading(true));
|
|
54621
|
-
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
54622
|
-
dispatch(setUser(_extends({}, user, {
|
|
54623
|
-
roles: roleSelect
|
|
54624
|
-
})));
|
|
54625
|
-
localStorage.setItem("ROLES", roleSelect.toString());
|
|
54626
|
-
onToggleModel();
|
|
54627
|
-
|
|
54628
|
-
if (roles.includes("Parent")) {
|
|
54629
|
-
history.push("/parent");
|
|
54630
|
-
} else if (roles.includes("Admin")) {
|
|
54631
|
-
history.push("/admin/home");
|
|
54632
|
-
} else {
|
|
54633
|
-
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
54634
|
-
}
|
|
54635
|
-
};
|
|
54636
|
-
|
|
54637
|
-
return React__default.createElement(reactstrap.Modal, {
|
|
54638
|
-
isOpen: open,
|
|
54639
|
-
toggle: function toggle() {
|
|
54640
|
-
return onToggleModel();
|
|
54641
|
-
},
|
|
54642
|
-
className: "" + styles["model-switch-roles"],
|
|
54643
|
-
centered: true
|
|
54644
|
-
}, React__default.createElement("p", {
|
|
54645
|
-
className: "" + styles["title"]
|
|
54646
|
-
}, 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) {
|
|
54647
|
-
return React__default.createElement("p", {
|
|
54648
|
-
key: r,
|
|
54649
|
-
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" : ""],
|
|
54650
|
-
onClick: function onClick() {
|
|
54651
|
-
return handleSelectUserRoles([r]);
|
|
54652
|
-
}
|
|
54653
|
-
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
54654
|
-
})));
|
|
54655
|
-
};
|
|
54656
|
-
|
|
54657
|
-
var TheLayout = function TheLayout(_ref) {
|
|
54658
|
-
var routes = _ref.routes,
|
|
54659
|
-
navigation = _ref.navigation;
|
|
54660
|
-
var history = reactRouterDom.useHistory();
|
|
54661
|
-
var dispatch = reactRedux.useDispatch();
|
|
54662
|
-
var user = reactRedux.useSelector(function (state) {
|
|
54663
|
-
return state.common.user;
|
|
54664
|
-
});
|
|
54665
|
-
var language = reactRedux.useSelector(function (state) {
|
|
54666
|
-
return state.common.language;
|
|
54667
|
-
});
|
|
54668
|
-
|
|
54669
|
-
var _useState = React.useState(false),
|
|
54670
|
-
openModelSelectRole = _useState[0],
|
|
54671
|
-
setOpenModelSelectRole = _useState[1];
|
|
54672
|
-
|
|
54673
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
54674
|
-
t = _useTranslation.t;
|
|
54675
|
-
|
|
54676
|
-
var location = reactRouterDom.useLocation();
|
|
54677
|
-
var isNotification = location.pathname.includes("notifications");
|
|
54678
|
-
var isDistrict = window.location.host.includes("-district");
|
|
54679
|
-
|
|
54680
|
-
var handleToggleModel = function handleToggleModel() {
|
|
54681
|
-
setOpenModelSelectRole(!openModelSelectRole);
|
|
54682
|
-
};
|
|
54683
|
-
|
|
54684
|
-
var authRoutes = React.useMemo(function () {
|
|
54685
|
-
return routes.filter(function (route) {
|
|
54686
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
54687
|
-
}).filter(function (route) {
|
|
54688
|
-
return !!route.isDistrict === isDistrict;
|
|
54689
|
-
});
|
|
54690
|
-
}, [user, language]);
|
|
54691
|
-
var authNavigations = React.useMemo(function () {
|
|
54692
|
-
return navigation.map(function (item) {
|
|
54693
|
-
var _item$_children, _item$_children2;
|
|
54694
|
-
|
|
54695
|
-
return _extends({}, item, {
|
|
54696
|
-
name: t(item.name),
|
|
54697
|
-
_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) {
|
|
54698
|
-
return _extends({}, x, {
|
|
54699
|
-
name: t(x.name)
|
|
54700
|
-
});
|
|
54701
|
-
}) : undefined
|
|
54702
|
-
});
|
|
54703
|
-
}).filter(function (nav) {
|
|
54704
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
54705
|
-
}).filter(function (nav) {
|
|
54706
|
-
return !!nav.isDistrict === isDistrict;
|
|
54707
|
-
});
|
|
54708
|
-
}, [user, language]);
|
|
54709
|
-
|
|
54710
|
-
var getInformationSetting = function getInformationSetting() {
|
|
54711
|
-
try {
|
|
54712
|
-
var _temp2 = _catch(function () {
|
|
54713
|
-
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
54714
|
-
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
54715
|
-
});
|
|
54716
|
-
}, function (err) {
|
|
54717
|
-
console.error(err);
|
|
54718
|
-
});
|
|
54719
|
-
|
|
54720
|
-
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
54721
|
-
} catch (e) {
|
|
54722
|
-
return Promise.reject(e);
|
|
54723
|
-
}
|
|
54724
|
-
};
|
|
54725
|
-
|
|
54726
|
-
React.useEffect(function () {
|
|
54727
|
-
checkAuthentication();
|
|
54728
|
-
}, []);
|
|
54729
|
-
React.useEffect(function () {
|
|
54730
|
-
getInformationSetting();
|
|
54731
|
-
}, [location.pathname]);
|
|
54732
|
-
|
|
54733
|
-
var checkAuthentication = function checkAuthentication() {
|
|
54734
|
-
try {
|
|
54735
|
-
var _temp4 = _catch(function () {
|
|
54736
|
-
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
54737
|
-
tokenStatus ? loadInfo() : resetAuth();
|
|
54738
|
-
});
|
|
54739
|
-
}, function () {
|
|
54740
|
-
resetAuth();
|
|
54741
|
-
});
|
|
54742
|
-
|
|
54743
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
54744
|
-
} catch (e) {
|
|
54745
|
-
return Promise.reject(e);
|
|
54746
|
-
}
|
|
54747
|
-
};
|
|
54748
|
-
|
|
54749
|
-
var loadInfo = function loadInfo() {
|
|
54750
|
-
try {
|
|
54751
|
-
var _temp6 = _catch(function () {
|
|
54752
|
-
return Promise.resolve(getInfo()).then(function (info) {
|
|
54753
|
-
var _info$data, _info$data$roles;
|
|
54754
|
-
|
|
54755
|
-
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"))) {
|
|
54756
|
-
resetAuth();
|
|
54757
|
-
}
|
|
54758
|
-
|
|
54759
|
-
dispatch(setUser(info.data));
|
|
54760
|
-
});
|
|
54761
|
-
}, function () {
|
|
54762
|
-
resetAuth();
|
|
54763
|
-
});
|
|
54764
|
-
|
|
54765
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
54766
|
-
} catch (e) {
|
|
54767
|
-
return Promise.reject(e);
|
|
54768
|
-
}
|
|
54769
|
-
};
|
|
54770
|
-
|
|
54771
|
-
var resetAuth = function resetAuth() {
|
|
54772
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
54773
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
54774
|
-
localStorage.removeItem("ROLES");
|
|
54775
|
-
history.push("/");
|
|
54776
|
-
};
|
|
54777
|
-
|
|
54778
|
-
if (!user) {
|
|
54779
|
-
return React__default.createElement(Loading, null);
|
|
54780
|
-
}
|
|
54781
|
-
|
|
54782
|
-
return React__default.createElement("div", {
|
|
54783
|
-
className: "c-app c-default-layout"
|
|
54784
|
-
}, !isNotification && React__default.createElement(TheSidebar, {
|
|
54785
|
-
navigation: authNavigations
|
|
54786
|
-
}), React__default.createElement("div", {
|
|
54787
|
-
className: "c-wrapper"
|
|
54788
|
-
}, !isNotification && React__default.createElement(TheHeader, {
|
|
54789
|
-
onToggleModel: handleToggleModel
|
|
54790
|
-
}), React__default.createElement("div", {
|
|
54791
|
-
className: "c-body bg-white"
|
|
54792
|
-
}, React__default.createElement(TheContent$1, {
|
|
54793
|
-
routes: authRoutes
|
|
54794
|
-
}))), React__default.createElement(ModelSelectRole, {
|
|
54795
|
-
open: openModelSelectRole,
|
|
54796
|
-
onToggleModel: handleToggleModel
|
|
54797
|
-
}));
|
|
54798
|
-
};
|
|
54799
|
-
|
|
54800
54800
|
var amplitudeClient = amplitude;
|
|
54801
54801
|
|
|
54802
54802
|
Object.defineProperty(exports, 'I18nextProvider', {
|