mario-core 2.9.245-release → 2.9.246-multi
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/BlockLogin.d.ts +7 -0
- package/dist/index.css +5 -4
- package/dist/index.js +1131 -1147
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +1133 -1149
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
package/dist/index.modern.js
CHANGED
|
@@ -2,20 +2,20 @@ 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, {
|
|
5
|
+
import React, { forwardRef, useState, useEffect, useRef, useCallback, useMemo, Suspense, memo, Fragment, useImperativeHandle } from 'react';
|
|
6
6
|
import { Input, Modal, ModalHeader, ModalBody, ModalFooter, Button, Form, FormGroup, Row, Col, Navbar, NavbarBrand, Collapse, Nav, NavItem, NavLink, Dropdown, DropdownToggle, DropdownMenu, DropdownItem, Alert, Pagination, PaginationItem, PaginationLink, Table, Label, Popover, PopoverBody, TabContent, TabPane, CardText, CustomInput, Card, CardImg, CardBody, CardTitle, CardHeader } from 'reactstrap';
|
|
7
|
-
import {
|
|
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';
|
|
10
10
|
import { object, string, boolean, number, array } from 'yup';
|
|
11
|
-
import {
|
|
11
|
+
import { useGoogleReCaptcha, GoogleReCaptcha, GoogleReCaptchaProvider } from 'react-google-recaptcha-v3';
|
|
12
|
+
import GoogleLogin from 'react-google-login';
|
|
13
|
+
import Select from 'react-select';
|
|
12
14
|
import { createAction, createReducer, configureStore } from '@reduxjs/toolkit';
|
|
13
15
|
import axios from 'axios';
|
|
14
16
|
import amplitude from 'amplitude-js';
|
|
15
17
|
import moment from 'moment';
|
|
16
|
-
import {
|
|
17
|
-
import GoogleLogin from 'react-google-login';
|
|
18
|
-
import Select from 'react-select';
|
|
18
|
+
import { LogLevel, PublicClientApplication } from '@azure/msal-browser';
|
|
19
19
|
import { GiHamburgerMenu } from 'react-icons/gi';
|
|
20
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';
|
|
@@ -41,8 +41,8 @@ import 'symbol-observable';
|
|
|
41
41
|
var dashboard = "Dashboard";
|
|
42
42
|
var user = "User";
|
|
43
43
|
var question_bank = "Question bank";
|
|
44
|
-
var email_template = "Email
|
|
45
|
-
var custom_alert = "Custom
|
|
44
|
+
var email_template = "Email Template";
|
|
45
|
+
var custom_alert = "Custom Alert";
|
|
46
46
|
var set_up = "Set up";
|
|
47
47
|
var media_gallery = "Media Gallery";
|
|
48
48
|
var district_school_list = "District school list";
|
|
@@ -3978,8 +3978,8 @@ var lang_us = {
|
|
|
3978
3978
|
var dashboard$1 = "Dashboard";
|
|
3979
3979
|
var user$1 = "User";
|
|
3980
3980
|
var question_bank$1 = "Question bank";
|
|
3981
|
-
var email_template$1 = "Email
|
|
3982
|
-
var custom_alert$1 = "Custom
|
|
3981
|
+
var email_template$1 = "Email Template";
|
|
3982
|
+
var custom_alert$1 = "Custom Alert";
|
|
3983
3983
|
var set_up$1 = "Set up";
|
|
3984
3984
|
var media_gallery$1 = "Media Gallery";
|
|
3985
3985
|
var district_school_list$1 = "District school list";
|
|
@@ -37165,14 +37165,23 @@ function _createForOfIteratorHelperLoose(o, allowArrayLike) {
|
|
|
37165
37165
|
return it.next.bind(it);
|
|
37166
37166
|
}
|
|
37167
37167
|
|
|
37168
|
-
var
|
|
37169
|
-
|
|
37170
|
-
|
|
37171
|
-
|
|
37172
|
-
|
|
37173
|
-
|
|
37174
|
-
|
|
37175
|
-
|
|
37168
|
+
var CustomSelector = function CustomSelector(_ref) {
|
|
37169
|
+
var defaultValue = _ref.defaultValue,
|
|
37170
|
+
options = _ref.options,
|
|
37171
|
+
isDisabled = _ref.isDisabled,
|
|
37172
|
+
scrollBottom = _ref.scrollBottom,
|
|
37173
|
+
rest = _objectWithoutPropertiesLoose(_ref, ["defaultValue", "options", "isDisabled", "scrollBottom"]);
|
|
37174
|
+
|
|
37175
|
+
var initValue = defaultValue !== null && typeof defaultValue !== "undefined" ? options.find(function (option) {
|
|
37176
|
+
return option.value === defaultValue;
|
|
37177
|
+
}) || null : null;
|
|
37178
|
+
return React.createElement(Select, Object.assign({
|
|
37179
|
+
isDisabled: isDisabled,
|
|
37180
|
+
options: options,
|
|
37181
|
+
value: initValue,
|
|
37182
|
+
menuPlacement: scrollBottom ? "top" : "auto"
|
|
37183
|
+
}, rest));
|
|
37184
|
+
};
|
|
37176
37185
|
|
|
37177
37186
|
var setLoading = createAction("common/setLoading");
|
|
37178
37187
|
var setModal = createAction("common/setModal");
|
|
@@ -37209,6 +37218,15 @@ var encodeParams = (function (params) {
|
|
|
37209
37218
|
}).join('&');
|
|
37210
37219
|
});
|
|
37211
37220
|
|
|
37221
|
+
var getAccessToken = (function () {
|
|
37222
|
+
try {
|
|
37223
|
+
var isSessionUserBrowser = sessionStorage.getItem(IS_USER_SESSION_BROWSER);
|
|
37224
|
+
return !isSessionUserBrowser ? localStorage.getItem(ACCESS_TOKEN) : sessionStorage.getItem(ACCESS_TOKEN);
|
|
37225
|
+
} catch (err) {
|
|
37226
|
+
return null;
|
|
37227
|
+
}
|
|
37228
|
+
});
|
|
37229
|
+
|
|
37212
37230
|
var api = axios.create({
|
|
37213
37231
|
baseURL: BASE_URL,
|
|
37214
37232
|
timeout: 0,
|
|
@@ -37342,14 +37360,131 @@ var createPassword = function createPassword(data) {
|
|
|
37342
37360
|
return api.post(ACCOUNT_URL + "/createPassword", data);
|
|
37343
37361
|
};
|
|
37344
37362
|
|
|
37345
|
-
var
|
|
37346
|
-
var
|
|
37347
|
-
|
|
37348
|
-
|
|
37349
|
-
|
|
37350
|
-
|
|
37363
|
+
var BlockSelectTeacher = function BlockSelectTeacher(_ref) {
|
|
37364
|
+
var defaultValue = _ref.defaultValue,
|
|
37365
|
+
isDisabled = _ref.isDisabled,
|
|
37366
|
+
openModal = _ref.openModal,
|
|
37367
|
+
onSubmit = _ref.onSubmit,
|
|
37368
|
+
token = _ref.token,
|
|
37369
|
+
email = _ref.email;
|
|
37370
|
+
|
|
37371
|
+
var _useState = useState(false),
|
|
37372
|
+
modal = _useState[0],
|
|
37373
|
+
setModal = _useState[1];
|
|
37374
|
+
|
|
37375
|
+
useEffect(function () {
|
|
37376
|
+
setModal(openModal);
|
|
37377
|
+
}, [openModal]);
|
|
37378
|
+
var dispatch = useDispatch();
|
|
37379
|
+
|
|
37380
|
+
var _useState2 = useState([]),
|
|
37381
|
+
teachers = _useState2[0],
|
|
37382
|
+
setTeachers = _useState2[1];
|
|
37383
|
+
|
|
37384
|
+
var _useState3 = useState(""),
|
|
37385
|
+
searchString = _useState3[0],
|
|
37386
|
+
setSearchString = _useState3[1];
|
|
37387
|
+
|
|
37388
|
+
var _useState4 = useState(""),
|
|
37389
|
+
teacherEmail = _useState4[0],
|
|
37390
|
+
setTeacherEmail = _useState4[1];
|
|
37391
|
+
|
|
37392
|
+
var _useState5 = useState(false),
|
|
37393
|
+
isLoading = _useState5[0],
|
|
37394
|
+
setLoading = _useState5[1];
|
|
37395
|
+
|
|
37396
|
+
var timeout = useRef();
|
|
37397
|
+
|
|
37398
|
+
var toggle = function toggle() {
|
|
37399
|
+
setModal(!modal);
|
|
37400
|
+
dispatch(setIsLoginGoogle(!modal));
|
|
37401
|
+
};
|
|
37402
|
+
|
|
37403
|
+
var loadData = useCallback(function () {
|
|
37404
|
+
try {
|
|
37405
|
+
var _temp3 = function _temp3() {
|
|
37406
|
+
setLoading(false);
|
|
37407
|
+
};
|
|
37408
|
+
|
|
37409
|
+
setLoading(true);
|
|
37410
|
+
|
|
37411
|
+
var _temp4 = _catch(function () {
|
|
37412
|
+
var data = {
|
|
37413
|
+
token: token,
|
|
37414
|
+
email: email
|
|
37415
|
+
};
|
|
37416
|
+
return Promise.resolve(getAllLoginTeacher(data)).then(function (res) {
|
|
37417
|
+
setTeachers(res.data);
|
|
37418
|
+
});
|
|
37419
|
+
}, function (err) {
|
|
37420
|
+
var _err$response, _err$response$data;
|
|
37421
|
+
|
|
37422
|
+
dispatch(setAlert({
|
|
37423
|
+
type: "danger",
|
|
37424
|
+
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
|
|
37425
|
+
}));
|
|
37426
|
+
});
|
|
37427
|
+
|
|
37428
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
37429
|
+
} catch (e) {
|
|
37430
|
+
return Promise.reject(e);
|
|
37431
|
+
}
|
|
37432
|
+
}, [searchString]);
|
|
37433
|
+
useEffect(function () {
|
|
37434
|
+
timeout && timeout.current && clearTimeout(timeout.current);
|
|
37435
|
+
|
|
37436
|
+
if (!searchString || searchString.trim().length < 2) {
|
|
37437
|
+
setTeachers([]);
|
|
37438
|
+
} else {
|
|
37439
|
+
timeout.current = setTimeout(loadData, 300);
|
|
37440
|
+
}
|
|
37441
|
+
}, [searchString]);
|
|
37442
|
+
var options = teachers.map(function (teacher) {
|
|
37443
|
+
return {
|
|
37444
|
+
label: teacher.fullName + " (" + teacher.email + ")",
|
|
37445
|
+
value: teacher.teacherId
|
|
37446
|
+
};
|
|
37447
|
+
});
|
|
37448
|
+
|
|
37449
|
+
var onChangeTeacher = function onChangeTeacher(e) {
|
|
37450
|
+
setTeacherEmail(e.value);
|
|
37451
|
+
};
|
|
37452
|
+
|
|
37453
|
+
var customSelector = {
|
|
37454
|
+
control: function control(styles) {
|
|
37455
|
+
return _extends({}, styles, {
|
|
37456
|
+
borderRadius: "10px"
|
|
37457
|
+
});
|
|
37458
|
+
}
|
|
37459
|
+
};
|
|
37460
|
+
return React.createElement(Modal, {
|
|
37461
|
+
isOpen: modal
|
|
37462
|
+
}, React.createElement(ModalHeader, null, " Sign in "), React.createElement(ModalBody, null, React.createElement("h6", null, "You are logging in as a student, please select teacher"), React.createElement(CustomSelector, {
|
|
37463
|
+
styles: customSelector,
|
|
37464
|
+
options: options,
|
|
37465
|
+
inputValue: searchString,
|
|
37466
|
+
onInputChange: function onInputChange(inputValue) {
|
|
37467
|
+
return setSearchString(inputValue);
|
|
37468
|
+
},
|
|
37469
|
+
isLoading: isLoading,
|
|
37470
|
+
placeholder: "Type 2 characters to search",
|
|
37471
|
+
value: defaultValue,
|
|
37472
|
+
onChange: onChangeTeacher,
|
|
37473
|
+
isDisabled: isDisabled
|
|
37474
|
+
})), React.createElement(ModalFooter, null, React.createElement(Button, {
|
|
37475
|
+
color: "primary",
|
|
37476
|
+
onClick: function onClick() {
|
|
37477
|
+
onSubmit(teacherEmail);
|
|
37478
|
+
toggle();
|
|
37479
|
+
}
|
|
37480
|
+
}, "Finish"), ' ', React.createElement(Button, {
|
|
37481
|
+
color: "secondary",
|
|
37482
|
+
onClick: toggle
|
|
37483
|
+
}, "Cancel")));
|
|
37351
37484
|
};
|
|
37352
37485
|
|
|
37486
|
+
var BlockSelectTeacher$1 = forwardRef(BlockSelectTeacher);
|
|
37487
|
+
|
|
37353
37488
|
var TypeLogin;
|
|
37354
37489
|
|
|
37355
37490
|
(function (TypeLogin) {
|
|
@@ -37366,65 +37501,217 @@ var LoginType;
|
|
|
37366
37501
|
LoginType[LoginType["Impersonate"] = 2] = "Impersonate";
|
|
37367
37502
|
})(LoginType || (LoginType = {}));
|
|
37368
37503
|
|
|
37369
|
-
var
|
|
37370
|
-
|
|
37371
|
-
|
|
37372
|
-
|
|
37373
|
-
|
|
37374
|
-
},
|
|
37375
|
-
cache: {
|
|
37376
|
-
cacheLocation: "sessionStorage",
|
|
37377
|
-
storeAuthStateInCookie: false
|
|
37378
|
-
},
|
|
37379
|
-
system: {
|
|
37380
|
-
loggerOptions: {
|
|
37381
|
-
loggerCallback: function loggerCallback(level, message, containsPii) {
|
|
37382
|
-
if (containsPii) {
|
|
37383
|
-
return;
|
|
37384
|
-
}
|
|
37504
|
+
var schema = object({
|
|
37505
|
+
email: string().email("Email is invalid").required("Email is required"),
|
|
37506
|
+
password: string().required("Password is required"),
|
|
37507
|
+
rememberMe: boolean()
|
|
37508
|
+
});
|
|
37385
37509
|
|
|
37386
|
-
|
|
37387
|
-
|
|
37388
|
-
|
|
37389
|
-
|
|
37510
|
+
var BlockLogin = function BlockLogin(_ref) {
|
|
37511
|
+
var defaultInfo = _ref.defaultInfo,
|
|
37512
|
+
userLogin = _ref.userLogin,
|
|
37513
|
+
school = _ref.school,
|
|
37514
|
+
isShowPassword = _ref.isShowPassword,
|
|
37515
|
+
setIsShowPassword = _ref.setIsShowPassword,
|
|
37516
|
+
fnIsCheckLogin = _ref.fnIsCheckLogin,
|
|
37517
|
+
isLoginGoogle = _ref.isLoginGoogle,
|
|
37518
|
+
submitLogin = _ref.submitLogin,
|
|
37519
|
+
infoUser = _ref.infoUser,
|
|
37520
|
+
googleClientId = _ref.googleClientId;
|
|
37390
37521
|
|
|
37391
|
-
|
|
37392
|
-
|
|
37393
|
-
|
|
37522
|
+
var togglePasswordVisible = function togglePasswordVisible() {
|
|
37523
|
+
return setIsShowPassword(!isShowPassword);
|
|
37524
|
+
};
|
|
37394
37525
|
|
|
37395
|
-
|
|
37396
|
-
console.debug(message);
|
|
37397
|
-
return;
|
|
37526
|
+
var dispatch = useDispatch();
|
|
37398
37527
|
|
|
37399
|
-
|
|
37400
|
-
|
|
37401
|
-
return;
|
|
37528
|
+
var _useGoogleReCaptcha = useGoogleReCaptcha(),
|
|
37529
|
+
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
37402
37530
|
|
|
37403
|
-
|
|
37404
|
-
|
|
37405
|
-
|
|
37531
|
+
var clickHandler = useCallback(function () {
|
|
37532
|
+
try {
|
|
37533
|
+
if (!executeRecaptcha) {
|
|
37534
|
+
console.log("execute recaptcha undefined");
|
|
37535
|
+
return Promise.resolve();
|
|
37406
37536
|
}
|
|
37537
|
+
|
|
37538
|
+
return Promise.resolve(executeRecaptcha("login"));
|
|
37539
|
+
} catch (e) {
|
|
37540
|
+
return Promise.reject(e);
|
|
37407
37541
|
}
|
|
37408
|
-
}
|
|
37542
|
+
}, [executeRecaptcha]);
|
|
37543
|
+
var handleVerify = useCallback(function () {}, []);
|
|
37544
|
+
|
|
37545
|
+
var onSuccessGoogle = function onSuccessGoogle(res) {
|
|
37546
|
+
if (!!(res !== null && res !== void 0 && res.accessToken)) {
|
|
37547
|
+
var _res$profileObj = res.profileObj,
|
|
37548
|
+
email = _res$profileObj.email,
|
|
37549
|
+
familyName = _res$profileObj.familyName,
|
|
37550
|
+
givenName = _res$profileObj.givenName,
|
|
37551
|
+
imageUrl = _res$profileObj.imageUrl,
|
|
37552
|
+
name = _res$profileObj.name;
|
|
37553
|
+
var accessToken = res.accessToken;
|
|
37554
|
+
var googleId = res.googleId;
|
|
37555
|
+
|
|
37556
|
+
if (email.includes("@gmail")) {
|
|
37557
|
+
alert("The email address you used does not match the login information in the database. Please check that you are using your school assigned email address to log into MARIO for Me. If you have further trouble please notify your school site administrator");
|
|
37558
|
+
return;
|
|
37559
|
+
}
|
|
37560
|
+
|
|
37561
|
+
var infoLogin = {
|
|
37562
|
+
firstName: givenName,
|
|
37563
|
+
lastName: familyName,
|
|
37564
|
+
imageUrl: imageUrl,
|
|
37565
|
+
fullName: name,
|
|
37566
|
+
email: email,
|
|
37567
|
+
accessToken: accessToken,
|
|
37568
|
+
googleId: googleId
|
|
37569
|
+
};
|
|
37570
|
+
dispatch(setInforUserGoogle(infoLogin));
|
|
37571
|
+
fnIsCheckLogin(TypeLogin.Google, infoLogin, accessToken, clickHandler);
|
|
37572
|
+
}
|
|
37573
|
+
};
|
|
37574
|
+
|
|
37575
|
+
return React.createElement(React.Fragment, null, React.createElement(Formik, {
|
|
37576
|
+
initialValues: defaultInfo,
|
|
37577
|
+
validationSchema: schema,
|
|
37578
|
+
onSubmit: function (values) {
|
|
37579
|
+
try {
|
|
37580
|
+
return Promise.resolve(_catch(function () {
|
|
37581
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37582
|
+
if (!clickHandlerRes) return;
|
|
37583
|
+
values.captcha = clickHandlerRes;
|
|
37584
|
+
values.loginType = LoginType.Default;
|
|
37585
|
+
userLogin(values);
|
|
37586
|
+
});
|
|
37587
|
+
}, function (err) {
|
|
37588
|
+
console.error(err);
|
|
37589
|
+
}));
|
|
37590
|
+
} catch (e) {
|
|
37591
|
+
return Promise.reject(e);
|
|
37592
|
+
}
|
|
37593
|
+
}
|
|
37594
|
+
}, function (formikProps) {
|
|
37595
|
+
var handleChange = formikProps.handleChange,
|
|
37596
|
+
handleBlur = formikProps.handleBlur,
|
|
37597
|
+
handleSubmit = formikProps.handleSubmit,
|
|
37598
|
+
values = formikProps.values,
|
|
37599
|
+
touched = formikProps.touched,
|
|
37600
|
+
errors = formikProps.errors,
|
|
37601
|
+
setFieldValue = formikProps.setFieldValue;
|
|
37602
|
+
var emailError = touched.email && errors.email;
|
|
37603
|
+
var passwordError = touched.password && errors.password;
|
|
37604
|
+
return React.createElement("div", {
|
|
37605
|
+
className: styles["box-login"] + " w-100"
|
|
37606
|
+
}, React.createElement(Form, {
|
|
37607
|
+
className: "" + styles["block-login"],
|
|
37608
|
+
onSubmit: handleSubmit
|
|
37609
|
+
}, React.createElement("div", {
|
|
37610
|
+
className: "" + styles["block-form"]
|
|
37611
|
+
}, React.createElement("div", {
|
|
37612
|
+
className: "d-flex align-items-center mb-4"
|
|
37613
|
+
}, React.createElement("img", {
|
|
37614
|
+
hidden: !(school !== null && school !== void 0 && school.schoolLogo),
|
|
37615
|
+
src: school === null || school === void 0 ? void 0 : school.schoolLogo,
|
|
37616
|
+
className: styles["school-icon"] + " mr-3"
|
|
37617
|
+
}), React.createElement("p", {
|
|
37618
|
+
className: styles["school-name"] + " mb-0"
|
|
37619
|
+
}, school.schoolName)), React.createElement("p", {
|
|
37620
|
+
className: "" + styles["title-login"]
|
|
37621
|
+
}, "Welcome Back!"), React.createElement("p", {
|
|
37622
|
+
className: styles["login-description"] + " mb-5"
|
|
37623
|
+
}, "Please enter your MARIO Education account details"), React.createElement(FormGroup, {
|
|
37624
|
+
className: "" + styles["form-user-name"]
|
|
37625
|
+
}, React.createElement(Input, {
|
|
37626
|
+
type: "text",
|
|
37627
|
+
name: "email",
|
|
37628
|
+
placeholder: "Email",
|
|
37629
|
+
value: values.email,
|
|
37630
|
+
onChange: handleChange,
|
|
37631
|
+
autocomplete: "email",
|
|
37632
|
+
onBlur: handleBlur("email"),
|
|
37633
|
+
required: true
|
|
37634
|
+
}), emailError && React.createElement(ErrorHandler, {
|
|
37635
|
+
text: errors.email
|
|
37636
|
+
})), React.createElement(FormGroup, null, React.createElement(PasswordInput, {
|
|
37637
|
+
isShowPassword: isShowPassword,
|
|
37638
|
+
togglePasswordVisible: togglePasswordVisible,
|
|
37639
|
+
onChange: function onChange(e) {
|
|
37640
|
+
return setFieldValue("password", e.target.value);
|
|
37641
|
+
}
|
|
37642
|
+
}), passwordError && React.createElement(ErrorHandler, {
|
|
37643
|
+
text: errors.password
|
|
37644
|
+
})), React.createElement(FormGroup, null, React.createElement(GoogleReCaptcha, {
|
|
37645
|
+
action: "login",
|
|
37646
|
+
onVerify: handleVerify
|
|
37647
|
+
})), React.createElement("div", {
|
|
37648
|
+
className: "d-flex justify-content-between"
|
|
37649
|
+
}, React.createElement("div", {
|
|
37650
|
+
className: "d-flex align-items-center"
|
|
37651
|
+
}, React.createElement("input", {
|
|
37652
|
+
type: "checkbox",
|
|
37653
|
+
checked: !values.isSessionUserBrowser,
|
|
37654
|
+
className: "" + styles["checkbox-keep-login"],
|
|
37655
|
+
onChange: function onChange() {
|
|
37656
|
+
return setFieldValue("isSessionUserBrowser", !values.isSessionUserBrowser);
|
|
37657
|
+
}
|
|
37658
|
+
}), React.createElement("p", {
|
|
37659
|
+
className: styles["label-keep-login"] + " mb-0 ml-2"
|
|
37660
|
+
}, "Keep me logged in")), React.createElement(Link, {
|
|
37661
|
+
to: "/forgot-password",
|
|
37662
|
+
className: "" + styles["link-to-login"]
|
|
37663
|
+
}, "Forgot password?")), React.createElement("button", {
|
|
37664
|
+
className: styles["btn-login"] + " mt-5",
|
|
37665
|
+
type: "submit"
|
|
37666
|
+
}, "LOG IN"), React.createElement("p", {
|
|
37667
|
+
className: styles["option-text"] + " my-3 text-center"
|
|
37668
|
+
}, "OR"), React.createElement(Row, {
|
|
37669
|
+
className: "mb-4"
|
|
37670
|
+
}, React.createElement(Col, {
|
|
37671
|
+
lg: 12,
|
|
37672
|
+
md: 12,
|
|
37673
|
+
xs: 12,
|
|
37674
|
+
className: "pr-md-3"
|
|
37675
|
+
}, !!googleClientId && React.createElement(GoogleLogin, {
|
|
37676
|
+
clientId: googleClientId,
|
|
37677
|
+
buttonText: "GOOGLE",
|
|
37678
|
+
onSuccess: onSuccessGoogle,
|
|
37679
|
+
cookiePolicy: "single_host_origin",
|
|
37680
|
+
className: styles["btn-login-google"] + " p-0 mb-4 mb-md-0"
|
|
37681
|
+
}))), React.createElement("div", {
|
|
37682
|
+
className: "" + styles["btn-login-sso"]
|
|
37683
|
+
}, React.createElement("div", {
|
|
37684
|
+
className: styles["btn-login-with-sso"],
|
|
37685
|
+
onClick: function onClick() {
|
|
37686
|
+
return window.open("https://launchpad.classlink.com/login");
|
|
37687
|
+
}
|
|
37688
|
+
}, React.createElement("img", {
|
|
37689
|
+
src: "images/class-link-icon.png"
|
|
37690
|
+
}), React.createElement("p", null, "SIGN IN WITH CLASSLINK"))))));
|
|
37691
|
+
}), isLoginGoogle && React.createElement(BlockSelectTeacher$1, {
|
|
37692
|
+
onSubmit: function onSubmit(e) {
|
|
37693
|
+
return submitLogin(e, clickHandler);
|
|
37694
|
+
},
|
|
37695
|
+
openModal: isLoginGoogle,
|
|
37696
|
+
token: infoUser.accessToken,
|
|
37697
|
+
email: infoUser.email
|
|
37698
|
+
}));
|
|
37409
37699
|
};
|
|
37410
37700
|
|
|
37411
|
-
var _sessionStorage$getIt;
|
|
37412
37701
|
var defaultInfo = {
|
|
37413
37702
|
email: "",
|
|
37414
|
-
|
|
37415
|
-
captcha: "",
|
|
37416
|
-
rememberMe: false,
|
|
37417
|
-
isSessionUserBrowser: (_sessionStorage$getIt = !!sessionStorage.getItem(IS_USER_SESSION_BROWSER)) != null ? _sessionStorage$getIt : false
|
|
37703
|
+
captcha: ""
|
|
37418
37704
|
};
|
|
37419
|
-
var
|
|
37420
|
-
var
|
|
37421
|
-
var HOMEPAGE_ADMIN = "/admin/home";
|
|
37422
|
-
var HOMEPAGE_PARENT = "/parent";
|
|
37423
|
-
var HOMEPAGE_DISTRICT = "/admin/schools";
|
|
37424
|
-
var HOMEPAGE_EDU_TEACHER = "/list-student";
|
|
37705
|
+
var DASHBOARD = "/";
|
|
37706
|
+
var LOGIN = "/login";
|
|
37425
37707
|
var TITLE = "Log in";
|
|
37426
37708
|
|
|
37427
|
-
var
|
|
37709
|
+
var useForgotPassword = function useForgotPassword() {
|
|
37710
|
+
var _query$get;
|
|
37711
|
+
|
|
37712
|
+
var query = new URLSearchParams(useLocation().search);
|
|
37713
|
+
var token = query.get("token");
|
|
37714
|
+
var key = (_query$get = query.get("key")) != null ? _query$get : "";
|
|
37428
37715
|
var dispatch = useDispatch();
|
|
37429
37716
|
var history = useHistory();
|
|
37430
37717
|
|
|
@@ -37432,67 +37719,41 @@ var useLogin = function useLogin() {
|
|
|
37432
37719
|
openLogin = _useState[0],
|
|
37433
37720
|
setOpenLogin = _useState[1];
|
|
37434
37721
|
|
|
37435
|
-
var
|
|
37436
|
-
|
|
37437
|
-
});
|
|
37438
|
-
|
|
37439
|
-
var _useState2 = useState(""),
|
|
37440
|
-
googleClientId = _useState2[0],
|
|
37441
|
-
setGoogleClientId = _useState2[1];
|
|
37442
|
-
|
|
37443
|
-
var _useState3 = useState(""),
|
|
37444
|
-
googleRecaptchaId = _useState3[0],
|
|
37445
|
-
setGoogleRecaptchaId = _useState3[1];
|
|
37722
|
+
var toggle = useCallback(function () {
|
|
37723
|
+
setOpenLogin(!openLogin);
|
|
37724
|
+
}, [openLogin]);
|
|
37446
37725
|
|
|
37447
|
-
var
|
|
37448
|
-
|
|
37449
|
-
|
|
37450
|
-
var params = new URLSearchParams(location.search);
|
|
37451
|
-
var loginClassLink = params.get("type") === "classlink";
|
|
37452
|
-
var tokenClassLink = params.get("token");
|
|
37726
|
+
var _useState2 = useState(false),
|
|
37727
|
+
isShowNewPassword = _useState2[0],
|
|
37728
|
+
setIsShowNewPassword = _useState2[1];
|
|
37453
37729
|
|
|
37454
|
-
var
|
|
37455
|
-
|
|
37730
|
+
var _useState3 = useState(false),
|
|
37731
|
+
isShowReTypePassword = _useState3[0],
|
|
37732
|
+
setIsShowReTypePassword = _useState3[1];
|
|
37456
37733
|
|
|
37457
|
-
var
|
|
37458
|
-
|
|
37459
|
-
|
|
37734
|
+
var _useState4 = useState({
|
|
37735
|
+
token: "",
|
|
37736
|
+
password: "",
|
|
37737
|
+
reEnterPassword: "",
|
|
37738
|
+
email: "",
|
|
37739
|
+
userId: ""
|
|
37460
37740
|
}),
|
|
37461
|
-
|
|
37462
|
-
|
|
37463
|
-
|
|
37464
|
-
var _useState6 = useState(),
|
|
37465
|
-
msalInstance = _useState6[0],
|
|
37466
|
-
setMsalInstance = _useState6[1];
|
|
37741
|
+
initialValues = _useState4[0],
|
|
37742
|
+
setInitialValues = _useState4[1];
|
|
37467
37743
|
|
|
37468
|
-
var
|
|
37469
|
-
|
|
37470
|
-
|
|
37744
|
+
var _useState5 = useState(true),
|
|
37745
|
+
validLink = _useState5[0],
|
|
37746
|
+
setValidLink = _useState5[1];
|
|
37471
37747
|
|
|
37472
|
-
var
|
|
37473
|
-
|
|
37474
|
-
setIsShowPassword = _useState7[1];
|
|
37748
|
+
var _useGoogleReCaptcha = useGoogleReCaptcha(),
|
|
37749
|
+
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
37475
37750
|
|
|
37476
37751
|
useEffect(function () {
|
|
37477
37752
|
document.title = TITLE;
|
|
37478
37753
|
var token = getAccessToken();
|
|
37479
|
-
if (!!token) history.push(
|
|
37480
|
-
getInfoGoogle();
|
|
37481
|
-
}, []);
|
|
37482
|
-
|
|
37483
|
-
var handleCancelModelAssign = function handleCancelModelAssign() {
|
|
37484
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
37485
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37486
|
-
localStorage.removeItem("USER_EMAIL");
|
|
37487
|
-
};
|
|
37488
|
-
|
|
37489
|
-
useEffect(function () {
|
|
37490
|
-
if (loginClassLink && tokenClassLink != "") {
|
|
37491
|
-
loginAccountClassLink();
|
|
37492
|
-
}
|
|
37754
|
+
if (!!token) history.push(DASHBOARD);
|
|
37493
37755
|
}, []);
|
|
37494
|
-
|
|
37495
|
-
var loginAccountClassLink = function loginAccountClassLink() {
|
|
37756
|
+
var forgotPasswordRequest = useCallback(function (data) {
|
|
37496
37757
|
try {
|
|
37497
37758
|
var _temp3 = function _temp3() {
|
|
37498
37759
|
dispatch(setLoading(false));
|
|
@@ -37501,38 +37762,30 @@ var useLogin = function useLogin() {
|
|
|
37501
37762
|
dispatch(setLoading(true));
|
|
37502
37763
|
|
|
37503
37764
|
var _temp4 = _catch(function () {
|
|
37504
|
-
|
|
37505
|
-
|
|
37506
|
-
|
|
37507
|
-
|
|
37508
|
-
|
|
37509
|
-
|
|
37510
|
-
token = _res$data.token;
|
|
37511
|
-
var dataUser = {
|
|
37512
|
-
email: email,
|
|
37513
|
-
rememberMe: false,
|
|
37514
|
-
password: "default",
|
|
37515
|
-
accessToken: token
|
|
37516
|
-
};
|
|
37517
|
-
return Promise.resolve(userLogin(dataUser)).then(function () {});
|
|
37765
|
+
return Promise.resolve(forgotPassword(data)).then(function () {
|
|
37766
|
+
history.push(LOGIN);
|
|
37767
|
+
dispatch(setAlert({
|
|
37768
|
+
type: "success",
|
|
37769
|
+
message: "A mail to reset password was sent"
|
|
37770
|
+
}));
|
|
37518
37771
|
});
|
|
37519
37772
|
}, function (err) {
|
|
37520
37773
|
var _err$response, _err$response$data;
|
|
37521
37774
|
|
|
37522
37775
|
dispatch(setAlert({
|
|
37523
37776
|
type: "danger",
|
|
37524
|
-
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
|
|
37777
|
+
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 || "Error occured"
|
|
37525
37778
|
}));
|
|
37779
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
37780
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37526
37781
|
});
|
|
37527
37782
|
|
|
37528
37783
|
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
37529
37784
|
} catch (e) {
|
|
37530
37785
|
return Promise.reject(e);
|
|
37531
37786
|
}
|
|
37532
|
-
};
|
|
37533
|
-
|
|
37534
|
-
var isDistrict = window.location.host.includes("-district");
|
|
37535
|
-
var getSchoolInfo = useCallback(function () {
|
|
37787
|
+
}, []);
|
|
37788
|
+
var checkResetTokenRequest = useCallback(function (token, key) {
|
|
37536
37789
|
try {
|
|
37537
37790
|
var _temp7 = function _temp7() {
|
|
37538
37791
|
dispatch(setLoading(false));
|
|
@@ -37541,12 +37794,487 @@ var useLogin = function useLogin() {
|
|
|
37541
37794
|
dispatch(setLoading(true));
|
|
37542
37795
|
|
|
37543
37796
|
var _temp8 = _catch(function () {
|
|
37544
|
-
return Promise.resolve(
|
|
37545
|
-
if (
|
|
37546
|
-
|
|
37797
|
+
return Promise.resolve(checkResetToken(token, key)).then(function (res) {
|
|
37798
|
+
if (res.data) {
|
|
37799
|
+
setInitialValues(_extends({}, initialValues, {
|
|
37800
|
+
token: token,
|
|
37801
|
+
email: res.data
|
|
37802
|
+
}));
|
|
37803
|
+
} else {
|
|
37804
|
+
setValidLink(false);
|
|
37547
37805
|
}
|
|
37548
37806
|
});
|
|
37549
|
-
}, function (
|
|
37807
|
+
}, function () {
|
|
37808
|
+
setValidLink(false);
|
|
37809
|
+
});
|
|
37810
|
+
|
|
37811
|
+
return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(_temp7) : _temp7(_temp8));
|
|
37812
|
+
} catch (e) {
|
|
37813
|
+
return Promise.reject(e);
|
|
37814
|
+
}
|
|
37815
|
+
}, []);
|
|
37816
|
+
var resetPasswordRequest = useCallback(function (data) {
|
|
37817
|
+
try {
|
|
37818
|
+
var _temp11 = function _temp11() {
|
|
37819
|
+
dispatch(setLoading(false));
|
|
37820
|
+
};
|
|
37821
|
+
|
|
37822
|
+
dispatch(setLoading(true));
|
|
37823
|
+
|
|
37824
|
+
var _temp12 = _catch(function () {
|
|
37825
|
+
return Promise.resolve(resetPassword(_extends({}, data, {
|
|
37826
|
+
key: key
|
|
37827
|
+
}))).then(function () {
|
|
37828
|
+
history.push(LOGIN);
|
|
37829
|
+
dispatch(setAlert({
|
|
37830
|
+
type: "success",
|
|
37831
|
+
message: "Reset password sucessfully"
|
|
37832
|
+
}));
|
|
37833
|
+
});
|
|
37834
|
+
}, function (err) {
|
|
37835
|
+
var _err$response2, _err$response2$data;
|
|
37836
|
+
|
|
37837
|
+
dispatch(setAlert({
|
|
37838
|
+
type: "danger",
|
|
37839
|
+
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 || "Error occured"
|
|
37840
|
+
}));
|
|
37841
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
37842
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37843
|
+
});
|
|
37844
|
+
|
|
37845
|
+
return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
|
|
37846
|
+
} catch (e) {
|
|
37847
|
+
return Promise.reject(e);
|
|
37848
|
+
}
|
|
37849
|
+
}, []);
|
|
37850
|
+
var clickHandler = useCallback(function () {
|
|
37851
|
+
try {
|
|
37852
|
+
if (!executeRecaptcha) {
|
|
37853
|
+
console.log("execute recaptcha undefined");
|
|
37854
|
+
return Promise.resolve();
|
|
37855
|
+
}
|
|
37856
|
+
|
|
37857
|
+
return Promise.resolve(executeRecaptcha("forgetPass"));
|
|
37858
|
+
} catch (e) {
|
|
37859
|
+
return Promise.reject(e);
|
|
37860
|
+
}
|
|
37861
|
+
}, [executeRecaptcha]);
|
|
37862
|
+
var handleVerify = useCallback(function () {}, []);
|
|
37863
|
+
useEffect(function () {
|
|
37864
|
+
checkResetTokenRequest(token, key);
|
|
37865
|
+
}, []);
|
|
37866
|
+
return {
|
|
37867
|
+
defaultInfo: defaultInfo,
|
|
37868
|
+
forgotPasswordRequest: forgotPasswordRequest,
|
|
37869
|
+
checkResetTokenRequest: checkResetTokenRequest,
|
|
37870
|
+
validLink: validLink,
|
|
37871
|
+
resetPasswordRequest: resetPasswordRequest,
|
|
37872
|
+
openLogin: openLogin,
|
|
37873
|
+
toggle: toggle,
|
|
37874
|
+
isShowNewPassword: isShowNewPassword,
|
|
37875
|
+
setIsShowNewPassword: setIsShowNewPassword,
|
|
37876
|
+
isShowReTypePassword: isShowReTypePassword,
|
|
37877
|
+
setIsShowReTypePassword: setIsShowReTypePassword,
|
|
37878
|
+
clickHandler: clickHandler,
|
|
37879
|
+
handleVerify: handleVerify,
|
|
37880
|
+
initialValues: initialValues
|
|
37881
|
+
};
|
|
37882
|
+
};
|
|
37883
|
+
|
|
37884
|
+
var initialValues = {
|
|
37885
|
+
email: "",
|
|
37886
|
+
captcha: ""
|
|
37887
|
+
};
|
|
37888
|
+
var forgotPasswordSchema = object({
|
|
37889
|
+
email: string().email("Email is invalid").required("Email is required")
|
|
37890
|
+
});
|
|
37891
|
+
|
|
37892
|
+
var BlockForgetPassword = function BlockForgetPassword(_ref) {
|
|
37893
|
+
var school = _ref.school;
|
|
37894
|
+
|
|
37895
|
+
var _useForgotPassword = useForgotPassword(),
|
|
37896
|
+
forgotPasswordRequest = _useForgotPassword.forgotPasswordRequest,
|
|
37897
|
+
clickHandler = _useForgotPassword.clickHandler,
|
|
37898
|
+
handleVerify = _useForgotPassword.handleVerify;
|
|
37899
|
+
|
|
37900
|
+
return React.createElement(Formik, {
|
|
37901
|
+
initialValues: initialValues,
|
|
37902
|
+
enableReinitialize: true,
|
|
37903
|
+
validationSchema: forgotPasswordSchema,
|
|
37904
|
+
onSubmit: function (values) {
|
|
37905
|
+
try {
|
|
37906
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37907
|
+
if (!clickHandlerRes) return;
|
|
37908
|
+
values.captcha = clickHandlerRes;
|
|
37909
|
+
forgotPasswordRequest(values);
|
|
37910
|
+
});
|
|
37911
|
+
} catch (e) {
|
|
37912
|
+
return Promise.reject(e);
|
|
37913
|
+
}
|
|
37914
|
+
}
|
|
37915
|
+
}, function (formikProps) {
|
|
37916
|
+
var handleChange = formikProps.handleChange,
|
|
37917
|
+
handleSubmit = formikProps.handleSubmit,
|
|
37918
|
+
values = formikProps.values,
|
|
37919
|
+
touched = formikProps.touched,
|
|
37920
|
+
errors = formikProps.errors;
|
|
37921
|
+
return React.createElement("div", {
|
|
37922
|
+
className: "" + styles["box-login"]
|
|
37923
|
+
}, React.createElement("div", {
|
|
37924
|
+
className: "" + styles["block-login"]
|
|
37925
|
+
}, React.createElement("div", {
|
|
37926
|
+
className: "" + styles["block-form"]
|
|
37927
|
+
}, React.createElement("div", {
|
|
37928
|
+
className: "d-flex align-items-center mb-4"
|
|
37929
|
+
}, React.createElement("img", {
|
|
37930
|
+
src: school.schoolLogo,
|
|
37931
|
+
className: styles["school-icon"] + " mr-3"
|
|
37932
|
+
}), React.createElement("p", {
|
|
37933
|
+
className: styles["school-name"] + " mb-0"
|
|
37934
|
+
}, school.schoolName)), React.createElement("p", {
|
|
37935
|
+
className: styles["title-login"] + " "
|
|
37936
|
+
}, "Forgot password"), React.createElement("p", {
|
|
37937
|
+
className: styles["recover-account"] + " mb-5"
|
|
37938
|
+
}, "Enter email to recover your account"), React.createElement("div", {
|
|
37939
|
+
className: "w-100"
|
|
37940
|
+
}, React.createElement(Input, {
|
|
37941
|
+
type: "text",
|
|
37942
|
+
name: "email",
|
|
37943
|
+
id: "email",
|
|
37944
|
+
placeholder: "Input email",
|
|
37945
|
+
onChange: handleChange,
|
|
37946
|
+
value: values.email
|
|
37947
|
+
}), touched.email && errors.email && React.createElement(ErrorHandler, {
|
|
37948
|
+
text: errors.email
|
|
37949
|
+
})), React.createElement(Link, {
|
|
37950
|
+
to: "/login",
|
|
37951
|
+
className: styles["link-to-login"] + " mt-2"
|
|
37952
|
+
}, "Return to login"), React.createElement(GoogleReCaptcha, {
|
|
37953
|
+
action: "forgetPass",
|
|
37954
|
+
onVerify: handleVerify
|
|
37955
|
+
}), React.createElement(Col, {
|
|
37956
|
+
className: "p-0"
|
|
37957
|
+
}, React.createElement("button", {
|
|
37958
|
+
className: styles["btn-login"] + " mt-5",
|
|
37959
|
+
onClick: function onClick() {
|
|
37960
|
+
return handleSubmit();
|
|
37961
|
+
}
|
|
37962
|
+
}, "Continue")))));
|
|
37963
|
+
});
|
|
37964
|
+
};
|
|
37965
|
+
|
|
37966
|
+
var getStaticFileUrl = function getStaticFileUrl(url) {
|
|
37967
|
+
var STAGE_DOMAIN = "https://stage2.marioforme.com";
|
|
37968
|
+
var isStage = STAGE_DOMAIN === location.origin;
|
|
37969
|
+
if (!url) return "";
|
|
37970
|
+
if (isLocalhost && !isStage || url.startsWith("http")) return url;
|
|
37971
|
+
if (url.startsWith("/")) return "" + (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + url;else return (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + "/" + url;
|
|
37972
|
+
};
|
|
37973
|
+
|
|
37974
|
+
var resetPasswordSchema = object({
|
|
37975
|
+
password: string().required("New password is required"),
|
|
37976
|
+
reEnterPassword: string().required("Please re-enter new password").test("matching", "Passwords do not match", function () {
|
|
37977
|
+
return this.parent.password === this.parent.reEnterPassword;
|
|
37978
|
+
})
|
|
37979
|
+
});
|
|
37980
|
+
|
|
37981
|
+
var BlockResetPassword = function BlockResetPassword() {
|
|
37982
|
+
var _useForgotPassword = useForgotPassword(),
|
|
37983
|
+
validLink = _useForgotPassword.validLink,
|
|
37984
|
+
resetPasswordRequest = _useForgotPassword.resetPasswordRequest,
|
|
37985
|
+
isShowNewPassword = _useForgotPassword.isShowNewPassword,
|
|
37986
|
+
setIsShowNewPassword = _useForgotPassword.setIsShowNewPassword,
|
|
37987
|
+
isShowReTypePassword = _useForgotPassword.isShowReTypePassword,
|
|
37988
|
+
setIsShowReTypePassword = _useForgotPassword.setIsShowReTypePassword,
|
|
37989
|
+
initialValues = _useForgotPassword.initialValues;
|
|
37990
|
+
|
|
37991
|
+
return React.createElement(Formik, {
|
|
37992
|
+
initialValues: initialValues,
|
|
37993
|
+
enableReinitialize: true,
|
|
37994
|
+
validationSchema: resetPasswordSchema,
|
|
37995
|
+
onSubmit: function onSubmit(values) {
|
|
37996
|
+
resetPasswordRequest(values);
|
|
37997
|
+
}
|
|
37998
|
+
}, function (formikProps) {
|
|
37999
|
+
var setFieldValue = formikProps.setFieldValue,
|
|
38000
|
+
handleSubmit = formikProps.handleSubmit,
|
|
38001
|
+
touched = formikProps.touched,
|
|
38002
|
+
errors = formikProps.errors,
|
|
38003
|
+
values = formikProps.values;
|
|
38004
|
+
return React.createElement(Row, {
|
|
38005
|
+
className: "" + styles["box-login"]
|
|
38006
|
+
}, React.createElement(Col, {
|
|
38007
|
+
className: "p-0"
|
|
38008
|
+
}, React.createElement("div", {
|
|
38009
|
+
className: "" + styles["block-login"]
|
|
38010
|
+
}, React.createElement("div", {
|
|
38011
|
+
className: "" + styles["block-form"]
|
|
38012
|
+
}, React.createElement("img", {
|
|
38013
|
+
src: "" + getStaticFileUrl("/images/horizontal-logo-blue.svg"),
|
|
38014
|
+
className: "" + styles["img-login-rectangle"]
|
|
38015
|
+
}), React.createElement("p", {
|
|
38016
|
+
className: "" + styles["title-login"]
|
|
38017
|
+
}, "Reset Password"), React.createElement("div", {
|
|
38018
|
+
className: "w-100"
|
|
38019
|
+
}, validLink ? React.createElement(React.Fragment, null, React.createElement(FormGroup, {
|
|
38020
|
+
className: "" + styles["form-user-name"]
|
|
38021
|
+
}, React.createElement(Input, {
|
|
38022
|
+
disabled: true,
|
|
38023
|
+
type: "text",
|
|
38024
|
+
name: "email",
|
|
38025
|
+
placeholder: "Email",
|
|
38026
|
+
value: values.email,
|
|
38027
|
+
autocomplete: "email",
|
|
38028
|
+
required: true,
|
|
38029
|
+
className: "" + styles["input"]
|
|
38030
|
+
})), React.createElement("div", {
|
|
38031
|
+
className: "" + styles["form-user-name"]
|
|
38032
|
+
}, React.createElement(PasswordInput, {
|
|
38033
|
+
isShowPassword: isShowNewPassword,
|
|
38034
|
+
togglePasswordVisible: function togglePasswordVisible() {
|
|
38035
|
+
return setIsShowNewPassword(!isShowNewPassword);
|
|
38036
|
+
},
|
|
38037
|
+
onChange: function onChange(e) {
|
|
38038
|
+
return setFieldValue("password", e.target.value);
|
|
38039
|
+
}
|
|
38040
|
+
}), touched.password && errors.password && React.createElement(ErrorHandler, {
|
|
38041
|
+
text: errors.password
|
|
38042
|
+
})), React.createElement("div", {
|
|
38043
|
+
className: "" + styles["form-user-name"]
|
|
38044
|
+
}, React.createElement(PasswordInput, {
|
|
38045
|
+
placeholder: "Confirm Password",
|
|
38046
|
+
isShowPassword: isShowReTypePassword,
|
|
38047
|
+
togglePasswordVisible: function togglePasswordVisible() {
|
|
38048
|
+
return setIsShowReTypePassword(!isShowReTypePassword);
|
|
38049
|
+
},
|
|
38050
|
+
onChange: function onChange(e) {
|
|
38051
|
+
return setFieldValue("reEnterPassword", e.target.value);
|
|
38052
|
+
}
|
|
38053
|
+
}), touched.reEnterPassword && errors.reEnterPassword && React.createElement(ErrorHandler, {
|
|
38054
|
+
text: errors.reEnterPassword
|
|
38055
|
+
}))) : React.createElement(React.Fragment, null, React.createElement("p", {
|
|
38056
|
+
className: styles["recover-account"] + " mb-5"
|
|
38057
|
+
}, "Invalid reset password link"), React.createElement("p", {
|
|
38058
|
+
className: "w-100"
|
|
38059
|
+
}, "It may have been accessed before or expired or you have just tried to reset another account's password"))), validLink && React.createElement(Col, {
|
|
38060
|
+
className: "p-0"
|
|
38061
|
+
}, React.createElement("button", {
|
|
38062
|
+
className: styles["btn-login"] + " " + styles["btn-rounder"] + " mt-4",
|
|
38063
|
+
onClick: function onClick() {
|
|
38064
|
+
return handleSubmit();
|
|
38065
|
+
}
|
|
38066
|
+
}, "SET A NEW PASSWORD"))))), React.createElement(Col, {
|
|
38067
|
+
lg: 4,
|
|
38068
|
+
md: 4,
|
|
38069
|
+
className: "" + styles["img-box"]
|
|
38070
|
+
}, React.createElement("img", {
|
|
38071
|
+
src: getStaticFileUrl("/images/img-login.png"),
|
|
38072
|
+
className: "" + styles["img-login"]
|
|
38073
|
+
})));
|
|
38074
|
+
});
|
|
38075
|
+
};
|
|
38076
|
+
|
|
38077
|
+
var SCHOOL_URL = BASE_URL + "/api/school";
|
|
38078
|
+
var getSchoolSettings = function getSchoolSettings() {
|
|
38079
|
+
return api.get(SCHOOL_URL + "/settings");
|
|
38080
|
+
};
|
|
38081
|
+
var getInfo$1 = function getInfo() {
|
|
38082
|
+
return api.get(SCHOOL_URL + "/info");
|
|
38083
|
+
};
|
|
38084
|
+
|
|
38085
|
+
var msalConfig = {
|
|
38086
|
+
auth: {
|
|
38087
|
+
clientId: "90c6897c-f17b-475e-a7a8-9a19651e0060",
|
|
38088
|
+
authority: "https://login.microsoftonline.com/common",
|
|
38089
|
+
redirectUri: window.location.origin + "/login"
|
|
38090
|
+
},
|
|
38091
|
+
cache: {
|
|
38092
|
+
cacheLocation: "sessionStorage",
|
|
38093
|
+
storeAuthStateInCookie: false
|
|
38094
|
+
},
|
|
38095
|
+
system: {
|
|
38096
|
+
loggerOptions: {
|
|
38097
|
+
loggerCallback: function loggerCallback(level, message, containsPii) {
|
|
38098
|
+
if (containsPii) {
|
|
38099
|
+
return;
|
|
38100
|
+
}
|
|
38101
|
+
|
|
38102
|
+
switch (level) {
|
|
38103
|
+
case LogLevel.Error:
|
|
38104
|
+
console.error(message);
|
|
38105
|
+
return;
|
|
38106
|
+
|
|
38107
|
+
case LogLevel.Info:
|
|
38108
|
+
console.info(message);
|
|
38109
|
+
return;
|
|
38110
|
+
|
|
38111
|
+
case LogLevel.Verbose:
|
|
38112
|
+
console.debug(message);
|
|
38113
|
+
return;
|
|
38114
|
+
|
|
38115
|
+
case LogLevel.Warning:
|
|
38116
|
+
console.warn(message);
|
|
38117
|
+
return;
|
|
38118
|
+
|
|
38119
|
+
default:
|
|
38120
|
+
return;
|
|
38121
|
+
}
|
|
38122
|
+
}
|
|
38123
|
+
}
|
|
38124
|
+
}
|
|
38125
|
+
};
|
|
38126
|
+
|
|
38127
|
+
var getFileUrl = function getFileUrl(fileName) {
|
|
38128
|
+
if (!fileName || !fileName.trim()) return "";
|
|
38129
|
+
return BASE_URL + "/api/file/viewer?key=" + fileName;
|
|
38130
|
+
};
|
|
38131
|
+
|
|
38132
|
+
var _sessionStorage$getIt;
|
|
38133
|
+
var defaultInfo$1 = {
|
|
38134
|
+
email: "",
|
|
38135
|
+
password: "",
|
|
38136
|
+
captcha: "",
|
|
38137
|
+
rememberMe: false,
|
|
38138
|
+
isSessionUserBrowser: (_sessionStorage$getIt = !!sessionStorage.getItem(IS_USER_SESSION_BROWSER)) != null ? _sessionStorage$getIt : false
|
|
38139
|
+
};
|
|
38140
|
+
var HOMEPAGE_TEACHER = "/home";
|
|
38141
|
+
var HOMEPAGE_STUDENT = "/home";
|
|
38142
|
+
var HOMEPAGE_ADMIN = "/admin/home";
|
|
38143
|
+
var HOMEPAGE_PARENT = "/parent";
|
|
38144
|
+
var HOMEPAGE_DISTRICT = "/admin/schools";
|
|
38145
|
+
var HOMEPAGE_EDU_TEACHER = "/list-student";
|
|
38146
|
+
var TITLE$1 = "Log in";
|
|
38147
|
+
|
|
38148
|
+
var useLogin = function useLogin() {
|
|
38149
|
+
var dispatch = useDispatch();
|
|
38150
|
+
var history = useHistory();
|
|
38151
|
+
|
|
38152
|
+
var _useState = useState(false),
|
|
38153
|
+
openLogin = _useState[0],
|
|
38154
|
+
setOpenLogin = _useState[1];
|
|
38155
|
+
|
|
38156
|
+
var isLoginGoogle = useSelector(function (state) {
|
|
38157
|
+
return state.common.isLoginGoogle;
|
|
38158
|
+
});
|
|
38159
|
+
|
|
38160
|
+
var _useState2 = useState(""),
|
|
38161
|
+
googleClientId = _useState2[0],
|
|
38162
|
+
setGoogleClientId = _useState2[1];
|
|
38163
|
+
|
|
38164
|
+
var _useState3 = useState(""),
|
|
38165
|
+
googleRecaptchaId = _useState3[0],
|
|
38166
|
+
setGoogleRecaptchaId = _useState3[1];
|
|
38167
|
+
|
|
38168
|
+
var infoUser = useSelector(function (state) {
|
|
38169
|
+
return state.common.inforUserGoogle;
|
|
38170
|
+
});
|
|
38171
|
+
var params = new URLSearchParams(location.search);
|
|
38172
|
+
var loginClassLink = params.get("type") === "classlink";
|
|
38173
|
+
var tokenClassLink = params.get("token");
|
|
38174
|
+
|
|
38175
|
+
var _useState4 = useState(false),
|
|
38176
|
+
openModelAssign = _useState4[0];
|
|
38177
|
+
|
|
38178
|
+
var _useState5 = useState({
|
|
38179
|
+
schoolName: "",
|
|
38180
|
+
schoolLogo: ""
|
|
38181
|
+
}),
|
|
38182
|
+
school = _useState5[0],
|
|
38183
|
+
setSchool = _useState5[1];
|
|
38184
|
+
|
|
38185
|
+
var _useState6 = useState(),
|
|
38186
|
+
msalInstance = _useState6[0],
|
|
38187
|
+
setMsalInstance = _useState6[1];
|
|
38188
|
+
|
|
38189
|
+
var toggle = useCallback(function () {
|
|
38190
|
+
setOpenLogin(!openLogin);
|
|
38191
|
+
}, [openLogin]);
|
|
38192
|
+
|
|
38193
|
+
var _useState7 = useState(false),
|
|
38194
|
+
isShowPassword = _useState7[0],
|
|
38195
|
+
setIsShowPassword = _useState7[1];
|
|
38196
|
+
|
|
38197
|
+
useEffect(function () {
|
|
38198
|
+
document.title = TITLE$1;
|
|
38199
|
+
var token = getAccessToken();
|
|
38200
|
+
if (!!token) history.push("/");
|
|
38201
|
+
getInfoGoogle();
|
|
38202
|
+
}, []);
|
|
38203
|
+
|
|
38204
|
+
var handleCancelModelAssign = function handleCancelModelAssign() {
|
|
38205
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
38206
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
38207
|
+
localStorage.removeItem("USER_EMAIL");
|
|
38208
|
+
};
|
|
38209
|
+
|
|
38210
|
+
useEffect(function () {
|
|
38211
|
+
if (loginClassLink && tokenClassLink != "") {
|
|
38212
|
+
loginAccountClassLink();
|
|
38213
|
+
}
|
|
38214
|
+
}, []);
|
|
38215
|
+
|
|
38216
|
+
var loginAccountClassLink = function loginAccountClassLink() {
|
|
38217
|
+
try {
|
|
38218
|
+
var _temp3 = function _temp3() {
|
|
38219
|
+
dispatch(setLoading(false));
|
|
38220
|
+
};
|
|
38221
|
+
|
|
38222
|
+
dispatch(setLoading(true));
|
|
38223
|
+
|
|
38224
|
+
var _temp4 = _catch(function () {
|
|
38225
|
+
var data = {
|
|
38226
|
+
tokenClassLink: tokenClassLink
|
|
38227
|
+
};
|
|
38228
|
+
return Promise.resolve(apiInforUserClassLink(data)).then(function (res) {
|
|
38229
|
+
var _res$data = res.data,
|
|
38230
|
+
email = _res$data.email,
|
|
38231
|
+
token = _res$data.token;
|
|
38232
|
+
var dataUser = {
|
|
38233
|
+
email: email,
|
|
38234
|
+
rememberMe: false,
|
|
38235
|
+
password: "default",
|
|
38236
|
+
accessToken: token
|
|
38237
|
+
};
|
|
38238
|
+
return Promise.resolve(userLogin(dataUser)).then(function () {});
|
|
38239
|
+
});
|
|
38240
|
+
}, function (err) {
|
|
38241
|
+
var _err$response, _err$response$data;
|
|
38242
|
+
|
|
38243
|
+
dispatch(setAlert({
|
|
38244
|
+
type: "danger",
|
|
38245
|
+
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
|
|
38246
|
+
}));
|
|
38247
|
+
});
|
|
38248
|
+
|
|
38249
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
38250
|
+
} catch (e) {
|
|
38251
|
+
return Promise.reject(e);
|
|
38252
|
+
}
|
|
38253
|
+
};
|
|
38254
|
+
|
|
38255
|
+
var isDistrict = window.location.host.includes("-district");
|
|
38256
|
+
var getSchoolInfo = useCallback(function () {
|
|
38257
|
+
try {
|
|
38258
|
+
var _temp7 = function _temp7() {
|
|
38259
|
+
dispatch(setLoading(false));
|
|
38260
|
+
};
|
|
38261
|
+
|
|
38262
|
+
dispatch(setLoading(true));
|
|
38263
|
+
|
|
38264
|
+
var _temp8 = _catch(function () {
|
|
38265
|
+
return Promise.resolve(getInfo$1()).then(function (res) {
|
|
38266
|
+
var _res$data$schoolLogo;
|
|
38267
|
+
|
|
38268
|
+
var schoolLogo = (_res$data$schoolLogo = res.data.schoolLogo) != null ? _res$data$schoolLogo : "";
|
|
38269
|
+
|
|
38270
|
+
if (!!res.data) {
|
|
38271
|
+
setSchool({
|
|
38272
|
+
schoolName: res.data.schoolName,
|
|
38273
|
+
schoolLogo: !schoolLogo ? getStaticFileUrl("/images/logo_header_blue.png") : getFileUrl(schoolLogo)
|
|
38274
|
+
});
|
|
38275
|
+
}
|
|
38276
|
+
});
|
|
38277
|
+
}, function (err) {
|
|
37550
38278
|
var _err$response2, _err$response2$data;
|
|
37551
38279
|
|
|
37552
38280
|
dispatch(setAlert({
|
|
@@ -37623,1028 +38351,306 @@ var useLogin = function useLogin() {
|
|
|
37623
38351
|
});
|
|
37624
38352
|
amplitude.getInstance().logEvent("general: session start", {
|
|
37625
38353
|
user_id: data.email,
|
|
37626
|
-
domain: hostName,
|
|
37627
|
-
roles: data === null || data === void 0 ? void 0 : (_data$roles = data.roles) === null || _data$roles === void 0 ? void 0 : _data$roles.toString()
|
|
37628
|
-
});
|
|
37629
|
-
localStorage.setItem("USER_EMAIL", data.email);
|
|
37630
|
-
|
|
37631
|
-
if (isLoginFirst) {
|
|
37632
|
-
var _data$roles2;
|
|
37633
|
-
|
|
37634
|
-
amplitude.getInstance().logEvent("general: first login", {
|
|
37635
|
-
user_id: data.email,
|
|
37636
|
-
domain: hostName,
|
|
37637
|
-
roles: data === null || data === void 0 ? void 0 : (_data$roles2 = data.roles) === null || _data$roles2 === void 0 ? void 0 : _data$roles2.toString()
|
|
37638
|
-
});
|
|
37639
|
-
}
|
|
37640
|
-
}
|
|
37641
|
-
|
|
37642
|
-
if (isDistrict) {
|
|
37643
|
-
history.push(HOMEPAGE_DISTRICT);
|
|
37644
|
-
} else if (roles.includes("Admin")) {
|
|
37645
|
-
history.push(HOMEPAGE_ADMIN);
|
|
37646
|
-
} else if (roles.includes("Teacher") || roles.includes("Assistant") || roles.includes("Counselor") || roles.includes("SecondaryTeacher")) {
|
|
37647
|
-
history.push(HOMEPAGE_TEACHER);
|
|
37648
|
-
} else if (roles.includes("Student")) {
|
|
37649
|
-
history.push(HOMEPAGE_STUDENT);
|
|
37650
|
-
} else if (roles.includes("Parent")) {
|
|
37651
|
-
history.push(HOMEPAGE_PARENT);
|
|
37652
|
-
} else if (roles.includes("EduTeacher")) {
|
|
37653
|
-
history.push(HOMEPAGE_EDU_TEACHER);
|
|
37654
|
-
}
|
|
37655
|
-
});
|
|
37656
|
-
}, function (err) {
|
|
37657
|
-
var _err$response3, _err$response3$data;
|
|
37658
|
-
|
|
37659
|
-
dispatch(setAlert({
|
|
37660
|
-
type: "danger",
|
|
37661
|
-
message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : _err$response3$data.title) || err.message || "Login failed"
|
|
37662
|
-
}));
|
|
37663
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
37664
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37665
|
-
});
|
|
37666
|
-
|
|
37667
|
-
return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
|
|
37668
|
-
} catch (e) {
|
|
37669
|
-
return Promise.reject(e);
|
|
37670
|
-
}
|
|
37671
|
-
}, []);
|
|
37672
|
-
|
|
37673
|
-
var getInfoGoogle = function getInfoGoogle() {
|
|
37674
|
-
try {
|
|
37675
|
-
var _temp14 = _catch(function () {
|
|
37676
|
-
return Promise.resolve(getGoogleClientId()).then(function (res) {
|
|
37677
|
-
setGoogleClientId(res.data.googleClientId);
|
|
37678
|
-
setGoogleRecaptchaId(res.data.googleCaptchaId);
|
|
37679
|
-
});
|
|
37680
|
-
}, function (err) {
|
|
37681
|
-
var _err$response4, _err$response4$data;
|
|
37682
|
-
|
|
37683
|
-
dispatch(setAlert({
|
|
37684
|
-
type: "danger",
|
|
37685
|
-
message: ((_err$response4 = err.response) === null || _err$response4 === void 0 ? void 0 : (_err$response4$data = _err$response4.data) === null || _err$response4$data === void 0 ? void 0 : _err$response4$data.title) || err.message || "Login failed"
|
|
37686
|
-
}));
|
|
37687
|
-
});
|
|
37688
|
-
|
|
37689
|
-
return Promise.resolve(_temp14 && _temp14.then ? _temp14.then(function () {}) : void 0);
|
|
37690
|
-
} catch (e) {
|
|
37691
|
-
return Promise.reject(e);
|
|
37692
|
-
}
|
|
37693
|
-
};
|
|
37694
|
-
|
|
37695
|
-
var fnIsCheckLogin = useCallback(function (type, data, token, clickHandler) {
|
|
37696
|
-
try {
|
|
37697
|
-
var _temp20 = function _temp20() {
|
|
37698
|
-
dispatch(setLoading(false));
|
|
37699
|
-
};
|
|
37700
|
-
|
|
37701
|
-
dispatch(setLoading(true));
|
|
37702
|
-
|
|
37703
|
-
var _temp21 = _catch(function () {
|
|
37704
|
-
return Promise.resolve(checkUserGoogle(type, data)).then(function (res) {
|
|
37705
|
-
var checkUser = res.data;
|
|
37706
|
-
|
|
37707
|
-
var _temp17 = function () {
|
|
37708
|
-
if (checkUser) {
|
|
37709
|
-
var _temp22 = function _temp22() {
|
|
37710
|
-
return Promise.resolve(userLogin(_dataUser)).then(function () {
|
|
37711
|
-
dispatch(setIsLoginGoogle(false));
|
|
37712
|
-
});
|
|
37713
|
-
};
|
|
37714
|
-
|
|
37715
|
-
var _dataUser = {
|
|
37716
|
-
email: data.email,
|
|
37717
|
-
isLoginGoogle: true,
|
|
37718
|
-
rememberMe: false,
|
|
37719
|
-
password: "default",
|
|
37720
|
-
accessToken: token,
|
|
37721
|
-
captcha: "",
|
|
37722
|
-
loginType: LoginType.Google
|
|
37723
|
-
};
|
|
37724
|
-
|
|
37725
|
-
var _temp23 = function () {
|
|
37726
|
-
if (clickHandler != null) {
|
|
37727
|
-
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37728
|
-
_dataUser.captcha = clickHandlerRes;
|
|
37729
|
-
});
|
|
37730
|
-
}
|
|
37731
|
-
}();
|
|
37732
|
-
|
|
37733
|
-
return _temp23 && _temp23.then ? _temp23.then(_temp22) : _temp22(_temp23);
|
|
37734
|
-
} else {
|
|
37735
|
-
dispatch(setIsLoginGoogle(true));
|
|
37736
|
-
}
|
|
37737
|
-
}();
|
|
37738
|
-
|
|
37739
|
-
if (_temp17 && _temp17.then) return _temp17.then(function () {});
|
|
37740
|
-
});
|
|
37741
|
-
}, function (err) {
|
|
37742
|
-
var _err$response5, _err$response5$data;
|
|
37743
|
-
|
|
37744
|
-
dispatch(setAlert({
|
|
37745
|
-
type: "danger",
|
|
37746
|
-
message: ((_err$response5 = err.response) === null || _err$response5 === void 0 ? void 0 : (_err$response5$data = _err$response5.data) === null || _err$response5$data === void 0 ? void 0 : _err$response5$data.title) || err.message || "Login failed"
|
|
37747
|
-
}));
|
|
37748
|
-
});
|
|
37749
|
-
|
|
37750
|
-
return Promise.resolve(_temp21 && _temp21.then ? _temp21.then(_temp20) : _temp20(_temp21));
|
|
37751
|
-
} catch (e) {
|
|
37752
|
-
return Promise.reject(e);
|
|
37753
|
-
}
|
|
37754
|
-
}, []);
|
|
37755
|
-
|
|
37756
|
-
var submitLogin = function submitLogin(teacherId, clickHandler) {
|
|
37757
|
-
try {
|
|
37758
|
-
var _temp27 = function _temp27() {
|
|
37759
|
-
dispatch(setIsLoginGoogle(false));
|
|
37760
|
-
dispatch(setLoading(false));
|
|
37761
|
-
};
|
|
37762
|
-
|
|
37763
|
-
dispatch(setLoading(true));
|
|
37764
|
-
|
|
37765
|
-
var _temp28 = _catch(function () {
|
|
37766
|
-
var data = {
|
|
37767
|
-
firstName: infoUser.firstName,
|
|
37768
|
-
lastName: infoUser.lastName,
|
|
37769
|
-
imageUrl: infoUser.imageUrl,
|
|
37770
|
-
fullName: infoUser.fullName,
|
|
37771
|
-
email: infoUser.email,
|
|
37772
|
-
accessToken: infoUser.accessToken,
|
|
37773
|
-
teacherId: teacherId
|
|
37774
|
-
};
|
|
37775
|
-
return Promise.resolve(registerUserStudent(data)).then(function (res) {
|
|
37776
|
-
var _temp24 = function () {
|
|
37777
|
-
if (res.data) {
|
|
37778
|
-
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37779
|
-
var dataLogin = {
|
|
37780
|
-
email: infoUser.email,
|
|
37781
|
-
captcha: clickHandlerRes,
|
|
37782
|
-
isLoginGoogle: true,
|
|
37783
|
-
rememberMe: false,
|
|
37784
|
-
password: "default",
|
|
37785
|
-
accessToken: infoUser.accessToken,
|
|
37786
|
-
loginType: LoginType.Google
|
|
37787
|
-
};
|
|
37788
|
-
dispatch(setIsLoginGoogle(false));
|
|
37789
|
-
return Promise.resolve(userLogin(dataLogin)).then(function () {
|
|
37790
|
-
history.push(HOMEPAGE_STUDENT);
|
|
37791
|
-
});
|
|
37792
|
-
});
|
|
37793
|
-
}
|
|
37794
|
-
}();
|
|
37795
|
-
|
|
37796
|
-
if (_temp24 && _temp24.then) return _temp24.then(function () {});
|
|
37797
|
-
});
|
|
37798
|
-
}, function (err) {
|
|
37799
|
-
var _err$response6, _err$response6$data;
|
|
37800
|
-
|
|
37801
|
-
dispatch(setAlert({
|
|
37802
|
-
type: "danger",
|
|
37803
|
-
message: ((_err$response6 = err.response) === null || _err$response6 === void 0 ? void 0 : (_err$response6$data = _err$response6.data) === null || _err$response6$data === void 0 ? void 0 : _err$response6$data.title) || err.message || "Login failed"
|
|
37804
|
-
}));
|
|
37805
|
-
});
|
|
37806
|
-
|
|
37807
|
-
return Promise.resolve(_temp28 && _temp28.then ? _temp28.then(_temp27) : _temp27(_temp28));
|
|
37808
|
-
} catch (e) {
|
|
37809
|
-
return Promise.reject(e);
|
|
37810
|
-
}
|
|
37811
|
-
};
|
|
37812
|
-
|
|
37813
|
-
var getInformationSetting = function getInformationSetting() {
|
|
37814
|
-
try {
|
|
37815
|
-
var _temp30 = _catch(function () {
|
|
37816
|
-
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
37817
|
-
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
37818
|
-
setSchool(res.data);
|
|
37819
|
-
});
|
|
37820
|
-
}, function (err) {
|
|
37821
|
-
console.error(err);
|
|
37822
|
-
});
|
|
37823
|
-
|
|
37824
|
-
return Promise.resolve(_temp30 && _temp30.then ? _temp30.then(function () {}) : void 0);
|
|
37825
|
-
} catch (e) {
|
|
37826
|
-
return Promise.reject(e);
|
|
37827
|
-
}
|
|
37828
|
-
};
|
|
37829
|
-
|
|
37830
|
-
var fnLoginSSO = function fnLoginSSO(clickHandler) {
|
|
37831
|
-
try {
|
|
37832
|
-
msalInstance.handleRedirectPromise().then(function (tokenResponse) {
|
|
37833
|
-
try {
|
|
37834
|
-
var _temp33 = function () {
|
|
37835
|
-
if (!tokenResponse) {
|
|
37836
|
-
var accounts = msalInstance.getAllAccounts();
|
|
37837
|
-
|
|
37838
|
-
var _temp34 = function () {
|
|
37839
|
-
if (accounts.length === 0) {
|
|
37840
|
-
msalInstance.loginRedirect();
|
|
37841
|
-
} else {
|
|
37842
|
-
var currentAccount = accounts[0];
|
|
37843
|
-
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
37844
|
-
}
|
|
37845
|
-
}();
|
|
37846
|
-
|
|
37847
|
-
if (_temp34 && _temp34.then) return _temp34.then(function () {});
|
|
37848
|
-
} else {
|
|
37849
|
-
var currentAccount = tokenResponse.account;
|
|
37850
|
-
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
37851
|
-
}
|
|
37852
|
-
}();
|
|
37853
|
-
|
|
37854
|
-
return Promise.resolve(_temp33 && _temp33.then ? _temp33.then(function () {}) : void 0);
|
|
37855
|
-
} catch (e) {
|
|
37856
|
-
return Promise.reject(e);
|
|
37857
|
-
}
|
|
37858
|
-
})["catch"](function (err) {
|
|
37859
|
-
console.error(err);
|
|
37860
|
-
});
|
|
37861
|
-
return Promise.resolve();
|
|
37862
|
-
} catch (e) {
|
|
37863
|
-
return Promise.reject(e);
|
|
37864
|
-
}
|
|
37865
|
-
};
|
|
37866
|
-
|
|
37867
|
-
var getCurrentAccount = function getCurrentAccount(account, clickHandler) {
|
|
37868
|
-
try {
|
|
37869
|
-
var fullName = account.name;
|
|
37870
|
-
var infoLogin = {
|
|
37871
|
-
firstName: fullName.split(' ').slice(0, -1).join(' '),
|
|
37872
|
-
lastName: fullName.split(' ').slice(-1).join(' '),
|
|
37873
|
-
fullName: fullName,
|
|
37874
|
-
imageUrl: "",
|
|
37875
|
-
email: account.username,
|
|
37876
|
-
accessToken: account.idTokenClaims.aio,
|
|
37877
|
-
googleId: account.tenantId
|
|
37878
|
-
};
|
|
37879
|
-
dispatch(setInforUserGoogle(infoLogin));
|
|
37880
|
-
return Promise.resolve(fnIsCheckLogin(TypeLogin.MicrosoftSSO, infoLogin, account.idTokenClaims.aio, clickHandler)).then(function () {});
|
|
37881
|
-
} catch (e) {
|
|
37882
|
-
return Promise.reject(e);
|
|
37883
|
-
}
|
|
37884
|
-
};
|
|
37885
|
-
|
|
37886
|
-
var initInformationSSO = function initInformationSSO() {
|
|
37887
|
-
try {
|
|
37888
|
-
var _msalInstance = new PublicClientApplication(msalConfig);
|
|
37889
|
-
|
|
37890
|
-
setMsalInstance(_msalInstance);
|
|
37891
|
-
return Promise.resolve();
|
|
37892
|
-
} catch (e) {
|
|
37893
|
-
return Promise.reject(e);
|
|
37894
|
-
}
|
|
37895
|
-
};
|
|
37896
|
-
|
|
37897
|
-
useEffect(function () {
|
|
37898
|
-
var redirectUrl = window.location.href;
|
|
37899
|
-
|
|
37900
|
-
if (!!msalInstance && redirectUrl.includes("code") && redirectUrl.includes("client_info")) {
|
|
37901
|
-
fnLoginSSO();
|
|
37902
|
-
}
|
|
37903
|
-
}, [JSON.stringify(msalInstance)]);
|
|
37904
|
-
useEffect(function () {
|
|
37905
|
-
getInformationSetting();
|
|
37906
|
-
initInformationSSO();
|
|
37907
|
-
getSchoolInfo();
|
|
37908
|
-
}, []);
|
|
37909
|
-
return {
|
|
37910
|
-
defaultInfo: defaultInfo,
|
|
37911
|
-
userLogin: userLogin,
|
|
37912
|
-
openLogin: openLogin,
|
|
37913
|
-
toggle: toggle,
|
|
37914
|
-
isShowPassword: isShowPassword,
|
|
37915
|
-
setIsShowPassword: setIsShowPassword,
|
|
37916
|
-
fnIsCheckLogin: fnIsCheckLogin,
|
|
37917
|
-
isLoginGoogle: isLoginGoogle,
|
|
37918
|
-
infoUser: infoUser,
|
|
37919
|
-
submitLogin: submitLogin,
|
|
37920
|
-
googleClientId: googleClientId,
|
|
37921
|
-
googleRecaptchaId: googleRecaptchaId,
|
|
37922
|
-
handleCancelModelAssign: handleCancelModelAssign,
|
|
37923
|
-
openModelAssign: openModelAssign,
|
|
37924
|
-
fnLoginSSO: fnLoginSSO,
|
|
37925
|
-
school: school
|
|
37926
|
-
};
|
|
37927
|
-
};
|
|
37928
|
-
|
|
37929
|
-
var CustomSelector = function CustomSelector(_ref) {
|
|
37930
|
-
var defaultValue = _ref.defaultValue,
|
|
37931
|
-
options = _ref.options,
|
|
37932
|
-
isDisabled = _ref.isDisabled,
|
|
37933
|
-
scrollBottom = _ref.scrollBottom,
|
|
37934
|
-
rest = _objectWithoutPropertiesLoose(_ref, ["defaultValue", "options", "isDisabled", "scrollBottom"]);
|
|
37935
|
-
|
|
37936
|
-
var initValue = defaultValue !== null && typeof defaultValue !== "undefined" ? options.find(function (option) {
|
|
37937
|
-
return option.value === defaultValue;
|
|
37938
|
-
}) || null : null;
|
|
37939
|
-
return React.createElement(Select, Object.assign({
|
|
37940
|
-
isDisabled: isDisabled,
|
|
37941
|
-
options: options,
|
|
37942
|
-
value: initValue,
|
|
37943
|
-
menuPlacement: scrollBottom ? "top" : "auto"
|
|
37944
|
-
}, rest));
|
|
37945
|
-
};
|
|
37946
|
-
|
|
37947
|
-
var BlockSelectTeacher = function BlockSelectTeacher(_ref) {
|
|
37948
|
-
var defaultValue = _ref.defaultValue,
|
|
37949
|
-
isDisabled = _ref.isDisabled,
|
|
37950
|
-
openModal = _ref.openModal,
|
|
37951
|
-
onSubmit = _ref.onSubmit,
|
|
37952
|
-
token = _ref.token,
|
|
37953
|
-
email = _ref.email;
|
|
37954
|
-
|
|
37955
|
-
var _useState = useState(false),
|
|
37956
|
-
modal = _useState[0],
|
|
37957
|
-
setModal = _useState[1];
|
|
37958
|
-
|
|
37959
|
-
useEffect(function () {
|
|
37960
|
-
setModal(openModal);
|
|
37961
|
-
}, [openModal]);
|
|
37962
|
-
var dispatch = useDispatch();
|
|
37963
|
-
|
|
37964
|
-
var _useState2 = useState([]),
|
|
37965
|
-
teachers = _useState2[0],
|
|
37966
|
-
setTeachers = _useState2[1];
|
|
37967
|
-
|
|
37968
|
-
var _useState3 = useState(""),
|
|
37969
|
-
searchString = _useState3[0],
|
|
37970
|
-
setSearchString = _useState3[1];
|
|
37971
|
-
|
|
37972
|
-
var _useState4 = useState(""),
|
|
37973
|
-
teacherEmail = _useState4[0],
|
|
37974
|
-
setTeacherEmail = _useState4[1];
|
|
37975
|
-
|
|
37976
|
-
var _useState5 = useState(false),
|
|
37977
|
-
isLoading = _useState5[0],
|
|
37978
|
-
setLoading = _useState5[1];
|
|
37979
|
-
|
|
37980
|
-
var timeout = useRef();
|
|
37981
|
-
|
|
37982
|
-
var toggle = function toggle() {
|
|
37983
|
-
setModal(!modal);
|
|
37984
|
-
dispatch(setIsLoginGoogle(!modal));
|
|
37985
|
-
};
|
|
37986
|
-
|
|
37987
|
-
var loadData = useCallback(function () {
|
|
37988
|
-
try {
|
|
37989
|
-
var _temp3 = function _temp3() {
|
|
37990
|
-
setLoading(false);
|
|
37991
|
-
};
|
|
37992
|
-
|
|
37993
|
-
setLoading(true);
|
|
37994
|
-
|
|
37995
|
-
var _temp4 = _catch(function () {
|
|
37996
|
-
var data = {
|
|
37997
|
-
token: token,
|
|
37998
|
-
email: email
|
|
37999
|
-
};
|
|
38000
|
-
return Promise.resolve(getAllLoginTeacher(data)).then(function (res) {
|
|
38001
|
-
setTeachers(res.data);
|
|
38002
|
-
});
|
|
38003
|
-
}, function (err) {
|
|
38004
|
-
var _err$response, _err$response$data;
|
|
38005
|
-
|
|
38006
|
-
dispatch(setAlert({
|
|
38007
|
-
type: "danger",
|
|
38008
|
-
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
|
|
38009
|
-
}));
|
|
38010
|
-
});
|
|
38011
|
-
|
|
38012
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
38013
|
-
} catch (e) {
|
|
38014
|
-
return Promise.reject(e);
|
|
38015
|
-
}
|
|
38016
|
-
}, [searchString]);
|
|
38017
|
-
useEffect(function () {
|
|
38018
|
-
timeout && timeout.current && clearTimeout(timeout.current);
|
|
38019
|
-
|
|
38020
|
-
if (!searchString || searchString.trim().length < 2) {
|
|
38021
|
-
setTeachers([]);
|
|
38022
|
-
} else {
|
|
38023
|
-
timeout.current = setTimeout(loadData, 300);
|
|
38024
|
-
}
|
|
38025
|
-
}, [searchString]);
|
|
38026
|
-
var options = teachers.map(function (teacher) {
|
|
38027
|
-
return {
|
|
38028
|
-
label: teacher.fullName + " (" + teacher.email + ")",
|
|
38029
|
-
value: teacher.teacherId
|
|
38030
|
-
};
|
|
38031
|
-
});
|
|
38032
|
-
|
|
38033
|
-
var onChangeTeacher = function onChangeTeacher(e) {
|
|
38034
|
-
setTeacherEmail(e.value);
|
|
38035
|
-
};
|
|
38036
|
-
|
|
38037
|
-
var customSelector = {
|
|
38038
|
-
control: function control(styles) {
|
|
38039
|
-
return _extends({}, styles, {
|
|
38040
|
-
borderRadius: "10px"
|
|
38041
|
-
});
|
|
38042
|
-
}
|
|
38043
|
-
};
|
|
38044
|
-
return React.createElement(Modal, {
|
|
38045
|
-
isOpen: modal
|
|
38046
|
-
}, React.createElement(ModalHeader, null, " Sign in "), React.createElement(ModalBody, null, React.createElement("h6", null, "You are logging in as a student, please select teacher"), React.createElement(CustomSelector, {
|
|
38047
|
-
styles: customSelector,
|
|
38048
|
-
options: options,
|
|
38049
|
-
inputValue: searchString,
|
|
38050
|
-
onInputChange: function onInputChange(inputValue) {
|
|
38051
|
-
return setSearchString(inputValue);
|
|
38052
|
-
},
|
|
38053
|
-
isLoading: isLoading,
|
|
38054
|
-
placeholder: "Type 2 characters to search",
|
|
38055
|
-
value: defaultValue,
|
|
38056
|
-
onChange: onChangeTeacher,
|
|
38057
|
-
isDisabled: isDisabled
|
|
38058
|
-
})), React.createElement(ModalFooter, null, React.createElement(Button, {
|
|
38059
|
-
color: "primary",
|
|
38060
|
-
onClick: function onClick() {
|
|
38061
|
-
onSubmit(teacherEmail);
|
|
38062
|
-
toggle();
|
|
38063
|
-
}
|
|
38064
|
-
}, "Finish"), ' ', React.createElement(Button, {
|
|
38065
|
-
color: "secondary",
|
|
38066
|
-
onClick: toggle
|
|
38067
|
-
}, "Cancel")));
|
|
38068
|
-
};
|
|
38069
|
-
|
|
38070
|
-
var BlockSelectTeacher$1 = forwardRef(BlockSelectTeacher);
|
|
38071
|
-
|
|
38072
|
-
var getStaticFileUrl = function getStaticFileUrl(url) {
|
|
38073
|
-
var STAGE_DOMAIN = "https://stage2.marioforme.com";
|
|
38074
|
-
var isStage = STAGE_DOMAIN === location.origin;
|
|
38075
|
-
if (!url) return "";
|
|
38076
|
-
if (isLocalhost && !isStage || url.startsWith("http")) return url;
|
|
38077
|
-
if (url.startsWith("/")) return "" + (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + url;else return (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + "/" + url;
|
|
38078
|
-
};
|
|
38079
|
-
|
|
38080
|
-
var getFileUrl = function getFileUrl(fileName) {
|
|
38081
|
-
if (!fileName || !fileName.trim()) return "";
|
|
38082
|
-
return BASE_URL + "/api/file/viewer?key=" + fileName;
|
|
38083
|
-
};
|
|
38084
|
-
|
|
38085
|
-
var schema = object({
|
|
38086
|
-
email: string().email("Email is invalid").required("Email is required"),
|
|
38087
|
-
password: string().required("Password is required"),
|
|
38088
|
-
rememberMe: boolean()
|
|
38089
|
-
});
|
|
38090
|
-
|
|
38091
|
-
var BlockLogin = function BlockLogin(_ref) {
|
|
38092
|
-
var defaultInfo = _ref.defaultInfo,
|
|
38093
|
-
userLogin = _ref.userLogin,
|
|
38094
|
-
school = _ref.school;
|
|
38095
|
-
|
|
38096
|
-
var _useLogin = useLogin(),
|
|
38097
|
-
isShowPassword = _useLogin.isShowPassword,
|
|
38098
|
-
setIsShowPassword = _useLogin.setIsShowPassword,
|
|
38099
|
-
fnIsCheckLogin = _useLogin.fnIsCheckLogin,
|
|
38100
|
-
isLoginGoogle = _useLogin.isLoginGoogle,
|
|
38101
|
-
submitLogin = _useLogin.submitLogin,
|
|
38102
|
-
infoUser = _useLogin.infoUser,
|
|
38103
|
-
googleClientId = _useLogin.googleClientId;
|
|
38104
|
-
|
|
38105
|
-
var togglePasswordVisible = function togglePasswordVisible() {
|
|
38106
|
-
return setIsShowPassword(!isShowPassword);
|
|
38107
|
-
};
|
|
38108
|
-
|
|
38109
|
-
var dispatch = useDispatch();
|
|
38110
|
-
|
|
38111
|
-
var _useGoogleReCaptcha = useGoogleReCaptcha(),
|
|
38112
|
-
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
38113
|
-
|
|
38114
|
-
var clickHandler = useCallback(function () {
|
|
38115
|
-
try {
|
|
38116
|
-
if (!executeRecaptcha) {
|
|
38117
|
-
console.log("execute recaptcha undefined");
|
|
38118
|
-
return Promise.resolve();
|
|
38119
|
-
}
|
|
38120
|
-
|
|
38121
|
-
return Promise.resolve(executeRecaptcha("login"));
|
|
38122
|
-
} catch (e) {
|
|
38123
|
-
return Promise.reject(e);
|
|
38124
|
-
}
|
|
38125
|
-
}, [executeRecaptcha]);
|
|
38126
|
-
var handleVerify = useCallback(function () {}, []);
|
|
38127
|
-
|
|
38128
|
-
var onSuccessGoogle = function onSuccessGoogle(res) {
|
|
38129
|
-
if (!!(res !== null && res !== void 0 && res.accessToken)) {
|
|
38130
|
-
var _res$profileObj = res.profileObj,
|
|
38131
|
-
email = _res$profileObj.email,
|
|
38132
|
-
familyName = _res$profileObj.familyName,
|
|
38133
|
-
givenName = _res$profileObj.givenName,
|
|
38134
|
-
imageUrl = _res$profileObj.imageUrl,
|
|
38135
|
-
name = _res$profileObj.name;
|
|
38136
|
-
var accessToken = res.accessToken;
|
|
38137
|
-
var googleId = res.googleId;
|
|
38138
|
-
|
|
38139
|
-
if (email.includes("@gmail")) {
|
|
38140
|
-
alert("The email address you used does not match the login information in the database. Please check that you are using your school assigned email address to log into MARIO for Me. If you have further trouble please notify your school site administrator");
|
|
38141
|
-
return;
|
|
38142
|
-
}
|
|
38143
|
-
|
|
38144
|
-
var infoLogin = {
|
|
38145
|
-
firstName: givenName,
|
|
38146
|
-
lastName: familyName,
|
|
38147
|
-
imageUrl: imageUrl,
|
|
38148
|
-
fullName: name,
|
|
38149
|
-
email: email,
|
|
38150
|
-
accessToken: accessToken,
|
|
38151
|
-
googleId: googleId
|
|
38152
|
-
};
|
|
38153
|
-
dispatch(setInforUserGoogle(infoLogin));
|
|
38154
|
-
fnIsCheckLogin(TypeLogin.Google, infoLogin, accessToken, clickHandler);
|
|
38155
|
-
}
|
|
38156
|
-
};
|
|
38157
|
-
|
|
38158
|
-
return React.createElement(React.Fragment, null, React.createElement(Formik, {
|
|
38159
|
-
initialValues: defaultInfo,
|
|
38160
|
-
validationSchema: schema,
|
|
38161
|
-
onSubmit: function (values) {
|
|
38162
|
-
try {
|
|
38163
|
-
return Promise.resolve(_catch(function () {
|
|
38164
|
-
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
38165
|
-
if (!clickHandlerRes) return;
|
|
38166
|
-
values.captcha = clickHandlerRes;
|
|
38167
|
-
values.loginType = LoginType.Default;
|
|
38168
|
-
userLogin(values);
|
|
38169
|
-
});
|
|
38170
|
-
}, function (err) {
|
|
38171
|
-
console.error(err);
|
|
38172
|
-
}));
|
|
38173
|
-
} catch (e) {
|
|
38174
|
-
return Promise.reject(e);
|
|
38175
|
-
}
|
|
38176
|
-
}
|
|
38177
|
-
}, function (formikProps) {
|
|
38178
|
-
var handleChange = formikProps.handleChange,
|
|
38179
|
-
handleBlur = formikProps.handleBlur,
|
|
38180
|
-
handleSubmit = formikProps.handleSubmit,
|
|
38181
|
-
values = formikProps.values,
|
|
38182
|
-
touched = formikProps.touched,
|
|
38183
|
-
errors = formikProps.errors,
|
|
38184
|
-
setFieldValue = formikProps.setFieldValue;
|
|
38185
|
-
var emailError = touched.email && errors.email;
|
|
38186
|
-
var passwordError = touched.password && errors.password;
|
|
38187
|
-
return React.createElement("div", {
|
|
38188
|
-
className: styles["box-login"] + " w-100"
|
|
38189
|
-
}, React.createElement(Form, {
|
|
38190
|
-
className: "" + styles["block-login"],
|
|
38191
|
-
onSubmit: handleSubmit
|
|
38192
|
-
}, React.createElement("div", {
|
|
38193
|
-
className: "" + styles["block-form"]
|
|
38194
|
-
}, React.createElement("div", {
|
|
38195
|
-
className: "d-flex align-items-center mb-4"
|
|
38196
|
-
}, React.createElement("img", {
|
|
38197
|
-
src: "" + (school !== null && school !== void 0 && school.schoolLogo ? getFileUrl("" + (school === null || school === void 0 ? void 0 : school.schoolLogo)) : getStaticFileUrl("/images/logoR.png")),
|
|
38198
|
-
className: styles["school-icon"] + " mr-3"
|
|
38199
|
-
}), React.createElement("p", {
|
|
38200
|
-
className: styles["school-name"] + " mb-0"
|
|
38201
|
-
}, school.schoolName)), React.createElement("p", {
|
|
38202
|
-
className: "" + styles["title-login"]
|
|
38203
|
-
}, "Welcome Back!"), React.createElement("p", {
|
|
38204
|
-
className: styles["login-description"] + " mb-5"
|
|
38205
|
-
}, "Please enter your MARIO Education account details"), React.createElement(FormGroup, {
|
|
38206
|
-
className: "" + styles["form-user-name"]
|
|
38207
|
-
}, React.createElement(Input, {
|
|
38208
|
-
type: "text",
|
|
38209
|
-
name: "email",
|
|
38210
|
-
placeholder: "Email",
|
|
38211
|
-
value: values.email,
|
|
38212
|
-
onChange: handleChange,
|
|
38213
|
-
autocomplete: "email",
|
|
38214
|
-
onBlur: handleBlur("email"),
|
|
38215
|
-
required: true
|
|
38216
|
-
}), emailError && React.createElement(ErrorHandler, {
|
|
38217
|
-
text: errors.email
|
|
38218
|
-
})), React.createElement(FormGroup, null, React.createElement(PasswordInput, {
|
|
38219
|
-
isShowPassword: isShowPassword,
|
|
38220
|
-
togglePasswordVisible: togglePasswordVisible,
|
|
38221
|
-
onChange: function onChange(e) {
|
|
38222
|
-
return setFieldValue("password", e.target.value);
|
|
38223
|
-
}
|
|
38224
|
-
}), passwordError && React.createElement(ErrorHandler, {
|
|
38225
|
-
text: errors.password
|
|
38226
|
-
})), React.createElement(FormGroup, null, React.createElement(GoogleReCaptcha, {
|
|
38227
|
-
action: "login",
|
|
38228
|
-
onVerify: handleVerify
|
|
38229
|
-
})), React.createElement("div", {
|
|
38230
|
-
className: "d-flex justify-content-between"
|
|
38231
|
-
}, React.createElement("div", {
|
|
38232
|
-
className: "d-flex align-items-center"
|
|
38233
|
-
}, React.createElement("input", {
|
|
38234
|
-
type: "checkbox",
|
|
38235
|
-
checked: !values.isSessionUserBrowser,
|
|
38236
|
-
className: "" + styles["checkbox-keep-login"],
|
|
38237
|
-
onChange: function onChange() {
|
|
38238
|
-
return setFieldValue("isSessionUserBrowser", !values.isSessionUserBrowser);
|
|
38239
|
-
}
|
|
38240
|
-
}), React.createElement("p", {
|
|
38241
|
-
className: styles["label-keep-login"] + " mb-0 ml-2"
|
|
38242
|
-
}, "Keep me logged in")), React.createElement(Link, {
|
|
38243
|
-
to: "/forgot-password",
|
|
38244
|
-
className: "" + styles["link-to-login"]
|
|
38245
|
-
}, "Forgot password?")), React.createElement("button", {
|
|
38246
|
-
className: styles["btn-login"] + " mt-5",
|
|
38247
|
-
type: "submit"
|
|
38248
|
-
}, "LOG IN"), React.createElement("p", {
|
|
38249
|
-
className: styles["option-text"] + " my-3 text-center"
|
|
38250
|
-
}, "OR"), React.createElement(Row, {
|
|
38251
|
-
className: "mb-4"
|
|
38252
|
-
}, React.createElement(Col, {
|
|
38253
|
-
lg: 12,
|
|
38254
|
-
md: 12,
|
|
38255
|
-
xs: 12,
|
|
38256
|
-
className: "pr-md-2"
|
|
38257
|
-
}, !!googleClientId && React.createElement(GoogleLogin, {
|
|
38258
|
-
clientId: googleClientId,
|
|
38259
|
-
buttonText: "GOOGLE",
|
|
38260
|
-
onSuccess: onSuccessGoogle,
|
|
38261
|
-
cookiePolicy: "single_host_origin",
|
|
38262
|
-
className: styles["btn-login-google"] + " p-0 mb-4 mb-md-0"
|
|
38263
|
-
}))), React.createElement("div", {
|
|
38264
|
-
className: "w-100 d-flex align-items-center justify-content-center mt-3"
|
|
38265
|
-
}, React.createElement("a", {
|
|
38266
|
-
href: "https://launchpad.classlink.com/login"
|
|
38267
|
-
}, React.createElement("img", {
|
|
38268
|
-
className: styles["class-link-sso-image"],
|
|
38269
|
-
src: getStaticFileUrl("images/classlink-sso.png"),
|
|
38270
|
-
alt: ""
|
|
38271
|
-
}))))));
|
|
38272
|
-
}), isLoginGoogle && React.createElement(BlockSelectTeacher$1, {
|
|
38273
|
-
onSubmit: function onSubmit(e) {
|
|
38274
|
-
return submitLogin(e, clickHandler);
|
|
38275
|
-
},
|
|
38276
|
-
openModal: isLoginGoogle,
|
|
38277
|
-
token: infoUser.accessToken,
|
|
38278
|
-
email: infoUser.email
|
|
38279
|
-
}));
|
|
38280
|
-
};
|
|
38281
|
-
|
|
38282
|
-
var defaultInfo$1 = {
|
|
38283
|
-
email: "",
|
|
38284
|
-
captcha: ""
|
|
38285
|
-
};
|
|
38286
|
-
var DASHBOARD = "/";
|
|
38287
|
-
var LOGIN = "/login";
|
|
38288
|
-
var TITLE$1 = "Log in";
|
|
38289
|
-
|
|
38290
|
-
var useForgotPassword = function useForgotPassword() {
|
|
38291
|
-
var _query$get;
|
|
38292
|
-
|
|
38293
|
-
var query = new URLSearchParams(useLocation().search);
|
|
38294
|
-
var token = query.get("token");
|
|
38295
|
-
var key = (_query$get = query.get("key")) != null ? _query$get : "";
|
|
38296
|
-
var dispatch = useDispatch();
|
|
38297
|
-
var history = useHistory();
|
|
38298
|
-
|
|
38299
|
-
var _useState = useState(false),
|
|
38300
|
-
openLogin = _useState[0],
|
|
38301
|
-
setOpenLogin = _useState[1];
|
|
38302
|
-
|
|
38303
|
-
var toggle = useCallback(function () {
|
|
38304
|
-
setOpenLogin(!openLogin);
|
|
38305
|
-
}, [openLogin]);
|
|
38306
|
-
|
|
38307
|
-
var _useState2 = useState(false),
|
|
38308
|
-
isShowNewPassword = _useState2[0],
|
|
38309
|
-
setIsShowNewPassword = _useState2[1];
|
|
38310
|
-
|
|
38311
|
-
var _useState3 = useState(false),
|
|
38312
|
-
isShowReTypePassword = _useState3[0],
|
|
38313
|
-
setIsShowReTypePassword = _useState3[1];
|
|
38314
|
-
|
|
38315
|
-
var _useState4 = useState({
|
|
38316
|
-
token: "",
|
|
38317
|
-
password: "",
|
|
38318
|
-
reEnterPassword: "",
|
|
38319
|
-
email: "",
|
|
38320
|
-
userId: ""
|
|
38321
|
-
}),
|
|
38322
|
-
initialValues = _useState4[0],
|
|
38323
|
-
setInitialValues = _useState4[1];
|
|
38324
|
-
|
|
38325
|
-
var _useState5 = useState(true),
|
|
38326
|
-
validLink = _useState5[0],
|
|
38327
|
-
setValidLink = _useState5[1];
|
|
38328
|
-
|
|
38329
|
-
var _useGoogleReCaptcha = useGoogleReCaptcha(),
|
|
38330
|
-
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
38331
|
-
|
|
38332
|
-
useEffect(function () {
|
|
38333
|
-
document.title = TITLE$1;
|
|
38334
|
-
var token = getAccessToken();
|
|
38335
|
-
if (!!token) history.push(DASHBOARD);
|
|
38336
|
-
}, []);
|
|
38337
|
-
var forgotPasswordRequest = useCallback(function (data) {
|
|
38338
|
-
try {
|
|
38339
|
-
var _temp3 = function _temp3() {
|
|
38340
|
-
dispatch(setLoading(false));
|
|
38341
|
-
};
|
|
38354
|
+
domain: hostName,
|
|
38355
|
+
roles: data === null || data === void 0 ? void 0 : (_data$roles = data.roles) === null || _data$roles === void 0 ? void 0 : _data$roles.toString()
|
|
38356
|
+
});
|
|
38357
|
+
localStorage.setItem("USER_EMAIL", data.email);
|
|
38342
38358
|
|
|
38343
|
-
|
|
38359
|
+
if (isLoginFirst) {
|
|
38360
|
+
var _data$roles2;
|
|
38344
38361
|
|
|
38345
|
-
|
|
38346
|
-
|
|
38347
|
-
|
|
38348
|
-
|
|
38349
|
-
|
|
38350
|
-
|
|
38351
|
-
}
|
|
38362
|
+
amplitude.getInstance().logEvent("general: first login", {
|
|
38363
|
+
user_id: data.email,
|
|
38364
|
+
domain: hostName,
|
|
38365
|
+
roles: data === null || data === void 0 ? void 0 : (_data$roles2 = data.roles) === null || _data$roles2 === void 0 ? void 0 : _data$roles2.toString()
|
|
38366
|
+
});
|
|
38367
|
+
}
|
|
38368
|
+
}
|
|
38369
|
+
|
|
38370
|
+
if (isDistrict) {
|
|
38371
|
+
history.push(HOMEPAGE_DISTRICT);
|
|
38372
|
+
} else if (roles.includes("Admin")) {
|
|
38373
|
+
history.push(HOMEPAGE_ADMIN);
|
|
38374
|
+
} else if (roles.includes("Teacher") || roles.includes("Assistant") || roles.includes("Counselor") || roles.includes("SecondaryTeacher")) {
|
|
38375
|
+
history.push(HOMEPAGE_TEACHER);
|
|
38376
|
+
} else if (roles.includes("Student")) {
|
|
38377
|
+
history.push(HOMEPAGE_STUDENT);
|
|
38378
|
+
} else if (roles.includes("Parent")) {
|
|
38379
|
+
history.push(HOMEPAGE_PARENT);
|
|
38380
|
+
} else if (roles.includes("EduTeacher")) {
|
|
38381
|
+
history.push(HOMEPAGE_EDU_TEACHER);
|
|
38382
|
+
}
|
|
38352
38383
|
});
|
|
38353
38384
|
}, function (err) {
|
|
38354
|
-
var _err$
|
|
38385
|
+
var _err$response3, _err$response3$data;
|
|
38355
38386
|
|
|
38356
38387
|
dispatch(setAlert({
|
|
38357
38388
|
type: "danger",
|
|
38358
|
-
message: ((_err$
|
|
38389
|
+
message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : _err$response3$data.title) || err.message || "Login failed"
|
|
38359
38390
|
}));
|
|
38360
38391
|
localStorage.removeItem(ACCESS_TOKEN);
|
|
38361
38392
|
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
38362
38393
|
});
|
|
38363
38394
|
|
|
38364
|
-
return Promise.resolve(
|
|
38395
|
+
return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
|
|
38365
38396
|
} catch (e) {
|
|
38366
38397
|
return Promise.reject(e);
|
|
38367
38398
|
}
|
|
38368
38399
|
}, []);
|
|
38369
|
-
|
|
38400
|
+
|
|
38401
|
+
var getInfoGoogle = function getInfoGoogle() {
|
|
38370
38402
|
try {
|
|
38371
|
-
var
|
|
38403
|
+
var _temp14 = _catch(function () {
|
|
38404
|
+
return Promise.resolve(getGoogleClientId()).then(function (res) {
|
|
38405
|
+
setGoogleClientId(res.data.googleClientId);
|
|
38406
|
+
setGoogleRecaptchaId(res.data.googleCaptchaId);
|
|
38407
|
+
});
|
|
38408
|
+
}, function (err) {
|
|
38409
|
+
var _err$response4, _err$response4$data;
|
|
38410
|
+
|
|
38411
|
+
dispatch(setAlert({
|
|
38412
|
+
type: "danger",
|
|
38413
|
+
message: ((_err$response4 = err.response) === null || _err$response4 === void 0 ? void 0 : (_err$response4$data = _err$response4.data) === null || _err$response4$data === void 0 ? void 0 : _err$response4$data.title) || err.message || "Login failed"
|
|
38414
|
+
}));
|
|
38415
|
+
});
|
|
38416
|
+
|
|
38417
|
+
return Promise.resolve(_temp14 && _temp14.then ? _temp14.then(function () {}) : void 0);
|
|
38418
|
+
} catch (e) {
|
|
38419
|
+
return Promise.reject(e);
|
|
38420
|
+
}
|
|
38421
|
+
};
|
|
38422
|
+
|
|
38423
|
+
var fnIsCheckLogin = useCallback(function (type, data, token, clickHandler) {
|
|
38424
|
+
try {
|
|
38425
|
+
var _temp20 = function _temp20() {
|
|
38372
38426
|
dispatch(setLoading(false));
|
|
38373
38427
|
};
|
|
38374
38428
|
|
|
38375
38429
|
dispatch(setLoading(true));
|
|
38376
38430
|
|
|
38377
|
-
var
|
|
38378
|
-
return Promise.resolve(
|
|
38379
|
-
|
|
38380
|
-
|
|
38381
|
-
|
|
38382
|
-
|
|
38383
|
-
|
|
38384
|
-
|
|
38385
|
-
|
|
38386
|
-
|
|
38431
|
+
var _temp21 = _catch(function () {
|
|
38432
|
+
return Promise.resolve(checkUserGoogle(type, data)).then(function (res) {
|
|
38433
|
+
var checkUser = res.data;
|
|
38434
|
+
|
|
38435
|
+
var _temp17 = function () {
|
|
38436
|
+
if (checkUser) {
|
|
38437
|
+
var _temp22 = function _temp22() {
|
|
38438
|
+
return Promise.resolve(userLogin(_dataUser)).then(function () {
|
|
38439
|
+
dispatch(setIsLoginGoogle(false));
|
|
38440
|
+
});
|
|
38441
|
+
};
|
|
38442
|
+
|
|
38443
|
+
var _dataUser = {
|
|
38444
|
+
email: data.email,
|
|
38445
|
+
isLoginGoogle: true,
|
|
38446
|
+
rememberMe: false,
|
|
38447
|
+
password: "default",
|
|
38448
|
+
accessToken: token,
|
|
38449
|
+
captcha: "",
|
|
38450
|
+
loginType: LoginType.Google
|
|
38451
|
+
};
|
|
38452
|
+
|
|
38453
|
+
var _temp23 = function () {
|
|
38454
|
+
if (clickHandler != null) {
|
|
38455
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
38456
|
+
_dataUser.captcha = clickHandlerRes;
|
|
38457
|
+
});
|
|
38458
|
+
}
|
|
38459
|
+
}();
|
|
38460
|
+
|
|
38461
|
+
return _temp23 && _temp23.then ? _temp23.then(_temp22) : _temp22(_temp23);
|
|
38462
|
+
} else {
|
|
38463
|
+
dispatch(setIsLoginGoogle(true));
|
|
38464
|
+
}
|
|
38465
|
+
}();
|
|
38466
|
+
|
|
38467
|
+
if (_temp17 && _temp17.then) return _temp17.then(function () {});
|
|
38387
38468
|
});
|
|
38388
|
-
}, function () {
|
|
38389
|
-
|
|
38469
|
+
}, function (err) {
|
|
38470
|
+
var _err$response5, _err$response5$data;
|
|
38471
|
+
|
|
38472
|
+
dispatch(setAlert({
|
|
38473
|
+
type: "danger",
|
|
38474
|
+
message: ((_err$response5 = err.response) === null || _err$response5 === void 0 ? void 0 : (_err$response5$data = _err$response5.data) === null || _err$response5$data === void 0 ? void 0 : _err$response5$data.title) || err.message || "Login failed"
|
|
38475
|
+
}));
|
|
38390
38476
|
});
|
|
38391
38477
|
|
|
38392
|
-
return Promise.resolve(
|
|
38478
|
+
return Promise.resolve(_temp21 && _temp21.then ? _temp21.then(_temp20) : _temp20(_temp21));
|
|
38393
38479
|
} catch (e) {
|
|
38394
38480
|
return Promise.reject(e);
|
|
38395
38481
|
}
|
|
38396
38482
|
}, []);
|
|
38397
|
-
|
|
38483
|
+
|
|
38484
|
+
var submitLogin = function submitLogin(teacherId, clickHandler) {
|
|
38398
38485
|
try {
|
|
38399
|
-
var
|
|
38486
|
+
var _temp27 = function _temp27() {
|
|
38487
|
+
dispatch(setIsLoginGoogle(false));
|
|
38400
38488
|
dispatch(setLoading(false));
|
|
38401
38489
|
};
|
|
38402
38490
|
|
|
38403
38491
|
dispatch(setLoading(true));
|
|
38404
38492
|
|
|
38405
|
-
var
|
|
38406
|
-
|
|
38407
|
-
|
|
38408
|
-
|
|
38409
|
-
|
|
38410
|
-
|
|
38411
|
-
|
|
38412
|
-
|
|
38413
|
-
|
|
38493
|
+
var _temp28 = _catch(function () {
|
|
38494
|
+
var data = {
|
|
38495
|
+
firstName: infoUser.firstName,
|
|
38496
|
+
lastName: infoUser.lastName,
|
|
38497
|
+
imageUrl: infoUser.imageUrl,
|
|
38498
|
+
fullName: infoUser.fullName,
|
|
38499
|
+
email: infoUser.email,
|
|
38500
|
+
accessToken: infoUser.accessToken,
|
|
38501
|
+
teacherId: teacherId
|
|
38502
|
+
};
|
|
38503
|
+
return Promise.resolve(registerUserStudent(data)).then(function (res) {
|
|
38504
|
+
var _temp24 = function () {
|
|
38505
|
+
if (res.data) {
|
|
38506
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
38507
|
+
var dataLogin = {
|
|
38508
|
+
email: infoUser.email,
|
|
38509
|
+
captcha: clickHandlerRes,
|
|
38510
|
+
isLoginGoogle: true,
|
|
38511
|
+
rememberMe: false,
|
|
38512
|
+
password: "default",
|
|
38513
|
+
accessToken: infoUser.accessToken,
|
|
38514
|
+
loginType: LoginType.Google
|
|
38515
|
+
};
|
|
38516
|
+
dispatch(setIsLoginGoogle(false));
|
|
38517
|
+
return Promise.resolve(userLogin(dataLogin)).then(function () {
|
|
38518
|
+
history.push(HOMEPAGE_STUDENT);
|
|
38519
|
+
});
|
|
38520
|
+
});
|
|
38521
|
+
}
|
|
38522
|
+
}();
|
|
38523
|
+
|
|
38524
|
+
if (_temp24 && _temp24.then) return _temp24.then(function () {});
|
|
38414
38525
|
});
|
|
38415
38526
|
}, function (err) {
|
|
38416
|
-
var _err$
|
|
38527
|
+
var _err$response6, _err$response6$data;
|
|
38417
38528
|
|
|
38418
38529
|
dispatch(setAlert({
|
|
38419
38530
|
type: "danger",
|
|
38420
|
-
message: ((_err$
|
|
38531
|
+
message: ((_err$response6 = err.response) === null || _err$response6 === void 0 ? void 0 : (_err$response6$data = _err$response6.data) === null || _err$response6$data === void 0 ? void 0 : _err$response6$data.title) || err.message || "Login failed"
|
|
38421
38532
|
}));
|
|
38422
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
38423
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
38424
38533
|
});
|
|
38425
38534
|
|
|
38426
|
-
return Promise.resolve(
|
|
38535
|
+
return Promise.resolve(_temp28 && _temp28.then ? _temp28.then(_temp27) : _temp27(_temp28));
|
|
38427
38536
|
} catch (e) {
|
|
38428
38537
|
return Promise.reject(e);
|
|
38429
38538
|
}
|
|
38430
|
-
}
|
|
38431
|
-
|
|
38539
|
+
};
|
|
38540
|
+
|
|
38541
|
+
var getInformationSetting = function getInformationSetting() {
|
|
38432
38542
|
try {
|
|
38433
|
-
|
|
38434
|
-
|
|
38435
|
-
|
|
38436
|
-
|
|
38543
|
+
var _temp30 = _catch(function () {
|
|
38544
|
+
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
38545
|
+
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
38546
|
+
});
|
|
38547
|
+
}, function (err) {
|
|
38548
|
+
console.error(err);
|
|
38549
|
+
});
|
|
38437
38550
|
|
|
38438
|
-
return Promise.resolve(
|
|
38551
|
+
return Promise.resolve(_temp30 && _temp30.then ? _temp30.then(function () {}) : void 0);
|
|
38439
38552
|
} catch (e) {
|
|
38440
38553
|
return Promise.reject(e);
|
|
38441
38554
|
}
|
|
38442
|
-
}, [executeRecaptcha]);
|
|
38443
|
-
var handleVerify = useCallback(function () {}, []);
|
|
38444
|
-
useEffect(function () {
|
|
38445
|
-
checkResetTokenRequest(token, key);
|
|
38446
|
-
}, []);
|
|
38447
|
-
return {
|
|
38448
|
-
defaultInfo: defaultInfo$1,
|
|
38449
|
-
forgotPasswordRequest: forgotPasswordRequest,
|
|
38450
|
-
checkResetTokenRequest: checkResetTokenRequest,
|
|
38451
|
-
validLink: validLink,
|
|
38452
|
-
resetPasswordRequest: resetPasswordRequest,
|
|
38453
|
-
openLogin: openLogin,
|
|
38454
|
-
toggle: toggle,
|
|
38455
|
-
isShowNewPassword: isShowNewPassword,
|
|
38456
|
-
setIsShowNewPassword: setIsShowNewPassword,
|
|
38457
|
-
isShowReTypePassword: isShowReTypePassword,
|
|
38458
|
-
setIsShowReTypePassword: setIsShowReTypePassword,
|
|
38459
|
-
clickHandler: clickHandler,
|
|
38460
|
-
handleVerify: handleVerify,
|
|
38461
|
-
initialValues: initialValues
|
|
38462
38555
|
};
|
|
38463
|
-
};
|
|
38464
38556
|
|
|
38465
|
-
var
|
|
38466
|
-
|
|
38467
|
-
|
|
38468
|
-
|
|
38469
|
-
var
|
|
38470
|
-
|
|
38471
|
-
|
|
38557
|
+
var fnLoginSSO = function fnLoginSSO(clickHandler) {
|
|
38558
|
+
try {
|
|
38559
|
+
msalInstance.handleRedirectPromise().then(function (tokenResponse) {
|
|
38560
|
+
try {
|
|
38561
|
+
var _temp33 = function () {
|
|
38562
|
+
if (!tokenResponse) {
|
|
38563
|
+
var accounts = msalInstance.getAllAccounts();
|
|
38472
38564
|
|
|
38473
|
-
var
|
|
38474
|
-
|
|
38565
|
+
var _temp34 = function () {
|
|
38566
|
+
if (accounts.length === 0) {
|
|
38567
|
+
msalInstance.loginRedirect();
|
|
38568
|
+
} else {
|
|
38569
|
+
var currentAccount = accounts[0];
|
|
38570
|
+
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
38571
|
+
}
|
|
38572
|
+
}();
|
|
38475
38573
|
|
|
38476
|
-
|
|
38477
|
-
|
|
38478
|
-
|
|
38479
|
-
|
|
38574
|
+
if (_temp34 && _temp34.then) return _temp34.then(function () {});
|
|
38575
|
+
} else {
|
|
38576
|
+
var currentAccount = tokenResponse.account;
|
|
38577
|
+
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
38578
|
+
}
|
|
38579
|
+
}();
|
|
38480
38580
|
|
|
38481
|
-
|
|
38482
|
-
|
|
38483
|
-
|
|
38484
|
-
|
|
38485
|
-
|
|
38486
|
-
|
|
38487
|
-
|
|
38488
|
-
|
|
38489
|
-
|
|
38490
|
-
|
|
38491
|
-
});
|
|
38492
|
-
} catch (e) {
|
|
38493
|
-
return Promise.reject(e);
|
|
38494
|
-
}
|
|
38581
|
+
return Promise.resolve(_temp33 && _temp33.then ? _temp33.then(function () {}) : void 0);
|
|
38582
|
+
} catch (e) {
|
|
38583
|
+
return Promise.reject(e);
|
|
38584
|
+
}
|
|
38585
|
+
})["catch"](function (err) {
|
|
38586
|
+
console.error(err);
|
|
38587
|
+
});
|
|
38588
|
+
return Promise.resolve();
|
|
38589
|
+
} catch (e) {
|
|
38590
|
+
return Promise.reject(e);
|
|
38495
38591
|
}
|
|
38496
|
-
}
|
|
38497
|
-
var handleChange = formikProps.handleChange,
|
|
38498
|
-
handleSubmit = formikProps.handleSubmit,
|
|
38499
|
-
values = formikProps.values,
|
|
38500
|
-
touched = formikProps.touched,
|
|
38501
|
-
errors = formikProps.errors;
|
|
38502
|
-
return React.createElement("div", {
|
|
38503
|
-
className: "" + styles["box-login"]
|
|
38504
|
-
}, React.createElement("div", {
|
|
38505
|
-
className: "" + styles["block-login"]
|
|
38506
|
-
}, React.createElement("div", {
|
|
38507
|
-
className: "" + styles["block-form"]
|
|
38508
|
-
}, React.createElement("div", {
|
|
38509
|
-
className: "d-flex align-items-center mb-4"
|
|
38510
|
-
}, React.createElement("img", {
|
|
38511
|
-
src: "" + getStaticFileUrl("/images/isb-icon.png"),
|
|
38512
|
-
className: styles["school-icon"] + " mr-3"
|
|
38513
|
-
}), React.createElement("p", {
|
|
38514
|
-
className: styles["school-name"] + " mb-0"
|
|
38515
|
-
}, school.schoolName)), React.createElement("p", {
|
|
38516
|
-
className: styles["title-login"] + " "
|
|
38517
|
-
}, "Forgot password"), React.createElement("p", {
|
|
38518
|
-
className: styles["recover-account"] + " mb-5"
|
|
38519
|
-
}, "Enter email to recover your account"), React.createElement("div", {
|
|
38520
|
-
className: "w-100"
|
|
38521
|
-
}, React.createElement(Input, {
|
|
38522
|
-
type: "text",
|
|
38523
|
-
name: "email",
|
|
38524
|
-
id: "email",
|
|
38525
|
-
placeholder: "Input email",
|
|
38526
|
-
onChange: handleChange,
|
|
38527
|
-
value: values.email
|
|
38528
|
-
}), touched.email && errors.email && React.createElement(ErrorHandler, {
|
|
38529
|
-
text: errors.email
|
|
38530
|
-
})), React.createElement(Link, {
|
|
38531
|
-
to: "/login",
|
|
38532
|
-
className: styles["link-to-login"] + " mt-2"
|
|
38533
|
-
}, "Return to login"), React.createElement(GoogleReCaptcha, {
|
|
38534
|
-
action: "forgetPass",
|
|
38535
|
-
onVerify: handleVerify
|
|
38536
|
-
}), React.createElement(Col, {
|
|
38537
|
-
className: "p-0"
|
|
38538
|
-
}, React.createElement("button", {
|
|
38539
|
-
className: styles["btn-login"] + " mt-5",
|
|
38540
|
-
onClick: function onClick() {
|
|
38541
|
-
return handleSubmit();
|
|
38542
|
-
}
|
|
38543
|
-
}, "Continue")))));
|
|
38544
|
-
});
|
|
38545
|
-
};
|
|
38592
|
+
};
|
|
38546
38593
|
|
|
38547
|
-
var
|
|
38548
|
-
|
|
38549
|
-
|
|
38550
|
-
|
|
38551
|
-
|
|
38552
|
-
|
|
38594
|
+
var getCurrentAccount = function getCurrentAccount(account, clickHandler) {
|
|
38595
|
+
try {
|
|
38596
|
+
var fullName = account.name;
|
|
38597
|
+
var infoLogin = {
|
|
38598
|
+
firstName: fullName.split(' ').slice(0, -1).join(' '),
|
|
38599
|
+
lastName: fullName.split(' ').slice(-1).join(' '),
|
|
38600
|
+
fullName: fullName,
|
|
38601
|
+
imageUrl: "",
|
|
38602
|
+
email: account.username,
|
|
38603
|
+
accessToken: account.idTokenClaims.aio,
|
|
38604
|
+
googleId: account.tenantId
|
|
38605
|
+
};
|
|
38606
|
+
dispatch(setInforUserGoogle(infoLogin));
|
|
38607
|
+
return Promise.resolve(fnIsCheckLogin(TypeLogin.MicrosoftSSO, infoLogin, account.idTokenClaims.aio, clickHandler)).then(function () {});
|
|
38608
|
+
} catch (e) {
|
|
38609
|
+
return Promise.reject(e);
|
|
38610
|
+
}
|
|
38611
|
+
};
|
|
38553
38612
|
|
|
38554
|
-
var
|
|
38555
|
-
|
|
38556
|
-
|
|
38557
|
-
resetPasswordRequest = _useForgotPassword.resetPasswordRequest,
|
|
38558
|
-
isShowNewPassword = _useForgotPassword.isShowNewPassword,
|
|
38559
|
-
setIsShowNewPassword = _useForgotPassword.setIsShowNewPassword,
|
|
38560
|
-
isShowReTypePassword = _useForgotPassword.isShowReTypePassword,
|
|
38561
|
-
setIsShowReTypePassword = _useForgotPassword.setIsShowReTypePassword,
|
|
38562
|
-
initialValues = _useForgotPassword.initialValues;
|
|
38613
|
+
var initInformationSSO = function initInformationSSO() {
|
|
38614
|
+
try {
|
|
38615
|
+
var _msalInstance = new PublicClientApplication(msalConfig);
|
|
38563
38616
|
|
|
38564
|
-
|
|
38565
|
-
|
|
38566
|
-
|
|
38567
|
-
|
|
38568
|
-
onSubmit: function onSubmit(values) {
|
|
38569
|
-
resetPasswordRequest(values);
|
|
38617
|
+
setMsalInstance(_msalInstance);
|
|
38618
|
+
return Promise.resolve();
|
|
38619
|
+
} catch (e) {
|
|
38620
|
+
return Promise.reject(e);
|
|
38570
38621
|
}
|
|
38571
|
-
}
|
|
38572
|
-
|
|
38573
|
-
|
|
38574
|
-
|
|
38575
|
-
|
|
38576
|
-
|
|
38577
|
-
|
|
38578
|
-
|
|
38579
|
-
|
|
38580
|
-
|
|
38581
|
-
|
|
38582
|
-
|
|
38583
|
-
|
|
38584
|
-
|
|
38585
|
-
|
|
38586
|
-
|
|
38587
|
-
|
|
38588
|
-
|
|
38589
|
-
|
|
38590
|
-
|
|
38591
|
-
|
|
38592
|
-
|
|
38593
|
-
|
|
38594
|
-
|
|
38595
|
-
|
|
38596
|
-
|
|
38597
|
-
|
|
38598
|
-
|
|
38599
|
-
|
|
38600
|
-
|
|
38601
|
-
|
|
38602
|
-
|
|
38603
|
-
})), React.createElement("div", {
|
|
38604
|
-
className: "" + styles["form-user-name"]
|
|
38605
|
-
}, React.createElement(PasswordInput, {
|
|
38606
|
-
isShowPassword: isShowNewPassword,
|
|
38607
|
-
togglePasswordVisible: function togglePasswordVisible() {
|
|
38608
|
-
return setIsShowNewPassword(!isShowNewPassword);
|
|
38609
|
-
},
|
|
38610
|
-
onChange: function onChange(e) {
|
|
38611
|
-
return setFieldValue("password", e.target.value);
|
|
38612
|
-
}
|
|
38613
|
-
}), touched.password && errors.password && React.createElement(ErrorHandler, {
|
|
38614
|
-
text: errors.password
|
|
38615
|
-
})), React.createElement("div", {
|
|
38616
|
-
className: "" + styles["form-user-name"]
|
|
38617
|
-
}, React.createElement(PasswordInput, {
|
|
38618
|
-
placeholder: "Confirm Password",
|
|
38619
|
-
isShowPassword: isShowReTypePassword,
|
|
38620
|
-
togglePasswordVisible: function togglePasswordVisible() {
|
|
38621
|
-
return setIsShowReTypePassword(!isShowReTypePassword);
|
|
38622
|
-
},
|
|
38623
|
-
onChange: function onChange(e) {
|
|
38624
|
-
return setFieldValue("reEnterPassword", e.target.value);
|
|
38625
|
-
}
|
|
38626
|
-
}), touched.reEnterPassword && errors.reEnterPassword && React.createElement(ErrorHandler, {
|
|
38627
|
-
text: errors.reEnterPassword
|
|
38628
|
-
}))) : React.createElement(React.Fragment, null, React.createElement("p", {
|
|
38629
|
-
className: styles["recover-account"] + " mb-5"
|
|
38630
|
-
}, "Invalid reset password link"), React.createElement("p", {
|
|
38631
|
-
className: "w-100"
|
|
38632
|
-
}, "It may have been accessed before or expired or you have just tried to reset another account's password"))), validLink && React.createElement(Col, {
|
|
38633
|
-
className: "p-0"
|
|
38634
|
-
}, React.createElement("button", {
|
|
38635
|
-
className: styles["btn-login"] + " " + styles["btn-rounder"] + " mt-4",
|
|
38636
|
-
onClick: function onClick() {
|
|
38637
|
-
return handleSubmit();
|
|
38638
|
-
}
|
|
38639
|
-
}, "SET A NEW PASSWORD"))))), React.createElement(Col, {
|
|
38640
|
-
lg: 4,
|
|
38641
|
-
md: 4,
|
|
38642
|
-
className: "" + styles["img-box"]
|
|
38643
|
-
}, React.createElement("img", {
|
|
38644
|
-
src: getStaticFileUrl("/images/img-login.png"),
|
|
38645
|
-
className: "" + styles["img-login"]
|
|
38646
|
-
})));
|
|
38647
|
-
});
|
|
38622
|
+
};
|
|
38623
|
+
|
|
38624
|
+
useEffect(function () {
|
|
38625
|
+
var redirectUrl = window.location.href;
|
|
38626
|
+
|
|
38627
|
+
if (!!msalInstance && redirectUrl.includes("code") && redirectUrl.includes("client_info")) {
|
|
38628
|
+
fnLoginSSO();
|
|
38629
|
+
}
|
|
38630
|
+
}, [JSON.stringify(msalInstance)]);
|
|
38631
|
+
useEffect(function () {
|
|
38632
|
+
getInformationSetting();
|
|
38633
|
+
initInformationSSO();
|
|
38634
|
+
getSchoolInfo();
|
|
38635
|
+
}, []);
|
|
38636
|
+
return {
|
|
38637
|
+
defaultInfo: defaultInfo$1,
|
|
38638
|
+
userLogin: userLogin,
|
|
38639
|
+
openLogin: openLogin,
|
|
38640
|
+
toggle: toggle,
|
|
38641
|
+
isShowPassword: isShowPassword,
|
|
38642
|
+
setIsShowPassword: setIsShowPassword,
|
|
38643
|
+
fnIsCheckLogin: fnIsCheckLogin,
|
|
38644
|
+
isLoginGoogle: isLoginGoogle,
|
|
38645
|
+
infoUser: infoUser,
|
|
38646
|
+
submitLogin: submitLogin,
|
|
38647
|
+
googleClientId: googleClientId,
|
|
38648
|
+
googleRecaptchaId: googleRecaptchaId,
|
|
38649
|
+
handleCancelModelAssign: handleCancelModelAssign,
|
|
38650
|
+
openModelAssign: openModelAssign,
|
|
38651
|
+
fnLoginSSO: fnLoginSSO,
|
|
38652
|
+
school: school
|
|
38653
|
+
};
|
|
38648
38654
|
};
|
|
38649
38655
|
|
|
38650
38656
|
var DASHBOARD$1 = "/";
|
|
@@ -38896,7 +38902,14 @@ var Login = function Login(props) {
|
|
|
38896
38902
|
googleRecaptchaId = _useLogin.googleRecaptchaId,
|
|
38897
38903
|
handleCancelModelAssign = _useLogin.handleCancelModelAssign,
|
|
38898
38904
|
school = _useLogin.school,
|
|
38899
|
-
openModelAssign = _useLogin.openModelAssign
|
|
38905
|
+
openModelAssign = _useLogin.openModelAssign,
|
|
38906
|
+
setIsShowPassword = _useLogin.setIsShowPassword,
|
|
38907
|
+
fnIsCheckLogin = _useLogin.fnIsCheckLogin,
|
|
38908
|
+
isLoginGoogle = _useLogin.isLoginGoogle,
|
|
38909
|
+
submitLogin = _useLogin.submitLogin,
|
|
38910
|
+
infoUser = _useLogin.infoUser,
|
|
38911
|
+
googleClientId = _useLogin.googleClientId,
|
|
38912
|
+
isShowPassword = _useLogin.isShowPassword;
|
|
38900
38913
|
|
|
38901
38914
|
useEffect(function () {
|
|
38902
38915
|
isLogin && (document.title = LOGIN_TITLE);
|
|
@@ -38925,7 +38938,14 @@ var Login = function Login(props) {
|
|
|
38925
38938
|
defaultInfo: defaultInfo,
|
|
38926
38939
|
onCancelModelAssign: handleCancelModelAssign,
|
|
38927
38940
|
openModelAssign: openModelAssign,
|
|
38928
|
-
school: school
|
|
38941
|
+
school: school,
|
|
38942
|
+
fnIsCheckLogin: fnIsCheckLogin,
|
|
38943
|
+
googleClientId: googleClientId,
|
|
38944
|
+
infoUser: infoUser,
|
|
38945
|
+
isLoginGoogle: isLoginGoogle,
|
|
38946
|
+
isShowPassword: isShowPassword,
|
|
38947
|
+
setIsShowPassword: setIsShowPassword,
|
|
38948
|
+
submitLogin: submitLogin
|
|
38929
38949
|
}), isForgotPassword && React.createElement(BlockForgetPassword, {
|
|
38930
38950
|
school: school
|
|
38931
38951
|
})), isResetPassword && React.createElement(BlockResetPassword, null), isCreatePassword && React.createElement(BlockCreatePassword, null), React.createElement("a", {
|
|
@@ -43631,32 +43651,12 @@ var TeacherSelector = function TeacherSelector(_ref) {
|
|
|
43631
43651
|
var options = _ref.options,
|
|
43632
43652
|
isDisabled = _ref.isDisabled,
|
|
43633
43653
|
scrollBottom = _ref.scrollBottom,
|
|
43634
|
-
onCreateOption = _ref.onCreateOption,
|
|
43635
43654
|
rest = _objectWithoutPropertiesLoose(_ref, ["options", "isDisabled", "scrollBottom", "onCreateOption"]);
|
|
43636
43655
|
|
|
43637
43656
|
var _useState = useState(),
|
|
43638
43657
|
errorMessage = _useState[0],
|
|
43639
43658
|
setErrorMessage = _useState[1];
|
|
43640
43659
|
|
|
43641
|
-
var validateEmail = function validateEmail(email) {
|
|
43642
|
-
return String(email).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
|
|
43643
|
-
};
|
|
43644
|
-
|
|
43645
|
-
var handleCreateTeacherOption = function handleCreateTeacherOption(newTeacherEmail) {
|
|
43646
|
-
if (!validateEmail(newTeacherEmail)) {
|
|
43647
|
-
setErrorMessage("Invalid email format for email: " + newTeacherEmail);
|
|
43648
|
-
return;
|
|
43649
|
-
} else {
|
|
43650
|
-
setErrorMessage(undefined);
|
|
43651
|
-
}
|
|
43652
|
-
|
|
43653
|
-
var newTeacher = {
|
|
43654
|
-
label: newTeacherEmail,
|
|
43655
|
-
value: -new Date().getTime()
|
|
43656
|
-
};
|
|
43657
|
-
onCreateOption === null || onCreateOption === void 0 ? void 0 : onCreateOption(newTeacher);
|
|
43658
|
-
};
|
|
43659
|
-
|
|
43660
43660
|
var handleFocus = function handleFocus() {
|
|
43661
43661
|
setErrorMessage(undefined);
|
|
43662
43662
|
};
|
|
@@ -43669,7 +43669,6 @@ var TeacherSelector = function TeacherSelector(_ref) {
|
|
|
43669
43669
|
isDisabled: isDisabled,
|
|
43670
43670
|
options: options,
|
|
43671
43671
|
menuPlacement: scrollBottom ? "top" : "auto",
|
|
43672
|
-
onCreateOption: handleCreateTeacherOption,
|
|
43673
43672
|
onFocus: handleFocus
|
|
43674
43673
|
}, rest))), !!errorMessage && React.createElement("p", {
|
|
43675
43674
|
className: "text-danger mb-0 mt-1"
|
|
@@ -44365,28 +44364,24 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44365
44364
|
var _useTeacherList = useTeacherList(),
|
|
44366
44365
|
selectedTeachers = _useTeacherList.selectedTeachers,
|
|
44367
44366
|
teacherOptions = _useTeacherList.teacherOptions,
|
|
44368
|
-
handleCreateTeacherOption = _useTeacherList.handleCreateTeacherOption,
|
|
44369
44367
|
handleSelectTeacher = _useTeacherList.handleSelectTeacher,
|
|
44370
44368
|
setSelectedTeachers = _useTeacherList.setSelectedTeachers;
|
|
44371
44369
|
|
|
44372
44370
|
var _useAssistantList = useAssistantList(),
|
|
44373
44371
|
selectedAssistants = _useAssistantList.selectedAssistants,
|
|
44374
44372
|
assistantOptions = _useAssistantList.assistantOptions,
|
|
44375
|
-
handleCreateAssistantOption = _useAssistantList.handleCreateAssistantOption,
|
|
44376
44373
|
handleSelectAssistant = _useAssistantList.handleSelectAssistant,
|
|
44377
44374
|
setSelectedAssistants = _useAssistantList.setSelectedAssistants;
|
|
44378
44375
|
|
|
44379
44376
|
var _useCounselorList = useCounselorList(),
|
|
44380
44377
|
selectedCounselors = _useCounselorList.selectedCounselors,
|
|
44381
44378
|
counselorOptions = _useCounselorList.counselorOptions,
|
|
44382
|
-
handleCreateCounselorOption = _useCounselorList.handleCreateCounselorOption,
|
|
44383
44379
|
handleSelectCounselor = _useCounselorList.handleSelectCounselor,
|
|
44384
44380
|
setSelectedCounselors = _useCounselorList.setSelectedCounselors;
|
|
44385
44381
|
|
|
44386
44382
|
var _useSecondaryTeacherL = useSecondaryTeacherList(),
|
|
44387
44383
|
selectedSecondaryTeachers = _useSecondaryTeacherL.selectedSecondaryTeachers,
|
|
44388
44384
|
secondaryTeacherOptions = _useSecondaryTeacherL.secondaryTeacherOptions,
|
|
44389
|
-
handleCreateSecondaryTeacherOption = _useSecondaryTeacherL.handleCreateSecondaryTeacherOption,
|
|
44390
44385
|
handleSelectSecondaryTeacher = _useSecondaryTeacherL.handleSelectSecondaryTeacher,
|
|
44391
44386
|
setSelectedSecondaryTeachers = _useSecondaryTeacherL.setSelectedSecondaryTeachers;
|
|
44392
44387
|
|
|
@@ -44521,7 +44516,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44521
44516
|
return handleChangeStaffBulk("teacherId", e.value);
|
|
44522
44517
|
},
|
|
44523
44518
|
onCreateOption: function onCreateOption(value) {
|
|
44524
|
-
handleCreateTeacherOption(value, "");
|
|
44525
44519
|
handleChangeStaffBulk("teacherEmail", value.label);
|
|
44526
44520
|
},
|
|
44527
44521
|
placeholder: t("select_teacher"),
|
|
@@ -44535,7 +44529,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44535
44529
|
return handleChangeStaffBulk("assistantId", e.value);
|
|
44536
44530
|
},
|
|
44537
44531
|
onCreateOption: function onCreateOption(value) {
|
|
44538
|
-
handleCreateAssistantOption(value, "");
|
|
44539
44532
|
handleChangeStaffBulk("assistantEmail", value.label);
|
|
44540
44533
|
},
|
|
44541
44534
|
placeholder: t("select_assistant"),
|
|
@@ -44549,7 +44542,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44549
44542
|
return handleChangeStaffBulk("counselorId", e.value);
|
|
44550
44543
|
},
|
|
44551
44544
|
onCreateOption: function onCreateOption(value) {
|
|
44552
|
-
handleCreateCounselorOption(value, "");
|
|
44553
44545
|
handleChangeStaffBulk("counselorEmail", value.label);
|
|
44554
44546
|
},
|
|
44555
44547
|
placeholder: t("select_counselor"),
|
|
@@ -44563,7 +44555,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44563
44555
|
return handleChangeStaffBulk("secondaryTeacherId", e.value);
|
|
44564
44556
|
},
|
|
44565
44557
|
onCreateOption: function onCreateOption(value) {
|
|
44566
|
-
handleCreateSecondaryTeacherOption(value, "");
|
|
44567
44558
|
handleChangeStaffBulk("secondaryTeacherEmail", value.label);
|
|
44568
44559
|
},
|
|
44569
44560
|
placeholder: t("select_support_teacher"),
|
|
@@ -44658,9 +44649,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44658
44649
|
return i.value;
|
|
44659
44650
|
}), item.id);
|
|
44660
44651
|
},
|
|
44661
|
-
onCreateOption: function onCreateOption(value) {
|
|
44662
|
-
return handleCreateTeacherOption(value, item.id, true);
|
|
44663
|
-
},
|
|
44664
44652
|
placeholder: t("select_teacher"),
|
|
44665
44653
|
className: "flex-grow-1 mr-2"
|
|
44666
44654
|
})), React.createElement("td", {
|
|
@@ -44675,9 +44663,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44675
44663
|
onChange: function onChange(e) {
|
|
44676
44664
|
return handleSelectAssistant(e.value, item.id);
|
|
44677
44665
|
},
|
|
44678
|
-
onCreateOption: function onCreateOption(value) {
|
|
44679
|
-
return handleCreateAssistantOption(value, item.id, true);
|
|
44680
|
-
},
|
|
44681
44666
|
placeholder: t("select_assistant"),
|
|
44682
44667
|
className: "flex-grow-1 mr-2"
|
|
44683
44668
|
})), React.createElement("td", {
|
|
@@ -44692,9 +44677,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44692
44677
|
onChange: function onChange(e) {
|
|
44693
44678
|
return handleSelectCounselor(e.value, item.id);
|
|
44694
44679
|
},
|
|
44695
|
-
onCreateOption: function onCreateOption(value) {
|
|
44696
|
-
return handleCreateCounselorOption(value, item.id, true);
|
|
44697
|
-
},
|
|
44698
44680
|
placeholder: t("select_counselor"),
|
|
44699
44681
|
className: "flex-grow-1 mr-2"
|
|
44700
44682
|
})), React.createElement("td", {
|
|
@@ -44709,9 +44691,6 @@ var AssignStudentList = function AssignStudentList() {
|
|
|
44709
44691
|
onChange: function onChange(e) {
|
|
44710
44692
|
return handleSelectSecondaryTeacher(e.value, item.id);
|
|
44711
44693
|
},
|
|
44712
|
-
onCreateOption: function onCreateOption(value) {
|
|
44713
|
-
return handleCreateSecondaryTeacherOption(value, item.id, true);
|
|
44714
|
-
},
|
|
44715
44694
|
placeholder: t("select_support_teacher"),
|
|
44716
44695
|
className: "flex-grow-1 mr-2"
|
|
44717
44696
|
})), React.createElement("td", {
|
|
@@ -45706,12 +45685,17 @@ var UserDetail = function UserDetail() {
|
|
|
45706
45685
|
return handleToggleModel();
|
|
45707
45686
|
}
|
|
45708
45687
|
}, React.createElement(ModalHeader, null, "Assign Teacher"), React.createElement(ModalBody, null, React.createElement(TeacherSelector, {
|
|
45709
|
-
|
|
45710
|
-
|
|
45688
|
+
isMulti: true,
|
|
45689
|
+
value: teacherOptions.filter(function (r) {
|
|
45690
|
+
var _values$teacherUserId;
|
|
45691
|
+
|
|
45692
|
+
return (_values$teacherUserId = values.teacherUserId) === null || _values$teacherUserId === void 0 ? void 0 : _values$teacherUserId.includes(r.value);
|
|
45711
45693
|
}) || null,
|
|
45712
45694
|
options: teacherOptions,
|
|
45713
45695
|
onChange: function onChange(e) {
|
|
45714
|
-
return setFieldValue("teacherUserId", e.
|
|
45696
|
+
return setFieldValue("teacherUserId", e.map(function (i) {
|
|
45697
|
+
return i.value;
|
|
45698
|
+
}));
|
|
45715
45699
|
},
|
|
45716
45700
|
placeholder: t("select_teacher"),
|
|
45717
45701
|
className: "flex-grow-1 mb-3"
|