touchstudy-core 0.1.166 → 0.1.167

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.
Files changed (24) hide show
  1. package/dist/components/Dialogs/CommonDialog.d.ts +1 -0
  2. package/dist/components/Selectors/QuestionCountSelector.d.ts +0 -1
  3. package/dist/containers/ExamResult/configs/types.d.ts +2 -0
  4. package/dist/containers/ExamResult/hooks/useExamResultData.d.ts +1 -0
  5. package/dist/containers/PreparedTextbook/configs/constants.d.ts +0 -1
  6. package/dist/containers/StudentInfoDrawer/apiClients/courseService.d.ts +2 -1
  7. package/dist/containers/StudentInfoDrawer/components/Attendance/AttedanceFormDialog.d.ts +13 -0
  8. package/dist/containers/StudentInfoDrawer/components/Attendance/AttendanceCourseTable.d.ts +2 -3
  9. package/dist/containers/StudentInfoDrawer/components/Attendance/AttendanceFormBody.d.ts +11 -0
  10. package/dist/containers/StudentInfoDrawer/components/Attendance/AttendanceFormDialog.d.ts +13 -0
  11. package/dist/containers/StudentInfoDrawer/components/Attendance/CourseAttendanceItem.d.ts +2 -3
  12. package/dist/containers/StudentInfoDrawer/components/Attendance/DrawerAttendanceTab.d.ts +5 -1
  13. package/dist/containers/StudentInfoDrawer/components/Attendance/LessonTooltip.d.ts +2 -1
  14. package/dist/containers/StudentInfoDrawer/configs/fns.d.ts +2 -2
  15. package/dist/containers/StudentInfoDrawer/configs/interfaces.d.ts +3 -3
  16. package/dist/containers/StudentInfoDrawer/configs/types.d.ts +16 -2
  17. package/dist/containers/StudentInfoDrawer/hooks/useDrawerAttendanceTab.d.ts +6 -3
  18. package/dist/containers/StudentInfoDrawer/index.d.ts +5 -1
  19. package/dist/index.css +8 -0
  20. package/dist/index.js +833 -599
  21. package/dist/index.js.map +1 -1
  22. package/dist/index.modern.js +827 -595
  23. package/dist/index.modern.js.map +1 -1
  24. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -30,7 +30,7 @@ var formik = require('formik');
30
30
  var tinymce = _interopDefault(require('tinymce'));
31
31
  require('@wiris/mathtype-tinymce6');
32
32
  var tinymceReact = require('@tinymce/tinymce-react');
33
- var styles$c = require('@mui/material/styles');
33
+ var styles$d = require('@mui/material/styles');
34
34
  var Grid = _interopDefault(require('@mui/material/Grid'));
35
35
  var Typography = _interopDefault(require('@mui/material/Typography'));
36
36
  var Card = _interopDefault(require('@mui/material/Card'));
@@ -52,6 +52,7 @@ var Box = _interopDefault(require('@mui/material/Box'));
52
52
  var LocalizationProvider = require('@mui/x-date-pickers/LocalizationProvider');
53
53
  var DatePicker = require('@mui/x-date-pickers/DatePicker');
54
54
  var fa6 = require('react-icons/fa6');
55
+ var cg = require('react-icons/cg');
55
56
  var DialogTitle = _interopDefault(require('@mui/material/DialogTitle'));
56
57
  var DialogContent = _interopDefault(require('@mui/material/DialogContent'));
57
58
  var DialogActions = _interopDefault(require('@mui/material/DialogActions'));
@@ -1503,6 +1504,11 @@ var removedteacherfromclass = "교사 수업 제거";
1503
1504
  var addedstudenttoclass = "학생 수업 추가";
1504
1505
  var removedstudentfromclass = "학생 수업 제거";
1505
1506
  var hidden = "숨겨진";
