touchstudy-core 0.1.194 → 0.1.196
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/add-ts-nocheck.js +33 -0
- package/dist/alert-circle-fill~CSSkoNUz.svg +3 -0
- package/dist/calendar_fill~zEgxFwDs.svg +4 -0
- package/dist/check-circle_fill~bbGHfKpz.svg +3 -0
- package/dist/checked-circle_fill~KLGxfRpW.svg +3 -0
- package/dist/clock_fill~mcRclYYO.svg +3 -0
- package/dist/close-circle_fill~PRVaHJUQ.svg +3 -0
- package/dist/components/Chats/ChatContainer.d.ts +5 -1
- package/dist/components/Chats/components/CanvasOverlay.d.ts +11 -0
- package/dist/components/Chats/components/InputChat.d.ts +8 -2
- package/dist/components/Chats/components/SketchDialog/BgColorTool.d.ts +8 -0
- package/dist/components/Chats/components/SketchDialog/BgImgAlignTool.d.ts +10 -0
- package/dist/components/Chats/components/SketchDialog/BgImgAlignToolList.d.ts +9 -0
- package/dist/components/Chats/components/SketchDialog/BgImgTool.d.ts +13 -0
- package/dist/components/Chats/components/SketchDialog/CanvasOverlay.d.ts +11 -0
- package/dist/components/Chats/components/SketchDialog/ColorPicker.d.ts +8 -0
- package/dist/components/Chats/components/SketchDialog/EraserTool.d.ts +9 -0
- package/dist/components/Chats/components/SketchDialog/PencilTool.d.ts +11 -0
- package/dist/components/Chats/components/SketchDialog/WidthSlider.d.ts +7 -0
- package/dist/components/Chats/components/SketchDialog/index.d.ts +9 -0
- package/dist/components/Chats/components/SketchDialog.d.ts +7 -0
- package/dist/components/Chats/configs/constants.d.ts +8 -1
- package/dist/components/Chats/configs/types.d.ts +2 -0
- package/dist/components/Chats/hooks/useChatContainer.d.ts +6 -2
- package/dist/components/Chats/styles/styles.d.ts +42 -0
- package/dist/components/CkEditor/CkEditor.d.ts +10 -0
- package/dist/components/CkEditor/config.d.ts +19 -0
- package/dist/components/CkEditor/index.d.ts +2 -0
- package/dist/components/Print/hooks/useDeviceType.d.ts +4 -0
- package/dist/containers/ExamResult/components/GradesByTerritory/Textbook.d.ts +12 -0
- package/dist/containers/ExamResult/components/GradesByTerritory/index.d.ts +12 -0
- package/dist/containers/ExamResult/components/ProtractedProblem/index.d.ts +10 -0
- package/dist/containers/ExamResult/components/TrickyProblem/Textbook.d.ts +10 -0
- package/dist/containers/ExamResult/components/TrickyProblem/index.d.ts +11 -0
- package/dist/containers/ExamResult/components/Vulnerable/Textbook.d.ts +11 -0
- package/dist/containers/ExamResult/components/Vulnerable/index.d.ts +12 -0
- package/dist/containers/Exams/components/ArticleBlock.d.ts +20 -0
- package/dist/containers/Exams/components/ArticleGroupView.d.ts +33 -0
- package/dist/containers/Exams/components/QuestionBlock.d.ts +19 -0
- package/dist/containers/Exams/components/QuestionCompareType.d.ts +9 -0
- package/dist/containers/Exams/components/QuestionGroupBlock.d.ts +28 -0
- package/dist/containers/Exams/components/QuestionGroupBlockBody.d.ts +23 -0
- package/dist/containers/Exams/components/QuestionOrderName.d.ts +9 -0
- package/dist/containers/Exams/components/QuestionShortInput.d.ts +13 -0
- package/dist/containers/Exams/components/QuestionView.d.ts +20 -0
- package/dist/containers/Exams/hooks/useOverallChartContainer.d.ts +9 -0
- package/dist/containers/Exams/styles/styles.d.ts +6 -0
- package/dist/containers/Notes/components/TeacherAdminNoteDialog.d.ts +4 -0
- package/dist/containers/PreparedTextbook/components/Article.d.ts +20 -0
- package/dist/containers/PreparedTextbook/components/ArticleBlock.d.ts +20 -0
- package/dist/containers/PreparedTextbook/components/Chapter.d.ts +19 -0
- package/dist/containers/PreparedTextbook/components/QuestionBlock.d.ts +19 -0
- package/dist/containers/PreparedTextbook/components/QuestionCompareType.d.ts +8 -0
- package/dist/containers/PreparedTextbook/components/QuestionGroupBlock.d.ts +28 -0
- package/dist/containers/PreparedTextbook/components/QuestionGroupBlockBody.d.ts +24 -0
- package/dist/containers/PreparedTextbook/components/QuestionOrderName.d.ts +9 -0
- package/dist/containers/PreparedTextbook/components/QuestionScore.d.ts +9 -0
- package/dist/containers/PreparedTextbook/components/QuestionShortInput.d.ts +12 -0
- package/dist/containers/PreparedTextbook/components/QuestionTypeFilter.d.ts +10 -0
- package/dist/containers/PreparedTextbook/components/SubChapter.d.ts +18 -0
- package/dist/containers/PreparedTextbook/components/TextbookOwners.d.ts +13 -0
- package/dist/containers/PreparedTextbook/hooks/useExamDetailView.d.ts +30 -0
- package/dist/containers/PreparedTextbook/hooks/useTextbookOptions.d.ts +15 -0
- package/dist/containers/PreparedTextbook/styles/styles.d.ts +6 -0
- package/dist/containers/PreparedTextbook/views/PreparedTextbook.d.ts +8 -0
- package/dist/containers/StudentInfoDrawer/components/Attendance/AttedanceFormDialog.d.ts +13 -0
- package/dist/containers/StudentInfoDrawer/components/AttendanceCourseTable.d.ts +15 -0
- package/dist/containers/StudentInfoDrawer/components/CourseAttendanceItem.d.ts +10 -0
- package/dist/containers/StudentInfoDrawer/components/CourseAttendanceList.d.ts +4 -0
- package/dist/containers/StudentInfoDrawer/components/DrawerAttendanceTab.d.ts +4 -0
- package/dist/containers/StudentInfoDrawer/components/DrawerExamResultTab.d.ts +9 -0
- package/dist/containers/StudentInfoDrawer/components/DrawerNoteTab.d.ts +8 -0
- package/dist/containers/StudentInfoDrawer/components/DrawerTextbookResultTab.d.ts +7 -0
- package/dist/containers/StudentInfoDrawer/components/Exam/ExanResultList.d.ts +4 -0
- package/dist/containers/StudentInfoDrawer/components/ExamResultDrawer.d.ts +13 -0
- package/dist/containers/StudentInfoDrawer/components/ExamResultItem.d.ts +10 -0
- package/dist/containers/StudentInfoDrawer/components/ExanResultList.d.ts +4 -0
- package/dist/containers/StudentInfoDrawer/components/LessonTooltip.d.ts +8 -0
- package/dist/containers/StudentInfoDrawer/components/NoteDrawer.d.ts +13 -0
- package/dist/containers/StudentInfoDrawer/components/TextbookResultItem.d.ts +10 -0
- package/dist/containers/StudentInfoDrawer/components/TextbookResultList.d.ts +4 -0
- package/dist/containers/Textbooks/components/ChapterBox.d.ts +4 -0
- package/dist/containers/Textbooks/configs/interfaces.d.ts +21 -0
- package/dist/containers/Textbooks/hooks/useExam.d.ts +16 -0
- package/dist/containers/Textbooks/hooks/useTextbookDetail.d.ts +55 -0
- package/dist/containers/Textbooks/views/TextbookDetail.d.ts +15 -0
- package/dist/iconPerson~bfprHOKm.svg +4 -0
- package/dist/index.js +1001 -139
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +1006 -144
- package/dist/index.modern.js.map +1 -1
- package/dist/layouts/HeaderLink.d.ts +8 -0
- package/dist/layouts/TimerCountItem.d.ts +10 -0
- package/dist/layouts/TimerDialog.d.ts +9 -0
- package/dist/layouts/TimerDropdown.d.ts +3 -0
- package/dist/layouts/TimerItem.d.ts +11 -0
- package/dist/layouts/configs/constants.d.ts +12 -0
- package/dist/layouts/hooks/useCountDownTimer.d.ts +9 -0
- package/dist/layouts/partials/AlarmClock.d.ts +10 -0
- package/dist/layouts/partials/AlarmClockPanel.d.ts +10 -0
- package/dist/layouts/partials/AlarmClockTab.d.ts +10 -0
- package/dist/layouts/partials/CircularTimer/index.d.ts +11 -0
- package/dist/layouts/partials/CircularTimer/tick.d.ts +9 -0
- package/dist/layouts/partials/CircularTimer.d.ts +11 -0
- package/dist/layouts/partials/StudyTimerTab.d.ts +12 -0
- package/dist/layouts/partials/TimerCountItem.d.ts +10 -0
- package/dist/layouts/partials/TimerItem.d.ts +11 -0
- package/dist/layouts/partials/TimerTabPanel.d.ts +8 -0
- package/dist/layouts/partials/TimerTabs.d.ts +7 -0
- package/dist/utils/enums/subject.d.ts +6 -0
- package/dist/utils/functions/checkSuperUrl.d.ts +1 -0
- package/dist/utils/functions/isRealTabletOrMobileDevice.d.ts +1 -0
- package/dist/utils/types/subjects.d.ts +19 -0
- package/package.json +8 -9
- /package/dist/utils/types/{questionTypeFilter.d.ts → QuestionTypeFilter.d.ts} +0 -0
package/dist/index.modern.js
CHANGED
@@ -13,11 +13,11 @@ export { AdapterMoment } from '@mui/x-date-pickers/AdapterMoment';
|
|
13
13
|
import { DemoContainer } from '@mui/x-date-pickers/internals/demo';
|
14
14
|
export { DemoContainer } from '@mui/x-date-pickers/internals/demo';
|
15
15
|
import React__default, { useState, useEffect, Fragment as Fragment$1, useRef, useCallback, useMemo, memo, createElement } from 'react';
|
16
|
-
import { useTheme, Container, Typography, Stack, List, ListItem, FormGroup, FormControlLabel, Checkbox, Button, Box, Dialog, DialogTitle, IconButton, useMediaQuery, DialogContent, TextField, DialogActions, styled, FormLabel, Pagination, Paper, InputBase, Tooltip, tooltipClasses, Grid, ClickAwayListener, CircularProgress, FormControl, RadioGroup, Radio, Accordion, AccordionSummary, AccordionDetails, InputAdornment, Card as Card$1, Avatar, Table, TableHead, TableRow, TableCell, TableBody,
|
16
|
+
import { useTheme, Container, Typography, Stack, List, ListItem, FormGroup, FormControlLabel, Checkbox, Button, Box, Dialog, DialogTitle, IconButton, useMediaQuery, DialogContent, TextField, DialogActions, styled, FormLabel, Pagination, Paper, InputBase, Tooltip, tooltipClasses, Grid, ClickAwayListener, Slider, Slide, AppBar, Toolbar, Divider, CircularProgress, FormControl, RadioGroup, Radio, Accordion, AccordionSummary, AccordionDetails, InputAdornment, Card as Card$1, Avatar, Table, TableHead, TableRow, TableCell, TableBody, Skeleton, Tabs, Tab, Drawer, TableContainer, tableCellClasses, Popover, Switch, InputLabel, Chip, ListItemButton, ListItemAvatar, ListItemText, Badge, CardMedia as CardMedia$1, MenuList } from '@mui/material';
|
17
17
|
import moment from 'moment';
|
18
18
|
export { default as moment } from 'moment';
|
19
|
-
import { FaSave, FaCaretDown, FaTrash, FaTimes, FaSortUp, FaSortDown, FaPlusCircle, FaEye, FaPlus, FaCalendar, FaUser, FaBookOpen, FaUpload, FaCheckCircle, FaShare, FaExchangeAlt,
|
20
|
-
import { IoMdArrowBack, IoIosAdd, IoMdSync, IoIosAlert, IoIosArrowDown, IoIosSearch, IoIosArrowUp, IoMdAdd } from 'react-icons/io';
|
19
|
+
import { FaSave, FaCaretDown, FaImage, FaPencilAlt, FaEraser, FaTrash, FaTimes, FaSortUp, FaSortDown, FaPlusCircle, FaEye, FaPlus, FaCalendar, FaUser, FaBookOpen, FaUpload, FaCheckCircle, FaShare, FaExchangeAlt, FaBell } from 'react-icons/fa';
|
20
|
+
import { IoMdArrowBack, IoIosColorFill, IoMdUndo, IoMdRedo, IoIosAdd, IoMdSync, IoIosAlert, IoIosArrowDown, IoIosSearch, IoIosArrowUp, IoMdAdd } from 'react-icons/io';
|
21
21
|
import { IoClose, IoSearch, IoTime, IoChatbubbleEllipsesSharp, IoPrint, IoChevronDown, IoCheckmarkCircle, IoChevronUpOutline, IoChevronDownOutline, IoReceiptSharp, IoBook, IoWarning, IoCalendarClear, IoPerson, IoInformationCircle, IoTrash, IoAddCircle, IoCheckmark, IoCloseCircle, IoLogOut } from 'react-icons/io5';
|
22
22
|
import _$a from 'lodash';
|
23
23
|
import { useSelector, useDispatch } from 'react-redux';
|
@@ -40,8 +40,10 @@ import CreatableSelect from 'react-select/creatable';
|
|
40
40
|
import tinymce from 'tinymce';
|
41
41
|
import '@wiris/mathtype-tinymce6';
|
42
42
|
import { Editor } from '@tinymce/tinymce-react';
|
43
|
+
import { ReactSketchCanvas } from 'react-sketch-canvas';
|
44
|
+
import { MdAlignHorizontalRight, MdAlignVerticalBottom, MdAlignHorizontalCenter, MdAlignVerticalCenter, MdAlignHorizontalLeft, MdAlignVerticalTop, MdOutlineZoomOutMap, MdDraw, MdExpandMore, MdVisibilityOff, MdVisibility, MdAutorenew, MdMoreHoriz, MdDownload, MdError } from 'react-icons/md';
|
45
|
+
import { GrClear, GrClearOption, GrNext, GrPrevious } from 'react-icons/gr';
|
43
46
|
import { FaTrashCan, FaCirclePlus, FaX, FaEye as FaEye$1, FaRotateRight, FaPencil, FaClockRotateLeft } from 'react-icons/fa6';
|
44
|
-
import { MdExpandMore, MdVisibilityOff, MdVisibility, MdAutorenew, MdMoreHoriz, MdDownload, MdError } from 'react-icons/md';
|
45
47
|
import { yellow as yellow$1, blue, grey as grey$1 } from '@mui/material/colors';
|
46
48
|
import Grid$1 from '@mui/material/Grid';
|
47
49
|
import Card from '@mui/material/Card';
|
@@ -64,8 +66,7 @@ import { HiOutlinePencilAlt } from 'react-icons/hi';
|
|
64
66
|
import TableCell$1 from '@mui/material/TableCell';
|
65
67
|
import TableRow$1 from '@mui/material/TableRow';
|
66
68
|
import html2pdf from 'html2pdf.js';
|
67
|
-
import Slider from 'react-slick';
|
68
|
-
import { GrNext, GrPrevious } from 'react-icons/gr';
|
69
|
+
import Slider$1 from 'react-slick';
|
69
70
|
import Table$1 from '@mui/material/Table';
|
70
71
|
import TableBody$1 from '@mui/material/TableBody';
|
71
72
|
import TableHead$1 from '@mui/material/TableHead';
|
@@ -1581,6 +1582,8 @@ var there_are_no_problems_you_were_working_on = "풀던 문제가 없습니다."
|
|
1581
1582
|
var incomplete_exam = "미참가";
|
1582
1583
|
var completed_exam = "참가";
|
1583
1584
|
var failed_to_send_the_image_error = "이미지를 보내지 못했습니다: {{ message }}";
|
1585
|
+
var sketch = "스케치";
|
1586
|
+
var sketch_canvas = "스케치 캔버스";
|
1584
1587
|
var lang_ko = {
|
1585
1588
|
problem_solving: problem_solving,
|
1586
1589
|
my_story: my_story,
|
@@ -2789,7 +2792,9 @@ var lang_ko = {
|
|
2789
2792
|
there_are_no_problems_you_were_working_on: there_are_no_problems_you_were_working_on,
|
2790
2793
|
incomplete_exam: incomplete_exam,
|
2791
2794
|
completed_exam: completed_exam,
|
2792
|
-
failed_to_send_the_image_error: failed_to_send_the_image_error
|
2795
|
+
failed_to_send_the_image_error: failed_to_send_the_image_error,
|
2796
|
+
sketch: sketch,
|
2797
|
+
sketch_canvas: sketch_canvas
|
2793
2798
|
};
|
2794
2799
|
|
2795
2800
|
var problem_solving$1 = "Problem Solving";
|
@@ -4025,6 +4030,8 @@ var there_are_no_problems_you_were_working_on$1 = "There are no problems you wer
|
|
4025
4030
|
var incomplete_exam$1 = "Incomplete";
|
4026
4031
|
var completed_exam$1 = "Completed";
|
4027
4032
|
var failed_to_send_the_image_error$1 = "Failed to send the image: {{ message }}";
|
4033
|
+
var sketch$1 = "Sketch";
|
4034
|
+
var sketch_canvas$1 = "Sketch canvas";
|
4028
4035
|
var lang_en = {
|
4029
4036
|
problem_solving: problem_solving$1,
|
4030
4037
|
my_story: my_story$1,
|
@@ -5235,7 +5242,9 @@ var lang_en = {
|
|
5235
5242
|
there_are_no_problems_you_were_working_on: there_are_no_problems_you_were_working_on$1,
|
5236
5243
|
incomplete_exam: incomplete_exam$1,
|
5237
5244
|
completed_exam: completed_exam$1,
|
5238
|
-
failed_to_send_the_image_error: failed_to_send_the_image_error$1
|
5245
|
+
failed_to_send_the_image_error: failed_to_send_the_image_error$1,
|
5246
|
+
sketch: sketch$1,
|
5247
|
+
sketch_canvas: sketch_canvas$1
|
5239
5248
|
};
|
5240
5249
|
|
5241
5250
|
i18n.use(initReactI18next).init({
|
@@ -9023,7 +9032,9 @@ var ChatRightItem = function ChatRightItem(_ref) {
|
|
9023
9032
|
style: {
|
9024
9033
|
height: "200px",
|
9025
9034
|
position: "relative",
|
9026
|
-
objectFit: "contain"
|
9035
|
+
objectFit: "contain",
|
9036
|
+
cursor: "pointer",
|
9037
|
+
borderRadius: "6px"
|
9027
9038
|
}
|
9028
9039
|
}) : React__default.createElement("div", {
|
9029
9040
|
className: styles$2["wrap-content"] + " " + styles$2["content-chat-receiver"],
|
@@ -9106,7 +9117,9 @@ var ChatLeftItem = function ChatLeftItem(_ref) {
|
|
9106
9117
|
style: {
|
9107
9118
|
height: "200px",
|
9108
9119
|
position: "relative",
|
9109
|
-
objectFit: "contain"
|
9120
|
+
objectFit: "contain",
|
9121
|
+
cursor: "pointer",
|
9122
|
+
borderRadius: "6px"
|
9110
9123
|
}
|
9111
9124
|
}) : React__default.createElement("div", {
|
9112
9125
|
className: styles$2["wrap-content"] + " " + styles$2["content-chat-sender"],
|
@@ -9616,8 +9629,847 @@ var iconSendMessage = function iconSendMessage(_ref) {
|
|
9616
9629
|
}));
|
9617
9630
|
};
|
9618
9631
|
|
9632
|
+
var CanvasOverlay = function CanvasOverlay(_ref) {
|
9633
|
+
var open = _ref.open,
|
9634
|
+
width = _ref.width,
|
9635
|
+
height = _ref.height,
|
9636
|
+
size = _ref.size,
|
9637
|
+
color = _ref.color,
|
9638
|
+
isEraser = _ref.isEraser;
|
9639
|
+
var overlayRef = useRef(null);
|
9640
|
+
var _useState = useState({
|
9641
|
+
x: 0,
|
9642
|
+
y: 0
|
9643
|
+
}),
|
9644
|
+
cursorPosition = _useState[0],
|
9645
|
+
setCursorPosition = _useState[1];
|
9646
|
+
var _useState2 = useState(true),
|
9647
|
+
hideCursor = _useState2[0],
|
9648
|
+
setHideCursor = _useState2[1];
|
9649
|
+
useEffect(function () {
|
9650
|
+
var updateCursorPosition = function updateCursorPosition(clientX, clientY) {
|
9651
|
+
var _overlayRef$current;
|
9652
|
+
var rect = (_overlayRef$current = overlayRef.current) === null || _overlayRef$current === void 0 ? void 0 : _overlayRef$current.getBoundingClientRect();
|
9653
|
+
var isInside = rect && clientX > rect.left && clientX < rect.right && clientY > rect.top && clientY < rect.bottom;
|
9654
|
+
setHideCursor(!isInside);
|
9655
|
+
if (rect) setCursorPosition({
|
9656
|
+
x: clientX - rect.left,
|
9657
|
+
y: clientY - rect.top
|
9658
|
+
});
|
9659
|
+
};
|
9660
|
+
var handleMouseMove = function handleMouseMove(e) {
|
9661
|
+
updateCursorPosition(e.clientX, e.clientY);
|
9662
|
+
};
|
9663
|
+
var handleTouchMove = function handleTouchMove(e) {
|
9664
|
+
if (e.touches.length > 0) {
|
9665
|
+
var touch = e.touches[0];
|
9666
|
+
updateCursorPosition(touch.clientX, touch.clientY);
|
9667
|
+
}
|
9668
|
+
};
|
9669
|
+
if (open) {
|
9670
|
+
document.addEventListener("mousemove", handleMouseMove);
|
9671
|
+
document.addEventListener("touchmove", handleTouchMove);
|
9672
|
+
}
|
9673
|
+
return function () {
|
9674
|
+
document.removeEventListener("mousemove", handleMouseMove);
|
9675
|
+
document.removeEventListener("touchmove", handleTouchMove);
|
9676
|
+
};
|
9677
|
+
}, [open]);
|
9678
|
+
var left = cursorPosition.x - size / 2;
|
9679
|
+
var top = cursorPosition.y - size / 2;
|
9680
|
+
return React__default.createElement(Box, {
|
9681
|
+
ref: overlayRef,
|
9682
|
+
sx: {
|
9683
|
+
position: "absolute",
|
9684
|
+
top: 0,
|
9685
|
+
left: "50%",
|
9686
|
+
transform: "translateX(-50%)",
|
9687
|
+
width: width + "px",
|
9688
|
+
height: height + "px",
|
9689
|
+
pointerEvents: "none",
|
9690
|
+
overflow: "hidden"
|
9691
|
+
},
|
9692
|
+
width: width,
|
9693
|
+
height: height
|
9694
|
+
}, React__default.createElement(Box, {
|
9695
|
+
sx: {
|
9696
|
+
position: "fixed",
|
9697
|
+
top: top,
|
9698
|
+
left: left,
|
9699
|
+
width: size + "px",
|
9700
|
+
height: size + "px",
|
9701
|
+
borderRadius: "50%",
|
9702
|
+
border: "1px solid " + (isEraser ? "red" : color),
|
9703
|
+
backgroundColor: isEraser ? "rgba(255,0,0,0.1)" : "transparent",
|
9704
|
+
pointerEvents: "none",
|
9705
|
+
zIndex: 10,
|
9706
|
+
display: size > 0 && !hideCursor ? "block" : "none"
|
9707
|
+
}
|
9708
|
+
}));
|
9709
|
+
};
|
9710
|
+
|
9711
|
+
var MessageSortBy;
|
9712
|
+
(function (MessageSortBy) {
|
9713
|
+
MessageSortBy["CreatedAt"] = "CreatedAt";
|
9714
|
+
})(MessageSortBy || (MessageSortBy = {}));
|
9715
|
+
var OrderBy$1;
|
9716
|
+
(function (OrderBy) {
|
9717
|
+
OrderBy["ASC"] = "ASC";
|
9718
|
+
OrderBy["DESC"] = "DESC";
|
9719
|
+
})(OrderBy$1 || (OrderBy$1 = {}));
|
9720
|
+
var StudentSortBy;
|
9721
|
+
(function (StudentSortBy) {
|
9722
|
+
StudentSortBy["CreatedAt"] = "CreatedAt";
|
9723
|
+
StudentSortBy["FullName"] = "FullName";
|
9724
|
+
})(StudentSortBy || (StudentSortBy = {}));
|
9725
|
+
var StudentOrderBy;
|
9726
|
+
(function (StudentOrderBy) {
|
9727
|
+
StudentOrderBy["ASC"] = "ASC";
|
9728
|
+
StudentOrderBy["DESC"] = "DESC";
|
9729
|
+
})(StudentOrderBy || (StudentOrderBy = {}));
|
9730
|
+
var MessageAction;
|
9731
|
+
(function (MessageAction) {
|
9732
|
+
MessageAction[MessageAction["Default"] = 0] = "Default";
|
9733
|
+
MessageAction[MessageAction["Took"] = 1] = "Took";
|
9734
|
+
})(MessageAction || (MessageAction = {}));
|
9735
|
+
var MessageSourceType;
|
9736
|
+
(function (MessageSourceType) {
|
9737
|
+
MessageSourceType[MessageSourceType["Default"] = 0] = "Default";
|
9738
|
+
MessageSourceType[MessageSourceType["Exam"] = 1] = "Exam";
|
9739
|
+
MessageSourceType[MessageSourceType["Class"] = 2] = "Class";
|
9740
|
+
})(MessageSourceType || (MessageSourceType = {}));
|
9741
|
+
var MessageStatus;
|
9742
|
+
(function (MessageStatus) {
|
9743
|
+
MessageStatus["Default"] = "Sent";
|
9744
|
+
MessageStatus["Sending"] = "Sending...";
|
9745
|
+
MessageStatus["SentError"] = "Sent fail, Retry";
|
9746
|
+
})(MessageStatus || (MessageStatus = {}));
|
9747
|
+
|
9748
|
+
var types = {
|
9749
|
+
__proto__: null,
|
9750
|
+
get MessageSortBy () { return MessageSortBy; },
|
9751
|
+
get OrderBy () { return OrderBy$1; },
|
9752
|
+
get StudentSortBy () { return StudentSortBy; },
|
9753
|
+
get StudentOrderBy () { return StudentOrderBy; },
|
9754
|
+
get MessageAction () { return MessageAction; },
|
9755
|
+
get MessageSourceType () { return MessageSourceType; },
|
9756
|
+
get MessageStatus () { return MessageStatus; }
|
9757
|
+
};
|
9758
|
+
|
9759
|
+
var ExamStatus$1;
|
9760
|
+
(function (ExamStatus) {
|
9761
|
+
ExamStatus["Default"] = "Default";
|
9762
|
+
ExamStatus["Pending"] = "Pending";
|
9763
|
+
ExamStatus["Inprogress"] = "Inprogress";
|
9764
|
+
ExamStatus["Completed"] = "Completed";
|
9765
|
+
})(ExamStatus$1 || (ExamStatus$1 = {}));
|
9766
|
+
var Roles;
|
9767
|
+
(function (Roles) {
|
9768
|
+
Roles["Student"] = "Student";
|
9769
|
+
Roles["Teacher"] = "Teacher";
|
9770
|
+
Roles["Admin"] = "Admin";
|
9771
|
+
})(Roles || (Roles = {}));
|
9772
|
+
var MESSAGE_DEFAULT_FILTER = {
|
9773
|
+
currentPage: 1,
|
9774
|
+
pageSize: 15,
|
9775
|
+
textSearch: "",
|
9776
|
+
sortColumnDirection: OrderBy$1.DESC,
|
9777
|
+
sortColumnName: MessageSortBy.CreatedAt
|
9778
|
+
};
|
9779
|
+
var AlignList = ["Min", "Mid", "Max"];
|
9780
|
+
var DEFAULT_STROKE_COLOR = "#000000";
|
9781
|
+
var DEFAULT_BG_COLOR = "#FFFFFF";
|
9782
|
+
var DEFAULT_STROKE_WIDTH = 4;
|
9783
|
+
var DEFAULT_ERASER_WIDTH = 10;
|
9784
|
+
var CANVAS_WIDTH = 800;
|
9785
|
+
var CANVAS_HEIGHT = 600;
|
9786
|
+
|
9787
|
+
var BgImgAlignTool = function BgImgAlignTool(_ref) {
|
9788
|
+
var aspect = _ref.aspect,
|
9789
|
+
axis = _ref.axis,
|
9790
|
+
align = _ref.align,
|
9791
|
+
onAlignChange = _ref.onAlignChange;
|
9792
|
+
var handleChangeAlign = function handleChangeAlign() {
|
9793
|
+
onAlignChange(axis, align);
|
9794
|
+
};
|
9795
|
+
var icon = useMemo(function () {
|
9796
|
+
switch (align) {
|
9797
|
+
case "Min":
|
9798
|
+
return axis === "x" ? React__default.createElement(MdAlignHorizontalLeft, {
|
9799
|
+
size: 14
|
9800
|
+
}) : React__default.createElement(MdAlignVerticalTop, {
|
9801
|
+
size: 14
|
9802
|
+
});
|
9803
|
+
case "Mid":
|
9804
|
+
return axis === "x" ? React__default.createElement(MdAlignHorizontalCenter, {
|
9805
|
+
size: 14
|
9806
|
+
}) : React__default.createElement(MdAlignVerticalCenter, {
|
9807
|
+
size: 14
|
9808
|
+
});
|
9809
|
+
default:
|
9810
|
+
return axis === "x" ? React__default.createElement(MdAlignHorizontalRight, {
|
9811
|
+
size: 14
|
9812
|
+
}) : React__default.createElement(MdAlignVerticalBottom, {
|
9813
|
+
size: 14
|
9814
|
+
});
|
9815
|
+
}
|
9816
|
+
}, [axis, align]);
|
9817
|
+
var selected = useMemo(function () {
|
9818
|
+
return axis === "x" ? aspect.startsWith("" + axis + align) : aspect.endsWith("" + axis.toUpperCase() + align);
|
9819
|
+
}, [axis, align, aspect]);
|
9820
|
+
return React__default.createElement(IconButton, {
|
9821
|
+
size: "small",
|
9822
|
+
onClick: handleChangeAlign,
|
9823
|
+
sx: {
|
9824
|
+
p: 1
|
9825
|
+
},
|
9826
|
+
color: selected ? "success" : undefined
|
9827
|
+
}, icon);
|
9828
|
+
};
|
9829
|
+
|
9830
|
+
var BgImgAlignToolList = function BgImgAlignToolList(_ref) {
|
9831
|
+
var axis = _ref.axis,
|
9832
|
+
aspect = _ref.aspect,
|
9833
|
+
onAlignChange = _ref.onAlignChange;
|
9834
|
+
return React__default.createElement(Stack, {
|
9835
|
+
direction: "row",
|
9836
|
+
spacing: 1
|
9837
|
+
}, AlignList.map(function (align) {
|
9838
|
+
return React__default.createElement(BgImgAlignTool, {
|
9839
|
+
key: "" + axis + align,
|
9840
|
+
aspect: aspect,
|
9841
|
+
axis: axis,
|
9842
|
+
align: align,
|
9843
|
+
onAlignChange: onAlignChange
|
9844
|
+
});
|
9845
|
+
}));
|
9846
|
+
};
|
9847
|
+
|
9848
|
+
var BgImgTool = function BgImgTool(_ref) {
|
9849
|
+
var inputRef = _ref.inputRef,
|
9850
|
+
value = _ref.value,
|
9851
|
+
apsect = _ref.apsect,
|
9852
|
+
onClear = _ref.onClear,
|
9853
|
+
onPick = _ref.onPick,
|
9854
|
+
onChange = _ref.onChange,
|
9855
|
+
onAspectChange = _ref.onAspectChange;
|
9856
|
+
return React__default.createElement(Stack, {
|
9857
|
+
direction: "row",
|
9858
|
+
spacing: 1,
|
9859
|
+
alignItems: "center"
|
9860
|
+
}, React__default.createElement(IconButton, {
|
9861
|
+
sx: {
|
9862
|
+
width: "32px",
|
9863
|
+
height: "32px",
|
9864
|
+
background: grey[100]
|
9865
|
+
},
|
9866
|
+
size: "small",
|
9867
|
+
onClick: onPick
|
9868
|
+
}, React__default.createElement(FaImage, {
|
9869
|
+
size: 16
|
9870
|
+
}), React__default.createElement("input", {
|
9871
|
+
ref: inputRef,
|
9872
|
+
hidden: true,
|
9873
|
+
type: "file",
|
9874
|
+
accept: "image/*",
|
9875
|
+
onChange: onChange
|
9876
|
+
})), value && React__default.createElement(IconButton, {
|
9877
|
+
sx: {
|
9878
|
+
width: "32px",
|
9879
|
+
height: "32px",
|
9880
|
+
background: red[900],
|
9881
|
+
"&:hover": {
|
9882
|
+
background: red[500]
|
9883
|
+
}
|
9884
|
+
},
|
9885
|
+
onClick: onClear
|
9886
|
+
}, React__default.createElement(GrClear, {
|
9887
|
+
size: 16,
|
9888
|
+
color: "#FFF"
|
9889
|
+
})), value && React__default.createElement(Stack, {
|
9890
|
+
direction: "row",
|
9891
|
+
alignItems: "center",
|
9892
|
+
gap: 1
|
9893
|
+
}, React__default.createElement(Stack, {
|
9894
|
+
direction: "column"
|
9895
|
+
}, React__default.createElement(IconButton, {
|
9896
|
+
size: "small",
|
9897
|
+
onClick: function onClick() {
|
9898
|
+
return onAspectChange();
|
9899
|
+
},
|
9900
|
+
sx: {
|
9901
|
+
p: 1
|
9902
|
+
},
|
9903
|
+
color: apsect === "none" ? "success" : undefined
|
9904
|
+
}, React__default.createElement(MdOutlineZoomOutMap, {
|
9905
|
+
size: 14
|
9906
|
+
}))), React__default.createElement(Stack, {
|
9907
|
+
direction: "column"
|
9908
|
+
}, React__default.createElement(BgImgAlignToolList, {
|
9909
|
+
aspect: apsect,
|
9910
|
+
axis: "x",
|
9911
|
+
onAlignChange: onAspectChange
|
9912
|
+
}), React__default.createElement(BgImgAlignToolList, {
|
9913
|
+
aspect: apsect,
|
9914
|
+
axis: "y",
|
9915
|
+
onAlignChange: onAspectChange
|
9916
|
+
}))));
|
9917
|
+
};
|
9918
|
+
|
9919
|
+
var ColorPicker = function ColorPicker(_ref) {
|
9920
|
+
var disabled = _ref.disabled,
|
9921
|
+
inputRef = _ref.inputRef,
|
9922
|
+
onChange = _ref.onChange;
|
9923
|
+
return React__default.createElement(Box, {
|
9924
|
+
width: "32px",
|
9925
|
+
height: "32px",
|
9926
|
+
borderRadius: "50%",
|
9927
|
+
overflow: "hidden",
|
9928
|
+
border: "1px solid " + grey[500]
|
9929
|
+
}, React__default.createElement("input", {
|
9930
|
+
ref: inputRef,
|
9931
|
+
onChange: onChange,
|
9932
|
+
type: "color",
|
9933
|
+
disabled: disabled,
|
9934
|
+
style: {
|
9935
|
+
width: "200%",
|
9936
|
+
height: "200%",
|
9937
|
+
borderStyle: "none",
|
9938
|
+
backgroundColor: "none",
|
9939
|
+
transform: "translate(-25%, -25%)",
|
9940
|
+
cursor: "pointer"
|
9941
|
+
}
|
9942
|
+
}));
|
9943
|
+
};
|
9944
|
+
|
9945
|
+
var boxShadow = "0 3px 1px rgba(0,0,0,0.1),0 4px 8px rgba(0,0,0,0.13),0 0 0 1px rgba(0,0,0,0.02)";
|
9946
|
+
var CustomSlider = styled(Slider)(function (_ref) {
|
9947
|
+
var theme = _ref.theme;
|
9948
|
+
return _extends({
|
9949
|
+
color: green[500],
|
9950
|
+
height: 5,
|
9951
|
+
width: 120,
|
9952
|
+
marginInline: "8px",
|
9953
|
+
"& .MuiSlider-thumb": {
|
9954
|
+
height: 20,
|
9955
|
+
width: 20,
|
9956
|
+
backgroundColor: "#fff",
|
9957
|
+
boxShadow: "0 0 2px 0px rgba(0, 0, 0, 0.1)",
|
9958
|
+
"&:focus, &:hover, &.Mui-active": {
|
9959
|
+
boxShadow: "0px 0px 3px 1px rgba(0, 0, 0, 0.1)",
|
9960
|
+
"@media (hover: none)": {
|
9961
|
+
boxShadow: boxShadow
|
9962
|
+
}
|
9963
|
+
},
|
9964
|
+
"&:before": {
|
9965
|
+
boxShadow: "0px 0px 1px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 1px 0px rgba(0,0,0,0.12)"
|
9966
|
+
}
|
9967
|
+
},
|
9968
|
+
"& .MuiSlider-valueLabel": {
|
9969
|
+
fontSize: 12,
|
9970
|
+
fontWeight: "normal",
|
9971
|
+
top: 4,
|
9972
|
+
backgroundColor: "unset",
|
9973
|
+
color: theme.palette.text.primary,
|
9974
|
+
"&::before": {
|
9975
|
+
display: "none"
|
9976
|
+
},
|
9977
|
+
"& *": _extends({
|
9978
|
+
background: "transparent",
|
9979
|
+
color: "#000"
|
9980
|
+
}, theme.applyStyles("dark", {
|
9981
|
+
color: "#fff"
|
9982
|
+
}))
|
9983
|
+
},
|
9984
|
+
"& .MuiSlider-track": {
|
9985
|
+
border: "none",
|
9986
|
+
boxShadow: "inset 0px 0px 4px -2px #000",
|
9987
|
+
height: 5
|
9988
|
+
},
|
9989
|
+
"& .MuiSlider-rail": {
|
9990
|
+
opacity: 0.5,
|
9991
|
+
boxShadow: "inset 0px 0px 4px -2px #000",
|
9992
|
+
backgroundColor: "#d0d0d0"
|
9993
|
+
}
|
9994
|
+
}, theme.applyStyles("dark", {
|
9995
|
+
color: green[700]
|
9996
|
+
}));
|
9997
|
+
});
|
9998
|
+
var WidthSlider = function WidthSlider(_ref2) {
|
9999
|
+
var value = _ref2.value,
|
10000
|
+
onChange = _ref2.onChange;
|
10001
|
+
return React__default.createElement(CustomSlider, {
|
10002
|
+
defaultValue: value,
|
10003
|
+
onChange: onChange,
|
10004
|
+
min: 1,
|
10005
|
+
valueLabelDisplay: "on"
|
10006
|
+
});
|
10007
|
+
};
|
10008
|
+
|
10009
|
+
var PencilTool = function PencilTool(_ref) {
|
10010
|
+
var inputRef = _ref.inputRef,
|
10011
|
+
selected = _ref.selected,
|
10012
|
+
width = _ref.width,
|
10013
|
+
onSelect = _ref.onSelect,
|
10014
|
+
onChangeColor = _ref.onChangeColor,
|
10015
|
+
onChangeWidth = _ref.onChangeWidth;
|
10016
|
+
return React__default.createElement(Stack, {
|
10017
|
+
direction: "row",
|
10018
|
+
spacing: 1,
|
10019
|
+
alignItems: "center"
|
10020
|
+
}, React__default.createElement(IconButton, {
|
10021
|
+
sx: _extends({
|
10022
|
+
width: "32px",
|
10023
|
+
height: "32px",
|
10024
|
+
background: !selected ? grey[100] : green[500]
|
10025
|
+
}, selected && {
|
10026
|
+
color: "#FFFF"
|
10027
|
+
}, {
|
10028
|
+
"&:hover": {
|
10029
|
+
background: !selected ? grey[100] : green[500]
|
10030
|
+
}
|
10031
|
+
}),
|
10032
|
+
size: "small",
|
10033
|
+
onClick: onSelect
|
10034
|
+
}, React__default.createElement(FaPencilAlt, {
|
10035
|
+
size: 14
|
10036
|
+
})), React__default.createElement(ColorPicker, {
|
10037
|
+
inputRef: inputRef,
|
10038
|
+
onChange: onChangeColor
|
10039
|
+
}), React__default.createElement(Stack, {
|
10040
|
+
direction: "row",
|
10041
|
+
alignItems: "center",
|
10042
|
+
px: 1
|
10043
|
+
}, React__default.createElement(WidthSlider, {
|
10044
|
+
value: width,
|
10045
|
+
onChange: onChangeWidth
|
10046
|
+
})));
|
10047
|
+
};
|
10048
|
+
|
10049
|
+
var EraserTool = function EraserTool(_ref) {
|
10050
|
+
var selected = _ref.selected,
|
10051
|
+
width = _ref.width,
|
10052
|
+
onSelect = _ref.onSelect,
|
10053
|
+
onChangeWidth = _ref.onChangeWidth;
|
10054
|
+
return React__default.createElement(Stack, {
|
10055
|
+
direction: "row",
|
10056
|
+
spacing: 1,
|
10057
|
+
alignItems: "center"
|
10058
|
+
}, React__default.createElement(IconButton, {
|
10059
|
+
sx: _extends({
|
10060
|
+
width: "32px",
|
10061
|
+
height: "32px",
|
10062
|
+
background: !selected ? grey[100] : red[900]
|
10063
|
+
}, selected && {
|
10064
|
+
color: "#FFFF"
|
10065
|
+
}, {
|
10066
|
+
"&:hover": {
|
10067
|
+
background: !selected ? grey[100] : red[900]
|
10068
|
+
}
|
10069
|
+
}),
|
10070
|
+
size: "small",
|
10071
|
+
onClick: onSelect
|
10072
|
+
}, React__default.createElement(FaEraser, {
|
10073
|
+
size: 16
|
10074
|
+
})), React__default.createElement(Stack, {
|
10075
|
+
direction: "row",
|
10076
|
+
alignItems: "center",
|
10077
|
+
px: 1
|
10078
|
+
}, React__default.createElement(WidthSlider, {
|
10079
|
+
value: width,
|
10080
|
+
onChange: onChangeWidth
|
10081
|
+
})));
|
10082
|
+
};
|
10083
|
+
|
10084
|
+
var BgColorTool = function BgColorTool(_ref) {
|
10085
|
+
var inputRef = _ref.inputRef,
|
10086
|
+
onPick = _ref.onPick,
|
10087
|
+
onChange = _ref.onChange;
|
10088
|
+
return React__default.createElement(Stack, {
|
10089
|
+
direction: "row",
|
10090
|
+
spacing: 1,
|
10091
|
+
alignItems: "center"
|
10092
|
+
}, React__default.createElement(Button, {
|
10093
|
+
onClick: onPick
|
10094
|
+
}, React__default.createElement(Box, {
|
10095
|
+
width: "32px",
|
10096
|
+
height: "32px",
|
10097
|
+
display: "flex",
|
10098
|
+
justifyContent: "center",
|
10099
|
+
alignItems: "center"
|
10100
|
+
}, React__default.createElement(IoIosColorFill, {
|
10101
|
+
color: grey[600],
|
10102
|
+
size: 20
|
10103
|
+
})), React__default.createElement(ColorPicker, {
|
10104
|
+
inputRef: inputRef,
|
10105
|
+
onChange: onChange
|
10106
|
+
})));
|
10107
|
+
};
|
10108
|
+
|
10109
|
+
var ToolContainerStyles = {
|
10110
|
+
display: "flex",
|
10111
|
+
gap: 2,
|
10112
|
+
flexWrap: "nowrap",
|
10113
|
+
justifyContent: {
|
10114
|
+
lg: "center",
|
10115
|
+
sx: "start"
|
10116
|
+
},
|
10117
|
+
alignItems: "center",
|
10118
|
+
px: 4,
|
10119
|
+
pb: 2,
|
10120
|
+
pt: 1,
|
10121
|
+
width: "100%",
|
10122
|
+
overflowX: "auto",
|
10123
|
+
overflowY: "hidden"
|
10124
|
+
};
|
10125
|
+
var CanvasContainerStyles = {
|
10126
|
+
position: "relative",
|
10127
|
+
flexGrow: 1,
|
10128
|
+
display: "flex",
|
10129
|
+
justifyContent: {
|
10130
|
+
lg: "center",
|
10131
|
+
sx: "start"
|
10132
|
+
}
|
10133
|
+
};
|
10134
|
+
var CanvasWrapperStyles = {
|
10135
|
+
flexGrow: 1,
|
10136
|
+
overflow: "scroll",
|
10137
|
+
width: "100%",
|
10138
|
+
height: "100%",
|
10139
|
+
display: "flex",
|
10140
|
+
justifyContent: {
|
10141
|
+
lg: "center",
|
10142
|
+
sx: "start"
|
10143
|
+
},
|
10144
|
+
padding: "8px 24px 24px"
|
10145
|
+
};
|
10146
|
+
var IconButtonStyles = {
|
10147
|
+
width: "32px",
|
10148
|
+
height: "32px",
|
10149
|
+
background: grey[100]
|
10150
|
+
};
|
10151
|
+
|
10152
|
+
var Transition = React__default.forwardRef(function Transition(props, ref) {
|
10153
|
+
return React__default.createElement(Slide, Object.assign({
|
10154
|
+
direction: "up",
|
10155
|
+
ref: ref
|
10156
|
+
}, props));
|
10157
|
+
});
|
10158
|
+
var SketchDialog = function SketchDialog(_ref) {
|
10159
|
+
var open = _ref.open,
|
10160
|
+
drawPath = _ref.drawPath,
|
10161
|
+
onClose = _ref.onClose,
|
10162
|
+
onSave = _ref.onSave;
|
10163
|
+
var _useTranslation = useTranslation(),
|
10164
|
+
t = _useTranslation.t;
|
10165
|
+
var canvasRef = useRef(null);
|
10166
|
+
var _useState = useState(DEFAULT_STROKE_COLOR),
|
10167
|
+
strokeColor = _useState[0],
|
10168
|
+
setStrokeColor = _useState[1];
|
10169
|
+
var _useState2 = useState(DEFAULT_STROKE_WIDTH),
|
10170
|
+
strokeWidth = _useState2[0],
|
10171
|
+
setStrokeWidth = _useState2[1];
|
10172
|
+
var _useState3 = useState(DEFAULT_ERASER_WIDTH),
|
10173
|
+
eraserWidth = _useState3[0],
|
10174
|
+
setEraserWidth = _useState3[1];
|
10175
|
+
var _useState4 = useState(DEFAULT_BG_COLOR),
|
10176
|
+
backgroundColor = _useState4[0],
|
10177
|
+
setBackgroundColor = _useState4[1];
|
10178
|
+
var _useState5 = useState(null),
|
10179
|
+
backgroundImage = _useState5[0],
|
10180
|
+
setBackgroundImage = _useState5[1];
|
10181
|
+
var _useState6 = useState(false),
|
10182
|
+
isEraser = _useState6[0],
|
10183
|
+
setIsEraser = _useState6[1];
|
10184
|
+
var bgImageInputRef = useRef(null);
|
10185
|
+
var bgColorRef = useRef(null);
|
10186
|
+
var colorRef = useRef(null);
|
10187
|
+
var _useState7 = useState("none"),
|
10188
|
+
bgImageAspect = _useState7[0],
|
10189
|
+
setBgImageAspect = _useState7[1];
|
10190
|
+
var getNewAlign = function getNewAlign(axis, align) {
|
10191
|
+
if (!axis || !align) return "none";
|
10192
|
+
var _bgImageAspect$split = bgImageAspect.split("Y"),
|
10193
|
+
xAlign = _bgImageAspect$split[0],
|
10194
|
+
yAlign = _bgImageAspect$split[1];
|
10195
|
+
if (bgImageAspect === "none" || !xAlign && !yAlign) return axis === "y" ? "xMinY" + align : "x" + align + "YMin";
|
10196
|
+
return axis === "y" ? xAlign + "Y" + align : "x" + align + "Y" + yAlign;
|
10197
|
+
};
|
10198
|
+
var handleChangeAlign = function handleChangeAlign(axis, pos) {
|
10199
|
+
var newValue = getNewAlign(axis, pos);
|
10200
|
+
setBgImageAspect(newValue);
|
10201
|
+
};
|
10202
|
+
var handleClickBgColor = function handleClickBgColor() {
|
10203
|
+
var _bgColorRef$current;
|
10204
|
+
(_bgColorRef$current = bgColorRef.current) === null || _bgColorRef$current === void 0 ? void 0 : _bgColorRef$current.click();
|
10205
|
+
};
|
10206
|
+
var clearCanvas = function clearCanvas() {
|
10207
|
+
var _canvasRef$current;
|
10208
|
+
(_canvasRef$current = canvasRef.current) === null || _canvasRef$current === void 0 ? void 0 : _canvasRef$current.clearCanvas();
|
10209
|
+
setBackgroundImage(null);
|
10210
|
+
if (bgColorRef.current) bgColorRef.current.value = DEFAULT_BG_COLOR;
|
10211
|
+
setBackgroundColor(DEFAULT_BG_COLOR);
|
10212
|
+
};
|
10213
|
+
var undo = function undo() {
|
10214
|
+
var _canvasRef$current2;
|
10215
|
+
(_canvasRef$current2 = canvasRef.current) === null || _canvasRef$current2 === void 0 ? void 0 : _canvasRef$current2.undo();
|
10216
|
+
};
|
10217
|
+
var redo = function redo() {
|
10218
|
+
var _canvasRef$current3;
|
10219
|
+
(_canvasRef$current3 = canvasRef.current) === null || _canvasRef$current3 === void 0 ? void 0 : _canvasRef$current3.redo();
|
10220
|
+
};
|
10221
|
+
var saveImage = function saveImage() {
|
10222
|
+
try {
|
10223
|
+
var _canvasRef$current4;
|
10224
|
+
return Promise.resolve((_canvasRef$current4 = canvasRef.current) === null || _canvasRef$current4 === void 0 ? void 0 : _canvasRef$current4.exportImage("png")).then(function (imageData) {
|
10225
|
+
var _canvasRef$current5;
|
10226
|
+
return Promise.resolve((_canvasRef$current5 = canvasRef.current) === null || _canvasRef$current5 === void 0 ? void 0 : _canvasRef$current5.exportPaths()).then(function (data) {
|
10227
|
+
onSave(imageData, data);
|
10228
|
+
onClose();
|
10229
|
+
});
|
10230
|
+
});
|
10231
|
+
} catch (e) {
|
10232
|
+
return Promise.reject(e);
|
10233
|
+
}
|
10234
|
+
};
|
10235
|
+
var handleEraserMode = function handleEraserMode() {
|
10236
|
+
var _canvasRef$current6;
|
10237
|
+
setIsEraser(true);
|
10238
|
+
(_canvasRef$current6 = canvasRef.current) === null || _canvasRef$current6 === void 0 ? void 0 : _canvasRef$current6.eraseMode(true);
|
10239
|
+
};
|
10240
|
+
var handlePencilMode = function handlePencilMode() {
|
10241
|
+
var _canvasRef$current7;
|
10242
|
+
setIsEraser(false);
|
10243
|
+
(_canvasRef$current7 = canvasRef.current) === null || _canvasRef$current7 === void 0 ? void 0 : _canvasRef$current7.eraseMode(false);
|
10244
|
+
};
|
10245
|
+
var handleClickChangeBgImage = function handleClickChangeBgImage() {
|
10246
|
+
var _bgImageInputRef$curr;
|
10247
|
+
(_bgImageInputRef$curr = bgImageInputRef.current) === null || _bgImageInputRef$curr === void 0 ? void 0 : _bgImageInputRef$curr.click();
|
10248
|
+
};
|
10249
|
+
var handleBackgroundImageChange = function handleBackgroundImageChange(event) {
|
10250
|
+
var _event$target$files;
|
10251
|
+
var file = (_event$target$files = event.target.files) === null || _event$target$files === void 0 ? void 0 : _event$target$files[0];
|
10252
|
+
if (file) {
|
10253
|
+
var reader = new FileReader();
|
10254
|
+
reader.onload = function () {
|
10255
|
+
setBackgroundImage(reader.result);
|
10256
|
+
};
|
10257
|
+
reader.readAsDataURL(file);
|
10258
|
+
}
|
10259
|
+
};
|
10260
|
+
var handleChangePencilColor = function handleChangePencilColor(e) {
|
10261
|
+
setStrokeColor(e.target.value);
|
10262
|
+
};
|
10263
|
+
var handleChangeBgColor = function handleChangeBgColor(e) {
|
10264
|
+
setBackgroundColor(e.target.value);
|
10265
|
+
};
|
10266
|
+
var handleChangeEraserWidth = function handleChangeEraserWidth(e) {
|
10267
|
+
return setEraserWidth(Number(e.target.value));
|
10268
|
+
};
|
10269
|
+
var handleChangePencilWidth = function handleChangePencilWidth(e) {
|
10270
|
+
return setStrokeWidth(Number(e.target.value));
|
10271
|
+
};
|
10272
|
+
var debounceChangeBgColor = _$a.debounce(handleChangeBgColor, 300);
|
10273
|
+
var debounceChangePencilColor = _$a.debounce(handleChangePencilColor, 300);
|
10274
|
+
var debounceChangeEraserWidth = _$a.debounce(handleChangeEraserWidth, 300);
|
10275
|
+
var debounceChangePencilWidth = _$a.debounce(handleChangePencilWidth, 300);
|
10276
|
+
var currentToolSize = isEraser ? eraserWidth : strokeWidth;
|
10277
|
+
var handleClearBgImage = function handleClearBgImage() {
|
10278
|
+
setBackgroundImage(null);
|
10279
|
+
};
|
10280
|
+
var handleLoad = function handleLoad(data) {
|
10281
|
+
try {
|
10282
|
+
var _temp = function () {
|
10283
|
+
if (data) {
|
10284
|
+
var _canvasRef$current8;
|
10285
|
+
return Promise.resolve((_canvasRef$current8 = canvasRef.current) === null || _canvasRef$current8 === void 0 ? void 0 : _canvasRef$current8.loadPaths(data)).then(function () {
|
10286
|
+
if (bgColorRef.current) bgColorRef.current.value = backgroundColor;
|
10287
|
+
});
|
10288
|
+
} else {
|
10289
|
+
var _canvasRef$current9;
|
10290
|
+
return Promise.resolve((_canvasRef$current9 = canvasRef.current) === null || _canvasRef$current9 === void 0 ? void 0 : _canvasRef$current9.clearCanvas()).then(function () {
|
10291
|
+
if (bgColorRef.current) bgColorRef.current.value = DEFAULT_BG_COLOR;
|
10292
|
+
setBackgroundColor(DEFAULT_BG_COLOR);
|
10293
|
+
setBackgroundImage(null);
|
10294
|
+
setBgImageAspect("none");
|
10295
|
+
});
|
10296
|
+
}
|
10297
|
+
}();
|
10298
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(function () {}) : void 0);
|
10299
|
+
} catch (e) {
|
10300
|
+
return Promise.reject(e);
|
10301
|
+
}
|
10302
|
+
};
|
10303
|
+
useEffect(function () {
|
10304
|
+
if (open) {
|
10305
|
+
setTimeout(function () {
|
10306
|
+
if (canvasRef.current) {
|
10307
|
+
handleLoad(drawPath);
|
10308
|
+
}
|
10309
|
+
}, 0);
|
10310
|
+
} else {
|
10311
|
+
if (bgColorRef.current) bgColorRef.current.value = DEFAULT_BG_COLOR;
|
10312
|
+
if (colorRef.current) colorRef.current.value = DEFAULT_STROKE_COLOR;
|
10313
|
+
setStrokeColor(DEFAULT_STROKE_COLOR);
|
10314
|
+
setStrokeWidth(DEFAULT_STROKE_WIDTH);
|
10315
|
+
setEraserWidth(DEFAULT_ERASER_WIDTH);
|
10316
|
+
setIsEraser(false);
|
10317
|
+
}
|
10318
|
+
}, [open, drawPath]);
|
10319
|
+
return React__default.createElement(Dialog, {
|
10320
|
+
fullScreen: true,
|
10321
|
+
open: open,
|
10322
|
+
onClose: onClose,
|
10323
|
+
TransitionComponent: Transition
|
10324
|
+
}, React__default.createElement(AppBar, {
|
10325
|
+
color: "success",
|
10326
|
+
sx: {
|
10327
|
+
position: "relative"
|
10328
|
+
}
|
10329
|
+
}, React__default.createElement(Toolbar, null, React__default.createElement(IconButton, {
|
10330
|
+
sx: {
|
10331
|
+
width: "32px",
|
10332
|
+
height: "32px"
|
10333
|
+
},
|
10334
|
+
edge: "start",
|
10335
|
+
color: "inherit",
|
10336
|
+
onClick: onClose,
|
10337
|
+
"aria-label": "close"
|
10338
|
+
}, React__default.createElement(IoClose, null)), React__default.createElement(Typography, {
|
10339
|
+
sx: {
|
10340
|
+
ml: 2,
|
10341
|
+
flex: 1
|
10342
|
+
},
|
10343
|
+
variant: "h6",
|
10344
|
+
component: "div"
|
10345
|
+
}, t("sketch_canvas")), React__default.createElement(Stack, {
|
10346
|
+
direction: "row",
|
10347
|
+
gap: 1
|
10348
|
+
}, React__default.createElement(Button, {
|
10349
|
+
sx: {
|
10350
|
+
px: 2
|
10351
|
+
},
|
10352
|
+
startIcon: React__default.createElement(FaSave, {
|
10353
|
+
size: 14
|
10354
|
+
}),
|
10355
|
+
color: "inherit",
|
10356
|
+
onClick: saveImage
|
10357
|
+
}, t("save")), React__default.createElement(Button, {
|
10358
|
+
sx: {
|
10359
|
+
px: 2
|
10360
|
+
},
|
10361
|
+
startIcon: React__default.createElement(GrClearOption, {
|
10362
|
+
size: 14
|
10363
|
+
}),
|
10364
|
+
color: "inherit",
|
10365
|
+
onClick: clearCanvas
|
10366
|
+
}, t("clear"))))), React__default.createElement(Box, {
|
10367
|
+
sx: {
|
10368
|
+
display: "flex",
|
10369
|
+
flexDirection: "column",
|
10370
|
+
height: "100%",
|
10371
|
+
padding: 2
|
10372
|
+
}
|
10373
|
+
}, React__default.createElement(Box, {
|
10374
|
+
sx: ToolContainerStyles
|
10375
|
+
}, React__default.createElement(PencilTool, {
|
10376
|
+
inputRef: colorRef,
|
10377
|
+
width: strokeWidth,
|
10378
|
+
selected: !isEraser,
|
10379
|
+
onSelect: handlePencilMode,
|
10380
|
+
onChangeColor: debounceChangePencilColor,
|
10381
|
+
onChangeWidth: debounceChangePencilWidth
|
10382
|
+
}), React__default.createElement(Divider, {
|
10383
|
+
orientation: "vertical",
|
10384
|
+
flexItem: true,
|
10385
|
+
sx: {
|
10386
|
+
borderColor: grey[300]
|
10387
|
+
}
|
10388
|
+
}), React__default.createElement(EraserTool, {
|
10389
|
+
width: eraserWidth,
|
10390
|
+
selected: isEraser,
|
10391
|
+
onSelect: handleEraserMode,
|
10392
|
+
onChangeWidth: debounceChangeEraserWidth
|
10393
|
+
}), React__default.createElement(Divider, {
|
10394
|
+
orientation: "vertical",
|
10395
|
+
flexItem: true,
|
10396
|
+
sx: {
|
10397
|
+
borderColor: grey[300]
|
10398
|
+
}
|
10399
|
+
}), React__default.createElement(BgColorTool, {
|
10400
|
+
inputRef: bgColorRef,
|
10401
|
+
onChange: debounceChangeBgColor,
|
10402
|
+
onPick: handleClickBgColor
|
10403
|
+
}), React__default.createElement(Divider, {
|
10404
|
+
orientation: "vertical",
|
10405
|
+
flexItem: true,
|
10406
|
+
sx: {
|
10407
|
+
borderColor: grey[300]
|
10408
|
+
}
|
10409
|
+
}), React__default.createElement(Stack, {
|
10410
|
+
direction: "row",
|
10411
|
+
spacing: 1,
|
10412
|
+
alignItems: "center"
|
10413
|
+
}, React__default.createElement(IconButton, {
|
10414
|
+
sx: IconButtonStyles,
|
10415
|
+
size: "small",
|
10416
|
+
onClick: undo
|
10417
|
+
}, React__default.createElement(IoMdUndo, {
|
10418
|
+
size: 20
|
10419
|
+
})), React__default.createElement(IconButton, {
|
10420
|
+
sx: IconButtonStyles,
|
10421
|
+
size: "small",
|
10422
|
+
onClick: redo
|
10423
|
+
}, React__default.createElement(IoMdRedo, {
|
10424
|
+
size: 20
|
10425
|
+
}))), React__default.createElement(Divider, {
|
10426
|
+
orientation: "vertical",
|
10427
|
+
flexItem: true,
|
10428
|
+
sx: {
|
10429
|
+
borderColor: grey[300]
|
10430
|
+
}
|
10431
|
+
}), React__default.createElement(BgImgTool, {
|
10432
|
+
apsect: bgImageAspect,
|
10433
|
+
inputRef: bgImageInputRef,
|
10434
|
+
value: backgroundImage,
|
10435
|
+
onAspectChange: handleChangeAlign,
|
10436
|
+
onChange: handleBackgroundImageChange,
|
10437
|
+
onClear: handleClearBgImage,
|
10438
|
+
onPick: handleClickChangeBgImage
|
10439
|
+
})), React__default.createElement(Box, {
|
10440
|
+
sx: CanvasWrapperStyles
|
10441
|
+
}, React__default.createElement(Box, {
|
10442
|
+
sx: CanvasContainerStyles
|
10443
|
+
}, React__default.createElement(ReactSketchCanvas, {
|
10444
|
+
ref: canvasRef,
|
10445
|
+
style: {
|
10446
|
+
border: "2px solid " + green[500]
|
10447
|
+
},
|
10448
|
+
width: CANVAS_WIDTH + "px",
|
10449
|
+
height: CANVAS_HEIGHT + "px",
|
10450
|
+
strokeWidth: strokeWidth,
|
10451
|
+
strokeColor: strokeColor,
|
10452
|
+
canvasColor: backgroundColor,
|
10453
|
+
backgroundImage: backgroundImage != null ? backgroundImage : undefined,
|
10454
|
+
eraserWidth: eraserWidth,
|
10455
|
+
preserveBackgroundImageAspectRatio: backgroundImage ? bgImageAspect : undefined
|
10456
|
+
}), React__default.createElement(CanvasOverlay, {
|
10457
|
+
width: CANVAS_WIDTH,
|
10458
|
+
height: CANVAS_HEIGHT,
|
10459
|
+
size: currentToolSize,
|
10460
|
+
color: strokeColor,
|
10461
|
+
open: open,
|
10462
|
+
isEraser: isEraser
|
10463
|
+
})))));
|
10464
|
+
};
|
10465
|
+
|
9619
10466
|
var InputChat = function InputChat(_ref) {
|
9620
|
-
var
|
10467
|
+
var isSending = _ref.isSending,
|
10468
|
+
role = _ref.role,
|
10469
|
+
text = _ref.text,
|
10470
|
+
drawPath = _ref.drawPath,
|
10471
|
+
onClearCanvas = _ref.onClearCanvas,
|
10472
|
+
onSaveCanvas = _ref.onSaveCanvas,
|
9621
10473
|
onChangeInput = _ref.onChangeInput,
|
9622
10474
|
onSubmit = _ref.onSubmit,
|
9623
10475
|
isCompleted = _ref.isCompleted,
|
@@ -9626,10 +10478,20 @@ var InputChat = function InputChat(_ref) {
|
|
9626
10478
|
handleDeleteSelectedImage = _ref.handleDeleteSelectedImage;
|
9627
10479
|
var _useTranslation = useTranslation(),
|
9628
10480
|
t = _useTranslation.t;
|
10481
|
+
var isStudent = role === Role.Student;
|
9629
10482
|
var fileInputRef = useRef(null);
|
10483
|
+
var _useState = useState(false),
|
10484
|
+
open = _useState[0],
|
10485
|
+
setOpen = _useState[1];
|
10486
|
+
var disabled = isCompleted || isSending;
|
9630
10487
|
var handleSubmit = function handleSubmit() {
|
9631
10488
|
onSubmit();
|
9632
10489
|
};
|
10490
|
+
var handleToggleSketchDialog = function handleToggleSketchDialog() {
|
10491
|
+
setOpen(function (state) {
|
10492
|
+
return !state;
|
10493
|
+
});
|
10494
|
+
};
|
9633
10495
|
var handleSelectedFile = function handleSelectedFile(e) {
|
9634
10496
|
var files = e.target.files;
|
9635
10497
|
handleUploadImage(files[0]);
|
@@ -9637,13 +10499,26 @@ var InputChat = function InputChat(_ref) {
|
|
9637
10499
|
fileInputRef.current.value = "";
|
9638
10500
|
}
|
9639
10501
|
};
|
10502
|
+
var handleSaveCanvas = function handleSaveCanvas(data, drawPath) {
|
10503
|
+
onSaveCanvas(data, drawPath);
|
10504
|
+
};
|
10505
|
+
var handleClickImage = function handleClickImage() {
|
10506
|
+
if (!drawPath) return;
|
10507
|
+
handleToggleSketchDialog();
|
10508
|
+
};
|
10509
|
+
var handleopenSketchDialog = function handleopenSketchDialog() {
|
10510
|
+
handleToggleSketchDialog();
|
10511
|
+
onClearCanvas();
|
10512
|
+
};
|
9640
10513
|
return React__default.createElement(Grid, {
|
9641
10514
|
item: true,
|
9642
10515
|
xs: 12,
|
9643
10516
|
padding: "16px"
|
9644
|
-
}, React__default.createElement(
|
9645
|
-
|
9646
|
-
|
10517
|
+
}, React__default.createElement(Stack, {
|
10518
|
+
direction: {
|
10519
|
+
sx: "column",
|
10520
|
+
lg: "row"
|
10521
|
+
},
|
9647
10522
|
gap: "24px"
|
9648
10523
|
}, React__default.createElement(Box, {
|
9649
10524
|
display: "flex",
|
@@ -9655,12 +10530,14 @@ var InputChat = function InputChat(_ref) {
|
|
9655
10530
|
border: selectedFile ? "1px solid #97A1AF" : undefined,
|
9656
10531
|
borderRadius: selectedFile ? "6px" : undefined,
|
9657
10532
|
flexDirection: "column"
|
9658
|
-
}, selectedFile && React__default.createElement(
|
10533
|
+
}, selectedFile && React__default.createElement(Box, {
|
9659
10534
|
style: {
|
9660
10535
|
position: "relative",
|
9661
10536
|
margin: "10px",
|
9662
|
-
width: "fit-content"
|
9663
|
-
|
10537
|
+
width: "fit-content",
|
10538
|
+
cursor: drawPath ? "pointer" : "unset"
|
10539
|
+
},
|
10540
|
+
onClick: handleClickImage
|
9664
10541
|
}, React__default.createElement("img", {
|
9665
10542
|
src: selectedFile,
|
9666
10543
|
style: {
|
@@ -9679,21 +10556,21 @@ var InputChat = function InputChat(_ref) {
|
|
9679
10556
|
cursor: "pointer",
|
9680
10557
|
background: grey[100]
|
9681
10558
|
},
|
10559
|
+
disabled: isSending,
|
9682
10560
|
onClick: handleDeleteSelectedImage
|
9683
10561
|
}, React__default.createElement(FaTrash, {
|
9684
10562
|
size: 16
|
9685
10563
|
}))), !selectedFile && React__default.createElement(TinyChatEditor, {
|
9686
10564
|
initValue: text,
|
9687
10565
|
onChange: onChangeInput,
|
9688
|
-
disabled:
|
10566
|
+
disabled: disabled
|
9689
10567
|
})), React__default.createElement(Typography, {
|
9690
10568
|
fontWeight: 500,
|
9691
10569
|
fontSize: "10px",
|
9692
10570
|
lineHeight: "11.93px",
|
9693
10571
|
color: "#97A1AF"
|
9694
|
-
}, t(
|
9695
|
-
|
9696
|
-
flexDirection: "column",
|
10572
|
+
}, t("this_is_the_guidance_text"))), React__default.createElement(Stack, {
|
10573
|
+
direction: "column",
|
9697
10574
|
justifyContent: "flex-start",
|
9698
10575
|
alignItems: "flex-end",
|
9699
10576
|
gap: "16px"
|
@@ -9702,11 +10579,19 @@ var InputChat = function InputChat(_ref) {
|
|
9702
10579
|
fullWidth: true,
|
9703
10580
|
className: styles$2["btn-send"],
|
9704
10581
|
sx: {
|
9705
|
-
bgcolor:
|
10582
|
+
bgcolor: disabled ? styles.light + " !important" : styles.less_dark
|
9706
10583
|
},
|
9707
|
-
disabled:
|
10584
|
+
disabled: disabled,
|
9708
10585
|
onClick: handleSubmit
|
9709
|
-
},
|
10586
|
+
}, isSending ? React__default.createElement(Stack, {
|
10587
|
+
justifyContent: "center",
|
10588
|
+
alignItems: "center"
|
10589
|
+
}, React__default.createElement(CircularProgress, {
|
10590
|
+
sx: {
|
10591
|
+
color: "#FFF"
|
10592
|
+
},
|
10593
|
+
size: 14
|
10594
|
+
})) : React__default.createElement(iconSendMessage, null), React__default.createElement(Typography, {
|
9710
10595
|
fontWeight: 700,
|
9711
10596
|
fontSize: "13px",
|
9712
10597
|
lineHeight: "15.51px"
|
@@ -9714,12 +10599,12 @@ var InputChat = function InputChat(_ref) {
|
|
9714
10599
|
variant: "outlined",
|
9715
10600
|
component: "label",
|
9716
10601
|
fullWidth: true,
|
9717
|
-
disabled:
|
10602
|
+
disabled: disabled,
|
9718
10603
|
sx: {
|
9719
10604
|
display: "flex",
|
9720
10605
|
gap: "8px",
|
9721
10606
|
padding: "12px !important",
|
9722
|
-
borderColor:
|
10607
|
+
borderColor: disabled ? "transparent" : styles.less_dark,
|
9723
10608
|
borderWidth: "1px"
|
9724
10609
|
}
|
9725
10610
|
}, React__default.createElement(iconPlusCircle, {
|
@@ -9735,9 +10620,20 @@ var InputChat = function InputChat(_ref) {
|
|
9735
10620
|
type: "file",
|
9736
10621
|
hidden: true,
|
9737
10622
|
ref: fileInputRef,
|
9738
|
-
disabled:
|
10623
|
+
disabled: disabled,
|
9739
10624
|
accept: "image/png, image/gif, image/jpeg",
|
9740
10625
|
onChangeCapture: handleSelectedFile
|
10626
|
+
})), !isStudent && React__default.createElement(Fragment$1, null, React__default.createElement(Button, {
|
10627
|
+
startIcon: React__default.createElement(MdDraw, null),
|
10628
|
+
variant: "contained",
|
10629
|
+
disabled: disabled,
|
10630
|
+
fullWidth: true,
|
10631
|
+
onClick: handleopenSketchDialog
|
10632
|
+
}, t("sketch")), React__default.createElement(SketchDialog, {
|
10633
|
+
open: open,
|
10634
|
+
drawPath: drawPath,
|
10635
|
+
onClose: handleToggleSketchDialog,
|
10636
|
+
onSave: handleSaveCanvas
|
9741
10637
|
})))));
|
9742
10638
|
};
|
9743
10639
|
|
@@ -10003,7 +10899,8 @@ var ChatHeader = function ChatHeader(_ref) {
|
|
10003
10899
|
};
|
10004
10900
|
|
10005
10901
|
var ChatContainer = function ChatContainer(_ref) {
|
10006
|
-
var
|
10902
|
+
var role = _ref.role,
|
10903
|
+
chatHeaderProps = _ref.chatHeaderProps,
|
10007
10904
|
chatListProps = _ref.chatListProps,
|
10008
10905
|
inputProps = _ref.inputProps,
|
10009
10906
|
_ref$scrollOffset = _ref.scrollOffset,
|
@@ -10096,76 +10993,9 @@ var ChatContainer = function ChatContainer(_ref) {
|
|
10096
10993
|
className: "d-flex justify-content-center align-items-center"
|
10097
10994
|
}, React__default.createElement(CircularProgress, null)), React__default.createElement(ChatList, Object.assign({}, chatListProps, {
|
10098
10995
|
listItemRef: listItemRef
|
10099
|
-
}))), React__default.createElement(InputChat, Object.assign({
|
10100
|
-
|
10101
|
-
|
10102
|
-
var MessageSortBy;
|
10103
|
-
(function (MessageSortBy) {
|
10104
|
-
MessageSortBy["CreatedAt"] = "CreatedAt";
|
10105
|
-
})(MessageSortBy || (MessageSortBy = {}));
|
10106
|
-
var OrderBy$1;
|
10107
|
-
(function (OrderBy) {
|
10108
|
-
OrderBy["ASC"] = "ASC";
|
10109
|
-
OrderBy["DESC"] = "DESC";
|
10110
|
-
})(OrderBy$1 || (OrderBy$1 = {}));
|
10111
|
-
var StudentSortBy;
|
10112
|
-
(function (StudentSortBy) {
|
10113
|
-
StudentSortBy["CreatedAt"] = "CreatedAt";
|
10114
|
-
StudentSortBy["FullName"] = "FullName";
|
10115
|
-
})(StudentSortBy || (StudentSortBy = {}));
|
10116
|
-
var StudentOrderBy;
|
10117
|
-
(function (StudentOrderBy) {
|
10118
|
-
StudentOrderBy["ASC"] = "ASC";
|
10119
|
-
StudentOrderBy["DESC"] = "DESC";
|
10120
|
-
})(StudentOrderBy || (StudentOrderBy = {}));
|
10121
|
-
var MessageAction;
|
10122
|
-
(function (MessageAction) {
|
10123
|
-
MessageAction[MessageAction["Default"] = 0] = "Default";
|
10124
|
-
MessageAction[MessageAction["Took"] = 1] = "Took";
|
10125
|
-
})(MessageAction || (MessageAction = {}));
|
10126
|
-
var MessageSourceType;
|
10127
|
-
(function (MessageSourceType) {
|
10128
|
-
MessageSourceType[MessageSourceType["Default"] = 0] = "Default";
|
10129
|
-
MessageSourceType[MessageSourceType["Exam"] = 1] = "Exam";
|
10130
|
-
MessageSourceType[MessageSourceType["Class"] = 2] = "Class";
|
10131
|
-
})(MessageSourceType || (MessageSourceType = {}));
|
10132
|
-
var MessageStatus;
|
10133
|
-
(function (MessageStatus) {
|
10134
|
-
MessageStatus["Default"] = "Sent";
|
10135
|
-
MessageStatus["Sending"] = "Sending...";
|
10136
|
-
MessageStatus["SentError"] = "Sent fail, Retry";
|
10137
|
-
})(MessageStatus || (MessageStatus = {}));
|
10138
|
-
|
10139
|
-
var types = {
|
10140
|
-
__proto__: null,
|
10141
|
-
get MessageSortBy () { return MessageSortBy; },
|
10142
|
-
get OrderBy () { return OrderBy$1; },
|
10143
|
-
get StudentSortBy () { return StudentSortBy; },
|
10144
|
-
get StudentOrderBy () { return StudentOrderBy; },
|
10145
|
-
get MessageAction () { return MessageAction; },
|
10146
|
-
get MessageSourceType () { return MessageSourceType; },
|
10147
|
-
get MessageStatus () { return MessageStatus; }
|
10148
|
-
};
|
10149
|
-
|
10150
|
-
var ExamStatus$1;
|
10151
|
-
(function (ExamStatus) {
|
10152
|
-
ExamStatus["Default"] = "Default";
|
10153
|
-
ExamStatus["Pending"] = "Pending";
|
10154
|
-
ExamStatus["Inprogress"] = "Inprogress";
|
10155
|
-
ExamStatus["Completed"] = "Completed";
|
10156
|
-
})(ExamStatus$1 || (ExamStatus$1 = {}));
|
10157
|
-
var Roles;
|
10158
|
-
(function (Roles) {
|
10159
|
-
Roles["Student"] = "Student";
|
10160
|
-
Roles["Teacher"] = "Teacher";
|
10161
|
-
Roles["Admin"] = "Admin";
|
10162
|
-
})(Roles || (Roles = {}));
|
10163
|
-
var MESSAGE_DEFAULT_FILTER = {
|
10164
|
-
currentPage: 1,
|
10165
|
-
pageSize: 15,
|
10166
|
-
textSearch: "",
|
10167
|
-
sortColumnDirection: OrderBy$1.DESC,
|
10168
|
-
sortColumnName: MessageSortBy.CreatedAt
|
10996
|
+
}))), React__default.createElement(InputChat, Object.assign({
|
10997
|
+
role: role
|
10998
|
+
}, inputProps)));
|
10169
10999
|
};
|
10170
11000
|
|
10171
11001
|
var RECENT_USER_URL = BASE_URL + "/api/recentUsers";
|
@@ -10394,6 +11224,12 @@ var useChatContainer = function useChatContainer(props) {
|
|
10394
11224
|
var _useState5 = useState(true),
|
10395
11225
|
isScrollToEnd = _useState5[0],
|
10396
11226
|
setScrollToEnd = _useState5[1];
|
11227
|
+
var _useState6 = useState(),
|
11228
|
+
drawPath = _useState6[0],
|
11229
|
+
setDrawPath = _useState6[1];
|
11230
|
+
var _useState7 = useState(false),
|
11231
|
+
isSending = _useState7[0],
|
11232
|
+
setSending = _useState7[1];
|
10397
11233
|
var isAdmin = roles === null || roles === void 0 ? void 0 : roles.includes(Role.Admin);
|
10398
11234
|
var _useMessageList = useMessageList({
|
10399
11235
|
student: student
|
@@ -10418,6 +11254,7 @@ var useChatContainer = function useChatContainer(props) {
|
|
10418
11254
|
try {
|
10419
11255
|
var _temp3 = function _temp3(_result2) {
|
10420
11256
|
if (_exit) return _result2;
|
11257
|
+
setSending(false);
|
10421
11258
|
loadingRef.current = false;
|
10422
11259
|
};
|
10423
11260
|
var _exit = false;
|
@@ -10425,6 +11262,7 @@ var useChatContainer = function useChatContainer(props) {
|
|
10425
11262
|
loadingRef.current = true;
|
10426
11263
|
if (!(selectedConversation !== null && selectedConversation !== void 0 && selectedConversation.id)) return Promise.resolve();
|
10427
11264
|
setScrollToEnd(true);
|
11265
|
+
setSending(true);
|
10428
11266
|
var _temp2 = _catch(function () {
|
10429
11267
|
if (file) {
|
10430
11268
|
return Promise.resolve(handleUploadImageData(file)).then(function (selectedFile) {
|
@@ -10464,6 +11302,7 @@ var useChatContainer = function useChatContainer(props) {
|
|
10464
11302
|
};
|
10465
11303
|
var handleUploadImage = function handleUploadImage(file) {
|
10466
11304
|
try {
|
11305
|
+
handleClearCanvas();
|
10467
11306
|
if (file) {
|
10468
11307
|
setFile(file);
|
10469
11308
|
var reader = new FileReader();
|
@@ -10477,11 +11316,29 @@ var useChatContainer = function useChatContainer(props) {
|
|
10477
11316
|
return Promise.reject(e);
|
10478
11317
|
}
|
10479
11318
|
};
|
11319
|
+
var handleSaveCanvas = function handleSaveCanvas(data, drawPath) {
|
11320
|
+
try {
|
11321
|
+
return Promise.resolve(fetch(data)).then(function (_fetch) {
|
11322
|
+
return Promise.resolve(_fetch.blob()).then(function (blob) {
|
11323
|
+
setFile(blob);
|
11324
|
+
setBackgroundImage(data);
|
11325
|
+
setDrawPath(drawPath);
|
11326
|
+
});
|
11327
|
+
});
|
11328
|
+
} catch (e) {
|
11329
|
+
return Promise.reject(e);
|
11330
|
+
}
|
11331
|
+
};
|
11332
|
+
var handleClearCanvas = function handleClearCanvas() {
|
11333
|
+
setBackgroundImage(null);
|
11334
|
+
setDrawPath(undefined);
|
11335
|
+
setFile(undefined);
|
11336
|
+
};
|
10480
11337
|
var handleUploadImageData = function handleUploadImageData(file) {
|
10481
11338
|
try {
|
10482
11339
|
return Promise.resolve(_catch(function () {
|
10483
11340
|
var formData = new FormData();
|
10484
|
-
formData.append("upload", file);
|
11341
|
+
if (file instanceof Blob) formData.append("upload", file, 'drawing.png');else formData.append("upload", file);
|
10485
11342
|
return Promise.resolve(apiUploadImageFile(formData)).then(function (res) {
|
10486
11343
|
var _res$data;
|
10487
11344
|
return {
|
@@ -10554,7 +11411,8 @@ var useChatContainer = function useChatContainer(props) {
|
|
10554
11411
|
return Promise.reject(e);
|
10555
11412
|
}
|
10556
11413
|
};
|
10557
|
-
var handleDeleteSelectedImage = function handleDeleteSelectedImage() {
|
11414
|
+
var handleDeleteSelectedImage = function handleDeleteSelectedImage(e) {
|
11415
|
+
e === null || e === void 0 ? void 0 : e.stopPropagation();
|
10558
11416
|
setFile(undefined);
|
10559
11417
|
setBackgroundImage(null);
|
10560
11418
|
};
|
@@ -10642,12 +11500,16 @@ var useChatContainer = function useChatContainer(props) {
|
|
10642
11500
|
handleDeleteMessage: handleDeleteMessage
|
10643
11501
|
},
|
10644
11502
|
inputProps: {
|
11503
|
+
isSending: isSending,
|
11504
|
+
drawPath: drawPath,
|
10645
11505
|
selectedFile: backgroundImage,
|
10646
11506
|
text: (message === null || message === void 0 ? void 0 : message.content) || "",
|
10647
11507
|
onChangeInput: handleChangeInput,
|
10648
11508
|
onSubmit: handleAddMessage,
|
10649
11509
|
handleDeleteSelectedImage: handleDeleteSelectedImage,
|
10650
11510
|
handleUploadImage: handleUploadImage,
|
11511
|
+
onSaveCanvas: handleSaveCanvas,
|
11512
|
+
onClearCanvas: handleClearCanvas,
|
10651
11513
|
isCompleted: selectedConversation === null || selectedConversation === void 0 ? void 0 : selectedConversation.isCompleted
|
10652
11514
|
},
|
10653
11515
|
isScrollToEnd: isScrollToEnd,
|
@@ -23211,12 +24073,12 @@ var useExamResultData = function useExamResultData(props) {
|
|
23211
24073
|
var _useState9 = useState(),
|
23212
24074
|
openProblem = _useState9[0],
|
23213
24075
|
setOpenProblem = _useState9[1];
|
23214
|
-
var
|
23215
|
-
selectedQuestion =
|
23216
|
-
setSelectedQuestion =
|
23217
|
-
var
|
23218
|
-
errorMessage =
|
23219
|
-
setErrorMessage =
|
24076
|
+
var _useState10 = useState(),
|
24077
|
+
selectedQuestion = _useState10[0],
|
24078
|
+
setSelectedQuestion = _useState10[1];
|
24079
|
+
var _useState11 = useState(),
|
24080
|
+
errorMessage = _useState11[0],
|
24081
|
+
setErrorMessage = _useState11[1];
|
23220
24082
|
var _useTranslation = useTranslation(),
|
23221
24083
|
t = _useTranslation.t;
|
23222
24084
|
var isBelongAcademy = !!user && user.academyDomain && !user.isLearningSpace;
|
@@ -24109,7 +24971,7 @@ var useOverallChartContainer = function useOverallChartContainer(isStudent, exam
|
|
24109
24971
|
return [texts.slice(0, middle), texts.slice(middle)];
|
24110
24972
|
}, [JSON.stringify(categories)]);
|
24111
24973
|
var formatTooltip = useCallback(function (_ref2) {
|
24112
|
-
var _overallData$data$0$h, _overallData$data$, _overallData$data$1$h, _overallData$data$2, _overallData$data$2$h, _overallData$data$0$q, _overallData$data$3, _overallData$data$1$q, _overallData$data$4, _overallData$data$0$p, _overallData$data$5, _overallData$data$1$p, _overallData$data$6, _overallData$data$0$t, _overallData$data$7, _overallData$data$1$t, _overallData$data$8, _overallData$data$8$t, _overallData$data$0$l, _overallData$data$9, _overallData$data$1$l, _overallData$data$
|
24974
|
+
var _overallData$data$0$h, _overallData$data$, _overallData$data$1$h, _overallData$data$2, _overallData$data$2$h, _overallData$data$0$q, _overallData$data$3, _overallData$data$1$q, _overallData$data$4, _overallData$data$0$p, _overallData$data$5, _overallData$data$1$p, _overallData$data$6, _overallData$data$0$t, _overallData$data$7, _overallData$data$1$t, _overallData$data$8, _overallData$data$8$t, _overallData$data$0$l, _overallData$data$9, _overallData$data$1$l, _overallData$data$10, _overallData$data$10$, _overallData$data$0$c, _overallData$data$11, _overallData$data$11$, _overallData$data$1$c, _overallData$data$12, _overallData$data$12$;
|
24113
24975
|
var dataPointIndex = _ref2.dataPointIndex,
|
24114
24976
|
w = _ref2.w;
|
24115
24977
|
var label = categories[dataPointIndex];
|
@@ -24153,12 +25015,12 @@ var useOverallChartContainer = function useOverallChartContainer(isStudent, exam
|
|
24153
25015
|
total: (_overallData$data$0$l = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$9 = overallData.data[0]) === null || _overallData$data$9 === void 0 ? void 0 : _overallData$data$9.lowLevelQuestions) != null ? _overallData$data$0$l : 0
|
24154
25016
|
});
|
24155
25017
|
avgValue = "" + t("n_questions", {
|
24156
|
-
total: (_overallData$data$1$l = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$
|
25018
|
+
total: (_overallData$data$1$l = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$10 = overallData.data[1]) === null || _overallData$data$10 === void 0 ? void 0 : (_overallData$data$10$ = _overallData$data$10.lowLevelQuestions) === null || _overallData$data$10$ === void 0 ? void 0 : _overallData$data$10$.toFixed(2)) != null ? _overallData$data$1$l : 0
|
24157
25019
|
});
|
24158
25020
|
break;
|
24159
25021
|
default:
|
24160
|
-
myValue = ((_overallData$data$0$c = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$
|
24161
|
-
avgValue = ((_overallData$data$1$
|
25022
|
+
myValue = ((_overallData$data$0$c = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$11 = overallData.data[0]) === null || _overallData$data$11 === void 0 ? void 0 : (_overallData$data$11$ = _overallData$data$11.correctRate) === null || _overallData$data$11$ === void 0 ? void 0 : _overallData$data$11$.toFixed(2)) != null ? _overallData$data$0$c : 0) + "%";
|
25023
|
+
avgValue = ((_overallData$data$1$c = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$12 = overallData.data[1]) === null || _overallData$data$12 === void 0 ? void 0 : (_overallData$data$12$ = _overallData$data$12.correctRate) === null || _overallData$data$12$ === void 0 ? void 0 : _overallData$data$12$.toFixed(2)) != null ? _overallData$data$1$c : 0) + "%";
|
24162
25024
|
break;
|
24163
25025
|
}
|
24164
25026
|
return "<div style=\"padding: 8px; background: #fff; border-radius: 4px;\">\n <div style=\"border-bottom: 1px solid #f3f3f3; margin-bottom: 4px\"><strong>" + label + "</strong></div>\n <div style=\"display: flex; justify-content: space-between\">\n <p style=\"margin-right: 4px\"><strong style=\"color: " + w.globals.colors[0] + "\">" + t("my_data") + ":</strong></p>\n <p>" + myValue + "</p>\n </div>\n <div style=\"display: flex; justify-content: space-between\">\n <p style=\"margin-right: 4px\"><strong style=\"color: " + w.globals.colors[1] + "\">" + t("avg_data") + ":</strong></p>\n <p>" + avgValue + "</p>\n </div>\n </div>";
|
@@ -27797,7 +28659,7 @@ var PreparedItem = function PreparedItem(_ref) {
|
|
27797
28659
|
margin: "0 1rem",
|
27798
28660
|
width: "800px"
|
27799
28661
|
}
|
27800
|
-
}, React__default.createElement(Slider, Object.assign({}, settings), subjectOptions.map(function (option) {
|
28662
|
+
}, React__default.createElement(Slider$1, Object.assign({}, settings), subjectOptions.map(function (option) {
|
27801
28663
|
return React__default.createElement(Tooltip, {
|
27802
28664
|
title: option.label
|
27803
28665
|
}, React__default.createElement(FormControlLabel, {
|
@@ -29842,13 +30704,13 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29842
30704
|
};
|
29843
30705
|
var handleAddToClass = function handleAddToClass(userIds) {
|
29844
30706
|
try {
|
29845
|
-
var
|
30707
|
+
var _temp12 = function _temp12() {
|
29846
30708
|
dispatch(setLoading(false));
|
29847
30709
|
};
|
29848
30710
|
if (!classId || !openSelectDialog) return Promise.resolve();
|
29849
30711
|
dispatch(setLoading(true));
|
29850
|
-
var
|
29851
|
-
function
|
30712
|
+
var _temp11 = _catch(function () {
|
30713
|
+
function _temp10() {
|
29852
30714
|
return Promise.resolve(handleGetDetailData(false)).then(function () {
|
29853
30715
|
toast.success(t(classId ? "update_class_successfully" : "create_class_successfully"));
|
29854
30716
|
handleCloseSelectDialog();
|
@@ -29865,18 +30727,18 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29865
30727
|
});
|
29866
30728
|
}
|
29867
30729
|
}();
|
29868
|
-
return _temp9 && _temp9.then ? _temp9.then(
|
30730
|
+
return _temp9 && _temp9.then ? _temp9.then(_temp10) : _temp10(_temp9);
|
29869
30731
|
}, function (error) {
|
29870
30732
|
toast.error(getErrorMessage(t, error));
|
29871
30733
|
});
|
29872
|
-
return Promise.resolve(
|
30734
|
+
return Promise.resolve(_temp11 && _temp11.then ? _temp11.then(_temp12) : _temp12(_temp11));
|
29873
30735
|
} catch (e) {
|
29874
30736
|
return Promise.reject(e);
|
29875
30737
|
}
|
29876
30738
|
};
|
29877
30739
|
var handleSubmit = function handleSubmit(values, _) {
|
29878
30740
|
try {
|
29879
|
-
var
|
30741
|
+
var _temp16 = function _temp16() {
|
29880
30742
|
dispatch(setLoading(false));
|
29881
30743
|
};
|
29882
30744
|
if (values.courseWeeklyDays.some(function (i) {
|
@@ -29893,11 +30755,11 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29893
30755
|
}
|
29894
30756
|
var body = convertToRequestBody(values);
|
29895
30757
|
dispatch(setLoading(true));
|
29896
|
-
var
|
29897
|
-
function
|
30758
|
+
var _temp15 = _catch(function () {
|
30759
|
+
function _temp14() {
|
29898
30760
|
toast.success(t(classId ? "update_class_successfully" : "create_class_successfully"));
|
29899
30761
|
}
|
29900
|
-
var
|
30762
|
+
var _temp13 = function () {
|
29901
30763
|
if (!classId) {
|
29902
30764
|
return Promise.resolve(createClassApi(body)).then(function (res) {
|
29903
30765
|
pushTo(history, classListUrl + "/" + res.data.id);
|
@@ -29908,11 +30770,11 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29908
30770
|
});
|
29909
30771
|
}
|
29910
30772
|
}();
|
29911
|
-
return
|
30773
|
+
return _temp13 && _temp13.then ? _temp13.then(_temp14) : _temp14(_temp13);
|
29912
30774
|
}, function (error) {
|
29913
30775
|
toast.error(getErrorMessage(t, error));
|
29914
30776
|
});
|
29915
|
-
return Promise.resolve(
|
30777
|
+
return Promise.resolve(_temp15 && _temp15.then ? _temp15.then(_temp16) : _temp16(_temp15));
|
29916
30778
|
} catch (e) {
|
29917
30779
|
return Promise.reject(e);
|
29918
30780
|
}
|
@@ -29920,7 +30782,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29920
30782
|
var getStudentNotInClassList = function getStudentNotInClassList() {
|
29921
30783
|
try {
|
29922
30784
|
if (!classId) return Promise.resolve();
|
29923
|
-
var
|
30785
|
+
var _temp17 = _catch(function () {
|
29924
30786
|
var _textSearchRef$curren;
|
29925
30787
|
return Promise.resolve(getStudentClassApi(classId, _extends({}, filter, {
|
29926
30788
|
textSearch: (_textSearchRef$curren = textSearchRef.current) === null || _textSearchRef$curren === void 0 ? void 0 : _textSearchRef$curren.value,
|
@@ -29951,7 +30813,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29951
30813
|
setStudents([]);
|
29952
30814
|
toast.error(getErrorMessage(t, error));
|
29953
30815
|
});
|
29954
|
-
return Promise.resolve(
|
30816
|
+
return Promise.resolve(_temp17 && _temp17.then ? _temp17.then(function () {}) : void 0);
|
29955
30817
|
} catch (e) {
|
29956
30818
|
return Promise.reject(e);
|
29957
30819
|
}
|
@@ -29959,7 +30821,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29959
30821
|
var getTeacherNotInClassList = function getTeacherNotInClassList() {
|
29960
30822
|
try {
|
29961
30823
|
if (!classId) return Promise.resolve();
|
29962
|
-
var
|
30824
|
+
var _temp18 = _catch(function () {
|
29963
30825
|
var _textSearchRef$curren2;
|
29964
30826
|
return Promise.resolve(getTeacherClassApi(classId, _extends({}, filter, {
|
29965
30827
|
textSearch: (_textSearchRef$curren2 = textSearchRef.current) === null || _textSearchRef$curren2 === void 0 ? void 0 : _textSearchRef$curren2.value,
|
@@ -29990,7 +30852,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29990
30852
|
setTeachers([]);
|
29991
30853
|
toast.error(getErrorMessage(t, error));
|
29992
30854
|
});
|
29993
|
-
return Promise.resolve(
|
30855
|
+
return Promise.resolve(_temp18 && _temp18.then ? _temp18.then(function () {}) : void 0);
|
29994
30856
|
} catch (e) {
|
29995
30857
|
return Promise.reject(e);
|
29996
30858
|
}
|
@@ -31748,9 +32610,9 @@ var useUserList = function useUserList(role) {
|
|
31748
32610
|
var _useState9 = useState(),
|
31749
32611
|
deleteFile = _useState9[0],
|
31750
32612
|
setDeleteFile = _useState9[1];
|
31751
|
-
var
|
31752
|
-
isOpenDeleteUserCsv =
|
31753
|
-
setOpenDeleteUserCsv =
|
32613
|
+
var _useState10 = useState(false),
|
32614
|
+
isOpenDeleteUserCsv = _useState10[0],
|
32615
|
+
setOpenDeleteUserCsv = _useState10[1];
|
31754
32616
|
var inputFileRef = useRef(null);
|
31755
32617
|
var firstLoadRef = useRef(true);
|
31756
32618
|
var handleChangeSelectedStudent = function handleChangeSelectedStudent(student) {
|
@@ -31906,7 +32768,7 @@ var useUserList = function useUserList(role) {
|
|
31906
32768
|
};
|
31907
32769
|
var getUserList = function getUserList() {
|
31908
32770
|
try {
|
31909
|
-
var
|
32771
|
+
var _temp10 = function _temp10() {
|
31910
32772
|
firstLoadRef.current && dispatch(setLoading(false));
|
31911
32773
|
if (firstLoadRef.current) firstLoadRef.current = false;
|
31912
32774
|
};
|
@@ -31935,7 +32797,7 @@ var useUserList = function useUserList(role) {
|
|
31935
32797
|
setPaging(DEFAULT_PAGING_RESPONSE);
|
31936
32798
|
console.log(error);
|
31937
32799
|
});
|
31938
|
-
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(
|
32800
|
+
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(_temp10) : _temp10(_temp9));
|
31939
32801
|
} catch (e) {
|
31940
32802
|
return Promise.reject(e);
|
31941
32803
|
}
|
@@ -31951,7 +32813,7 @@ var useUserList = function useUserList(role) {
|
|
31951
32813
|
setSelectedUser(user);
|
31952
32814
|
setOpenUserDialog(true);
|
31953
32815
|
return Promise.resolve(_catch(function () {
|
31954
|
-
var
|
32816
|
+
var _temp11 = function () {
|
31955
32817
|
if (!!user.id && !!user.email) {
|
31956
32818
|
return Promise.resolve(createRecentUserActionListApi({
|
31957
32819
|
userId: user === null || user === void 0 ? void 0 : user.id,
|
@@ -31961,7 +32823,7 @@ var useUserList = function useUserList(role) {
|
|
31961
32823
|
})).then(function () {});
|
31962
32824
|
}
|
31963
32825
|
}();
|
31964
|
-
if (
|
32826
|
+
if (_temp11 && _temp11.then) return _temp11.then(function () {});
|
31965
32827
|
}, function (error) {
|
31966
32828
|
console.error(getErrorMessage(t, error));
|
31967
32829
|
}));
|
@@ -31990,18 +32852,18 @@ var useUserList = function useUserList(role) {
|
|
31990
32852
|
};
|
31991
32853
|
var handleCreateOrUpdateUser = function handleCreateOrUpdateUser(value) {
|
31992
32854
|
try {
|
31993
|
-
var
|
32855
|
+
var _temp15 = function _temp15() {
|
31994
32856
|
dispatch(setLoading(false));
|
31995
32857
|
};
|
31996
32858
|
if (value.fullName === "marcus") return Promise.resolve();
|
31997
32859
|
dispatch(setLoading(true));
|
31998
|
-
var
|
31999
|
-
function
|
32860
|
+
var _temp14 = _catch(function () {
|
32861
|
+
function _temp13() {
|
32000
32862
|
return Promise.resolve(getUserList()).then(function () {
|
32001
32863
|
handleCloseUserDialog();
|
32002
32864
|
});
|
32003
32865
|
}
|
32004
|
-
var
|
32866
|
+
var _temp12 = function () {
|
32005
32867
|
if (!!(selectedUser !== null && selectedUser !== void 0 && selectedUser.id)) {
|
32006
32868
|
return Promise.resolve(updateUserApi(_extends({}, value, {
|
32007
32869
|
grade: value.grade == null ? undefined : value.grade
|
@@ -32012,23 +32874,23 @@ var useUserList = function useUserList(role) {
|
|
32012
32874
|
}))).then(function () {});
|
32013
32875
|
}
|
32014
32876
|
}();
|
32015
|
-
return
|
32877
|
+
return _temp12 && _temp12.then ? _temp12.then(_temp13) : _temp13(_temp12);
|
32016
32878
|
}, function (error) {
|
32017
32879
|
toast.error(getErrorMessage(t, error));
|
32018
32880
|
});
|
32019
|
-
return Promise.resolve(
|
32881
|
+
return Promise.resolve(_temp14 && _temp14.then ? _temp14.then(_temp15) : _temp15(_temp14));
|
32020
32882
|
} catch (e) {
|
32021
32883
|
return Promise.reject(e);
|
32022
32884
|
}
|
32023
32885
|
};
|
32024
32886
|
var handleDeleteUser = function handleDeleteUser() {
|
32025
32887
|
try {
|
32026
|
-
var
|
32888
|
+
var _temp17 = function _temp17() {
|
32027
32889
|
dispatch(setLoading(false));
|
32028
32890
|
};
|
32029
32891
|
if (!(selectedUser !== null && selectedUser !== void 0 && selectedUser.id)) return Promise.resolve();
|
32030
32892
|
dispatch(setLoading(true));
|
32031
|
-
var
|
32893
|
+
var _temp16 = _catch(function () {
|
32032
32894
|
return Promise.resolve(deleteUserApi(selectedUser.id)).then(function () {
|
32033
32895
|
toggleConfirmDialog();
|
32034
32896
|
getUserList();
|
@@ -32036,7 +32898,7 @@ var useUserList = function useUserList(role) {
|
|
32036
32898
|
}, function (error) {
|
32037
32899
|
toast.error(getErrorMessage(t, error));
|
32038
32900
|
});
|
32039
|
-
return Promise.resolve(
|
32901
|
+
return Promise.resolve(_temp16 && _temp16.then ? _temp16.then(_temp17) : _temp17(_temp16));
|
32040
32902
|
} catch (e) {
|
32041
32903
|
return Promise.reject(e);
|
32042
32904
|
}
|
@@ -32869,7 +33731,7 @@ var useCategoryOptions = function useCategoryOptions(subjectId, isMath, filter,
|
|
32869
33731
|
};
|
32870
33732
|
var getQuestionTypes = function getQuestionTypes(categoryId, subCategoryId) {
|
32871
33733
|
try {
|
32872
|
-
var
|
33734
|
+
var _temp10 = function _temp10() {
|
32873
33735
|
setLoadingQuestionTypes(false);
|
32874
33736
|
};
|
32875
33737
|
setLoadingQuestionTypes(true);
|
@@ -32892,7 +33754,7 @@ var useCategoryOptions = function useCategoryOptions(subjectId, isMath, filter,
|
|
32892
33754
|
}, function () {
|
32893
33755
|
setQuestionTypes([]);
|
32894
33756
|
});
|
32895
|
-
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(
|
33757
|
+
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(_temp10) : _temp10(_temp9));
|
32896
33758
|
} catch (e) {
|
32897
33759
|
return Promise.reject(e);
|
32898
33760
|
}
|