mario-core 2.9.415-feedback → 2.9.417-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/containers/Login/views/block/BlockAssignTeacherByCode.d.ts +8 -0
- package/dist/containers/User/hooks/useCSVImportTab.d.ts +2 -0
- package/dist/index.js +599 -563
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +602 -566
- package/dist/index.modern.js.map +1 -1
- package/dist/services/csvImportService.d.ts +2 -0
- package/dist/utils/constants.d.ts +4 -0
- package/package.json +105 -105
package/dist/index.modern.js
CHANGED
|
@@ -2,8 +2,8 @@ import 'bootstrap/dist/css/bootstrap.min.css';
|
|
|
2
2
|
import i18n from 'i18next';
|
|
3
3
|
import { initReactI18next, useTranslation } from 'react-i18next';
|
|
4
4
|
export { I18nextProvider, useTranslation } from 'react-i18next';
|
|
5
|
-
import React, { useCallback, useState, useEffect, useRef,
|
|
6
|
-
import { Input, Form, FormGroup, Row, Col, Navbar, NavbarBrand, Collapse, Nav, NavItem, NavLink, Dropdown, DropdownToggle, DropdownMenu, DropdownItem,
|
|
5
|
+
import React, { useCallback, useState, useEffect, useRef, Suspense, memo, Fragment, forwardRef, useImperativeHandle, useMemo } from 'react';
|
|
6
|
+
import { Input, Form, FormGroup, Row, Col, Navbar, NavbarBrand, Collapse, Nav, NavItem, NavLink, Dropdown, DropdownToggle, DropdownMenu, DropdownItem, Button, Alert, Pagination, PaginationItem, PaginationLink, Table, Label, Modal, ModalHeader, ModalBody, ModalFooter, Popover, PopoverBody, TabContent, TabPane, Card, CardBody, CardText, Tooltip, CustomInput, CardImg, CardTitle, CardHeader } from 'reactstrap';
|
|
7
7
|
import { Link, useLocation, useHistory, Switch, Route, Prompt, useParams } from 'react-router-dom';
|
|
8
8
|
import { useDispatch, useSelector } from 'react-redux';
|
|
9
9
|
import { Formik } from 'formik';
|
|
@@ -17,7 +17,7 @@ import { track, setSessionId, init, Identify, identify } from '@amplitude/analyt
|
|
|
17
17
|
import moment from 'moment';
|
|
18
18
|
import { LogLevel, PublicClientApplication } from '@azure/msal-browser';
|
|
19
19
|
import { GiHamburgerMenu } from 'react-icons/gi';
|
|
20
|
-
import { CSidebar, CSidebarBrand, CSidebarNav, CCreateElement, CSidebarNavDivider, CSidebarNavDropdown, CSidebarNavItem, CSidebarNavTitle, CSidebarFooter, CHeader, CToggler, CHeaderBrand, CHeaderNav
|
|
20
|
+
import { CSidebar, CSidebarBrand, CSidebarNav, CCreateElement, CSidebarNavDivider, CSidebarNavDropdown, CSidebarNavItem, CSidebarNavTitle, CSidebarFooter, CContainer, CHeader, CToggler, CHeaderBrand, CHeaderNav } from '@coreui/react';
|
|
21
21
|
import { CgMenuRight } from 'react-icons/cg';
|
|
22
22
|
import { RiLogoutBoxRLine } from 'react-icons/ri';
|
|
23
23
|
import Pusher from 'pusher-js/with-encryption';
|
|
@@ -2189,6 +2189,7 @@ var save_new_password = "Save new password";
|
|
|
2189
2189
|
var teacher_code = "Teacher code";
|
|
2190
2190
|
var number_of_conversations = "Number of conversations";
|
|
2191
2191
|
var number_of_expected_conversations_based_on_the_goal = "Number of expected conversations based on the goal";
|
|
2192
|
+
var check_in = "Check-in";
|
|
2192
2193
|
var lang_us = {
|
|
2193
2194
|
dashboard: dashboard,
|
|
2194
2195
|
user: user,
|
|
@@ -4394,7 +4395,8 @@ var lang_us = {
|
|
|
4394
4395
|
save_new_password: save_new_password,
|
|
4395
4396
|
teacher_code: teacher_code,
|
|
4396
4397
|
number_of_conversations: number_of_conversations,
|
|
4397
|
-
number_of_expected_conversations_based_on_the_goal: number_of_expected_conversations_based_on_the_goal
|
|
4398
|
+
number_of_expected_conversations_based_on_the_goal: number_of_expected_conversations_based_on_the_goal,
|
|
4399
|
+
check_in: check_in
|
|
4398
4400
|
};
|
|
4399
4401
|
|
|
4400
4402
|
var dashboard$1 = "Dashboard";
|
|
@@ -4412,7 +4414,7 @@ var cancel$1 = "Cancel";
|
|
|
4412
4414
|
var hey$1 = "Hey";
|
|
4413
4415
|
var readiness_to_learn$1 = "Readiness to Learn";
|
|
4414
4416
|
var high_impact_learning_strategies$1 = "High Impact Learning Strategies";
|
|
4415
|
-
var check_in = "Check In";
|
|
4417
|
+
var check_in$1 = "Check In";
|
|
4416
4418
|
var check_ins$1 = "Check Ins";
|
|
4417
4419
|
var reflection$1 = "Reflection";
|
|
4418
4420
|
var conferences$1 = "Conferences";
|
|
@@ -6565,7 +6567,7 @@ var lang_uk = {
|
|
|
6565
6567
|
readiness_to_learn: readiness_to_learn$1,
|
|
6566
6568
|
high_impact_learning_strategies: high_impact_learning_strategies$1,
|
|
6567
6569
|
"1_to_1": "1 to 1",
|
|
6568
|
-
check_in: check_in,
|
|
6570
|
+
check_in: check_in$1,
|
|
6569
6571
|
check_ins: check_ins$1,
|
|
6570
6572
|
reflection: reflection$1,
|
|
6571
6573
|
conferences: conferences$1,
|
|
@@ -8769,7 +8771,7 @@ var cancel$2 = "إلغاء";
|
|
|
8769
8771
|
var hey$2 = "مرحبًا";
|
|
8770
8772
|
var readiness_to_learn$2 = "الاستعداد للتعلم";
|
|
8771
8773
|
var high_impact_learning_strategies$2 = "استراتيجيات التعلم عالية التأثير";
|
|
8772
|
-
var check_in$
|
|
8774
|
+
var check_in$2 = "تسجيل الحضور";
|
|
8773
8775
|
var check_ins$2 = "عمليات تسجيل الحضور";
|
|
8774
8776
|
var reflection$2 = "التفكير";
|
|
8775
8777
|
var conferences$2 = "اللقاءات";
|
|
@@ -10952,7 +10954,7 @@ var lang_ar = {
|
|
|
10952
10954
|
readiness_to_learn: readiness_to_learn$2,
|
|
10953
10955
|
high_impact_learning_strategies: high_impact_learning_strategies$2,
|
|
10954
10956
|
"1_to_1": "1 إلى 1",
|
|
10955
|
-
check_in: check_in$
|
|
10957
|
+
check_in: check_in$2,
|
|
10956
10958
|
check_ins: check_ins$2,
|
|
10957
10959
|
reflection: reflection$2,
|
|
10958
10960
|
conferences: conferences$2,
|
|
@@ -13188,7 +13190,7 @@ var cancel$3 = "Cancelar";
|
|
|
13188
13190
|
var hey$3 = "Hola";
|
|
13189
13191
|
var readiness_to_learn$3 = "Preparación para el aprendizaje";
|
|
13190
13192
|
var high_impact_learning_strategies$3 = "Estrategias de aprendizaje de alto impacto";
|
|
13191
|
-
var check_in$
|
|
13193
|
+
var check_in$3 = "Registro";
|
|
13192
13194
|
var check_ins$3 = "Registro de entrada";
|
|
13193
13195
|
var reflection$3 = "Reflexión";
|
|
13194
13196
|
var conferences$3 = "Conferencias";
|
|
@@ -15371,7 +15373,7 @@ var lang_es = {
|
|
|
15371
15373
|
readiness_to_learn: readiness_to_learn$3,
|
|
15372
15374
|
high_impact_learning_strategies: high_impact_learning_strategies$3,
|
|
15373
15375
|
"1_to_1": "1 a 1",
|
|
15374
|
-
check_in: check_in$
|
|
15376
|
+
check_in: check_in$3,
|
|
15375
15377
|
check_ins: check_ins$3,
|
|
15376
15378
|
reflection: reflection$3,
|
|
15377
15379
|
conferences: conferences$3,
|
|
@@ -17607,7 +17609,7 @@ var cancel$4 = "取消";
|
|
|
17607
17609
|
var hey$4 = "您好";
|
|
17608
17610
|
var readiness_to_learn$4 = "准备学习";
|
|
17609
17611
|
var high_impact_learning_strategies$4 = "高效学习策略";
|
|
17610
|
-
var check_in$
|
|
17612
|
+
var check_in$4 = "签到";
|
|
17611
17613
|
var check_ins$4 = "签到";
|
|
17612
17614
|
var reflection$4 = "反思";
|
|
17613
17615
|
var conferences$4 = "讨论会";
|
|
@@ -19790,7 +19792,7 @@ var lang_zh = {
|
|
|
19790
19792
|
readiness_to_learn: readiness_to_learn$4,
|
|
19791
19793
|
high_impact_learning_strategies: high_impact_learning_strategies$4,
|
|
19792
19794
|
"1_to_1": "一对一",
|
|
19793
|
-
check_in: check_in$
|
|
19795
|
+
check_in: check_in$4,
|
|
19794
19796
|
check_ins: check_ins$4,
|
|
19795
19797
|
reflection: reflection$4,
|
|
19796
19798
|
conferences: conferences$4,
|
|
@@ -22166,6 +22168,12 @@ var LANGUAGES = [{
|
|
|
22166
22168
|
var DEFAULT_LANGUAGE_CODE = "en-US";
|
|
22167
22169
|
var SUPPORTED_LANGUAGES_CODE = ["en-US", "en-GB", "ar", "es", "zh"];
|
|
22168
22170
|
var screenWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
|
|
22171
|
+
var CsvImportType;
|
|
22172
|
+
|
|
22173
|
+
(function (CsvImportType) {
|
|
22174
|
+
CsvImportType[CsvImportType["Teacher"] = 0] = "Teacher";
|
|
22175
|
+
CsvImportType[CsvImportType["Admin"] = 1] = "Admin";
|
|
22176
|
+
})(CsvImportType || (CsvImportType = {}));
|
|
22169
22177
|
|
|
22170
22178
|
var resources$5 = {
|
|
22171
22179
|
"en-US": {
|
|
@@ -41879,212 +41887,6 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
|
|
|
41879
41887
|
})), t("log_out")))));
|
|
41880
41888
|
};
|
|
41881
41889
|
|
|
41882
|
-
var apiGetLanguage = function apiGetLanguage() {
|
|
41883
|
-
return api.get(BASE_URL + "/api/language");
|
|
41884
|
-
};
|
|
41885
|
-
|
|
41886
|
-
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
41887
|
-
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
41888
|
-
};
|
|
41889
|
-
|
|
41890
|
-
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
41891
|
-
|
|
41892
|
-
var useLanguages = function useLanguages() {
|
|
41893
|
-
var dispatch = useDispatch();
|
|
41894
|
-
|
|
41895
|
-
var _useTranslation = useTranslation(),
|
|
41896
|
-
i18n = _useTranslation.i18n;
|
|
41897
|
-
|
|
41898
|
-
var language = useSelector(function (state) {
|
|
41899
|
-
return state.common.language;
|
|
41900
|
-
});
|
|
41901
|
-
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
41902
|
-
|
|
41903
|
-
var _useState = useState([]),
|
|
41904
|
-
languageList = _useState[0],
|
|
41905
|
-
setLanguageList = _useState[1];
|
|
41906
|
-
|
|
41907
|
-
var _useState2 = useState(false),
|
|
41908
|
-
dropdownOpen = _useState2[0],
|
|
41909
|
-
setDropdownOpen = _useState2[1];
|
|
41910
|
-
|
|
41911
|
-
var _useState3 = useState(defaultLanguage),
|
|
41912
|
-
currentLang = _useState3[0],
|
|
41913
|
-
setCurrentLang = _useState3[1];
|
|
41914
|
-
|
|
41915
|
-
var toggle = function toggle() {
|
|
41916
|
-
return setDropdownOpen(function (prevState) {
|
|
41917
|
-
return !prevState;
|
|
41918
|
-
});
|
|
41919
|
-
};
|
|
41920
|
-
|
|
41921
|
-
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
41922
|
-
try {
|
|
41923
|
-
var _temp3 = function _temp3() {
|
|
41924
|
-
dispatch(setLoading(false));
|
|
41925
|
-
};
|
|
41926
|
-
|
|
41927
|
-
dispatch(setLoading(true));
|
|
41928
|
-
|
|
41929
|
-
var _temp4 = _catch(function () {
|
|
41930
|
-
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
41931
|
-
i18n.changeLanguage(lang);
|
|
41932
|
-
setCurrentLang(lang);
|
|
41933
|
-
dispatch(setLanguage(lang));
|
|
41934
|
-
});
|
|
41935
|
-
}, function (err) {
|
|
41936
|
-
var _err$response, _err$response$data;
|
|
41937
|
-
|
|
41938
|
-
dispatch(setAlert({
|
|
41939
|
-
type: "danger",
|
|
41940
|
-
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
|
|
41941
|
-
}));
|
|
41942
|
-
});
|
|
41943
|
-
|
|
41944
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
41945
|
-
} catch (e) {
|
|
41946
|
-
return Promise.reject(e);
|
|
41947
|
-
}
|
|
41948
|
-
};
|
|
41949
|
-
|
|
41950
|
-
var getListLanguage = function getListLanguage() {
|
|
41951
|
-
try {
|
|
41952
|
-
var _temp6 = _catch(function () {
|
|
41953
|
-
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
41954
|
-
setLanguageList(res.data);
|
|
41955
|
-
});
|
|
41956
|
-
}, function (err) {
|
|
41957
|
-
var _err$response2, _err$response2$data;
|
|
41958
|
-
|
|
41959
|
-
dispatch(setAlert({
|
|
41960
|
-
type: "danger",
|
|
41961
|
-
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
|
|
41962
|
-
}));
|
|
41963
|
-
});
|
|
41964
|
-
|
|
41965
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
41966
|
-
} catch (e) {
|
|
41967
|
-
return Promise.reject(e);
|
|
41968
|
-
}
|
|
41969
|
-
};
|
|
41970
|
-
|
|
41971
|
-
useEffect(function () {
|
|
41972
|
-
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
41973
|
-
getListLanguage();
|
|
41974
|
-
}, []);
|
|
41975
|
-
return {
|
|
41976
|
-
languageList: languageList,
|
|
41977
|
-
toggle: toggle,
|
|
41978
|
-
dropdownOpen: dropdownOpen,
|
|
41979
|
-
currentLang: currentLang,
|
|
41980
|
-
changeLanguageApp: changeLanguageApp,
|
|
41981
|
-
setCurrentLang: setCurrentLang
|
|
41982
|
-
};
|
|
41983
|
-
};
|
|
41984
|
-
|
|
41985
|
-
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
41986
|
-
var _useLanguages = useLanguages(),
|
|
41987
|
-
languageList = _useLanguages.languageList,
|
|
41988
|
-
toggle = _useLanguages.toggle,
|
|
41989
|
-
dropdownOpen = _useLanguages.dropdownOpen,
|
|
41990
|
-
currentLang = _useLanguages.currentLang,
|
|
41991
|
-
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
41992
|
-
|
|
41993
|
-
var currentLanguage = useMemo(function () {
|
|
41994
|
-
var current = languageList.find(function (i) {
|
|
41995
|
-
return i.code === currentLang;
|
|
41996
|
-
});
|
|
41997
|
-
if (!current) return null;
|
|
41998
|
-
return React.createElement(React.Fragment, null, React.createElement("img", {
|
|
41999
|
-
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
42000
|
-
src: "" + getStaticFileUrl(current.image)
|
|
42001
|
-
}), " ", current.name);
|
|
42002
|
-
}, [currentLang, languageList]);
|
|
42003
|
-
return React.createElement(Dropdown, {
|
|
42004
|
-
isOpen: dropdownOpen,
|
|
42005
|
-
toggle: toggle,
|
|
42006
|
-
className: "" + styles["dropdown-menu"]
|
|
42007
|
-
}, React.createElement(DropdownToggle, {
|
|
42008
|
-
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
42009
|
-
}, React.createElement("span", {
|
|
42010
|
-
style: {
|
|
42011
|
-
color: "#000",
|
|
42012
|
-
textTransform: "capitalize",
|
|
42013
|
-
display: 'flex',
|
|
42014
|
-
alignItems: 'center'
|
|
42015
|
-
}
|
|
42016
|
-
}, currentLanguage, React.createElement(BsChevronDown, {
|
|
42017
|
-
className: "ml-2",
|
|
42018
|
-
style: {
|
|
42019
|
-
fontSize: '10px'
|
|
42020
|
-
}
|
|
42021
|
-
}))), React.createElement(DropdownMenu, {
|
|
42022
|
-
className: styles["dropdown-content-language"]
|
|
42023
|
-
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
42024
|
-
return React.createElement(DropdownItem, {
|
|
42025
|
-
key: lang.code,
|
|
42026
|
-
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
42027
|
-
onClick: function onClick() {
|
|
42028
|
-
return changeLanguageApp(lang.code);
|
|
42029
|
-
}
|
|
42030
|
-
}, React.createElement("div", {
|
|
42031
|
-
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
42032
|
-
}, React.createElement("span", {
|
|
42033
|
-
className: "mr-2 d-flex hover-opacity"
|
|
42034
|
-
}, React.createElement("img", {
|
|
42035
|
-
style: {
|
|
42036
|
-
width: "30px",
|
|
42037
|
-
height: "25px",
|
|
42038
|
-
borderRadius: "5px"
|
|
42039
|
-
},
|
|
42040
|
-
src: getStaticFileUrl(lang.image)
|
|
42041
|
-
})), lang.name));
|
|
42042
|
-
})));
|
|
42043
|
-
};
|
|
42044
|
-
|
|
42045
|
-
var TheHeader = function TheHeader(_ref) {
|
|
42046
|
-
var onToggleModel = _ref.onToggleModel;
|
|
42047
|
-
var dispatch = useDispatch();
|
|
42048
|
-
var sidebarShow = useSelector(function (state) {
|
|
42049
|
-
return state.common.sidebarShow;
|
|
42050
|
-
});
|
|
42051
|
-
|
|
42052
|
-
var _useTranslation = useTranslation(),
|
|
42053
|
-
t = _useTranslation.t;
|
|
42054
|
-
|
|
42055
|
-
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
42056
|
-
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
42057
|
-
dispatch(setSidebar(val));
|
|
42058
|
-
};
|
|
42059
|
-
|
|
42060
|
-
var isDistrict = window.location.host.includes("-district");
|
|
42061
|
-
return React.createElement(CHeader, {
|
|
42062
|
-
withSubheader: true,
|
|
42063
|
-
className: "d-flex align-items-center justify-content-end"
|
|
42064
|
-
}, React.createElement(CToggler, {
|
|
42065
|
-
inHeader: true,
|
|
42066
|
-
className: "ml-md-3 d-lg-none",
|
|
42067
|
-
onClick: toggleSidebarMobile
|
|
42068
|
-
}), React.createElement(CHeaderBrand, {
|
|
42069
|
-
className: "mx-auto flex-grow-1 d-lg-none",
|
|
42070
|
-
to: "/"
|
|
42071
|
-
}, React.createElement("img", {
|
|
42072
|
-
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
42073
|
-
className: styles["header-logo"]
|
|
42074
|
-
})), React.createElement(CHeaderNav, {
|
|
42075
|
-
className: "pr-3"
|
|
42076
|
-
}, React.createElement(TheLanguageDropdown, null), React.createElement("a", {
|
|
42077
|
-
className: "mr-3",
|
|
42078
|
-
style: {
|
|
42079
|
-
color: '#000'
|
|
42080
|
-
},
|
|
42081
|
-
href: '/privacy-policy',
|
|
42082
|
-
target: "blank"
|
|
42083
|
-
}, t("privacy_policy")), !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, {
|
|
42084
|
-
onToggleModel: onToggleModel
|
|
42085
|
-
})));
|
|
42086
|
-
};
|
|
42087
|
-
|
|
42088
41890
|
var TITLE$3 = "Not found";
|
|
42089
41891
|
|
|
42090
41892
|
var NotFound = function NotFound() {
|
|
@@ -42142,258 +41944,6 @@ var TheContent = function TheContent(_ref) {
|
|
|
42142
41944
|
|
|
42143
41945
|
var TheContent$1 = React.memo(TheContent);
|
|
42144
41946
|
|
|
42145
|
-
var loadingStyle = {
|
|
42146
|
-
minWidth: "100vw",
|
|
42147
|
-
minHeight: "100vh",
|
|
42148
|
-
position: "fixed",
|
|
42149
|
-
top: 0,
|
|
42150
|
-
left: 0,
|
|
42151
|
-
zIndex: 999999999,
|
|
42152
|
-
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
42153
|
-
display: "flex",
|
|
42154
|
-
justifyContent: "center",
|
|
42155
|
-
alignItems: "center"
|
|
42156
|
-
};
|
|
42157
|
-
|
|
42158
|
-
var Loading = function Loading() {
|
|
42159
|
-
var isLoading = useSelector(function (state) {
|
|
42160
|
-
return state.common.isLoading;
|
|
42161
|
-
});
|
|
42162
|
-
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
42163
|
-
return isLoading ? React.createElement("div", {
|
|
42164
|
-
style: loadingStyle
|
|
42165
|
-
}, React.createElement("div", {
|
|
42166
|
-
className: "spinner-border text-secondary",
|
|
42167
|
-
role: "status"
|
|
42168
|
-
}, React.createElement("span", {
|
|
42169
|
-
className: "sr-only"
|
|
42170
|
-
}, "Loading..."))) : null;
|
|
42171
|
-
};
|
|
42172
|
-
|
|
42173
|
-
var firstCheckToken = function firstCheckToken() {
|
|
42174
|
-
return Promise.resolve(_catch(function () {
|
|
42175
|
-
var token = getAccessToken();
|
|
42176
|
-
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
42177
|
-
return tokenStatus.data ? true : false;
|
|
42178
|
-
}) : false;
|
|
42179
|
-
}, function () {
|
|
42180
|
-
return false;
|
|
42181
|
-
}));
|
|
42182
|
-
};
|
|
42183
|
-
|
|
42184
|
-
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
42185
|
-
if (!Array.isArray(userRoles)) {
|
|
42186
|
-
return false;
|
|
42187
|
-
}
|
|
42188
|
-
|
|
42189
|
-
if (Array.isArray(componentRoles)) {
|
|
42190
|
-
var intersects = userRoles.filter(function (i) {
|
|
42191
|
-
return componentRoles.includes(i);
|
|
42192
|
-
});
|
|
42193
|
-
return intersects.length > 0;
|
|
42194
|
-
}
|
|
42195
|
-
|
|
42196
|
-
return true;
|
|
42197
|
-
};
|
|
42198
|
-
|
|
42199
|
-
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
42200
|
-
var _handleUserRole;
|
|
42201
|
-
|
|
42202
|
-
var open = _ref.open,
|
|
42203
|
-
onToggleModel = _ref.onToggleModel;
|
|
42204
|
-
var dispatch = useDispatch();
|
|
42205
|
-
|
|
42206
|
-
var _useTranslation = useTranslation(),
|
|
42207
|
-
t = _useTranslation.t;
|
|
42208
|
-
|
|
42209
|
-
var history = useHistory();
|
|
42210
|
-
var pathname = window.location.pathname;
|
|
42211
|
-
var user = useSelector(function (state) {
|
|
42212
|
-
return state.common.user;
|
|
42213
|
-
});
|
|
42214
|
-
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
42215
|
-
|
|
42216
|
-
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
42217
|
-
dispatch(setLoading(true));
|
|
42218
|
-
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
42219
|
-
dispatch(setUser(_extends({}, user, {
|
|
42220
|
-
roles: roleSelect
|
|
42221
|
-
})));
|
|
42222
|
-
localStorage.setItem("ROLES", roleSelect.toString());
|
|
42223
|
-
onToggleModel();
|
|
42224
|
-
|
|
42225
|
-
if (roles.includes("Parent")) {
|
|
42226
|
-
history.push("/parent");
|
|
42227
|
-
} else if (roles.includes("Admin")) {
|
|
42228
|
-
history.push("/admin/home");
|
|
42229
|
-
} else {
|
|
42230
|
-
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
42231
|
-
}
|
|
42232
|
-
};
|
|
42233
|
-
|
|
42234
|
-
return React.createElement(Modal, {
|
|
42235
|
-
isOpen: open,
|
|
42236
|
-
toggle: function toggle() {
|
|
42237
|
-
return onToggleModel();
|
|
42238
|
-
},
|
|
42239
|
-
className: "" + styles["model-switch-roles"],
|
|
42240
|
-
centered: true
|
|
42241
|
-
}, React.createElement("p", {
|
|
42242
|
-
className: "" + styles["title"]
|
|
42243
|
-
}, t("continue_as")), React.createElement("div", null, (_handleUserRole = handleUserRole(user === null || user === void 0 ? void 0 : user.roles)) === null || _handleUserRole === void 0 ? void 0 : _handleUserRole.map(function (r) {
|
|
42244
|
-
return React.createElement("p", {
|
|
42245
|
-
key: r,
|
|
42246
|
-
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" : ""],
|
|
42247
|
-
onClick: function onClick() {
|
|
42248
|
-
return handleSelectUserRoles([r]);
|
|
42249
|
-
}
|
|
42250
|
-
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
42251
|
-
})));
|
|
42252
|
-
};
|
|
42253
|
-
|
|
42254
|
-
var TheLayout = function TheLayout(_ref) {
|
|
42255
|
-
var routes = _ref.routes,
|
|
42256
|
-
navigation = _ref.navigation;
|
|
42257
|
-
var history = useHistory();
|
|
42258
|
-
var dispatch = useDispatch();
|
|
42259
|
-
var user = useSelector(function (state) {
|
|
42260
|
-
return state.common.user;
|
|
42261
|
-
});
|
|
42262
|
-
var language = useSelector(function (state) {
|
|
42263
|
-
return state.common.language;
|
|
42264
|
-
});
|
|
42265
|
-
|
|
42266
|
-
var _useState = useState(false),
|
|
42267
|
-
openModelSelectRole = _useState[0],
|
|
42268
|
-
setOpenModelSelectRole = _useState[1];
|
|
42269
|
-
|
|
42270
|
-
var _useTranslation = useTranslation(),
|
|
42271
|
-
t = _useTranslation.t;
|
|
42272
|
-
|
|
42273
|
-
var location = useLocation();
|
|
42274
|
-
var isNotification = location.pathname.includes("notifications");
|
|
42275
|
-
var isDistrict = window.location.host.includes("-district");
|
|
42276
|
-
|
|
42277
|
-
var handleToggleModel = function handleToggleModel() {
|
|
42278
|
-
setOpenModelSelectRole(!openModelSelectRole);
|
|
42279
|
-
};
|
|
42280
|
-
|
|
42281
|
-
var authRoutes = useMemo(function () {
|
|
42282
|
-
return routes.filter(function (route) {
|
|
42283
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
42284
|
-
}).filter(function (route) {
|
|
42285
|
-
return !!route.isDistrict === isDistrict;
|
|
42286
|
-
});
|
|
42287
|
-
}, [user, language]);
|
|
42288
|
-
var authNavigations = useMemo(function () {
|
|
42289
|
-
return navigation.map(function (item) {
|
|
42290
|
-
var _item$_children, _item$_children2;
|
|
42291
|
-
|
|
42292
|
-
return _extends({}, item, {
|
|
42293
|
-
name: t(item.name),
|
|
42294
|
-
_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) {
|
|
42295
|
-
return _extends({}, x, {
|
|
42296
|
-
name: t(x.name)
|
|
42297
|
-
});
|
|
42298
|
-
}) : undefined
|
|
42299
|
-
});
|
|
42300
|
-
}).filter(function (nav) {
|
|
42301
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
42302
|
-
}).filter(function (nav) {
|
|
42303
|
-
return !!nav.isDistrict === isDistrict;
|
|
42304
|
-
});
|
|
42305
|
-
}, [user, language]);
|
|
42306
|
-
|
|
42307
|
-
var getInformationSetting = function getInformationSetting() {
|
|
42308
|
-
try {
|
|
42309
|
-
var _temp2 = _catch(function () {
|
|
42310
|
-
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
42311
|
-
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
42312
|
-
});
|
|
42313
|
-
}, function (err) {
|
|
42314
|
-
console.error(err);
|
|
42315
|
-
});
|
|
42316
|
-
|
|
42317
|
-
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
42318
|
-
} catch (e) {
|
|
42319
|
-
return Promise.reject(e);
|
|
42320
|
-
}
|
|
42321
|
-
};
|
|
42322
|
-
|
|
42323
|
-
useEffect(function () {
|
|
42324
|
-
checkAuthentication();
|
|
42325
|
-
}, []);
|
|
42326
|
-
useEffect(function () {
|
|
42327
|
-
getInformationSetting();
|
|
42328
|
-
}, [location.pathname]);
|
|
42329
|
-
|
|
42330
|
-
var checkAuthentication = function checkAuthentication() {
|
|
42331
|
-
try {
|
|
42332
|
-
var _temp4 = _catch(function () {
|
|
42333
|
-
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
42334
|
-
tokenStatus ? loadInfo() : resetAuth();
|
|
42335
|
-
});
|
|
42336
|
-
}, function () {
|
|
42337
|
-
resetAuth();
|
|
42338
|
-
});
|
|
42339
|
-
|
|
42340
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
42341
|
-
} catch (e) {
|
|
42342
|
-
return Promise.reject(e);
|
|
42343
|
-
}
|
|
42344
|
-
};
|
|
42345
|
-
|
|
42346
|
-
var loadInfo = function loadInfo() {
|
|
42347
|
-
try {
|
|
42348
|
-
var _temp6 = _catch(function () {
|
|
42349
|
-
return Promise.resolve(getInfo()).then(function (info) {
|
|
42350
|
-
var _info$data, _info$data$roles;
|
|
42351
|
-
|
|
42352
|
-
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"))) {
|
|
42353
|
-
resetAuth();
|
|
42354
|
-
}
|
|
42355
|
-
|
|
42356
|
-
dispatch(setUser(info.data));
|
|
42357
|
-
});
|
|
42358
|
-
}, function () {
|
|
42359
|
-
resetAuth();
|
|
42360
|
-
});
|
|
42361
|
-
|
|
42362
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
42363
|
-
} catch (e) {
|
|
42364
|
-
return Promise.reject(e);
|
|
42365
|
-
}
|
|
42366
|
-
};
|
|
42367
|
-
|
|
42368
|
-
var resetAuth = function resetAuth() {
|
|
42369
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
42370
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
42371
|
-
localStorage.removeItem("ROLES");
|
|
42372
|
-
history.push("/");
|
|
42373
|
-
};
|
|
42374
|
-
|
|
42375
|
-
if (!user) {
|
|
42376
|
-
return React.createElement(Loading, null);
|
|
42377
|
-
}
|
|
42378
|
-
|
|
42379
|
-
return React.createElement("div", {
|
|
42380
|
-
className: "c-app c-default-layout"
|
|
42381
|
-
}, !isNotification && React.createElement(TheSidebar, {
|
|
42382
|
-
navigation: authNavigations
|
|
42383
|
-
}), React.createElement("div", {
|
|
42384
|
-
className: "c-wrapper"
|
|
42385
|
-
}, !isNotification && React.createElement(TheHeader, {
|
|
42386
|
-
onToggleModel: handleToggleModel
|
|
42387
|
-
}), React.createElement("div", {
|
|
42388
|
-
className: "c-body bg-white"
|
|
42389
|
-
}, React.createElement(TheContent$1, {
|
|
42390
|
-
routes: authRoutes
|
|
42391
|
-
}))), React.createElement(ModelSelectRole, {
|
|
42392
|
-
open: openModelSelectRole,
|
|
42393
|
-
onToggleModel: handleToggleModel
|
|
42394
|
-
}));
|
|
42395
|
-
};
|
|
42396
|
-
|
|
42397
41947
|
var buttonTextStyle = {
|
|
42398
41948
|
fontWeight: 500
|
|
42399
41949
|
};
|
|
@@ -46298,6 +45848,9 @@ var importUsersCSV = function importUsersCSV(formData) {
|
|
|
46298
45848
|
var downloadTemplateFileUser = function downloadTemplateFileUser() {
|
|
46299
45849
|
return api.get(CSV_FILE_TEACHER + "/download-template-file-user");
|
|
46300
45850
|
};
|
|
45851
|
+
var validateCsvApi = function validateCsvApi(formData, type) {
|
|
45852
|
+
return api.post(CSV_FILE_TEACHER + "/validate-csv-template-student/" + type, formData);
|
|
45853
|
+
};
|
|
46301
45854
|
|
|
46302
45855
|
var CSVType;
|
|
46303
45856
|
|
|
@@ -50094,7 +49647,7 @@ var style$2 = {
|
|
|
50094
49647
|
color: "#fff",
|
|
50095
49648
|
fontWeight: 500,
|
|
50096
49649
|
fontSize: "14px",
|
|
50097
|
-
height: "
|
|
49650
|
+
height: "56px",
|
|
50098
49651
|
justifyContent: "center"
|
|
50099
49652
|
};
|
|
50100
49653
|
|
|
@@ -50193,15 +49746,19 @@ var useCSVImportTab = function useCSVImportTab() {
|
|
|
50193
49746
|
studentDataFile = _useState5[0],
|
|
50194
49747
|
setStudentDataFile = _useState5[1];
|
|
50195
49748
|
|
|
49749
|
+
var _useState6 = useState([]),
|
|
49750
|
+
errorsValidate = _useState6[0],
|
|
49751
|
+
setErrorsValidate = _useState6[1];
|
|
49752
|
+
|
|
50196
49753
|
var isCheckDomainIBS = true;
|
|
50197
49754
|
|
|
50198
|
-
var
|
|
50199
|
-
defaultTeacher =
|
|
50200
|
-
setDefaultTeacher =
|
|
49755
|
+
var _useState7 = useState(0),
|
|
49756
|
+
defaultTeacher = _useState7[0],
|
|
49757
|
+
setDefaultTeacher = _useState7[1];
|
|
50201
49758
|
|
|
50202
|
-
var
|
|
50203
|
-
fileName =
|
|
50204
|
-
setFileName =
|
|
49759
|
+
var _useState8 = useState(""),
|
|
49760
|
+
fileName = _useState8[0],
|
|
49761
|
+
setFileName = _useState8[1];
|
|
50205
49762
|
|
|
50206
49763
|
useEffect(function () {
|
|
50207
49764
|
document.title = title$5;
|
|
@@ -50246,10 +49803,10 @@ var useCSVImportTab = function useCSVImportTab() {
|
|
|
50246
49803
|
|
|
50247
49804
|
var upload = useCallback(function (file) {
|
|
50248
49805
|
try {
|
|
50249
|
-
var
|
|
49806
|
+
var _exit3 = false;
|
|
50250
49807
|
|
|
50251
|
-
var _temp12 = function _temp12(
|
|
50252
|
-
if (
|
|
49808
|
+
var _temp12 = function _temp12(_result) {
|
|
49809
|
+
if (_exit3) return _result;
|
|
50253
49810
|
dispatch(setLoading(false));
|
|
50254
49811
|
var inputId = document.getElementById(id$1);
|
|
50255
49812
|
var input = document.getElementById('import-student');
|
|
@@ -50263,103 +49820,114 @@ var useCSVImportTab = function useCSVImportTab() {
|
|
|
50263
49820
|
dispatch(setLoading(true));
|
|
50264
49821
|
|
|
50265
49822
|
var _temp13 = _catch(function () {
|
|
50266
|
-
function _temp9(_result) {
|
|
50267
|
-
if (_exit2) return _result;
|
|
50268
|
-
dispatch(setAlert({
|
|
50269
|
-
type: "success",
|
|
50270
|
-
message: "Import CSV successfully"
|
|
50271
|
-
}));
|
|
50272
|
-
}
|
|
50273
|
-
|
|
50274
49823
|
var formData = new FormData();
|
|
50275
49824
|
formData.append("file", file, file.name);
|
|
49825
|
+
var typeOfCsv = type === CSVType$1.AllUser ? CsvImportType.Admin : CsvImportType.Teacher;
|
|
49826
|
+
return Promise.resolve(validateCsvApi(formData, typeOfCsv)).then(function (res) {
|
|
49827
|
+
var _exit2 = false;
|
|
50276
49828
|
|
|
50277
|
-
|
|
50278
|
-
|
|
50279
|
-
|
|
50280
|
-
|
|
50281
|
-
|
|
50282
|
-
|
|
50283
|
-
|
|
50284
|
-
var headerIndex = rows.findIndex(function (row) {
|
|
50285
|
-
return row.split(",").includes("First Name");
|
|
50286
|
-
});
|
|
50287
|
-
|
|
50288
|
-
if (headerIndex === 0) {
|
|
50289
|
-
throw new Error("Invalid CSV: Missing header row.");
|
|
50290
|
-
}
|
|
49829
|
+
function _temp9(_result2) {
|
|
49830
|
+
if (_exit2) return _result2;
|
|
49831
|
+
dispatch(setAlert({
|
|
49832
|
+
type: "success",
|
|
49833
|
+
message: "Import CSV successfully"
|
|
49834
|
+
}));
|
|
49835
|
+
}
|
|
50291
49836
|
|
|
50292
|
-
|
|
50293
|
-
|
|
50294
|
-
|
|
50295
|
-
|
|
50296
|
-
|
|
50297
|
-
|
|
50298
|
-
var dataRows = parsedData.data;
|
|
49837
|
+
if (res.data && res.data.length > 0) {
|
|
49838
|
+
setErrorsValidate(res.data);
|
|
49839
|
+
dispatch(setLoading(false));
|
|
49840
|
+
_exit3 = true;
|
|
49841
|
+
return;
|
|
49842
|
+
}
|
|
50299
49843
|
|
|
50300
|
-
|
|
50301
|
-
|
|
50302
|
-
|
|
50303
|
-
|
|
50304
|
-
|
|
50305
|
-
|
|
50306
|
-
|
|
50307
|
-
|
|
50308
|
-
|
|
49844
|
+
var _temp8 = function () {
|
|
49845
|
+
if (type == CSVType$1.AllUser) {
|
|
49846
|
+
return Promise.resolve(file.text()).then(function (fileTextRaw) {
|
|
49847
|
+
var fileText = fileTextRaw.trim();
|
|
49848
|
+
var rows = fileText.split("\n").map(function (row) {
|
|
49849
|
+
return row.trim();
|
|
49850
|
+
});
|
|
49851
|
+
var headerIndex = rows.findIndex(function (row) {
|
|
49852
|
+
return row.split(",").includes("First Name");
|
|
49853
|
+
});
|
|
50309
49854
|
|
|
50310
|
-
|
|
50311
|
-
|
|
49855
|
+
if (headerIndex === 0) {
|
|
49856
|
+
throw new Error("Invalid CSV: Missing header row.");
|
|
49857
|
+
}
|
|
50312
49858
|
|
|
50313
|
-
|
|
50314
|
-
var
|
|
50315
|
-
|
|
50316
|
-
|
|
50317
|
-
return (v != null ? v : "").toString().trim();
|
|
50318
|
-
});
|
|
49859
|
+
fileText = rows.slice(headerIndex).join("\n");
|
|
49860
|
+
var parsedData = Papa.parse(fileText, {
|
|
49861
|
+
header: true,
|
|
49862
|
+
skipEmptyLines: true
|
|
50319
49863
|
});
|
|
49864
|
+
var header = parsedData.meta.fields;
|
|
49865
|
+
var dataRows = parsedData.data;
|
|
50320
49866
|
|
|
50321
|
-
if (
|
|
50322
|
-
|
|
49867
|
+
if (!!!dataRows.length) {
|
|
49868
|
+
dispatch(setLoading(false));
|
|
49869
|
+
dispatch(setAlert({
|
|
49870
|
+
type: "danger",
|
|
49871
|
+
message: 'The file has no data or some column names are misformed.'
|
|
49872
|
+
}));
|
|
49873
|
+
_exit3 = true;
|
|
49874
|
+
return;
|
|
50323
49875
|
}
|
|
50324
49876
|
|
|
50325
|
-
|
|
50326
|
-
|
|
50327
|
-
});
|
|
50328
|
-
chunks.push(valuesOnly);
|
|
50329
|
-
}
|
|
49877
|
+
var chunkSize = 10;
|
|
49878
|
+
var chunks = [];
|
|
50330
49879
|
|
|
50331
|
-
|
|
50332
|
-
|
|
50333
|
-
|
|
50334
|
-
|
|
50335
|
-
|
|
50336
|
-
|
|
50337
|
-
})
|
|
50338
|
-
});
|
|
50339
|
-
});
|
|
49880
|
+
for (var _i = 0; _i < dataRows.length; _i += chunkSize) {
|
|
49881
|
+
var chunkData = dataRows.slice(_i, _i + chunkSize);
|
|
49882
|
+
var valuesOnly = chunkData.map(function (row) {
|
|
49883
|
+
return Object.values(row).map(function (v) {
|
|
49884
|
+
return (v != null ? v : "").toString().trim();
|
|
49885
|
+
});
|
|
49886
|
+
});
|
|
50340
49887
|
|
|
50341
|
-
|
|
50342
|
-
|
|
50343
|
-
} else {
|
|
50344
|
-
var _temp14 = function () {
|
|
50345
|
-
if (isCheckDomainIBS) {
|
|
50346
|
-
var _temp15 = function () {
|
|
50347
|
-
if (type == CSVType$1.ClassReflection) {
|
|
50348
|
-
return Promise.resolve(importClassReflectionCSV$1(formData)).then(function () {});
|
|
49888
|
+
if (header) {
|
|
49889
|
+
valuesOnly.unshift(header);
|
|
50349
49890
|
}
|
|
50350
|
-
}();
|
|
50351
49891
|
|
|
50352
|
-
|
|
50353
|
-
|
|
50354
|
-
|
|
50355
|
-
|
|
50356
|
-
|
|
49892
|
+
console.log({
|
|
49893
|
+
valuesOnly: valuesOnly
|
|
49894
|
+
});
|
|
49895
|
+
chunks.push(valuesOnly);
|
|
49896
|
+
}
|
|
50357
49897
|
|
|
50358
|
-
|
|
50359
|
-
|
|
50360
|
-
|
|
49898
|
+
var _temp5 = _forTo(chunks, function (i) {
|
|
49899
|
+
return Promise.resolve(importChunkFileUsers({
|
|
49900
|
+
chunks: chunks[i]
|
|
49901
|
+
})).then(function () {
|
|
49902
|
+
return Promise.resolve(new Promise(function (res) {
|
|
49903
|
+
return setTimeout(res, 500);
|
|
49904
|
+
})).then(function () {});
|
|
49905
|
+
});
|
|
49906
|
+
});
|
|
50361
49907
|
|
|
50362
|
-
|
|
49908
|
+
if (_temp5 && _temp5.then) return _temp5.then(function () {});
|
|
49909
|
+
});
|
|
49910
|
+
} else {
|
|
49911
|
+
var _temp14 = function () {
|
|
49912
|
+
if (isCheckDomainIBS) {
|
|
49913
|
+
var _temp15 = function () {
|
|
49914
|
+
if (type == CSVType$1.ClassReflection) {
|
|
49915
|
+
return Promise.resolve(importClassReflectionCSV$1(formData)).then(function () {});
|
|
49916
|
+
}
|
|
49917
|
+
}();
|
|
49918
|
+
|
|
49919
|
+
if (_temp15 && _temp15.then) return _temp15.then(function () {});
|
|
49920
|
+
} else {
|
|
49921
|
+
return Promise.resolve(importCSV$1(formData, type.toString())).then(function () {});
|
|
49922
|
+
}
|
|
49923
|
+
}();
|
|
49924
|
+
|
|
49925
|
+
if (_temp14 && _temp14.then) return _temp14.then(function () {});
|
|
49926
|
+
}
|
|
49927
|
+
}();
|
|
49928
|
+
|
|
49929
|
+
return _temp8 && _temp8.then ? _temp8.then(_temp9) : _temp9(_temp8);
|
|
49930
|
+
});
|
|
50363
49931
|
}, function (err) {
|
|
50364
49932
|
var _err$response, _err$response$data;
|
|
50365
49933
|
|
|
@@ -50514,7 +50082,9 @@ var useCSVImportTab = function useCSVImportTab() {
|
|
|
50514
50082
|
defaultTeacher: defaultTeacher,
|
|
50515
50083
|
fileName: fileName,
|
|
50516
50084
|
onStudentSubmit: onStudentSubmit,
|
|
50517
|
-
downloadTemplateUser: downloadTemplateUser
|
|
50085
|
+
downloadTemplateUser: downloadTemplateUser,
|
|
50086
|
+
errorsValidate: errorsValidate,
|
|
50087
|
+
setErrorsValidate: setErrorsValidate
|
|
50518
50088
|
};
|
|
50519
50089
|
};
|
|
50520
50090
|
|
|
@@ -50541,7 +50111,8 @@ var CSVImport = function CSVImport() {
|
|
|
50541
50111
|
setArrStudent = _useCSVImportTab.setArrStudent,
|
|
50542
50112
|
buttons = _useCSVImportTab.buttons,
|
|
50543
50113
|
upload = _useCSVImportTab.upload,
|
|
50544
|
-
downloadTemplateUser = _useCSVImportTab.downloadTemplateUser
|
|
50114
|
+
downloadTemplateUser = _useCSVImportTab.downloadTemplateUser,
|
|
50115
|
+
errorsValidate = _useCSVImportTab.errorsValidate;
|
|
50545
50116
|
|
|
50546
50117
|
var _useTranslation = useTranslation(),
|
|
50547
50118
|
t = _useTranslation.t;
|
|
@@ -50594,9 +50165,9 @@ var CSVImport = function CSVImport() {
|
|
|
50594
50165
|
accept: "text/csv"
|
|
50595
50166
|
}), React.createElement(Col, {
|
|
50596
50167
|
md: 6,
|
|
50597
|
-
className: "mb-2 d-flex
|
|
50168
|
+
className: "mb-2 d-flex mt-5"
|
|
50598
50169
|
}, React.createElement(Row, {
|
|
50599
|
-
className: "w-100"
|
|
50170
|
+
className: "w-100 flex-column"
|
|
50600
50171
|
}, React.createElement(Col, {
|
|
50601
50172
|
md: 12,
|
|
50602
50173
|
className: ""
|
|
@@ -50625,7 +50196,9 @@ var CSVImport = function CSVImport() {
|
|
|
50625
50196
|
})))), React.createElement(Col, {
|
|
50626
50197
|
md: 6,
|
|
50627
50198
|
className: "mb-2"
|
|
50628
|
-
}, React.createElement(Row,
|
|
50199
|
+
}, React.createElement(Row, {
|
|
50200
|
+
className: "flex-column"
|
|
50201
|
+
}, React.createElement(Col, {
|
|
50629
50202
|
md: 12,
|
|
50630
50203
|
className: "mb-2 text-right"
|
|
50631
50204
|
}, React.createElement(Button, {
|
|
@@ -50655,7 +50228,12 @@ var CSVImport = function CSVImport() {
|
|
|
50655
50228
|
return setType(button.type);
|
|
50656
50229
|
}
|
|
50657
50230
|
});
|
|
50658
|
-
}))))
|
|
50231
|
+
})), (errorsValidate === null || errorsValidate === void 0 ? void 0 : errorsValidate.length) > 0 && errorsValidate.map(function (error, index) {
|
|
50232
|
+
return React.createElement(ErrorHandler, {
|
|
50233
|
+
key: index,
|
|
50234
|
+
text: error
|
|
50235
|
+
});
|
|
50236
|
+
}))));
|
|
50659
50237
|
}))) );
|
|
50660
50238
|
};
|
|
50661
50239
|
|
|
@@ -51740,6 +51318,34 @@ var UserDetail = function UserDetail() {
|
|
|
51740
51318
|
});
|
|
51741
51319
|
};
|
|
51742
51320
|
|
|
51321
|
+
var loadingStyle = {
|
|
51322
|
+
minWidth: "100vw",
|
|
51323
|
+
minHeight: "100vh",
|
|
51324
|
+
position: "fixed",
|
|
51325
|
+
top: 0,
|
|
51326
|
+
left: 0,
|
|
51327
|
+
zIndex: 999999999,
|
|
51328
|
+
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
51329
|
+
display: "flex",
|
|
51330
|
+
justifyContent: "center",
|
|
51331
|
+
alignItems: "center"
|
|
51332
|
+
};
|
|
51333
|
+
|
|
51334
|
+
var Loading = function Loading() {
|
|
51335
|
+
var isLoading = useSelector(function (state) {
|
|
51336
|
+
return state.common.isLoading;
|
|
51337
|
+
});
|
|
51338
|
+
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
51339
|
+
return isLoading ? React.createElement("div", {
|
|
51340
|
+
style: loadingStyle
|
|
51341
|
+
}, React.createElement("div", {
|
|
51342
|
+
className: "spinner-border text-secondary",
|
|
51343
|
+
role: "status"
|
|
51344
|
+
}, React.createElement("span", {
|
|
51345
|
+
className: "sr-only"
|
|
51346
|
+
}, "Loading..."))) : null;
|
|
51347
|
+
};
|
|
51348
|
+
|
|
51743
51349
|
var ScrollToTop = function ScrollToTop() {
|
|
51744
51350
|
var _useLocation = useLocation(),
|
|
51745
51351
|
pathname = _useLocation.pathname;
|
|
@@ -54763,6 +54369,32 @@ var store = configureStore({
|
|
|
54763
54369
|
}
|
|
54764
54370
|
});
|
|
54765
54371
|
|
|
54372
|
+
var firstCheckToken = function firstCheckToken() {
|
|
54373
|
+
return Promise.resolve(_catch(function () {
|
|
54374
|
+
var token = getAccessToken();
|
|
54375
|
+
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
54376
|
+
return tokenStatus.data ? true : false;
|
|
54377
|
+
}) : false;
|
|
54378
|
+
}, function () {
|
|
54379
|
+
return false;
|
|
54380
|
+
}));
|
|
54381
|
+
};
|
|
54382
|
+
|
|
54383
|
+
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
54384
|
+
if (!Array.isArray(userRoles)) {
|
|
54385
|
+
return false;
|
|
54386
|
+
}
|
|
54387
|
+
|
|
54388
|
+
if (Array.isArray(componentRoles)) {
|
|
54389
|
+
var intersects = userRoles.filter(function (i) {
|
|
54390
|
+
return componentRoles.includes(i);
|
|
54391
|
+
});
|
|
54392
|
+
return intersects.length > 0;
|
|
54393
|
+
}
|
|
54394
|
+
|
|
54395
|
+
return true;
|
|
54396
|
+
};
|
|
54397
|
+
|
|
54766
54398
|
var isInViewport = function isInViewport(el) {
|
|
54767
54399
|
var rect = el === null || el === void 0 ? void 0 : el.getBoundingClientRect();
|
|
54768
54400
|
return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);
|
|
@@ -54796,6 +54428,410 @@ var generateRandomString = (function () {
|
|
|
54796
54428
|
return (Math.random() + 1).toString(36).substring(7);
|
|
54797
54429
|
});
|
|
54798
54430
|
|
|
54431
|
+
var apiGetLanguage = function apiGetLanguage() {
|
|
54432
|
+
return api.get(BASE_URL + "/api/language");
|
|
54433
|
+
};
|
|
54434
|
+
|
|
54435
|
+
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
54436
|
+
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
54437
|
+
};
|
|
54438
|
+
|
|
54439
|
+
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
54440
|
+
|
|
54441
|
+
var useLanguages = function useLanguages() {
|
|
54442
|
+
var dispatch = useDispatch();
|
|
54443
|
+
|
|
54444
|
+
var _useTranslation = useTranslation(),
|
|
54445
|
+
i18n = _useTranslation.i18n;
|
|
54446
|
+
|
|
54447
|
+
var language = useSelector(function (state) {
|
|
54448
|
+
return state.common.language;
|
|
54449
|
+
});
|
|
54450
|
+
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
54451
|
+
|
|
54452
|
+
var _useState = useState([]),
|
|
54453
|
+
languageList = _useState[0],
|
|
54454
|
+
setLanguageList = _useState[1];
|
|
54455
|
+
|
|
54456
|
+
var _useState2 = useState(false),
|
|
54457
|
+
dropdownOpen = _useState2[0],
|
|
54458
|
+
setDropdownOpen = _useState2[1];
|
|
54459
|
+
|
|
54460
|
+
var _useState3 = useState(defaultLanguage),
|
|
54461
|
+
currentLang = _useState3[0],
|
|
54462
|
+
setCurrentLang = _useState3[1];
|
|
54463
|
+
|
|
54464
|
+
var toggle = function toggle() {
|
|
54465
|
+
return setDropdownOpen(function (prevState) {
|
|
54466
|
+
return !prevState;
|
|
54467
|
+
});
|
|
54468
|
+
};
|
|
54469
|
+
|
|
54470
|
+
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
54471
|
+
try {
|
|
54472
|
+
var _temp3 = function _temp3() {
|
|
54473
|
+
dispatch(setLoading(false));
|
|
54474
|
+
};
|
|
54475
|
+
|
|
54476
|
+
dispatch(setLoading(true));
|
|
54477
|
+
|
|
54478
|
+
var _temp4 = _catch(function () {
|
|
54479
|
+
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
54480
|
+
i18n.changeLanguage(lang);
|
|
54481
|
+
setCurrentLang(lang);
|
|
54482
|
+
dispatch(setLanguage(lang));
|
|
54483
|
+
});
|
|
54484
|
+
}, function (err) {
|
|
54485
|
+
var _err$response, _err$response$data;
|
|
54486
|
+
|
|
54487
|
+
dispatch(setAlert({
|
|
54488
|
+
type: "danger",
|
|
54489
|
+
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
|
|
54490
|
+
}));
|
|
54491
|
+
});
|
|
54492
|
+
|
|
54493
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
54494
|
+
} catch (e) {
|
|
54495
|
+
return Promise.reject(e);
|
|
54496
|
+
}
|
|
54497
|
+
};
|
|
54498
|
+
|
|
54499
|
+
var getListLanguage = function getListLanguage() {
|
|
54500
|
+
try {
|
|
54501
|
+
var _temp6 = _catch(function () {
|
|
54502
|
+
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
54503
|
+
setLanguageList(res.data);
|
|
54504
|
+
});
|
|
54505
|
+
}, function (err) {
|
|
54506
|
+
var _err$response2, _err$response2$data;
|
|
54507
|
+
|
|
54508
|
+
dispatch(setAlert({
|
|
54509
|
+
type: "danger",
|
|
54510
|
+
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
|
|
54511
|
+
}));
|
|
54512
|
+
});
|
|
54513
|
+
|
|
54514
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
54515
|
+
} catch (e) {
|
|
54516
|
+
return Promise.reject(e);
|
|
54517
|
+
}
|
|
54518
|
+
};
|
|
54519
|
+
|
|
54520
|
+
useEffect(function () {
|
|
54521
|
+
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
54522
|
+
getListLanguage();
|
|
54523
|
+
}, []);
|
|
54524
|
+
return {
|
|
54525
|
+
languageList: languageList,
|
|
54526
|
+
toggle: toggle,
|
|
54527
|
+
dropdownOpen: dropdownOpen,
|
|
54528
|
+
currentLang: currentLang,
|
|
54529
|
+
changeLanguageApp: changeLanguageApp,
|
|
54530
|
+
setCurrentLang: setCurrentLang
|
|
54531
|
+
};
|
|
54532
|
+
};
|
|
54533
|
+
|
|
54534
|
+
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
54535
|
+
var _useLanguages = useLanguages(),
|
|
54536
|
+
languageList = _useLanguages.languageList,
|
|
54537
|
+
toggle = _useLanguages.toggle,
|
|
54538
|
+
dropdownOpen = _useLanguages.dropdownOpen,
|
|
54539
|
+
currentLang = _useLanguages.currentLang,
|
|
54540
|
+
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
54541
|
+
|
|
54542
|
+
var currentLanguage = useMemo(function () {
|
|
54543
|
+
var current = languageList.find(function (i) {
|
|
54544
|
+
return i.code === currentLang;
|
|
54545
|
+
});
|
|
54546
|
+
if (!current) return null;
|
|
54547
|
+
return React.createElement(React.Fragment, null, React.createElement("img", {
|
|
54548
|
+
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
54549
|
+
src: "" + getStaticFileUrl(current.image)
|
|
54550
|
+
}), " ", current.name);
|
|
54551
|
+
}, [currentLang, languageList]);
|
|
54552
|
+
return React.createElement(Dropdown, {
|
|
54553
|
+
isOpen: dropdownOpen,
|
|
54554
|
+
toggle: toggle,
|
|
54555
|
+
className: "" + styles["dropdown-menu"]
|
|
54556
|
+
}, React.createElement(DropdownToggle, {
|
|
54557
|
+
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
54558
|
+
}, React.createElement("span", {
|
|
54559
|
+
style: {
|
|
54560
|
+
color: "#000",
|
|
54561
|
+
textTransform: "capitalize",
|
|
54562
|
+
display: 'flex',
|
|
54563
|
+
alignItems: 'center'
|
|
54564
|
+
}
|
|
54565
|
+
}, currentLanguage, React.createElement(BsChevronDown, {
|
|
54566
|
+
className: "ml-2",
|
|
54567
|
+
style: {
|
|
54568
|
+
fontSize: '10px'
|
|
54569
|
+
}
|
|
54570
|
+
}))), React.createElement(DropdownMenu, {
|
|
54571
|
+
className: styles["dropdown-content-language"]
|
|
54572
|
+
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
54573
|
+
return React.createElement(DropdownItem, {
|
|
54574
|
+
key: lang.code,
|
|
54575
|
+
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
54576
|
+
onClick: function onClick() {
|
|
54577
|
+
return changeLanguageApp(lang.code);
|
|
54578
|
+
}
|
|
54579
|
+
}, React.createElement("div", {
|
|
54580
|
+
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
54581
|
+
}, React.createElement("span", {
|
|
54582
|
+
className: "mr-2 d-flex hover-opacity"
|
|
54583
|
+
}, React.createElement("img", {
|
|
54584
|
+
style: {
|
|
54585
|
+
width: "30px",
|
|
54586
|
+
height: "25px",
|
|
54587
|
+
borderRadius: "5px"
|
|
54588
|
+
},
|
|
54589
|
+
src: getStaticFileUrl(lang.image)
|
|
54590
|
+
})), lang.name));
|
|
54591
|
+
})));
|
|
54592
|
+
};
|
|
54593
|
+
|
|
54594
|
+
var TheHeader = function TheHeader(_ref) {
|
|
54595
|
+
var onToggleModel = _ref.onToggleModel;
|
|
54596
|
+
var dispatch = useDispatch();
|
|
54597
|
+
var sidebarShow = useSelector(function (state) {
|
|
54598
|
+
return state.common.sidebarShow;
|
|
54599
|
+
});
|
|
54600
|
+
|
|
54601
|
+
var _useTranslation = useTranslation(),
|
|
54602
|
+
t = _useTranslation.t;
|
|
54603
|
+
|
|
54604
|
+
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
54605
|
+
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
54606
|
+
dispatch(setSidebar(val));
|
|
54607
|
+
};
|
|
54608
|
+
|
|
54609
|
+
var isDistrict = window.location.host.includes("-district");
|
|
54610
|
+
return React.createElement(CHeader, {
|
|
54611
|
+
withSubheader: true,
|
|
54612
|
+
className: "d-flex align-items-center justify-content-end"
|
|
54613
|
+
}, React.createElement(CToggler, {
|
|
54614
|
+
inHeader: true,
|
|
54615
|
+
className: "ml-md-3 d-lg-none",
|
|
54616
|
+
onClick: toggleSidebarMobile
|
|
54617
|
+
}), React.createElement(CHeaderBrand, {
|
|
54618
|
+
className: "mx-auto flex-grow-1 d-lg-none",
|
|
54619
|
+
to: "/"
|
|
54620
|
+
}, React.createElement("img", {
|
|
54621
|
+
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
54622
|
+
className: styles["header-logo"]
|
|
54623
|
+
})), React.createElement(CHeaderNav, {
|
|
54624
|
+
className: "pr-3"
|
|
54625
|
+
}, React.createElement(TheLanguageDropdown, null), React.createElement("a", {
|
|
54626
|
+
className: "mr-3",
|
|
54627
|
+
style: {
|
|
54628
|
+
color: '#000'
|
|
54629
|
+
},
|
|
54630
|
+
href: '/privacy-policy',
|
|
54631
|
+
target: "blank"
|
|
54632
|
+
}, t("privacy_policy")), !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, {
|
|
54633
|
+
onToggleModel: onToggleModel
|
|
54634
|
+
})));
|
|
54635
|
+
};
|
|
54636
|
+
|
|
54637
|
+
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
54638
|
+
var _handleUserRole;
|
|
54639
|
+
|
|
54640
|
+
var open = _ref.open,
|
|
54641
|
+
onToggleModel = _ref.onToggleModel;
|
|
54642
|
+
var dispatch = useDispatch();
|
|
54643
|
+
|
|
54644
|
+
var _useTranslation = useTranslation(),
|
|
54645
|
+
t = _useTranslation.t;
|
|
54646
|
+
|
|
54647
|
+
var history = useHistory();
|
|
54648
|
+
var pathname = window.location.pathname;
|
|
54649
|
+
var user = useSelector(function (state) {
|
|
54650
|
+
return state.common.user;
|
|
54651
|
+
});
|
|
54652
|
+
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
54653
|
+
|
|
54654
|
+
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
54655
|
+
dispatch(setLoading(true));
|
|
54656
|
+
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
54657
|
+
dispatch(setUser(_extends({}, user, {
|
|
54658
|
+
roles: roleSelect
|
|
54659
|
+
})));
|
|
54660
|
+
localStorage.setItem("ROLES", roleSelect.toString());
|
|
54661
|
+
onToggleModel();
|
|
54662
|
+
|
|
54663
|
+
if (roles.includes("Parent")) {
|
|
54664
|
+
history.push("/parent");
|
|
54665
|
+
} else if (roles.includes("Admin")) {
|
|
54666
|
+
history.push("/admin/home");
|
|
54667
|
+
} else {
|
|
54668
|
+
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
54669
|
+
}
|
|
54670
|
+
};
|
|
54671
|
+
|
|
54672
|
+
return React.createElement(Modal, {
|
|
54673
|
+
isOpen: open,
|
|
54674
|
+
toggle: function toggle() {
|
|
54675
|
+
return onToggleModel();
|
|
54676
|
+
},
|
|
54677
|
+
className: "" + styles["model-switch-roles"],
|
|
54678
|
+
centered: true
|
|
54679
|
+
}, React.createElement("p", {
|
|
54680
|
+
className: "" + styles["title"]
|
|
54681
|
+
}, t("continue_as")), React.createElement("div", null, (_handleUserRole = handleUserRole(user === null || user === void 0 ? void 0 : user.roles)) === null || _handleUserRole === void 0 ? void 0 : _handleUserRole.map(function (r) {
|
|
54682
|
+
return React.createElement("p", {
|
|
54683
|
+
key: r,
|
|
54684
|
+
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" : ""],
|
|
54685
|
+
onClick: function onClick() {
|
|
54686
|
+
return handleSelectUserRoles([r]);
|
|
54687
|
+
}
|
|
54688
|
+
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
54689
|
+
})));
|
|
54690
|
+
};
|
|
54691
|
+
|
|
54692
|
+
var TheLayout = function TheLayout(_ref) {
|
|
54693
|
+
var routes = _ref.routes,
|
|
54694
|
+
navigation = _ref.navigation;
|
|
54695
|
+
var history = useHistory();
|
|
54696
|
+
var dispatch = useDispatch();
|
|
54697
|
+
var user = useSelector(function (state) {
|
|
54698
|
+
return state.common.user;
|
|
54699
|
+
});
|
|
54700
|
+
var language = useSelector(function (state) {
|
|
54701
|
+
return state.common.language;
|
|
54702
|
+
});
|
|
54703
|
+
|
|
54704
|
+
var _useState = useState(false),
|
|
54705
|
+
openModelSelectRole = _useState[0],
|
|
54706
|
+
setOpenModelSelectRole = _useState[1];
|
|
54707
|
+
|
|
54708
|
+
var _useTranslation = useTranslation(),
|
|
54709
|
+
t = _useTranslation.t;
|
|
54710
|
+
|
|
54711
|
+
var location = useLocation();
|
|
54712
|
+
var isNotification = location.pathname.includes("notifications");
|
|
54713
|
+
var isDistrict = window.location.host.includes("-district");
|
|
54714
|
+
|
|
54715
|
+
var handleToggleModel = function handleToggleModel() {
|
|
54716
|
+
setOpenModelSelectRole(!openModelSelectRole);
|
|
54717
|
+
};
|
|
54718
|
+
|
|
54719
|
+
var authRoutes = useMemo(function () {
|
|
54720
|
+
return routes.filter(function (route) {
|
|
54721
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
54722
|
+
}).filter(function (route) {
|
|
54723
|
+
return !!route.isDistrict === isDistrict;
|
|
54724
|
+
});
|
|
54725
|
+
}, [user, language]);
|
|
54726
|
+
var authNavigations = useMemo(function () {
|
|
54727
|
+
return navigation.map(function (item) {
|
|
54728
|
+
var _item$_children, _item$_children2;
|
|
54729
|
+
|
|
54730
|
+
return _extends({}, item, {
|
|
54731
|
+
name: t(item.name),
|
|
54732
|
+
_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) {
|
|
54733
|
+
return _extends({}, x, {
|
|
54734
|
+
name: t(x.name)
|
|
54735
|
+
});
|
|
54736
|
+
}) : undefined
|
|
54737
|
+
});
|
|
54738
|
+
}).filter(function (nav) {
|
|
54739
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
54740
|
+
}).filter(function (nav) {
|
|
54741
|
+
return !!nav.isDistrict === isDistrict;
|
|
54742
|
+
});
|
|
54743
|
+
}, [user, language]);
|
|
54744
|
+
|
|
54745
|
+
var getInformationSetting = function getInformationSetting() {
|
|
54746
|
+
try {
|
|
54747
|
+
var _temp2 = _catch(function () {
|
|
54748
|
+
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
54749
|
+
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
54750
|
+
});
|
|
54751
|
+
}, function (err) {
|
|
54752
|
+
console.error(err);
|
|
54753
|
+
});
|
|
54754
|
+
|
|
54755
|
+
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
54756
|
+
} catch (e) {
|
|
54757
|
+
return Promise.reject(e);
|
|
54758
|
+
}
|
|
54759
|
+
};
|
|
54760
|
+
|
|
54761
|
+
useEffect(function () {
|
|
54762
|
+
checkAuthentication();
|
|
54763
|
+
}, []);
|
|
54764
|
+
useEffect(function () {
|
|
54765
|
+
getInformationSetting();
|
|
54766
|
+
}, [location.pathname]);
|
|
54767
|
+
|
|
54768
|
+
var checkAuthentication = function checkAuthentication() {
|
|
54769
|
+
try {
|
|
54770
|
+
var _temp4 = _catch(function () {
|
|
54771
|
+
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
54772
|
+
tokenStatus ? loadInfo() : resetAuth();
|
|
54773
|
+
});
|
|
54774
|
+
}, function () {
|
|
54775
|
+
resetAuth();
|
|
54776
|
+
});
|
|
54777
|
+
|
|
54778
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
54779
|
+
} catch (e) {
|
|
54780
|
+
return Promise.reject(e);
|
|
54781
|
+
}
|
|
54782
|
+
};
|
|
54783
|
+
|
|
54784
|
+
var loadInfo = function loadInfo() {
|
|
54785
|
+
try {
|
|
54786
|
+
var _temp6 = _catch(function () {
|
|
54787
|
+
return Promise.resolve(getInfo()).then(function (info) {
|
|
54788
|
+
var _info$data, _info$data$roles;
|
|
54789
|
+
|
|
54790
|
+
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"))) {
|
|
54791
|
+
resetAuth();
|
|
54792
|
+
}
|
|
54793
|
+
|
|
54794
|
+
dispatch(setUser(info.data));
|
|
54795
|
+
});
|
|
54796
|
+
}, function () {
|
|
54797
|
+
resetAuth();
|
|
54798
|
+
});
|
|
54799
|
+
|
|
54800
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
54801
|
+
} catch (e) {
|
|
54802
|
+
return Promise.reject(e);
|
|
54803
|
+
}
|
|
54804
|
+
};
|
|
54805
|
+
|
|
54806
|
+
var resetAuth = function resetAuth() {
|
|
54807
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
54808
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
54809
|
+
localStorage.removeItem("ROLES");
|
|
54810
|
+
history.push("/");
|
|
54811
|
+
};
|
|
54812
|
+
|
|
54813
|
+
if (!user) {
|
|
54814
|
+
return React.createElement(Loading, null);
|
|
54815
|
+
}
|
|
54816
|
+
|
|
54817
|
+
return React.createElement("div", {
|
|
54818
|
+
className: "c-app c-default-layout"
|
|
54819
|
+
}, !isNotification && React.createElement(TheSidebar, {
|
|
54820
|
+
navigation: authNavigations
|
|
54821
|
+
}), React.createElement("div", {
|
|
54822
|
+
className: "c-wrapper"
|
|
54823
|
+
}, !isNotification && React.createElement(TheHeader, {
|
|
54824
|
+
onToggleModel: handleToggleModel
|
|
54825
|
+
}), React.createElement("div", {
|
|
54826
|
+
className: "c-body bg-white"
|
|
54827
|
+
}, React.createElement(TheContent$1, {
|
|
54828
|
+
routes: authRoutes
|
|
54829
|
+
}))), React.createElement(ModelSelectRole, {
|
|
54830
|
+
open: openModelSelectRole,
|
|
54831
|
+
onToggleModel: handleToggleModel
|
|
54832
|
+
}));
|
|
54833
|
+
};
|
|
54834
|
+
|
|
54799
54835
|
var amplitudeClient = amplitude;
|
|
54800
54836
|
|
|
54801
54837
|
export { ACCESS_TOKEN, ANSWER_EDITOR_HEIGHT, AcademicClassSelector, AddButton, BASE_URL, CHAT_CHANNEL, CategorySelector, CommonAlert, CommonHeader, CommonModal$1 as CommonModal, CreatableSelector, CustomPagination, CustomSelector, CustomTabs as CustomTab, DATE_FORMAT, DATE_RESULT, DEFAULT_FILTER, DEFAULT_LANGUAGE_CODE, Dashboard, DeleteButtonIcon, DetailActionButtons, EMOTIONS, EditButtonIcon, EmailTemplateDetail, EmailTemplateList, EmptyDataAlert, ErrorHandler, FULL_DATE_RESULT, FaqList, InputFile as FileInput, GOOGLE_RECAPTCHA_KEY, GalleryList, INIT_AMPLITUDE_KEY_PROD, INIT_AMPLITUDE_KEY_STAGE, IS_USER_SESSION_BROWSER, Images, LANGUAGES, LICENSE_AGGRID, LinkEditButton, Loading, Login, MediaList, NOTIFICATION_ALERT_KEY, NOTIFICATION_CHANNEL, NotFound, NotificationList, NotificationLogoutModal, NotificationModal, QUESTION_TYPES, QUESTION_TYPES_OPTIONS, QuestionCategorySelector, QuestionTypeSelector, QuitPrompt, ReactNotification, RequiredLabel$1 as RequiredLabel, SANDBOX_NOTIFICATION, SUPPORTED_LANGUAGES_CODE, SandboxAlert, SchoolList, ScrollToTop, SearchBox$1 as SearchBox, SearchBoxContainer, SkillList, StarRatingSelector, SuggestionCategorySelector, TAB_COLORS, TINY_MCE_API_KEY, TheContent$1 as TheContent, TheLayout, ToggleButton, UploadFileButton, UserContainer, UserDetail, UserList, addTab, amplitudeClient, answerQuestion, answerQuestionDataPlayer, api, apiUpload, canAccess as canAccessRoute, changeNote, changeTags, clearTab, closeTab, debounce, editTab, editorConfig, firstCheckToken, generateRandomString, getCookieValue, getFileUrl, getInfo, getStaticFileUrl, getTextFromHTML, i18n, initAmplitude, isInViewport, isLocalhost, reset, setAlert, setAssessmentList, setAssignmentList, setAssistantList, setBadgeList, setBandScoreList, setCertificateList, setClassList, setConferenceRubricList, setConversationOneToOne, setCurrentStudentId, setCurrentStudentName, setCurrentStudentUserId, setCustomAlertList, setDataPlayer, setEditItemQuesion, setEnableIEP, setEnableMarioAi, setEnableSurvey, setFeedbackList, setFilterWidget, setGoalExampleList, setImproveMyClass, setLanguage, setLearningSupportCategoryList, setLoading, setMailCategory, setModal, setMoveItemQuestion, setMyStudent, setOpenModelCongratulation, setQuestionByCategory, setQuestionCateList, setQuestionList, setReflectionList, setReflectionResultList, setResetQuestionList, setSandboxMode, setSchoolBlankDayList, setSelectQuestion, setSemesterList, setSessionPlayer, setSessionTemplateGeneralClassList, setSessionTemplateList, setStartTime, setStrategyList, setStudentIdSelectedByTeacher, setStudentList, setSubjectList, setSuggestionList, setTurnOffPassWhenChangeMode, setTutorialScreenList, setUser, setUserList, setWeeklyQuestList, showFontSize, showMenuBar, store, systemCertificateUpload, systemStudentBadge, uploadFile, useFilters, useGalleryList, utcToLocalTime };
|