mario-core 2.9.413-feedback → 2.9.414-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.
@@ -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, 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';
5
+ import React, { useCallback, useState, useEffect, useRef, useMemo, Suspense, memo, Fragment, forwardRef, useImperativeHandle } from 'react';
6
+ import { Input, Form, FormGroup, Row, Col, Navbar, NavbarBrand, Collapse, Nav, NavItem, NavLink, Dropdown, DropdownToggle, DropdownMenu, DropdownItem, Modal, Button, Alert, Pagination, PaginationItem, PaginationLink, Table, Label, 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, CContainer, CHeader, CToggler, CHeaderBrand, CHeaderNav } from '@coreui/react';
20
+ import { CSidebar, CSidebarBrand, CSidebarNav, CCreateElement, CSidebarNavDivider, CSidebarNavDropdown, CSidebarNavItem, CSidebarNavTitle, CSidebarFooter, CHeader, CToggler, CHeaderBrand, CHeaderNav, CContainer } 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';
@@ -2034,7 +2034,6 @@ var your_survey_was_sent_to_x_students_and_y_staff_members_you_can_keep_track_of
2034
2034
  var leave = "leave";
2035
2035
  var go_to_the_survey_dashboard = "Go to the Survey Dashboard";
2036
2036
  var my_dashboard = "My Dashboard";
2037
- var nice_choice_what_area_of_category_would_you_like_to_work_on = "Nice choice! What area of {{category}} would you like to work on?";
2038
2037
  var nice_choice_what_area_of_academics_would_you_like_to_work_on = "Nice choice! What area of Academics would you like to work on?";
2039
2038
  var nice_choice_what_area_of_organization_would_you_like_to_work_on = "Nice choice! What area of Organization would you like to work on?";
2040
2039
  var nice_choice_what_area_of_focus_would_you_like_to_work_on = "Nice choice! What area of Focus would you like to work on?";
