mario-core 2.9.317-release → 2.9.319-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/containers/Login/views/block/BlockAssignTeacherByCode.d.ts +8 -0
- package/dist/index.js +480 -462
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +483 -465
- package/dist/index.modern.js.map +1 -1
- package/dist/services/weeklyQuestService.d.ts +1 -0
- package/dist/types/WeeklyQuest.d.ts +37 -0
- package/package.json +104 -104
package/dist/index.js
CHANGED
|
@@ -65,6 +65,7 @@ var students_by_designation = "Students by Designation";
|
|
|
65
65
|
var calendar = "Calendar";
|
|
66
66
|
var gender = "Gender";
|
|
67
67
|
var grade = "Grade";
|
|
68
|
+
var grades = "Grades";
|
|
68
69
|
var current_grade = "Current Grade";
|
|
69
70
|
var student_name = "Student name";
|
|
70
71
|
var teacher_name = "Teacher name";
|
|
@@ -1996,6 +1997,7 @@ var all_of_the_students_marked_as_feeling_safe = "All of the students marked as
|
|
|
1996
1997
|
var integrations = "Integrations";
|
|
1997
1998
|
var open_responses = "Open Responses";
|
|
1998
1999
|
var this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it = "This survey was sent all survey links that were sent will be invalid. Are you sure to delete it";
|
|
2000
|
+
var assign_teacher = "Assign Teacher";
|
|
1999
2001
|
var lang_us = {
|
|
2000
2002
|
dashboard: dashboard,
|
|
2001
2003
|
user: user,
|
|
@@ -2023,6 +2025,7 @@ var lang_us = {
|
|
|
2023
2025
|
calendar: calendar,
|
|
2024
2026
|
gender: gender,
|
|
2025
2027
|
grade: grade,
|
|
2028
|
+
grades: grades,
|
|
2026
2029
|
current_grade: current_grade,
|
|
2027
2030
|
student_name: student_name,
|
|
2028
2031
|
teacher_name: teacher_name,
|
|
@@ -3989,7 +3992,8 @@ var lang_us = {
|
|
|
3989
3992
|
integrations: integrations,
|
|
3990
3993
|
"this_check_in_will_be_deleted_from_all_databases._are_you_sure_you_want_to_continue?": "This check-in will be deleted from all databases. Are you sure you want to continue?",
|
|
3991
3994
|
open_responses: open_responses,
|
|
3992
|
-
this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it: this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it
|
|
3995
|
+
this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it: this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it,
|
|
3996
|
+
assign_teacher: assign_teacher
|
|
3993
3997
|
};
|
|
3994
3998
|
|
|
3995
3999
|
var dashboard$1 = "Dashboard";
|
|
@@ -4017,6 +4021,7 @@ var students_by_designation$1 = "Students by Designation";
|
|
|
4017
4021
|
var calendar$1 = "Calendar";
|
|
4018
4022
|
var gender$1 = "Gender";
|
|
4019
4023
|
var grade$1 = "Grade";
|
|
4024
|
+
var grades$1 = "Grades";
|
|
4020
4025
|
var current_grade$1 = "Current Grade";
|
|
4021
4026
|
var student_name$1 = "Student name";
|
|
4022
4027
|
var teacher_name$1 = "Teacher name";
|
|
@@ -5948,6 +5953,7 @@ var all_of_the_students_marked_as_feeling_safe$1 = "All of the students marked a
|
|
|
5948
5953
|
var integrations$1 = "Integrations";
|
|
5949
5954
|
var open_responses$1 = "Open Responses";
|
|
5950
5955
|
var this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it$1 = "This survey was sent all survey links that were sent will be invalid. Are you sure to delete it";
|
|
5956
|
+
var assign_teacher$1 = "Assign Teacher";
|
|
5951
5957
|
var lang_uk = {
|
|
5952
5958
|
dashboard: dashboard$1,
|
|
5953
5959
|
user: user$1,
|
|
@@ -5975,6 +5981,7 @@ var lang_uk = {
|
|
|
5975
5981
|
calendar: calendar$1,
|
|
5976
5982
|
gender: gender$1,
|
|
5977
5983
|
grade: grade$1,
|
|
5984
|
+
grades: grades$1,
|
|
5978
5985
|
current_grade: current_grade$1,
|
|
5979
5986
|
student_name: student_name$1,
|
|
5980
5987
|
teacher_name: teacher_name$1,
|
|
@@ -7941,7 +7948,8 @@ var lang_uk = {
|
|
|
7941
7948
|
integrations: integrations$1,
|
|
7942
7949
|
"this_check_in_will_be_deleted_from_all_databases._are_you_sure_you_want_to_continue?": "This check-in will be deleted from all databases. Are you sure you want to continue?",
|
|
7943
7950
|
open_responses: open_responses$1,
|
|
7944
|
-
this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it: this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it$1
|
|
7951
|
+
this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it: this_survey_was_sent_all_survey_links_that_were_sent_will_be_invalid_are_you_sure_to_delete_it$1,
|
|
7952
|
+
assign_teacher: assign_teacher$1
|
|
7945
7953
|
};
|
|
7946
7954
|
|
|
7947
7955
|
var dashboard$2 = "لوحة المعلومات";
|
|
@@ -39749,212 +39757,6 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
|
|
|
39749
39757
|
})), t("log_out")))));
|
|
39750
39758
|
};
|
|
39751
39759
|
|
|
39752
|
-
var apiGetLanguage = function apiGetLanguage() {
|
|
39753
|
-
return api.get(BASE_URL + "/api/language");
|
|
39754
|
-
};
|
|
39755
|
-
|
|
39756
|
-
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
39757
|
-
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
39758
|
-
};
|
|
39759
|
-
|
|
39760
|
-
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
39761
|
-
|
|
39762
|
-
var useLanguages = function useLanguages() {
|
|
39763
|
-
var dispatch = reactRedux.useDispatch();
|
|
39764
|
-
|
|
39765
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
39766
|
-
i18n = _useTranslation.i18n;
|
|
39767
|
-
|
|
39768
|
-
var language = reactRedux.useSelector(function (state) {
|
|
39769
|
-
return state.common.language;
|
|
39770
|
-
});
|
|
39771
|
-
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
39772
|
-
|
|
39773
|
-
var _useState = React.useState([]),
|
|
39774
|
-
languageList = _useState[0],
|
|
39775
|
-
setLanguageList = _useState[1];
|
|
39776
|
-
|
|
39777
|
-
var _useState2 = React.useState(false),
|
|
39778
|
-
dropdownOpen = _useState2[0],
|
|
39779
|
-
setDropdownOpen = _useState2[1];
|
|
39780
|
-
|
|
39781
|
-
var _useState3 = React.useState(defaultLanguage),
|
|
39782
|
-
currentLang = _useState3[0],
|
|
39783
|
-
setCurrentLang = _useState3[1];
|
|
39784
|
-
|
|
39785
|
-
var toggle = function toggle() {
|
|
39786
|
-
return setDropdownOpen(function (prevState) {
|
|
39787
|
-
return !prevState;
|
|
39788
|
-
});
|
|
39789
|
-
};
|
|
39790
|
-
|
|
39791
|
-
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
39792
|
-
try {
|
|
39793
|
-
var _temp3 = function _temp3() {
|
|
39794
|
-
dispatch(setLoading(false));
|
|
39795
|
-
};
|
|
39796
|
-
|
|
39797
|
-
dispatch(setLoading(true));
|
|
39798
|
-
|
|
39799
|
-
var _temp4 = _catch(function () {
|
|
39800
|
-
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
39801
|
-
i18n.changeLanguage(lang);
|
|
39802
|
-
setCurrentLang(lang);
|
|
39803
|
-
dispatch(setLanguage(lang));
|
|
39804
|
-
});
|
|
39805
|
-
}, function (err) {
|
|
39806
|
-
var _err$response, _err$response$data;
|
|
39807
|
-
|
|
39808
|
-
dispatch(setAlert({
|
|
39809
|
-
type: "danger",
|
|
39810
|
-
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
|
|
39811
|
-
}));
|
|
39812
|
-
});
|
|
39813
|
-
|
|
39814
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
39815
|
-
} catch (e) {
|
|
39816
|
-
return Promise.reject(e);
|
|
39817
|
-
}
|
|
39818
|
-
};
|
|
39819
|
-
|
|
39820
|
-
var getListLanguage = function getListLanguage() {
|
|
39821
|
-
try {
|
|
39822
|
-
var _temp6 = _catch(function () {
|
|
39823
|
-
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
39824
|
-
setLanguageList(res.data);
|
|
39825
|
-
});
|
|
39826
|
-
}, function (err) {
|
|
39827
|
-
var _err$response2, _err$response2$data;
|
|
39828
|
-
|
|
39829
|
-
dispatch(setAlert({
|
|
39830
|
-
type: "danger",
|
|
39831
|
-
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
|
|
39832
|
-
}));
|
|
39833
|
-
});
|
|
39834
|
-
|
|
39835
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
39836
|
-
} catch (e) {
|
|
39837
|
-
return Promise.reject(e);
|
|
39838
|
-
}
|
|
39839
|
-
};
|
|
39840
|
-
|
|
39841
|
-
React.useEffect(function () {
|
|
39842
|
-
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
39843
|
-
getListLanguage();
|
|
39844
|
-
}, []);
|
|
39845
|
-
return {
|
|
39846
|
-
languageList: languageList,
|
|
39847
|
-
toggle: toggle,
|
|
39848
|
-
dropdownOpen: dropdownOpen,
|
|
39849
|
-
currentLang: currentLang,
|
|
39850
|
-
changeLanguageApp: changeLanguageApp,
|
|
39851
|
-
setCurrentLang: setCurrentLang
|
|
39852
|
-
};
|
|
39853
|
-
};
|
|
39854
|
-
|
|
39855
|
-
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
39856
|
-
var _useLanguages = useLanguages(),
|
|
39857
|
-
languageList = _useLanguages.languageList,
|
|
39858
|
-
toggle = _useLanguages.toggle,
|
|
39859
|
-
dropdownOpen = _useLanguages.dropdownOpen,
|
|
39860
|
-
currentLang = _useLanguages.currentLang,
|
|
39861
|
-
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
39862
|
-
|
|
39863
|
-
var currentLanguage = React.useMemo(function () {
|
|
39864
|
-
var current = languageList.find(function (i) {
|
|
39865
|
-
return i.code === currentLang;
|
|
39866
|
-
});
|
|
39867
|
-
if (!current) return null;
|
|
39868
|
-
return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
|
|
39869
|
-
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
39870
|
-
src: "" + getStaticFileUrl(current.image)
|
|
39871
|
-
}), " ", current.name);
|
|
39872
|
-
}, [currentLang, languageList]);
|
|
39873
|
-
return React__default.createElement(reactstrap.Dropdown, {
|
|
39874
|
-
isOpen: dropdownOpen,
|
|
39875
|
-
toggle: toggle,
|
|
39876
|
-
className: "" + styles["dropdown-menu"]
|
|
39877
|
-
}, React__default.createElement(reactstrap.DropdownToggle, {
|
|
39878
|
-
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
39879
|
-
}, React__default.createElement("span", {
|
|
39880
|
-
style: {
|
|
39881
|
-
color: "#000",
|
|
39882
|
-
textTransform: "capitalize",
|
|
39883
|
-
display: 'flex',
|
|
39884
|
-
alignItems: 'center'
|
|
39885
|
-
}
|
|
39886
|
-
}, currentLanguage, React__default.createElement(bs.BsChevronDown, {
|
|
39887
|
-
className: "ml-2",
|
|
39888
|
-
style: {
|
|
39889
|
-
fontSize: '10px'
|
|
39890
|
-
}
|
|
39891
|
-
}))), React__default.createElement(reactstrap.DropdownMenu, {
|
|
39892
|
-
className: styles["dropdown-content-language"]
|
|
39893
|
-
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
39894
|
-
return React__default.createElement(reactstrap.DropdownItem, {
|
|
39895
|
-
key: lang.code,
|
|
39896
|
-
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
39897
|
-
onClick: function onClick() {
|
|
39898
|
-
return changeLanguageApp(lang.code);
|
|
39899
|
-
}
|
|
39900
|
-
}, React__default.createElement("div", {
|
|
39901
|
-
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
39902
|
-
}, React__default.createElement("span", {
|
|
39903
|
-
className: "mr-2 d-flex hover-opacity"
|
|
39904
|
-
}, React__default.createElement("img", {
|
|
39905
|
-
style: {
|
|
39906
|
-
width: "30px",
|
|
39907
|
-
height: "25px",
|
|
39908
|
-
borderRadius: "5px"
|
|
39909
|
-
},
|
|
39910
|
-
src: getStaticFileUrl(lang.image)
|
|
39911
|
-
})), lang.name));
|
|
39912
|
-
})));
|
|
39913
|
-
};
|
|
39914
|
-
|
|
39915
|
-
var TheHeader = function TheHeader(_ref) {
|
|
39916
|
-
var onToggleModel = _ref.onToggleModel;
|
|
39917
|
-
var dispatch = reactRedux.useDispatch();
|
|
39918
|
-
var sidebarShow = reactRedux.useSelector(function (state) {
|
|
39919
|
-
return state.common.sidebarShow;
|
|
39920
|
-
});
|
|
39921
|
-
|
|
39922
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
39923
|
-
t = _useTranslation.t;
|
|
39924
|
-
|
|
39925
|
-
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
39926
|
-
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
39927
|
-
dispatch(setSidebar(val));
|
|
39928
|
-
};
|
|
39929
|
-
|
|
39930
|
-
var isDistrict = window.location.host.includes("-district");
|
|
39931
|
-
return React__default.createElement(react.CHeader, {
|
|
39932
|
-
withSubheader: true,
|
|
39933
|
-
className: "d-flex align-items-center justify-content-end"
|
|
39934
|
-
}, React__default.createElement(react.CToggler, {
|
|
39935
|
-
inHeader: true,
|
|
39936
|
-
className: "ml-md-3 d-lg-none",
|
|
39937
|
-
onClick: toggleSidebarMobile
|
|
39938
|
-
}), React__default.createElement(react.CHeaderBrand, {
|
|
39939
|
-
className: "mx-auto flex-grow-1 d-lg-none",
|
|
39940
|
-
to: "/"
|
|
39941
|
-
}, React__default.createElement("img", {
|
|
39942
|
-
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
39943
|
-
className: styles["header-logo"]
|
|
39944
|
-
})), React__default.createElement(react.CHeaderNav, {
|
|
39945
|
-
className: "pr-3"
|
|
39946
|
-
}, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
|
|
39947
|
-
className: "mr-3",
|
|
39948
|
-
style: {
|
|
39949
|
-
color: '#000'
|
|
39950
|
-
},
|
|
39951
|
-
href: '/privacy-policy',
|
|
39952
|
-
target: "blank"
|
|
39953
|
-
}, t("privacy_policy")), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
|
|
39954
|
-
onToggleModel: onToggleModel
|
|
39955
|
-
})));
|
|
39956
|
-
};
|
|
39957
|
-
|
|
39958
39760
|
var TITLE$3 = "Not found";
|
|
39959
39761
|
|
|
39960
39762
|
var NotFound = function NotFound() {
|
|
@@ -40012,258 +39814,6 @@ var TheContent = function TheContent(_ref) {
|
|
|
40012
39814
|
|
|
40013
39815
|
var TheContent$1 = React__default.memo(TheContent);
|
|
40014
39816
|
|
|
40015
|
-
var loadingStyle = {
|
|
40016
|
-
minWidth: "100vw",
|
|
40017
|
-
minHeight: "100vh",
|
|
40018
|
-
position: "fixed",
|
|
40019
|
-
top: 0,
|
|
40020
|
-
left: 0,
|
|
40021
|
-
zIndex: 999999999,
|
|
40022
|
-
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
40023
|
-
display: "flex",
|
|
40024
|
-
justifyContent: "center",
|
|
40025
|
-
alignItems: "center"
|
|
40026
|
-
};
|
|
40027
|
-
|
|
40028
|
-
var Loading = function Loading() {
|
|
40029
|
-
var isLoading = reactRedux.useSelector(function (state) {
|
|
40030
|
-
return state.common.isLoading;
|
|
40031
|
-
});
|
|
40032
|
-
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
40033
|
-
return isLoading ? React__default.createElement("div", {
|
|
40034
|
-
style: loadingStyle
|
|
40035
|
-
}, React__default.createElement("div", {
|
|
40036
|
-
className: "spinner-border text-secondary",
|
|
40037
|
-
role: "status"
|
|
40038
|
-
}, React__default.createElement("span", {
|
|
40039
|
-
className: "sr-only"
|
|
40040
|
-
}, "Loading..."))) : null;
|
|
40041
|
-
};
|
|
40042
|
-
|
|
40043
|
-
var firstCheckToken = function firstCheckToken() {
|
|
40044
|
-
return Promise.resolve(_catch(function () {
|
|
40045
|
-
var token = getAccessToken();
|
|
40046
|
-
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
40047
|
-
return tokenStatus.data ? true : false;
|
|
40048
|
-
}) : false;
|
|
40049
|
-
}, function () {
|
|
40050
|
-
return false;
|
|
40051
|
-
}));
|
|
40052
|
-
};
|
|
40053
|
-
|
|
40054
|
-
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
40055
|
-
if (!Array.isArray(userRoles)) {
|
|
40056
|
-
return false;
|
|
40057
|
-
}
|
|
40058
|
-
|
|
40059
|
-
if (Array.isArray(componentRoles)) {
|
|
40060
|
-
var intersects = userRoles.filter(function (i) {
|
|
40061
|
-
return componentRoles.includes(i);
|
|
40062
|
-
});
|
|
40063
|
-
return intersects.length > 0;
|
|
40064
|
-
}
|
|
40065
|
-
|
|
40066
|
-
return true;
|
|
40067
|
-
};
|
|
40068
|
-
|
|
40069
|
-
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
40070
|
-
var _handleUserRole;
|
|
40071
|
-
|
|
40072
|
-
var open = _ref.open,
|
|
40073
|
-
onToggleModel = _ref.onToggleModel;
|
|
40074
|
-
var dispatch = reactRedux.useDispatch();
|
|
40075
|
-
|
|
40076
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
40077
|
-
t = _useTranslation.t;
|
|
40078
|
-
|
|
40079
|
-
var history = reactRouterDom.useHistory();
|
|
40080
|
-
var pathname = window.location.pathname;
|
|
40081
|
-
var user = reactRedux.useSelector(function (state) {
|
|
40082
|
-
return state.common.user;
|
|
40083
|
-
});
|
|
40084
|
-
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
40085
|
-
|
|
40086
|
-
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
40087
|
-
dispatch(setLoading(true));
|
|
40088
|
-
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
40089
|
-
dispatch(setUser(_extends({}, user, {
|
|
40090
|
-
roles: roleSelect
|
|
40091
|
-
})));
|
|
40092
|
-
localStorage.setItem("ROLES", roleSelect.toString());
|
|
40093
|
-
onToggleModel();
|
|
40094
|
-
|
|
40095
|
-
if (roles.includes("Parent")) {
|
|
40096
|
-
history.push("/parent");
|
|
40097
|
-
} else if (roles.includes("Admin")) {
|
|
40098
|
-
history.push("/admin/home");
|
|
40099
|
-
} else {
|
|
40100
|
-
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
40101
|
-
}
|
|
40102
|
-
};
|
|
40103
|
-
|
|
40104
|
-
return React__default.createElement(reactstrap.Modal, {
|
|
40105
|
-
isOpen: open,
|
|
40106
|
-
toggle: function toggle() {
|
|
40107
|
-
return onToggleModel();
|
|
40108
|
-
},
|
|
40109
|
-
className: "" + styles["model-switch-roles"],
|
|
40110
|
-
centered: true
|
|
40111
|
-
}, React__default.createElement("p", {
|
|
40112
|
-
className: "" + styles["title"]
|
|
40113
|
-
}, 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) {
|
|
40114
|
-
return React__default.createElement("p", {
|
|
40115
|
-
key: r,
|
|
40116
|
-
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" : ""],
|
|
40117
|
-
onClick: function onClick() {
|
|
40118
|
-
return handleSelectUserRoles([r]);
|
|
40119
|
-
}
|
|
40120
|
-
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
40121
|
-
})));
|
|
40122
|
-
};
|
|
40123
|
-
|
|
40124
|
-
var TheLayout = function TheLayout(_ref) {
|
|
40125
|
-
var routes = _ref.routes,
|
|
40126
|
-
navigation = _ref.navigation;
|
|
40127
|
-
var history = reactRouterDom.useHistory();
|
|
40128
|
-
var dispatch = reactRedux.useDispatch();
|
|
40129
|
-
var user = reactRedux.useSelector(function (state) {
|
|
40130
|
-
return state.common.user;
|
|
40131
|
-
});
|
|
40132
|
-
var language = reactRedux.useSelector(function (state) {
|
|
40133
|
-
return state.common.language;
|
|
40134
|
-
});
|
|
40135
|
-
|
|
40136
|
-
var _useState = React.useState(false),
|
|
40137
|
-
openModelSelectRole = _useState[0],
|
|
40138
|
-
setOpenModelSelectRole = _useState[1];
|
|
40139
|
-
|
|
40140
|
-
var _useTranslation = reactI18next.useTranslation(),
|
|
40141
|
-
t = _useTranslation.t;
|
|
40142
|
-
|
|
40143
|
-
var location = reactRouterDom.useLocation();
|
|
40144
|
-
var isNotification = location.pathname.includes("notifications");
|
|
40145
|
-
var isDistrict = window.location.host.includes("-district");
|
|
40146
|
-
|
|
40147
|
-
var handleToggleModel = function handleToggleModel() {
|
|
40148
|
-
setOpenModelSelectRole(!openModelSelectRole);
|
|
40149
|
-
};
|
|
40150
|
-
|
|
40151
|
-
var authRoutes = React.useMemo(function () {
|
|
40152
|
-
return routes.filter(function (route) {
|
|
40153
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
40154
|
-
}).filter(function (route) {
|
|
40155
|
-
return !!route.isDistrict === isDistrict;
|
|
40156
|
-
});
|
|
40157
|
-
}, [user, language]);
|
|
40158
|
-
var authNavigations = React.useMemo(function () {
|
|
40159
|
-
return navigation.map(function (item) {
|
|
40160
|
-
var _item$_children, _item$_children2;
|
|
40161
|
-
|
|
40162
|
-
return _extends({}, item, {
|
|
40163
|
-
name: t(item.name),
|
|
40164
|
-
_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) {
|
|
40165
|
-
return _extends({}, x, {
|
|
40166
|
-
name: t(x.name)
|
|
40167
|
-
});
|
|
40168
|
-
}) : undefined
|
|
40169
|
-
});
|
|
40170
|
-
}).filter(function (nav) {
|
|
40171
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
40172
|
-
}).filter(function (nav) {
|
|
40173
|
-
return !!nav.isDistrict === isDistrict;
|
|
40174
|
-
});
|
|
40175
|
-
}, [user, language]);
|
|
40176
|
-
|
|
40177
|
-
var getInformationSetting = function getInformationSetting() {
|
|
40178
|
-
try {
|
|
40179
|
-
var _temp2 = _catch(function () {
|
|
40180
|
-
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
40181
|
-
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
40182
|
-
});
|
|
40183
|
-
}, function (err) {
|
|
40184
|
-
console.error(err);
|
|
40185
|
-
});
|
|
40186
|
-
|
|
40187
|
-
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
40188
|
-
} catch (e) {
|
|
40189
|
-
return Promise.reject(e);
|
|
40190
|
-
}
|
|
40191
|
-
};
|
|
40192
|
-
|
|
40193
|
-
React.useEffect(function () {
|
|
40194
|
-
checkAuthentication();
|
|
40195
|
-
}, []);
|
|
40196
|
-
React.useEffect(function () {
|
|
40197
|
-
getInformationSetting();
|
|
40198
|
-
}, [location.pathname]);
|
|
40199
|
-
|
|
40200
|
-
var checkAuthentication = function checkAuthentication() {
|
|
40201
|
-
try {
|
|
40202
|
-
var _temp4 = _catch(function () {
|
|
40203
|
-
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
40204
|
-
tokenStatus ? loadInfo() : resetAuth();
|
|
40205
|
-
});
|
|
40206
|
-
}, function () {
|
|
40207
|
-
resetAuth();
|
|
40208
|
-
});
|
|
40209
|
-
|
|
40210
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
40211
|
-
} catch (e) {
|
|
40212
|
-
return Promise.reject(e);
|
|
40213
|
-
}
|
|
40214
|
-
};
|
|
40215
|
-
|
|
40216
|
-
var loadInfo = function loadInfo() {
|
|
40217
|
-
try {
|
|
40218
|
-
var _temp6 = _catch(function () {
|
|
40219
|
-
return Promise.resolve(getInfo()).then(function (info) {
|
|
40220
|
-
var _info$data, _info$data$roles;
|
|
40221
|
-
|
|
40222
|
-
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"))) {
|
|
40223
|
-
resetAuth();
|
|
40224
|
-
}
|
|
40225
|
-
|
|
40226
|
-
dispatch(setUser(info.data));
|
|
40227
|
-
});
|
|
40228
|
-
}, function () {
|
|
40229
|
-
resetAuth();
|
|
40230
|
-
});
|
|
40231
|
-
|
|
40232
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
40233
|
-
} catch (e) {
|
|
40234
|
-
return Promise.reject(e);
|
|
40235
|
-
}
|
|
40236
|
-
};
|
|
40237
|
-
|
|
40238
|
-
var resetAuth = function resetAuth() {
|
|
40239
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
40240
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
40241
|
-
localStorage.removeItem("ROLES");
|
|
40242
|
-
history.push("/");
|
|
40243
|
-
};
|
|
40244
|
-
|
|
40245
|
-
if (!user) {
|
|
40246
|
-
return React__default.createElement(Loading, null);
|
|
40247
|
-
}
|
|
40248
|
-
|
|
40249
|
-
return React__default.createElement("div", {
|
|
40250
|
-
className: "c-app c-default-layout"
|
|
40251
|
-
}, !isNotification && React__default.createElement(TheSidebar, {
|
|
40252
|
-
navigation: authNavigations
|
|
40253
|
-
}), React__default.createElement("div", {
|
|
40254
|
-
className: "c-wrapper"
|
|
40255
|
-
}, !isNotification && React__default.createElement(TheHeader, {
|
|
40256
|
-
onToggleModel: handleToggleModel
|
|
40257
|
-
}), React__default.createElement("div", {
|
|
40258
|
-
className: "c-body bg-white"
|
|
40259
|
-
}, React__default.createElement(TheContent$1, {
|
|
40260
|
-
routes: authRoutes
|
|
40261
|
-
}))), React__default.createElement(ModelSelectRole, {
|
|
40262
|
-
open: openModelSelectRole,
|
|
40263
|
-
onToggleModel: handleToggleModel
|
|
40264
|
-
}));
|
|
40265
|
-
};
|
|
40266
|
-
|
|
40267
39817
|
var buttonTextStyle = {
|
|
40268
39818
|
fontWeight: 500
|
|
40269
39819
|
};
|
|
@@ -40353,7 +39903,15 @@ var CustomPagination = function CustomPagination(props) {
|
|
|
40353
39903
|
options: DEFAULT_PAGE_SIZE_VALUES,
|
|
40354
39904
|
onChange: function onChange(e) {
|
|
40355
39905
|
return changePageSize(e.value);
|
|
40356
|
-
}
|
|
39906
|
+
},
|
|
39907
|
+
styles: {
|
|
39908
|
+
menu: function menu(base) {
|
|
39909
|
+
return _extends({}, base, {
|
|
39910
|
+
zIndex: 9999
|
|
39911
|
+
});
|
|
39912
|
+
}
|
|
39913
|
+
},
|
|
39914
|
+
menuPosition: 'fixed'
|
|
40357
39915
|
})), React__default.createElement(reactstrap.PaginationItem, {
|
|
40358
39916
|
className: "mr-1"
|
|
40359
39917
|
}, React__default.createElement(reactstrap.PaginationLink, {
|
|
@@ -46041,6 +45599,34 @@ var UserDetail = function UserDetail() {
|
|
|
46041
45599
|
});
|
|
46042
45600
|
};
|
|
46043
45601
|
|
|
45602
|
+
var loadingStyle = {
|
|
45603
|
+
minWidth: "100vw",
|
|
45604
|
+
minHeight: "100vh",
|
|
45605
|
+
position: "fixed",
|
|
45606
|
+
top: 0,
|
|
45607
|
+
left: 0,
|
|
45608
|
+
zIndex: 999999999,
|
|
45609
|
+
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
45610
|
+
display: "flex",
|
|
45611
|
+
justifyContent: "center",
|
|
45612
|
+
alignItems: "center"
|
|
45613
|
+
};
|
|
45614
|
+
|
|
45615
|
+
var Loading = function Loading() {
|
|
45616
|
+
var isLoading = reactRedux.useSelector(function (state) {
|
|
45617
|
+
return state.common.isLoading;
|
|
45618
|
+
});
|
|
45619
|
+
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
45620
|
+
return isLoading ? React__default.createElement("div", {
|
|
45621
|
+
style: loadingStyle
|
|
45622
|
+
}, React__default.createElement("div", {
|
|
45623
|
+
className: "spinner-border text-secondary",
|
|
45624
|
+
role: "status"
|
|
45625
|
+
}, React__default.createElement("span", {
|
|
45626
|
+
className: "sr-only"
|
|
45627
|
+
}, "Loading..."))) : null;
|
|
45628
|
+
};
|
|
45629
|
+
|
|
46044
45630
|
var ScrollToTop = function ScrollToTop() {
|
|
46045
45631
|
var _useLocation = reactRouterDom.useLocation(),
|
|
46046
45632
|
pathname = _useLocation.pathname;
|
|
@@ -49060,6 +48646,32 @@ var store = toolkit.configureStore({
|
|
|
49060
48646
|
}
|
|
49061
48647
|
});
|
|
49062
48648
|
|
|
48649
|
+
var firstCheckToken = function firstCheckToken() {
|
|
48650
|
+
return Promise.resolve(_catch(function () {
|
|
48651
|
+
var token = getAccessToken();
|
|
48652
|
+
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
48653
|
+
return tokenStatus.data ? true : false;
|
|
48654
|
+
}) : false;
|
|
48655
|
+
}, function () {
|
|
48656
|
+
return false;
|
|
48657
|
+
}));
|
|
48658
|
+
};
|
|
48659
|
+
|
|
48660
|
+
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
48661
|
+
if (!Array.isArray(userRoles)) {
|
|
48662
|
+
return false;
|
|
48663
|
+
}
|
|
48664
|
+
|
|
48665
|
+
if (Array.isArray(componentRoles)) {
|
|
48666
|
+
var intersects = userRoles.filter(function (i) {
|
|
48667
|
+
return componentRoles.includes(i);
|
|
48668
|
+
});
|
|
48669
|
+
return intersects.length > 0;
|
|
48670
|
+
}
|
|
48671
|
+
|
|
48672
|
+
return true;
|
|
48673
|
+
};
|
|
48674
|
+
|
|
49063
48675
|
var isInViewport = function isInViewport(el) {
|
|
49064
48676
|
var rect = el === null || el === void 0 ? void 0 : el.getBoundingClientRect();
|
|
49065
48677
|
return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);
|
|
@@ -49095,6 +48707,412 @@ var generateRandomString = (function () {
|
|
|
49095
48707
|
|
|
49096
48708
|
var amplitudeClient = amplitude.getInstance();
|
|
49097
48709
|
|
|
48710
|
+
var apiGetLanguage = function apiGetLanguage() {
|
|
48711
|
+
return api.get(BASE_URL + "/api/language");
|
|
48712
|
+
};
|
|
48713
|
+
|
|
48714
|
+
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
48715
|
+
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
48716
|
+
};
|
|
48717
|
+
|
|
48718
|
+
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
48719
|
+
|
|
48720
|
+
var useLanguages = function useLanguages() {
|
|
48721
|
+
var dispatch = reactRedux.useDispatch();
|
|
48722
|
+
|
|
48723
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
48724
|
+
i18n = _useTranslation.i18n;
|
|
48725
|
+
|
|
48726
|
+
var language = reactRedux.useSelector(function (state) {
|
|
48727
|
+
return state.common.language;
|
|
48728
|
+
});
|
|
48729
|
+
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
48730
|
+
|
|
48731
|
+
var _useState = React.useState([]),
|
|
48732
|
+
languageList = _useState[0],
|
|
48733
|
+
setLanguageList = _useState[1];
|
|
48734
|
+
|
|
48735
|
+
var _useState2 = React.useState(false),
|
|
48736
|
+
dropdownOpen = _useState2[0],
|
|
48737
|
+
setDropdownOpen = _useState2[1];
|
|
48738
|
+
|
|
48739
|
+
var _useState3 = React.useState(defaultLanguage),
|
|
48740
|
+
currentLang = _useState3[0],
|
|
48741
|
+
setCurrentLang = _useState3[1];
|
|
48742
|
+
|
|
48743
|
+
var toggle = function toggle() {
|
|
48744
|
+
return setDropdownOpen(function (prevState) {
|
|
48745
|
+
return !prevState;
|
|
48746
|
+
});
|
|
48747
|
+
};
|
|
48748
|
+
|
|
48749
|
+
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
48750
|
+
try {
|
|
48751
|
+
var _temp3 = function _temp3() {
|
|
48752
|
+
dispatch(setLoading(false));
|
|
48753
|
+
};
|
|
48754
|
+
|
|
48755
|
+
dispatch(setLoading(true));
|
|
48756
|
+
|
|
48757
|
+
var _temp4 = _catch(function () {
|
|
48758
|
+
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
48759
|
+
i18n.changeLanguage(lang);
|
|
48760
|
+
setCurrentLang(lang);
|
|
48761
|
+
dispatch(setLanguage(lang));
|
|
48762
|
+
});
|
|
48763
|
+
}, function (err) {
|
|
48764
|
+
var _err$response, _err$response$data;
|
|
48765
|
+
|
|
48766
|
+
dispatch(setAlert({
|
|
48767
|
+
type: "danger",
|
|
48768
|
+
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
|
|
48769
|
+
}));
|
|
48770
|
+
});
|
|
48771
|
+
|
|
48772
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
48773
|
+
} catch (e) {
|
|
48774
|
+
return Promise.reject(e);
|
|
48775
|
+
}
|
|
48776
|
+
};
|
|
48777
|
+
|
|
48778
|
+
var getListLanguage = function getListLanguage() {
|
|
48779
|
+
try {
|
|
48780
|
+
var _temp6 = _catch(function () {
|
|
48781
|
+
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
48782
|
+
setLanguageList(res.data);
|
|
48783
|
+
});
|
|
48784
|
+
}, function (err) {
|
|
48785
|
+
var _err$response2, _err$response2$data;
|
|
48786
|
+
|
|
48787
|
+
dispatch(setAlert({
|
|
48788
|
+
type: "danger",
|
|
48789
|
+
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
|
|
48790
|
+
}));
|
|
48791
|
+
});
|
|
48792
|
+
|
|
48793
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
48794
|
+
} catch (e) {
|
|
48795
|
+
return Promise.reject(e);
|
|
48796
|
+
}
|
|
48797
|
+
};
|
|
48798
|
+
|
|
48799
|
+
React.useEffect(function () {
|
|
48800
|
+
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
48801
|
+
getListLanguage();
|
|
48802
|
+
}, []);
|
|
48803
|
+
return {
|
|
48804
|
+
languageList: languageList,
|
|
48805
|
+
toggle: toggle,
|
|
48806
|
+
dropdownOpen: dropdownOpen,
|
|
48807
|
+
currentLang: currentLang,
|
|
48808
|
+
changeLanguageApp: changeLanguageApp,
|
|
48809
|
+
setCurrentLang: setCurrentLang
|
|
48810
|
+
};
|
|
48811
|
+
};
|
|
48812
|
+
|
|
48813
|
+
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
48814
|
+
var _useLanguages = useLanguages(),
|
|
48815
|
+
languageList = _useLanguages.languageList,
|
|
48816
|
+
toggle = _useLanguages.toggle,
|
|
48817
|
+
dropdownOpen = _useLanguages.dropdownOpen,
|
|
48818
|
+
currentLang = _useLanguages.currentLang,
|
|
48819
|
+
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
48820
|
+
|
|
48821
|
+
var currentLanguage = React.useMemo(function () {
|
|
48822
|
+
var current = languageList.find(function (i) {
|
|
48823
|
+
return i.code === currentLang;
|
|
48824
|
+
});
|
|
48825
|
+
if (!current) return null;
|
|
48826
|
+
return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
|
|
48827
|
+
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
48828
|
+
src: "" + getStaticFileUrl(current.image)
|
|
48829
|
+
}), " ", current.name);
|
|
48830
|
+
}, [currentLang, languageList]);
|
|
48831
|
+
return React__default.createElement(reactstrap.Dropdown, {
|
|
48832
|
+
isOpen: dropdownOpen,
|
|
48833
|
+
toggle: toggle,
|
|
48834
|
+
className: "" + styles["dropdown-menu"]
|
|
48835
|
+
}, React__default.createElement(reactstrap.DropdownToggle, {
|
|
48836
|
+
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
48837
|
+
}, React__default.createElement("span", {
|
|
48838
|
+
style: {
|
|
48839
|
+
color: "#000",
|
|
48840
|
+
textTransform: "capitalize",
|
|
48841
|
+
display: 'flex',
|
|
48842
|
+
alignItems: 'center'
|
|
48843
|
+
}
|
|
48844
|
+
}, currentLanguage, React__default.createElement(bs.BsChevronDown, {
|
|
48845
|
+
className: "ml-2",
|
|
48846
|
+
style: {
|
|
48847
|
+
fontSize: '10px'
|
|
48848
|
+
}
|
|
48849
|
+
}))), React__default.createElement(reactstrap.DropdownMenu, {
|
|
48850
|
+
className: styles["dropdown-content-language"]
|
|
48851
|
+
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
48852
|
+
return React__default.createElement(reactstrap.DropdownItem, {
|
|
48853
|
+
key: lang.code,
|
|
48854
|
+
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
48855
|
+
onClick: function onClick() {
|
|
48856
|
+
return changeLanguageApp(lang.code);
|
|
48857
|
+
}
|
|
48858
|
+
}, React__default.createElement("div", {
|
|
48859
|
+
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
48860
|
+
}, React__default.createElement("span", {
|
|
48861
|
+
className: "mr-2 d-flex hover-opacity"
|
|
48862
|
+
}, React__default.createElement("img", {
|
|
48863
|
+
style: {
|
|
48864
|
+
width: "30px",
|
|
48865
|
+
height: "25px",
|
|
48866
|
+
borderRadius: "5px"
|
|
48867
|
+
},
|
|
48868
|
+
src: getStaticFileUrl(lang.image)
|
|
48869
|
+
})), lang.name));
|
|
48870
|
+
})));
|
|
48871
|
+
};
|
|
48872
|
+
|
|
48873
|
+
var TheHeader = function TheHeader(_ref) {
|
|
48874
|
+
var onToggleModel = _ref.onToggleModel;
|
|
48875
|
+
var dispatch = reactRedux.useDispatch();
|
|
48876
|
+
var sidebarShow = reactRedux.useSelector(function (state) {
|
|
48877
|
+
return state.common.sidebarShow;
|
|
48878
|
+
});
|
|
48879
|
+
|
|
48880
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
48881
|
+
t = _useTranslation.t;
|
|
48882
|
+
|
|
48883
|
+
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
48884
|
+
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
48885
|
+
dispatch(setSidebar(val));
|
|
48886
|
+
};
|
|
48887
|
+
|
|
48888
|
+
var isDistrict = window.location.host.includes("-district");
|
|
48889
|
+
return React__default.createElement(react.CHeader, {
|
|
48890
|
+
withSubheader: true,
|
|
48891
|
+
className: "d-flex align-items-center justify-content-end"
|
|
48892
|
+
}, React__default.createElement(react.CToggler, {
|
|
48893
|
+
inHeader: true,
|
|
48894
|
+
className: "ml-md-3 d-lg-none",
|
|
48895
|
+
onClick: toggleSidebarMobile
|
|
48896
|
+
}), React__default.createElement(react.CHeaderBrand, {
|
|
48897
|
+
className: "mx-auto flex-grow-1 d-lg-none",
|
|
48898
|
+
to: "/"
|
|
48899
|
+
}, React__default.createElement("img", {
|
|
48900
|
+
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
48901
|
+
className: styles["header-logo"]
|
|
48902
|
+
})), React__default.createElement(react.CHeaderNav, {
|
|
48903
|
+
className: "pr-3"
|
|
48904
|
+
}, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
|
|
48905
|
+
className: "mr-3",
|
|
48906
|
+
style: {
|
|
48907
|
+
color: '#000'
|
|
48908
|
+
},
|
|
48909
|
+
href: '/privacy-policy',
|
|
48910
|
+
target: "blank"
|
|
48911
|
+
}, t("privacy_policy")), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
|
|
48912
|
+
onToggleModel: onToggleModel
|
|
48913
|
+
})));
|
|
48914
|
+
};
|
|
48915
|
+
|
|
48916
|
+
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
48917
|
+
var _handleUserRole;
|
|
48918
|
+
|
|
48919
|
+
var open = _ref.open,
|
|
48920
|
+
onToggleModel = _ref.onToggleModel;
|
|
48921
|
+
var dispatch = reactRedux.useDispatch();
|
|
48922
|
+
|
|
48923
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
48924
|
+
t = _useTranslation.t;
|
|
48925
|
+
|
|
48926
|
+
var history = reactRouterDom.useHistory();
|
|
48927
|
+
var pathname = window.location.pathname;
|
|
48928
|
+
var user = reactRedux.useSelector(function (state) {
|
|
48929
|
+
return state.common.user;
|
|
48930
|
+
});
|
|
48931
|
+
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
48932
|
+
|
|
48933
|
+
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
48934
|
+
dispatch(setLoading(true));
|
|
48935
|
+
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
48936
|
+
dispatch(setUser(_extends({}, user, {
|
|
48937
|
+
roles: roleSelect
|
|
48938
|
+
})));
|
|
48939
|
+
localStorage.setItem("ROLES", roleSelect.toString());
|
|
48940
|
+
onToggleModel();
|
|
48941
|
+
|
|
48942
|
+
if (roles.includes("Parent")) {
|
|
48943
|
+
history.push("/parent");
|
|
48944
|
+
} else if (roles.includes("Admin")) {
|
|
48945
|
+
history.push("/admin/home");
|
|
48946
|
+
} else {
|
|
48947
|
+
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
48948
|
+
}
|
|
48949
|
+
};
|
|
48950
|
+
|
|
48951
|
+
return React__default.createElement(reactstrap.Modal, {
|
|
48952
|
+
isOpen: open,
|
|
48953
|
+
toggle: function toggle() {
|
|
48954
|
+
return onToggleModel();
|
|
48955
|
+
},
|
|
48956
|
+
className: "" + styles["model-switch-roles"],
|
|
48957
|
+
centered: true
|
|
48958
|
+
}, React__default.createElement("p", {
|
|
48959
|
+
className: "" + styles["title"]
|
|
48960
|
+
}, 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) {
|
|
48961
|
+
return React__default.createElement("p", {
|
|
48962
|
+
key: r,
|
|
48963
|
+
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" : ""],
|
|
48964
|
+
onClick: function onClick() {
|
|
48965
|
+
return handleSelectUserRoles([r]);
|
|
48966
|
+
}
|
|
48967
|
+
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
48968
|
+
})));
|
|
48969
|
+
};
|
|
48970
|
+
|
|
48971
|
+
var TheLayout = function TheLayout(_ref) {
|
|
48972
|
+
var routes = _ref.routes,
|
|
48973
|
+
navigation = _ref.navigation;
|
|
48974
|
+
var history = reactRouterDom.useHistory();
|
|
48975
|
+
var dispatch = reactRedux.useDispatch();
|
|
48976
|
+
var user = reactRedux.useSelector(function (state) {
|
|
48977
|
+
return state.common.user;
|
|
48978
|
+
});
|
|
48979
|
+
var language = reactRedux.useSelector(function (state) {
|
|
48980
|
+
return state.common.language;
|
|
48981
|
+
});
|
|
48982
|
+
|
|
48983
|
+
var _useState = React.useState(false),
|
|
48984
|
+
openModelSelectRole = _useState[0],
|
|
48985
|
+
setOpenModelSelectRole = _useState[1];
|
|
48986
|
+
|
|
48987
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
48988
|
+
t = _useTranslation.t;
|
|
48989
|
+
|
|
48990
|
+
var location = reactRouterDom.useLocation();
|
|
48991
|
+
var isNotification = location.pathname.includes("notifications");
|
|
48992
|
+
var isDistrict = window.location.host.includes("-district");
|
|
48993
|
+
|
|
48994
|
+
var handleToggleModel = function handleToggleModel() {
|
|
48995
|
+
setOpenModelSelectRole(!openModelSelectRole);
|
|
48996
|
+
};
|
|
48997
|
+
|
|
48998
|
+
var authRoutes = React.useMemo(function () {
|
|
48999
|
+
return routes.filter(function (route) {
|
|
49000
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
49001
|
+
}).filter(function (route) {
|
|
49002
|
+
return !!route.isDistrict === isDistrict;
|
|
49003
|
+
});
|
|
49004
|
+
}, [user, language]);
|
|
49005
|
+
var authNavigations = React.useMemo(function () {
|
|
49006
|
+
return navigation.map(function (item) {
|
|
49007
|
+
var _item$_children, _item$_children2;
|
|
49008
|
+
|
|
49009
|
+
return _extends({}, item, {
|
|
49010
|
+
name: t(item.name),
|
|
49011
|
+
_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) {
|
|
49012
|
+
return _extends({}, x, {
|
|
49013
|
+
name: t(x.name)
|
|
49014
|
+
});
|
|
49015
|
+
}) : undefined
|
|
49016
|
+
});
|
|
49017
|
+
}).filter(function (nav) {
|
|
49018
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
49019
|
+
}).filter(function (nav) {
|
|
49020
|
+
return !!nav.isDistrict === isDistrict;
|
|
49021
|
+
});
|
|
49022
|
+
}, [user, language]);
|
|
49023
|
+
|
|
49024
|
+
var getInformationSetting = function getInformationSetting() {
|
|
49025
|
+
try {
|
|
49026
|
+
var _temp2 = _catch(function () {
|
|
49027
|
+
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
49028
|
+
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
49029
|
+
});
|
|
49030
|
+
}, function (err) {
|
|
49031
|
+
console.error(err);
|
|
49032
|
+
});
|
|
49033
|
+
|
|
49034
|
+
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
49035
|
+
} catch (e) {
|
|
49036
|
+
return Promise.reject(e);
|
|
49037
|
+
}
|
|
49038
|
+
};
|
|
49039
|
+
|
|
49040
|
+
React.useEffect(function () {
|
|
49041
|
+
checkAuthentication();
|
|
49042
|
+
}, []);
|
|
49043
|
+
React.useEffect(function () {
|
|
49044
|
+
getInformationSetting();
|
|
49045
|
+
}, [location.pathname]);
|
|
49046
|
+
|
|
49047
|
+
var checkAuthentication = function checkAuthentication() {
|
|
49048
|
+
try {
|
|
49049
|
+
var _temp4 = _catch(function () {
|
|
49050
|
+
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
49051
|
+
tokenStatus ? loadInfo() : resetAuth();
|
|
49052
|
+
});
|
|
49053
|
+
}, function () {
|
|
49054
|
+
resetAuth();
|
|
49055
|
+
});
|
|
49056
|
+
|
|
49057
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
49058
|
+
} catch (e) {
|
|
49059
|
+
return Promise.reject(e);
|
|
49060
|
+
}
|
|
49061
|
+
};
|
|
49062
|
+
|
|
49063
|
+
var loadInfo = function loadInfo() {
|
|
49064
|
+
try {
|
|
49065
|
+
var _temp6 = _catch(function () {
|
|
49066
|
+
return Promise.resolve(getInfo()).then(function (info) {
|
|
49067
|
+
var _info$data, _info$data$roles;
|
|
49068
|
+
|
|
49069
|
+
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"))) {
|
|
49070
|
+
resetAuth();
|
|
49071
|
+
}
|
|
49072
|
+
|
|
49073
|
+
dispatch(setUser(info.data));
|
|
49074
|
+
});
|
|
49075
|
+
}, function () {
|
|
49076
|
+
resetAuth();
|
|
49077
|
+
});
|
|
49078
|
+
|
|
49079
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
49080
|
+
} catch (e) {
|
|
49081
|
+
return Promise.reject(e);
|
|
49082
|
+
}
|
|
49083
|
+
};
|
|
49084
|
+
|
|
49085
|
+
var resetAuth = function resetAuth() {
|
|
49086
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
49087
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
49088
|
+
localStorage.removeItem("ROLES");
|
|
49089
|
+
history.push("/");
|
|
49090
|
+
};
|
|
49091
|
+
|
|
49092
|
+
if (!user) {
|
|
49093
|
+
return React__default.createElement(Loading, null);
|
|
49094
|
+
}
|
|
49095
|
+
|
|
49096
|
+
return React__default.createElement("div", {
|
|
49097
|
+
className: "c-app c-default-layout"
|
|
49098
|
+
}, !isNotification && React__default.createElement(TheSidebar, {
|
|
49099
|
+
navigation: authNavigations
|
|
49100
|
+
}), React__default.createElement("div", {
|
|
49101
|
+
className: "c-wrapper"
|
|
49102
|
+
}, !isNotification && React__default.createElement(TheHeader, {
|
|
49103
|
+
onToggleModel: handleToggleModel
|
|
49104
|
+
}), React__default.createElement("div", {
|
|
49105
|
+
className: "c-body bg-white"
|
|
49106
|
+
}, React__default.createElement(TheContent$1, {
|
|
49107
|
+
routes: authRoutes
|
|
49108
|
+
}))), React__default.createElement(ModelSelectRole, {
|
|
49109
|
+
open: openModelSelectRole,
|
|
49110
|
+
onToggleModel: handleToggleModel
|
|
49111
|
+
}));
|
|
49112
|
+
};
|
|
49113
|
+
|
|
49114
|
+
var amplitudeClient$1 = amplitude.getInstance();
|
|
49115
|
+
|
|
49098
49116
|
Object.defineProperty(exports, 'I18nextProvider', {
|
|
49099
49117
|
enumerable: true,
|
|
49100
49118
|
get: function () {
|
|
@@ -49182,7 +49200,7 @@ exports.UserContainer = UserContainer;
|
|
|
49182
49200
|
exports.UserDetail = UserDetail;
|
|
49183
49201
|
exports.UserList = UserList;
|
|
49184
49202
|
exports.addTab = addTab;
|
|
49185
|
-
exports.amplitudeClient = amplitudeClient;
|
|
49203
|
+
exports.amplitudeClient = amplitudeClient$1;
|
|
49186
49204
|
exports.answerQuestion = answerQuestion;
|
|
49187
49205
|
exports.answerQuestionDataPlayer = answerQuestionDataPlayer;
|
|
49188
49206
|
exports.api = api;
|