1507
+ var current_status = "현재 상태";
1508
+ var next_status = "다음 상태";
1509
+ var arrival_time = "도착 시간";
1510
+ var current_arrival_time = "현재 도착 시간";
1511
+ var uppdate_attendance = "출석 현황 수정";
1506
1512
  var lang_ko = {
1507
1513
  problem_solving: problem_solving,
1508
1514
  my_story: my_story,
@@ -2643,7 +2649,12 @@ var lang_ko = {
2643
2649
  removedteacherfromclass: removedteacherfromclass,
2644
2650
  addedstudenttoclass: addedstudenttoclass,
2645
2651
  removedstudentfromclass: removedstudentfromclass,
2646
- hidden: hidden
2652
+ hidden: hidden,
2653
+ current_status: current_status,
2654
+ next_status: next_status,
2655
+ arrival_time: arrival_time,
2656
+ current_arrival_time: current_arrival_time,
2657
+ uppdate_attendance: uppdate_attendance
2647
2658
  };
2648
2659
 
2649
2660
  var problem_solving$1 = "Problem Solving";
@@ -3807,6 +3818,11 @@ var removedteacherfromclass$1 = "Removed teacher from class";
3807
3818
  var addedstudenttoclass$1 = "Added student to class";
3808
3819
  var removedstudentfromclass$1 = "Removed student from class";
3809
3820
  var hidden$1 = "Hidden";
3821
+ var current_status$1 = "Current status";
3822
+ var next_status$1 = "Next status";
3823
+ var arrival_time$1 = "Arrival time";
3824
+ var current_arrival_time$1 = "Current arrival time";
3825
+ var uppdate_attendance$1 = "Update attendance";
3810
3826
  var lang_en = {
3811
3827
  problem_solving: problem_solving$1,
3812
3828
  my_story: my_story$1,
@@ -4949,7 +4965,12 @@ var lang_en = {
4949
4965
  removedteacherfromclass: removedteacherfromclass$1,
4950
4966
  addedstudenttoclass: addedstudenttoclass$1,
4951
4967
  removedstudentfromclass: removedstudentfromclass$1,
4952
- hidden: hidden$1
4968
+ hidden: hidden$1,
4969
+ current_status: current_status$1,
4970
+ next_status: next_status$1,
4971
+ arrival_time: arrival_time$1,
4972
+ current_arrival_time: current_arrival_time$1,
4973
+ uppdate_attendance: uppdate_attendance$1
4953
4974
  };
4954
4975
 
4955
4976
  i18n__default.use(reactI18next.initReactI18next).init({
@@ -5549,6 +5570,8 @@ var CommonDialog = function CommonDialog(_ref) {
5549
5570
  isShowHeader = _ref$isShowHeader === void 0 ? true : _ref$isShowHeader,
5550
5571
  titleClassName = _ref.titleClassName,
5551
5572
  minWidth = _ref.minWidth,
5573
+ _ref$zIndex = _ref.zIndex,
5574
+ zIndex = _ref$zIndex === void 0 ? 1102 : _ref$zIndex,
5552
5575
  onClose = _ref.onClose;
5553
5576
  return React__default.createElement(material.Dialog, {
5554
5577
  open: open,
@@ -5557,7 +5580,7 @@ var CommonDialog = function CommonDialog(_ref) {
5557
5580
  fullWidth: true,
5558
5581
  scroll: "body",
5559
5582
  sx: {
5560
- zIndex: 1102
5583
+ zIndex: zIndex
5561
5584
  },
5562
5585
  PaperProps: {
5563
5586
  sx: {
@@ -6165,7 +6188,7 @@ var SCORE_OPTIONS = Array.from({
6165
6188
  return i + 1;
6166
6189
  });
6167
6190
  var QUESTION_OPTIONS = Array.from({
6168
- length: 10
6191
+ length: 40
6169
6192
  }, function (_, i) {
6170
6193
  return i + 1;
6171
6194
  });
@@ -7713,22 +7736,10 @@ var QuestionCountSelector = function QuestionCountSelector(_ref) {
7713
7736
  value = _ref.value,
7714
7737
  onChange = _ref.onChange,
7715
7738
  isDisabled = _ref.isDisabled,
7716
- rest = _ref.rest,
7717
- totalQuestions = _ref.totalQuestions;
7739
+ rest = _ref.rest;
7718
7740
  var _useTranslation = reactI18next.useTranslation(),
7719
7741
  t = _useTranslation.t;
7720
- var questionOptions = totalQuestions && totalQuestions > 1 ? Array.from({
7721
- length: totalQuestions
7722
- }, function (_, i) {
7723
- return i + 1;
7724
- }).map(function (i) {
7725
- return {
7726
- label: t("question_count_format", {
7727
- number: i
7728
- }),
7729
- value: i
7730
- };
7731
- }) : QUESTION_OPTIONS.map(function (i) {
7742
+ var questionOptions = QUESTION_OPTIONS.map(function (i) {
7732
7743
  return {
7733
7744
  label: t("question_count_format", {
7734
7745
  number: i
@@ -10029,11 +10040,11 @@ var common = {
10029
10040
  white: '#FFFFFF'
10030
10041
  };
10031
10042
  var action$2 = {
10032
- hover: styles$c.alpha(grey[500], 0.08),
10033
- selected: styles$c.alpha(grey[500], 0.16),
10034
- disabled: styles$c.alpha(grey[500], 0.8),
10035
- disabledBackground: styles$c.alpha(grey[500], 0.24),
10036
- focus: styles$c.alpha(grey[500], 0.24),
10043
+ hover: styles$d.alpha(grey[500], 0.08),
10044
+ selected: styles$d.alpha(grey[500], 0.16),
10045
+ disabled: styles$d.alpha(grey[500], 0.8),
10046
+ disabledBackground: styles$d.alpha(grey[500], 0.24),
10047
+ focus: styles$d.alpha(grey[500], 0.24),
10037
10048
  hoverOpacity: 0.08,
10038
10049
  disabledOpacity: 0.48
10039
10050
  };
@@ -10053,7 +10064,7 @@ var base = {
10053
10064
  purple: purple,
10054
10065
  dark_purple: dark_purple,
10055
10066
  dark_red: dark_red,
10056
- divider: styles$c.alpha(grey[500], 0.2),
10067
+ divider: styles$d.alpha(grey[500], 0.2),
10057
10068
  action: action$2
10058
10069
  };
10059
10070
 
@@ -13308,6 +13319,8 @@ var SortIcon = function SortIcon(_ref) {
13308
13319
  }));
13309
13320
  };
13310
13321
 
13322
+ var styles$3 = {"date-picker":"_2YMvj","time-picker":"_3exYU"};
13323
+
13311
13324
  var DrawerTab;
13312
13325
  (function (DrawerTab) {
13313
13326
  DrawerTab[DrawerTab["Attendance"] = 0] = "Attendance";
@@ -13323,6 +13336,437 @@ var StudentAttendanceStatus;
13323
13336
  StudentAttendanceStatus[StudentAttendanceStatus["Late"] = 2] = "Late";
13324
13337
  })(StudentAttendanceStatus || (StudentAttendanceStatus = {}));
13325
13338
 
13339
+ var formatGrade = function formatGrade(grade, t, language) {
13340
+ return grade ? language === exports.Language.en ? "" + grade + getOrdinalSuffix(grade, language) : "" + t("number_grade", {
13341
+ number: grade
13342
+ }) : "";
13343
+ };
13344
+ var formatLessonOrder = function formatLessonOrder(index, t, language) {
13345
+ return language === exports.Language.en ? "" + (index + 1) + getOrdinalSuffix(index + 1, language) : "" + t("round", {
13346
+ number: index + 1
13347
+ });
13348
+ };
13349
+ var formatTime$1 = function formatTime(t, timeInMilliseconds) {
13350
+ var hours = Math.floor(timeInMilliseconds / 3600000);
13351
+ var minutes = Math.floor(timeInMilliseconds % 3600000 / 60000);
13352
+ var seconds = Math.floor(timeInMilliseconds % 60000 / 1000);
13353
+ return timeInMilliseconds < 60 ? "" + timeInMilliseconds + t("seconds") : t("hours_mins_seconds", {
13354
+ hours: hours,
13355
+ mins: minutes,
13356
+ seconds: seconds
13357
+ });
13358
+ };
13359
+ var a11yProps = function a11yProps(index) {
13360
+ return {
13361
+ id: "info-tab-" + index,
13362
+ "aria-controls": "info-tabpanel-" + index,
13363
+ sx: {
13364
+ position: "relative",
13365
+ fontSize: "13px",
13366
+ fontWeight: 700,
13367
+ padding: "12px 16px",
13368
+ color: grey[500],
13369
+ mx: "8px",
13370
+ "&::after": {
13371
+ content: "''",
13372
+ position: "absolute",
13373
+ bottom: 0,
13374
+ left: 0,
13375
+ width: "100%",
13376
+ height: "1px",
13377
+ backgroundColor: grey[500]
13378
+ }
13379
+ }
13380
+ };
13381
+ };
13382
+ var subtractTime = function subtractTime(time1, time2, t) {
13383
+ var hoursDiff = time1.diff(time2, "hours", false);
13384
+ var minutesDiff = time1.diff(time2, "minutes", false) - hoursDiff * 60;
13385
+ if (hoursDiff < 0) {
13386
+ hoursDiff += 24;
13387
+ }
13388
+ if (minutesDiff < 0) {
13389
+ minutesDiff += 60;
13390
+ }
13391
+ if (hoursDiff === 0) {
13392
+ return minutesDiff + " " + t("minute");
13393
+ }
13394
+ if (minutesDiff === 0) {
13395
+ return "" + (hoursDiff > 1 ? t("hours") : t("hour"));
13396
+ }
13397
+ return hoursDiff + " " + (hoursDiff > 1 ? t("hours") : t("hour")) + " " + minutesDiff + " " + t("minute");
13398
+ };
13399
+
13400
+ var CalendarFill = function CalendarFill(_ref) {
13401
+ var _ref$width = _ref.width,
13402
+ width = _ref$width === void 0 ? "16" : _ref$width,
13403
+ _ref$height = _ref.height,
13404
+ height = _ref$height === void 0 ? "16" : _ref$height,
13405
+ color = _ref.color;
13406
+ return React__default.createElement("svg", {
13407
+ width: width,
13408
+ height: height,
13409
+ fill: color,
13410
+ viewBox: "0 0 16 16",
13411
+ xmlns: "http://www.w3.org/2000/svg"
13412
+ }, React__default.createElement("path", {
13413
+ d: "M15 3.99998C15 3.46955 14.7893 2.96084 14.4142 2.58577C14.0391 2.2107 13.5304 1.99998 13 1.99998H12.5V1.51405C12.5 1.24498 12.2931 1.01405 12.0241 1.00061C11.9565 0.997353 11.8889 1.00785 11.8255 1.03148C11.762 1.05511 11.7041 1.09136 11.6551 1.13805C11.6061 1.18475 11.5671 1.2409 11.5404 1.30311C11.5138 1.36532 11.5 1.4323 11.5 1.49998V1.99998H4.5V1.51405C4.5 1.24498 4.29313 1.01405 4.02406 1.00061C3.95646 0.997353 3.8889 1.00785 3.82547 1.03148C3.76204 1.05511 3.70407 1.09136 3.65508 1.13805C3.60608 1.18475 3.56707 1.2409 3.54041 1.30311C3.51375 1.36532 3.50001 1.4323 3.5 1.49998V1.99998H3C2.46957 1.99998 1.96086 2.2107 1.58579 2.58577C1.21071 2.96084 1 3.46955 1 3.99998V4.37498C1 4.40814 1.01317 4.43993 1.03661 4.46337C1.06005 4.48682 1.09185 4.49998 1.125 4.49998H14.875C14.9082 4.49998 14.9399 4.48682 14.9634 4.46337C14.9868 4.43993 15 4.40814 15 4.37498V3.99998Z",
13414
+ fill: "#97A1AF"
13415
+ }), React__default.createElement("path", {
13416
+ d: "M1 13C1 13.5304 1.21071 14.0391 1.58579 14.4142C1.96086 14.7893 2.46957 15 3 15H13C13.5304 15 14.0391 14.7893 14.4142 14.4142C14.7893 14.0391 15 13.5304 15 13V5.625C15 5.59185 14.9868 5.56005 14.9634 5.53661C14.9399 5.51317 14.9082 5.5 14.875 5.5H1.125C1.09185 5.5 1.06005 5.51317 1.03661 5.53661C1.01317 5.56005 1 5.59185 1 5.625V13Z",
13417
+ fill: "#97A1AF"
13418
+ }));
13419
+ };
13420
+
13421
+ var ClockFill = function ClockFill(_ref) {
13422
+ var _ref$width = _ref.width,
13423
+ width = _ref$width === void 0 ? "16" : _ref$width,
13424
+ _ref$height = _ref.height,
13425
+ height = _ref$height === void 0 ? "16" : _ref$height,
13426
+ color = _ref.color;
13427
+ return React__default.createElement("svg", {
13428
+ width: width,
13429
+ height: height,
13430
+ fill: color,
13431
+ viewBox: "0 0 14 14",
13432
+ xmlns: "http://www.w3.org/2000/svg"
13433
+ }, React__default.createElement("path", {
13434
+ d: "M7 0.25C3.41031 0.25 0.5 3.16031 0.5 6.75C0.5 10.3397 3.41031 13.25 7 13.25C10.5897 13.25 13.5 10.3397 13.5 6.75C13.5 3.16031 10.5897 0.25 7 0.25ZM10 7.75H7C6.86739 7.75 6.74021 7.69732 6.64645 7.60355C6.55268 7.50979 6.5 7.38261 6.5 7.25V2.75C6.5 2.61739 6.55268 2.49021 6.64645 2.39645C6.74021 2.30268 6.86739 2.25 7 2.25C7.13261 2.25 7.25979 2.30268 7.35355 2.39645C7.44732 2.49021 7.5 2.61739 7.5 2.75V6.75H10C10.1326 6.75 10.2598 6.80268 10.3536 6.89645C10.4473 6.99021 10.5 7.11739 10.5 7.25C10.5 7.38261 10.4473 7.50979 10.3536 7.60355C10.2598 7.69732 10.1326 7.75 10 7.75Z",
13435
+ fill: "#97A1AF"
13436
+ }));
13437
+ };
13438
+
13439
+ var CheckedCircleFill = function CheckedCircleFill(_ref) {
13440
+ var _ref$width = _ref.width,
13441
+ width = _ref$width === void 0 ? "16" : _ref$width,
13442
+ _ref$height = _ref.height,
13443
+ height = _ref$height === void 0 ? "17" : _ref$height,
13444
+ color = _ref.color;
13445
+ return React__default.createElement("svg", {
13446
+ width: width,
13447
+ height: height,
13448
+ fill: color,
13449
+ viewBox: "0 0 16 17",
13450
+ xmlns: "http://www.w3.org/2000/svg"
13451
+ }, React__default.createElement("path", {
13452
+ d: "M8 1.75C4.41594 1.75 1.5 4.66594 1.5 8.25C1.5 11.8341 4.41594 14.75 8 14.75C11.5841 14.75 14.5 11.8341 14.5 8.25C14.5 4.66594 11.5841 1.75 8 1.75ZM11.3828 6.07156L7.18281 11.0716C7.13674 11.1264 7.07941 11.1708 7.01471 11.2016C6.95001 11.2323 6.87945 11.2489 6.80781 11.25H6.79938C6.72929 11.25 6.66 11.2352 6.59599 11.2067C6.53198 11.1782 6.47468 11.1365 6.42781 11.0844L4.62781 9.08438C4.5821 9.03589 4.54654 8.97876 4.52322 8.91633C4.4999 8.85391 4.4893 8.78745 4.49203 8.72087C4.49477 8.65429 4.51078 8.58892 4.53914 8.52862C4.56749 8.46831 4.60761 8.41429 4.65715 8.36971C4.70668 8.32514 4.76463 8.29091 4.82757 8.26905C4.89052 8.24719 4.95721 8.23813 5.02371 8.2424C5.09021 8.24668 5.15518 8.26421 5.21481 8.29396C5.27444 8.3237 5.32752 8.36507 5.37094 8.41562L6.78625 9.98812L10.6172 5.42844C10.7031 5.32909 10.8247 5.26754 10.9556 5.25711C11.0866 5.24668 11.2164 5.28819 11.317 5.37268C11.4175 5.45717 11.4808 5.57784 11.4931 5.70862C11.5055 5.8394 11.4658 5.96977 11.3828 6.07156Z",
13453
+ fill: "#97A1AF"
13454
+ }));
13455
+ };
13456
+
13457
+ var IconPerson = function IconPerson(_ref) {
13458
+ var _ref$width = _ref.width,
13459
+ width = _ref$width === void 0 ? "16" : _ref$width,
13460
+ _ref$height = _ref.height,
13461
+ height = _ref$height === void 0 ? "16" : _ref$height,
13462
+ color = _ref.color;
13463
+ return React__default.createElement("svg", {
13464
+ width: width,
13465
+ height: height,
13466
+ fill: color,
13467
+ viewBox: "0 0 16 16",
13468
+ xmlns: "http://www.w3.org/2000/svg"
13469
+ }, React__default.createElement("path", {
13470
+ d: "M10.395 2.01813C9.78691 1.36156 8.93753 1 8.00003 1C7.05753 1 6.20534 1.35937 5.60003 2.01187C4.98815 2.67156 4.69003 3.56813 4.76003 4.53625C4.89878 6.44625 6.35222 8 8.00003 8C9.64784 8 11.0988 6.44656 11.2397 4.53687C11.3107 3.5775 11.0107 2.68281 10.395 2.01813Z",
13471
+ fill: "#97A1AF"
13472
+ }), React__default.createElement("path", {
13473
+ d: "M13.4999 15H2.49993C2.35595 15.0019 2.21337 14.9716 2.08255 14.9115C1.95173 14.8513 1.83597 14.7627 1.74368 14.6522C1.54056 14.4094 1.45868 14.0778 1.51931 13.7425C1.78306 12.2794 2.60618 11.0503 3.89993 10.1875C5.04931 9.42156 6.50525 9 7.99993 9C9.49462 9 10.9506 9.42188 12.0999 10.1875C13.3937 11.05 14.2168 12.2791 14.4806 13.7422C14.5412 14.0775 14.4593 14.4091 14.2562 14.6519C14.1639 14.7625 14.0482 14.8511 13.9174 14.9113C13.7865 14.9715 13.6439 15.0018 13.4999 15Z",
13474
+ fill: "#97A1AF"
13475
+ }));
13476
+ };
13477
+
13478
+ var LessonTooltip = function LessonTooltip(_ref) {
13479
+ var _startTime$format, _endTime$format;
13480
+ var lesson = _ref.lesson,
13481
+ lessonAttendance = _ref.lessonAttendance,
13482
+ _ref$padding = _ref.padding,
13483
+ padding = _ref$padding === void 0 ? "16px" : _ref$padding;
13484
+ var _useTranslation = reactI18next.useTranslation(),
13485
+ t = _useTranslation.t;
13486
+ var endTime = timeSpanToLocalMoment(lesson.endTime, lesson.date);
13487
+ var startTime = timeSpanToLocalMoment(lesson.startTime, lesson.date);
13488
+ return React__default.createElement(material.Stack, {
13489
+ padding: padding
13490
+ }, React__default.createElement(material.Stack, {
13491
+ gap: "20px"
13492
+ }, React__default.createElement(material.Typography, {
13493
+ sx: {
13494
+ color: grey[700]
13495
+ }
13496
+ }, lesson.courseName), React__default.createElement(material.Stack, {
13497
+ display: "flex",
13498
+ flexDirection: "row",
13499
+ justifyContent: "space-between",
13500
+ gap: "20px"
13501
+ }, React__default.createElement(material.Box, {
13502
+ display: "flex",
13503
+ flexDirection: "row",
13504
+ gap: "4px"
13505
+ }, React__default.createElement(CalendarFill, null), React__default.createElement(material.Typography, {
13506
+ sx: {
13507
+ color: grey[500],
13508
+ fontSize: "13px",
13509
+ fontWeight: "600",
13510
+ whiteSpace: "nowrap"
13511
+ }
13512
+ }, t("class_date"))), React__default.createElement(material.Typography, {
13513
+ sx: {
13514
+ color: grey[700],
13515
+ fontSize: "14px",
13516
+ fontWeight: "600"
13517
+ }
13518
+ }, t("" + moment(lesson === null || lesson === void 0 ? void 0 : lesson.date).format(t("date_format"))))), React__default.createElement(material.Stack, {
13519
+ display: "flex",
13520
+ flexDirection: "row",
13521
+ justifyContent: "space-between",
13522
+ gap: "20px"
13523
+ }, React__default.createElement(material.Stack, {
13524
+ display: "flex",
13525
+ flexDirection: "row",
13526
+ gap: "4px"
13527
+ }, React__default.createElement(ClockFill, null), React__default.createElement(material.Typography, {
13528
+ sx: {
13529
+ color: grey[500],
13530
+ fontSize: "13px",
13531
+ fontWeight: "600",
13532
+ whiteSpace: "nowrap"
13533
+ }
13534
+ }, t("class_time"))), React__default.createElement(material.Typography, {
13535
+ sx: {
13536
+ color: grey[700],
13537
+ fontSize: "14px",
13538
+ fontWeight: "600"
13539
+ }
13540
+ }, ((_startTime$format = startTime === null || startTime === void 0 ? void 0 : startTime.format("HH:mm")) != null ? _startTime$format : "HH:mm") + " : " + ((_endTime$format = endTime === null || endTime === void 0 ? void 0 : endTime.format("HH:mm")) != null ? _endTime$format : "HH:mm") + " (" + (startTime && endTime && subtractTime(startTime, endTime, t)) + ")")), React__default.createElement(material.Stack, {
13541
+ display: "flex",
13542
+ flexDirection: "row",
13543
+ justifyContent: "space-between",
13544
+ gap: "20px"
13545
+ }, React__default.createElement(material.Stack, {
13546
+ display: "flex",
13547
+ flexDirection: "row",
13548
+ gap: "4px"
13549
+ }, React__default.createElement(CheckedCircleFill, null), React__default.createElement(material.Typography, {
13550
+ sx: {
13551
+ color: grey[500],
13552
+ fontSize: "13px",
13553
+ fontWeight: "600",
13554
+ whiteSpace: "nowrap"
13555
+ }
13556
+ }, t("attendance"))), React__default.createElement(material.Typography, {
13557
+ sx: {
13558
+ color: grey[700],
13559
+ fontSize: "14px",
13560
+ fontWeight: "600"
13561
+ }
13562
+ }, (lessonAttendance === null || lessonAttendance === void 0 ? void 0 : lessonAttendance.status) === StudentAttendanceStatus.Late ? t("late") : (lessonAttendance === null || lessonAttendance === void 0 ? void 0 : lessonAttendance.status) === StudentAttendanceStatus.Attended ? t("attendance") : t("none_attendance"))), React__default.createElement(material.Stack, {
13563
+ display: "flex",
13564
+ flexDirection: "row",
13565
+ justifyContent: "space-between",
13566
+ gap: "20px"
13567
+ }, React__default.createElement(material.Stack, {
13568
+ display: "flex",
13569
+ flexDirection: "row",
13570
+ gap: "4px"
13571
+ }, React__default.createElement(IconPerson, null), React__default.createElement(material.Typography, {
13572
+ sx: {
13573
+ color: grey[500],
13574
+ fontSize: "13px",
13575
+ fontWeight: "600",
13576
+ whiteSpace: "nowrap"
13577
+ }
13578
+ }, t("teacher_in_charge"))), React__default.createElement(material.Typography, {
13579
+ sx: {
13580
+ color: grey[700],
13581
+ fontSize: "14px",
13582
+ fontWeight: "600"
13583
+ }
13584
+ }, lesson === null || lesson === void 0 ? void 0 : lesson.mainTeacherName))));
13585
+ };
13586
+
13587
+ var AttendanceFormBody = function AttendanceFormBody(_ref) {
13588
+ var _timeSpanToLocalMomen, _values$attendanceTim;
13589
+ var formikProp = _ref.formikProp,
13590
+ lesson = _ref.lesson,
13591
+ attendance = _ref.attendance,
13592
+ onClose = _ref.onClose;
13593
+ var values = formikProp.values,
13594
+ setFieldValue = formikProp.setFieldValue;
13595
+ var _useTranslation = reactI18next.useTranslation(),
13596
+ t = _useTranslation.t;
13597
+ var _useState = React.useState(""),
13598
+ openPicker = _useState[0],
13599
+ setOpenPicker = _useState[1];
13600
+ var maxTime = timeSpanToLocalMoment(lesson.endTime, lesson.date);
13601
+ var minTime = (_timeSpanToLocalMomen = timeSpanToLocalMoment(lesson.startTime, lesson.date)) === null || _timeSpanToLocalMomen === void 0 ? void 0 : _timeSpanToLocalMomen.add("minutes", -30);
13602
+ var handleChangeStatus = function handleChangeStatus() {
13603
+ if (values.status === StudentAttendanceStatus.Attended) setFieldValue("status", StudentAttendanceStatus.Late);else setFieldValue("status", StudentAttendanceStatus.Attended);
13604
+ };
13605
+ return React__default.createElement(React.Fragment, null, React__default.createElement(material.DialogContent, {
13606
+ sx: {
13607
+ overflowY: "unset"
13608
+ }
13609
+ }, React__default.createElement(material.Stack, {
13610
+ direction: "column",
13611
+ spacing: 1
13612
+ }, React__default.createElement(LessonTooltip, {
13613
+ lesson: lesson,
13614
+ lessonAttendance: attendance,
13615
+ padding: 0
13616
+ }), React__default.createElement(material.Divider, null), React__default.createElement(material.Stack, {
13617
+ direction: "row",
13618
+ gap: 2,
13619
+ justifyContent: "space-between",
13620
+ alignItems: "center",
13621
+ width: "100%"
13622
+ }, React__default.createElement(material.Box, null, React__default.createElement(material.Typography, {
13623
+ sx: {
13624
+ color: grey[500],
13625
+ fontSize: "13px",
13626
+ fontWeight: "600",
13627
+ whiteSpace: "nowrap"
13628
+ }
13629
+ }, t("current_status")), React__default.createElement(material.Typography, {
13630
+ sx: {
13631
+ color: green[700],
13632
+ fontSize: "14px",
13633
+ fontWeight: "600"
13634
+ }
13635
+ }, (attendance === null || attendance === void 0 ? void 0 : attendance.status) === StudentAttendanceStatus.Late ? t("late") : (attendance === null || attendance === void 0 ? void 0 : attendance.status) === StudentAttendanceStatus.Attended ? t("attendance") : t("none_attendance"))), React__default.createElement(cg.CgArrowsExchange, {
13636
+ size: 24,
13637
+ color: green[700]
13638
+ }), React__default.createElement(material.Stack, {
13639
+ direction: "row"
13640
+ }, React__default.createElement(material.Stack, {
13641
+ direction: "column"
13642
+ }, React__default.createElement(material.Typography, {
13643
+ sx: {
13644
+ color: grey[500],
13645
+ fontSize: "13px",
13646
+ fontWeight: "600",
13647
+ whiteSpace: "nowrap"
13648
+ }
13649
+ }, t("next_status")), React__default.createElement(material.Typography, {
13650
+ sx: {
13651
+ color: grey[700],
13652
+ fontSize: "14px",
13653
+ fontWeight: "600"
13654
+ }
13655
+ }, values.status === StudentAttendanceStatus.Late ? t("late") : values.status === StudentAttendanceStatus.Attended ? t("attendance") : t("none_attendance"))), React__default.createElement(material.IconButton, {
13656
+ onClick: handleChangeStatus
13657
+ }, React__default.createElement(io.IoMdSync, {
13658
+ size: 24,
13659
+ color: green[700]
13660
+ })))), !!(attendance !== null && attendance !== void 0 && attendance.attendanceTime) && (attendance === null || attendance === void 0 ? void 0 : attendance.attendanceTime) !== DATE_TIME_MIN_VALUE && React__default.createElement(material.Box, null, React__default.createElement(material.Typography, {
13661
+ sx: {
13662
+ color: grey[500],
13663
+ fontSize: "13px",
13664
+ fontWeight: "600",
13665
+ whiteSpace: "nowrap"
13666
+ }
13667
+ }, t("current_arrival_time")), React__default.createElement(material.Typography, null, utcToLocalTime(attendance.attendanceTime, t("date_time_format")))), values.status !== StudentAttendanceStatus.Absent && React__default.createElement(material.Box, null, React__default.createElement("label", null, t("arrival_time")), React__default.createElement(LocalizationProvider.LocalizationProvider, {
13668
+ dateAdapter: AdapterMoment.AdapterMoment
13669
+ }, React__default.createElement(demo.DemoContainer, {
13670
+ components: ["TimePicker"]
13671
+ }, React__default.createElement(xDatePickers.TimePicker, {
13672
+ open: openPicker === "attendanceTime",
13673
+ value: (_values$attendanceTim = values.attendanceTime) != null ? _values$attendanceTim : null,
13674
+ format: "HH:mm",
13675
+ maxTime: maxTime,
13676
+ minTime: minTime,
13677
+ onChange: function onChange(newValue) {
13678
+ setFieldValue("attendanceTime", newValue);
13679
+ },
13680
+ timezone: "system",
13681
+ className: styles$3["time-picker"] + " w-100",
13682
+ slotProps: {
13683
+ textField: {
13684
+ onClick: function onClick() {
13685
+ return setOpenPicker("attendanceTime");
13686
+ }
13687
+ }
13688
+ },
13689
+ closeOnSelect: false,
13690
+ onOpen: function onOpen() {
13691
+ return setOpenPicker("attendanceTime");
13692
+ },
13693
+ onClose: function onClose() {
13694
+ return setOpenPicker("");
13695
+ },
13696
+ ampm: false
13697
+ })))))), React__default.createElement(material.DialogActions, null, React__default.createElement(material.Button, {
13698
+ variant: "contained",
13699
+ className: "bg-secondary mb-2 text-capitalize",
13700
+ onClick: onClose
13701
+ }, t("cancel")), React__default.createElement(material.Button, {
13702
+ variant: "contained",
13703
+ color: "primary",
13704
+ className: "mb-2 me-2 text-capitalize",
13705
+ onClick: function onClick() {
13706
+ return formikProp.handleSubmit();
13707
+ }
13708
+ }, t("continue"))));
13709
+ };
13710
+
13711
+ var AttendanceFormDialog = function AttendanceFormDialog(_ref) {
13712
+ var lesson = _ref.lesson,
13713
+ studentId = _ref.studentId,
13714
+ attendance = _ref.attendance,
13715
+ open = _ref.open,
13716
+ _ref$zIndex = _ref.zIndex,
13717
+ zIndex = _ref$zIndex === void 0 ? 1300 : _ref$zIndex,
13718
+ onClose = _ref.onClose,
13719
+ onSubmit = _ref.onSubmit;
13720
+ var _useTranslation = reactI18next.useTranslation(),
13721
+ t = _useTranslation.t;
13722
+ var convertAttendanceRequest = function convertAttendanceRequest() {
13723
+ return {
13724
+ studentId: studentId,
13725
+ attendanceTime: attendance !== null && attendance !== void 0 && attendance.attendanceTime && attendance.attendanceTime !== DATE_TIME_MIN_VALUE ? moment.utc(attendance.attendanceTime).local() : undefined,
13726
+ status: (attendance === null || attendance === void 0 ? void 0 : attendance.status) === StudentAttendanceStatus.Attended ? StudentAttendanceStatus.Late : (attendance === null || attendance === void 0 ? void 0 : attendance.status) === StudentAttendanceStatus.Late ? StudentAttendanceStatus.Absent : StudentAttendanceStatus.Attended
13727
+ };
13728
+ };
13729
+ var attendanceRequest = React.useMemo(convertAttendanceRequest, [attendance === null || attendance === void 0 ? void 0 : attendance.attendanceTime, studentId]);
13730
+ var handleSubmit = function handleSubmit(values, _) {
13731
+ try {
13732
+ if (!lesson) return Promise.resolve();
13733
+ var attendanceTime = undefined;
13734
+ if (values.attendanceTime) {
13735
+ var minTime = timeSpanToLocalMoment(lesson.startTime, lesson.date).add(-30, "minutes");
13736
+ var attendanceMoment = moment(minTime.format("YYYY-MM-DD") + " " + values.attendanceTime.format("HH:mm:ss"), "YYYY-MM-DD HH:mm:ss");
13737
+ if (attendanceMoment.isBefore(minTime)) attendanceMoment.add(1, "days");
13738
+ attendanceTime = attendanceMoment.utc().format("YYYY-MM-DDTHH:mm:ss.SSS");
13739
+ }
13740
+ return Promise.resolve(onSubmit(lesson, {
13741
+ studentId: values.studentId,
13742
+ status: values.status,
13743
+ attendanceTime: attendanceTime
13744
+ })).then(function () {});
13745
+ } catch (e) {
13746
+ return Promise.reject(e);
13747
+ }
13748
+ };
13749
+ if (!lesson) return null;
13750
+ return React__default.createElement(CommonDialog, {
13751
+ open: open,
13752
+ onClose: onClose,
13753
+ size: "sm",
13754
+ title: t("uppdate_attendance"),
13755
+ zIndex: zIndex
13756
+ }, React__default.createElement(formik.Formik, {
13757
+ initialValues: attendanceRequest,
13758
+ enableReinitialize: true,
13759
+ onSubmit: handleSubmit
13760
+ }, function (formikProp) {
13761
+ return React__default.createElement(AttendanceFormBody, {
13762
+ lesson: lesson,
13763
+ attendance: attendance,
13764
+ formikProp: formikProp,
13765
+ onClose: onClose
13766
+ });
13767
+ }));
13768
+ };
13769
+
13326
13770
  var USER_URL = BASE_URL + "/api/user";
13327
13771
  var getUserByIdApi = function getUserByIdApi(id) {
13328
13772
  return api.get(USER_URL + "/GetById/" + id);
@@ -13420,80 +13864,6 @@ var DrawerContainerStyle = function DrawerContainerStyle(width) {
13420
13864
  };
13421
13865
  };
13422
13866
 
13423
- var formatGrade = function formatGrade(grade, t, language) {
13424
- return grade ? language === exports.Language.en ? "" + grade + getOrdinalSuffix(grade, language) : "" + t("number_grade", {
13425
- number: grade
13426
- }) : "";
13427
- };
13428
- var formatLessonOrder = function formatLessonOrder(index, t, language) {
13429
- return language === exports.Language.en ? "" + (index + 1) + getOrdinalSuffix(index + 1, language) : "" + t("round", {
13430
- number: index + 1
13431
- });
13432
- };
13433
- var formatTime$1 = function formatTime(t, timeInMilliseconds) {
13434
- var hours = Math.floor(timeInMilliseconds / 3600000);
13435
- var minutes = Math.floor(timeInMilliseconds % 3600000 / 60000);
13436
- var seconds = Math.floor(timeInMilliseconds % 60000 / 1000);
13437
- return timeInMilliseconds < 60 ? "" + timeInMilliseconds + t("seconds") : t("hours_mins_seconds", {
13438
- hours: hours,
13439
- mins: minutes,
13440
- seconds: seconds
13441
- });
13442
- };
13443
- var a11yProps = function a11yProps(index) {
13444
- return {
13445
- id: "info-tab-" + index,
13446
- "aria-controls": "info-tabpanel-" + index,
13447
- sx: {
13448
- position: "relative",
13449
- fontSize: "13px",
13450
- fontWeight: 700,
13451
- padding: "12px 16px",
13452
- color: grey[500],
13453
- mx: "8px",
13454
- "&::after": {
13455
- content: "''",
13456
- position: "absolute",
13457
- bottom: 0,
13458
- left: 0,
13459
- width: "100%",
13460
- height: "1px",
13461
- backgroundColor: grey[500]
13462
- }
13463
- }
13464
- };
13465
- };
13466
- var subtractTime = function subtractTime(time1, time2, t) {
13467
- var _time1$split$map = time1.split(":").map(Number),
13468
- hours1 = _time1$split$map[0],
13469
- minutes1 = _time1$split$map[1];
13470
- var _time2$split$map = time2.split(":").map(Number),
13471
- hours2 = _time2$split$map[0],
13472
- minutes2 = _time2$split$map[1];
13473
- var totalMinutes1 = hours1 * 60 + minutes1;
13474
- var totalMinutes2 = hours2 * 60 + minutes2;
13475
- var diffMinutes = Math.abs(totalMinutes1 - totalMinutes2);
13476
- var hoursDiff = Math.floor(diffMinutes / 60);
13477
- var minutesDiff = diffMinutes % 60;
13478
- if (hoursDiff < 0) {
13479
- hoursDiff += 24;
13480
- }
13481
- if (minutesDiff < 0) {
13482
- minutesDiff += 60;
13483
- }
13484
- if (hoursDiff === 0) {
13485
- return minutesDiff + " " + t("minute");
13486
- }
13487
- if (minutesDiff === 0) {
13488
- return "" + (hoursDiff > 1 ? t("hours") : t("hour"));
13489
- }
13490
- return hoursDiff + " " + (hoursDiff > 1 ? t("hours") : t("hour")) + " " + minutesDiff + " " + t("minute");
13491
- };
13492
- var formatTimeHHmm = function formatTimeHHmm(time) {
13493
- var res = time.split(":");
13494
- return res[0] + ":" + res[1];
13495
- };
13496
-
13497
13867
  var DrawerHeader = function DrawerHeader(_ref) {
13498
13868
  var _BRIEF_GRADE_OPTIONS$;
13499
13869
  var isLoading = _ref.isLoading,
@@ -14464,7 +14834,7 @@ var defaultSeries = function defaultSeries(t) {
14464
14834
  }];
14465
14835
  };
14466
14836
 
14467
- var styles$3 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","form-label":"_1jRLX","form-control":"_13KE7","form-label-dialog":"_3mXNM","btn-cancel":"_3bqNl","btn-register":"_3GFnT"};
14837
+ var styles$4 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","form-label":"_1jRLX","form-control":"_13KE7","form-label-dialog":"_3mXNM","btn-cancel":"_3bqNl","btn-register":"_3GFnT"};
14468
14838
 
14469
14839
  var iconCloseDialog = function iconCloseDialog(_ref) {
14470
14840
  var _ref$width = _ref.width,
@@ -14592,7 +14962,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
14592
14962
  padding: "24px 24px 40px 24px"
14593
14963
  }, (selectedNote || studentName) && React__default.createElement(material.Stack, null, React__default.createElement("label", {
14594
14964
  htmlFor: "questions",
14595
- className: styles["form-label"] + " " + styles$3["form-label-dialog"]
14965
+ className: styles["form-label"] + " " + styles$4["form-label-dialog"]
14596
14966
  }, t("student_name")), React__default.createElement(Typography, {
14597
14967
  sx: {
14598
14968
  fontWeight: 700,
@@ -14601,7 +14971,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
14601
14971
  }
14602
14972
  }, selectedNote ? selectedNote.fullName : studentName)), React__default.createElement(material.Stack, null, React__default.createElement("label", {
14603
14973
  htmlFor: "content-question",
14604
- className: styles["form-label"] + " " + styles$3["form-label-dialog"]
14974
+ className: styles["form-label"] + " " + styles$4["form-label-dialog"]
14605
14975
  }, t("incorrect_answer_note_contents")), React__default.createElement(material.Box, {
14606
14976
  position: "relative",
14607
14977
  display: "flex",
@@ -14635,7 +15005,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
14635
15005
  borderTop: "1px solid #CED2DA"
14636
15006
  }
14637
15007
  }, React__default.createElement(MButton, {
14638
- className: styles$3["btn-cancel"],
15008
+ className: styles$4["btn-cancel"],
14639
15009
  onClick: onClose
14640
15010
  }, React__default.createElement(Typography, {
14641
15011
  sx: {
@@ -14649,7 +15019,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
14649
15019
  sx: {
14650
15020
  bgcolor: styles.dark
14651
15021
  },
14652
- className: styles$3["btn-register"],
15022
+ className: styles$4["btn-register"],
14653
15023
  type: "submit",
14654
15024
  disabled: !values.content.trim().length
14655
15025
  }, React__default.createElement(Typography, {
@@ -14758,7 +15128,7 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
14758
15128
  padding: "24px 24px 40px 24px"
14759
15129
  }, React__default.createElement(material.Stack, null, React__default.createElement("label", {
14760
15130
  htmlFor: "questions",
14761
- className: styles["form-label"] + " " + styles$3["form-label-dialog"]
15131
+ className: styles["form-label"] + " " + styles$4["form-label-dialog"]
14762
15132
  }, t("problem_number")), selectedQuestion || selectedNote ? React__default.createElement(Typography, {
14763
15133
  sx: {
14764
15134
  fontWeight: 700,
@@ -14785,7 +15155,7 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
14785
15155
  }
14786
15156
  })), React__default.createElement(material.Stack, null, React__default.createElement("label", {
14787
15157
  htmlFor: "content-question",
14788
- className: styles["form-label"] + " " + styles$3["form-label-dialog"]
15158
+ className: styles["form-label"] + " " + styles$4["form-label-dialog"]
14789
15159
  }, t("incorrect_answer_note_contents")), React__default.createElement(material.Box, {
14790
15160
  position: "relative",
14791
15161
  display: "flex",
@@ -14814,7 +15184,7 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
14814
15184
  borderTop: "1px solid #CED2DA"
14815
15185
  }
14816
15186
  }, React__default.createElement(MButton, {
14817
- className: styles$3["btn-cancel"],
15187
+ className: styles$4["btn-cancel"],
14818
15188
  onClick: onClose
14819
15189
  }, React__default.createElement(Typography, {
14820
15190
  sx: {
@@ -14828,7 +15198,7 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
14828
15198
  sx: {
14829
15199
  bgcolor: styles.dark
14830
15200
  },
14831
- className: styles$3["btn-register"],
15201
+ className: styles$4["btn-register"],
14832
15202
  type: "submit",
14833
15203
  disabled: !values.content.trim().length
14834
15204
  }, React__default.createElement(Typography, {
@@ -15992,7 +16362,6 @@ var TEXTBOOK_DEFAULT_FILTER = {
15992
16362
  sortColumnName: "Name",
15993
16363
  preparedFilterType: "RecentlySolvedQuestions"
15994
16364
  };
15995
- var FormatDate = "YYYY-MM-DD HH:mm:ss";
15996
16365
 
15997
16366
  var EXAM_SESSION_URL$1 = BASE_URL + "/api/examSession";
15998
16367
  var getExamSessionListApi = function getExamSessionListApi(query) {
@@ -17251,7 +17620,7 @@ Object.defineProperty(exports,"__esModule",{value:!0});var _typeof="function"==t
17251
17620
 
17252
17621
  var ReactApexChart = unwrapExports(reactApexcharts_min);
17253
17622
 
17254
- var styles$4 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","titleBox":"_1dveO","title":"_mxRxf","point":"_2fD-F","buttonGroup":"_2DGl3","btnFeedback":"_xGW1x","btnTerminate":"_3mLu2","myanswer":"_eDBpS","titleMyAnswer1":"_2fMq3","titleMyAnswer2":"_3gEYh","contentMyAnswer":"_2K_sx","myAnswerItem":"_2qiLh","time":"_6TCOK","timeCol":"_hmseC","answer-response":"_3GfJt","answer-response-0":"_3ut64","answer-response-1":"_2VtpD","answer-response-2":"_58lQU","answer-response-3":"_1ucMY","answer-response-4":"_1qkxy","overall-response-1":"_1AeGu","overall-response-2":"_1xTB0","overall-response-3":"_3Yu_5","answerCorrect":"_2jIeT","answerIncorrect":"_to2v0","answerNograss":"_1JSte","answerEasy":"_2_uTU","answerDiscrimination":"_1DBoA","answerTrap":"_1q3tD","answerNoTime":"_3iItu","questionOrder":"_1fNkS","myTimeLabel":"_1Z_F3","myPoolTime":"_4KwG0","topTimeLabel":"_245H-","topTime":"_3tZqw","meanTimeLabel":"_PlPLY","meanTime":"_12a7R","compareChart":"_3MW16","prevChart":"_1fNkb","chart":"_3K4oY","nextChart":"_3YKBp","titleChart":"_13BVP","titleCompareGrass":"_o1txm","tableCompareGrass":"_bT5nf","thcolumn1":"_3Umg0","tdcolumn1":"_3dRMF","tdcolumn3":"_2tcBP","classification":"_1AFeb","wrapperProblem":"_oTqG7","titleProblem":"_35eIx","titleProblemClose":"_3t4HO","titleTrickyProblem":"_1-oxK","wrongQuestions":"_2dpMR","question":"_1lSOX","assignedQuestions":"_1ONUt","wrapperContent":"_nPoR0","content":"_2zmZn","contentColumn1":"_334SY","span1":"_3Lf-U","span2":"_ZpMot","contentColumn2":"_16P3l","duration":"_1kT28","topDuration":"_1fVRi","overallCorrectRate":"_3jLGe","answer":"_VsZ0K","contentVulnerable":"_QxKMy","wrappContentProblem":"_nnqpW","contentProblem":"_3Z1nV","labelProblem":"_36Xpx","name":"_3ZJQW","percent":"_2J3MK","slider":"_1MPdO","track":"_3CV_y","noData":"__g-ff","loading":"_3j485","table-responsive":"_2O6RX","form-label":"_1RYOQ","form-control":"_3VRVT","form-label-dialog":"_3oCSh","btn-cancel":"_3USKq","btn-register":"_3y_iD","pdfBtnBox":"_3xZHo","pdfBtn":"_1DtWq","form-select":"_1a_vw","loader":"_2uC7T","dot":"_Xz-Mr","bounce":"_3THgz"};
17623
+ var styles$5 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","titleBox":"_1dveO","title":"_mxRxf","point":"_2fD-F","buttonGroup":"_2DGl3","btnFeedback":"_xGW1x","btnTerminate":"_3mLu2","myanswer":"_eDBpS","titleMyAnswer1":"_2fMq3","titleMyAnswer2":"_3gEYh","contentMyAnswer":"_2K_sx","myAnswerItem":"_2qiLh","time":"_6TCOK","timeCol":"_hmseC","answer-response":"_3GfJt","answer-response-0":"_3ut64","answer-response-1":"_2VtpD","answer-response-2":"_58lQU","answer-response-3":"_1ucMY","answer-response-4":"_1qkxy","overall-response-1":"_1AeGu","overall-response-2":"_1xTB0","overall-response-3":"_3Yu_5","answerCorrect":"_2jIeT","answerIncorrect":"_to2v0","answerNograss":"_1JSte","answerEasy":"_2_uTU","answerDiscrimination":"_1DBoA","answerTrap":"_1q3tD","answerNoTime":"_3iItu","questionOrder":"_1fNkS","myTimeLabel":"_1Z_F3","myPoolTime":"_4KwG0","topTimeLabel":"_245H-","topTime":"_3tZqw","meanTimeLabel":"_PlPLY","meanTime":"_12a7R","compareChart":"_3MW16","prevChart":"_1fNkb","chart":"_3K4oY","nextChart":"_3YKBp","titleChart":"_13BVP","titleCompareGrass":"_o1txm","tableCompareGrass":"_bT5nf","thcolumn1":"_3Umg0","tdcolumn1":"_3dRMF","tdcolumn3":"_2tcBP","classification":"_1AFeb","wrapperProblem":"_oTqG7","titleProblem":"_35eIx","titleProblemClose":"_3t4HO","titleTrickyProblem":"_1-oxK","wrongQuestions":"_2dpMR","question":"_1lSOX","assignedQuestions":"_1ONUt","wrapperContent":"_nPoR0","content":"_2zmZn","contentColumn1":"_334SY","span1":"_3Lf-U","span2":"_ZpMot","contentColumn2":"_16P3l","duration":"_1kT28","topDuration":"_1fVRi","overallCorrectRate":"_3jLGe","answer":"_VsZ0K","contentVulnerable":"_QxKMy","wrappContentProblem":"_nnqpW","contentProblem":"_3Z1nV","labelProblem":"_36Xpx","name":"_3ZJQW","percent":"_2J3MK","slider":"_1MPdO","track":"_3CV_y","noData":"__g-ff","loading":"_3j485","table-responsive":"_2O6RX","form-label":"_1RYOQ","form-control":"_3VRVT","form-label-dialog":"_3oCSh","btn-cancel":"_3USKq","btn-register":"_3y_iD","pdfBtnBox":"_3xZHo","pdfBtn":"_1DtWq","form-select":"_1a_vw","loader":"_2uC7T","dot":"_Xz-Mr","bounce":"_3THgz"};
17255
17624
 
17256
17625
  var printStyles = {"page-break":"_35kyG","print-exact-color":"_1PFgl","avoid-break-inside":"_3rPGh"};
17257
17626
 
@@ -17420,7 +17789,7 @@ var AnswerItem = function AnswerItem(_ref) {
17420
17789
  },
17421
17790
  key: data.id
17422
17791
  }, React__default.createElement("div", {
17423
- className: styles$4["myAnswerItem"] + " " + styles["noGutters"]
17792
+ className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
17424
17793
  }, React__default.createElement("div", {
17425
17794
  className: styles["custom-col-2"],
17426
17795
  style: {
@@ -17430,7 +17799,7 @@ var AnswerItem = function AnswerItem(_ref) {
17430
17799
  padding: "5px 8px"
17431
17800
  }
17432
17801
  }, data.isStar ? React__default.createElement(iconStarQuestion, null) : React__default.createElement(iconNoStarQuestion, null), React__default.createElement("span", {
17433
- className: styles$4["questionOrder"]
17802
+ className: styles$5["questionOrder"]
17434
17803
  }, t("number_question", {
17435
17804
  number: data.questionOrder + 1
17436
17805
  }))), React__default.createElement("div", {
@@ -17441,11 +17810,11 @@ var AnswerItem = function AnswerItem(_ref) {
17441
17810
  gap: "4px"
17442
17811
  }
17443
17812
  }, data.isCorrect && data.selectedAnswers !== "" && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer, null), React__default.createElement("span", {
17444
- className: styles$4["answerCorrect"]
17813
+ className: styles$5["answerCorrect"]
17445
17814
  }, t("correct"))), !data.isCorrect && data.selectedAnswers !== "" && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer$1, null), React__default.createElement("span", {
17446
- className: styles$4["answerIncorrect"]
17815
+ className: styles$5["answerIncorrect"]
17447
17816
  }, t("incorrect"))), data.selectedAnswers === "" && React__default.createElement(React.Fragment, null, React__default.createElement(iconNoGrass, null), React__default.createElement("span", {
17448
- className: styles$4["answerNograss"]
17817
+ className: styles$5["answerNograss"]
17449
17818
  }, t("no_solution")))), React__default.createElement("div", {
17450
17819
  className: styles["custom-col-2"],
17451
17820
  style: {
@@ -17456,12 +17825,12 @@ var AnswerItem = function AnswerItem(_ref) {
17456
17825
  style: {
17457
17826
  margin: 0
17458
17827
  },
17459
- className: styles$4["answer-response"] + " " + styles$4["answer-response-" + data.answerResponseSignal]
17828
+ className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
17460
17829
  }, formatTimeSecond(Math.round(data.duration), t)) : React__default.createElement("p", {
17461
17830
  style: {
17462
17831
  margin: 0
17463
17832
  },
17464
- className: styles$4["answerNoTime"]
17833
+ className: styles$5["answerNoTime"]
17465
17834
  }, t("no_time"))), React__default.createElement("div", {
17466
17835
  className: styles["custom-col-2"],
17467
17836
  style: {
@@ -17472,13 +17841,13 @@ var AnswerItem = function AnswerItem(_ref) {
17472
17841
  style: {
17473
17842
  margin: 0
17474
17843
  },
17475
- className: styles$4["answer-response"] + " " + styles$4["answer-response-" + data.answerResponseSignal]
17844
+ className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
17476
17845
  }, formatTimeDiff(data.duration, data.topDuration, t)) : React__default.createElement("p", {
17477
17846
  style: {
17478
17847
  margin: 0,
17479
17848
  textAlign: "center"
17480
17849
  },
17481
- className: styles$4["answerNoTime"]
17850
+ className: styles$5["answerNoTime"]
17482
17851
  }, "-")), React__default.createElement("div", {
17483
17852
  className: styles["custom-col-2"],
17484
17853
  style: {
@@ -17489,12 +17858,12 @@ var AnswerItem = function AnswerItem(_ref) {
17489
17858
  style: {
17490
17859
  margin: 0
17491
17860
  },
17492
- className: styles$4["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$4)
17861
+ className: styles$5["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$5)
17493
17862
  }, data.overallCorrectRate.toFixed(2) + "%") : React__default.createElement("p", {
17494
17863
  style: {
17495
17864
  margin: 0
17496
17865
  },
17497
- className: styles$4["answerNoTime"]
17866
+ className: styles$5["answerNoTime"]
17498
17867
  }, t("no_time"))), isStudent && !isLearningSpace && React__default.createElement(material.Box, {
17499
17868
  className: styles["custom-col-2"]
17500
17869
  }, openContextMenu ? React__default.createElement(material.ClickAwayListener, {
@@ -17561,7 +17930,7 @@ var MyAnswer = function MyAnswer(_ref) {
17561
17930
  }));
17562
17931
  };
17563
17932
  return React__default.createElement("div", {
17564
- className: "" + styles$4["myanswer"]
17933
+ className: "" + styles$5["myanswer"]
17565
17934
  }, formattedData && formattedData.length > 0 && formattedData.map(function (item) {
17566
17935
  return React__default.createElement("div", {
17567
17936
  key: item.category.id
@@ -17571,7 +17940,7 @@ var MyAnswer = function MyAnswer(_ref) {
17571
17940
  bgcolor: "#F9FAFB",
17572
17941
  flexDirection: "row",
17573
17942
  padding: "12px",
17574
- className: styles$4["myAnswerItem"] + " " + styles["noGutters"]
17943
+ className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
17575
17944
  }, React__default.createElement("div", {
17576
17945
  className: styles["custom-col-2"],
17577
17946
  style: {
@@ -17650,7 +18019,7 @@ var MyAnswer = function MyAnswer(_ref) {
17650
18019
  alignItems: "center"
17651
18020
  }
17652
18021
  }, t("total_correct_rate")))), React__default.createElement("div", {
17653
- className: styles$4["titleMyAnswer2"]
18022
+ className: styles$5["titleMyAnswer2"]
17654
18023
  }, React__default.createElement(material.Typography, {
17655
18024
  sx: {
17656
18025
  color: "#97A1AF",
@@ -17663,7 +18032,7 @@ var MyAnswer = function MyAnswer(_ref) {
17663
18032
  fontWeight: 700
17664
18033
  }
17665
18034
  }, item.category.name))), React__default.createElement("div", {
17666
- className: styles$4["contentMyAnswer"]
18035
+ className: styles$5["contentMyAnswer"]
17667
18036
  }, React__default.createElement(ListView, {
17668
18037
  data: item.questions,
17669
18038
  render: function render(question, index) {
@@ -17779,7 +18148,7 @@ var CompareGrass = function CompareGrass(_ref2) {
17779
18148
  borderTop: index < effectSize.length - 1 ? "1px solid transparent" : undefined
17780
18149
  }
17781
18150
  }, React__default.createElement("td", {
17782
- className: styles$4["tdcolumn1"]
18151
+ className: styles$5["tdcolumn1"]
17783
18152
  }, t("problem"), " ", item.questionOrder + 1), React__default.createElement("td", {
17784
18153
  style: {
17785
18154
  textAlign: "center",
@@ -17787,9 +18156,9 @@ var CompareGrass = function CompareGrass(_ref2) {
17787
18156
  maxWidth: "30%"
17788
18157
  }
17789
18158
  }, typeof item.correctAnswers === "string" ? renderAnswer(item.questionAnswerType, item.correctAnswers) : renderTextbookAnswer(item.questionAnswerType, item.correctAnswers, item.correctTextualAnswers, true)), React__default.createElement("td", {
17790
- className: styles$4["tdcolumn3"],
18159
+ className: styles$5["tdcolumn3"],
17791
18160
  style: {
17792
- color: item.isCorrect ? styles$4.green_support_900 : styles$4.red_900,
18161
+ color: item.isCorrect ? styles$5.green_support_900 : styles$5.red_900,
17793
18162
  maxWidth: "30%"
17794
18163
  }
17795
18164
  }, typeof item.selectedAnswers === "string" ? renderAnswer(item.questionAnswerType, item.selectedAnswers) : renderTextbookAnswer(item.questionAnswerType, item.selectedAnswers, item.textualAnswers)), React__default.createElement("td", {
@@ -17800,7 +18169,7 @@ var CompareGrass = function CompareGrass(_ref2) {
17800
18169
  }, renderAnswer(item.questionAnswerType, item.mostSelectedAnswers)), React__default.createElement("td", {
17801
18170
  className: "" + printStyles["avoid-break-inside"]
17802
18171
  }, React__default.createElement("div", {
17803
- className: styles$4["classification"] + " " + printStyles["avoid-break-inside"]
18172
+ className: styles$5["classification"] + " " + printStyles["avoid-break-inside"]
17804
18173
  }, item.problemCategories.map(function (problem, index) {
17805
18174
  return React__default.createElement(material.Stack, {
17806
18175
  flexDirection: "row",
@@ -17843,11 +18212,11 @@ var CompareGrass = function CompareGrass(_ref2) {
17843
18212
  });
17844
18213
  };
17845
18214
  return React__default.createElement("div", {
17846
- className: "" + styles$4["compareGrass"]
18215
+ className: "" + styles$5["compareGrass"]
17847
18216
  }, React__default.createElement("div", {
17848
- className: styles$4["tableCompareGrass"]
18217
+ className: styles$5["tableCompareGrass"]
17849
18218
  }, React__default.createElement("div", {
17850
- className: styles$4["table-responsive"]
18219
+ className: styles$5["table-responsive"]
17851
18220
  }, React__default.createElement(material.Table, {
17852
18221
  style: {
17853
18222
  width: "100%"
@@ -17859,7 +18228,7 @@ var CompareGrass = function CompareGrass(_ref2) {
17859
18228
  },
17860
18229
  className: "" + printStyles["avoid-break-inside"]
17861
18230
  }, React__default.createElement("tr", null, React__default.createElement("th", {
17862
- className: styles$4["thcolumn1"]
18231
+ className: styles$5["thcolumn1"]
17863
18232
  }, t("problem_number")), React__default.createElement("th", {
17864
18233
  style: {
17865
18234
  textAlign: "center"
@@ -17940,37 +18309,37 @@ var TrickyProblem = function TrickyProblem(_ref) {
17940
18309
  });
17941
18310
  var renderProblems = function renderProblems() {
17942
18311
  return React__default.createElement(React.Fragment, null, React__default.createElement("div", {
17943
- className: styles$4["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
18312
+ className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
17944
18313
  }, React__default.createElement(iconX, null), React__default.createElement("span", null, t("incorrect_problem_among_the_starred_problems"))), React__default.createElement("div", {
17945
- className: styles$4["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
18314
+ className: styles$5["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
17946
18315
  }, !!(inCorrectQuestions !== null && inCorrectQuestions !== void 0 && inCorrectQuestions.length) && inCorrectQuestions.map(function (question) {
17947
18316
  return React__default.createElement("span", {
17948
18317
  key: question.id,
17949
- className: styles$4["question"]
18318
+ className: styles$5["question"]
17950
18319
  }, t("number_question", {
17951
18320
  number: question.questionOrder + 1
17952
18321
  }));
17953
18322
  }), !(data !== null && data !== void 0 && data.questions.length) && React__default.createElement("div", {
17954
- className: styles$4["noData"]
18323
+ className: styles$5["noData"]
17955
18324
  }, t("no_data"))), React__default.createElement("div", {
17956
- className: styles$4["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
18325
+ className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
17957
18326
  }, React__default.createElement(iconAssignedQuestions, null), React__default.createElement("span", null, t("correct_problem_among_the_starred_problems"))), React__default.createElement("div", {
17958
- className: styles$4["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
18327
+ className: styles$5["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
17959
18328
  }, !!(correctQuestions !== null && correctQuestions !== void 0 && correctQuestions.length) && correctQuestions.map(function (question) {
17960
18329
  return React__default.createElement("div", {
17961
18330
  key: question.id,
17962
- className: styles$4["question"]
18331
+ className: styles$5["question"]
17963
18332
  }, t("number_question", {
17964
18333
  number: question.questionOrder + 1
17965
18334
  }));
17966
18335
  }), !(data !== null && data !== void 0 && data.questions.length) && React__default.createElement("div", {
17967
- className: styles$4["noData"]
18336
+ className: styles$5["noData"]
17968
18337
  }, t("no_data"))));
17969
18338
  };
17970
18339
  return React__default.createElement("div", {
17971
- className: "" + styles$4["wrapperProblem"]
18340
+ className: "" + styles$5["wrapperProblem"]
17972
18341
  }, React__default.createElement("div", {
17973
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$4["titleProblemClose"] : styles$4["titleProblem"]),
18342
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
17974
18343
  onClick: function onClick() {
17975
18344
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
17976
18345
  }
@@ -17982,10 +18351,10 @@ var TrickyProblem = function TrickyProblem(_ref) {
17982
18351
  }
17983
18352
  }, t("tricky_problems")), isOpen ? React__default.createElement(io5.IoChevronUp, {
17984
18353
  size: 24,
17985
- color: styles$4.gray_300
18354
+ color: styles$5.gray_300
17986
18355
  }) : React__default.createElement(io5.IoChevronDown, {
17987
18356
  size: 24,
17988
- color: styles$4.gray_300
18357
+ color: styles$5.gray_300
17989
18358
  })), isOpen && React__default.createElement(React.Fragment, null, renderProblems()));
17990
18359
  };
17991
18360
 
@@ -18011,9 +18380,9 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18011
18380
  borderBottom: "1px solid #e4e7ec"
18012
18381
  } : {}
18013
18382
  }, React__default.createElement("td", {
18014
- className: styles$4["tdcolumn1"],
18383
+ className: styles$5["tdcolumn1"],
18015
18384
  style: {
18016
- color: styles$4.gray_900,
18385
+ color: styles$5.gray_900,
18017
18386
  fontSize: "13px",
18018
18387
  fontWeight: 500
18019
18388
  }
@@ -18022,22 +18391,22 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18022
18391
  })), React__default.createElement("td", {
18023
18392
  style: {
18024
18393
  textAlign: "center",
18025
- color: styles$4.gray_700,
18394
+ color: styles$5.gray_700,
18026
18395
  fontSize: "13px",
18027
18396
  fontWeight: 500
18028
18397
  }
18029
18398
  }, item.duration ? formatTimeSecond(item.duration, t) : ""), React__default.createElement("td", {
18030
- className: styles$4["tdcolumn3"],
18399
+ className: styles$5["tdcolumn3"],
18031
18400
  style: {
18032
18401
  textAlign: "center",
18033
- color: styles$4.gray_700,
18402
+ color: styles$5.gray_700,
18034
18403
  fontSize: "13px",
18035
18404
  fontWeight: 500
18036
18405
  }
18037
18406
  }, item.topDuration ? formatTimeSecond(item.topDuration, t) : ""), React__default.createElement("td", {
18038
18407
  style: {
18039
18408
  textAlign: "center",
18040
- color: isBetter ? styles$4.dark : styles$4.red_900,
18409
+ color: isBetter ? styles$5.dark : styles$5.red_900,
18041
18410
  fontSize: "13px",
18042
18411
  fontWeight: 600
18043
18412
  }
@@ -18053,15 +18422,15 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18053
18422
  return React__default.createElement(material.Stack, {
18054
18423
  direction: "row",
18055
18424
  flexWrap: "nowrap",
18056
- className: styles$4["content"] + " " + printStyles["avoid-break-inside"],
18425
+ className: styles$5["content"] + " " + printStyles["avoid-break-inside"],
18057
18426
  key: item.id
18058
18427
  }, React__default.createElement(material.Box, {
18059
18428
  width: "160px",
18060
- className: styles$4["contentColumn1"]
18429
+ className: styles$5["contentColumn1"]
18061
18430
  }, React__default.createElement(material.Stack, null, React__default.createElement("div", null, React__default.createElement("span", {
18062
- className: styles$4["span1"]
18431
+ className: styles$5["span1"]
18063
18432
  }, t("problem")), React__default.createElement("span", {
18064
- className: styles$4["span2"]
18433
+ className: styles$5["span2"]
18065
18434
  }, t("number_question", {
18066
18435
  number: item.questionOrder + 1
18067
18436
  }))), (category === null || category === void 0 ? void 0 : category.name) && React__default.createElement(material.Typography, {
@@ -18072,22 +18441,22 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18072
18441
  textAlign: "center"
18073
18442
  }
18074
18443
  }, category.name))), React__default.createElement(material.Box, {
18075
- className: styles$4["contentColumn2"]
18444
+ className: styles$5["contentColumn2"]
18076
18445
  }, React__default.createElement("div", null, React__default.createElement("span", {
18077
- className: styles$4["span1"]
18446
+ className: styles$5["span1"]
18078
18447
  }, t("my_time")), React__default.createElement("span", {
18079
- className: styles$4["span2"]
18448
+ className: styles$5["span2"]
18080
18449
  }, t("top_time"))), React__default.createElement("div", null, React__default.createElement("span", {
18081
- className: styles$4["duration"]
18450
+ className: styles$5["duration"]
18082
18451
  }, formatTimeSecond(item.duration, t)), React__default.createElement("span", {
18083
- className: styles$4["topDuration"]
18452
+ className: styles$5["topDuration"]
18084
18453
  }, formatTimeSecond(item.topDuration, t)))));
18085
18454
  });
18086
18455
  };
18087
18456
  return React__default.createElement("div", {
18088
- className: "" + styles$4["wrapperProblem"]
18457
+ className: "" + styles$5["wrapperProblem"]
18089
18458
  }, React__default.createElement("div", {
18090
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$4["titleProblemClose"] : styles$4["titleProblem"]),
18459
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
18091
18460
  onClick: function onClick() {
18092
18461
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
18093
18462
  }
@@ -18103,20 +18472,20 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18103
18472
  }
18104
18473
  }, t("problems_that_took_a_long_time")), React__default.createElement(material.Typography, {
18105
18474
  sx: {
18106
- color: styles$4.gray_300,
18475
+ color: styles$5.gray_300,
18107
18476
  fontSize: "11px",
18108
18477
  fontWeight: 500
18109
18478
  }
18110
18479
  }, t("protracted_problem_detail"))), isOpen ? React__default.createElement(io5.IoChevronUp, {
18111
18480
  size: 24,
18112
- color: styles$4.gray_300
18481
+ color: styles$5.gray_300
18113
18482
  }) : React__default.createElement(io5.IoChevronDown, {
18114
18483
  size: 24,
18115
- color: styles$4.gray_300
18484
+ color: styles$5.gray_300
18116
18485
  })), isOpen && React__default.createElement(React.Fragment, null, data.length ? React__default.createElement("div", {
18117
- className: styles$4["tableCompareGrass"]
18486
+ className: styles$5["tableCompareGrass"]
18118
18487
  }, React__default.createElement("div", {
18119
- className: styles$4["table-responsive"]
18488
+ className: styles$5["table-responsive"]
18120
18489
  }, React__default.createElement(material.Table, {
18121
18490
  style: {
18122
18491
  width: "100%",
@@ -18128,7 +18497,7 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18128
18497
  },
18129
18498
  className: "" + printStyles["avoid-break-inside"]
18130
18499
  }, React__default.createElement("tr", null, React__default.createElement("th", {
18131
- className: styles$4["thcolumn1"]
18500
+ className: styles$5["thcolumn1"]
18132
18501
  }, t("problem_number")), React__default.createElement("th", {
18133
18502
  style: {
18134
18503
  textAlign: "center"
@@ -18142,7 +18511,7 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18142
18511
  textAlign: "center"
18143
18512
  }
18144
18513
  }, t("time_comparison")))), React__default.createElement("tbody", null, isMyStoryStudent ? renderTableBody(data) : renderQuestions(data))))) : React__default.createElement("div", {
18145
- className: styles$4["noData"] + " " + printStyles["avoid-break-inside"]
18514
+ className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
18146
18515
  }, t("no_data"))));
18147
18516
  };
18148
18517
 
@@ -18214,39 +18583,39 @@ var Vulnerable = function Vulnerable(_ref) {
18214
18583
  borderBottom: index < data.length - 1 ? "1px solid #e4e7ec" : undefined
18215
18584
  }
18216
18585
  }, React__default.createElement("td", {
18217
- className: styles$4["tdcolumn1"],
18586
+ className: styles$5["tdcolumn1"],
18218
18587
  style: {
18219
- color: styles$4.gray_900,
18588
+ color: styles$5.gray_900,
18220
18589
  fontSize: "13px",
18221
18590
  fontWeight: 600
18222
18591
  }
18223
18592
  }, React__default.createElement(material.Typography, {
18224
- color: styles$4.gray_900,
18593
+ color: styles$5.gray_900,
18225
18594
  fontSize: "13px",
18226
18595
  fontWeight: 600
18227
18596
  }, t("problem") + " " + (item.questionOrder + 1))), React__default.createElement("td", {
18228
18597
  style: {
18229
18598
  textAlign: "center",
18230
- color: styles$4.dark,
18599
+ color: styles$5.dark,
18231
18600
  fontSize: "13px",
18232
18601
  fontWeight: 600
18233
18602
  }
18234
18603
  }, item.overallCorrectRate.toFixed(2) ? item.overallCorrectRate.toFixed(2) + "%" : ""), React__default.createElement("td", {
18235
- className: styles$4["tdcolumn3"],
18604
+ className: styles$5["tdcolumn3"],
18236
18605
  style: {
18237
- color: styles$4.red_900,
18606
+ color: styles$5.red_900,
18238
18607
  fontSize: "13px",
18239
18608
  fontWeight: 500
18240
18609
  }
18241
18610
  }, typeof item.selectedAnswers === "string" ? renderAnswer(item.questionAnswerType, item.selectedAnswers) : renderTextbookAnswer(item.questionAnswerType, item.selectedAnswers, item.textualAnswers)), React__default.createElement("td", {
18242
18611
  style: {
18243
18612
  textAlign: "center",
18244
- color: styles$4.gray_700
18613
+ color: styles$5.gray_700
18245
18614
  }
18246
18615
  }, typeof item.correctAnswers === "string" ? renderAnswer(item.questionAnswerType, item.correctAnswers) : renderTextbookAnswer(item.questionAnswerType, item.correctAnswers, item.correctTextualAnswers, true)), React__default.createElement("td", {
18247
18616
  style: {
18248
18617
  textAlign: "center",
18249
- color: styles$4.gray_700
18618
+ color: styles$5.gray_700
18250
18619
  }
18251
18620
  }, item.category.name ? item.category.name : ""));
18252
18621
  });
@@ -18257,18 +18626,18 @@ var Vulnerable = function Vulnerable(_ref) {
18257
18626
  return React__default.createElement(material.Stack, {
18258
18627
  direction: "row",
18259
18628
  flexWrap: "nowrap",
18260
- className: styles$4["content"] + " " + printStyles["avoid-break-inside"],
18629
+ className: styles$5["content"] + " " + printStyles["avoid-break-inside"],
18261
18630
  key: question.id
18262
18631
  }, React__default.createElement(material.Box, {
18263
18632
  width: "160px",
18264
- className: styles$4["contentColumn1"]
18633
+ className: styles$5["contentColumn1"]
18265
18634
  }, React__default.createElement(material.Stack, {
18266
18635
  direction: "column",
18267
18636
  gap: 1
18268
18637
  }, React__default.createElement("div", null, React__default.createElement("span", {
18269
- className: styles$4["span1"]
18638
+ className: styles$5["span1"]
18270
18639
  }, t("problem_number")), React__default.createElement("span", {
18271
- className: styles$4["span2"]
18640
+ className: styles$5["span2"]
18272
18641
  }, t("number_question", {
18273
18642
  number: question.questionOrder + 1
18274
18643
  }))), ((_question$category = question.category) === null || _question$category === void 0 ? void 0 : _question$category.name) && React__default.createElement(material.Typography, {
@@ -18279,18 +18648,18 @@ var Vulnerable = function Vulnerable(_ref) {
18279
18648
  textAlign: "center"
18280
18649
  }
18281
18650
  }, question.category.name))), React__default.createElement(material.Box, {
18282
- className: styles$4["contentColumn2"],
18651
+ className: styles$5["contentColumn2"],
18283
18652
  sx: {
18284
18653
  alignItems: "center"
18285
18654
  }
18286
18655
  }, React__default.createElement("div", null, React__default.createElement("span", {
18287
- className: styles$4["span1"]
18656
+ className: styles$5["span1"]
18288
18657
  }, t("total_correct_rate")), React__default.createElement("span", {
18289
- className: styles$4["span2"]
18658
+ className: styles$5["span2"]
18290
18659
  }, t("my_wrong_answer"))), React__default.createElement("div", null, React__default.createElement("span", {
18291
- className: styles$4["overallCorrectRate"]
18660
+ className: styles$5["overallCorrectRate"]
18292
18661
  }, question.overallCorrectRate.toFixed(2), "%"), React__default.createElement("span", {
18293
- className: styles$4["answer"]
18662
+ className: styles$5["answer"]
18294
18663
  }, typeof question.selectedAnswers === "string" ? renderAnswer(question.questionAnswerType, question.selectedAnswers) : renderTextbookAnswer(question.questionAnswerType, question.selectedAnswers, question.textualAnswers), " ", t("answer"), " ", typeof question.correctAnswers === "string" ? renderAnswer(question.questionAnswerType, question.correctAnswers) : renderTextbookAnswer(question.questionAnswerType, question.correctAnswers, question.correctTextualAnswers, true)))));
18295
18664
  });
18296
18665
  };
@@ -18298,9 +18667,9 @@ var Vulnerable = function Vulnerable(_ref) {
18298
18667
  changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
18299
18668
  };
18300
18669
  return React__default.createElement("div", {
18301
- className: "" + styles$4["wrapperProblem"]
18670
+ className: "" + styles$5["wrapperProblem"]
18302
18671
  }, React__default.createElement("div", {
18303
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$4["titleProblemClose"] : styles$4["titleProblem"]),
18672
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
18304
18673
  onClick: handleToggle
18305
18674
  }, React__default.createElement(material.Stack, {
18306
18675
  flexDirection: "row",
@@ -18314,20 +18683,20 @@ var Vulnerable = function Vulnerable(_ref) {
18314
18683
  }
18315
18684
  }, t("issues_vulnerable")), React__default.createElement(material.Typography, {
18316
18685
  sx: {
18317
- color: styles$4.gray_300,
18686
+ color: styles$5.gray_300,
18318
18687
  fontSize: "11px",
18319
18688
  fontWeight: 500
18320
18689
  }
18321
18690
  }, t("vulnerable_detail"))), isOpen ? React__default.createElement(io5.IoChevronUp, {
18322
18691
  size: 24,
18323
- color: styles$4.gray_300
18692
+ color: styles$5.gray_300
18324
18693
  }) : React__default.createElement(io5.IoChevronDown, {
18325
18694
  size: 24,
18326
- color: styles$4.gray_300
18695
+ color: styles$5.gray_300
18327
18696
  })), isOpen && React__default.createElement(React.Fragment, null, incorrectQuestions.length ? React__default.createElement("div", {
18328
- className: styles$4["tableCompareGrass"]
18697
+ className: styles$5["tableCompareGrass"]
18329
18698
  }, React__default.createElement("div", {
18330
- className: styles$4["table-responsive"]
18699
+ className: styles$5["table-responsive"]
18331
18700
  }, isMyStoryStudent && React__default.createElement(material.Table, {
18332
18701
  style: {
18333
18702
  width: "100%",
@@ -18339,7 +18708,7 @@ var Vulnerable = function Vulnerable(_ref) {
18339
18708
  },
18340
18709
  className: "" + printStyles["avoid-break-inside"]
18341
18710
  }, React__default.createElement("tr", null, React__default.createElement("th", {
18342
- className: styles$4["thcolumn1"]
18711
+ className: styles$5["thcolumn1"]
18343
18712
  }, t("problem_number")), React__default.createElement("th", {
18344
18713
  style: {
18345
18714
  textAlign: "center"
@@ -18357,7 +18726,7 @@ var Vulnerable = function Vulnerable(_ref) {
18357
18726
  textAlign: "center"
18358
18727
  }
18359
18728
  }, t("_category")))), React__default.createElement("tbody", null, renderTableBody(incorrectQuestions))), !isMyStoryStudent && renderQuestions(incorrectQuestions))) : React__default.createElement("div", {
18360
- className: styles$4["noData"] + " " + printStyles["avoid-break-inside"]
18729
+ className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
18361
18730
  }, t("no_data"))));
18362
18731
  };
18363
18732
 
@@ -18408,24 +18777,24 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18408
18777
  borderBottom: index < data.length - 1 ? "1px solid #e4e7ec" : undefined
18409
18778
  }
18410
18779
  }, React__default.createElement("td", {
18411
- className: styles$4["tdcolumn1"],
18780
+ className: styles$5["tdcolumn1"],
18412
18781
  style: {
18413
- color: styles$4.gray_900,
18782
+ color: styles$5.gray_900,
18414
18783
  fontSize: "13px",
18415
18784
  fontWeight: 600
18416
18785
  }
18417
18786
  }, item.name), React__default.createElement("td", {
18418
18787
  style: {
18419
18788
  textAlign: "center",
18420
- color: styles$4.gray_900,
18789
+ color: styles$5.gray_900,
18421
18790
  fontSize: "13px",
18422
18791
  fontWeight: 600
18423
18792
  }
18424
18793
  }, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("td", {
18425
- className: styles$4["tdcolumn3"],
18794
+ className: styles$5["tdcolumn3"],
18426
18795
  style: {
18427
18796
  textAlign: "center",
18428
- color: styles$4.gray_700,
18797
+ color: styles$5.gray_700,
18429
18798
  fontSize: "13px",
18430
18799
  fontWeight: 500
18431
18800
  }
@@ -18434,7 +18803,7 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18434
18803
  }) : ""), React__default.createElement("td", {
18435
18804
  style: {
18436
18805
  textAlign: "center",
18437
- color: styles$4.gray_700,
18806
+ color: styles$5.gray_700,
18438
18807
  fontSize: "13px",
18439
18808
  fontWeight: 500
18440
18809
  }
@@ -18443,7 +18812,7 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18443
18812
  }) : ""), React__default.createElement("td", {
18444
18813
  style: {
18445
18814
  textAlign: "center",
18446
- color: styles$4.gray_700,
18815
+ color: styles$5.gray_700,
18447
18816
  fontSize: "13px",
18448
18817
  fontWeight: 500
18449
18818
  }
@@ -18456,26 +18825,26 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18456
18825
  left: item.percentageAmongStudents + "%"
18457
18826
  };
18458
18827
  return React__default.createElement("div", {
18459
- className: styles$4["contentProblem"] + " " + printStyles["avoid-break-inside"],
18828
+ className: styles$5["contentProblem"] + " " + printStyles["avoid-break-inside"],
18460
18829
  key: item.id
18461
18830
  }, React__default.createElement("div", {
18462
- className: styles$4["labelProblem"]
18831
+ className: styles$5["labelProblem"]
18463
18832
  }, React__default.createElement("span", {
18464
- className: styles$4["name"]
18833
+ className: styles$5["name"]
18465
18834
  }, item.name), React__default.createElement("div", {
18466
- className: styles$4["percent"]
18835
+ className: styles$5["percent"]
18467
18836
  }, React__default.createElement("span", null, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("span", null, item.totalCorrectQuestions, "/", item.totalQuestions, t("problems")))), React__default.createElement("div", {
18468
- className: styles$4["slider"]
18837
+ className: styles$5["slider"]
18469
18838
  }, React__default.createElement("div", null, React__default.createElement("span", {
18470
- className: styles$4["track"],
18839
+ className: styles$5["track"],
18471
18840
  style: trackStyle
18472
18841
  }))));
18473
18842
  });
18474
18843
  };
18475
18844
  return React__default.createElement("div", {
18476
- className: "" + styles$4["wrapperProblem"]
18845
+ className: "" + styles$5["wrapperProblem"]
18477
18846
  }, React__default.createElement("div", {
18478
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$4["titleProblemClose"] : styles$4["titleProblem"]),
18847
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
18479
18848
  onClick: function onClick() {
18480
18849
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : ProblemKey.GradesByTerritory);
18481
18850
  }
@@ -18487,14 +18856,14 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18487
18856
  }
18488
18857
  }, t("grades_by_area")), isOpen ? React__default.createElement(io5.IoChevronUp, {
18489
18858
  size: 24,
18490
- color: styles$4.gray_300
18859
+ color: styles$5.gray_300
18491
18860
  }) : React__default.createElement(io5.IoChevronDown, {
18492
18861
  size: 24,
18493
- color: styles$4.gray_300
18862
+ color: styles$5.gray_300
18494
18863
  })), isOpen && React__default.createElement(React.Fragment, null, formattedData.length ? React__default.createElement("div", {
18495
- className: styles$4["tableCompareGrass"]
18864
+ className: styles$5["tableCompareGrass"]
18496
18865
  }, React__default.createElement("div", {
18497
- className: styles$4["table-responsive"]
18866
+ className: styles$5["table-responsive"]
18498
18867
  }, isMyStoryStudent && React__default.createElement(material.Table, {
18499
18868
  style: {
18500
18869
  width: "100%",
@@ -18506,7 +18875,7 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18506
18875
  },
18507
18876
  className: "" + printStyles["avoid-break-inside"]
18508
18877
  }, React__default.createElement("tr", null, React__default.createElement("th", {
18509
- className: styles$4["thcolumn1"]
18878
+ className: styles$5["thcolumn1"]
18510
18879
  }, t("categories")), React__default.createElement("th", {
18511
18880
  style: {
18512
18881
  textAlign: "center"
@@ -18524,7 +18893,7 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18524
18893
  textAlign: "center"
18525
18894
  }
18526
18895
  }, t("total_solve_time")))), React__default.createElement("tbody", null, renderTableBody(formattedData))), !isMyStoryStudent && renderCategories(formattedData))) : React__default.createElement("div", {
18527
- className: styles$4["noData"] + " " + printStyles["avoid-break-inside"]
18896
+ className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
18528
18897
  }, t("no_data"))));
18529
18898
  };
18530
18899
 
@@ -18634,7 +19003,7 @@ function CreateNewQuestionDialog(_ref) {
18634
19003
  padding: "24px 24px 40px 24px"
18635
19004
  }, React__default.createElement(material.Stack, null, React__default.createElement("label", {
18636
19005
  htmlFor: "questions",
18637
- className: styles["form-label"] + " " + styles$4["form-label-dialog"]
19006
+ className: styles["form-label"] + " " + styles$5["form-label-dialog"]
18638
19007
  }, t("questions_to_ask")), React__default.createElement(formik.Field, {
18639
19008
  id: "questions",
18640
19009
  name: "questionId",
@@ -18653,7 +19022,7 @@ function CreateNewQuestionDialog(_ref) {
18653
19022
  }
18654
19023
  })), React__default.createElement(material.Stack, null, React__default.createElement("label", {
18655
19024
  htmlFor: "content-question",
18656
- className: styles["form-label"] + " " + styles$4["form-label-dialog"]
19025
+ className: styles["form-label"] + " " + styles$5["form-label-dialog"]
18657
19026
  }, t("question_content")), React__default.createElement(material.Box, {
18658
19027
  position: "relative",
18659
19028
  display: "flex",
@@ -18681,7 +19050,7 @@ function CreateNewQuestionDialog(_ref) {
18681
19050
  fontWeight: 500,
18682
19051
  fontSize: "10px",
18683
19052
  lineHeight: "11.93px",
18684
- color: !(errors !== null && errors !== void 0 && errors.content) ? "#97A1AF" : styles$4.red_900
19053
+ color: !(errors !== null && errors !== void 0 && errors.content) ? "#97A1AF" : styles$5.red_900
18685
19054
  }, !(errors !== null && errors !== void 0 && errors.content) ? t("your_questions_will_be_sent_to_the_counselor") : t("please_enter_your_question"))))), React__default.createElement(DialogActions, {
18686
19055
  sx: {
18687
19056
  display: "flex",
@@ -18691,7 +19060,7 @@ function CreateNewQuestionDialog(_ref) {
18691
19060
  borderTop: "1px solid #CED2DA"
18692
19061
  }
18693
19062
  }, React__default.createElement(MButton, {
18694
- className: styles$4["btn-cancel"],
19063
+ className: styles$5["btn-cancel"],
18695
19064
  onClick: onCloseCreateQuestion
18696
19065
  }, React__default.createElement(Typography, {
18697
19066
  sx: {
@@ -18705,7 +19074,7 @@ function CreateNewQuestionDialog(_ref) {
18705
19074
  sx: {
18706
19075
  bgcolor: styles.dark
18707
19076
  },
18708
- className: styles$4["btn-register"],
19077
+ className: styles$5["btn-register"],
18709
19078
  type: "submit",
18710
19079
  disabled: !values.content.trim().length
18711
19080
  }, React__default.createElement(Typography, {
@@ -18761,18 +19130,18 @@ var TimeOrderChart = function TimeOrderChart(_ref) {
18761
19130
  color: "#414E62"
18762
19131
  }
18763
19132
  }, t("article_number"), " ", timelyOrderQuestion.article), React__default.createElement("div", {
18764
- className: styles$4["compareChart"] + " " + printStyles["avoid-break-inside"]
19133
+ className: styles$5["compareChart"] + " " + printStyles["avoid-break-inside"]
18765
19134
  }, React__default.createElement("div", {
18766
- className: "" + styles$4["prevChart"]
19135
+ className: "" + styles$5["prevChart"]
18767
19136
  }), React__default.createElement("div", {
18768
- className: styles$4["chart"] + " sr-line-chart"
19137
+ className: styles$5["chart"] + " sr-line-chart"
18769
19138
  }, React__default.createElement("div", null, React__default.createElement(ReactApexChart, {
18770
19139
  ref: chartRef,
18771
19140
  height: 389,
18772
19141
  options: chartOptions,
18773
19142
  series: series
18774
19143
  }))), React__default.createElement("div", {
18775
- className: "" + styles$4["nextChart"]
19144
+ className: "" + styles$5["nextChart"]
18776
19145
  })));
18777
19146
  };
18778
19147
 
@@ -18811,7 +19180,7 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
18811
19180
  },
18812
19181
  key: data.id
18813
19182
  }, React__default.createElement("div", {
18814
- className: styles$4["myAnswerItem"] + " " + styles["noGutters"]
19183
+ className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
18815
19184
  }, React__default.createElement("div", {
18816
19185
  className: styles["custom-col-2"],
18817
19186
  style: {
@@ -18821,7 +19190,7 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
18821
19190
  padding: "5px 8px"
18822
19191
  }
18823
19192
  }, data.isStar ? React__default.createElement(iconStarQuestion, null) : React__default.createElement(iconNoStarQuestion, null), React__default.createElement("span", {
18824
- className: styles$4["questionOrder"]
19193
+ className: styles$5["questionOrder"]
18825
19194
  }, t("number_question", {
18826
19195
  number: data.questionOrder + 1
18827
19196
  }))), React__default.createElement("div", {
@@ -18832,11 +19201,11 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
18832
19201
  gap: "4px"
18833
19202
  }
18834
19203
  }, data.isCorrect && (!!((_data$selectedAnswers = data.selectedAnswers) !== null && _data$selectedAnswers !== void 0 && _data$selectedAnswers.length) || !!((_data$textualAnswers = data.textualAnswers) !== null && _data$textualAnswers !== void 0 && _data$textualAnswers.length)) && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer, null), React__default.createElement("span", {
18835
- className: styles$4["answerCorrect"]
19204
+ className: styles$5["answerCorrect"]
18836
19205
  }, t("correct"))), !data.isCorrect && (!!((_data$selectedAnswers2 = data.selectedAnswers) !== null && _data$selectedAnswers2 !== void 0 && _data$selectedAnswers2.length) || !!((_data$textualAnswers2 = data.textualAnswers) !== null && _data$textualAnswers2 !== void 0 && _data$textualAnswers2.length)) && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer$1, null), React__default.createElement("span", {
18837
- className: styles$4["answerIncorrect"]
19206
+ className: styles$5["answerIncorrect"]
18838
19207
  }, t("incorrect"))), !((_data$selectedAnswers3 = data.selectedAnswers) !== null && _data$selectedAnswers3 !== void 0 && _data$selectedAnswers3.length) && !((_data$textualAnswers3 = data.textualAnswers) !== null && _data$textualAnswers3 !== void 0 && _data$textualAnswers3.length) && React__default.createElement(React.Fragment, null, React__default.createElement(iconNoGrass, null), React__default.createElement("span", {
18839
- className: styles$4["answerNograss"]
19208
+ className: styles$5["answerNograss"]
18840
19209
  }, t("no_solution")))), React__default.createElement("div", {
18841
19210
  className: styles["custom-col-2"],
18842
19211
  style: {
@@ -18847,12 +19216,12 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
18847
19216
  style: {
18848
19217
  margin: 0
18849
19218
  },
18850
- className: styles$4["answer-response"] + " " + styles$4["answer-response-" + data.answerResponseSignal]
19219
+ className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
18851
19220
  }, formatTimeSecond(Math.round(data.duration), t)) : React__default.createElement("p", {
18852
19221
  style: {
18853
19222
  margin: 0
18854
19223
  },
18855
- className: styles$4["answerNoTime"]
19224
+ className: styles$5["answerNoTime"]
18856
19225
  }, t("no_time"))), React__default.createElement("div", {
18857
19226
  className: styles["custom-col-2"],
18858
19227
  style: {
@@ -18863,13 +19232,13 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
18863
19232
  style: {
18864
19233
  margin: 0
18865
19234
  },
18866
- className: styles$4["answer-response"] + " " + styles$4["answer-response-" + data.answerResponseSignal]
19235
+ className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
18867
19236
  }, formatTimeDiff(data.duration, data.topDuration, t)) : React__default.createElement("p", {
18868
19237
  style: {
18869
19238
  margin: 0,
18870
19239
  textAlign: "center"
18871
19240
  },
18872
- className: styles$4["answerNoTime"]
19241
+ className: styles$5["answerNoTime"]
18873
19242
  }, "-")), React__default.createElement("div", {
18874
19243
  className: styles["custom-col-2"],
18875
19244
  style: {
@@ -18880,12 +19249,12 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
18880
19249
  style: {
18881
19250
  margin: 0
18882
19251
  },
18883
- className: styles$4["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$4)
19252
+ className: styles$5["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$5)
18884
19253
  }, data.overallCorrectRate.toFixed(2) + "%") : React__default.createElement("p", {
18885
19254
  style: {
18886
19255
  margin: 0
18887
19256
  },
18888
- className: styles$4["answerNoTime"]
19257
+ className: styles$5["answerNoTime"]
18889
19258
  }, t("no_time"))), isStudent && !isLearningSpace && React__default.createElement(material.Box, {
18890
19259
  className: styles["custom-col-2"]
18891
19260
  }, openContextMenu ? React__default.createElement(material.ClickAwayListener, {
@@ -18957,7 +19326,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
18957
19326
  }));
18958
19327
  };
18959
19328
  return React__default.createElement("div", {
18960
- className: "" + styles$4["myanswer"]
19329
+ className: "" + styles$5["myanswer"]
18961
19330
  }, formattedData && formattedData.length > 0 && formattedData.map(function (item) {
18962
19331
  var _item$categories;
18963
19332
  return React__default.createElement("div", {
@@ -18968,7 +19337,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
18968
19337
  bgcolor: "#F9FAFB",
18969
19338
  flexDirection: "row",
18970
19339
  padding: "12px",
18971
- className: styles$4["myAnswerItem"] + " " + styles["noGutters"]
19340
+ className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
18972
19341
  }, React__default.createElement("div", {
18973
19342
  className: styles["custom-col-2"],
18974
19343
  style: {
@@ -19047,7 +19416,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
19047
19416
  alignItems: "center"
19048
19417
  }
19049
19418
  }, t("total_correct_rate")))), React__default.createElement("div", {
19050
- className: styles$4["titleMyAnswer2"]
19419
+ className: styles$5["titleMyAnswer2"]
19051
19420
  }, React__default.createElement(material.Typography, {
19052
19421
  sx: {
19053
19422
  color: "#97A1AF",
@@ -19062,7 +19431,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
19062
19431
  }, (_item$categories = item.categories) === null || _item$categories === void 0 ? void 0 : _item$categories.map(function (i) {
19063
19432
  return i.name;
19064
19433
  }).join(" / ")))), React__default.createElement("div", {
19065
- className: styles$4["contentMyAnswer"]
19434
+ className: styles$5["contentMyAnswer"]
19066
19435
  }, React__default.createElement(ListView, {
19067
19436
  data: item.questions,
19068
19437
  render: function render(question, index) {
@@ -19092,24 +19461,24 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19092
19461
  borderBottom: index < (data === null || data === void 0 ? void 0 : data.length) - 1 ? "1px solid #e4e7ec" : undefined
19093
19462
  }
19094
19463
  }, React__default.createElement("td", {
19095
- className: styles$4["tdcolumn1"],
19464
+ className: styles$5["tdcolumn1"],
19096
19465
  style: {
19097
- color: styles$4.gray_900,
19466
+ color: styles$5.gray_900,
19098
19467
  fontSize: "13px",
19099
19468
  fontWeight: 600
19100
19469
  }
19101
19470
  }, item.name), React__default.createElement("td", {
19102
19471
  style: {
19103
19472
  textAlign: "center",
19104
- color: styles$4.gray_900,
19473
+ color: styles$5.gray_900,
19105
19474
  fontSize: "13px",
19106
19475
  fontWeight: 600
19107
19476
  }
19108
19477
  }, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("td", {
19109
- className: styles$4["tdcolumn3"],
19478
+ className: styles$5["tdcolumn3"],
19110
19479
  style: {
19111
19480
  textAlign: "center",
19112
- color: styles$4.gray_700,
19481
+ color: styles$5.gray_700,
19113
19482
  fontSize: "13px",
19114
19483
  fontWeight: 500
19115
19484
  }
@@ -19118,7 +19487,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19118
19487
  }) : ""), React__default.createElement("td", {
19119
19488
  style: {
19120
19489
  textAlign: "center",
19121
- color: styles$4.gray_700,
19490
+ color: styles$5.gray_700,
19122
19491
  fontSize: "13px",
19123
19492
  fontWeight: 500
19124
19493
  }
@@ -19127,7 +19496,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19127
19496
  }) : ""), React__default.createElement("td", {
19128
19497
  style: {
19129
19498
  textAlign: "center",
19130
- color: styles$4.gray_700,
19499
+ color: styles$5.gray_700,
19131
19500
  fontSize: "13px",
19132
19501
  fontWeight: 500
19133
19502
  }
@@ -19141,26 +19510,26 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19141
19510
  left: item.percentageAmongStudents + "%"
19142
19511
  };
19143
19512
  return React__default.createElement("div", {
19144
- className: styles$4["contentProblem"] + " " + printStyles["avoid-break-inside"],
19513
+ className: styles$5["contentProblem"] + " " + printStyles["avoid-break-inside"],
19145
19514
  key: item.id
19146
19515
  }, React__default.createElement("div", {
19147
- className: styles$4["labelProblem"]
19516
+ className: styles$5["labelProblem"]
19148
19517
  }, React__default.createElement("span", {
19149
- className: styles$4["name"]
19518
+ className: styles$5["name"]
19150
19519
  }, item.name), React__default.createElement("div", {
19151
- className: styles$4["percent"]
19520
+ className: styles$5["percent"]
19152
19521
  }, React__default.createElement("span", null, (_item$percentageAmong = item.percentageAmongStudents) === null || _item$percentageAmong === void 0 ? void 0 : _item$percentageAmong.toFixed(2), "%"), React__default.createElement("span", null, item.totalCorrectQuestions, "/", item.totalQuestions, t("problems")))), React__default.createElement("div", {
19153
- className: styles$4["slider"]
19522
+ className: styles$5["slider"]
19154
19523
  }, React__default.createElement("div", null, React__default.createElement("span", {
19155
- className: styles$4["track"],
19524
+ className: styles$5["track"],
19156
19525
  style: trackStyle
19157
19526
  }))));
19158
19527
  });
19159
19528
  };
19160
19529
  return React__default.createElement("div", {
19161
- className: "" + styles$4["wrapperProblem"]
19530
+ className: "" + styles$5["wrapperProblem"]
19162
19531
  }, React__default.createElement("div", {
19163
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$4["titleProblemClose"] : styles$4["titleProblem"]),
19532
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
19164
19533
  onClick: function onClick() {
19165
19534
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : ProblemKey.GradesByTerritory);
19166
19535
  }
@@ -19172,14 +19541,14 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19172
19541
  }
19173
19542
  }, t("grades_by_area")), isOpen ? React__default.createElement(io5.IoChevronUp, {
19174
19543
  size: 24,
19175
- color: styles$4.gray_300
19544
+ color: styles$5.gray_300
19176
19545
  }) : React__default.createElement(io5.IoChevronDown, {
19177
19546
  size: 24,
19178
- color: styles$4.gray_300
19547
+ color: styles$5.gray_300
19179
19548
  })), isOpen && React__default.createElement(React.Fragment, null, formattedData.length ? React__default.createElement("div", {
19180
- className: styles$4["tableCompareGrass"]
19549
+ className: styles$5["tableCompareGrass"]
19181
19550
  }, React__default.createElement("div", {
19182
- className: styles$4["table-responsive"]
19551
+ className: styles$5["table-responsive"]
19183
19552
  }, isMyStoryStudent && React__default.createElement(material.Table, {
19184
19553
  style: {
19185
19554
  width: "100%",
@@ -19191,7 +19560,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19191
19560
  },
19192
19561
  className: "" + printStyles["avoid-break-inside"]
19193
19562
  }, React__default.createElement("tr", null, React__default.createElement("th", {
19194
- className: styles$4["thcolumn1"]
19563
+ className: styles$5["thcolumn1"]
19195
19564
  }, t("categories")), React__default.createElement("th", {
19196
19565
  style: {
19197
19566
  textAlign: "center"
@@ -19209,7 +19578,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19209
19578
  textAlign: "center"
19210
19579
  }
19211
19580
  }, t("total_solve_time")))), React__default.createElement("tbody", null, renderTableBody(formattedData))), !isMyStoryStudent && renderCategories(formattedData))) : React__default.createElement("div", {
19212
- className: styles$4["noData"] + " " + printStyles["avoid-break-inside"]
19581
+ className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
19213
19582
  }, t("no_data"))));
19214
19583
  };
19215
19584
 
@@ -19282,39 +19651,39 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19282
19651
  borderBottom: index < (data === null || data === void 0 ? void 0 : data.length) - 1 ? "1px solid #e4e7ec" : undefined
19283
19652
  }
19284
19653
  }, React__default.createElement("td", {
19285
- className: styles$4["tdcolumn1"],
19654
+ className: styles$5["tdcolumn1"],
19286
19655
  style: {
19287
- color: styles$4.gray_900,
19656
+ color: styles$5.gray_900,
19288
19657
  fontSize: "13px",
19289
19658
  fontWeight: 600
19290
19659
  }
19291
19660
  }, React__default.createElement(material.Typography, {
19292
- color: styles$4.gray_900,
19661
+ color: styles$5.gray_900,
19293
19662
  fontSize: "13px",
19294
19663
  fontWeight: 600
19295
19664
  }, t("problem") + " " + (item.questionOrder + 1))), React__default.createElement("td", {
19296
19665
  style: {
19297
19666
  textAlign: "center",
19298
- color: styles$4.dark,
19667
+ color: styles$5.dark,
19299
19668
  fontSize: "13px",
19300
19669
  fontWeight: 600
19301
19670
  }
19302
19671
  }, item.overallCorrectRate.toFixed(2) ? item.overallCorrectRate.toFixed(2) + "%" : ""), React__default.createElement("td", {
19303
- className: styles$4["tdcolumn3"],
19672
+ className: styles$5["tdcolumn3"],
19304
19673
  style: {
19305
- color: styles$4.red_900,
19674
+ color: styles$5.red_900,
19306
19675
  fontSize: "13px",
19307
19676
  fontWeight: 500
19308
19677
  }
19309
19678
  }, typeof item.selectedAnswers === "string" ? renderAnswer(item.questionAnswerType, item.selectedAnswers) : renderTextbookAnswer(item.questionAnswerType, item.selectedAnswers, item.textualAnswers)), React__default.createElement("td", {
19310
19679
  style: {
19311
19680
  textAlign: "center",
19312
- color: styles$4.gray_700
19681
+ color: styles$5.gray_700
19313
19682
  }
19314
19683
  }, typeof item.correctAnswers === "string" ? renderAnswer(item.questionAnswerType, item.correctAnswers) : renderTextbookAnswer(item.questionAnswerType, item.correctAnswers, item.correctTextualAnswers, true)), React__default.createElement("td", {
19315
19684
  style: {
19316
19685
  textAlign: "center",
19317
- color: styles$4.gray_700
19686
+ color: styles$5.gray_700
19318
19687
  }
19319
19688
  }, item.categories ? item.categories.map(function (i) {
19320
19689
  return i.name;
@@ -19326,31 +19695,31 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19326
19695
  return React__default.createElement(material.Grid, {
19327
19696
  container: true,
19328
19697
  flexWrap: "nowrap",
19329
- className: styles$4["content"] + " " + printStyles["avoid-break-inside"],
19698
+ className: styles$5["content"] + " " + printStyles["avoid-break-inside"],
19330
19699
  key: question.id
19331
19700
  }, React__default.createElement(material.Grid, {
19332
19701
  item: true,
19333
19702
  xs: 1.5,
19334
19703
  minWidth: "120px",
19335
- className: styles$4["contentColumn1"]
19704
+ className: styles$5["contentColumn1"]
19336
19705
  }, React__default.createElement("div", null, React__default.createElement("span", {
19337
- className: styles$4["span1"]
19706
+ className: styles$5["span1"]
19338
19707
  }, t("problem_number")), React__default.createElement("span", {
19339
- className: styles$4["span2"]
19708
+ className: styles$5["span2"]
19340
19709
  }, t("number_question", {
19341
19710
  number: question.questionOrder + 1
19342
19711
  })))), React__default.createElement(material.Grid, {
19343
19712
  item: true,
19344
19713
  xs: 10.5,
19345
- className: styles$4["contentColumn2"]
19714
+ className: styles$5["contentColumn2"]
19346
19715
  }, React__default.createElement("div", null, React__default.createElement("span", {
19347
- className: styles$4["span1"]
19716
+ className: styles$5["span1"]
19348
19717
  }, t("total_correct_rate")), React__default.createElement("span", {
19349
- className: styles$4["span2"]
19718
+ className: styles$5["span2"]
19350
19719
  }, t("my_wrong_answer"))), React__default.createElement("div", null, React__default.createElement("span", {
19351
- className: styles$4["overallCorrectRate"]
19720
+ className: styles$5["overallCorrectRate"]
19352
19721
  }, question.overallCorrectRate.toFixed(2), "%"), React__default.createElement("span", {
19353
- className: styles$4["answer"]
19722
+ className: styles$5["answer"]
19354
19723
  }, typeof question.selectedAnswers === "string" ? renderAnswer(question.questionAnswerType, question.selectedAnswers) : renderTextbookAnswer(question.questionAnswerType, question.selectedAnswers, question.textualAnswers), " ", t("answer"), " ", typeof question.correctAnswers === "string" ? renderAnswer(question.questionAnswerType, question.correctAnswers) : renderTextbookAnswer(question.questionAnswerType, question.correctAnswers, question.correctTextualAnswers, true)))));
19355
19724
  });
19356
19725
  };
@@ -19358,9 +19727,9 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19358
19727
  changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
19359
19728
  };
19360
19729
  return React__default.createElement("div", {
19361
- className: "" + styles$4["wrapperProblem"]
19730
+ className: "" + styles$5["wrapperProblem"]
19362
19731
  }, React__default.createElement("div", {
19363
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$4["titleProblemClose"] : styles$4["titleProblem"]),
19732
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
19364
19733
  onClick: handleToggle
19365
19734
  }, React__default.createElement(material.Stack, {
19366
19735
  flexDirection: "row",
@@ -19374,20 +19743,20 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19374
19743
  }
19375
19744
  }, t("issues_vulnerable")), React__default.createElement(material.Typography, {
19376
19745
  sx: {
19377
- color: styles$4.gray_300,
19746
+ color: styles$5.gray_300,
19378
19747
  fontSize: "11px",
19379
19748
  fontWeight: 500
19380
19749
  }
19381
19750
  }, t("vulnerable_detail"))), isOpen ? React__default.createElement(io5.IoChevronUp, {
19382
19751
  size: 24,
19383
- color: styles$4.gray_300
19752
+ color: styles$5.gray_300
19384
19753
  }) : React__default.createElement(io5.IoChevronDown, {
19385
19754
  size: 24,
19386
- color: styles$4.gray_300
19755
+ color: styles$5.gray_300
19387
19756
  })), isOpen && React__default.createElement(React.Fragment, null, incorrectQuestions !== null && incorrectQuestions !== void 0 && incorrectQuestions.length ? React__default.createElement("div", {
19388
- className: styles$4["tableCompareGrass"]
19757
+ className: styles$5["tableCompareGrass"]
19389
19758
  }, React__default.createElement("div", {
19390
- className: styles$4["table-responsive"]
19759
+ className: styles$5["table-responsive"]
19391
19760
  }, isMyStoryStudent && React__default.createElement(material.Table, {
19392
19761
  style: {
19393
19762
  width: "100%",
@@ -19399,7 +19768,7 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19399
19768
  },
19400
19769
  className: "" + printStyles["avoid-break-inside"]
19401
19770
  }, React__default.createElement("tr", null, React__default.createElement("th", {
19402
- className: styles$4["thcolumn1"]
19771
+ className: styles$5["thcolumn1"]
19403
19772
  }, t("problem_number")), React__default.createElement("th", {
19404
19773
  style: {
19405
19774
  textAlign: "center"
@@ -19417,7 +19786,7 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19417
19786
  textAlign: "center"
19418
19787
  }
19419
19788
  }, t("_category")))), React__default.createElement("tbody", null, renderTableBody(incorrectQuestions))), !isMyStoryStudent && renderQuestions(incorrectQuestions))) : React__default.createElement("div", {
19420
- className: styles$4["noData"] + " " + printStyles["avoid-break-inside"]
19789
+ className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
19421
19790
  }, t("no_data"))));
19422
19791
  };
19423
19792
 
@@ -19437,37 +19806,37 @@ var TextbookTrickyProblem = function TextbookTrickyProblem(_ref) {
19437
19806
  });
19438
19807
  var renderProblems = function renderProblems() {
19439
19808
  return React__default.createElement(React.Fragment, null, React__default.createElement("div", {
19440
- className: styles$4["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19809
+ className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19441
19810
  }, React__default.createElement(iconX, null), React__default.createElement("span", null, t("incorrect_problem_among_the_starred_problems"))), React__default.createElement("div", {
19442
- className: styles$4["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
19811
+ className: styles$5["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
19443
19812
  }, !!(inCorrectQuestions !== null && inCorrectQuestions !== void 0 && inCorrectQuestions.length) && (inCorrectQuestions === null || inCorrectQuestions === void 0 ? void 0 : inCorrectQuestions.map(function (question) {
19444
19813
  return React__default.createElement("span", {
19445
19814
  key: question.id,
19446
- className: styles$4["question"]
19815
+ className: styles$5["question"]
19447
19816
  }, t("number_question", {
19448
19817
  number: question.questionOrder + 1
19449
19818
  }));
19450
19819
  })), !(data !== null && data !== void 0 && data.studentQuestionResults.length) && React__default.createElement("div", {
19451
- className: styles$4["noData"]
19820
+ className: styles$5["noData"]
19452
19821
  }, t("no_data"))), React__default.createElement("div", {
19453
- className: styles$4["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19822
+ className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19454
19823
  }, React__default.createElement(iconAssignedQuestions, null), React__default.createElement("span", null, t("correct_problem_among_the_starred_problems"))), React__default.createElement("div", {
19455
- className: styles$4["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
19824
+ className: styles$5["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
19456
19825
  }, !!(correctQuestions !== null && correctQuestions !== void 0 && correctQuestions.length) && (correctQuestions === null || correctQuestions === void 0 ? void 0 : correctQuestions.map(function (question) {
19457
19826
  return React__default.createElement("div", {
19458
19827
  key: question.id,
19459
- className: styles$4["question"]
19828
+ className: styles$5["question"]
19460
19829
  }, t("number_question", {
19461
19830
  number: question.questionOrder + 1
19462
19831
  }));
19463
19832
  })), !(data !== null && data !== void 0 && data.studentQuestionResults.length) && React__default.createElement("div", {
19464
- className: styles$4["noData"]
19833
+ className: styles$5["noData"]
19465
19834
  }, t("no_data"))));
19466
19835
  };
19467
19836
  return React__default.createElement("div", {
19468
- className: "" + styles$4["wrapperProblem"]
19837
+ className: "" + styles$5["wrapperProblem"]
19469
19838
  }, React__default.createElement("div", {
19470
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$4["titleProblemClose"] : styles$4["titleProblem"]),
19839
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
19471
19840
  onClick: function onClick() {
19472
19841
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
19473
19842
  }
@@ -19479,10 +19848,10 @@ var TextbookTrickyProblem = function TextbookTrickyProblem(_ref) {
19479
19848
  }
19480
19849
  }, t("tricky_problems")), isOpen ? React__default.createElement(io5.IoChevronUp, {
19481
19850
  size: 24,
19482
- color: styles$4.gray_300
19851
+ color: styles$5.gray_300
19483
19852
  }) : React__default.createElement(io5.IoChevronDown, {
19484
19853
  size: 24,
19485
- color: styles$4.gray_300
19854
+ color: styles$5.gray_300
19486
19855
  })), isOpen && React__default.createElement(React.Fragment, null, renderProblems()));
19487
19856
  };
19488
19857
 
@@ -19904,7 +20273,8 @@ var useExamResultData = function useExamResultData(props) {
19904
20273
  handleChangeTab = props.handleChangeTab,
19905
20274
  selectedTab = props.selectedTab,
19906
20275
  isPrint = props.isPrint,
19907
- chapterId = props.chapterId;
20276
+ chapterId = props.chapterId,
20277
+ onLoadingChange = props.onLoadingChange;
19908
20278
  var query = new URLSearchParams(searchParams);
19909
20279
  var user = reactRedux.useSelector(function (state) {
19910
20280
  var _state$common;
@@ -19961,9 +20331,11 @@ var useExamResultData = function useExamResultData(props) {
19961
20331
  try {
19962
20332
  var _temp2 = function _temp2() {
19963
20333
  setIsLoading(false);
20334
+ onLoadingChange === null || onLoadingChange === void 0 ? void 0 : onLoadingChange(false);
19964
20335
  };
19965
20336
  if (!examCode) return Promise.resolve();
19966
20337
  setIsLoading(true);
20338
+ onLoadingChange === null || onLoadingChange === void 0 ? void 0 : onLoadingChange(true);
19967
20339
  var _temp = _catch(function () {
19968
20340
  return Promise.resolve(Promise.all([getResults(examCode), getResultsLongTimeSpend(examCode), getResultsEffectSize(examCode), getResultsTimeOrderQuestion(examCode), getResultsCategories(examCode)])).then(function (result) {
19969
20341
  var _result$0$data, _result$1$data, _result$2$data, _result$3$data, _result$4$data;
@@ -19989,9 +20361,11 @@ var useExamResultData = function useExamResultData(props) {
19989
20361
  try {
19990
20362
  var _temp5 = function _temp5() {
19991
20363
  setIsLoading(false);
20364
+ onLoadingChange === null || onLoadingChange === void 0 ? void 0 : onLoadingChange(false);
19992
20365
  };
19993
20366
  if (!examSessionId || !studentId) return Promise.resolve();
19994
20367
  setIsLoading(true);
20368
+ onLoadingChange === null || onLoadingChange === void 0 ? void 0 : onLoadingChange(true);
19995
20369
  var _temp4 = _catch(function () {
19996
20370
  return Promise.resolve(Promise.all([getResultsTeacher(examSessionId, studentId), getResultsLongTimeSpendTeacher(examSessionId, studentId), getResultsEffectSizeTeacher(examSessionId, studentId), getResultsTimeOrderQuestionTeacher(examSessionId, studentId), getResultsCategoriesTeacher(examSessionId, studentId)])).then(function (result) {
19997
20371
  var _result$0$data2, _result$1$data2, _result$2$data2, _result$3$data2, _result$4$data2;
@@ -20031,10 +20405,12 @@ var useExamResultData = function useExamResultData(props) {
20031
20405
  try {
20032
20406
  var _temp7 = function _temp7() {
20033
20407
  setIsLoading(false);
20408
+ onLoadingChange === null || onLoadingChange === void 0 ? void 0 : onLoadingChange(false);
20034
20409
  };
20035
20410
  if (!chapterId) return Promise.resolve();
20036
20411
  if (!isStudent && !studentId) return Promise.resolve();
20037
20412
  setIsLoading(true);
20413
+ onLoadingChange === null || onLoadingChange === void 0 ? void 0 : onLoadingChange(true);
20038
20414
  var _temp6 = _catch(function () {
20039
20415
  return Promise.resolve(Promise.all([getChapterResultsApi(chapterId, isStudent ? undefined : studentId), getChapterResultsLongTimeSpendApi(chapterId, isStudent ? undefined : studentId), getChapterResultsEffectSizeApi(chapterId, isStudent ? undefined : studentId), getChapterResultsTimeOrderQuestionApi(chapterId, isStudent ? undefined : studentId), getChapterResultsCategoriesApi(chapterId, isStudent ? undefined : studentId)])).then(function (result) {
20040
20416
  var _result$0$data3, _result$1$data3, _result$2$data3, _result$3$data3, _result$4$data3;
@@ -20200,7 +20576,7 @@ var useExamResultData = function useExamResultData(props) {
20200
20576
  }
20201
20577
  }
20202
20578
  }),
20203
- colors: [styles$4.dark, styles$4.purple_900],
20579
+ colors: [styles$5.dark, styles$5.purple_900],
20204
20580
  xaxis: _extends({}, DEFAULT_LINE_CHART_OPTIONS.xaxis, {
20205
20581
  categories: ["s"].concat(Array.from({
20206
20582
  length: questionLength
@@ -20660,7 +21036,8 @@ var useExamResult = function useExamResult(props) {
20660
21036
  studentId = _props$studentId === void 0 ? 0 : _props$studentId,
20661
21037
  code = props.code,
20662
21038
  chapterId = props.chapterId,
20663
- onViewQA = props.onViewQA;
21039
+ onViewQA = props.onViewQA,
21040
+ onLoadingChange = props.onLoadingChange;
20664
21041
  var _useTranslation = reactI18next.useTranslation(),
20665
21042
  t = _useTranslation.t;
20666
21043
  var _useTab = useTab(),
@@ -20674,7 +21051,8 @@ var useExamResult = function useExamResult(props) {
20674
21051
  code: code,
20675
21052
  chapterId: chapterId,
20676
21053
  handleChangeTab: handleChangeTab,
20677
- selectedTab: selected
21054
+ selectedTab: selected,
21055
+ onLoadingChange: onLoadingChange
20678
21056
  });
20679
21057
  var isLoading = examResultData.isLoading,
20680
21058
  timelyOrderQuestions = examResultData.timelyOrderQuestions,
@@ -20741,7 +21119,9 @@ var ExamResultV2 = function ExamResultV2(props) {
20741
21119
  isMyStoryStudent = props.isMyStoryStudent,
20742
21120
  onViewQA = props.onViewQA,
20743
21121
  chapterId = props.chapterId,
20744
- studentId = props.studentId;
21122
+ studentId = props.studentId,
21123
+ _props$showLoading = props.showLoading,
21124
+ showLoading = _props$showLoading === void 0 ? true : _props$showLoading;
20745
21125
  var isAdminSite = role === exports.Role.Admin;
20746
21126
  var _useExamResult = useExamResult(props),
20747
21127
  t = _useExamResult.t,
@@ -20894,7 +21274,7 @@ var ExamResultV2 = function ExamResultV2(props) {
20894
21274
  onViewQA === null || onViewQA === void 0 ? void 0 : onViewQA(resultData.student.id, resultData.examSessionId);
20895
21275
  };
20896
21276
  return React__default.createElement(React.Fragment, null, React__default.createElement(LoadingComponent, {
20897
- isLoading: !!isLoading
21277
+ isLoading: showLoading && !!isLoading
20898
21278
  }), timelyOrderQuestions[dataChartIndex] && longTimeSpend && effectSize ? React__default.createElement("div", {
20899
21279
  style: {
20900
21280
  width: "100%"
@@ -21207,18 +21587,18 @@ var ExamResultV2 = function ExamResultV2(props) {
21207
21587
  value: selected,
21208
21588
  index: 1
21209
21589
  }, React__default.createElement("div", {
21210
- className: styles$4["compareChart"]
21590
+ className: styles$5["compareChart"]
21211
21591
  }, React__default.createElement("div", {
21212
- className: styles$4["prevChart"] + " " + (dataChartIndex > 0 && "pointer"),
21592
+ className: styles$5["prevChart"] + " " + (dataChartIndex > 0 && "pointer"),
21213
21593
  onClick: handlePrevChart
21214
21594
  }, React__default.createElement(iconBtnPrevChart, null)), React__default.createElement("div", {
21215
- className: styles$4["chart"] + " sr-line-chart"
21595
+ className: styles$5["chart"] + " sr-line-chart"
21216
21596
  }, React__default.createElement("div", null, React__default.createElement(ReactApexChart, {
21217
21597
  height: 389,
21218
21598
  options: chartOptions,
21219
21599
  series: series
21220
21600
  }))), React__default.createElement("div", {
21221
- className: styles$4["nextChart"] + " " + (dataChartIndex < timelyOrderQuestions.length - 1 && "pointer"),
21601
+ className: styles$5["nextChart"] + " " + (dataChartIndex < timelyOrderQuestions.length - 1 && "pointer"),
21222
21602
  onClick: handleNextChart
21223
21603
  }, React__default.createElement(iconBtnNextChart, null)))), React__default.createElement(CustomTabPanel, {
21224
21604
  value: selected,
@@ -21412,13 +21792,13 @@ var LoadingDots = function LoadingDots(_ref) {
21412
21792
  color: "#FFF",
21413
21793
  fontSize: 20
21414
21794
  }, text), React__default.createElement("div", {
21415
- className: styles$4["loader"]
21795
+ className: styles$5["loader"]
21416
21796
  }, React__default.createElement("div", {
21417
- className: styles$4["dot"]
21797
+ className: styles$5["dot"]
21418
21798
  }), React__default.createElement("div", {
21419
- className: styles$4["dot"]
21799
+ className: styles$5["dot"]
21420
21800
  }), React__default.createElement("div", {
21421
- className: styles$4["dot"]
21801
+ className: styles$5["dot"]
21422
21802
  })));
21423
21803
  };
21424
21804
 
@@ -22260,7 +22640,7 @@ var usePreparedExam = function usePreparedExam(_ref) {
22260
22640
  };
22261
22641
  };
22262
22642
 
22263
- var styles$5 = {"drawer":"_1k4kj","open":"_IB2-g","drawer-overlay":"_xnHGE","drawer-header":"_1gLOh","drawer-form":"_2pLGg","dropdown-content-academy":"_1rR7s","dropdown-change":"_1Hcs4","btn-register":"_37IIN","btn-cancel":"_KDkNh","dropdown-academy-item":"_1-srV","dropdown-content-language":"_88rAE","dropdown-item-language":"_2jjUW","dropdown-item-language-active":"_27lik","item-address":"_tGib4","item-logout":"_1MXIb","title-address":"_A_I15","image-academy":"_3zxbi","slick-dots":"_VlpW7","slick-active":"_1zzu9","slider-container":"_1lCoM","button":"__sLSD","variable-width":"_1AnqW","slick-slide":"_3ZJaN","center":"_jUOZF","slick-center":"_35s6t","content":"_1dQdx","image":"_1feWs","slick-loading":"_FchLZ","slick-slider":"_1T7zW","slick-thumb":"_o2Tkt","slides":"_1FY2k","slick-next":"_23Pi9","slick-prev":"_2g2iD","heroBanner_qdFl":"_2y7lQ","buttons_AeoN":"_KMW2P","mdxPageWrapper_j9I6":"_3dqhE","collapseSidebarButton_PEFL":"_24wBH","expandButton_TmdG":"_2LXBj","announcementBarClose_gvF7":"_32uEE","announcementBarPlaceholder_vyr4":"_2PagL","navbarSearchContainer_Bca1":"_3Uiqm","lastUpdated_vwxv":"_1UNOJ","tocMobile_ITEo":"_qcGlb","collapseSidebarButtonIcon_kv0_":"_2G6Hz","expandButtonIcon_i1dp":"_1IMu8","menuHtmlItem_M9Kj":"_1YUka","menu_SIkG":"_FgMDa","menuWithAnnouncementBar_GW3s":"_zUamI","sidebar_njMd":"_3E4Oo","sidebarWithHideableNavbar_wUlq":"_3xviA","sidebarHidden_VK0M":"_cWHWX","sidebarLogo_isFc":"_UMHGX","docSidebarContainer_YfHR":"_1SwXt","docSidebarContainerHidden_DPk8":"_3h6KW","sidebarViewport_aRkj":"_2OCK_","docMainContainer_TBSr":"_FuxZS","docMainContainerEnhanced_lQrH":"_ZUdP4","docItemWrapperEnhanced_JWYK":"_2AmPG","docItemCol_VOVn":"_3GmBr","container":"_1UB4R","col":"_csNus","footer":"_gceZJ","colorModeToggle_DEke":"_OawS_","footer__link-separator":"_3fzLh","navbar__item":"_1wyV6","tableOfContents_bqdL":"_3tGM4","footer__col":"_3DllA","footer__link-item":"_2ibTz","hero":"_369-d","navbar":"_5LWZt","container-fluid":"_2GcNI","navbar__toggle":"_2YjZl","navbar__search-input":"_3__u0","pills--block":"_2f7GT","tabs--block":"_3xrdo","docItemContainer_F8PC":"_6P_Dr","markdown":"_2xZt0","backToTopButton_sjWU":"_2bUwo","thin-scrollbar":"_1mrmJ","announcementBar_mb4j":"_2oveE","menu":"_14IWx","pagination-nav":"_3S8xG","table-of-contents":"_SnjS9","tabs":"_qpa-q","codeBlockLines_e6Vv":"_2ou2J"};
22643
+ var styles$6 = {"drawer":"_1k4kj","open":"_IB2-g","drawer-overlay":"_xnHGE","drawer-header":"_1gLOh","drawer-form":"_2pLGg","dropdown-content-academy":"_1rR7s","dropdown-change":"_1Hcs4","btn-register":"_37IIN","btn-cancel":"_KDkNh","dropdown-academy-item":"_1-srV","dropdown-content-language":"_88rAE","dropdown-item-language":"_2jjUW","dropdown-item-language-active":"_27lik","item-address":"_tGib4","item-logout":"_1MXIb","title-address":"_A_I15","image-academy":"_3zxbi","slick-dots":"_VlpW7","slick-active":"_1zzu9","slider-container":"_1lCoM","button":"__sLSD","variable-width":"_1AnqW","slick-slide":"_3ZJaN","center":"_jUOZF","slick-center":"_35s6t","content":"_1dQdx","image":"_1feWs","slick-loading":"_FchLZ","slick-slider":"_1T7zW","slick-thumb":"_o2Tkt","slides":"_1FY2k","slick-next":"_23Pi9","slick-prev":"_2g2iD","heroBanner_qdFl":"_2y7lQ","buttons_AeoN":"_KMW2P","mdxPageWrapper_j9I6":"_3dqhE","collapseSidebarButton_PEFL":"_24wBH","expandButton_TmdG":"_2LXBj","announcementBarClose_gvF7":"_32uEE","announcementBarPlaceholder_vyr4":"_2PagL","navbarSearchContainer_Bca1":"_3Uiqm","lastUpdated_vwxv":"_1UNOJ","tocMobile_ITEo":"_qcGlb","collapseSidebarButtonIcon_kv0_":"_2G6Hz","expandButtonIcon_i1dp":"_1IMu8","menuHtmlItem_M9Kj":"_1YUka","menu_SIkG":"_FgMDa","menuWithAnnouncementBar_GW3s":"_zUamI","sidebar_njMd":"_3E4Oo","sidebarWithHideableNavbar_wUlq":"_3xviA","sidebarHidden_VK0M":"_cWHWX","sidebarLogo_isFc":"_UMHGX","docSidebarContainer_YfHR":"_1SwXt","docSidebarContainerHidden_DPk8":"_3h6KW","sidebarViewport_aRkj":"_2OCK_","docMainContainer_TBSr":"_FuxZS","docMainContainerEnhanced_lQrH":"_ZUdP4","docItemWrapperEnhanced_JWYK":"_2AmPG","docItemCol_VOVn":"_3GmBr","container":"_1UB4R","col":"_csNus","footer":"_gceZJ","colorModeToggle_DEke":"_OawS_","footer__link-separator":"_3fzLh","navbar__item":"_1wyV6","tableOfContents_bqdL":"_3tGM4","footer__col":"_3DllA","footer__link-item":"_2ibTz","hero":"_369-d","navbar":"_5LWZt","container-fluid":"_2GcNI","navbar__toggle":"_2YjZl","navbar__search-input":"_3__u0","pills--block":"_2f7GT","tabs--block":"_3xrdo","docItemContainer_F8PC":"_6P_Dr","markdown":"_2xZt0","backToTopButton_sjWU":"_2bUwo","thin-scrollbar":"_1mrmJ","announcementBar_mb4j":"_2oveE","menu":"_14IWx","pagination-nav":"_3S8xG","table-of-contents":"_SnjS9","tabs":"_qpa-q","codeBlockLines_e6Vv":"_2ou2J"};
22264
22644
 
22265
22645
  var ResetFilterDialog = function ResetFilterDialog(_ref) {
22266
22646
  var t = _ref.t,
@@ -22324,7 +22704,7 @@ var ResetFilterDialog = function ResetFilterDialog(_ref) {
22324
22704
  borderTop: "1px solid #CED2DA"
22325
22705
  }
22326
22706
  }, React__default.createElement(material.Button, {
22327
- className: styles$5["btn-cancel"],
22707
+ className: styles$6["btn-cancel"],
22328
22708
  onClick: onClose
22329
22709
  }, React__default.createElement(material.Typography, {
22330
22710
  sx: {
@@ -22335,7 +22715,7 @@ var ResetFilterDialog = function ResetFilterDialog(_ref) {
22335
22715
  lineHeight: "16.71px"
22336
22716
  }, t("close"))), React__default.createElement(material.Button, {
22337
22717
  variant: "contained",
22338
- className: styles$5["btn-register"],
22718
+ className: styles$6["btn-register"],
22339
22719
  type: "submit",
22340
22720
  sx: {
22341
22721
  padding: "12px 47px"
@@ -22754,7 +23134,7 @@ var ChapterProblemSolvingResultsDialog = function ChapterProblemSolvingResultsDi
22754
23134
  borderTop: "1px solid #CED2DA"
22755
23135
  }
22756
23136
  }, React__default.createElement(material.Button, {
22757
- className: styles$5["btn-cancel"],
23137
+ className: styles$6["btn-cancel"],
22758
23138
  onClick: onClose
22759
23139
  }, React__default.createElement(material.Typography, {
22760
23140
  sx: {
@@ -22845,7 +23225,7 @@ var StartPageDialog = function StartPageDialog(_ref) {
22845
23225
  borderTop: "1px solid #CED2DA"
22846
23226
  }
22847
23227
  }, React__default.createElement(material.Button, {
22848
- className: styles$5["btn-cancel"],
23228
+ className: styles$6["btn-cancel"],
22849
23229
  onClick: onClose
22850
23230
  }, React__default.createElement(material.Typography, {
22851
23231
  sx: {
@@ -22856,7 +23236,7 @@ var StartPageDialog = function StartPageDialog(_ref) {
22856
23236
  lineHeight: "16.71px"
22857
23237
  }, t("cancel"))), React__default.createElement(material.Button, {
22858
23238
  variant: "contained",
22859
- className: styles$5["btn-register"],
23239
+ className: styles$6["btn-register"],
22860
23240
  type: "submit",
22861
23241
  sx: {
22862
23242
  padding: "12px 47px"
@@ -23433,7 +23813,7 @@ var DeleteTextbookDialog = function DeleteTextbookDialog(_ref) {
23433
23813
  borderTop: "1px solid #CED2DA"
23434
23814
  }
23435
23815
  }, React__default.createElement(material.Button, {
23436
- className: styles$5["btn-cancel"],
23816
+ className: styles$6["btn-cancel"],
23437
23817
  onClick: onClose
23438
23818
  }, React__default.createElement(material.Typography, {
23439
23819
  sx: {
@@ -23444,7 +23824,7 @@ var DeleteTextbookDialog = function DeleteTextbookDialog(_ref) {
23444
23824
  lineHeight: "16.71px"
23445
23825
  }, t("cancel"))), React__default.createElement(material.Button, {
23446
23826
  variant: "contained",
23447
- className: styles$5["btn-register"],
23827
+ className: styles$6["btn-register"],
23448
23828
  type: "submit",
23449
23829
  sx: {
23450
23830
  padding: "12px 47px"
@@ -23556,13 +23936,13 @@ var TextbookInfoDrawer = function TextbookInfoDrawer(_ref) {
23556
23936
  var theme = material.useTheme();
23557
23937
  var isTabletUp = material.useMediaQuery(theme.breakpoints.up("lg"));
23558
23938
  return React__default.createElement("div", null, React__default.createElement("div", {
23559
- className: styles$5["drawer-overlay"] + " " + (isOpen && styles$5["open"]),
23939
+ className: styles$6["drawer-overlay"] + " " + (isOpen && styles$6["open"]),
23560
23940
  onClick: function onClick() {
23561
23941
  return onClose();
23562
23942
  }
23563
23943
  }), React__default.createElement(material.Stack, {
23564
23944
  width: isTabletUp ? "50vw" : "100%",
23565
- className: styles$5["drawer"] + " bg-white " + (isOpen && styles$5["open"])
23945
+ className: styles$6["drawer"] + " bg-white " + (isOpen && styles$6["open"])
23566
23946
  }, React__default.createElement(material.Stack, {
23567
23947
  bgcolor: styles.gray_50,
23568
23948
  borderBottom: "1px solid " + styles.gray_100,
@@ -24532,188 +24912,6 @@ var AlertCircleFill = function AlertCircleFill(_ref) {
24532
24912
  }));
24533
24913
  };
24534
24914
 
24535
- var CalendarFill = function CalendarFill(_ref) {
24536
- var _ref$width = _ref.width,
24537
- width = _ref$width === void 0 ? "16" : _ref$width,
24538
- _ref$height = _ref.height,
24539
- height = _ref$height === void 0 ? "16" : _ref$height,
24540
- color = _ref.color;
24541
- return React__default.createElement("svg", {
24542
- width: width,
24543
- height: height,
24544
- fill: color,
24545
- viewBox: "0 0 16 16",
24546
- xmlns: "http://www.w3.org/2000/svg"
24547
- }, React__default.createElement("path", {
24548
- d: "M15 3.99998C15 3.46955 14.7893 2.96084 14.4142 2.58577C14.0391 2.2107 13.5304 1.99998 13 1.99998H12.5V1.51405C12.5 1.24498 12.2931 1.01405 12.0241 1.00061C11.9565 0.997353 11.8889 1.00785 11.8255 1.03148C11.762 1.05511 11.7041 1.09136 11.6551 1.13805C11.6061 1.18475 11.5671 1.2409 11.5404 1.30311C11.5138 1.36532 11.5 1.4323 11.5 1.49998V1.99998H4.5V1.51405C4.5 1.24498 4.29313 1.01405 4.02406 1.00061C3.95646 0.997353 3.8889 1.00785 3.82547 1.03148C3.76204 1.05511 3.70407 1.09136 3.65508 1.13805C3.60608 1.18475 3.56707 1.2409 3.54041 1.30311C3.51375 1.36532 3.50001 1.4323 3.5 1.49998V1.99998H3C2.46957 1.99998 1.96086 2.2107 1.58579 2.58577C1.21071 2.96084 1 3.46955 1 3.99998V4.37498C1 4.40814 1.01317 4.43993 1.03661 4.46337C1.06005 4.48682 1.09185 4.49998 1.125 4.49998H14.875C14.9082 4.49998 14.9399 4.48682 14.9634 4.46337C14.9868 4.43993 15 4.40814 15 4.37498V3.99998Z",
24549
- fill: "#97A1AF"
24550
- }), React__default.createElement("path", {
24551
- d: "M1 13C1 13.5304 1.21071 14.0391 1.58579 14.4142C1.96086 14.7893 2.46957 15 3 15H13C13.5304 15 14.0391 14.7893 14.4142 14.4142C14.7893 14.0391 15 13.5304 15 13V5.625C15 5.59185 14.9868 5.56005 14.9634 5.53661C14.9399 5.51317 14.9082 5.5 14.875 5.5H1.125C1.09185 5.5 1.06005 5.51317 1.03661 5.53661C1.01317 5.56005 1 5.59185 1 5.625V13Z",
24552
- fill: "#97A1AF"
24553
- }));
24554
- };
24555
-
24556
- var ClockFill = function ClockFill(_ref) {
24557
- var _ref$width = _ref.width,
24558
- width = _ref$width === void 0 ? "16" : _ref$width,
24559
- _ref$height = _ref.height,
24560
- height = _ref$height === void 0 ? "16" : _ref$height,
24561
- color = _ref.color;
24562
- return React__default.createElement("svg", {
24563
- width: width,
24564
- height: height,
24565
- fill: color,
24566
- viewBox: "0 0 14 14",
24567
- xmlns: "http://www.w3.org/2000/svg"
24568
- }, React__default.createElement("path", {
24569
- d: "M7 0.25C3.41031 0.25 0.5 3.16031 0.5 6.75C0.5 10.3397 3.41031 13.25 7 13.25C10.5897 13.25 13.5 10.3397 13.5 6.75C13.5 3.16031 10.5897 0.25 7 0.25ZM10 7.75H7C6.86739 7.75 6.74021 7.69732 6.64645 7.60355C6.55268 7.50979 6.5 7.38261 6.5 7.25V2.75C6.5 2.61739 6.55268 2.49021 6.64645 2.39645C6.74021 2.30268 6.86739 2.25 7 2.25C7.13261 2.25 7.25979 2.30268 7.35355 2.39645C7.44732 2.49021 7.5 2.61739 7.5 2.75V6.75H10C10.1326 6.75 10.2598 6.80268 10.3536 6.89645C10.4473 6.99021 10.5 7.11739 10.5 7.25C10.5 7.38261 10.4473 7.50979 10.3536 7.60355C10.2598 7.69732 10.1326 7.75 10 7.75Z",
24570
- fill: "#97A1AF"
24571
- }));
24572
- };
24573
-
24574
- var CheckedCircleFill = function CheckedCircleFill(_ref) {
24575
- var _ref$width = _ref.width,
24576
- width = _ref$width === void 0 ? "16" : _ref$width,
24577
- _ref$height = _ref.height,
24578
- height = _ref$height === void 0 ? "17" : _ref$height,
24579
- color = _ref.color;
24580
- return React__default.createElement("svg", {
24581
- width: width,
24582
- height: height,
24583
- fill: color,
24584
- viewBox: "0 0 16 17",
24585
- xmlns: "http://www.w3.org/2000/svg"
24586
- }, React__default.createElement("path", {
24587
- d: "M8 1.75C4.41594 1.75 1.5 4.66594 1.5 8.25C1.5 11.8341 4.41594 14.75 8 14.75C11.5841 14.75 14.5 11.8341 14.5 8.25C14.5 4.66594 11.5841 1.75 8 1.75ZM11.3828 6.07156L7.18281 11.0716C7.13674 11.1264 7.07941 11.1708 7.01471 11.2016C6.95001 11.2323 6.87945 11.2489 6.80781 11.25H6.79938C6.72929 11.25 6.66 11.2352 6.59599 11.2067C6.53198 11.1782 6.47468 11.1365 6.42781 11.0844L4.62781 9.08438C4.5821 9.03589 4.54654 8.97876 4.52322 8.91633C4.4999 8.85391 4.4893 8.78745 4.49203 8.72087C4.49477 8.65429 4.51078 8.58892 4.53914 8.52862C4.56749 8.46831 4.60761 8.41429 4.65715 8.36971C4.70668 8.32514 4.76463 8.29091 4.82757 8.26905C4.89052 8.24719 4.95721 8.23813 5.02371 8.2424C5.09021 8.24668 5.15518 8.26421 5.21481 8.29396C5.27444 8.3237 5.32752 8.36507 5.37094 8.41562L6.78625 9.98812L10.6172 5.42844C10.7031 5.32909 10.8247 5.26754 10.9556 5.25711C11.0866 5.24668 11.2164 5.28819 11.317 5.37268C11.4175 5.45717 11.4808 5.57784 11.4931 5.70862C11.5055 5.8394 11.4658 5.96977 11.3828 6.07156Z",
24588
- fill: "#97A1AF"
24589
- }));
24590
- };
24591
-
24592
- var IconPerson = function IconPerson(_ref) {
24593
- var _ref$width = _ref.width,
24594
- width = _ref$width === void 0 ? "16" : _ref$width,
24595
- _ref$height = _ref.height,
24596
- height = _ref$height === void 0 ? "16" : _ref$height,
24597
- color = _ref.color;
24598
- return React__default.createElement("svg", {
24599
- width: width,
24600
- height: height,
24601
- fill: color,
24602
- viewBox: "0 0 16 16",
24603
- xmlns: "http://www.w3.org/2000/svg"
24604
- }, React__default.createElement("path", {
24605
- d: "M10.395 2.01813C9.78691 1.36156 8.93753 1 8.00003 1C7.05753 1 6.20534 1.35937 5.60003 2.01187C4.98815 2.67156 4.69003 3.56813 4.76003 4.53625C4.89878 6.44625 6.35222 8 8.00003 8C9.64784 8 11.0988 6.44656 11.2397 4.53687C11.3107 3.5775 11.0107 2.68281 10.395 2.01813Z",
24606
- fill: "#97A1AF"
24607
- }), React__default.createElement("path", {
24608
- d: "M13.4999 15H2.49993C2.35595 15.0019 2.21337 14.9716 2.08255 14.9115C1.95173 14.8513 1.83597 14.7627 1.74368 14.6522C1.54056 14.4094 1.45868 14.0778 1.51931 13.7425C1.78306 12.2794 2.60618 11.0503 3.89993 10.1875C5.04931 9.42156 6.50525 9 7.99993 9C9.49462 9 10.9506 9.42188 12.0999 10.1875C13.3937 11.05 14.2168 12.2791 14.4806 13.7422C14.5412 14.0775 14.4593 14.4091 14.2562 14.6519C14.1639 14.7625 14.0482 14.8511 13.9174 14.9113C13.7865 14.9715 13.6439 15.0018 13.4999 15Z",
24609
- fill: "#97A1AF"
24610
- }));
24611
- };
24612
-
24613
- var LessonTooltip = function LessonTooltip(_ref) {
24614
- var lesson = _ref.lesson,
24615
- lessonAttendance = _ref.lessonAttendance;
24616
- var _useTranslation = reactI18next.useTranslation(),
24617
- t = _useTranslation.t;
24618
- return React__default.createElement(material.Stack, {
24619
- padding: "16px"
24620
- }, React__default.createElement(material.Stack, {
24621
- gap: "20px"
24622
- }, React__default.createElement(material.Typography, {
24623
- sx: {
24624
- color: grey[700]
24625
- }
24626
- }, lesson.courseName), React__default.createElement(material.Stack, {
24627
- display: "flex",
24628
- flexDirection: "row",
24629
- justifyContent: "space-between",
24630
- gap: "20px"
24631
- }, React__default.createElement(material.Box, {
24632
- display: "flex",
24633
- flexDirection: "row",
24634
- gap: "4px"
24635
- }, React__default.createElement(CalendarFill, null), React__default.createElement(material.Typography, {
24636
- sx: {
24637
- color: grey[500],
24638
- fontSize: "13px",
24639
- fontWeight: "600",
24640
- whiteSpace: "nowrap"
24641
- }
24642
- }, t("class_date"))), React__default.createElement(material.Typography, {
24643
- sx: {
24644
- color: grey[700],
24645
- fontSize: "14px",
24646
- fontWeight: "600"
24647
- }
24648
- }, t("" + moment(lesson === null || lesson === void 0 ? void 0 : lesson.date).format(t("date_format"))))), React__default.createElement(material.Stack, {
24649
- display: "flex",
24650
- flexDirection: "row",
24651
- justifyContent: "space-between",
24652
- gap: "20px"
24653
- }, React__default.createElement(material.Stack, {
24654
- display: "flex",
24655
- flexDirection: "row",
24656
- gap: "4px"
24657
- }, React__default.createElement(ClockFill, null), React__default.createElement(material.Typography, {
24658
- sx: {
24659
- color: grey[500],
24660
- fontSize: "13px",
24661
- fontWeight: "600",
24662
- whiteSpace: "nowrap"
24663
- }
24664
- }, t("class_time"))), React__default.createElement(material.Typography, {
24665
- sx: {
24666
- color: grey[700],
24667
- fontSize: "14px",
24668
- fontWeight: "600"
24669
- }
24670
- }, formatTimeHHmm(lesson === null || lesson === void 0 ? void 0 : lesson.startTime) + " : " + formatTimeHHmm(lesson === null || lesson === void 0 ? void 0 : lesson.endTime) + " (" + subtractTime(lesson === null || lesson === void 0 ? void 0 : lesson.endTime, lesson === null || lesson === void 0 ? void 0 : lesson.startTime, t) + ")")), React__default.createElement(material.Stack, {
24671
- display: "flex",
24672
- flexDirection: "row",
24673
- justifyContent: "space-between",
24674
- gap: "20px"
24675
- }, React__default.createElement(material.Stack, {
24676
- display: "flex",
24677
- flexDirection: "row",
24678
- gap: "4px"
24679
- }, React__default.createElement(CheckedCircleFill, null), React__default.createElement(material.Typography, {
24680
- sx: {
24681
- color: grey[500],
24682
- fontSize: "13px",
24683
- fontWeight: "600",
24684
- whiteSpace: "nowrap"
24685
- }
24686
- }, t("attendance"))), React__default.createElement(material.Typography, {
24687
- sx: {
24688
- color: grey[700],
24689
- fontSize: "14px",
24690
- fontWeight: "600"
24691
- }
24692
- }, (lessonAttendance === null || lessonAttendance === void 0 ? void 0 : lessonAttendance.status) === StudentAttendanceStatus.Late ? t("late") : (lessonAttendance === null || lessonAttendance === void 0 ? void 0 : lessonAttendance.status) === StudentAttendanceStatus.Attended ? t("attendance") : t("none_attendance"))), React__default.createElement(material.Stack, {
24693
- display: "flex",
24694
- flexDirection: "row",
24695
- justifyContent: "space-between",
24696
- gap: "20px"
24697
- }, React__default.createElement(material.Stack, {
24698
- display: "flex",
24699
- flexDirection: "row",
24700
- gap: "4px"
24701
- }, React__default.createElement(IconPerson, null), React__default.createElement(material.Typography, {
24702
- sx: {
24703
- color: grey[500],
24704
- fontSize: "13px",
24705
- fontWeight: "600",
24706
- whiteSpace: "nowrap"
24707
- }
24708
- }, t("teacher_in_charge"))), React__default.createElement(material.Typography, {
24709
- sx: {
24710
- color: grey[700],
24711
- fontSize: "14px",
24712
- fontWeight: "600"
24713
- }
24714
- }, lesson === null || lesson === void 0 ? void 0 : lesson.mainTeacherName))));
24715
- };
24716
-
24717
24915
  var AttendanceCourseTable = function AttendanceCourseTable(_ref) {
24718
24916
  var data = _ref.data,
24719
24917
  containerProps = _ref.containerProps,
@@ -24722,23 +24920,17 @@ var AttendanceCourseTable = function AttendanceCourseTable(_ref) {
24722
24920
  mainTeacherName = _ref.mainTeacherName,
24723
24921
  courseName = _ref.courseName,
24724
24922
  courseId = _ref.courseId,
24725
- studentId = _ref.studentId,
24726
24923
  onCheckInLesson = _ref.onCheckInLesson;
24727
24924
  var _useTranslation = reactI18next.useTranslation(),
24728
24925
  t = _useTranslation.t;
24729
- var isAdmin = reactRedux.useSelector(function (state) {
24730
- var _state$common, _state$common$user, _state$common$user$ro;
24731
- return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : (_state$common$user$ro = _state$common$user.roles) === null || _state$common$user$ro === void 0 ? void 0 : _state$common$user$ro.includes(exports.Role.Admin);
24732
- });
24733
24926
  var language = reactRedux.useSelector(function (state) {
24734
- var _state$common2;
24735
- return state === null || state === void 0 ? void 0 : (_state$common2 = state.common) === null || _state$common2 === void 0 ? void 0 : _state$common2.language;
24927
+ var _state$common;
24928
+ return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.language;
24736
24929
  });
24737
24930
  var dataString = JSON.stringify(data);
24738
24931
  var containerRef = React.useRef(null);
24739
- var handleCheckInLesson = function handleCheckInLesson(lesson, studentId) {
24740
- if (isAdmin) return;
24741
- onCheckInLesson(lesson, studentId);
24932
+ var handleCheckInLesson = function handleCheckInLesson(lesson, attendance) {
24933
+ onCheckInLesson(lesson, attendance);
24742
24934
  };
24743
24935
  var renderItem = function renderItem(rowIndex, columnIndex, _) {
24744
24936
  if (rowIndex === 0) return React__default.createElement(material.Box, {
@@ -24782,9 +24974,8 @@ var AttendanceCourseTable = function AttendanceCourseTable(_ref) {
24782
24974
  }, React__default.createElement(material.IconButton, {
24783
24975
  size: "small",
24784
24976
  className: "d-flex align-items-center ",
24785
- disabled: isAdmin,
24786
24977
  onClick: function onClick() {
24787
- return handleCheckInLesson(lesson, studentId);
24978
+ return handleCheckInLesson(lesson, attendance);
24788
24979
  },
24789
24980
  sx: {
24790
24981
  width: "26px",
@@ -24834,8 +25025,7 @@ var AttendanceCourseTable = function AttendanceCourseTable(_ref) {
24834
25025
  };
24835
25026
 
24836
25027
  var CourseAttendanceItem = function CourseAttendanceItem(_ref) {
24837
- var studentId = _ref.studentId,
24838
- data = _ref.data,
25028
+ var data = _ref.data,
24839
25029
  onCheckInLesson = _ref.onCheckInLesson,
24840
25030
  onLoad = _ref.onLoad;
24841
25031
  var _useTranslation = reactI18next.useTranslation(),
@@ -24920,7 +25110,6 @@ var CourseAttendanceItem = function CourseAttendanceItem(_ref) {
24920
25110
  data: data.lessons,
24921
25111
  courseId: data.id,
24922
25112
  courseName: data.name,
24923
- studentId: studentId,
24924
25113
  mainTeacherName: data.mainTeacherName,
24925
25114
  onCheckInLesson: onCheckInLesson,
24926
25115
  listWidth: 0,
@@ -24940,8 +25129,7 @@ var CourseAttendanceItem = function CourseAttendanceItem(_ref) {
24940
25129
  };
24941
25130
 
24942
25131
  var CourseAttendanceList = function CourseAttendanceList(_ref) {
24943
- var studentId = _ref.studentId,
24944
- data = _ref.data,
25132
+ var data = _ref.data,
24945
25133
  isLoading = _ref.isLoading,
24946
25134
  listHeight = _ref.listHeight,
24947
25135
  containerProps = _ref.containerProps,
@@ -24950,7 +25138,6 @@ var CourseAttendanceList = function CourseAttendanceList(_ref) {
24950
25138
  var renderItem = function renderItem(item, _, measure) {
24951
25139
  return React__default.createElement(CourseAttendanceItem, {
24952
25140
  key: item.id,
24953
- studentId: studentId,
24954
25141
  data: item,
24955
25142
  onCheckInLesson: onCheckInLesson,
24956
25143
  onLoad: measure
@@ -24973,13 +25160,11 @@ var getAttendanceByStudentIdApi = function getAttendanceByStudentIdApi(studentId
24973
25160
  params: query
24974
25161
  });
24975
25162
  };
24976
- var getCheckInLessonsApi = function getCheckInLessonsApi(lessonId, studentId) {
24977
- return api.post(LESSON_URL + "/" + lessonId + "/teacher", {
24978
- studentId: studentId
24979
- });
25163
+ var getCheckInLessonsApi = function getCheckInLessonsApi(lessonId, attendanceRequest) {
25164
+ return api.post(LESSON_URL + "/" + lessonId + "/teacher", attendanceRequest);
24980
25165
  };
24981
25166
 
24982
- var useDrawerAttendanceTab = function useDrawerAttendanceTab(studentId) {
25167
+ var useDrawerAttendanceTab = function useDrawerAttendanceTab(studentId, onUpdatedAttendance) {
24983
25168
  var dispatch = reactRedux.useDispatch();
24984
25169
  var _useTranslation = reactI18next.useTranslation(),
24985
25170
  t = _useTranslation.t;
@@ -25006,15 +25191,46 @@ var useDrawerAttendanceTab = function useDrawerAttendanceTab(studentId) {
25006
25191
  isLoading = _useVirtualList.isLoading,
25007
25192
  handleLoadMore = _useVirtualList.handleLoadMore,
25008
25193
  setItems = _useVirtualList.setItems;
25009
- var handleCheckInLesson = function handleCheckInLesson(lesson, studentId) {
25194
+ var _useState = React.useState(),
25195
+ openAttendanceDalog = _useState[0],
25196
+ setOpenAttendanceDialog = _useState[1];
25197
+ var handleOpenAttendanceDialog = function handleOpenAttendanceDialog(lesson, attendance) {
25198
+ setOpenAttendanceDialog({
25199
+ lesson: lesson,
25200
+ attendance: attendance
25201
+ });
25202
+ };
25203
+ var handleCloseAttendanceDialog = function handleCloseAttendanceDialog() {
25204
+ setOpenAttendanceDialog(undefined);
25205
+ };
25206
+ var handleCheckInLesson = function handleCheckInLesson(lesson, attendance) {
25207
+ if (!!attendance && attendance.status !== StudentAttendanceStatus.Absent) handleUpdateStudentAttendance(lesson, {
25208
+ studentId: studentId,
25209
+ attendanceTime: attendance.attendanceTime,
25210
+ status: attendance.status === StudentAttendanceStatus.Attended ? StudentAttendanceStatus.Late : StudentAttendanceStatus.Absent
25211
+ });else handleOpenAttendanceDialog(lesson, attendance);
25212
+ };
25213
+ var handleUpdateStudentAttendance = function handleUpdateStudentAttendance(lesson, attendanceRequest) {
25010
25214
  try {
25011
25215
  var _temp2 = function _temp2() {
25012
25216
  dispatch(setLoading(false));
25013
25217
  };
25014
25218
  dispatch(setLoading(true));
25015
25219
  var _temp = _catch(function () {
25016
- return Promise.resolve(getCheckInLessonsApi(lesson.id, studentId)).then(function () {
25220
+ return Promise.resolve(getCheckInLessonsApi(lesson.id, attendanceRequest)).then(function () {
25221
+ var attendance = {
25222
+ lessonId: lesson.id,
25223
+ attendanceTime: attendanceRequest.attendanceTime,
25224
+ status: attendanceRequest.status
25225
+ };
25226
+ onUpdatedAttendance === null || onUpdatedAttendance === void 0 ? void 0 : onUpdatedAttendance(attendance, studentId);
25227
+ updateAttendanceData({
25228
+ lessonId: lesson.id,
25229
+ attendanceTime: attendanceRequest.attendanceTime,
25230
+ status: attendanceRequest.status
25231
+ }, lesson.courseId);
25017
25232
  reactToastify.toast.success(t("update_attendance_status_successfully"));
25233
+ handleCloseAttendanceDialog();
25018
25234
  });
25019
25235
  }, function (error) {
25020
25236
  reactToastify.toast.error(getErrorMessage(t, error));
@@ -25030,12 +25246,15 @@ var useDrawerAttendanceTab = function useDrawerAttendanceTab(studentId) {
25030
25246
  var item = JSON.parse(data);
25031
25247
  var lessonAttendance = {
25032
25248
  lessonId: item === null || item === void 0 ? void 0 : (_item$attendance = item.attendance) === null || _item$attendance === void 0 ? void 0 : _item$attendance.lessonId,
25033
- attendanceTime: moment.utc(item === null || item === void 0 ? void 0 : (_item$attendance2 = item.attendance) === null || _item$attendance2 === void 0 ? void 0 : _item$attendance2.attendanceTime).local().format(FormatDate),
25249
+ attendanceTime: item === null || item === void 0 ? void 0 : (_item$attendance2 = item.attendance) === null || _item$attendance2 === void 0 ? void 0 : _item$attendance2.attendanceTime,
25034
25250
  status: item === null || item === void 0 ? void 0 : (_item$attendance3 = item.attendance) === null || _item$attendance3 === void 0 ? void 0 : _item$attendance3.status
25035
25251
  };
25252
+ updateAttendanceData(lessonAttendance, item.courseId);
25253
+ };
25254
+ var updateAttendanceData = function updateAttendanceData(lessonAttendance, courseId) {
25036
25255
  setItems(function (prev) {
25037
25256
  var newData = prev.map(function (course) {
25038
- if (item.courseId !== course.id) return course;
25257
+ if (courseId !== course.id) return course;
25039
25258
  return _extends({}, course, {
25040
25259
  lessons: course.lessons.map(function (lesson) {
25041
25260
  if (lesson.id != lessonAttendance.lessonId) return lesson;
@@ -25067,20 +25286,27 @@ var useDrawerAttendanceTab = function useDrawerAttendanceTab(studentId) {
25067
25286
  return {
25068
25287
  items: items,
25069
25288
  isLoading: isLoading,
25289
+ openAttendanceDalog: openAttendanceDalog,
25070
25290
  handleLoadMore: handleLoadMore,
25071
- handleCheckInLesson: handleCheckInLesson
25291
+ handleCheckInLesson: handleCheckInLesson,
25292
+ handleCloseAttendanceDialog: handleCloseAttendanceDialog,
25293
+ handleUpdateStudentAttendance: handleUpdateStudentAttendance
25072
25294
  };
25073
25295
  };
25074
25296
 
25075
25297
  var DrawerAttendanceTab = function DrawerAttendanceTab(_ref) {
25076
25298
  var studentId = _ref.studentId,
25077
25299
  selectedTab = _ref.selectedTab,
25078
- value = _ref.value;
25079
- var _useDrawerAttendanceT = useDrawerAttendanceTab(studentId),
25300
+ value = _ref.value,
25301
+ onUpdatedAttendance = _ref.onUpdatedAttendance;
25302
+ var _useDrawerAttendanceT = useDrawerAttendanceTab(studentId, onUpdatedAttendance),
25080
25303
  items = _useDrawerAttendanceT.items,
25081
25304
  isLoading = _useDrawerAttendanceT.isLoading,
25305
+ openAttendanceDalog = _useDrawerAttendanceT.openAttendanceDalog,
25082
25306
  handleLoadMore = _useDrawerAttendanceT.handleLoadMore,
25083
- handleCheckInLesson = _useDrawerAttendanceT.handleCheckInLesson;
25307
+ handleCheckInLesson = _useDrawerAttendanceT.handleCheckInLesson,
25308
+ handleCloseAttendanceDialog = _useDrawerAttendanceT.handleCloseAttendanceDialog,
25309
+ handleUpdateStudentAttendance = _useDrawerAttendanceT.handleUpdateStudentAttendance;
25084
25310
  return React__default.createElement(DrawerTabContent, {
25085
25311
  value: value,
25086
25312
  isSelected: selectedTab === value
@@ -25098,10 +25324,16 @@ var DrawerAttendanceTab = function DrawerAttendanceTab(_ref) {
25098
25324
  data: items,
25099
25325
  onLoadMore: handleLoadMore,
25100
25326
  isLoading: isLoading,
25101
- studentId: studentId,
25102
25327
  onCheckInLesson: handleCheckInLesson,
25103
25328
  listHeight: 0
25104
- })));
25329
+ })), React__default.createElement(AttendanceFormDialog, {
25330
+ open: !!openAttendanceDalog,
25331
+ onClose: handleCloseAttendanceDialog,
25332
+ attendance: openAttendanceDalog === null || openAttendanceDalog === void 0 ? void 0 : openAttendanceDalog.attendance,
25333
+ lesson: openAttendanceDalog === null || openAttendanceDalog === void 0 ? void 0 : openAttendanceDalog.lesson,
25334
+ studentId: studentId,
25335
+ onSubmit: handleUpdateStudentAttendance
25336
+ }));
25105
25337
  };
25106
25338
 
25107
25339
  var StudentInfoDrawer = function StudentInfoDrawer(props) {
@@ -25111,7 +25343,8 @@ var StudentInfoDrawer = function StudentInfoDrawer(props) {
25111
25343
  width = props.width,
25112
25344
  history = props.history,
25113
25345
  role = props.role,
25114
- onViewQA = props.onViewQA;
25346
+ onViewQA = props.onViewQA,
25347
+ onUpdatedAttendance = props.onUpdatedAttendance;
25115
25348
  var _useStudentInfoDrawer = useStudentInfoDrawer(props),
25116
25349
  loadedTabs = _useStudentInfoDrawer.loadedTabs,
25117
25350
  isLoading = _useStudentInfoDrawer.isLoading,
@@ -25142,7 +25375,8 @@ var StudentInfoDrawer = function StudentInfoDrawer(props) {
25142
25375
  }), studentId && React__default.createElement(React.Fragment, null, loadedTabs[DrawerTab.Attendance] && React__default.createElement(DrawerAttendanceTab, {
25143
25376
  value: DrawerTab.Attendance,
25144
25377
  selectedTab: selectedTab,
25145
- studentId: studentId
25378
+ studentId: studentId,
25379
+ onUpdatedAttendance: onUpdatedAttendance
25146
25380
  }), loadedTabs[DrawerTab.Note] && React__default.createElement(DrawerNoteTab, {
25147
25381
  value: DrawerTab.Note,
25148
25382
  selectedTab: selectedTab,
@@ -27530,7 +27764,7 @@ var RECENT_USER_ACTION_HEADERS = [{
27530
27764
  }];
27531
27765
  var CSV_PREFIX = "data:text/csv;charset=utf-8,";
27532
27766
 
27533
- var styles$6 = {"action-btn":"_1jXbz","action-btn--pencil":"_at4xP","icon-rotate-180":"_12gv9","drop-area":"_R4bn5"};
27767
+ var styles$7 = {"action-btn":"_1jXbz","action-btn--pencil":"_at4xP","icon-rotate-180":"_12gv9","drop-area":"_R4bn5"};
27534
27768
 
27535
27769
  var _excluded$c = ["text", "isRequired", "className"];
27536
27770
  var LabelRequired = function LabelRequired(_ref) {
@@ -28655,7 +28889,7 @@ var DeleteUserCsvDialog = function DeleteUserCsvDialog(_ref) {
28655
28889
  size: "xs",
28656
28890
  title: t('delete_users_csv')
28657
28891
  }, React__default.createElement(material.DialogContent, null, React__default.createElement("div", {
28658
- className: "" + styles$6["drop-area"],
28892
+ className: "" + styles$7["drop-area"],
28659
28893
  onDrop: handleDrop,
28660
28894
  onDragOver: handleDragOver,
28661
28895
  onClick: handleChooseFile
@@ -28784,10 +29018,10 @@ var UserRow = function UserRow(_ref) {
28784
29018
  className: "d-flex"
28785
29019
  }, isAdmin || isSuperAdmin ? React__default.createElement(material.IconButton, {
28786
29020
  color: "default",
28787
- className: styles$6["action-btn"] + " bg-warning text-white me-2",
29021
+ className: styles$7["action-btn"] + " bg-warning text-white me-2",
28788
29022
  onClick: handleViewOrUpdate
28789
29023
  }, React__default.createElement(hi.HiOutlinePencilAlt, {
28790
- className: styles$6["action-btn--pencil"],
29024
+ className: styles$7["action-btn--pencil"],
28791
29025
  size: 16
28792
29026
  })) : React__default.createElement(material.IconButton, {
28793
29027
  color: "default",
@@ -28798,7 +29032,7 @@ var UserRow = function UserRow(_ref) {
28798
29032
  })), (isAdmin || isSuperAdmin) && React__default.createElement(material.IconButton, {
28799
29033
  onClick: handleDelete,
28800
29034
  color: "default",
28801
- className: styles$6["action-btn"] + " bg-danger text-white"
29035
+ className: styles$7["action-btn"] + " bg-danger text-white"
28802
29036
  }, React__default.createElement(fa6.FaTrashCan, {
28803
29037
  size: 12
28804
29038
  })))));
@@ -28884,7 +29118,7 @@ var UserList = function UserList(_ref) {
28884
29118
  bgcolor: theme.palette.primary.main
28885
29119
  },
28886
29120
  startIcon: React__default.createElement(md.MdDownload, {
28887
- className: "" + styles$6["icon-rotate-180"],
29121
+ className: "" + styles$7["icon-rotate-180"],
28888
29122
  size: 14
28889
29123
  }),
28890
29124
  onClick: handleChooseFile
@@ -28895,7 +29129,7 @@ var UserList = function UserList(_ref) {
28895
29129
  bgcolor: theme.palette.error.main
28896
29130
  },
28897
29131
  startIcon: React__default.createElement(md.MdDownload, {
28898
- className: "" + styles$6["icon-rotate-180"],
29132
+ className: "" + styles$7["icon-rotate-180"],
28899
29133
  size: 14
28900
29134
  }),
28901
29135
  onClick: handleToggleDeleteUserCsv
@@ -29031,7 +29265,7 @@ var UserList = function UserList(_ref) {
29031
29265
  })));
29032
29266
  };
29033
29267
 
29034
- var styles$7 = {"question":"_2uc_W","question-article":"_2p7kY","question-title":"_2tHmc","question-label":"_26ATj","question-input":"_3R8PR","question-btn":"_1VZac"};
29268
+ var styles$8 = {"question":"_2uc_W","question-article":"_2p7kY","question-title":"_2tHmc","question-label":"_26ATj","question-input":"_3R8PR","question-btn":"_1VZac"};
29035
29269
 
29036
29270
  var BpIcon = material.styled("span")(function (_ref) {
29037
29271
  var theme = _ref.theme;
@@ -29104,7 +29338,7 @@ var QuestionView = function QuestionView(_ref2) {
29104
29338
  mb: "16px"
29105
29339
  }, React__default.createElement(material.Stack, null, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29106
29340
  htmlFor: "textual_answer",
29107
- className: styles$7["question-label"] + " form-label"
29341
+ className: styles$8["question-label"] + " form-label"
29108
29342
  }, t("textual_answer")), React__default.createElement(material.TextField, {
29109
29343
  sx: {
29110
29344
  "& .MuiInputBase-input": {
@@ -29132,7 +29366,7 @@ var QuestionView = function QuestionView(_ref2) {
29132
29366
  }).map(function (i) {
29133
29367
  return React__default.createElement(material.FormControlLabel, {
29134
29368
  key: i,
29135
- className: styles$7["question-label"] + " w-fit",
29369
+ className: styles$8["question-label"] + " w-fit",
29136
29370
  labelPlacement: "top",
29137
29371
  value: i,
29138
29372
  onChange: function onChange(e) {
@@ -29163,7 +29397,7 @@ var QuestionView = function QuestionView(_ref2) {
29163
29397
  }).map(function (i) {
29164
29398
  return React__default.createElement(material.FormControlLabel, {
29165
29399
  key: i,
29166
- className: styles$7["question-label"] + " w-fit",
29400
+ className: styles$8["question-label"] + " w-fit",
29167
29401
  labelPlacement: "top",
29168
29402
  value: i,
29169
29403
  onChange: function onChange(e) {
@@ -29206,7 +29440,7 @@ var QuestionView = function QuestionView(_ref2) {
29206
29440
  }, React__default.createElement(material.Grid, {
29207
29441
  container: true
29208
29442
  }, React__default.createElement("div", {
29209
- className: styles$7["question-title"] + " me-2 text-nowrap"
29443
+ className: styles$8["question-title"] + " me-2 text-nowrap"
29210
29444
  }, t("problem_number_question", {
29211
29445
  number: question.questionOrder + 1
29212
29446
  }))), React__default.createElement(material.Grid, {
@@ -29219,7 +29453,7 @@ var QuestionView = function QuestionView(_ref2) {
29219
29453
  mb: "16px"
29220
29454
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29221
29455
  htmlFor: "title",
29222
- className: styles$7["question-label"] + " form-label"
29456
+ className: styles$8["question-label"] + " form-label"
29223
29457
  }, t("title")), React__default.createElement(material.TextField, {
29224
29458
  fullWidth: true,
29225
29459
  value: question.title,
@@ -29234,7 +29468,7 @@ var QuestionView = function QuestionView(_ref2) {
29234
29468
  mb: "16px"
29235
29469
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29236
29470
  htmlFor: "author",
29237
- className: styles$7["question-label"] + " form-label"
29471
+ className: styles$8["question-label"] + " form-label"
29238
29472
  }, t("author")), React__default.createElement(material.TextField, {
29239
29473
  fullWidth: true,
29240
29474
  value: question.author,
@@ -29249,7 +29483,7 @@ var QuestionView = function QuestionView(_ref2) {
29249
29483
  mb: "16px"
29250
29484
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29251
29485
  htmlFor: "subject",
29252
- className: styles$7["question-label"] + " form-label"
29486
+ className: styles$8["question-label"] + " form-label"
29253
29487
  }, t("subject")), React__default.createElement(material.TextField, {
29254
29488
  fullWidth: true,
29255
29489
  value: question.subject,
@@ -29268,7 +29502,7 @@ var QuestionView = function QuestionView(_ref2) {
29268
29502
  mb: "16px"
29269
29503
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29270
29504
  htmlFor: "type",
29271
- className: styles$7["question-label"] + " form-label"
29505
+ className: styles$8["question-label"] + " form-label"
29272
29506
  }, t("type")), React__default.createElement(CustomSelectOption, {
29273
29507
  isTextbook: true,
29274
29508
  valueById: question.type,
@@ -29282,7 +29516,7 @@ var QuestionView = function QuestionView(_ref2) {
29282
29516
  lg: 3
29283
29517
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29284
29518
  htmlFor: "question_answer_type",
29285
- className: styles$7["question-label"] + " form-label"
29519
+ className: styles$8["question-label"] + " form-label"
29286
29520
  }, t("question_answer_type")), React__default.createElement(CustomSelect, {
29287
29521
  isDisabled: isDisabled,
29288
29522
  value: question.questionAnswerType,
@@ -29302,7 +29536,7 @@ var QuestionView = function QuestionView(_ref2) {
29302
29536
  xs: 4,
29303
29537
  lg: 4
29304
29538
  }, React__default.createElement("div", {
29305
- className: styles$7["question-title"] + " me-2 text-nowrap"
29539
+ className: styles$8["question-title"] + " me-2 text-nowrap"
29306
29540
  }, t("problem_number_question", {
29307
29541
  number: question.questionOrder + 1
29308
29542
  }))), !isTextbook && React__default.createElement(material.Grid, {
@@ -29315,7 +29549,7 @@ var QuestionView = function QuestionView(_ref2) {
29315
29549
  lg: 4
29316
29550
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29317
29551
  htmlFor: "question_answer_type",
29318
- className: styles$7["question-label"] + " form-label"
29552
+ className: styles$8["question-label"] + " form-label"
29319
29553
  }, t("question_answer_type")), React__default.createElement(CustomSelect, {
29320
29554
  isDisabled: isDisabled,
29321
29555
  value: question.questionAnswerType,
@@ -29449,7 +29683,7 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29449
29683
  onDelete === null || onDelete === void 0 ? void 0 : onDelete(article);
29450
29684
  };
29451
29685
  return React__default.createElement("div", {
29452
- className: "d-flex " + styles$7["question"] + " " + (isActive ? styles$7["question--active"] : "")
29686
+ className: "d-flex " + styles$8["question"] + " " + (isActive ? styles$8["question--active"] : "")
29453
29687
  }, React__default.createElement("div", {
29454
29688
  className: "py-1"
29455
29689
  }, React__default.createElement(pi.PiDotsNineLight, {
@@ -29457,9 +29691,9 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29457
29691
  })), React__default.createElement("div", {
29458
29692
  className: "px-2"
29459
29693
  }, React__default.createElement("p", {
29460
- className: "mb-0 " + styles$7["question-article"]
29694
+ className: "mb-0 " + styles$8["question-article"]
29461
29695
  }, t("article_number")), React__default.createElement("p", {
29462
- className: "text-center " + styles$7["question-article"]
29696
+ className: "text-center " + styles$8["question-article"]
29463
29697
  }, article)), React__default.createElement("div", {
29464
29698
  className: "flex-grow-1"
29465
29699
  }, React__default.createElement(material.Grid, {
@@ -29480,7 +29714,7 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29480
29714
  lg: 3
29481
29715
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29482
29716
  htmlFor: "question_count",
29483
- className: styles$7["question-label"] + " form-label"
29717
+ className: styles$8["question-label"] + " form-label"
29484
29718
  }, t("questions")), React__default.createElement(QuestionCountSelector, {
29485
29719
  id: "question_count",
29486
29720
  value: questionCount,
@@ -29499,7 +29733,7 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29499
29733
  }
29500
29734
  }, React__default.createElement(material.FormLabel, {
29501
29735
  htmlFor: "category",
29502
- className: styles$7["question-label"] + " form-label"
29736
+ className: styles$8["question-label"] + " form-label"
29503
29737
  }, t("category")), React__default.createElement(ArticleCategorySelector, {
29504
29738
  style: {
29505
29739
  "div:has(&)": {
@@ -29519,7 +29753,7 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29519
29753
  lg: 3
29520
29754
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29521
29755
  htmlFor: "answer_count",
29522
- className: styles$7["question-label"] + " form-label"
29756
+ className: styles$8["question-label"] + " form-label"
29523
29757
  }, t("answer_count")), React__default.createElement(AnswerCountSelector, {
29524
29758
  id: "answer_count",
29525
29759
  value: answerCount,
@@ -30044,7 +30278,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30044
30278
  xs: 5,
30045
30279
  className: 'mb-2'
30046
30280
  }, React__default.createElement("label", {
30047
- className: styles["form-label"] + " " + styles$7["question-label"],
30281
+ className: styles["form-label"] + " " + styles$8["question-label"],
30048
30282
  htmlFor: "title"
30049
30283
  }, t("exam_name")), React__default.createElement("input", {
30050
30284
  disabled: isDisabled,
@@ -30058,7 +30292,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30058
30292
  xs: 3,
30059
30293
  className: 'mb-2'
30060
30294
  }, React__default.createElement("label", {
30061
- className: styles["form-label"] + " " + styles$7["question-label"],
30295
+ className: styles["form-label"] + " " + styles$8["question-label"],
30062
30296
  htmlFor: "duration"
30063
30297
  }, t("exam_duration")), React__default.createElement(CustomSelect, {
30064
30298
  inputId: "duration",
@@ -30071,7 +30305,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30071
30305
  xs: 3,
30072
30306
  className: 'mb-2'
30073
30307
  }, React__default.createElement("label", {
30074
- className: styles["form-label"] + " " + styles$7["question-label"],
30308
+ className: styles["form-label"] + " " + styles$8["question-label"],
30075
30309
  htmlFor: "subject"
30076
30310
  }, t("subject")), React__default.createElement(CustomSelect, {
30077
30311
  inputId: "subject",
@@ -30114,7 +30348,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30114
30348
  }
30115
30349
  },
30116
30350
  disabled: isDisabled,
30117
- className: "w-100 d-flex justify-content-center align-items-center " + styles$7["question-btn"] + " mt-3",
30351
+ className: "w-100 d-flex justify-content-center align-items-center " + styles$8["question-btn"] + " mt-3",
30118
30352
  onClick: handleAddArticle
30119
30353
  }, React__default.createElement(fa.FaPlusCircle, {
30120
30354
  className: "me-2"
@@ -31699,7 +31933,7 @@ var ArticleDialog = function ArticleDialog(_ref) {
31699
31933
  }, t("add")))));
31700
31934
  };
31701
31935
 
31702
- var styles$8 = {"drawer":"_11aYm","open":"_3Ydwm","drawer-overlay":"_3SQDf","drawer-header":"_2BwOx","drawer-form":"_2Zo7R","dropdown-content-academy":"_1lzjD","dropdown-change":"_1y7K9","dropdown-academy-item":"_1Y-55","dropdown-content-language":"_1fBXY","dropdown-item-language":"_3Szun","dropdown-item-language-active":"_2HhLb","item-address":"_3WYHC","item-logout":"_2-9ix","title-address":"_1r4pn","image-academy":"_2ZozT"};
31936
+ var styles$9 = {"drawer":"_11aYm","open":"_3Ydwm","drawer-overlay":"_3SQDf","drawer-header":"_2BwOx","drawer-form":"_2Zo7R","dropdown-content-academy":"_1lzjD","dropdown-change":"_1y7K9","dropdown-academy-item":"_1Y-55","dropdown-content-language":"_1fBXY","dropdown-item-language":"_3Szun","dropdown-item-language-active":"_2HhLb","item-address":"_3WYHC","item-logout":"_2-9ix","title-address":"_1r4pn","image-academy":"_2ZozT"};
31703
31937
 
31704
31938
  var _excluded$e = ["isOpen", "onClose", "handleSaveExam"];
31705
31939
  var CreateExamDrawer = function CreateExamDrawer(props) {
@@ -31712,17 +31946,17 @@ var CreateExamDrawer = function CreateExamDrawer(props) {
31712
31946
  var theme = material.useTheme();
31713
31947
  var isTabletUp = material.useMediaQuery(theme.breakpoints.up('lg'));
31714
31948
  return React__default.createElement("div", null, React__default.createElement("div", {
31715
- className: styles$8["drawer-overlay"] + " " + (isOpen && styles$8["open"]),
31949
+ className: styles$9["drawer-overlay"] + " " + (isOpen && styles$9["open"]),
31716
31950
  onClick: function onClick() {
31717
31951
  return onClose();
31718
31952
  }
31719
31953
  }), React__default.createElement("div", {
31720
- className: styles$8["drawer"] + " bg-white " + (isOpen && styles$8["open"]),
31954
+ className: styles$9["drawer"] + " bg-white " + (isOpen && styles$9["open"]),
31721
31955
  style: {
31722
31956
  width: "" + (isTabletUp ? "70vw" : "100vw")
31723
31957
  }
31724
31958
  }, React__default.createElement("div", {
31725
- className: styles$8["drawer-header"] + " d-flex justify-content-between align-items-center"
31959
+ className: styles$9["drawer-header"] + " d-flex justify-content-between align-items-center"
31726
31960
  }, React__default.createElement(material.Button, {
31727
31961
  variant: "outlined",
31728
31962
  sx: {
@@ -31741,7 +31975,7 @@ var CreateExamDrawer = function CreateExamDrawer(props) {
31741
31975
  }, React__default.createElement(fa.FaTimes, {
31742
31976
  size: 18
31743
31977
  }))), React__default.createElement("div", {
31744
- className: "" + styles$8["drawer-form"]
31978
+ className: "" + styles$9["drawer-form"]
31745
31979
  }, React__default.createElement(ExamDetailView, Object.assign({}, examDetailViewProps)))));
31746
31980
  };
31747
31981
 
@@ -32857,7 +33091,7 @@ var useNotificationDetail = function useNotificationDetail(_ref) {
32857
33091
  };
32858
33092
  };
32859
33093
 
32860
- var styles$9 = {"avatar":"_8niRT"};
33094
+ var styles$a = {"avatar":"_8niRT"};
32861
33095
 
32862
33096
  var _excluded$f = ["value", "disabled", "optionTypeNotification"];
32863
33097
  var TypeSelector = function TypeSelector(_ref) {
@@ -32982,7 +33216,7 @@ var NotificationForm = function NotificationForm(_ref) {
32982
33216
  className: "fw-bold mb-2",
32983
33217
  htmlFor: "main-teacher"
32984
33218
  }, t('content')), React__default.createElement("div", {
32985
- className: "" + styles$9["teacher-selector-wrapper"]
33219
+ className: "" + styles$a["teacher-selector-wrapper"]
32986
33220
  }, React__default.createElement(TinyEditor, {
32987
33221
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
32988
33222
  initValue: formikProp.values.content,
@@ -33001,7 +33235,7 @@ var NotificationForm = function NotificationForm(_ref) {
33001
33235
  }, t('type'), " ", React__default.createElement("span", {
33002
33236
  className: "text-danger"
33003
33237
  }, "*")), React__default.createElement("div", {
33004
- className: "" + styles$9["teacher-selector-wrapper"]
33238
+ className: "" + styles$a["teacher-selector-wrapper"]
33005
33239
  }, React__default.createElement(TypeSelector, {
33006
33240
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
33007
33241
  optionTypeNotification: notificationTypes,
@@ -33019,7 +33253,7 @@ var NotificationForm = function NotificationForm(_ref) {
33019
33253
  className: "fw-bold mb-2",
33020
33254
  htmlFor: "main-teacher"
33021
33255
  }, t('classes')), React__default.createElement("div", {
33022
- className: "" + styles$9["teacher-selector-wrapper"]
33256
+ className: "" + styles$a["teacher-selector-wrapper"]
33023
33257
  }, React__default.createElement(ClassSelector, {
33024
33258
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
33025
33259
  value: classOptions,
@@ -33028,7 +33262,7 @@ var NotificationForm = function NotificationForm(_ref) {
33028
33262
  className: "fw-bold mb-2",
33029
33263
  htmlFor: "main-teacher"
33030
33264
  }, t('students')), React__default.createElement("div", {
33031
- className: "" + styles$9["teacher-selector-wrapper"]
33265
+ className: "" + styles$a["teacher-selector-wrapper"]
33032
33266
  }, React__default.createElement(StudentSelector, {
33033
33267
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
33034
33268
  value: studentOptions,
@@ -33909,7 +34143,6 @@ var CompareTypeOptions = [{
33909
34143
  label: "synonym_processing",
33910
34144
  value: exports.QuestionAnswerType.SynonymProcessing
33911
34145
  }];
33912
- var MAX_QUESTIONS_IN_QUESTION_GROUP = 20;
33913
34146
 
33914
34147
  var CustomTextbookTab = function CustomTextbookTab(props) {
33915
34148
  var children = props.children,
@@ -34373,7 +34606,7 @@ var isEqual = function isEqual(prev, next) {
34373
34606
  };
34374
34607
  var ArticleBlock$1 = React.memo(ArticleBlock, isEqual);
34375
34608
 
34376
- var styles$a = {"question":"_1_ONI","question-article":"_2FdrR","question-title":"_3mgRf","question-label":"_2h0kA","question-input":"_exAl-","question-btn":"_2ksp8"};
34609
+ var styles$b = {"question":"_1_ONI","question-article":"_2FdrR","question-title":"_3mgRf","question-label":"_2h0kA","question-input":"_exAl-","question-btn":"_2ksp8"};
34377
34610
 
34378
34611
  var labelStyle = {
34379
34612
  textOverflow: "ellipsis",
@@ -34399,7 +34632,7 @@ var QuestionCompareType = function QuestionCompareType(_ref) {
34399
34632
  }
34400
34633
  }, React__default.createElement(material.FormLabel, {
34401
34634
  htmlFor: "compare-type",
34402
- className: "" + styles$a["question-label"],
34635
+ className: "" + styles$b["question-label"],
34403
34636
  sx: _extends({}, labelStyle, {
34404
34637
  width: "unset"
34405
34638
  })
@@ -34443,7 +34676,7 @@ var QuestionOrderName = function QuestionOrderName(_ref) {
34443
34676
  var _useTranslation = reactI18next.useTranslation(),
34444
34677
  t = _useTranslation.t;
34445
34678
  return React__default.createElement(material.Box, {
34446
- className: styles$a["question-title"] + " me-2 text-nowrap",
34679
+ className: styles$b["question-title"] + " me-2 text-nowrap",
34447
34680
  sx: questionTitleStyle
34448
34681
  }, isMath ? t("problem_number_question", {
34449
34682
  number: questionOrder + 1
@@ -34668,7 +34901,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34668
34901
  var _data$correctAnswers2;
34669
34902
  return React__default.createElement(material.FormControlLabel, {
34670
34903
  key: i,
34671
- className: styles$a["question-label"] + " w-fit",
34904
+ className: styles$b["question-label"] + " w-fit",
34672
34905
  labelPlacement: "top",
34673
34906
  value: i,
34674
34907
  disabled: disabled,
@@ -34702,7 +34935,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34702
34935
  var _data$correctAnswers4;
34703
34936
  return React__default.createElement(material.FormControlLabel, {
34704
34937
  key: i,
34705
- className: styles$a["question-label"] + " w-fit",
34938
+ className: styles$b["question-label"] + " w-fit",
34706
34939
  labelPlacement: "top",
34707
34940
  value: i,
34708
34941
  onChange: function onChange(e) {
@@ -34768,7 +35001,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34768
35001
  direction: "row",
34769
35002
  gap: 2
34770
35003
  }, isTextAnswerType && React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
34771
- className: styles$a["question-label"] + " form-label",
35004
+ className: styles$b["question-label"] + " form-label",
34772
35005
  sx: _extends({}, labelStyle, {
34773
35006
  visibility: "hidden"
34774
35007
  })
@@ -34803,7 +35036,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34803
35036
  }
34804
35037
  }, React__default.createElement(material.FormLabel, {
34805
35038
  htmlFor: "score",
34806
- className: styles$a["question-label"] + " form-label",
35039
+ className: styles$b["question-label"] + " form-label",
34807
35040
  sx: labelStyle
34808
35041
  }, t("score")), React__default.createElement(formik.Field, {
34809
35042
  name: path + ".score",
@@ -34823,7 +35056,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34823
35056
  }
34824
35057
  }, React__default.createElement(material.FormLabel, {
34825
35058
  htmlFor: "type",
34826
- className: styles$a["question-label"] + " form-label",
35059
+ className: styles$b["question-label"] + " form-label",
34827
35060
  sx: labelStyle
34828
35061
  }, t("type")), React__default.createElement(formik.Field, {
34829
35062
  name: path + ".questionTypeId",
@@ -34848,7 +35081,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34848
35081
  }
34849
35082
  }, React__default.createElement(material.FormLabel, {
34850
35083
  htmlFor: "question_answer_type",
34851
- className: styles$a["question-label"] + " form-label",
35084
+ className: styles$b["question-label"] + " form-label",
34852
35085
  sx: labelStyle
34853
35086
  }, t("question_answer_type")), React__default.createElement(formik.Field, {
34854
35087
  name: path + ".questionAnswerType",
@@ -35244,8 +35477,7 @@ var QuestionGroupBlock = function QuestionGroupBlock(_ref) {
35244
35477
  var field = _ref2.field;
35245
35478
  return React__default.createElement(QuestionCountSelector, Object.assign({}, field, {
35246
35479
  onChange: handleChangeQuestionCount,
35247
- isDisabled: disabled,
35248
- totalQuestions: MAX_QUESTIONS_IN_QUESTION_GROUP
35480
+ isDisabled: disabled
35249
35481
  }));
35250
35482
  }
35251
35483
  }))), isMath && React__default.createElement(material.Grid, {
@@ -37484,7 +37716,7 @@ var useTextbookList$1 = function useTextbookList() {
37484
37716
  };
37485
37717
  };
37486
37718
 
37487
- var styles$b = {"action-btn":"_2Kt_g","action-btn--pencil":"_3T_TG","btn-cancel":"_3j6Kd","btn-register":"_XA4vl"};
37719
+ var styles$c = {"action-btn":"_2Kt_g","action-btn--pencil":"_3T_TG","btn-cancel":"_3j6Kd","btn-register":"_XA4vl"};
37488
37720
 
37489
37721
  var DeleteTextbookDialog$1 = function DeleteTextbookDialog(_ref) {
37490
37722
  var t = _ref.t,
@@ -37548,7 +37780,7 @@ var DeleteTextbookDialog$1 = function DeleteTextbookDialog(_ref) {
37548
37780
  borderTop: "1px solid #CED2DA"
37549
37781
  }
37550
37782
  }, React__default.createElement(material.Button, {
37551
- className: styles$b["btn-cancel"],
37783
+ className: styles$c["btn-cancel"],
37552
37784
  onClick: onClose
37553
37785
  }, React__default.createElement(material.Typography, {
37554
37786
  sx: {
@@ -37559,7 +37791,7 @@ var DeleteTextbookDialog$1 = function DeleteTextbookDialog(_ref) {
37559
37791
  lineHeight: "16.71px"
37560
37792
  }, t("cancel"))), React__default.createElement(material.Button, {
37561
37793
  variant: "contained",
37562
- className: styles$b["btn-register"],
37794
+ className: styles$c["btn-register"],
37563
37795
  type: "submit",
37564
37796
  sx: {
37565
37797
  padding: "12px 47px"
@@ -37646,12 +37878,12 @@ var PreparedTextbookList = function PreparedTextbookList(_ref) {
37646
37878
  title: t("edit")
37647
37879
  }, React__default.createElement(material.IconButton, {
37648
37880
  color: "default",
37649
- className: styles$b["action-btn"] + " bg-warning text-white me-2",
37881
+ className: styles$c["action-btn"] + " bg-warning text-white me-2",
37650
37882
  onClick: function onClick() {
37651
37883
  return onNavigateDetail(i);
37652
37884
  }
37653
37885
  }, React__default.createElement(hi.HiOutlinePencilAlt, {
37654
- className: styles$b["action-btn--pencil"],
37886
+ className: styles$c["action-btn--pencil"],
37655
37887
  size: 16
37656
37888
  }))), React__default.createElement(material.Tooltip, {
37657
37889
  title: t("edit")
@@ -37660,7 +37892,7 @@ var PreparedTextbookList = function PreparedTextbookList(_ref) {
37660
37892
  return handleOpenConfirmDialog(i);
37661
37893
  },
37662
37894
  color: "default",
37663
- className: styles$b["action-btn"] + " bg-danger text-white",
37895
+ className: styles$c["action-btn"] + " bg-danger text-white",
37664
37896
  title: t("delete")
37665
37897
  }, React__default.createElement(fa6.FaTrashCan, {
37666
37898
  size: 12
@@ -38459,8 +38691,8 @@ var Header = function Header(_ref) {
38459
38691
  justifyContent: "center",
38460
38692
  alignItems: "center"
38461
38693
  }, React__default.createElement(TheAcademyDropdown, {
38462
- homeAcademyUrl: academyListRoute.path,
38463
- homeUrl: homeRoute.path,
38694
+ homeAcademyUrl: homeRoute.path,
38695
+ homeUrl: academyListRoute.path,
38464
38696
  registerUrl: registerRoute === null || registerRoute === void 0 ? void 0 : registerRoute.path,
38465
38697
  role: role,
38466
38698
  history: history,
@@ -38835,6 +39067,7 @@ exports.AnswerCountSelector = AnswerCountSelector;
38835
39067
  exports.ArticleCategorySelector = ArticleCategorySelector;
38836
39068
  exports.ArticleDialog = ArticleDialog;
38837
39069
  exports.ArticleGroupView = ArticleGroupView;
39070
+ exports.AttendanceFormDialog = AttendanceFormDialog;
38838
39071
  exports.BASE_URL = BASE_URL;
38839
39072
  exports.BRIEF_GRADE_OPTIONS = BRIEF_GRADE_OPTIONS;
38840
39073
  exports.ChapterBox = _ChapterBox;
@@ -38873,6 +39106,7 @@ exports.LANGUAGE = LANGUAGE;
38873
39106
  exports.LEARNING_SPACE = LEARNING_SPACE;
38874
39107
  exports.LanguageHeaders = LanguageHeaders;
38875
39108
  exports.LayoutContext = LayoutContext;
39109
+ exports.LessonTooltip = LessonTooltip;
38876
39110
  exports.ListView = ListView;
38877
39111
  exports.Loading = Loading;
38878
39112
  exports.LoadingComponent = LoadingComponent;