@@ -4227,7 +4226,6 @@ var lang_us = {
4227
4226
  leave: leave,
4228
4227
  go_to_the_survey_dashboard: go_to_the_survey_dashboard,
4229
4228
  my_dashboard: my_dashboard,
4230
- nice_choice_what_area_of_category_would_you_like_to_work_on: nice_choice_what_area_of_category_would_you_like_to_work_on,
4231
4229
  "nice_choice_what_area_of_well-being_would_you_like_to_work_on": "Nice choice! What area of Well-being would you like to work on?",
4232
4230
  nice_choice_what_area_of_academics_would_you_like_to_work_on: nice_choice_what_area_of_academics_would_you_like_to_work_on,
4233
4231
  nice_choice_what_area_of_organization_would_you_like_to_work_on: nice_choice_what_area_of_organization_would_you_like_to_work_on,
@@ -6395,7 +6393,6 @@ var your_survey_was_sent_to_x_students_and_y_staff_members_you_can_keep_track_of
6395
6393
  var leave$1 = "leave";
6396
6394
  var go_to_the_survey_dashboard$1 = "Go to the Survey Dashboard";
6397
6395
  var my_dashboard$1 = "My Dashboard";
6398
- var nice_choice_what_area_of_category_would_you_like_to_work_on$1 = "Nice choice! What area of {{category}} would you like to work on?";
6399
6396
  var nice_choice_what_area_of_academics_would_you_like_to_work_on$1 = "Nice choice! What area of Academics would you like to work on?";
6400
6397
  var nice_choice_what_area_of_organization_would_you_like_to_work_on$1 = "Nice choice! What area of Organization would you like to work on?";
6401
6398
  var nice_choice_what_area_of_focus_would_you_like_to_work_on$1 = "Nice choice! What area of Focus would you like to work on?";
@@ -8586,7 +8583,6 @@ var lang_uk = {
8586
8583
  leave: leave$1,
8587
8584
  go_to_the_survey_dashboard: go_to_the_survey_dashboard$1,
8588
8585
  my_dashboard: my_dashboard$1,
8589
- nice_choice_what_area_of_category_would_you_like_to_work_on: nice_choice_what_area_of_category_would_you_like_to_work_on$1,
8590
8586
  "nice_choice_what_area_of_well-being_would_you_like_to_work_on": "Nice choice! What area of Well-being would you like to work on?",
8591
8587
  nice_choice_what_area_of_academics_would_you_like_to_work_on: nice_choice_what_area_of_academics_would_you_like_to_work_on$1,
8592
8588
  nice_choice_what_area_of_organization_would_you_like_to_work_on: nice_choice_what_area_of_organization_would_you_like_to_work_on$1,
@@ -10784,7 +10780,6 @@ var your_survey_was_sent_to_x_students_and_y_staff_members_you_can_keep_track_of
10784
10780
  var leave$2 = "يترك";
10785
10781
  var go_to_the_survey_dashboard$2 = "انتقل إلى لوحة معلومات الاستطلاع";
10786
10782
  var my_dashboard$2 = "لوحة التحكم الخاصة بي";
10787
- var nice_choice_what_area_of_category_would_you_like_to_work_on$2 = "اختيار جميل! ما هو مجال {{category}} الذي ترغب في العمل عليه؟";
10788
10783
  var nice_choice_what_area_of_academics_would_you_like_to_work_on$2 = "اختيار جميل! ما هو المجال الأكاديمي الذي ترغب بالعمل فيه؟";
10789
10784
  var nice_choice_what_area_of_organization_would_you_like_to_work_on$2 = "اختيار جميل! في أي مجال من مجالات المنظمة تود العمل؟";
10790
10785
  var nice_choice_what_area_of_focus_would_you_like_to_work_on$2 = "اختيار جميل! ما هو مجال التركيز الذي ترغب في العمل عليه؟";
@@ -13007,7 +13002,6 @@ var lang_ar = {
13007
13002
  leave: leave$2,
13008
13003
  go_to_the_survey_dashboard: go_to_the_survey_dashboard$2,
13009
13004
  my_dashboard: my_dashboard$2,
13010
- nice_choice_what_area_of_category_would_you_like_to_work_on: nice_choice_what_area_of_category_would_you_like_to_work_on$2,
13011
13005
  "nice_choice_what_area_of_well-being_would_you_like_to_work_on": "اختيار جميل! ما هو مجال الصحة والرفاهية الذي ترغب في العمل فيه؟",
13012
13006
  nice_choice_what_area_of_academics_would_you_like_to_work_on: nice_choice_what_area_of_academics_would_you_like_to_work_on$2,
13013
13007
  nice_choice_what_area_of_organization_would_you_like_to_work_on: nice_choice_what_area_of_organization_would_you_like_to_work_on$2,
@@ -15203,7 +15197,6 @@ var your_survey_was_sent_to_x_students_and_y_staff_members_you_can_keep_track_of
15203
15197
  var leave$3 = "dejar";
15204
15198
  var go_to_the_survey_dashboard$3 = "Ir al panel de encuestas";
15205
15199
  var my_dashboard$3 = "Mi panel de control";
15206
- var nice_choice_what_area_of_category_would_you_like_to_work_on$3 = "¡Buena elección! ¿En qué área de {{category}} te gustaría trabajar?";
15207
15200
  var nice_choice_what_area_of_academics_would_you_like_to_work_on$3 = "¡Chica Nick! Y veo si tienes estudios académicos y un hijo tuyo, Taher, ¿tienes algún trabajo?";
15208
15201
  var nice_choice_what_area_of_organization_would_you_like_to_work_on$3 = "¡Chica Nick! Y a ver si ya estás arreglando y tienes un hijo, tienes un papel?";
15209
15202
  var nice_choice_what_area_of_focus_would_you_like_to_work_on$3 = "¡Chica Nick! Y a ver si Fox y su hijo son como tú, Taher, ¿qué pasa?";
@@ -17426,7 +17419,6 @@ var lang_es = {
17426
17419
  leave: leave$3,
17427
17420
  go_to_the_survey_dashboard: go_to_the_survey_dashboard$3,
17428
17421
  my_dashboard: my_dashboard$3,
17429
- nice_choice_what_area_of_category_would_you_like_to_work_on: nice_choice_what_area_of_category_would_you_like_to_work_on$3,
17430
17422
  "nice_choice_what_area_of_well-being_would_you_like_to_work_on": "¡Buena elección! ¿En qué área del bienestar te gustaría trabajar?",
17431
17423
  nice_choice_what_area_of_academics_would_you_like_to_work_on: nice_choice_what_area_of_academics_would_you_like_to_work_on$3,
17432
17424
  nice_choice_what_area_of_organization_would_you_like_to_work_on: nice_choice_what_area_of_organization_would_you_like_to_work_on$3,
@@ -19622,7 +19614,6 @@ var your_survey_was_sent_to_x_students_and_y_staff_members_you_can_keep_track_of
19622
19614
  var leave$4 = "离开";
19623
19615
  var go_to_the_survey_dashboard$4 = "前往调查仪表板";
19624
19616
  var my_dashboard$4 = "我的仪表板";
19625
- var nice_choice_what_area_of_category_would_you_like_to_work_on$4 = "不错的选择!您想在哪个{{category}}领域开展工作?";
19626
19617
  var nice_choice_what_area_of_academics_would_you_like_to_work_on$4 = "尼克·奇克!我看到如果你有学者和你的儿子塔希尔,你有论文吗?";
19627
19618
  var nice_choice_what_area_of_organization_would_you_like_to_work_on$4 = "尼克·奇克!让我看看,如果您正在安排,并且您有一个儿子,您有文件吗?";
19628
19619
  var nice_choice_what_area_of_focus_would_you_like_to_work_on$4 = "不错的选择!您希望在哪个重点领域开展工作?";
@@ -21845,7 +21836,6 @@ var lang_zh = {
21845
21836
  leave: leave$4,
21846
21837
  go_to_the_survey_dashboard: go_to_the_survey_dashboard$4,
21847
21838
  my_dashboard: my_dashboard$4,
21848
- nice_choice_what_area_of_category_would_you_like_to_work_on: nice_choice_what_area_of_category_would_you_like_to_work_on$4,
21849
21839
  "nice_choice_what_area_of_well-being_would_you_like_to_work_on": "不错的选择!您想在哪个幸福健康领域开展工作?",
21850
21840
  nice_choice_what_area_of_academics_would_you_like_to_work_on: nice_choice_what_area_of_academics_would_you_like_to_work_on$4,
21851
21841
  nice_choice_what_area_of_organization_would_you_like_to_work_on: nice_choice_what_area_of_organization_would_you_like_to_work_on$4,
@@ -41879,6 +41869,212 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
41879
41869
  })), t("log_out")))));
41880
41870
  };
41881
41871
 
