mario-core 2.9.430-feedback → 2.9.433-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/index.js +460 -460
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +463 -463
- package/dist/index.modern.js.map +1 -1
- 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';
|
|
@@ -680,7 +680,7 @@ var start = "start";
|
|
|
680
680
|
var teacher_reflection = "Teacher Reflections";
|
|
681
681
|
var notes = "Notes";
|
|
682
682
|
var student_reflection = "Student Reflections";
|
|
683
|
-
var view_latest_check_ins = "View Latest Check-
|
|
683
|
+
var view_latest_check_ins = "View Latest Check-ins";
|
|
684
684
|
var this_week_s = "This Week's";
|
|
685
685
|
var missing_weekly_check_in = "missing weekly check-in";
|
|
686
686
|
var add_new_student = "Add new student";
|
|
@@ -697,7 +697,7 @@ var start_a_1_1_conversation = "Start a 1-1 Conversation";
|
|
|
697
697
|
var view_results = "View results";
|
|
698
698
|
var request_check_in = "Request check-in";
|
|
699
699
|
var last = "Last";
|
|
700
|
-
var latest_check_ins = "Latest Check-
|
|
700
|
+
var latest_check_ins = "Latest Check-ins";
|
|
701
701
|
var students_who_missing_weekly_check_in = "Students who missing weekly check-in";
|
|
702
702
|
var this_student_does_nt_have_missing_check_in = "This student doesn’t have missing check-in";
|
|
703
703
|
var no_student_missing_weekly_check_in = "No student missing weekly check-in";
|
|
@@ -42063,212 +42063,6 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
|
|
|
42063
42063
|
})), t("log_out")))));
|
|
42064
42064
|
};
|
|
42065
42065
|
|
|
42066
|
-
var apiGetLanguage = function apiGetLanguage() {
|
|
42067
|
-
return api.get(BASE_URL + "/api/language");
|
|
42068
|
-
};
|
|
42069
|
-
|
|
42070
|
-
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
42071
|
-
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
42072
|
-
};
|
|
42073
|
-
|
|
42074
|
-
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
42075
|
-
|
|
42076
|
-
var useLanguages = function useLanguages() {
|
|
42077
|
-
var dispatch = useDispatch();
|
|
42078
|
-
|
|
42079
|
-
var _useTranslation = useTranslation(),
|
|
42080
|
-
i18n = _useTranslation.i18n;
|
|
42081
|
-
|
|
42082
|
-
var language = useSelector(function (state) {
|
|
42083
|
-
return state.common.language;
|
|
42084
|
-
});
|
|
42085
|
-
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
42086
|
-
|
|
42087
|
-
var _useState = useState([]),
|
|
42088
|
-
languageList = _useState[0],
|
|
42089
|
-
setLanguageList = _useState[1];
|
|
42090
|
-
|
|
42091
|
-
var _useState2 = useState(false),
|
|
42092
|
-
dropdownOpen = _useState2[0],
|
|
42093
|
-
setDropdownOpen = _useState2[1];
|
|
42094
|
-
|
|
42095
|
-
var _useState3 = useState(defaultLanguage),
|
|
42096
|
-
currentLang = _useState3[0],
|
|
42097
|
-
setCurrentLang = _useState3[1];
|
|
42098
|
-
|
|
42099
|
-
var toggle = function toggle() {
|
|
42100
|
-
return setDropdownOpen(function (prevState) {
|
|
42101
|
-
return !prevState;
|
|
42102
|
-
});
|
|
42103
|
-
};
|
|
42104
|
-
|
|
42105
|
-
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
42106
|
-
try {
|
|
42107
|
-
var _temp3 = function _temp3() {
|
|
42108
|
-
dispatch(setLoading(false));
|
|
42109
|
-
};
|
|
42110
|
-
|
|
42111
|
-
dispatch(setLoading(true));
|
|
42112
|
-
|
|
42113
|
-
var _temp4 = _catch(function () {
|
|
42114
|
-
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
42115
|
-
i18n.changeLanguage(lang);
|
|
42116
|
-
setCurrentLang(lang);
|
|
42117
|
-
dispatch(setLanguage(lang));
|
|
42118
|
-
});
|
|
42119
|
-
}, function (err) {
|
|
42120
|
-
var _err$response, _err$response$data;
|
|
42121
|
-
|
|
42122
|
-
dispatch(setAlert({
|
|
42123
|
-
type: "danger",
|
|
42124
|
-
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
|
|
42125
|
-
}));
|
|
42126
|
-
});
|
|
42127
|
-
|
|
42128
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
42129
|
-
} catch (e) {
|
|
42130
|
-
return Promise.reject(e);
|
|
42131
|
-
}
|
|
42132
|
-
};
|
|
42133
|
-
|
|
42134
|
-
var getListLanguage = function getListLanguage() {
|
|
42135
|
-
try {
|
|
42136
|
-
var _temp6 = _catch(function () {
|
|
42137
|
-
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
42138
|
-
setLanguageList(res.data);
|
|
42139
|
-
});
|
|
42140
|
-
}, function (err) {
|
|
42141
|
-
var _err$response2, _err$response2$data;
|
|
42142
|
-
|
|
42143
|
-
dispatch(setAlert({
|
|
42144
|
-
type: "danger",
|
|
42145
|
-
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
|
|
42146
|
-
}));
|
|
42147
|
-
});
|
|
42148
|
-
|
|
42149
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
42150
|
-
} catch (e) {
|
|
42151
|
-
return Promise.reject(e);
|
|
42152
|
-
}
|
|
42153
|
-
};
|
|
42154
|
-
|
|
42155
|
-
useEffect(function () {
|
|
42156
|
-
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
42157
|
-
getListLanguage();
|
|
42158
|
-
}, []);
|
|
42159
|
-
return {
|
|
42160
|
-
languageList: languageList,
|
|
42161
|
-
toggle: toggle,
|
|
42162
|
-
dropdownOpen: dropdownOpen,
|
|
42163
|
-
currentLang: currentLang,
|
|
42164
|
-
changeLanguageApp: changeLanguageApp,
|
|
42165
|
-
setCurrentLang: setCurrentLang
|
|
42166
|
-
};
|
|
42167
|
-
};
|
|
42168
|
-
|
|
42169
|
-
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
42170
|
-
var _useLanguages = useLanguages(),
|
|
42171
|
-
languageList = _useLanguages.languageList,
|
|
42172
|
-
toggle = _useLanguages.toggle,
|
|
42173
|
-
dropdownOpen = _useLanguages.dropdownOpen,
|
|
42174
|
-
currentLang = _useLanguages.currentLang,
|
|
42175
|
-
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
42176
|
-
|
|
42177
|
-
var currentLanguage = useMemo(function () {
|
|
42178
|
-
var current = languageList.find(function (i) {
|
|
42179
|
-
return i.code === currentLang;
|
|
42180
|
-
});
|
|
42181
|
-
if (!current) return null;
|
|
42182
|
-
return React.createElement(React.Fragment, null, React.createElement("img", {
|
|
42183
|
-
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
42184
|
-
src: "" + getStaticFileUrl(current.image)
|
|
42185
|
-
}), " ", current.name);
|
|
42186
|
-
}, [currentLang, languageList]);
|
|
42187
|
-
return React.createElement(Dropdown, {
|
|
42188
|
-
isOpen: dropdownOpen,
|
|
42189
|
-
toggle: toggle,
|
|
42190
|
-
className: "" + styles["dropdown-menu"]
|
|
42191
|
-
}, React.createElement(DropdownToggle, {
|
|
42192
|
-
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
42193
|
-
}, React.createElement("span", {
|
|
42194
|
-
style: {
|
|
42195
|
-
color: "#000",
|
|
42196
|
-
textTransform: "capitalize",
|
|
42197
|
-
display: 'flex',
|
|
42198
|
-
alignItems: 'center'
|
|
42199
|
-
}
|
|
42200
|
-
}, currentLanguage, React.createElement(BsChevronDown, {
|
|
42201
|
-
className: "ml-2",
|
|
42202
|
-
style: {
|
|
42203
|
-
fontSize: '10px'
|
|
42204
|
-
}
|
|
42205
|
-
}))), React.createElement(DropdownMenu, {
|
|
42206
|
-
className: styles["dropdown-content-language"]
|
|
42207
|
-
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
42208
|
-
return React.createElement(DropdownItem, {
|
|
42209
|
-
key: lang.code,
|
|
42210
|
-
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
42211
|
-
onClick: function onClick() {
|
|
42212
|
-
return changeLanguageApp(lang.code);
|
|
42213
|
-
}
|
|
42214
|
-
}, React.createElement("div", {
|
|
42215
|
-
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
42216
|
-
}, React.createElement("span", {
|
|
42217
|
-
className: "mr-2 d-flex hover-opacity"
|
|
42218
|
-
}, React.createElement("img", {
|
|
42219
|
-
style: {
|
|
42220
|
-
width: "30px",
|
|
42221
|
-
height: "25px",
|
|
42222
|
-
borderRadius: "5px"
|
|
42223
|
-
},
|
|
42224
|
-
src: getStaticFileUrl(lang.image)
|
|
42225
|
-
})), lang.name));
|
|
42226
|
-
})));
|
|
42227
|
-
};
|
|
42228
|
-
|
|
42229
|
-
var TheHeader = function TheHeader(_ref) {
|
|
42230
|
-
var onToggleModel = _ref.onToggleModel;
|
|
42231
|
-
var dispatch = useDispatch();
|
|
42232
|
-
var sidebarShow = useSelector(function (state) {
|
|
42233
|
-
return state.common.sidebarShow;
|
|
42234
|
-
});
|
|
42235
|
-
|
|
42236
|
-
var _useTranslation = useTranslation(),
|
|
42237
|
-
t = _useTranslation.t;
|
|
42238
|
-
|
|
42239
|
-
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
42240
|
-
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
42241
|
-
dispatch(setSidebar(val));
|
|
42242
|
-
};
|
|
42243
|
-
|
|
42244
|
-
var isDistrict = window.location.host.includes("-district");
|
|
42245
|
-
return React.createElement(CHeader, {
|
|
42246
|
-
withSubheader: true,
|
|
42247
|
-
className: "d-flex align-items-center justify-content-end"
|
|
42248
|
-
}, React.createElement(CToggler, {
|
|
42249
|
-
inHeader: true,
|
|
42250
|
-
className: "ml-md-3 d-lg-none",
|
|
42251
|
-
onClick: toggleSidebarMobile
|
|
42252
|
-
}), React.createElement(CHeaderBrand, {
|
|
42253
|
-
className: "mx-auto flex-grow-1 d-lg-none",
|
|
42254
|
-
to: "/"
|
|
42255
|
-
}, React.createElement("img", {
|
|
42256
|
-
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
42257
|
-
className: styles["header-logo"]
|
|
42258
|
-
})), React.createElement(CHeaderNav, {
|
|
42259
|
-
className: "pr-3"
|
|
42260
|
-
}, React.createElement(TheLanguageDropdown, null), React.createElement("a", {
|
|
42261
|
-
className: "mr-3",
|
|
42262
|
-
style: {
|
|
42263
|
-
color: '#000'
|
|
42264
|
-
},
|
|
42265
|
-
href: '/privacy-policy',
|
|
42266
|
-
target: "blank"
|
|
42267
|
-
}, t("privacy_policy")), !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, {
|
|
42268
|
-
onToggleModel: onToggleModel
|
|
42269
|
-
})));
|
|
42270
|
-
};
|
|
42271
|
-
|
|
42272
42066
|
var TITLE$3 = "Not found";
|
|
42273
42067
|
|
|
42274
42068
|
var NotFound = function NotFound() {
|
|
@@ -42326,258 +42120,6 @@ var TheContent = function TheContent(_ref) {
|
|
|
42326
42120
|
|
|
42327
42121
|
var TheContent$1 = React.memo(TheContent);
|
|
42328
42122
|
|
|
42329
|
-
var loadingStyle = {
|
|
42330
|
-
minWidth: "100vw",
|
|
42331
|
-
minHeight: "100vh",
|
|
42332
|
-
position: "fixed",
|
|
42333
|
-
top: 0,
|
|
42334
|
-
left: 0,
|
|
42335
|
-
zIndex: 999999999,
|
|
42336
|
-
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
42337
|
-
display: "flex",
|
|
42338
|
-
justifyContent: "center",
|
|
42339
|
-
alignItems: "center"
|
|
42340
|
-
};
|
|
42341
|
-
|
|
42342
|
-
var Loading = function Loading() {
|
|
42343
|
-
var isLoading = useSelector(function (state) {
|
|
42344
|
-
return state.common.isLoading;
|
|
42345
|
-
});
|
|
42346
|
-
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
42347
|
-
return isLoading ? React.createElement("div", {
|
|
42348
|
-
style: loadingStyle
|
|
42349
|
-
}, React.createElement("div", {
|
|
42350
|
-
className: "spinner-border text-secondary",
|
|
42351
|
-
role: "status"
|
|
42352
|
-
}, React.createElement("span", {
|
|
42353
|
-
className: "sr-only"
|
|
42354
|
-
}, "Loading..."))) : null;
|
|
42355
|
-
};
|
|
42356
|
-
|
|
42357
|
-
var firstCheckToken = function firstCheckToken() {
|
|
42358
|
-
return Promise.resolve(_catch(function () {
|
|
42359
|
-
var token = getAccessToken();
|
|
42360
|
-
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
42361
|
-
return tokenStatus.data ? true : false;
|
|
42362
|
-
}) : false;
|
|
42363
|
-
}, function () {
|
|
42364
|
-
return false;
|
|
42365
|
-
}));
|
|
42366
|
-
};
|
|
42367
|
-
|
|
42368
|
-
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
42369
|
-
if (!Array.isArray(userRoles)) {
|
|
42370
|
-
return false;
|
|
42371
|
-
}
|
|
42372
|
-
|
|
42373
|
-
if (Array.isArray(componentRoles)) {
|
|
42374
|
-
var intersects = userRoles.filter(function (i) {
|
|
42375
|
-
return componentRoles.includes(i);
|
|
42376
|
-
});
|
|
42377
|
-
return intersects.length > 0;
|
|
42378
|
-
}
|
|
42379
|
-
|
|
42380
|
-
return true;
|
|
42381
|
-
};
|
|
42382
|
-
|
|
42383
|
-
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
42384
|
-
var _handleUserRole;
|
|
42385
|
-
|
|
42386
|
-
var open = _ref.open,
|
|
42387
|
-
onToggleModel = _ref.onToggleModel;
|
|
42388
|
-
var dispatch = useDispatch();
|
|
42389
|
-
|
|
42390
|
-
var _useTranslation = useTranslation(),
|
|
42391
|
-
t = _useTranslation.t;
|
|
42392
|
-
|
|
42393
|
-
var history = useHistory();
|
|
42394
|
-
var pathname = window.location.pathname;
|
|
42395
|
-
var user = useSelector(function (state) {
|
|
42396
|
-
return state.common.user;
|
|
42397
|
-
});
|
|
42398
|
-
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
42399
|
-
|
|
42400
|
-
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
42401
|
-
dispatch(setLoading(true));
|
|
42402
|
-
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
42403
|
-
dispatch(setUser(_extends({}, user, {
|
|
42404
|
-
roles: roleSelect
|
|
42405
|
-
})));
|
|
42406
|
-
localStorage.setItem("ROLES", roleSelect.toString());
|
|
42407
|
-
onToggleModel();
|
|
42408
|
-
|
|
42409
|
-
if (roles.includes("Parent")) {
|
|
42410
|
-
history.push("/parent");
|
|
42411
|
-
} else if (roles.includes("Admin")) {
|
|
42412
|
-
history.push("/admin/home");
|
|
42413
|
-
} else {
|
|
42414
|
-
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
42415
|
-
}
|
|
42416
|
-
};
|
|
42417
|
-
|
|
42418
|
-
return React.createElement(Modal, {
|
|
42419
|
-
isOpen: open,
|
|
42420
|
-
toggle: function toggle() {
|
|
42421
|
-
return onToggleModel();
|
|
42422
|
-
},
|
|
42423
|
-
className: "" + styles["model-switch-roles"],
|
|
42424
|
-
centered: true
|
|
42425
|
-
}, React.createElement("p", {
|
|
42426
|
-
className: "" + styles["title"]
|
|
42427
|
-
}, 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) {
|
|
42428
|
-
return React.createElement("p", {
|
|
42429
|
-
key: r,
|
|
42430
|
-
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" : ""],
|
|
42431
|
-
onClick: function onClick() {
|
|
42432
|
-
return handleSelectUserRoles([r]);
|
|
42433
|
-
}
|
|
42434
|
-
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
42435
|
-
})));
|
|
42436
|
-
};
|
|
42437
|
-
|
|
42438
|
-
var TheLayout = function TheLayout(_ref) {
|
|
42439
|
-
var routes = _ref.routes,
|
|
42440
|
-
navigation = _ref.navigation;
|
|
42441
|
-
var history = useHistory();
|
|
42442
|
-
var dispatch = useDispatch();
|
|
42443
|
-
var user = useSelector(function (state) {
|
|
42444
|
-
return state.common.user;
|
|
42445
|
-
});
|
|
42446
|
-
var language = useSelector(function (state) {
|
|
42447
|
-
return state.common.language;
|
|
42448
|
-
});
|
|
42449
|
-
|
|
42450
|
-
var _useState = useState(false),
|
|
42451
|
-
openModelSelectRole = _useState[0],
|
|
42452
|
-
setOpenModelSelectRole = _useState[1];
|
|
42453
|
-
|
|
42454
|
-
var _useTranslation = useTranslation(),
|
|
42455
|
-
t = _useTranslation.t;
|
|
42456
|
-
|
|
42457
|
-
var location = useLocation();
|
|
42458
|
-
var isNotification = location.pathname.includes("notifications");
|
|
42459
|
-
var isDistrict = window.location.host.includes("-district");
|
|
42460
|
-
|
|
42461
|
-
var handleToggleModel = function handleToggleModel() {
|
|
42462
|
-
setOpenModelSelectRole(!openModelSelectRole);
|
|
42463
|
-
};
|
|
42464
|
-
|
|
42465
|
-
var authRoutes = useMemo(function () {
|
|
42466
|
-
return routes.filter(function (route) {
|
|
42467
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
42468
|
-
}).filter(function (route) {
|
|
42469
|
-
return !!route.isDistrict === isDistrict;
|
|
42470
|
-
});
|
|
42471
|
-
}, [user, language]);
|
|
42472
|
-
var authNavigations = useMemo(function () {
|
|
42473
|
-
return navigation.map(function (item) {
|
|
42474
|
-
var _item$_children, _item$_children2;
|
|
42475
|
-
|
|
42476
|
-
return _extends({}, item, {
|
|
42477
|
-
name: t(item.name),
|
|
42478
|
-
_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) {
|
|
42479
|
-
return _extends({}, x, {
|
|
42480
|
-
name: t(x.name)
|
|
42481
|
-
});
|
|
42482
|
-
}) : undefined
|
|
42483
|
-
});
|
|
42484
|
-
}).filter(function (nav) {
|
|
42485
|
-
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
42486
|
-
}).filter(function (nav) {
|
|
42487
|
-
return !!nav.isDistrict === isDistrict;
|
|
42488
|
-
});
|
|
42489
|
-
}, [user, language]);
|
|
42490
|
-
|
|
42491
|
-
var getInformationSetting = function getInformationSetting() {
|
|
42492
|
-
try {
|
|
42493
|
-
var _temp2 = _catch(function () {
|
|
42494
|
-
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
42495
|
-
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
42496
|
-
});
|
|
42497
|
-
}, function (err) {
|
|
42498
|
-
console.error(err);
|
|
42499
|
-
});
|
|
42500
|
-
|
|
42501
|
-
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
42502
|
-
} catch (e) {
|
|
42503
|
-
return Promise.reject(e);
|
|
42504
|
-
}
|
|
42505
|
-
};
|
|
42506
|
-
|
|
42507
|
-
useEffect(function () {
|
|
42508
|
-
checkAuthentication();
|
|
42509
|
-
}, []);
|
|
42510
|
-
useEffect(function () {
|
|
42511
|
-
getInformationSetting();
|
|
42512
|
-
}, [location.pathname]);
|
|
42513
|
-
|
|
42514
|
-
var checkAuthentication = function checkAuthentication() {
|
|
42515
|
-
try {
|
|
42516
|
-
var _temp4 = _catch(function () {
|
|
42517
|
-
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
42518
|
-
tokenStatus ? loadInfo() : resetAuth();
|
|
42519
|
-
});
|
|
42520
|
-
}, function () {
|
|
42521
|
-
resetAuth();
|
|
42522
|
-
});
|
|
42523
|
-
|
|
42524
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
42525
|
-
} catch (e) {
|
|
42526
|
-
return Promise.reject(e);
|
|
42527
|
-
}
|
|
42528
|
-
};
|
|
42529
|
-
|
|
42530
|
-
var loadInfo = function loadInfo() {
|
|
42531
|
-
try {
|
|
42532
|
-
var _temp6 = _catch(function () {
|
|
42533
|
-
return Promise.resolve(getInfo()).then(function (info) {
|
|
42534
|
-
var _info$data, _info$data$roles;
|
|
42535
|
-
|
|
42536
|
-
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"))) {
|
|
42537
|
-
resetAuth();
|
|
42538
|
-
}
|
|
42539
|
-
|
|
42540
|
-
dispatch(setUser(info.data));
|
|
42541
|
-
});
|
|
42542
|
-
}, function () {
|
|
42543
|
-
resetAuth();
|
|
42544
|
-
});
|
|
42545
|
-
|
|
42546
|
-
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
42547
|
-
} catch (e) {
|
|
42548
|
-
return Promise.reject(e);
|
|
42549
|
-
}
|
|
42550
|
-
};
|
|
42551
|
-
|
|
42552
|
-
var resetAuth = function resetAuth() {
|
|
42553
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
42554
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
42555
|
-
localStorage.removeItem("ROLES");
|
|
42556
|
-
history.push("/");
|
|
42557
|
-
};
|
|
42558
|
-
|
|
42559
|
-
if (!user) {
|
|
42560
|
-
return React.createElement(Loading, null);
|
|
42561
|
-
}
|
|
42562
|
-
|
|
42563
|
-
return React.createElement("div", {
|
|
42564
|
-
className: "c-app c-default-layout"
|
|
42565
|
-
}, !isNotification && React.createElement(TheSidebar, {
|
|
42566
|
-
navigation: authNavigations
|
|
42567
|
-
}), React.createElement("div", {
|
|
42568
|
-
className: "c-wrapper"
|
|
42569
|
-
}, !isNotification && React.createElement(TheHeader, {
|
|
42570
|
-
onToggleModel: handleToggleModel
|
|
42571
|
-
}), React.createElement("div", {
|
|
42572
|
-
className: "c-body bg-white"
|
|
42573
|
-
}, React.createElement(TheContent$1, {
|
|
42574
|
-
routes: authRoutes
|
|
42575
|
-
}))), React.createElement(ModelSelectRole, {
|
|
42576
|
-
open: openModelSelectRole,
|
|
42577
|
-
onToggleModel: handleToggleModel
|
|
42578
|
-
}));
|
|
42579
|
-
};
|
|
42580
|
-
|
|
42581
42123
|
var buttonTextStyle = {
|
|
42582
42124
|
fontWeight: 500
|
|
42583
42125
|
};
|
|
@@ -51974,6 +51516,34 @@ var UserDetail = function UserDetail() {
|
|
|
51974
51516
|
});
|
|
51975
51517
|
};
|
|
51976
51518
|
|
|
51519
|
+
var loadingStyle = {
|
|
51520
|
+
minWidth: "100vw",
|
|
51521
|
+
minHeight: "100vh",
|
|
51522
|
+
position: "fixed",
|
|
51523
|
+
top: 0,
|
|
51524
|
+
left: 0,
|
|
51525
|
+
zIndex: 999999999,
|
|
51526
|
+
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
|
51527
|
+
display: "flex",
|
|
51528
|
+
justifyContent: "center",
|
|
51529
|
+
alignItems: "center"
|
|
51530
|
+
};
|
|
51531
|
+
|
|
51532
|
+
var Loading = function Loading() {
|
|
51533
|
+
var isLoading = useSelector(function (state) {
|
|
51534
|
+
return state.common.isLoading;
|
|
51535
|
+
});
|
|
51536
|
+
localStorage.setItem("LAST_TIME_REQUETST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
|
|
51537
|
+
return isLoading ? React.createElement("div", {
|
|
51538
|
+
style: loadingStyle
|
|
51539
|
+
}, React.createElement("div", {
|
|
51540
|
+
className: "spinner-border text-secondary",
|
|
51541
|
+
role: "status"
|
|
51542
|
+
}, React.createElement("span", {
|
|
51543
|
+
className: "sr-only"
|
|
51544
|
+
}, "Loading..."))) : null;
|
|
51545
|
+
};
|
|
51546
|
+
|
|
51977
51547
|
var ScrollToTop = function ScrollToTop() {
|
|
51978
51548
|
var _useLocation = useLocation(),
|
|
51979
51549
|
pathname = _useLocation.pathname;
|
|
@@ -55030,6 +54600,32 @@ var store = configureStore({
|
|
|
55030
54600
|
}
|
|
55031
54601
|
});
|
|
55032
54602
|
|
|
54603
|
+
var firstCheckToken = function firstCheckToken() {
|
|
54604
|
+
return Promise.resolve(_catch(function () {
|
|
54605
|
+
var token = getAccessToken();
|
|
54606
|
+
return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
|
|
54607
|
+
return tokenStatus.data ? true : false;
|
|
54608
|
+
}) : false;
|
|
54609
|
+
}, function () {
|
|
54610
|
+
return false;
|
|
54611
|
+
}));
|
|
54612
|
+
};
|
|
54613
|
+
|
|
54614
|
+
var canAccess = function canAccess(userRoles, componentRoles) {
|
|
54615
|
+
if (!Array.isArray(userRoles)) {
|
|
54616
|
+
return false;
|
|
54617
|
+
}
|
|
54618
|
+
|
|
54619
|
+
if (Array.isArray(componentRoles)) {
|
|
54620
|
+
var intersects = userRoles.filter(function (i) {
|
|
54621
|
+
return componentRoles.includes(i);
|
|
54622
|
+
});
|
|
54623
|
+
return intersects.length > 0;
|
|
54624
|
+
}
|
|
54625
|
+
|
|
54626
|
+
return true;
|
|
54627
|
+
};
|
|
54628
|
+
|
|
55033
54629
|
var isInViewport = function isInViewport(el) {
|
|
55034
54630
|
var rect = el === null || el === void 0 ? void 0 : el.getBoundingClientRect();
|
|
55035
54631
|
return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);
|
|
@@ -55063,6 +54659,410 @@ var generateRandomString = (function () {
|
|
|
55063
54659
|
return (Math.random() + 1).toString(36).substring(7);
|
|
55064
54660
|
});
|
|
55065
54661
|
|
|
54662
|
+
var apiGetLanguage = function apiGetLanguage() {
|
|
54663
|
+
return api.get(BASE_URL + "/api/language");
|
|
54664
|
+
};
|
|
54665
|
+
|
|
54666
|
+
var apiUpdateLanguage = function apiUpdateLanguage(lang) {
|
|
54667
|
+
return api.put(BASE_URL + "/api/language?lang=" + lang);
|
|
54668
|
+
};
|
|
54669
|
+
|
|
54670
|
+
var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
|
|
54671
|
+
|
|
54672
|
+
var useLanguages = function useLanguages() {
|
|
54673
|
+
var dispatch = useDispatch();
|
|
54674
|
+
|
|
54675
|
+
var _useTranslation = useTranslation(),
|
|
54676
|
+
i18n = _useTranslation.i18n;
|
|
54677
|
+
|
|
54678
|
+
var language = useSelector(function (state) {
|
|
54679
|
+
return state.common.language;
|
|
54680
|
+
});
|
|
54681
|
+
var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
|
|
54682
|
+
|
|
54683
|
+
var _useState = useState([]),
|
|
54684
|
+
languageList = _useState[0],
|
|
54685
|
+
setLanguageList = _useState[1];
|
|
54686
|
+
|
|
54687
|
+
var _useState2 = useState(false),
|
|
54688
|
+
dropdownOpen = _useState2[0],
|
|
54689
|
+
setDropdownOpen = _useState2[1];
|
|
54690
|
+
|
|
54691
|
+
var _useState3 = useState(defaultLanguage),
|
|
54692
|
+
currentLang = _useState3[0],
|
|
54693
|
+
setCurrentLang = _useState3[1];
|
|
54694
|
+
|
|
54695
|
+
var toggle = function toggle() {
|
|
54696
|
+
return setDropdownOpen(function (prevState) {
|
|
54697
|
+
return !prevState;
|
|
54698
|
+
});
|
|
54699
|
+
};
|
|
54700
|
+
|
|
54701
|
+
var changeLanguageApp = function changeLanguageApp(lang) {
|
|
54702
|
+
try {
|
|
54703
|
+
var _temp3 = function _temp3() {
|
|
54704
|
+
dispatch(setLoading(false));
|
|
54705
|
+
};
|
|
54706
|
+
|
|
54707
|
+
dispatch(setLoading(true));
|
|
54708
|
+
|
|
54709
|
+
var _temp4 = _catch(function () {
|
|
54710
|
+
return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
|
|
54711
|
+
i18n.changeLanguage(lang);
|
|
54712
|
+
setCurrentLang(lang);
|
|
54713
|
+
dispatch(setLanguage(lang));
|
|
54714
|
+
});
|
|
54715
|
+
}, function (err) {
|
|
54716
|
+
var _err$response, _err$response$data;
|
|
54717
|
+
|
|
54718
|
+
dispatch(setAlert({
|
|
54719
|
+
type: "danger",
|
|
54720
|
+
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
|
|
54721
|
+
}));
|
|
54722
|
+
});
|
|
54723
|
+
|
|
54724
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
54725
|
+
} catch (e) {
|
|
54726
|
+
return Promise.reject(e);
|
|
54727
|
+
}
|
|
54728
|
+
};
|
|
54729
|
+
|
|
54730
|
+
var getListLanguage = function getListLanguage() {
|
|
54731
|
+
try {
|
|
54732
|
+
var _temp6 = _catch(function () {
|
|
54733
|
+
return Promise.resolve(apiGetLanguage()).then(function (res) {
|
|
54734
|
+
setLanguageList(res.data);
|
|
54735
|
+
});
|
|
54736
|
+
}, function (err) {
|
|
54737
|
+
var _err$response2, _err$response2$data;
|
|
54738
|
+
|
|
54739
|
+
dispatch(setAlert({
|
|
54740
|
+
type: "danger",
|
|
54741
|
+
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
|
|
54742
|
+
}));
|
|
54743
|
+
});
|
|
54744
|
+
|
|
54745
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
54746
|
+
} catch (e) {
|
|
54747
|
+
return Promise.reject(e);
|
|
54748
|
+
}
|
|
54749
|
+
};
|
|
54750
|
+
|
|
54751
|
+
useEffect(function () {
|
|
54752
|
+
defaultLanguage != language && changeLanguageApp(defaultLanguage);
|
|
54753
|
+
getListLanguage();
|
|
54754
|
+
}, []);
|
|
54755
|
+
return {
|
|
54756
|
+
languageList: languageList,
|
|
54757
|
+
toggle: toggle,
|
|
54758
|
+
dropdownOpen: dropdownOpen,
|
|
54759
|
+
currentLang: currentLang,
|
|
54760
|
+
changeLanguageApp: changeLanguageApp,
|
|
54761
|
+
setCurrentLang: setCurrentLang
|
|
54762
|
+
};
|
|
54763
|
+
};
|
|
54764
|
+
|
|
54765
|
+
var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
54766
|
+
var _useLanguages = useLanguages(),
|
|
54767
|
+
languageList = _useLanguages.languageList,
|
|
54768
|
+
toggle = _useLanguages.toggle,
|
|
54769
|
+
dropdownOpen = _useLanguages.dropdownOpen,
|
|
54770
|
+
currentLang = _useLanguages.currentLang,
|
|
54771
|
+
changeLanguageApp = _useLanguages.changeLanguageApp;
|
|
54772
|
+
|
|
54773
|
+
var currentLanguage = useMemo(function () {
|
|
54774
|
+
var current = languageList.find(function (i) {
|
|
54775
|
+
return i.code === currentLang;
|
|
54776
|
+
});
|
|
54777
|
+
if (!current) return null;
|
|
54778
|
+
return React.createElement(React.Fragment, null, React.createElement("img", {
|
|
54779
|
+
className: "mr-2 " + styles['dropdown-menu-flag'],
|
|
54780
|
+
src: "" + getStaticFileUrl(current.image)
|
|
54781
|
+
}), " ", current.name);
|
|
54782
|
+
}, [currentLang, languageList]);
|
|
54783
|
+
return React.createElement(Dropdown, {
|
|
54784
|
+
isOpen: dropdownOpen,
|
|
54785
|
+
toggle: toggle,
|
|
54786
|
+
className: "" + styles["dropdown-menu"]
|
|
54787
|
+
}, React.createElement(DropdownToggle, {
|
|
54788
|
+
className: styles["header-avatar"] + " d-flex align-items-center"
|
|
54789
|
+
}, React.createElement("span", {
|
|
54790
|
+
style: {
|
|
54791
|
+
color: "#000",
|
|
54792
|
+
textTransform: "capitalize",
|
|
54793
|
+
display: 'flex',
|
|
54794
|
+
alignItems: 'center'
|
|
54795
|
+
}
|
|
54796
|
+
}, currentLanguage, React.createElement(BsChevronDown, {
|
|
54797
|
+
className: "ml-2",
|
|
54798
|
+
style: {
|
|
54799
|
+
fontSize: '10px'
|
|
54800
|
+
}
|
|
54801
|
+
}))), React.createElement(DropdownMenu, {
|
|
54802
|
+
className: styles["dropdown-content-language"]
|
|
54803
|
+
}, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
|
|
54804
|
+
return React.createElement(DropdownItem, {
|
|
54805
|
+
key: lang.code,
|
|
54806
|
+
className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
|
|
54807
|
+
onClick: function onClick() {
|
|
54808
|
+
return changeLanguageApp(lang.code);
|
|
54809
|
+
}
|
|
54810
|
+
}, React.createElement("div", {
|
|
54811
|
+
className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
|
|
54812
|
+
}, React.createElement("span", {
|
|
54813
|
+
className: "mr-2 d-flex hover-opacity"
|
|
54814
|
+
}, React.createElement("img", {
|
|
54815
|
+
style: {
|
|
54816
|
+
width: "30px",
|
|
54817
|
+
height: "25px",
|
|
54818
|
+
borderRadius: "5px"
|
|
54819
|
+
},
|
|
54820
|
+
src: getStaticFileUrl(lang.image)
|
|
54821
|
+
})), lang.name));
|
|
54822
|
+
})));
|
|
54823
|
+
};
|
|
54824
|
+
|
|
54825
|
+
var TheHeader = function TheHeader(_ref) {
|
|
54826
|
+
var onToggleModel = _ref.onToggleModel;
|
|
54827
|
+
var dispatch = useDispatch();
|
|
54828
|
+
var sidebarShow = useSelector(function (state) {
|
|
54829
|
+
return state.common.sidebarShow;
|
|
54830
|
+
});
|
|
54831
|
+
|
|
54832
|
+
var _useTranslation = useTranslation(),
|
|
54833
|
+
t = _useTranslation.t;
|
|
54834
|
+
|
|
54835
|
+
var toggleSidebarMobile = function toggleSidebarMobile() {
|
|
54836
|
+
var val = [false, "responsive"].includes(sidebarShow) ? true : "responsive";
|
|
54837
|
+
dispatch(setSidebar(val));
|
|
54838
|
+
};
|
|
54839
|
+
|
|
54840
|
+
var isDistrict = window.location.host.includes("-district");
|
|
54841
|
+
return React.createElement(CHeader, {
|
|
54842
|
+
withSubheader: true,
|
|
54843
|
+
className: "d-flex align-items-center justify-content-end"
|
|
54844
|
+
}, React.createElement(CToggler, {
|
|
54845
|
+
inHeader: true,
|
|
54846
|
+
className: "ml-md-3 d-lg-none",
|
|
54847
|
+
onClick: toggleSidebarMobile
|
|
54848
|
+
}), React.createElement(CHeaderBrand, {
|
|
54849
|
+
className: "mx-auto flex-grow-1 d-lg-none",
|
|
54850
|
+
to: "/"
|
|
54851
|
+
}, React.createElement("img", {
|
|
54852
|
+
src: getStaticFileUrl(Images.LOGO_HEADER),
|
|
54853
|
+
className: styles["header-logo"]
|
|
54854
|
+
})), React.createElement(CHeaderNav, {
|
|
54855
|
+
className: "pr-3"
|
|
54856
|
+
}, React.createElement(TheLanguageDropdown, null), React.createElement("a", {
|
|
54857
|
+
className: "mr-3",
|
|
54858
|
+
style: {
|
|
54859
|
+
color: '#000'
|
|
54860
|
+
},
|
|
54861
|
+
href: '/privacy-policy',
|
|
54862
|
+
target: "blank"
|
|
54863
|
+
}, t("privacy_policy")), !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, {
|
|
54864
|
+
onToggleModel: onToggleModel
|
|
54865
|
+
})));
|
|
54866
|
+
};
|
|
54867
|
+
|
|
54868
|
+
var ModelSelectRole = function ModelSelectRole(_ref) {
|
|
54869
|
+
var _handleUserRole;
|
|
54870
|
+
|
|
54871
|
+
var open = _ref.open,
|
|
54872
|
+
onToggleModel = _ref.onToggleModel;
|
|
54873
|
+
var dispatch = useDispatch();
|
|
54874
|
+
|
|
54875
|
+
var _useTranslation = useTranslation(),
|
|
54876
|
+
t = _useTranslation.t;
|
|
54877
|
+
|
|
54878
|
+
var history = useHistory();
|
|
54879
|
+
var pathname = window.location.pathname;
|
|
54880
|
+
var user = useSelector(function (state) {
|
|
54881
|
+
return state.common.user;
|
|
54882
|
+
});
|
|
54883
|
+
var roles = user === null || user === void 0 ? void 0 : user.roles;
|
|
54884
|
+
|
|
54885
|
+
var handleSelectUserRoles = function handleSelectUserRoles(roles) {
|
|
54886
|
+
dispatch(setLoading(true));
|
|
54887
|
+
var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
|
|
54888
|
+
dispatch(setUser(_extends({}, user, {
|
|
54889
|
+
roles: roleSelect
|
|
54890
|
+
})));
|
|
54891
|
+
localStorage.setItem("ROLES", roleSelect.toString());
|
|
54892
|
+
onToggleModel();
|
|
54893
|
+
|
|
54894
|
+
if (roles.includes("Parent")) {
|
|
54895
|
+
history.push("/parent");
|
|
54896
|
+
} else if (roles.includes("Admin")) {
|
|
54897
|
+
history.push("/admin/home");
|
|
54898
|
+
} else {
|
|
54899
|
+
pathname !== "/home" ? history.push("/home") : window.location.reload();
|
|
54900
|
+
}
|
|
54901
|
+
};
|
|
54902
|
+
|
|
54903
|
+
return React.createElement(Modal, {
|
|
54904
|
+
isOpen: open,
|
|
54905
|
+
toggle: function toggle() {
|
|
54906
|
+
return onToggleModel();
|
|
54907
|
+
},
|
|
54908
|
+
className: "" + styles["model-switch-roles"],
|
|
54909
|
+
centered: true
|
|
54910
|
+
}, React.createElement("p", {
|
|
54911
|
+
className: "" + styles["title"]
|
|
54912
|
+
}, 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) {
|
|
54913
|
+
return React.createElement("p", {
|
|
54914
|
+
key: r,
|
|
54915
|
+
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" : ""],
|
|
54916
|
+
onClick: function onClick() {
|
|
54917
|
+
return handleSelectUserRoles([r]);
|
|
54918
|
+
}
|
|
54919
|
+
}, r == "SecondaryTeacher" ? "Support Teacher" : r);
|
|
54920
|
+
})));
|
|
54921
|
+
};
|
|
54922
|
+
|
|
54923
|
+
var TheLayout = function TheLayout(_ref) {
|
|
54924
|
+
var routes = _ref.routes,
|
|
54925
|
+
navigation = _ref.navigation;
|
|
54926
|
+
var history = useHistory();
|
|
54927
|
+
var dispatch = useDispatch();
|
|
54928
|
+
var user = useSelector(function (state) {
|
|
54929
|
+
return state.common.user;
|
|
54930
|
+
});
|
|
54931
|
+
var language = useSelector(function (state) {
|
|
54932
|
+
return state.common.language;
|
|
54933
|
+
});
|
|
54934
|
+
|
|
54935
|
+
var _useState = useState(false),
|
|
54936
|
+
openModelSelectRole = _useState[0],
|
|
54937
|
+
setOpenModelSelectRole = _useState[1];
|
|
54938
|
+
|
|
54939
|
+
var _useTranslation = useTranslation(),
|
|
54940
|
+
t = _useTranslation.t;
|
|
54941
|
+
|
|
54942
|
+
var location = useLocation();
|
|
54943
|
+
var isNotification = location.pathname.includes("notifications");
|
|
54944
|
+
var isDistrict = window.location.host.includes("-district");
|
|
54945
|
+
|
|
54946
|
+
var handleToggleModel = function handleToggleModel() {
|
|
54947
|
+
setOpenModelSelectRole(!openModelSelectRole);
|
|
54948
|
+
};
|
|
54949
|
+
|
|
54950
|
+
var authRoutes = useMemo(function () {
|
|
54951
|
+
return routes.filter(function (route) {
|
|
54952
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
|
|
54953
|
+
}).filter(function (route) {
|
|
54954
|
+
return !!route.isDistrict === isDistrict;
|
|
54955
|
+
});
|
|
54956
|
+
}, [user, language]);
|
|
54957
|
+
var authNavigations = useMemo(function () {
|
|
54958
|
+
return navigation.map(function (item) {
|
|
54959
|
+
var _item$_children, _item$_children2;
|
|
54960
|
+
|
|
54961
|
+
return _extends({}, item, {
|
|
54962
|
+
name: t(item.name),
|
|
54963
|
+
_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) {
|
|
54964
|
+
return _extends({}, x, {
|
|
54965
|
+
name: t(x.name)
|
|
54966
|
+
});
|
|
54967
|
+
}) : undefined
|
|
54968
|
+
});
|
|
54969
|
+
}).filter(function (nav) {
|
|
54970
|
+
return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
|
|
54971
|
+
}).filter(function (nav) {
|
|
54972
|
+
return !!nav.isDistrict === isDistrict;
|
|
54973
|
+
});
|
|
54974
|
+
}, [user, language]);
|
|
54975
|
+
|
|
54976
|
+
var getInformationSetting = function getInformationSetting() {
|
|
54977
|
+
try {
|
|
54978
|
+
var _temp2 = _catch(function () {
|
|
54979
|
+
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
54980
|
+
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
54981
|
+
});
|
|
54982
|
+
}, function (err) {
|
|
54983
|
+
console.error(err);
|
|
54984
|
+
});
|
|
54985
|
+
|
|
54986
|
+
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
54987
|
+
} catch (e) {
|
|
54988
|
+
return Promise.reject(e);
|
|
54989
|
+
}
|
|
54990
|
+
};
|
|
54991
|
+
|
|
54992
|
+
useEffect(function () {
|
|
54993
|
+
checkAuthentication();
|
|
54994
|
+
}, []);
|
|
54995
|
+
useEffect(function () {
|
|
54996
|
+
getInformationSetting();
|
|
54997
|
+
}, [location.pathname]);
|
|
54998
|
+
|
|
54999
|
+
var checkAuthentication = function checkAuthentication() {
|
|
55000
|
+
try {
|
|
55001
|
+
var _temp4 = _catch(function () {
|
|
55002
|
+
return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
|
|
55003
|
+
tokenStatus ? loadInfo() : resetAuth();
|
|
55004
|
+
});
|
|
55005
|
+
}, function () {
|
|
55006
|
+
resetAuth();
|
|
55007
|
+
});
|
|
55008
|
+
|
|
55009
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
|
55010
|
+
} catch (e) {
|
|
55011
|
+
return Promise.reject(e);
|
|
55012
|
+
}
|
|
55013
|
+
};
|
|
55014
|
+
|
|
55015
|
+
var loadInfo = function loadInfo() {
|
|
55016
|
+
try {
|
|
55017
|
+
var _temp6 = _catch(function () {
|
|
55018
|
+
return Promise.resolve(getInfo()).then(function (info) {
|
|
55019
|
+
var _info$data, _info$data$roles;
|
|
55020
|
+
|
|
55021
|
+
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"))) {
|
|
55022
|
+
resetAuth();
|
|
55023
|
+
}
|
|
55024
|
+
|
|
55025
|
+
dispatch(setUser(info.data));
|
|
55026
|
+
});
|
|
55027
|
+
}, function () {
|
|
55028
|
+
resetAuth();
|
|
55029
|
+
});
|
|
55030
|
+
|
|
55031
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
|
|
55032
|
+
} catch (e) {
|
|
55033
|
+
return Promise.reject(e);
|
|
55034
|
+
}
|
|
55035
|
+
};
|
|
55036
|
+
|
|
55037
|
+
var resetAuth = function resetAuth() {
|
|
55038
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
55039
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
55040
|
+
localStorage.removeItem("ROLES");
|
|
55041
|
+
history.push("/");
|
|
55042
|
+
};
|
|
55043
|
+
|
|
55044
|
+
if (!user) {
|
|
55045
|
+
return React.createElement(Loading, null);
|
|
55046
|
+
}
|
|
55047
|
+
|
|
55048
|
+
return React.createElement("div", {
|
|
55049
|
+
className: "c-app c-default-layout"
|
|
55050
|
+
}, !isNotification && React.createElement(TheSidebar, {
|
|
55051
|
+
navigation: authNavigations
|
|
55052
|
+
}), React.createElement("div", {
|
|
55053
|
+
className: "c-wrapper"
|
|
55054
|
+
}, !isNotification && React.createElement(TheHeader, {
|
|
55055
|
+
onToggleModel: handleToggleModel
|
|
55056
|
+
}), React.createElement("div", {
|
|
55057
|
+
className: "c-body bg-white"
|
|
55058
|
+
}, React.createElement(TheContent$1, {
|
|
55059
|
+
routes: authRoutes
|
|
55060
|
+
}))), React.createElement(ModelSelectRole, {
|
|
55061
|
+
open: openModelSelectRole,
|
|
55062
|
+
onToggleModel: handleToggleModel
|
|
55063
|
+
}));
|
|
55064
|
+
};
|
|
55065
|
+
|
|
55066
55066
|
var amplitudeClient = amplitude;
|
|
55067
55067
|
|
|
55068
55068
|
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, getAccessToken, 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 };
|