mario-core 2.9.238-layout → 2.9.238-release

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,9 +5,10 @@ export { I18nextProvider, useTranslation } from 'react-i18next';
5
5
  import React, { useState, useCallback, useEffect, forwardRef, useRef, Suspense, memo, Fragment, useImperativeHandle, useMemo } from 'react';
6
6
  import { Input, Modal, ModalHeader, ModalBody, ModalFooter, Button, Row, Col, Form, FormGroup, 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
7
  import { useHistory, Link, useLocation, Switch, Route, Prompt, useParams } from 'react-router-dom';
8
+ import { useDispatch, useSelector } from 'react-redux';
8
9
  import { Formik } from 'formik';
9
10
  import { object, string, boolean, number, array } from 'yup';
10
- import { useDispatch, useSelector } from 'react-redux';
11
+ import { LogLevel, PublicClientApplication } from '@azure/msal-browser';
11
12
  import { createAction, createReducer, configureStore } from '@reduxjs/toolkit';
12
13
  import axios from 'axios';
13
14
  import amplitude from 'amplitude-js';
@@ -1843,6 +1844,7 @@ var accommodation_set = "Accommodation Set";
1843
1844
  var add_new_accommodation = "Add new accommodation";
1844
1845
  var print_my_accommodations = "Print my accommodations";
1845
1846
  var my_learning_progress = "My Learning Progress";
1847
+ var weekly_quests = "Weekly quests";
1846
1848
  var responses_comparisons = "Responses Comparisons";
1847
1849
  var dropdown_and_verbal_questions_responses = "Dropdown and Verbal Questions Responses";
1848
1850
  var mario_tools = "MARIO TOOLS";
@@ -3811,6 +3813,7 @@ var lang_us = {
3811
3813
  my_learning_progress: my_learning_progress,
3812
3814
  "here_your_teacher_can_edit_or_add_your_accommodation_details._please_note_that_you_can_view_the_information,_but_for_any_edits_or_additions,_kindly_contact_your_teacher_directly.": "Here your teacher can edit or add your accommodation details. Please note that you can view the information, but for any edits or additions, kindly contact your teacher directly.",
3813
3815
  "this_is_a_brand_new_beta_version_for_your_personal_learning_journey._you_can_think_about_what_you_want_like_to_do_and_how_you_like_to_learn._we_advise_you_to_do_it_gradually_per_section_and_visit_it_once_a_month.": "This is a brand new beta version for your personal learning journey. You can think about what you want like to do and how you like to learn. We advise you to do it gradually per section and visit it once a month.",
3816
+ weekly_quests: weekly_quests,
3814
3817
  responses_comparisons: responses_comparisons,
3815
3818
  dropdown_and_verbal_questions_responses: dropdown_and_verbal_questions_responses,
3816
3819
  mario_tools: mario_tools,
@@ -4520,6 +4523,7 @@ var do_you_want_to_share_a_survey_to_teachers$1 = "Do you want to share a survey
4520
4523
  var you_can_share_this_survey_to_teachers_to_get_more_insight_about_your_student$1 = "You can share this survey to teachers to get more insight about your student.";
4521
4524
  var skip$1 = "skip";
4522
4525
  var survey_questions$1 = "Survey questions";
4526
+ var weekly_quests$1 = "Weekly quests";
4523
4527
  var add_survey_question$1 = "Add Survey Question";
4524
4528
  var additional_question$1 = "Additional Question";
4525
4529
  var add_additional_question$1 = "Add additional question";
@@ -5776,13 +5780,13 @@ var accommodation_set$1 = "Accommodation Set";
5776
5780
  var add_new_accommodation$1 = "Add new accommodation";
5777
5781
  var print_my_accommodations$1 = "Print my accommodations";
5778
5782
  var my_learning_progress$1 = "My Learning Progress";
5783
+ var inactive_students$1 = "Inactive Students";
5779
5784
  var responses_comparisons$1 = "Responses Comparisons";
5780
5785
  var dropdown_and_verbal_questions_responses$1 = "Dropdown and Verbal Questions Responses";
5781
5786
  var mario_tools$1 = "MARIO TOOLS";
5782
5787
  var customize$1 = "Customize";
5783
5788
  var techical_settings$1 = "Technical Settings";
5784
5789
  var data_import_export$1 = "Data Import/Export";
5785
- var inactive_students$1 = "Inactive Students";
5786
5790
  var admin_general_tips$1 = "Admin General Tips";
5787
5791
  var school_usage$1 = "School Usage";
5788
5792
  var total_conversations_time$1 = "Total Conversations Time";
@@ -6474,6 +6478,7 @@ var lang_uk = {
6474
6478
  you_can_share_this_survey_to_teachers_to_get_more_insight_about_your_student: you_can_share_this_survey_to_teachers_to_get_more_insight_about_your_student$1,
6475
6479
  skip: skip$1,
6476
6480
  survey_questions: survey_questions$1,
6481
+ weekly_quests: weekly_quests$1,
6477
6482
  add_survey_question: add_survey_question$1,
6478
6483
  additional_question: additional_question$1,
6479
6484
  add_additional_question: add_additional_question$1,
@@ -7743,6 +7748,7 @@ var lang_uk = {
7743
7748
  print_my_accommodations: print_my_accommodations$1,
7744
7749
  my_learning_progress: my_learning_progress$1,
7745
7750
  "here_your_teacher_can_edit_or_add_your_accommodation_details._please_note_that_you_can_view_the_information,_but_for_any_edits_or_additions,_kindly_contact_your_teacher_directly.": "Here your teacher can edit or add your accommodation details. Please note that you can view the information, but for any edits or additions, kindly contact your teacher directly.",
7751
+ inactive_students: inactive_students$1,
7746
7752
  "this_is_a_brand_new_beta_version_for_your_personal_learning_journey._you_can_think_about_what_you_want_like_to_do_and_how_you_like_to_learn._we_advise_you_to_do_it_gradually_per_section_and_visit_it_once_a_month.": "This is a brand new beta version for your personal learning journey. You can think about what you want like to do and how you like to learn. We advise you to do it gradually per section and visit it once a month.",
7747
7753
  responses_comparisons: responses_comparisons$1,
7748
7754
  dropdown_and_verbal_questions_responses: dropdown_and_verbal_questions_responses$1,
@@ -7750,7 +7756,6 @@ var lang_uk = {
7750
7756
  customize: customize$1,
7751
7757
  techical_settings: techical_settings$1,
7752
7758
  data_import_export: data_import_export$1,
7753
- inactive_students: inactive_students$1,
7754
7759
  admin_general_tips: admin_general_tips$1,
7755
7760
  school_usage: school_usage$1,
7756
7761
  total_conversations_time: total_conversations_time$1,
@@ -12519,8 +12524,6 @@ var performance$4 = "Actuación";
12519
12524
  var not_enough_challenge_leading_to_boredom_and_lack_of_interest$3 = "No hay suficientes desafíos lo que lleva al aburrimiento y la falta de interés.";
12520
12525
  var calm_and_relaxed_but_not_enough_motivation_to_perform_at_my_best$3 = "Tranquilo y relajado pero no hay suficiente motivación para dar lo mejor de mí.";
12521
12526
  var manageable_levels_of_stress_allowing_me_to_perform_at_my_best$3 = "Niveles manejables de estrés que me permiten rendir al máximo.";
12522
- var still_in_control_but_starting_to_feel_the_pressure$3 = "Aún tengo el control pero empiezo a sentir la presión.";
12523
- var too_much_pressure_and_really_struggling_to_manage_my_workload$3 = "Demasiada presión y muchas dificultades para gestionar mi carga de trabajo.";
12524
12527
  var import_emails_by_csv$3 = "Importar correo electrónico por csv";
12525
12528
  var request_number$3 = "Número de solicitud";
12526
12529
  var select_or_input_class_type$3 = "Seleccione o ingrese el tipo de clase";
@@ -13600,7 +13603,7 @@ var customize$3 = "Personalizar";
13600
13603
  var techical_settings$3 = "Configuración técnica";
13601
13604
  var data_import_export$3 = "Importación/Exportación de datos";
13602
13605
  var question_text$3 = "Texto de la pregunta";
13603
- var weekly_quests = "Misiones semanales";
13606
+ var weekly_quests$2 = "Misiones semanales";
13604
13607
  var inactive_students$3 = "Estudiantes inactivos";
13605
13608
  var admin_general_tips$3 = "Consejos generales para el administrador";
13606
13609
  var school_usage$3 = "Uso escolar";
@@ -14453,8 +14456,6 @@ var lang_es = {
14453
14456
  not_enough_challenge_leading_to_boredom_and_lack_of_interest: not_enough_challenge_leading_to_boredom_and_lack_of_interest$3,
14454
14457
  calm_and_relaxed_but_not_enough_motivation_to_perform_at_my_best: calm_and_relaxed_but_not_enough_motivation_to_perform_at_my_best$3,
14455
14458
  manageable_levels_of_stress_allowing_me_to_perform_at_my_best: manageable_levels_of_stress_allowing_me_to_perform_at_my_best$3,
14456
- still_in_control_but_starting_to_feel_the_pressure: still_in_control_but_starting_to_feel_the_pressure$3,
14457
- too_much_pressure_and_really_struggling_to_manage_my_workload: too_much_pressure_and_really_struggling_to_manage_my_workload$3,
14458
14459
  import_emails_by_csv: import_emails_by_csv$3,
14459
14460
  request_number: request_number$3,
14460
14461
  select_or_input_class_type: select_or_input_class_type$3,
@@ -15539,7 +15540,7 @@ var lang_es = {
15539
15540
  techical_settings: techical_settings$3,
15540
15541
  data_import_export: data_import_export$3,
15541
15542
  question_text: question_text$3,
15542
- weekly_quests: weekly_quests,
15543
+ weekly_quests: weekly_quests$2,
15543
15544
  inactive_students: inactive_students$3,
15544
15545
  admin_general_tips: admin_general_tips$3,
15545
15546
  school_usage: school_usage$3,
@@ -16422,8 +16423,8 @@ var performance$5 = "表现";
16422
16423
  var not_enough_challenge_leading_to_boredom_and_lack_of_interest$4 = "挑战不够,导致无聊和缺乏兴趣。";
16423
16424
  var calm_and_relaxed_but_not_enough_motivation_to_perform_at_my_best$4 = "平静而放松,但没有足够的动力来发挥我的最佳水平。";
16424
16425
  var manageable_levels_of_stress_allowing_me_to_perform_at_my_best$4 = "可控的压力水平让我能够发挥出最佳水平。";
16425
- var still_in_control_but_starting_to_feel_the_pressure$4 = "仍在控制之中,但开始感到压力。";
16426
- var too_much_pressure_and_really_struggling_to_manage_my_workload$4 = "压力过大,真的很难管理我的工作量。";
16426
+ var still_in_control_but_starting_to_feel_the_pressure$3 = "仍在控制之中,但开始感到压力。";
16427
+ var too_much_pressure_and_really_struggling_to_manage_my_workload$3 = "压力过大,真的很难管理我的工作量。";
16427
16428
  var import_emails_by_csv$4 = "通过 csv 导入电子邮件";
16428
16429
  var request_number$4 = "请求编号";
16429
16430
  var select_or_input_class_type$4 = "选择或输入班级类型";
@@ -17503,7 +17504,7 @@ var customize$4 = "自定义";
17503
17504
  var techical_settings$4 = "技术设置";
17504
17505
  var data_import_export$4 = "数据导入/导出";
17505
17506
  var question_text$4 = "问题文本";
17506
- var weekly_quests$1 = "每周任务";
17507
+ var weekly_quests$3 = "每周任务";
17507
17508
  var inactive_students$4 = "非活跃学生";
17508
17509
  var admin_general_tips$4 = "管理员一般提示";
17509
17510
  var school_usage$4 = "学校使用";
@@ -18383,8 +18384,8 @@ var lang_zh = {
18383
18384
  not_enough_challenge_leading_to_boredom_and_lack_of_interest: not_enough_challenge_leading_to_boredom_and_lack_of_interest$4,
18384
18385
  calm_and_relaxed_but_not_enough_motivation_to_perform_at_my_best: calm_and_relaxed_but_not_enough_motivation_to_perform_at_my_best$4,
18385
18386
  manageable_levels_of_stress_allowing_me_to_perform_at_my_best: manageable_levels_of_stress_allowing_me_to_perform_at_my_best$4,
18386
- still_in_control_but_starting_to_feel_the_pressure: still_in_control_but_starting_to_feel_the_pressure$4,
18387
- too_much_pressure_and_really_struggling_to_manage_my_workload: too_much_pressure_and_really_struggling_to_manage_my_workload$4,
18387
+ still_in_control_but_starting_to_feel_the_pressure: still_in_control_but_starting_to_feel_the_pressure$3,
18388
+ too_much_pressure_and_really_struggling_to_manage_my_workload: too_much_pressure_and_really_struggling_to_manage_my_workload$3,
18388
18389
  import_emails_by_csv: import_emails_by_csv$4,
18389
18390
  request_number: request_number$4,
18390
18391
  select_or_input_class_type: select_or_input_class_type$4,
@@ -19469,7 +19470,7 @@ var lang_zh = {
19469
19470
  techical_settings: techical_settings$4,
19470
19471
  data_import_export: data_import_export$4,
19471
19472
  question_text: question_text$4,
19472
- weekly_quests: weekly_quests$1,
19473
+ weekly_quests: weekly_quests$3,
19473
19474
  inactive_students: inactive_students$4,
19474
19475
  admin_general_tips: admin_general_tips$4,
19475
19476
  school_usage: school_usage$4,
@@ -37171,6 +37172,8 @@ var setModal = createAction("common/setModal");
37171
37172
  var setUser = createAction("common/setUser");
37172
37173
  var setSidebar = createAction("common/setSidebar");
37173
37174
  var setAlert = createAction("common/setAlert");
37175
+ var setIsLoginGoogle = createAction("common/setIsLoginGoogle");
37176
+ var setInforUserGoogle = createAction("common/setInforUserGoogle");
37174
37177
  var reset = createAction("common/reset");
37175
37178
  var showMenuBar = createAction("common/showMenuBar");
37176
37179
  var showFontSize = createAction("common/showFontSize");
@@ -37234,13 +37237,11 @@ var apiUpload = axios.create({
37234
37237
  return i.interceptors.response.use(function (response) {
37235
37238
  return response;
37236
37239
  }, function (error) {
37237
- var _error$response$confi, _error$response$confi2, _error$response$confi3, _error$response$confi4;
37238
-
37239
37240
  console.log({
37240
37241
  error: error
37241
37242
  });
37242
37243
 
37243
- if (error.response.status === 401 && !((_error$response$confi = error.response.config) !== null && _error$response$confi !== void 0 && (_error$response$confi2 = _error$response$confi.url) !== null && _error$response$confi2 !== void 0 && _error$response$confi2.includes("cookieyes"))) {
37244
+ if (error.response.status === 401) {
37244
37245
  Object.keys(localStorage).forEach(function (key) {
37245
37246
  if (!key.includes('learning-plan')) delete localStorage[key];
37246
37247
  });
@@ -37257,13 +37258,16 @@ var apiUpload = axios.create({
37257
37258
  amplitude.getInstance().resetSessionId();
37258
37259
  }
37259
37260
 
37260
- localStorage.setItem("USER_EMAIL", "");
37261
+ localStorage.removeItem(ACCESS_TOKEN);
37262
+ localStorage.removeItem("USER_EMAIL");
37263
+ localStorage.removeItem("ROLES");
37261
37264
  window.location.href = "/login";
37262
37265
  }
37263
37266
 
37264
- if (error.response.status == 403 && !((_error$response$confi3 = error.response.config) !== null && _error$response$confi3 !== void 0 && (_error$response$confi4 = _error$response$confi3.url) !== null && _error$response$confi4 !== void 0 && _error$response$confi4.includes("cookieyes"))) {
37267
+ if (error.response.status == 403) {
37265
37268
  localStorage.removeItem(ACCESS_TOKEN);
37266
37269
  localStorage.removeItem("USER_EMAIL");
37270
+ localStorage.removeItem("ROLES");
37267
37271
  window.location.href = "/login";
37268
37272
  }
37269
37273
 
@@ -37307,8 +37311,12 @@ var checkResetToken = function checkResetToken(token, key) {
37307
37311
  var resetPassword = function resetPassword(data) {
37308
37312
  return api.post(ACCOUNT_URL + "/resetpassword", data);
37309
37313
  };
37310
- var checkUserGoogle = function checkUserGoogle(body) {
37311
- return api.post(USER_URL + "/check-user", body);
37314
+ var checkUserGoogle = function checkUserGoogle(type, body) {
37315
+ return api.post(USER_URL + "/check-user", body, {
37316
+ params: {
37317
+ type: type
37318
+ }
37319
+ });
37312
37320
  };
37313
37321
  var getAllLoginTeacher = function getAllLoginTeacher(param) {
37314
37322
  return api.get(TEACHER_URL + "/get-teacher-login", {
@@ -37330,6 +37338,14 @@ var getSchoolSettings = function getSchoolSettings() {
37330
37338
  return api.get(SCHOOL_URL + "/settings");
37331
37339
  };
37332
37340
 
37341
+ var TypeLogin;
37342
+
37343
+ (function (TypeLogin) {
37344
+ TypeLogin[TypeLogin["Google"] = 0] = "Google";
37345
+ TypeLogin[TypeLogin["ClassLink"] = 1] = "ClassLink";
37346
+ TypeLogin[TypeLogin["MicrosoftSSO"] = 2] = "MicrosoftSSO";
37347
+ })(TypeLogin || (TypeLogin = {}));
37348
+
37333
37349
  var LoginType;
37334
37350
 
37335
37351
  (function (LoginType) {
@@ -37338,6 +37354,48 @@ var LoginType;
37338
37354
  LoginType[LoginType["Impersonate"] = 2] = "Impersonate";
37339
37355
  })(LoginType || (LoginType = {}));
37340
37356
 
37357
+ var msalConfig = {
37358
+ auth: {
37359
+ clientId: "90c6897c-f17b-475e-a7a8-9a19651e0060",
37360
+ authority: "https://login.microsoftonline.com/common",
37361
+ redirectUri: window.location.origin + "/login"
37362
+ },
37363
+ cache: {
37364
+ cacheLocation: "sessionStorage",
37365
+ storeAuthStateInCookie: false
37366
+ },
37367
+ system: {
37368
+ loggerOptions: {
37369
+ loggerCallback: function loggerCallback(level, message, containsPii) {
37370
+ if (containsPii) {
37371
+ return;
37372
+ }
37373
+
37374
+ switch (level) {
37375
+ case LogLevel.Error:
37376
+ console.error(message);
37377
+ return;
37378
+
37379
+ case LogLevel.Info:
37380
+ console.info(message);
37381
+ return;
37382
+
37383
+ case LogLevel.Verbose:
37384
+ console.debug(message);
37385
+ return;
37386
+
37387
+ case LogLevel.Warning:
37388
+ console.warn(message);
37389
+ return;
37390
+
37391
+ default:
37392
+ return;
37393
+ }
37394
+ }
37395
+ }
37396
+ }
37397
+ };
37398
+
37341
37399
  var defaultInfo = {
37342
37400
  email: "",
37343
37401
  password: "",
@@ -37360,36 +37418,39 @@ var useLogin = function useLogin() {
37360
37418
  openLogin = _useState[0],
37361
37419
  setOpenLogin = _useState[1];
37362
37420
 
37363
- var _useState2 = useState(false),
37364
- isLoginGoogle = _useState2[0],
37365
- setIsLoginGoogle = _useState2[1];
37366
-
37367
- var _useState3 = useState(""),
37368
- googleClientId = _useState3[0],
37369
- setGoogleClientId = _useState3[1];
37421
+ var isLoginGoogle = useSelector(function (state) {
37422
+ return state.common.isLoginGoogle;
37423
+ });
37370
37424
 
37371
- var _useState4 = useState(""),
37372
- googleRecaptchaId = _useState4[0],
37373
- setGoogleRecaptchaId = _useState4[1];
37425
+ var _useState2 = useState(""),
37426
+ googleClientId = _useState2[0],
37427
+ setGoogleClientId = _useState2[1];
37374
37428
 
37375
- var _useState5 = useState(),
37376
- infoUser = _useState5[0],
37377
- setInfoUser = _useState5[1];
37429
+ var _useState3 = useState(""),
37430
+ googleRecaptchaId = _useState3[0],
37431
+ setGoogleRecaptchaId = _useState3[1];
37378
37432
 
37433
+ var infoUser = useSelector(function (state) {
37434
+ return state.common.inforUserGoogle;
37435
+ });
37379
37436
  var params = new URLSearchParams(location.search);
37380
37437
  var loginClassLink = params.get("type") === "classlink";
37381
37438
  var tokenClassLink = params.get("token");
37382
37439
 
37383
- var _useState6 = useState(false),
37384
- openModelAssign = _useState6[0];
37440
+ var _useState4 = useState(false),
37441
+ openModelAssign = _useState4[0];
37442
+
37443
+ var _useState5 = useState(),
37444
+ msalInstance = _useState5[0],
37445
+ setMsalInstance = _useState5[1];
37385
37446
 
37386
37447
  var toggle = useCallback(function () {
37387
37448
  setOpenLogin(!openLogin);
37388
37449
  }, [openLogin]);
37389
37450
 
37390
- var _useState7 = useState(false),
37391
- isShowPassword = _useState7[0],
37392
- setIsShowPassword = _useState7[1];
37451
+ var _useState6 = useState(false),
37452
+ isShowPassword = _useState6[0],
37453
+ setIsShowPassword = _useState6[1];
37393
37454
 
37394
37455
  useEffect(function () {
37395
37456
  document.title = TITLE;
@@ -37571,40 +37632,51 @@ var useLogin = function useLogin() {
37571
37632
  }
37572
37633
  };
37573
37634
 
37574
- var fnIsCheckLogin = useCallback(function (data, token, clickHandler) {
37635
+ var fnIsCheckLogin = useCallback(function (type, data, token, clickHandler) {
37575
37636
  try {
37576
- var _temp14 = function _temp14() {
37637
+ var _temp16 = function _temp16() {
37577
37638
  dispatch(setLoading(false));
37578
37639
  };
37579
37640
 
37580
37641
  dispatch(setLoading(true));
37581
37642
 
37582
- var _temp15 = _catch(function () {
37583
- return Promise.resolve(checkUserGoogle(data)).then(function (res) {
37643
+ var _temp17 = _catch(function () {
37644
+ return Promise.resolve(checkUserGoogle(type, data)).then(function (res) {
37584
37645
  var checkUser = res.data;
37585
37646
 
37586
- var _temp11 = function () {
37647
+ var _temp13 = function () {
37587
37648
  if (checkUser) {
37588
- return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
37589
- var dataUser = {
37590
- email: data.email,
37591
- captcha: clickHandlerRes,
37592
- isLoginGoogle: true,
37593
- rememberMe: false,
37594
- password: "default",
37595
- accessToken: token,
37596
- loginType: LoginType.Google
37597
- };
37598
- return Promise.resolve(userLogin(dataUser)).then(function () {
37599
- setIsLoginGoogle(false);
37649
+ var _temp18 = function _temp18() {
37650
+ return Promise.resolve(userLogin(_dataUser)).then(function () {
37651
+ dispatch(setIsLoginGoogle(false));
37600
37652
  });
37601
- });
37653
+ };
37654
+
37655
+ var _dataUser = {
37656
+ email: data.email,
37657
+ isLoginGoogle: true,
37658
+ rememberMe: false,
37659
+ password: "default",
37660
+ accessToken: token,
37661
+ captcha: "",
37662
+ loginType: LoginType.Google
37663
+ };
37664
+
37665
+ var _temp19 = function () {
37666
+ if (clickHandler != null) {
37667
+ return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
37668
+ _dataUser.captcha = clickHandlerRes;
37669
+ });
37670
+ }
37671
+ }();
37672
+
37673
+ return _temp19 && _temp19.then ? _temp19.then(_temp18) : _temp18(_temp19);
37602
37674
  } else {
37603
- setIsLoginGoogle(true);
37675
+ dispatch(setIsLoginGoogle(true));
37604
37676
  }
37605
37677
  }();
37606
37678
 
37607
- if (_temp11 && _temp11.then) return _temp11.then(function () {});
37679
+ if (_temp13 && _temp13.then) return _temp13.then(function () {});
37608
37680
  });
37609
37681
  }, function (err) {
37610
37682
  var _err$response4, _err$response4$data;
@@ -37615,7 +37687,7 @@ var useLogin = function useLogin() {
37615
37687
  }));
37616
37688
  });
37617
37689
 
37618
- return Promise.resolve(_temp15 && _temp15.then ? _temp15.then(_temp14) : _temp14(_temp15));
37690
+ return Promise.resolve(_temp17 && _temp17.then ? _temp17.then(_temp16) : _temp16(_temp17));
37619
37691
  } catch (e) {
37620
37692
  return Promise.reject(e);
37621
37693
  }
@@ -37623,14 +37695,14 @@ var useLogin = function useLogin() {
37623
37695
 
37624
37696
  var submitLogin = function submitLogin(teacherId, clickHandler) {
37625
37697
  try {
37626
- var _temp19 = function _temp19() {
37627
- setIsLoginGoogle(false);
37698
+ var _temp23 = function _temp23() {
37699
+ dispatch(setIsLoginGoogle(false));
37628
37700
  dispatch(setLoading(false));
37629
37701
  };
37630
37702
 
37631
37703
  dispatch(setLoading(true));
37632
37704
 
37633
- var _temp20 = _catch(function () {
37705
+ var _temp24 = _catch(function () {
37634
37706
  var data = {
37635
37707
  firstName: infoUser.firstName,
37636
37708
  lastName: infoUser.lastName,
@@ -37641,7 +37713,7 @@ var useLogin = function useLogin() {
37641
37713
  teacherId: teacherId
37642
37714
  };
37643
37715
  return Promise.resolve(registerUserStudent(data)).then(function (res) {
37644
- var _temp16 = function () {
37716
+ var _temp20 = function () {
37645
37717
  if (res.data) {
37646
37718
  return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
37647
37719
  var dataLogin = {
@@ -37653,7 +37725,7 @@ var useLogin = function useLogin() {
37653
37725
  accessToken: infoUser.accessToken,
37654
37726
  loginType: LoginType.Google
37655
37727
  };
37656
- setIsLoginGoogle(false);
37728
+ dispatch(setIsLoginGoogle(false));
37657
37729
  return Promise.resolve(userLogin(dataLogin)).then(function () {
37658
37730
  history.push(HOMEPAGE_STUDENT);
37659
37731
  });
@@ -37661,7 +37733,7 @@ var useLogin = function useLogin() {
37661
37733
  }
37662
37734
  }();
37663
37735
 
37664
- if (_temp16 && _temp16.then) return _temp16.then(function () {});
37736
+ if (_temp20 && _temp20.then) return _temp20.then(function () {});
37665
37737
  });
37666
37738
  }, function (err) {
37667
37739
  var _err$response5, _err$response5$data;
@@ -37672,7 +37744,7 @@ var useLogin = function useLogin() {
37672
37744
  }));
37673
37745
  });
37674
37746
 
37675
- return Promise.resolve(_temp20 && _temp20.then ? _temp20.then(_temp19) : _temp19(_temp20));
37747
+ return Promise.resolve(_temp24 && _temp24.then ? _temp24.then(_temp23) : _temp23(_temp24));
37676
37748
  } catch (e) {
37677
37749
  return Promise.reject(e);
37678
37750
  }
@@ -37680,7 +37752,7 @@ var useLogin = function useLogin() {
37680
37752
 
37681
37753
  var getInformationSetting = function getInformationSetting() {
37682
37754
  try {
37683
- var _temp22 = _catch(function () {
37755
+ var _temp26 = _catch(function () {
37684
37756
  return Promise.resolve(getSchoolSettings()).then(function (res) {
37685
37757
  dispatch(setSandboxMode(res.data.isSandboxMode));
37686
37758
  });
@@ -37688,14 +37760,89 @@ var useLogin = function useLogin() {
37688
37760
  console.error(err);
37689
37761
  });
37690
37762
 
37691
- return Promise.resolve(_temp22 && _temp22.then ? _temp22.then(function () {}) : void 0);
37763
+ return Promise.resolve(_temp26 && _temp26.then ? _temp26.then(function () {}) : void 0);
37764
+ } catch (e) {
37765
+ return Promise.reject(e);
37766
+ }
37767
+ };
37768
+
37769
+ var fnLoginSSO = function fnLoginSSO(clickHandler) {
37770
+ try {
37771
+ msalInstance.handleRedirectPromise().then(function (tokenResponse) {
37772
+ try {
37773
+ var _temp29 = function () {
37774
+ if (!tokenResponse) {
37775
+ var accounts = msalInstance.getAllAccounts();
37776
+
37777
+ var _temp30 = function () {
37778
+ if (accounts.length === 0) {
37779
+ msalInstance.loginRedirect();
37780
+ } else {
37781
+ var currentAccount = accounts[0];
37782
+ return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
37783
+ }
37784
+ }();
37785
+
37786
+ if (_temp30 && _temp30.then) return _temp30.then(function () {});
37787
+ } else {
37788
+ var currentAccount = tokenResponse.account;
37789
+ return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
37790
+ }
37791
+ }();
37792
+
37793
+ return Promise.resolve(_temp29 && _temp29.then ? _temp29.then(function () {}) : void 0);
37794
+ } catch (e) {
37795
+ return Promise.reject(e);
37796
+ }
37797
+ })["catch"](function (err) {
37798
+ console.error(err);
37799
+ });
37800
+ return Promise.resolve();
37801
+ } catch (e) {
37802
+ return Promise.reject(e);
37803
+ }
37804
+ };
37805
+
37806
+ var getCurrentAccount = function getCurrentAccount(account, clickHandler) {
37807
+ try {
37808
+ var fullName = account.name;
37809
+ var infoLogin = {
37810
+ firstName: fullName.split(' ').slice(0, -1).join(' '),
37811
+ lastName: fullName.split(' ').slice(-1).join(' '),
37812
+ fullName: fullName,
37813
+ imageUrl: "",
37814
+ email: account.username,
37815
+ accessToken: account.idTokenClaims.aio,
37816
+ googleId: account.tenantId
37817
+ };
37818
+ dispatch(setInforUserGoogle(infoLogin));
37819
+ return Promise.resolve(fnIsCheckLogin(TypeLogin.MicrosoftSSO, infoLogin, account.idTokenClaims.aio, clickHandler)).then(function () {});
37820
+ } catch (e) {
37821
+ return Promise.reject(e);
37822
+ }
37823
+ };
37824
+
37825
+ var initInformationSSO = function initInformationSSO() {
37826
+ try {
37827
+ var _msalInstance = new PublicClientApplication(msalConfig);
37828
+
37829
+ setMsalInstance(_msalInstance);
37830
+ return Promise.resolve();
37692
37831
  } catch (e) {
37693
37832
  return Promise.reject(e);
37694
37833
  }
37695
37834
  };
37696
37835
 
37836
+ useEffect(function () {
37837
+ var redirectUrl = window.location.href;
37838
+
37839
+ if (!!msalInstance && redirectUrl.includes("code") && redirectUrl.includes("client_info")) {
37840
+ fnLoginSSO();
37841
+ }
37842
+ }, [JSON.stringify(msalInstance)]);
37697
37843
  useEffect(function () {
37698
37844
  getInformationSetting();
37845
+ initInformationSSO();
37699
37846
  }, []);
37700
37847
  return {
37701
37848
  defaultInfo: defaultInfo,
@@ -37707,13 +37854,12 @@ var useLogin = function useLogin() {
37707
37854
  fnIsCheckLogin: fnIsCheckLogin,
37708
37855
  isLoginGoogle: isLoginGoogle,
37709
37856
  infoUser: infoUser,
37710
- setInfoUser: setInfoUser,
37711
37857
  submitLogin: submitLogin,
37712
- setIsLoginGoogle: setIsLoginGoogle,
37713
37858
  googleClientId: googleClientId,
37714
37859
  googleRecaptchaId: googleRecaptchaId,
37715
37860
  handleCancelModelAssign: handleCancelModelAssign,
37716
- openModelAssign: openModelAssign
37861
+ openModelAssign: openModelAssign,
37862
+ fnLoginSSO: fnLoginSSO
37717
37863
  };
37718
37864
  };
37719
37865
 
@@ -37741,8 +37887,7 @@ var BlockSelectTeacher = function BlockSelectTeacher(_ref) {
37741
37887
  openModal = _ref.openModal,
37742
37888
  onSubmit = _ref.onSubmit,
37743
37889
  token = _ref.token,
37744
- email = _ref.email,
37745
- setOpenModal = _ref.setOpenModal;
37890
+ email = _ref.email;
37746
37891
 
37747
37892
  var _useState = useState(false),
37748
37893
  modal = _useState[0],
@@ -37751,12 +37896,6 @@ var BlockSelectTeacher = function BlockSelectTeacher(_ref) {
37751
37896
  useEffect(function () {
37752
37897
  setModal(openModal);
37753
37898
  }, [openModal]);
37754
-
37755
- var toggle = function toggle() {
37756
- setModal(!modal);
37757
- setOpenModal(!modal);
37758
- };
37759
-
37760
37899
  var dispatch = useDispatch();
37761
37900
 
37762
37901
  var _useState2 = useState([]),
@@ -37776,6 +37915,12 @@ var BlockSelectTeacher = function BlockSelectTeacher(_ref) {
37776
37915
  setLoading = _useState5[1];
37777
37916
 
37778
37917
  var timeout = useRef();
37918
+
37919
+ var toggle = function toggle() {
37920
+ setModal(!modal);
37921
+ dispatch(setIsLoginGoogle(!modal));
37922
+ };
37923
+
37779
37924
  var loadData = useCallback(function () {
37780
37925
  try {
37781
37926
  var _temp3 = function _temp3() {
@@ -37884,16 +38029,17 @@ var BlockLogin = function BlockLogin(_ref) {
37884
38029
  setIsShowPassword = _useLogin.setIsShowPassword,
37885
38030
  fnIsCheckLogin = _useLogin.fnIsCheckLogin,
37886
38031
  isLoginGoogle = _useLogin.isLoginGoogle,
37887
- setInfoUser = _useLogin.setInfoUser,
37888
38032
  submitLogin = _useLogin.submitLogin,
37889
38033
  infoUser = _useLogin.infoUser,
37890
- setIsLoginGoogle = _useLogin.setIsLoginGoogle,
37891
- googleClientId = _useLogin.googleClientId;
38034
+ googleClientId = _useLogin.googleClientId,
38035
+ fnLoginSSO = _useLogin.fnLoginSSO;
37892
38036
 
37893
38037
  var togglePasswordVisible = function togglePasswordVisible() {
37894
38038
  return setIsShowPassword(!isShowPassword);
37895
38039
  };
37896
38040
 
38041
+ var dispatch = useDispatch();
38042
+
37897
38043
  var _useGoogleReCaptcha = useGoogleReCaptcha(),
37898
38044
  executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
37899
38045
 
@@ -37927,6 +38073,7 @@ var BlockLogin = function BlockLogin(_ref) {
37927
38073
  return;
37928
38074
  }
37929
38075
 
38076
+ console.log("assss");
37930
38077
  var infoLogin = {
37931
38078
  firstName: givenName,
37932
38079
  lastName: familyName,
@@ -37936,8 +38083,8 @@ var BlockLogin = function BlockLogin(_ref) {
37936
38083
  accessToken: accessToken,
37937
38084
  googleId: googleId
37938
38085
  };
37939
- setInfoUser(infoLogin);
37940
- fnIsCheckLogin(infoLogin, accessToken, clickHandler);
38086
+ dispatch(setInforUserGoogle(infoLogin));
38087
+ fnIsCheckLogin(TypeLogin.Google, infoLogin, accessToken, clickHandler);
37941
38088
  }
37942
38089
  };
37943
38090
 
@@ -38022,6 +38169,15 @@ var BlockLogin = function BlockLogin(_ref) {
38022
38169
  cookiePolicy: 'single_host_origin',
38023
38170
  className: "" + styles["btn-login-google"]
38024
38171
  })), React.createElement("div", {
38172
+ className: styles["btn-login-sso"] + " mb-3"
38173
+ }, React.createElement("div", {
38174
+ className: styles["btn-login-with-sso"],
38175
+ onClick: function onClick() {
38176
+ return fnLoginSSO(clickHandler);
38177
+ }
38178
+ }, React.createElement("img", {
38179
+ src: "images/Single-Sign-On.png"
38180
+ }), " Login with SSO")), React.createElement("div", {
38025
38181
  className: "d-flex justify-content-between"
38026
38182
  }, React.createElement(Link, {
38027
38183
  to: "/forgot-password",
@@ -38044,8 +38200,7 @@ var BlockLogin = function BlockLogin(_ref) {
38044
38200
  },
38045
38201
  openModal: isLoginGoogle,
38046
38202
  token: infoUser.accessToken,
38047
- email: infoUser.email,
38048
- setOpenModal: setIsLoginGoogle
38203
+ email: infoUser.email
38049
38204
  }));
38050
38205
  };
38051
38206
 
@@ -47060,6 +47215,8 @@ var initialState = {
47060
47215
  isEnableSurvey: false,
47061
47216
  isConversationOneToOne: false,
47062
47217
  isSandboxMode: false,
47218
+ isLoginGoogle: false,
47219
+ inforUserGoogle: null,
47063
47220
  language: DEFAULT_LANGUAGE_CODE,
47064
47221
  amplitude: {
47065
47222
  user_id: "",
@@ -47085,6 +47242,10 @@ var commonReducer = createReducer(initialState, function (builder) {
47085
47242
  state.user = action.payload;
47086
47243
  }).addCase(setSidebar, function (state, action) {
47087
47244
  state.sidebarShow = action.payload;
47245
+ }).addCase(setIsLoginGoogle, function (state, action) {
47246
+ state.isLoginGoogle = action.payload;
47247
+ }).addCase(setInforUserGoogle, function (state, action) {
47248
+ state.inforUserGoogle = action.payload;
47088
47249
  }).addCase(setAlert, function (state, action) {
47089
47250
  state.alert = action.payload;
47090
47251
  }).addCase(reset, function (_state, _action) {
@@ -47960,6 +48121,24 @@ var navMobileReducer = createReducer(initialState$B, function (builder) {
47960
48121
  });
47961
48122
  });
47962
48123
 
48124
+ var setWeeklyQuestList = createAction("setWeeklyQuestList");
48125
+ var setOpenModelCongratulation = createAction("setOpenModelCongratulation");
48126
+
48127
+ var initialState$C = {
48128
+ isOpenModelCongratulation: false,
48129
+ lastQuest: undefined,
48130
+ weeklyQuests: []
48131
+ };
48132
+ var weeklyQuestReducer = createReducer(initialState$C, function (builder) {
48133
+ builder.addCase(setWeeklyQuestList, function (state, action) {
48134
+ state.weeklyQuests = action.payload;
48135
+ }).addCase(setOpenModelCongratulation, function (state, action) {
48136
+ state.isOpenModelCongratulation = action.payload;
48137
+ }).addCase(reset, function (_state, _action) {
48138
+ return initialState$C;
48139
+ });
48140
+ });
48141
+
47963
48142
  var rootReducer = combineReducers({
47964
48143
  common: commonReducer,
47965
48144
  classes: classReducer,
@@ -48000,7 +48179,8 @@ var rootReducer = combineReducers({
48000
48179
  widget: widgetReducer,
48001
48180
  bandScores: commonReducer$h,
48002
48181
  schoolBlankDays: commonReducer$i,
48003
- navMobileReducer: navMobileReducer
48182
+ navMobileReducer: navMobileReducer,
48183
+ weeklyQuests: weeklyQuestReducer
48004
48184
  });
48005
48185
 
48006
48186
  var store = configureStore({
@@ -48456,6 +48636,7 @@ var TheLayout = function TheLayout(_ref) {
48456
48636
 
48457
48637
  var resetAuth = function resetAuth() {
48458
48638
  localStorage.removeItem(ACCESS_TOKEN);
48639
+ localStorage.removeItem("ROLES");
48459
48640
  history.push("/");
48460
48641
  };
48461
48642
 
@@ -48483,5 +48664,5 @@ var TheLayout = function TheLayout(_ref) {
48483
48664
 
48484
48665
  var amplitudeClient$1 = amplitude.getInstance();
48485
48666
 
48486
- export { ACCESS_TOKEN, ANSWER_EDITOR_HEIGHT, AcademicClassSelector, AddButton, BASE_URL, CHAT_CHANNEL, CategorySelector, CommonAlert, CommonHeader, CommonModal$1 as CommonModal, CreatableSelector, CustomPagination, CustomSelector, CustomTabs as CustomTab, DATE_FORMAT, DATE_RESULT, DEFAULT_FILTER, DEFAULT_LANGUAGE_CODE, Dashboard, DeleteButtonIcon, DetailActionButtons, EMOTIONS, EditButtonIcon, EmailTemplateDetail, EmailTemplateList, EmptyDataAlert, ErrorHandler, FULL_DATE_RESULT, FaqList, InputFile as FileInput, GOOGLE_RECAPTCHA_KEY, GalleryList, INIT_AMPLITUDE_KEY_PROD, INIT_AMPLITUDE_KEY_STAGE, Images, LANGUAGES, LICENSE_AGGRID, LinkEditButton, Loading, Login, MediaList, NOTIFICATION_ALERT_KEY, NOTIFICATION_CHANNEL, NotFound, NotificationList, NotificationLogoutModal, NotificationModal, QUESTION_TYPES, QUESTION_TYPES_OPTIONS, QuestionCategorySelector, QuestionTypeSelector, QuitPrompt, ReactNotification, RequiredLabel$1 as RequiredLabel, SANDBOX_NOTIFICATION, SUPPORTED_LANGUAGES_CODE, SandboxAlert, SchoolList, ScrollToTop, SearchBox$1 as SearchBox, SearchBoxContainer, SkillList, StarRatingSelector, SuggestionCategorySelector, TAB_COLORS, TINY_MCE_API_KEY, TheContent$1 as TheContent, TheLayout, ToggleButton, UploadFileButton, UserContainer, UserDetail, UserList, addTab, amplitudeClient$1 as amplitudeClient, answerQuestion, answerQuestionDataPlayer, api, apiUpload, canAccess as canAccessRoute, changeNote, changeTags, clearTab, closeTab, debounce, editTab, editorConfig, firstCheckToken, generateRandomString, getCookieValue, getFileUrl, getInfo, getStaticFileUrl, getTextFromHTML, i18n, initAmplitude, isInViewport, isLocalhost, reset, setAlert, setAssessmentList, setAssignmentList, setAssistantList, setBadgeList, setBandScoreList, setCertificateList, setClassList, setConferenceRubricList, setConversationOneToOne, setCurrentStudentId, setCurrentStudentName, setCurrentStudentUserId, setCustomAlertList, setDataPlayer, setEditItemQuesion, setEnableIEP, setEnableSurvey, setFeedbackList, setFilterWidget, setGoalExampleList, setImproveMyClass, setLanguage, setLearningSupportCategoryList, setLoading, setMailCategory, setModal, setMoveItemQuestion, setMyStudent, setQuestionByCategory, setQuestionCateList, setQuestionList, setReflectionList, setReflectionResultList, setResetQuestionList, setSandboxMode, setSchoolBlankDayList, setSelectQuestion, setSemesterList, setSessionPlayer, setSessionTemplateGeneralClassList, setSessionTemplateList, setStartTime, setStrategyList, setStudentIdSelectedByTeacher, setStudentList, setSubjectList, setSuggestionList, setTurnOffPassWhenChangeMode, setTutorialScreenList, setUser, setUserList, showFontSize, showMenuBar, store, systemCertificateUpload, systemStudentBadge, uploadFile, useFilters, useGalleryList, utcToLocalTime };
48667
+ export { ACCESS_TOKEN, ANSWER_EDITOR_HEIGHT, AcademicClassSelector, AddButton, BASE_URL, CHAT_CHANNEL, CategorySelector, CommonAlert, CommonHeader, CommonModal$1 as CommonModal, CreatableSelector, CustomPagination, CustomSelector, CustomTabs as CustomTab, DATE_FORMAT, DATE_RESULT, DEFAULT_FILTER, DEFAULT_LANGUAGE_CODE, Dashboard, DeleteButtonIcon, DetailActionButtons, EMOTIONS, EditButtonIcon, EmailTemplateDetail, EmailTemplateList, EmptyDataAlert, ErrorHandler, FULL_DATE_RESULT, FaqList, InputFile as FileInput, GOOGLE_RECAPTCHA_KEY, GalleryList, INIT_AMPLITUDE_KEY_PROD, INIT_AMPLITUDE_KEY_STAGE, Images, LANGUAGES, LICENSE_AGGRID, LinkEditButton, Loading, Login, MediaList, NOTIFICATION_ALERT_KEY, NOTIFICATION_CHANNEL, NotFound, NotificationList, NotificationLogoutModal, NotificationModal, QUESTION_TYPES, QUESTION_TYPES_OPTIONS, QuestionCategorySelector, QuestionTypeSelector, QuitPrompt, ReactNotification, RequiredLabel$1 as RequiredLabel, SANDBOX_NOTIFICATION, SUPPORTED_LANGUAGES_CODE, SandboxAlert, SchoolList, ScrollToTop, SearchBox$1 as SearchBox, SearchBoxContainer, SkillList, StarRatingSelector, SuggestionCategorySelector, TAB_COLORS, TINY_MCE_API_KEY, TheContent$1 as TheContent, TheLayout, ToggleButton, UploadFileButton, UserContainer, UserDetail, UserList, addTab, amplitudeClient$1 as amplitudeClient, answerQuestion, answerQuestionDataPlayer, api, apiUpload, canAccess as canAccessRoute, changeNote, changeTags, clearTab, closeTab, debounce, editTab, editorConfig, firstCheckToken, generateRandomString, getCookieValue, getFileUrl, getInfo, getStaticFileUrl, getTextFromHTML, i18n, initAmplitude, isInViewport, isLocalhost, reset, setAlert, setAssessmentList, setAssignmentList, setAssistantList, setBadgeList, setBandScoreList, setCertificateList, setClassList, setConferenceRubricList, setConversationOneToOne, setCurrentStudentId, setCurrentStudentName, setCurrentStudentUserId, setCustomAlertList, setDataPlayer, setEditItemQuesion, setEnableIEP, setEnableSurvey, setFeedbackList, setFilterWidget, setGoalExampleList, setImproveMyClass, setLanguage, setLearningSupportCategoryList, setLoading, setMailCategory, setModal, setMoveItemQuestion, setMyStudent, setOpenModelCongratulation, setQuestionByCategory, setQuestionCateList, setQuestionList, setReflectionList, setReflectionResultList, setResetQuestionList, setSandboxMode, setSchoolBlankDayList, setSelectQuestion, setSemesterList, setSessionPlayer, setSessionTemplateGeneralClassList, setSessionTemplateList, setStartTime, setStrategyList, setStudentIdSelectedByTeacher, setStudentList, setSubjectList, setSuggestionList, setTurnOffPassWhenChangeMode, setTutorialScreenList, setUser, setUserList, setWeeklyQuestList, showFontSize, showMenuBar, store, systemCertificateUpload, systemStudentBadge, uploadFile, useFilters, useGalleryList, utcToLocalTime };
48487
48668
  //# sourceMappingURL=index.modern.js.map