41872
+ var apiGetLanguage = function apiGetLanguage() {
41873
+ return api.get(BASE_URL + "/api/language");
41874
+ };
41875
+
41876
+ var apiUpdateLanguage = function apiUpdateLanguage(lang) {
41877
+ return api.put(BASE_URL + "/api/language?lang=" + lang);
41878
+ };
41879
+
41880
+ var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
41881
+
41882
+ var useLanguages = function useLanguages() {
41883
+ var dispatch = useDispatch();
41884
+
41885
+ var _useTranslation = useTranslation(),
41886
+ i18n = _useTranslation.i18n;
41887
+
41888
+ var language = useSelector(function (state) {
41889
+ return state.common.language;
41890
+ });
41891
+ var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
41892
+
41893
+ var _useState = useState([]),
41894
+ languageList = _useState[0],
41895
+ setLanguageList = _useState[1];
41896
+
41897
+ var _useState2 = useState(false),
41898
+ dropdownOpen = _useState2[0],
41899
+ setDropdownOpen = _useState2[1];
41900
+
41901
+ var _useState3 = useState(defaultLanguage),
41902
+ currentLang = _useState3[0],
41903
+ setCurrentLang = _useState3[1];
41904
+
41905
+ var toggle = function toggle() {
41906
+ return setDropdownOpen(function (prevState) {
41907
+ return !prevState;
41908
+ });
41909
+ };
41910
+
41911
+ var changeLanguageApp = function changeLanguageApp(lang) {
41912
+ try {
41913
+ var _temp3 = function _temp3() {
41914
+ dispatch(setLoading(false));
41915
+ };
41916
+
41917
+ dispatch(setLoading(true));
41918
+
41919
+ var _temp4 = _catch(function () {
41920
+ return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
41921
+ i18n.changeLanguage(lang);
41922
+ setCurrentLang(lang);
41923
+ dispatch(setLanguage(lang));
41924
+ });
41925
+ }, function (err) {
41926
+ var _err$response, _err$response$data;
41927
+
41928
+ dispatch(setAlert({
41929
+ type: "danger",
41930
+ 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
41931
+ }));
41932
+ });
41933
+
41934
+ return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
41935
+ } catch (e) {
41936
+ return Promise.reject(e);
41937
+ }
41938
+ };
41939
+
41940
+ var getListLanguage = function getListLanguage() {
41941
+ try {
41942
+ var _temp6 = _catch(function () {
41943
+ return Promise.resolve(apiGetLanguage()).then(function (res) {
41944
+ setLanguageList(res.data);
41945
+ });
41946
+ }, function (err) {
41947
+ var _err$response2, _err$response2$data;
41948
+
41949
+ dispatch(setAlert({
41950
+ type: "danger",
41951
+ 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
41952
+ }));
41953
+ });
41954
+
41955
+ return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
41956
+ } catch (e) {
41957
+ return Promise.reject(e);
41958
+ }
41959
+ };
41960
+
41961
+ useEffect(function () {
41962
+ defaultLanguage != language && changeLanguageApp(defaultLanguage);
41963
+ getListLanguage();
41964
+ }, []);
41965
+ return {
41966
+ languageList: languageList,
41967
+ toggle: toggle,
41968
+ dropdownOpen: dropdownOpen,
41969
+ currentLang: currentLang,
41970
+ changeLanguageApp: changeLanguageApp,
41971
+ setCurrentLang: setCurrentLang
41972
+ };
41973
+ };
41974
+
41975
+ var TheLanguageDropdown = function TheLanguageDropdown() {
41976
+ var _useLanguages = useLanguages(),
41977
+ languageList = _useLanguages.languageList,
41978
+ toggle = _useLanguages.toggle,
41979
+ dropdownOpen = _useLanguages.dropdownOpen,
41980
+ currentLang = _useLanguages.currentLang,
41981
+ changeLanguageApp = _useLanguages.changeLanguageApp;
41982
+
41983
+ var currentLanguage = useMemo(function () {
41984
+ var current = languageList.find(function (i) {
41985
+ return i.code === currentLang;
41986
+ });
41987
+ if (!current) return null;
41988
+ return React.createElement(React.Fragment, null, React.createElement("img", {
41989
+ className: "mr-2 " + styles['dropdown-menu-flag'],
41990
+ src: "" + getStaticFileUrl(current.image)
41991
+ }), " ", current.name);
41992
+ }, [currentLang, languageList]);
41993
+ return React.createElement(Dropdown, {
41994
+ isOpen: dropdownOpen,
41995
+ toggle: toggle,
41996
+ className: "" + styles["dropdown-menu"]
41997
+ }, React.createElement(DropdownToggle, {
41998
+ className: styles["header-avatar"] + " d-flex align-items-center"
41999
+ }, React.createElement("span", {
42000
+ style: {
42001
+ color: "#000",
42002
+ textTransform: "capitalize",
42003
+ display: 'flex',
42004
+ alignItems: 'center'
42005
+ }
42006
+ }, currentLanguage, React.createElement(BsChevronDown, {
42007
+ className: "ml-2",
42008
+ style: {
42009
+ fontSize: '10px'
42010
+ }
42011
+ }))), React.createElement(DropdownMenu, {
42012
+ className: styles["dropdown-content-language"]
42013
+ }, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
42014
+ return React.createElement(DropdownItem, {
42015
+ key: lang.code,
42016
+ className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
42017
+ onClick: function onClick() {
42018
+ return changeLanguageApp(lang.code);
42019
+ }
42020
+ }, React.createElement("div", {
42021
+ className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
42022
+ }, React.createElement("span", {
42023
+ className: "mr-2 d-flex hover-opacity"
42024
+ }, React.createElement("img", {
42025
+ style: {
42026
+ width: "30px",
42027
+ height: "25px",
42028
+ borderRadius: "5px"
42029
+ },
42030
+ src: getStaticFileUrl(lang.image)
42031
+ })), lang.name));
42032
+ })));
42033
+ };
42034
+
42035
+ var TheHeader = function TheHeader(_ref) {
42036
+ var onToggleModel = _ref.onToggleModel;
42037
+ var dispatch = useDispatch();
42038
+ var sidebarShow = useSelector(function (state) {
42039
+ return state.common.sidebarShow;
42040
+ });
42041
+
42042
+ var _useTranslation = useTranslation(),
42043
+ t = _useTranslation.t;
42044
+
42045
+ var toggleSidebarMobile = function toggleSidebarMobile() {
42046
+ var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
42047
+ dispatch(setSidebar(val));
42048
+ };
42049
+
42050
+ var isDistrict = window.location.host.includes("-district");
42051
+ return React.createElement(CHeader, {
42052
+ withSubheader: true,
42053
+ className: "d-flex align-items-center justify-content-end"
42054
+ }, React.createElement(CToggler, {
42055
+ inHeader: true,
42056
+ className: "ml-md-3 d-lg-none",
42057
+ onClick: toggleSidebarMobile
42058
+ }), React.createElement(CHeaderBrand, {
42059
+ className: "mx-auto flex-grow-1 d-lg-none",
42060
+ to: "/"
42061
+ }, React.createElement("img", {
42062
+ src: getStaticFileUrl(Images.LOGO_HEADER),
42063
+ className: styles["header-logo"]
42064
+ })), React.createElement(CHeaderNav, {
42065
+ className: "pr-3"
42066
+ }, React.createElement(TheLanguageDropdown, null), React.createElement("a", {
42067
+ className: "mr-3",
42068
+ style: {
42069
+ color: '#000'
42070
+ },
42071
+ href: '/privacy-policy',
42072
+ target: "blank"
42073
+ }, t("privacy_policy")), !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, {
42074
+ onToggleModel: onToggleModel
42075
+ })));
42076
+ };
42077
+
41882
42078
  var TITLE$3 = "Not found";
41883
42079
 
41884
42080
  var NotFound = function NotFound() {
@@ -41936,6 +42132,258 @@ var TheContent = function TheContent(_ref) {
41936
42132
 
41937
42133
  var TheContent$1 = React.memo(TheContent);
41938
42134
 
42135
+ var loadingStyle = {
42136
+ minWidth: "100vw",
42137
+ minHeight: "100vh",
42138
+ position: "fixed",
42139
+ top: 0,
42140
+ left: 0,
42141
+ zIndex: 999999999,
42142
+ backgroundColor: "rgba(0, 0, 0, 0.4)",
42143
+ display: "flex",
42144
+ justifyContent: "center",
42145
+ alignItems: "center"
42146
+ };
42147
+
42148
+ var Loading = function Loading() {
42149
+ var isLoading = useSelector(function (state) {
42150
+ return state.common.isLoading;
42151
+ });
42152
+ localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
42153
+ return isLoading ? React.createElement("div", {
42154
+ style: loadingStyle
42155
+ }, React.createElement("div", {
42156
+ className: "spinner-border text-secondary",
42157
+ role: "status"
42158
+ }, React.createElement("span", {
42159
+ className: "sr-only"
42160
+ }, "Loading..."))) : null;
42161
+ };
42162
+
42163
+ var firstCheckToken = function firstCheckToken() {
42164
+ return Promise.resolve(_catch(function () {
42165
+ var token = getAccessToken();
42166
+ return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
42167
+ return tokenStatus.data ? true : false;
42168
+ }) : false;
42169
+ }, function () {
42170
+ return false;
42171
+ }));
42172
+ };
42173
+
42174
+ var canAccess = function canAccess(userRoles, componentRoles) {
42175
+ if (!Array.isArray(userRoles)) {
42176
+ return false;
42177
+ }
42178
+
42179
+ if (Array.isArray(componentRoles)) {
42180
+ var intersects = userRoles.filter(function (i) {
42181
+ return componentRoles.includes(i);
42182
+ });
42183
+ return intersects.length > 0;
42184
+ }
42185
+
42186
+ return true;
42187
+ };
42188
+
42189
+ var ModelSelectRole = function ModelSelectRole(_ref) {
42190
+ var _handleUserRole;
42191
+
42192
+ var open = _ref.open,
42193
+ onToggleModel = _ref.onToggleModel;
42194
+ var dispatch = useDispatch();
42195
+
42196
+ var _useTranslation = useTranslation(),
42197
+ t = _useTranslation.t;
42198
+
42199
+ var history = useHistory();
42200
+ var pathname = window.location.pathname;
42201
+ var user = useSelector(function (state) {
42202
+ return state.common.user;
42203
+ });
42204
+ var roles = user === null || user === void 0 ? void 0 : user.roles;
42205
+
42206
+ var handleSelectUserRoles = function handleSelectUserRoles(roles) {
42207
+ dispatch(setLoading(true));
42208
+ var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
42209
+ dispatch(setUser(_extends({}, user, {
42210
+ roles: roleSelect
42211
+ })));
42212
+ localStorage.setItem("ROLES", roleSelect.toString());
42213
+ onToggleModel();
42214
+
42215
+ if (roles.includes("Parent")) {
42216
+ history.push("/parent");
42217
+ } else if (roles.includes("Admin")) {
42218
+ history.push("/admin/home");
42219
+ } else {
42220
+ pathname !== "/home" ? history.push("/home") : window.location.reload();
42221
+ }
42222
+ };
42223
+
42224
+ return React.createElement(Modal, {
42225
+ isOpen: open,
42226
+ toggle: function toggle() {
42227
+ return onToggleModel();
42228
+ },
42229
+ className: "" + styles["model-switch-roles"],
42230
+ centered: true
42231
+ }, React.createElement("p", {
42232
+ className: "" + styles["title"]
42233
+ }, 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) {
42234
+ return React.createElement("p", {
42235
+ key: r,
42236
+ 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" : ""],
42237
+ onClick: function onClick() {
42238
+ return handleSelectUserRoles([r]);
42239
+ }
42240
+ }, r == "SecondaryTeacher" ? "Support Teacher" : r);
42241
+ })));
42242
+ };
42243
+
42244
+ var TheLayout = function TheLayout(_ref) {
42245
+ var routes = _ref.routes,
42246
+ navigation = _ref.navigation;
42247
+ var history = useHistory();
42248
+ var dispatch = useDispatch();
42249
+ var user = useSelector(function (state) {
42250
+ return state.common.user;
42251
+ });
42252
+ var language = useSelector(function (state) {
42253
+ return state.common.language;
42254
+ });
42255
+
42256
+ var _useState = useState(false),
42257
+ openModelSelectRole = _useState[0],
42258
+ setOpenModelSelectRole = _useState[1];
42259
+
42260
+ var _useTranslation = useTranslation(),
42261
+ t = _useTranslation.t;
42262
+
42263
+ var location = useLocation();
42264
+ var isNotification = location.pathname.includes("notifications");
42265
+ var isDistrict = window.location.host.includes("-district");
42266
+
42267
+ var handleToggleModel = function handleToggleModel() {
42268
+ setOpenModelSelectRole(!openModelSelectRole);
42269
+ };
42270
+
42271
+ var authRoutes = useMemo(function () {
42272
+ return routes.filter(function (route) {
42273
+ return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
42274
+ }).filter(function (route) {
42275
+ return !!route.isDistrict === isDistrict;
42276
+ });
42277
+ }, [user, language]);
42278
+ var authNavigations = useMemo(function () {
42279
+ return navigation.map(function (item) {
42280
+ var _item$_children, _item$_children2;
42281
+
42282
+ return _extends({}, item, {
42283
+ name: t(item.name),
42284
+ _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) {
42285
+ return _extends({}, x, {
42286
+ name: t(x.name)
42287
+ });
42288
+ }) : undefined
42289
+ });
42290
+ }).filter(function (nav) {
42291
+ return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
42292
+ }).filter(function (nav) {
42293
+ return !!nav.isDistrict === isDistrict;
42294
+ });
42295
+ }, [user, language]);
42296
+
42297
+ var getInformationSetting = function getInformationSetting() {
42298
+ try {
42299
+ var _temp2 = _catch(function () {
42300
+ return Promise.resolve(getSchoolSettings()).then(function (res) {
42301
+ dispatch(setSandboxMode(res.data.isSandboxMode));
42302
+ });
42303
+ }, function (err) {
42304
+ console.error(err);
42305
+ });
42306
+
42307
+ return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
42308
+ } catch (e) {
42309
+ return Promise.reject(e);
42310
+ }
42311
+ };
42312
+
42313
+ useEffect(function () {
42314
+ checkAuthentication();
42315
+ }, []);
42316
+ useEffect(function () {
42317
+ getInformationSetting();
42318
+ }, [location.pathname]);
42319
+
42320
+ var checkAuthentication = function checkAuthentication() {
42321
+ try {
42322
+ var _temp4 = _catch(function () {
42323
+ return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
42324
+ tokenStatus ? loadInfo() : resetAuth();
42325
+ });
42326
+ }, function () {
42327
+ resetAuth();
42328
+ });
42329
+
42330
+ return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
42331
+ } catch (e) {
42332
+ return Promise.reject(e);
42333
+ }
42334
+ };
42335
+
42336
+ var loadInfo = function loadInfo() {
42337
+ try {
42338
+ var _temp6 = _catch(function () {
42339
+ return Promise.resolve(getInfo()).then(function (info) {
42340
+ var _info$data, _info$data$roles;
42341
+
42342
+ 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"))) {
42343
+ resetAuth();
42344
+ }
42345
+
42346
+ dispatch(setUser(info.data));
42347
+ });
42348
+ }, function () {
42349
+ resetAuth();
42350
+ });
42351
+
42352
+ return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
42353
+ } catch (e) {
42354
+ return Promise.reject(e);
42355
+ }
42356
+ };
42357
+
42358
+ var resetAuth = function resetAuth() {
42359
+ localStorage.removeItem(ACCESS_TOKEN);
42360
+ sessionStorage.removeItem(ACCESS_TOKEN);
42361
+ localStorage.removeItem("ROLES");
42362
+ history.push("/");
42363
+ };
42364
+
42365
+ if (!user) {
42366
+ return React.createElement(Loading, null);
42367
+ }
42368
+
42369
+ return React.createElement("div", {
42370
+ className: "c-app c-default-layout"
42371
+ }, !isNotification && React.createElement(TheSidebar, {
42372
+ navigation: authNavigations
42373
+ }), React.createElement("div", {
42374
+ className: "c-wrapper"
42375
+ }, !isNotification && React.createElement(TheHeader, {
42376
+ onToggleModel: handleToggleModel
42377
+ }), React.createElement("div", {
42378
+ className: "c-body bg-white"
42379
+ }, React.createElement(TheContent$1, {
42380
+ routes: authRoutes
42381
+ }))), React.createElement(ModelSelectRole, {
42382
+ open: openModelSelectRole,
42383
+ onToggleModel: handleToggleModel
42384
+ }));
42385
+ };
42386
+
41939
42387
  var buttonTextStyle = {
41940
42388
  fontWeight: 500
41941
42389
  };
@@ -51282,34 +51730,6 @@ var UserDetail = function UserDetail() {
51282
51730
  });
51283
51731
  };
51284
51732
 
51285
- var loadingStyle = {
51286
- minWidth: "100vw",
51287
- minHeight: "100vh",
51288
- position: "fixed",
51289
- top: 0,
51290
- left: 0,
51291
- zIndex: 999999999,
51292
- backgroundColor: "rgba(0, 0, 0, 0.4)",
51293
- display: "flex",
51294
- justifyContent: "center",
51295
- alignItems: "center"
51296
- };
51297
-
51298
- var Loading = function Loading() {
51299
- var isLoading = useSelector(function (state) {
51300
- return state.common.isLoading;
51301
- });
51302
- localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
51303
- return isLoading ? React.createElement("div", {
51304
- style: loadingStyle
51305
- }, React.createElement("div", {
51306
- className: "spinner-border text-secondary",
51307
- role: "status"
51308
- }, React.createElement("span", {
51309
- className: "sr-only"
51310
- }, "Loading..."))) : null;
51311
- };
51312
-
51313
51733
  var ScrollToTop = function ScrollToTop() {
51314
51734
  var _useLocation = useLocation(),
51315
51735
  pathname = _useLocation.pathname;
@@ -54333,32 +54753,6 @@ var store = configureStore({
54333
54753
  }
54334
54754
  });
54335
54755
 
54336
- var firstCheckToken = function firstCheckToken() {
54337
- return Promise.resolve(_catch(function () {
54338
- var token = getAccessToken();
54339
- return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
54340
- return tokenStatus.data ? true : false;
54341
- }) : false;
54342
- }, function () {
54343
- return false;
54344
- }));
54345
- };
54346
-
54347
- var canAccess = function canAccess(userRoles, componentRoles) {
54348
- if (!Array.isArray(userRoles)) {
54349
- return false;
54350
- }
54351
-
54352
- if (Array.isArray(componentRoles)) {
54353
- var intersects = userRoles.filter(function (i) {
54354
- return componentRoles.includes(i);
54355
- });
54356
- return intersects.length > 0;
54357
- }
54358
-
54359
- return true;
54360
- };
54361
-
54362
54756
  var isInViewport = function isInViewport(el) {
54363
54757
  var rect = el === null || el === void 0 ? void 0 : el.getBoundingClientRect();
54364
54758
  return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);
@@ -54392,410 +54786,6 @@ var generateRandomString = (function () {
54392
54786
  return (Math.random() + 1).toString(36).substring(7);
54393
54787
  });
54394
54788
 
54395
- var apiGetLanguage = function apiGetLanguage() {
54396
- return api.get(BASE_URL + "/api/language");
54397
- };
54398
-
54399
- var apiUpdateLanguage = function apiUpdateLanguage(lang) {
54400
- return api.put(BASE_URL + "/api/language?lang=" + lang);
54401
- };
54402
-
54403
- var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
54404
-
54405
- var useLanguages = function useLanguages() {
54406
- var dispatch = useDispatch();
54407
-
54408
- var _useTranslation = useTranslation(),
54409
- i18n = _useTranslation.i18n;
54410
-
54411
- var language = useSelector(function (state) {
54412
- return state.common.language;
54413
- });
54414
- var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
54415
-
54416
- var _useState = useState([]),
54417
- languageList = _useState[0],
54418
- setLanguageList = _useState[1];
54419
-
54420
- var _useState2 = useState(false),
54421
- dropdownOpen = _useState2[0],
54422
- setDropdownOpen = _useState2[1];
54423
-
54424
- var _useState3 = useState(defaultLanguage),
54425
- currentLang = _useState3[0],
54426
- setCurrentLang = _useState3[1];
54427
-
54428
- var toggle = function toggle() {
54429
- return setDropdownOpen(function (prevState) {
54430
- return !prevState;
54431
- });
54432
- };
54433
-
54434
- var changeLanguageApp = function changeLanguageApp(lang) {
54435
- try {
54436
- var _temp3 = function _temp3() {
54437
- dispatch(setLoading(false));
54438
- };
54439
-
54440
- dispatch(setLoading(true));
54441
-
54442
- var _temp4 = _catch(function () {
54443
- return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
54444
- i18n.changeLanguage(lang);
54445
- setCurrentLang(lang);
54446
- dispatch(setLanguage(lang));
54447
- });
54448
- }, function (err) {
54449
- var _err$response, _err$response$data;
54450
-
54451
- dispatch(setAlert({
54452
- type: "danger",
54453
- 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
54454
- }));
54455
- });
54456
-
54457
- return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
54458
- } catch (e) {
54459
- return Promise.reject(e);
54460
- }
54461
- };
54462
-
54463
- var getListLanguage = function getListLanguage() {
54464
- try {
54465
- var _temp6 = _catch(function () {
54466
- return Promise.resolve(apiGetLanguage()).then(function (res) {
54467
- setLanguageList(res.data);
54468
- });
54469
- }, function (err) {
54470
- var _err$response2, _err$response2$data;
54471
-
54472
- dispatch(setAlert({
54473
- type: "danger",
54474
- 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
54475
- }));
54476
- });
54477
-
54478
- return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
54479
- } catch (e) {
54480
- return Promise.reject(e);
54481
- }
54482
- };
54483
-
54484
- useEffect(function () {
54485
- defaultLanguage != language && changeLanguageApp(defaultLanguage);
54486
- getListLanguage();
54487
- }, []);
54488
- return {
54489
- languageList: languageList,
54490
- toggle: toggle,
54491
- dropdownOpen: dropdownOpen,
54492
- currentLang: currentLang,
54493
- changeLanguageApp: changeLanguageApp,
54494
- setCurrentLang: setCurrentLang
54495
- };
54496
- };
54497
-
54498
- var TheLanguageDropdown = function TheLanguageDropdown() {
54499
- var _useLanguages = useLanguages(),
54500
- languageList = _useLanguages.languageList,
54501
- toggle = _useLanguages.toggle,
54502
- dropdownOpen = _useLanguages.dropdownOpen,
54503
- currentLang = _useLanguages.currentLang,
54504
- changeLanguageApp = _useLanguages.changeLanguageApp;
54505
-
54506
- var currentLanguage = useMemo(function () {
54507
- var current = languageList.find(function (i) {
54508
- return i.code === currentLang;
54509
- });
54510
- if (!current) return null;
54511
- return React.createElement(React.Fragment, null, React.createElement("img", {
54512
- className: "mr-2 " + styles['dropdown-menu-flag'],
54513
- src: "" + getStaticFileUrl(current.image)
54514
- }), " ", current.name);
54515
- }, [currentLang, languageList]);
54516
- return React.createElement(Dropdown, {
54517
- isOpen: dropdownOpen,
54518
- toggle: toggle,
54519
- className: "" + styles["dropdown-menu"]
54520
- }, React.createElement(DropdownToggle, {
54521
- className: styles["header-avatar"] + " d-flex align-items-center"
54522
- }, React.createElement("span", {
54523
- style: {
54524
- color: "#000",
54525
- textTransform: "capitalize",
54526
- display: 'flex',
54527
- alignItems: 'center'
54528
- }
54529
- }, currentLanguage, React.createElement(BsChevronDown, {
54530
- className: "ml-2",
54531
- style: {
54532
- fontSize: '10px'
54533
- }
54534
- }))), React.createElement(DropdownMenu, {
54535
- className: styles["dropdown-content-language"]
54536
- }, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
54537
- return React.createElement(DropdownItem, {
54538
- key: lang.code,
54539
- className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
54540
- onClick: function onClick() {
54541
- return changeLanguageApp(lang.code);
54542
- }
54543
- }, React.createElement("div", {
54544
- className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
54545
- }, React.createElement("span", {
54546
- className: "mr-2 d-flex hover-opacity"
54547
- }, React.createElement("img", {
54548
- style: {
54549
- width: "30px",
54550
- height: "25px",
54551
- borderRadius: "5px"
54552
- },
54553
- src: getStaticFileUrl(lang.image)
54554
- })), lang.name));
54555
- })));
54556
- };
54557
-
54558
- var TheHeader = function TheHeader(_ref) {
54559
- var onToggleModel = _ref.onToggleModel;
54560
- var dispatch = useDispatch();
54561
- var sidebarShow = useSelector(function (state) {
54562
- return state.common.sidebarShow;
54563
- });
54564
-
54565
- var _useTranslation = useTranslation(),
54566
- t = _useTranslation.t;
54567
-
54568
- var toggleSidebarMobile = function toggleSidebarMobile() {
54569
- var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
54570
- dispatch(setSidebar(val));
54571
- };
54572
-
54573
- var isDistrict = window.location.host.includes("-district");
54574
- return React.createElement(CHeader, {
54575
- withSubheader: true,
54576
- className: "d-flex align-items-center justify-content-end"
54577
- }, React.createElement(CToggler, {
54578
- inHeader: true,
54579
- className: "ml-md-3 d-lg-none",
54580
- onClick: toggleSidebarMobile
54581
- }), React.createElement(CHeaderBrand, {
54582
- className: "mx-auto flex-grow-1 d-lg-none",
54583
- to: "/"
54584
- }, React.createElement("img", {
54585
- src: getStaticFileUrl(Images.LOGO_HEADER),
54586
- className: styles["header-logo"]
54587
- })), React.createElement(CHeaderNav, {
54588
- className: "pr-3"
54589
- }, React.createElement(TheLanguageDropdown, null), React.createElement("a", {
54590
- className: "mr-3",
54591
- style: {
54592
- color: '#000'
54593
- },
54594
- href: '/privacy-policy',
54595
- target: "blank"
54596
- }, t("privacy_policy")), !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, {
54597
- onToggleModel: onToggleModel
54598
- })));
54599
- };
54600
-
54601
- var ModelSelectRole = function ModelSelectRole(_ref) {
54602
- var _handleUserRole;
54603
-
54604
- var open = _ref.open,
54605
- onToggleModel = _ref.onToggleModel;
54606
- var dispatch = useDispatch();
54607
-
54608
- var _useTranslation = useTranslation(),
54609
- t = _useTranslation.t;
54610
-
54611
- var history = useHistory();
54612
- var pathname = window.location.pathname;
54613
- var user = useSelector(function (state) {
54614
- return state.common.user;
54615
- });
54616
- var roles = user === null || user === void 0 ? void 0 : user.roles;
54617
-
54618
- var handleSelectUserRoles = function handleSelectUserRoles(roles) {
54619
- dispatch(setLoading(true));
54620
- var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
54621
- dispatch(setUser(_extends({}, user, {
54622
- roles: roleSelect
54623
- })));
54624
- localStorage.setItem("ROLES", roleSelect.toString());
54625
- onToggleModel();
54626
-
54627
- if (roles.includes("Parent")) {
54628
- history.push("/parent");
54629
- } else if (roles.includes("Admin")) {
54630
- history.push("/admin/home");
54631
- } else {
54632
- pathname !== "/home" ? history.push("/home") : window.location.reload();
54633
- }
54634
- };
54635
-
54636
- return React.createElement(Modal, {
54637
- isOpen: open,
54638
- toggle: function toggle() {
54639
- return onToggleModel();
54640
- },
54641
- className: "" + styles["model-switch-roles"],
54642
- centered: true
54643
- }, React.createElement("p", {
54644
- className: "" + styles["title"]
54645
- }, 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) {
54646
- return React.createElement("p", {
54647
- key: r,
54648
- 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" : ""],
54649
- onClick: function onClick() {
54650
- return handleSelectUserRoles([r]);
54651
- }
54652
- }, r == "SecondaryTeacher" ? "Support Teacher" : r);
54653
- })));
54654
- };
54655
-
54656
- var TheLayout = function TheLayout(_ref) {
54657
- var routes = _ref.routes,
54658
- navigation = _ref.navigation;
54659
- var history = useHistory();
54660
- var dispatch = useDispatch();
54661
- var user = useSelector(function (state) {
54662
- return state.common.user;
54663
- });
54664
- var language = useSelector(function (state) {
54665
- return state.common.language;
54666
- });
54667
-
54668
- var _useState = useState(false),
54669
- openModelSelectRole = _useState[0],
54670
- setOpenModelSelectRole = _useState[1];
54671
-
54672
- var _useTranslation = useTranslation(),
54673
- t = _useTranslation.t;
54674
-
54675
- var location = useLocation();
54676
- var isNotification = location.pathname.includes("notifications");
54677
- var isDistrict = window.location.host.includes("-district");
54678
-
54679
- var handleToggleModel = function handleToggleModel() {
54680
- setOpenModelSelectRole(!openModelSelectRole);
54681
- };
54682
-
54683
- var authRoutes = useMemo(function () {
54684
- return routes.filter(function (route) {
54685
- return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
54686
- }).filter(function (route) {
54687
- return !!route.isDistrict === isDistrict;
54688
- });
54689
- }, [user, language]);
54690
- var authNavigations = useMemo(function () {
54691
- return navigation.map(function (item) {
54692
- var _item$_children, _item$_children2;
54693
-
54694
- return _extends({}, item, {
54695
- name: t(item.name),
54696
- _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) {
54697
- return _extends({}, x, {
54698
- name: t(x.name)
54699
- });
54700
- }) : undefined
54701
- });
54702
- }).filter(function (nav) {
54703
- return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
54704
- }).filter(function (nav) {
54705
- return !!nav.isDistrict === isDistrict;
54706
- });
54707
- }, [user, language]);
54708
-
54709
- var getInformationSetting = function getInformationSetting() {
54710
- try {
54711
- var _temp2 = _catch(function () {
54712
- return Promise.resolve(getSchoolSettings()).then(function (res) {
54713
- dispatch(setSandboxMode(res.data.isSandboxMode));
54714
- });
54715
- }, function (err) {
54716
- console.error(err);
54717
- });
54718
-
54719
- return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
54720
- } catch (e) {
54721
- return Promise.reject(e);
54722
- }
54723
- };
54724
-
54725
- useEffect(function () {
54726
- checkAuthentication();
54727
- }, []);
54728
- useEffect(function () {
54729
- getInformationSetting();
54730
- }, [location.pathname]);
54731
-
54732
- var checkAuthentication = function checkAuthentication() {
54733
- try {
54734
- var _temp4 = _catch(function () {
54735
- return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
54736
- tokenStatus ? loadInfo() : resetAuth();
54737
- });
54738
- }, function () {
54739
- resetAuth();
54740
- });
54741
-
54742
- return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
54743
- } catch (e) {
54744
- return Promise.reject(e);
54745
- }
54746
- };
54747
-
54748
- var loadInfo = function loadInfo() {
54749
- try {
54750
- var _temp6 = _catch(function () {
54751
- return Promise.resolve(getInfo()).then(function (info) {
54752
- var _info$data, _info$data$roles;
54753
-
54754
- 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"))) {
54755
- resetAuth();
54756
- }
54757
-
54758
- dispatch(setUser(info.data));
54759
- });
54760
- }, function () {
54761
- resetAuth();
54762
- });
54763
-
54764
- return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
54765
- } catch (e) {
54766
- return Promise.reject(e);
54767
- }
54768
- };
54769
-
54770
- var resetAuth = function resetAuth() {
54771
- localStorage.removeItem(ACCESS_TOKEN);
54772
- sessionStorage.removeItem(ACCESS_TOKEN);
54773
- localStorage.removeItem("ROLES");
54774
- history.push("/");
54775
- };
54776
-
54777
- if (!user) {
54778
- return React.createElement(Loading, null);
54779
- }
54780
-
54781
- return React.createElement("div", {
54782
- className: "c-app c-default-layout"
54783
- }, !isNotification && React.createElement(TheSidebar, {
54784
- navigation: authNavigations
54785
- }), React.createElement("div", {
54786
- className: "c-wrapper"
54787
- }, !isNotification && React.createElement(TheHeader, {
54788
- onToggleModel: handleToggleModel
54789
- }), React.createElement("div", {
54790
- className: "c-body bg-white"
54791
- }, React.createElement(TheContent$1, {
54792
- routes: authRoutes
54793
- }))), React.createElement(ModelSelectRole, {
54794
- open: openModelSelectRole,
54795
- onToggleModel: handleToggleModel
54796
- }));
54797
- };
54798
-
54799
54789
  var amplitudeClient = amplitude;
54800
54790
 
54801
54791
  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 };