touchstudy-core 0.1.195 → 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 +2 -2
- /package/dist/utils/types/{questionTypeFilter.d.ts → QuestionTypeFilter.d.ts} +0 -0
package/dist/index.js
CHANGED
@@ -37,8 +37,10 @@ var CreatableSelect = _interopDefault(require('react-select/creatable'));
|
|
37
37
|
var tinymce = _interopDefault(require('tinymce'));
|
38
38
|
require('@wiris/mathtype-tinymce6');
|
39
39
|
var tinymceReact = require('@tinymce/tinymce-react');
|
40
|
-
var
|
40
|
+
var reactSketchCanvas = require('react-sketch-canvas');
|
41
41
|
var md = require('react-icons/md');
|
42
|
+
var gr = require('react-icons/gr');
|
43
|
+
var fa6 = require('react-icons/fa6');
|
42
44
|
var colors = require('@mui/material/colors');
|
43
45
|
var Grid = _interopDefault(require('@mui/material/Grid'));
|
44
46
|
var Card = _interopDefault(require('@mui/material/Card'));
|
@@ -62,7 +64,6 @@ var TableCell = _interopDefault(require('@mui/material/TableCell'));
|
|
62
64
|
var TableRow = _interopDefault(require('@mui/material/TableRow'));
|
63
65
|
var html2pdf = _interopDefault(require('html2pdf.js'));
|
64
66
|
var Slider = _interopDefault(require('react-slick'));
|
65
|
-
var gr = require('react-icons/gr');
|
66
67
|
var Table = _interopDefault(require('@mui/material/Table'));
|
67
68
|
var TableBody = _interopDefault(require('@mui/material/TableBody'));
|
68
69
|
var TableHead = _interopDefault(require('@mui/material/TableHead'));
|
@@ -1577,6 +1578,8 @@ var there_are_no_problems_you_were_working_on = "풀던 문제가 없습니다."
|
|
1577
1578
|
var incomplete_exam = "미참가";
|
1578
1579
|
var completed_exam = "참가";
|
1579
1580
|
var failed_to_send_the_image_error = "이미지를 보내지 못했습니다: {{ message }}";
|
1581
|
+
var sketch = "스케치";
|
1582
|
+
var sketch_canvas = "스케치 캔버스";
|
1580
1583
|
var lang_ko = {
|
1581
1584
|
problem_solving: problem_solving,
|
1582
1585
|
my_story: my_story,
|
@@ -2785,7 +2788,9 @@ var lang_ko = {
|
|
2785
2788
|
there_are_no_problems_you_were_working_on: there_are_no_problems_you_were_working_on,
|
2786
2789
|
incomplete_exam: incomplete_exam,
|
2787
2790
|
completed_exam: completed_exam,
|
2788
|
-
failed_to_send_the_image_error: failed_to_send_the_image_error
|
2791
|
+
failed_to_send_the_image_error: failed_to_send_the_image_error,
|
2792
|
+
sketch: sketch,
|
2793
|
+
sketch_canvas: sketch_canvas
|
2789
2794
|
};
|
2790
2795
|
|
2791
2796
|
var problem_solving$1 = "Problem Solving";
|
@@ -4021,6 +4026,8 @@ var there_are_no_problems_you_were_working_on$1 = "There are no problems you wer
|
|
4021
4026
|
var incomplete_exam$1 = "Incomplete";
|
4022
4027
|
var completed_exam$1 = "Completed";
|
4023
4028
|
var failed_to_send_the_image_error$1 = "Failed to send the image: {{ message }}";
|
4029
|
+
var sketch$1 = "Sketch";
|
4030
|
+
var sketch_canvas$1 = "Sketch canvas";
|
4024
4031
|
var lang_en = {
|
4025
4032
|
problem_solving: problem_solving$1,
|
4026
4033
|
my_story: my_story$1,
|
@@ -5231,7 +5238,9 @@ var lang_en = {
|
|
5231
5238
|
there_are_no_problems_you_were_working_on: there_are_no_problems_you_were_working_on$1,
|
5232
5239
|
incomplete_exam: incomplete_exam$1,
|
5233
5240
|
completed_exam: completed_exam$1,
|
5234
|
-
failed_to_send_the_image_error: failed_to_send_the_image_error$1
|
5241
|
+
failed_to_send_the_image_error: failed_to_send_the_image_error$1,
|
5242
|
+
sketch: sketch$1,
|
5243
|
+
sketch_canvas: sketch_canvas$1
|
5235
5244
|
};
|
5236
5245
|
|
5237
5246
|
i18n__default.use(reactI18next.initReactI18next).init({
|
@@ -9004,7 +9013,9 @@ var ChatRightItem = function ChatRightItem(_ref) {
|
|
9004
9013
|
style: {
|
9005
9014
|
height: "200px",
|
9006
9015
|
position: "relative",
|
9007
|
-
objectFit: "contain"
|
9016
|
+
objectFit: "contain",
|
9017
|
+
cursor: "pointer",
|
9018
|
+
borderRadius: "6px"
|
9008
9019
|
}
|
9009
9020
|
}) : React__default.createElement("div", {
|
9010
9021
|
className: styles$2["wrap-content"] + " " + styles$2["content-chat-receiver"],
|
@@ -9087,7 +9098,9 @@ var ChatLeftItem = function ChatLeftItem(_ref) {
|
|
9087
9098
|
style: {
|
9088
9099
|
height: "200px",
|
9089
9100
|
position: "relative",
|
9090
|
-
objectFit: "contain"
|
9101
|
+
objectFit: "contain",
|
9102
|
+
cursor: "pointer",
|
9103
|
+
borderRadius: "6px"
|
9091
9104
|
}
|
9092
9105
|
}) : React__default.createElement("div", {
|
9093
9106
|
className: styles$2["wrap-content"] + " " + styles$2["content-chat-sender"],
|
@@ -9597,8 +9610,847 @@ var iconSendMessage = function iconSendMessage(_ref) {
|
|
9597
9610
|
}));
|
9598
9611
|
};
|
9599
9612
|
|
9613
|
+
var CanvasOverlay = function CanvasOverlay(_ref) {
|
9614
|
+
var open = _ref.open,
|
9615
|
+
width = _ref.width,
|
9616
|
+
height = _ref.height,
|
9617
|
+
size = _ref.size,
|
9618
|
+
color = _ref.color,
|
9619
|
+
isEraser = _ref.isEraser;
|
9620
|
+
var overlayRef = React.useRef(null);
|
9621
|
+
var _useState = React.useState({
|
9622
|
+
x: 0,
|
9623
|
+
y: 0
|
9624
|
+
}),
|
9625
|
+
cursorPosition = _useState[0],
|
9626
|
+
setCursorPosition = _useState[1];
|
9627
|
+
var _useState2 = React.useState(true),
|
9628
|
+
hideCursor = _useState2[0],
|
9629
|
+
setHideCursor = _useState2[1];
|
9630
|
+
React.useEffect(function () {
|
9631
|
+
var updateCursorPosition = function updateCursorPosition(clientX, clientY) {
|
9632
|
+
var _overlayRef$current;
|
9633
|
+
var rect = (_overlayRef$current = overlayRef.current) === null || _overlayRef$current === void 0 ? void 0 : _overlayRef$current.getBoundingClientRect();
|
9634
|
+
var isInside = rect && clientX > rect.left && clientX < rect.right && clientY > rect.top && clientY < rect.bottom;
|
9635
|
+
setHideCursor(!isInside);
|
9636
|
+
if (rect) setCursorPosition({
|
9637
|
+
x: clientX - rect.left,
|
9638
|
+
y: clientY - rect.top
|
9639
|
+
});
|
9640
|
+
};
|
9641
|
+
var handleMouseMove = function handleMouseMove(e) {
|
9642
|
+
updateCursorPosition(e.clientX, e.clientY);
|
9643
|
+
};
|
9644
|
+
var handleTouchMove = function handleTouchMove(e) {
|
9645
|
+
if (e.touches.length > 0) {
|
9646
|
+
var touch = e.touches[0];
|
9647
|
+
updateCursorPosition(touch.clientX, touch.clientY);
|
9648
|
+
}
|
9649
|
+
};
|
9650
|
+
if (open) {
|
9651
|
+
document.addEventListener("mousemove", handleMouseMove);
|
9652
|
+
document.addEventListener("touchmove", handleTouchMove);
|
9653
|
+
}
|
9654
|
+
return function () {
|
9655
|
+
document.removeEventListener("mousemove", handleMouseMove);
|
9656
|
+
document.removeEventListener("touchmove", handleTouchMove);
|
9657
|
+
};
|
9658
|
+
}, [open]);
|
9659
|
+
var left = cursorPosition.x - size / 2;
|
9660
|
+
var top = cursorPosition.y - size / 2;
|
9661
|
+
return React__default.createElement(material.Box, {
|
9662
|
+
ref: overlayRef,
|
9663
|
+
sx: {
|
9664
|
+
position: "absolute",
|
9665
|
+
top: 0,
|
9666
|
+
left: "50%",
|
9667
|
+
transform: "translateX(-50%)",
|
9668
|
+
width: width + "px",
|
9669
|
+
height: height + "px",
|
9670
|
+
pointerEvents: "none",
|
9671
|
+
overflow: "hidden"
|
9672
|
+
},
|
9673
|
+
width: width,
|
9674
|
+
height: height
|
9675
|
+
}, React__default.createElement(material.Box, {
|
9676
|
+
sx: {
|
9677
|
+
position: "fixed",
|
9678
|
+
top: top,
|
9679
|
+
left: left,
|
9680
|
+
width: size + "px",
|
9681
|
+
height: size + "px",
|
9682
|
+
borderRadius: "50%",
|
9683
|
+
border: "1px solid " + (isEraser ? "red" : color),
|
9684
|
+
backgroundColor: isEraser ? "rgba(255,0,0,0.1)" : "transparent",
|
9685
|
+
pointerEvents: "none",
|
9686
|
+
zIndex: 10,
|
9687
|
+
display: size > 0 && !hideCursor ? "block" : "none"
|
9688
|
+
}
|
9689
|
+
}));
|
9690
|
+
};
|
9691
|
+
|
9692
|
+
var MessageSortBy;
|
9693
|
+
(function (MessageSortBy) {
|
9694
|
+
MessageSortBy["CreatedAt"] = "CreatedAt";
|
9695
|
+
})(MessageSortBy || (MessageSortBy = {}));
|
9696
|
+
var OrderBy;
|
9697
|
+
(function (OrderBy) {
|
9698
|
+
OrderBy["ASC"] = "ASC";
|
9699
|
+
OrderBy["DESC"] = "DESC";
|
9700
|
+
})(OrderBy || (OrderBy = {}));
|
9701
|
+
var StudentSortBy;
|
9702
|
+
(function (StudentSortBy) {
|
9703
|
+
StudentSortBy["CreatedAt"] = "CreatedAt";
|
9704
|
+
StudentSortBy["FullName"] = "FullName";
|
9705
|
+
})(StudentSortBy || (StudentSortBy = {}));
|
9706
|
+
var StudentOrderBy;
|
9707
|
+
(function (StudentOrderBy) {
|
9708
|
+
StudentOrderBy["ASC"] = "ASC";
|
9709
|
+
StudentOrderBy["DESC"] = "DESC";
|
9710
|
+
})(StudentOrderBy || (StudentOrderBy = {}));
|
9711
|
+
var MessageAction;
|
9712
|
+
(function (MessageAction) {
|
9713
|
+
MessageAction[MessageAction["Default"] = 0] = "Default";
|
9714
|
+
MessageAction[MessageAction["Took"] = 1] = "Took";
|
9715
|
+
})(MessageAction || (MessageAction = {}));
|
9716
|
+
var MessageSourceType;
|
9717
|
+
(function (MessageSourceType) {
|
9718
|
+
MessageSourceType[MessageSourceType["Default"] = 0] = "Default";
|
9719
|
+
MessageSourceType[MessageSourceType["Exam"] = 1] = "Exam";
|
9720
|
+
MessageSourceType[MessageSourceType["Class"] = 2] = "Class";
|
9721
|
+
})(MessageSourceType || (MessageSourceType = {}));
|
9722
|
+
var MessageStatus;
|
9723
|
+
(function (MessageStatus) {
|
9724
|
+
MessageStatus["Default"] = "Sent";
|
9725
|
+
MessageStatus["Sending"] = "Sending...";
|
9726
|
+
MessageStatus["SentError"] = "Sent fail, Retry";
|
9727
|
+
})(MessageStatus || (MessageStatus = {}));
|
9728
|
+
|
9729
|
+
var types = {
|
9730
|
+
__proto__: null,
|
9731
|
+
get MessageSortBy () { return MessageSortBy; },
|
9732
|
+
get OrderBy () { return OrderBy; },
|
9733
|
+
get StudentSortBy () { return StudentSortBy; },
|
9734
|
+
get StudentOrderBy () { return StudentOrderBy; },
|
9735
|
+
get MessageAction () { return MessageAction; },
|
9736
|
+
get MessageSourceType () { return MessageSourceType; },
|
9737
|
+
get MessageStatus () { return MessageStatus; }
|
9738
|
+
};
|
9739
|
+
|
9740
|
+
var ExamStatus;
|
9741
|
+
(function (ExamStatus) {
|
9742
|
+
ExamStatus["Default"] = "Default";
|
9743
|
+
ExamStatus["Pending"] = "Pending";
|
9744
|
+
ExamStatus["Inprogress"] = "Inprogress";
|
9745
|
+
ExamStatus["Completed"] = "Completed";
|
9746
|
+
})(ExamStatus || (ExamStatus = {}));
|
9747
|
+
var Roles;
|
9748
|
+
(function (Roles) {
|
9749
|
+
Roles["Student"] = "Student";
|
9750
|
+
Roles["Teacher"] = "Teacher";
|
9751
|
+
Roles["Admin"] = "Admin";
|
9752
|
+
})(Roles || (Roles = {}));
|
9753
|
+
var MESSAGE_DEFAULT_FILTER = {
|
9754
|
+
currentPage: 1,
|
9755
|
+
pageSize: 15,
|
9756
|
+
textSearch: "",
|
9757
|
+
sortColumnDirection: OrderBy.DESC,
|
9758
|
+
sortColumnName: MessageSortBy.CreatedAt
|
9759
|
+
};
|
9760
|
+
var AlignList = ["Min", "Mid", "Max"];
|
9761
|
+
var DEFAULT_STROKE_COLOR = "#000000";
|
9762
|
+
var DEFAULT_BG_COLOR = "#FFFFFF";
|
9763
|
+
var DEFAULT_STROKE_WIDTH = 4;
|
9764
|
+
var DEFAULT_ERASER_WIDTH = 10;
|
9765
|
+
var CANVAS_WIDTH = 800;
|
9766
|
+
var CANVAS_HEIGHT = 600;
|
9767
|
+
|
9768
|
+
var BgImgAlignTool = function BgImgAlignTool(_ref) {
|
9769
|
+
var aspect = _ref.aspect,
|
9770
|
+
axis = _ref.axis,
|
9771
|
+
align = _ref.align,
|
9772
|
+
onAlignChange = _ref.onAlignChange;
|
9773
|
+
var handleChangeAlign = function handleChangeAlign() {
|
9774
|
+
onAlignChange(axis, align);
|
9775
|
+
};
|
9776
|
+
var icon = React.useMemo(function () {
|
9777
|
+
switch (align) {
|
9778
|
+
case "Min":
|
9779
|
+
return axis === "x" ? React__default.createElement(md.MdAlignHorizontalLeft, {
|
9780
|
+
size: 14
|
9781
|
+
}) : React__default.createElement(md.MdAlignVerticalTop, {
|
9782
|
+
size: 14
|
9783
|
+
});
|
9784
|
+
case "Mid":
|
9785
|
+
return axis === "x" ? React__default.createElement(md.MdAlignHorizontalCenter, {
|
9786
|
+
size: 14
|
9787
|
+
}) : React__default.createElement(md.MdAlignVerticalCenter, {
|
9788
|
+
size: 14
|
9789
|
+
});
|
9790
|
+
default:
|
9791
|
+
return axis === "x" ? React__default.createElement(md.MdAlignHorizontalRight, {
|
9792
|
+
size: 14
|
9793
|
+
}) : React__default.createElement(md.MdAlignVerticalBottom, {
|
9794
|
+
size: 14
|
9795
|
+
});
|
9796
|
+
}
|
9797
|
+
}, [axis, align]);
|
9798
|
+
var selected = React.useMemo(function () {
|
9799
|
+
return axis === "x" ? aspect.startsWith("" + axis + align) : aspect.endsWith("" + axis.toUpperCase() + align);
|
9800
|
+
}, [axis, align, aspect]);
|
9801
|
+
return React__default.createElement(material.IconButton, {
|
9802
|
+
size: "small",
|
9803
|
+
onClick: handleChangeAlign,
|
9804
|
+
sx: {
|
9805
|
+
p: 1
|
9806
|
+
},
|
9807
|
+
color: selected ? "success" : undefined
|
9808
|
+
}, icon);
|
9809
|
+
};
|
9810
|
+
|
9811
|
+
var BgImgAlignToolList = function BgImgAlignToolList(_ref) {
|
9812
|
+
var axis = _ref.axis,
|
9813
|
+
aspect = _ref.aspect,
|
9814
|
+
onAlignChange = _ref.onAlignChange;
|
9815
|
+
return React__default.createElement(material.Stack, {
|
9816
|
+
direction: "row",
|
9817
|
+
spacing: 1
|
9818
|
+
}, AlignList.map(function (align) {
|
9819
|
+
return React__default.createElement(BgImgAlignTool, {
|
9820
|
+
key: "" + axis + align,
|
9821
|
+
aspect: aspect,
|
9822
|
+
axis: axis,
|
9823
|
+
align: align,
|
9824
|
+
onAlignChange: onAlignChange
|
9825
|
+
});
|
9826
|
+
}));
|
9827
|
+
};
|
9828
|
+
|
9829
|
+
var BgImgTool = function BgImgTool(_ref) {
|
9830
|
+
var inputRef = _ref.inputRef,
|
9831
|
+
value = _ref.value,
|
9832
|
+
apsect = _ref.apsect,
|
9833
|
+
onClear = _ref.onClear,
|
9834
|
+
onPick = _ref.onPick,
|
9835
|
+
onChange = _ref.onChange,
|
9836
|
+
onAspectChange = _ref.onAspectChange;
|
9837
|
+
return React__default.createElement(material.Stack, {
|
9838
|
+
direction: "row",
|
9839
|
+
spacing: 1,
|
9840
|
+
alignItems: "center"
|
9841
|
+
}, React__default.createElement(material.IconButton, {
|
9842
|
+
sx: {
|
9843
|
+
width: "32px",
|
9844
|
+
height: "32px",
|
9845
|
+
background: grey[100]
|
9846
|
+
},
|
9847
|
+
size: "small",
|
9848
|
+
onClick: onPick
|
9849
|
+
}, React__default.createElement(fa.FaImage, {
|
9850
|
+
size: 16
|
9851
|
+
}), React__default.createElement("input", {
|
9852
|
+
ref: inputRef,
|
9853
|
+
hidden: true,
|
9854
|
+
type: "file",
|
9855
|
+
accept: "image/*",
|
9856
|
+
onChange: onChange
|
9857
|
+
})), value && React__default.createElement(material.IconButton, {
|
9858
|
+
sx: {
|
9859
|
+
width: "32px",
|
9860
|
+
height: "32px",
|
9861
|
+
background: red[900],
|
9862
|
+
"&:hover": {
|
9863
|
+
background: red[500]
|
9864
|
+
}
|
9865
|
+
},
|
9866
|
+
onClick: onClear
|
9867
|
+
}, React__default.createElement(gr.GrClear, {
|
9868
|
+
size: 16,
|
9869
|
+
color: "#FFF"
|
9870
|
+
})), value && React__default.createElement(material.Stack, {
|
9871
|
+
direction: "row",
|
9872
|
+
alignItems: "center",
|
9873
|
+
gap: 1
|
9874
|
+
}, React__default.createElement(material.Stack, {
|
9875
|
+
direction: "column"
|
9876
|
+
}, React__default.createElement(material.IconButton, {
|
9877
|
+
size: "small",
|
9878
|
+
onClick: function onClick() {
|
9879
|
+
return onAspectChange();
|
9880
|
+
},
|
9881
|
+
sx: {
|
9882
|
+
p: 1
|
9883
|
+
},
|
9884
|
+
color: apsect === "none" ? "success" : undefined
|
9885
|
+
}, React__default.createElement(md.MdOutlineZoomOutMap, {
|
9886
|
+
size: 14
|
9887
|
+
}))), React__default.createElement(material.Stack, {
|
9888
|
+
direction: "column"
|
9889
|
+
}, React__default.createElement(BgImgAlignToolList, {
|
9890
|
+
aspect: apsect,
|
9891
|
+
axis: "x",
|
9892
|
+
onAlignChange: onAspectChange
|
9893
|
+
}), React__default.createElement(BgImgAlignToolList, {
|
9894
|
+
aspect: apsect,
|
9895
|
+
axis: "y",
|
9896
|
+
onAlignChange: onAspectChange
|
9897
|
+
}))));
|
9898
|
+
};
|
9899
|
+
|
9900
|
+
var ColorPicker = function ColorPicker(_ref) {
|
9901
|
+
var disabled = _ref.disabled,
|
9902
|
+
inputRef = _ref.inputRef,
|
9903
|
+
onChange = _ref.onChange;
|
9904
|
+
return React__default.createElement(material.Box, {
|
9905
|
+
width: "32px",
|
9906
|
+
height: "32px",
|
9907
|
+
borderRadius: "50%",
|
9908
|
+
overflow: "hidden",
|
9909
|
+
border: "1px solid " + grey[500]
|
9910
|
+
}, React__default.createElement("input", {
|
9911
|
+
ref: inputRef,
|
9912
|
+
onChange: onChange,
|
9913
|
+
type: "color",
|
9914
|
+
disabled: disabled,
|
9915
|
+
style: {
|
9916
|
+
width: "200%",
|
9917
|
+
height: "200%",
|
9918
|
+
borderStyle: "none",
|
9919
|
+
backgroundColor: "none",
|
9920
|
+
transform: "translate(-25%, -25%)",
|
9921
|
+
cursor: "pointer"
|
9922
|
+
}
|
9923
|
+
}));
|
9924
|
+
};
|
9925
|
+
|
9926
|
+
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)";
|
9927
|
+
var CustomSlider = material.styled(material.Slider)(function (_ref) {
|
9928
|
+
var theme = _ref.theme;
|
9929
|
+
return _extends({
|
9930
|
+
color: green[500],
|
9931
|
+
height: 5,
|
9932
|
+
width: 120,
|
9933
|
+
marginInline: "8px",
|
9934
|
+
"& .MuiSlider-thumb": {
|
9935
|
+
height: 20,
|
9936
|
+
width: 20,
|
9937
|
+
backgroundColor: "#fff",
|
9938
|
+
boxShadow: "0 0 2px 0px rgba(0, 0, 0, 0.1)",
|
9939
|
+
"&:focus, &:hover, &.Mui-active": {
|
9940
|
+
boxShadow: "0px 0px 3px 1px rgba(0, 0, 0, 0.1)",
|
9941
|
+
"@media (hover: none)": {
|
9942
|
+
boxShadow: boxShadow
|
9943
|
+
}
|
9944
|
+
},
|
9945
|
+
"&:before": {
|
9946
|
+
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)"
|
9947
|
+
}
|
9948
|
+
},
|
9949
|
+
"& .MuiSlider-valueLabel": {
|
9950
|
+
fontSize: 12,
|
9951
|
+
fontWeight: "normal",
|
9952
|
+
top: 4,
|
9953
|
+
backgroundColor: "unset",
|
9954
|
+
color: theme.palette.text.primary,
|
9955
|
+
"&::before": {
|
9956
|
+
display: "none"
|
9957
|
+
},
|
9958
|
+
"& *": _extends({
|
9959
|
+
background: "transparent",
|
9960
|
+
color: "#000"
|
9961
|
+
}, theme.applyStyles("dark", {
|
9962
|
+
color: "#fff"
|
9963
|
+
}))
|
9964
|
+
},
|
9965
|
+
"& .MuiSlider-track": {
|
9966
|
+
border: "none",
|
9967
|
+
boxShadow: "inset 0px 0px 4px -2px #000",
|
9968
|
+
height: 5
|
9969
|
+
},
|
9970
|
+
"& .MuiSlider-rail": {
|
9971
|
+
opacity: 0.5,
|
9972
|
+
boxShadow: "inset 0px 0px 4px -2px #000",
|
9973
|
+
backgroundColor: "#d0d0d0"
|
9974
|
+
}
|
9975
|
+
}, theme.applyStyles("dark", {
|
9976
|
+
color: green[700]
|
9977
|
+
}));
|
9978
|
+
});
|
9979
|
+
var WidthSlider = function WidthSlider(_ref2) {
|
9980
|
+
var value = _ref2.value,
|
9981
|
+
onChange = _ref2.onChange;
|
9982
|
+
return React__default.createElement(CustomSlider, {
|
9983
|
+
defaultValue: value,
|
9984
|
+
onChange: onChange,
|
9985
|
+
min: 1,
|
9986
|
+
valueLabelDisplay: "on"
|
9987
|
+
});
|
9988
|
+
};
|
9989
|
+
|
9990
|
+
var PencilTool = function PencilTool(_ref) {
|
9991
|
+
var inputRef = _ref.inputRef,
|
9992
|
+
selected = _ref.selected,
|
9993
|
+
width = _ref.width,
|
9994
|
+
onSelect = _ref.onSelect,
|
9995
|
+
onChangeColor = _ref.onChangeColor,
|
9996
|
+
onChangeWidth = _ref.onChangeWidth;
|
9997
|
+
return React__default.createElement(material.Stack, {
|
9998
|
+
direction: "row",
|
9999
|
+
spacing: 1,
|
10000
|
+
alignItems: "center"
|
10001
|
+
}, React__default.createElement(material.IconButton, {
|
10002
|
+
sx: _extends({
|
10003
|
+
width: "32px",
|
10004
|
+
height: "32px",
|
10005
|
+
background: !selected ? grey[100] : green[500]
|
10006
|
+
}, selected && {
|
10007
|
+
color: "#FFFF"
|
10008
|
+
}, {
|
10009
|
+
"&:hover": {
|
10010
|
+
background: !selected ? grey[100] : green[500]
|
10011
|
+
}
|
10012
|
+
}),
|
10013
|
+
size: "small",
|
10014
|
+
onClick: onSelect
|
10015
|
+
}, React__default.createElement(fa.FaPencilAlt, {
|
10016
|
+
size: 14
|
10017
|
+
})), React__default.createElement(ColorPicker, {
|
10018
|
+
inputRef: inputRef,
|
10019
|
+
onChange: onChangeColor
|
10020
|
+
}), React__default.createElement(material.Stack, {
|
10021
|
+
direction: "row",
|
10022
|
+
alignItems: "center",
|
10023
|
+
px: 1
|
10024
|
+
}, React__default.createElement(WidthSlider, {
|
10025
|
+
value: width,
|
10026
|
+
onChange: onChangeWidth
|
10027
|
+
})));
|
10028
|
+
};
|
10029
|
+
|
10030
|
+
var EraserTool = function EraserTool(_ref) {
|
10031
|
+
var selected = _ref.selected,
|
10032
|
+
width = _ref.width,
|
10033
|
+
onSelect = _ref.onSelect,
|
10034
|
+
onChangeWidth = _ref.onChangeWidth;
|
10035
|
+
return React__default.createElement(material.Stack, {
|
10036
|
+
direction: "row",
|
10037
|
+
spacing: 1,
|
10038
|
+
alignItems: "center"
|
10039
|
+
}, React__default.createElement(material.IconButton, {
|
10040
|
+
sx: _extends({
|
10041
|
+
width: "32px",
|
10042
|
+
height: "32px",
|
10043
|
+
background: !selected ? grey[100] : red[900]
|
10044
|
+
}, selected && {
|
10045
|
+
color: "#FFFF"
|
10046
|
+
}, {
|
10047
|
+
"&:hover": {
|
10048
|
+
background: !selected ? grey[100] : red[900]
|
10049
|
+
}
|
10050
|
+
}),
|
10051
|
+
size: "small",
|
10052
|
+
onClick: onSelect
|
10053
|
+
}, React__default.createElement(fa.FaEraser, {
|
10054
|
+
size: 16
|
10055
|
+
})), React__default.createElement(material.Stack, {
|
10056
|
+
direction: "row",
|
10057
|
+
alignItems: "center",
|
10058
|
+
px: 1
|
10059
|
+
}, React__default.createElement(WidthSlider, {
|
10060
|
+
value: width,
|
10061
|
+
onChange: onChangeWidth
|
10062
|
+
})));
|
10063
|
+
};
|
10064
|
+
|
10065
|
+
var BgColorTool = function BgColorTool(_ref) {
|
10066
|
+
var inputRef = _ref.inputRef,
|
10067
|
+
onPick = _ref.onPick,
|
10068
|
+
onChange = _ref.onChange;
|
10069
|
+
return React__default.createElement(material.Stack, {
|
10070
|
+
direction: "row",
|
10071
|
+
spacing: 1,
|
10072
|
+
alignItems: "center"
|
10073
|
+
}, React__default.createElement(material.Button, {
|
10074
|
+
onClick: onPick
|
10075
|
+
}, React__default.createElement(material.Box, {
|
10076
|
+
width: "32px",
|
10077
|
+
height: "32px",
|
10078
|
+
display: "flex",
|
10079
|
+
justifyContent: "center",
|
10080
|
+
alignItems: "center"
|
10081
|
+
}, React__default.createElement(io.IoIosColorFill, {
|
10082
|
+
color: grey[600],
|
10083
|
+
size: 20
|
10084
|
+
})), React__default.createElement(ColorPicker, {
|
10085
|
+
inputRef: inputRef,
|
10086
|
+
onChange: onChange
|
10087
|
+
})));
|
10088
|
+
};
|
10089
|
+
|
10090
|
+
var ToolContainerStyles = {
|
10091
|
+
display: "flex",
|
10092
|
+
gap: 2,
|
10093
|
+
flexWrap: "nowrap",
|
10094
|
+
justifyContent: {
|
10095
|
+
lg: "center",
|
10096
|
+
sx: "start"
|
10097
|
+
},
|
10098
|
+
alignItems: "center",
|
10099
|
+
px: 4,
|
10100
|
+
pb: 2,
|
10101
|
+
pt: 1,
|
10102
|
+
width: "100%",
|
10103
|
+
overflowX: "auto",
|
10104
|
+
overflowY: "hidden"
|
10105
|
+
};
|
10106
|
+
var CanvasContainerStyles = {
|
10107
|
+
position: "relative",
|
10108
|
+
flexGrow: 1,
|
10109
|
+
display: "flex",
|
10110
|
+
justifyContent: {
|
10111
|
+
lg: "center",
|
10112
|
+
sx: "start"
|
10113
|
+
}
|
10114
|
+
};
|
10115
|
+
var CanvasWrapperStyles = {
|
10116
|
+
flexGrow: 1,
|
10117
|
+
overflow: "scroll",
|
10118
|
+
width: "100%",
|
10119
|
+
height: "100%",
|
10120
|
+
display: "flex",
|
10121
|
+
justifyContent: {
|
10122
|
+
lg: "center",
|
10123
|
+
sx: "start"
|
10124
|
+
},
|
10125
|
+
padding: "8px 24px 24px"
|
10126
|
+
};
|
10127
|
+
var IconButtonStyles = {
|
10128
|
+
width: "32px",
|
10129
|
+
height: "32px",
|
10130
|
+
background: grey[100]
|
10131
|
+
};
|
10132
|
+
|
10133
|
+
var Transition = React__default.forwardRef(function Transition(props, ref) {
|
10134
|
+
return React__default.createElement(material.Slide, Object.assign({
|
10135
|
+
direction: "up",
|
10136
|
+
ref: ref
|
10137
|
+
}, props));
|
10138
|
+
});
|
10139
|
+
var SketchDialog = function SketchDialog(_ref) {
|
10140
|
+
var open = _ref.open,
|
10141
|
+
drawPath = _ref.drawPath,
|
10142
|
+
onClose = _ref.onClose,
|
10143
|
+
onSave = _ref.onSave;
|
10144
|
+
var _useTranslation = reactI18next.useTranslation(),
|
10145
|
+
t = _useTranslation.t;
|
10146
|
+
var canvasRef = React.useRef(null);
|
10147
|
+
var _useState = React.useState(DEFAULT_STROKE_COLOR),
|
10148
|
+
strokeColor = _useState[0],
|
10149
|
+
setStrokeColor = _useState[1];
|
10150
|
+
var _useState2 = React.useState(DEFAULT_STROKE_WIDTH),
|
10151
|
+
strokeWidth = _useState2[0],
|
10152
|
+
setStrokeWidth = _useState2[1];
|
10153
|
+
var _useState3 = React.useState(DEFAULT_ERASER_WIDTH),
|
10154
|
+
eraserWidth = _useState3[0],
|
10155
|
+
setEraserWidth = _useState3[1];
|
10156
|
+
var _useState4 = React.useState(DEFAULT_BG_COLOR),
|
10157
|
+
backgroundColor = _useState4[0],
|
10158
|
+
setBackgroundColor = _useState4[1];
|
10159
|
+
var _useState5 = React.useState(null),
|
10160
|
+
backgroundImage = _useState5[0],
|
10161
|
+
setBackgroundImage = _useState5[1];
|
10162
|
+
var _useState6 = React.useState(false),
|
10163
|
+
isEraser = _useState6[0],
|
10164
|
+
setIsEraser = _useState6[1];
|
10165
|
+
var bgImageInputRef = React.useRef(null);
|
10166
|
+
var bgColorRef = React.useRef(null);
|
10167
|
+
var colorRef = React.useRef(null);
|
10168
|
+
var _useState7 = React.useState("none"),
|
10169
|
+
bgImageAspect = _useState7[0],
|
10170
|
+
setBgImageAspect = _useState7[1];
|
10171
|
+
var getNewAlign = function getNewAlign(axis, align) {
|
10172
|
+
if (!axis || !align) return "none";
|
10173
|
+
var _bgImageAspect$split = bgImageAspect.split("Y"),
|
10174
|
+
xAlign = _bgImageAspect$split[0],
|
10175
|
+
yAlign = _bgImageAspect$split[1];
|
10176
|
+
if (bgImageAspect === "none" || !xAlign && !yAlign) return axis === "y" ? "xMinY" + align : "x" + align + "YMin";
|
10177
|
+
return axis === "y" ? xAlign + "Y" + align : "x" + align + "Y" + yAlign;
|
10178
|
+
};
|
10179
|
+
var handleChangeAlign = function handleChangeAlign(axis, pos) {
|
10180
|
+
var newValue = getNewAlign(axis, pos);
|
10181
|
+
setBgImageAspect(newValue);
|
10182
|
+
};
|
10183
|
+
var handleClickBgColor = function handleClickBgColor() {
|
10184
|
+
var _bgColorRef$current;
|
10185
|
+
(_bgColorRef$current = bgColorRef.current) === null || _bgColorRef$current === void 0 ? void 0 : _bgColorRef$current.click();
|
10186
|
+
};
|
10187
|
+
var clearCanvas = function clearCanvas() {
|
10188
|
+
var _canvasRef$current;
|
10189
|
+
(_canvasRef$current = canvasRef.current) === null || _canvasRef$current === void 0 ? void 0 : _canvasRef$current.clearCanvas();
|
10190
|
+
setBackgroundImage(null);
|
10191
|
+
if (bgColorRef.current) bgColorRef.current.value = DEFAULT_BG_COLOR;
|
10192
|
+
setBackgroundColor(DEFAULT_BG_COLOR);
|
10193
|
+
};
|
10194
|
+
var undo = function undo() {
|
10195
|
+
var _canvasRef$current2;
|
10196
|
+
(_canvasRef$current2 = canvasRef.current) === null || _canvasRef$current2 === void 0 ? void 0 : _canvasRef$current2.undo();
|
10197
|
+
};
|
10198
|
+
var redo = function redo() {
|
10199
|
+
var _canvasRef$current3;
|
10200
|
+
(_canvasRef$current3 = canvasRef.current) === null || _canvasRef$current3 === void 0 ? void 0 : _canvasRef$current3.redo();
|
10201
|
+
};
|
10202
|
+
var saveImage = function saveImage() {
|
10203
|
+
try {
|
10204
|
+
var _canvasRef$current4;
|
10205
|
+
return Promise.resolve((_canvasRef$current4 = canvasRef.current) === null || _canvasRef$current4 === void 0 ? void 0 : _canvasRef$current4.exportImage("png")).then(function (imageData) {
|
10206
|
+
var _canvasRef$current5;
|
10207
|
+
return Promise.resolve((_canvasRef$current5 = canvasRef.current) === null || _canvasRef$current5 === void 0 ? void 0 : _canvasRef$current5.exportPaths()).then(function (data) {
|
10208
|
+
onSave(imageData, data);
|
10209
|
+
onClose();
|
10210
|
+
});
|
10211
|
+
});
|
10212
|
+
} catch (e) {
|
10213
|
+
return Promise.reject(e);
|
10214
|
+
}
|
10215
|
+
};
|
10216
|
+
var handleEraserMode = function handleEraserMode() {
|
10217
|
+
var _canvasRef$current6;
|
10218
|
+
setIsEraser(true);
|
10219
|
+
(_canvasRef$current6 = canvasRef.current) === null || _canvasRef$current6 === void 0 ? void 0 : _canvasRef$current6.eraseMode(true);
|
10220
|
+
};
|
10221
|
+
var handlePencilMode = function handlePencilMode() {
|
10222
|
+
var _canvasRef$current7;
|
10223
|
+
setIsEraser(false);
|
10224
|
+
(_canvasRef$current7 = canvasRef.current) === null || _canvasRef$current7 === void 0 ? void 0 : _canvasRef$current7.eraseMode(false);
|
10225
|
+
};
|
10226
|
+
var handleClickChangeBgImage = function handleClickChangeBgImage() {
|
10227
|
+
var _bgImageInputRef$curr;
|
10228
|
+
(_bgImageInputRef$curr = bgImageInputRef.current) === null || _bgImageInputRef$curr === void 0 ? void 0 : _bgImageInputRef$curr.click();
|
10229
|
+
};
|
10230
|
+
var handleBackgroundImageChange = function handleBackgroundImageChange(event) {
|
10231
|
+
var _event$target$files;
|
10232
|
+
var file = (_event$target$files = event.target.files) === null || _event$target$files === void 0 ? void 0 : _event$target$files[0];
|
10233
|
+
if (file) {
|
10234
|
+
var reader = new FileReader();
|
10235
|
+
reader.onload = function () {
|
10236
|
+
setBackgroundImage(reader.result);
|
10237
|
+
};
|
10238
|
+
reader.readAsDataURL(file);
|
10239
|
+
}
|
10240
|
+
};
|
10241
|
+
var handleChangePencilColor = function handleChangePencilColor(e) {
|
10242
|
+
setStrokeColor(e.target.value);
|
10243
|
+
};
|
10244
|
+
var handleChangeBgColor = function handleChangeBgColor(e) {
|
10245
|
+
setBackgroundColor(e.target.value);
|
10246
|
+
};
|
10247
|
+
var handleChangeEraserWidth = function handleChangeEraserWidth(e) {
|
10248
|
+
return setEraserWidth(Number(e.target.value));
|
10249
|
+
};
|
10250
|
+
var handleChangePencilWidth = function handleChangePencilWidth(e) {
|
10251
|
+
return setStrokeWidth(Number(e.target.value));
|
10252
|
+
};
|
10253
|
+
var debounceChangeBgColor = _$a.debounce(handleChangeBgColor, 300);
|
10254
|
+
var debounceChangePencilColor = _$a.debounce(handleChangePencilColor, 300);
|
10255
|
+
var debounceChangeEraserWidth = _$a.debounce(handleChangeEraserWidth, 300);
|
10256
|
+
var debounceChangePencilWidth = _$a.debounce(handleChangePencilWidth, 300);
|
10257
|
+
var currentToolSize = isEraser ? eraserWidth : strokeWidth;
|
10258
|
+
var handleClearBgImage = function handleClearBgImage() {
|
10259
|
+
setBackgroundImage(null);
|
10260
|
+
};
|
10261
|
+
var handleLoad = function handleLoad(data) {
|
10262
|
+
try {
|
10263
|
+
var _temp = function () {
|
10264
|
+
if (data) {
|
10265
|
+
var _canvasRef$current8;
|
10266
|
+
return Promise.resolve((_canvasRef$current8 = canvasRef.current) === null || _canvasRef$current8 === void 0 ? void 0 : _canvasRef$current8.loadPaths(data)).then(function () {
|
10267
|
+
if (bgColorRef.current) bgColorRef.current.value = backgroundColor;
|
10268
|
+
});
|
10269
|
+
} else {
|
10270
|
+
var _canvasRef$current9;
|
10271
|
+
return Promise.resolve((_canvasRef$current9 = canvasRef.current) === null || _canvasRef$current9 === void 0 ? void 0 : _canvasRef$current9.clearCanvas()).then(function () {
|
10272
|
+
if (bgColorRef.current) bgColorRef.current.value = DEFAULT_BG_COLOR;
|
10273
|
+
setBackgroundColor(DEFAULT_BG_COLOR);
|
10274
|
+
setBackgroundImage(null);
|
10275
|
+
setBgImageAspect("none");
|
10276
|
+
});
|
10277
|
+
}
|
10278
|
+
}();
|
10279
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(function () {}) : void 0);
|
10280
|
+
} catch (e) {
|
10281
|
+
return Promise.reject(e);
|
10282
|
+
}
|
10283
|
+
};
|
10284
|
+
React.useEffect(function () {
|
10285
|
+
if (open) {
|
10286
|
+
setTimeout(function () {
|
10287
|
+
if (canvasRef.current) {
|
10288
|
+
handleLoad(drawPath);
|
10289
|
+
}
|
10290
|
+
}, 0);
|
10291
|
+
} else {
|
10292
|
+
if (bgColorRef.current) bgColorRef.current.value = DEFAULT_BG_COLOR;
|
10293
|
+
if (colorRef.current) colorRef.current.value = DEFAULT_STROKE_COLOR;
|
10294
|
+
setStrokeColor(DEFAULT_STROKE_COLOR);
|
10295
|
+
setStrokeWidth(DEFAULT_STROKE_WIDTH);
|
10296
|
+
setEraserWidth(DEFAULT_ERASER_WIDTH);
|
10297
|
+
setIsEraser(false);
|
10298
|
+
}
|
10299
|
+
}, [open, drawPath]);
|
10300
|
+
return React__default.createElement(material.Dialog, {
|
10301
|
+
fullScreen: true,
|
10302
|
+
open: open,
|
10303
|
+
onClose: onClose,
|
10304
|
+
TransitionComponent: Transition
|
10305
|
+
}, React__default.createElement(material.AppBar, {
|
10306
|
+
color: "success",
|
10307
|
+
sx: {
|
10308
|
+
position: "relative"
|
10309
|
+
}
|
10310
|
+
}, React__default.createElement(material.Toolbar, null, React__default.createElement(material.IconButton, {
|
10311
|
+
sx: {
|
10312
|
+
width: "32px",
|
10313
|
+
height: "32px"
|
10314
|
+
},
|
10315
|
+
edge: "start",
|
10316
|
+
color: "inherit",
|
10317
|
+
onClick: onClose,
|
10318
|
+
"aria-label": "close"
|
10319
|
+
}, React__default.createElement(io5.IoClose, null)), React__default.createElement(material.Typography, {
|
10320
|
+
sx: {
|
10321
|
+
ml: 2,
|
10322
|
+
flex: 1
|
10323
|
+
},
|
10324
|
+
variant: "h6",
|
10325
|
+
component: "div"
|
10326
|
+
}, t("sketch_canvas")), React__default.createElement(material.Stack, {
|
10327
|
+
direction: "row",
|
10328
|
+
gap: 1
|
10329
|
+
}, React__default.createElement(material.Button, {
|
10330
|
+
sx: {
|
10331
|
+
px: 2
|
10332
|
+
},
|
10333
|
+
startIcon: React__default.createElement(fa.FaSave, {
|
10334
|
+
size: 14
|
10335
|
+
}),
|
10336
|
+
color: "inherit",
|
10337
|
+
onClick: saveImage
|
10338
|
+
}, t("save")), React__default.createElement(material.Button, {
|
10339
|
+
sx: {
|
10340
|
+
px: 2
|
10341
|
+
},
|
10342
|
+
startIcon: React__default.createElement(gr.GrClearOption, {
|
10343
|
+
size: 14
|
10344
|
+
}),
|
10345
|
+
color: "inherit",
|
10346
|
+
onClick: clearCanvas
|
10347
|
+
}, t("clear"))))), React__default.createElement(material.Box, {
|
10348
|
+
sx: {
|
10349
|
+
display: "flex",
|
10350
|
+
flexDirection: "column",
|
10351
|
+
height: "100%",
|
10352
|
+
padding: 2
|
10353
|
+
}
|
10354
|
+
}, React__default.createElement(material.Box, {
|
10355
|
+
sx: ToolContainerStyles
|
10356
|
+
}, React__default.createElement(PencilTool, {
|
10357
|
+
inputRef: colorRef,
|
10358
|
+
width: strokeWidth,
|
10359
|
+
selected: !isEraser,
|
10360
|
+
onSelect: handlePencilMode,
|
10361
|
+
onChangeColor: debounceChangePencilColor,
|
10362
|
+
onChangeWidth: debounceChangePencilWidth
|
10363
|
+
}), React__default.createElement(material.Divider, {
|
10364
|
+
orientation: "vertical",
|
10365
|
+
flexItem: true,
|
10366
|
+
sx: {
|
10367
|
+
borderColor: grey[300]
|
10368
|
+
}
|
10369
|
+
}), React__default.createElement(EraserTool, {
|
10370
|
+
width: eraserWidth,
|
10371
|
+
selected: isEraser,
|
10372
|
+
onSelect: handleEraserMode,
|
10373
|
+
onChangeWidth: debounceChangeEraserWidth
|
10374
|
+
}), React__default.createElement(material.Divider, {
|
10375
|
+
orientation: "vertical",
|
10376
|
+
flexItem: true,
|
10377
|
+
sx: {
|
10378
|
+
borderColor: grey[300]
|
10379
|
+
}
|
10380
|
+
}), React__default.createElement(BgColorTool, {
|
10381
|
+
inputRef: bgColorRef,
|
10382
|
+
onChange: debounceChangeBgColor,
|
10383
|
+
onPick: handleClickBgColor
|
10384
|
+
}), React__default.createElement(material.Divider, {
|
10385
|
+
orientation: "vertical",
|
10386
|
+
flexItem: true,
|
10387
|
+
sx: {
|
10388
|
+
borderColor: grey[300]
|
10389
|
+
}
|
10390
|
+
}), React__default.createElement(material.Stack, {
|
10391
|
+
direction: "row",
|
10392
|
+
spacing: 1,
|
10393
|
+
alignItems: "center"
|
10394
|
+
}, React__default.createElement(material.IconButton, {
|
10395
|
+
sx: IconButtonStyles,
|
10396
|
+
size: "small",
|
10397
|
+
onClick: undo
|
10398
|
+
}, React__default.createElement(io.IoMdUndo, {
|
10399
|
+
size: 20
|
10400
|
+
})), React__default.createElement(material.IconButton, {
|
10401
|
+
sx: IconButtonStyles,
|
10402
|
+
size: "small",
|
10403
|
+
onClick: redo
|
10404
|
+
}, React__default.createElement(io.IoMdRedo, {
|
10405
|
+
size: 20
|
10406
|
+
}))), React__default.createElement(material.Divider, {
|
10407
|
+
orientation: "vertical",
|
10408
|
+
flexItem: true,
|
10409
|
+
sx: {
|
10410
|
+
borderColor: grey[300]
|
10411
|
+
}
|
10412
|
+
}), React__default.createElement(BgImgTool, {
|
10413
|
+
apsect: bgImageAspect,
|
10414
|
+
inputRef: bgImageInputRef,
|
10415
|
+
value: backgroundImage,
|
10416
|
+
onAspectChange: handleChangeAlign,
|
10417
|
+
onChange: handleBackgroundImageChange,
|
10418
|
+
onClear: handleClearBgImage,
|
10419
|
+
onPick: handleClickChangeBgImage
|
10420
|
+
})), React__default.createElement(material.Box, {
|
10421
|
+
sx: CanvasWrapperStyles
|
10422
|
+
}, React__default.createElement(material.Box, {
|
10423
|
+
sx: CanvasContainerStyles
|
10424
|
+
}, React__default.createElement(reactSketchCanvas.ReactSketchCanvas, {
|
10425
|
+
ref: canvasRef,
|
10426
|
+
style: {
|
10427
|
+
border: "2px solid " + green[500]
|
10428
|
+
},
|
10429
|
+
width: CANVAS_WIDTH + "px",
|
10430
|
+
height: CANVAS_HEIGHT + "px",
|
10431
|
+
strokeWidth: strokeWidth,
|
10432
|
+
strokeColor: strokeColor,
|
10433
|
+
canvasColor: backgroundColor,
|
10434
|
+
backgroundImage: backgroundImage != null ? backgroundImage : undefined,
|
10435
|
+
eraserWidth: eraserWidth,
|
10436
|
+
preserveBackgroundImageAspectRatio: backgroundImage ? bgImageAspect : undefined
|
10437
|
+
}), React__default.createElement(CanvasOverlay, {
|
10438
|
+
width: CANVAS_WIDTH,
|
10439
|
+
height: CANVAS_HEIGHT,
|
10440
|
+
size: currentToolSize,
|
10441
|
+
color: strokeColor,
|
10442
|
+
open: open,
|
10443
|
+
isEraser: isEraser
|
10444
|
+
})))));
|
10445
|
+
};
|
10446
|
+
|
9600
10447
|
var InputChat = function InputChat(_ref) {
|
9601
|
-
var
|
10448
|
+
var isSending = _ref.isSending,
|
10449
|
+
role = _ref.role,
|
10450
|
+
text = _ref.text,
|
10451
|
+
drawPath = _ref.drawPath,
|
10452
|
+
onClearCanvas = _ref.onClearCanvas,
|
10453
|
+
onSaveCanvas = _ref.onSaveCanvas,
|
9602
10454
|
onChangeInput = _ref.onChangeInput,
|
9603
10455
|
onSubmit = _ref.onSubmit,
|
9604
10456
|
isCompleted = _ref.isCompleted,
|
@@ -9607,10 +10459,20 @@ var InputChat = function InputChat(_ref) {
|
|
9607
10459
|
handleDeleteSelectedImage = _ref.handleDeleteSelectedImage;
|
9608
10460
|
var _useTranslation = reactI18next.useTranslation(),
|
9609
10461
|
t = _useTranslation.t;
|
10462
|
+
var isStudent = role === exports.Role.Student;
|
9610
10463
|
var fileInputRef = React.useRef(null);
|
10464
|
+
var _useState = React.useState(false),
|
10465
|
+
open = _useState[0],
|
10466
|
+
setOpen = _useState[1];
|
10467
|
+
var disabled = isCompleted || isSending;
|
9611
10468
|
var handleSubmit = function handleSubmit() {
|
9612
10469
|
onSubmit();
|
9613
10470
|
};
|
10471
|
+
var handleToggleSketchDialog = function handleToggleSketchDialog() {
|
10472
|
+
setOpen(function (state) {
|
10473
|
+
return !state;
|
10474
|
+
});
|
10475
|
+
};
|
9614
10476
|
var handleSelectedFile = function handleSelectedFile(e) {
|
9615
10477
|
var files = e.target.files;
|
9616
10478
|
handleUploadImage(files[0]);
|
@@ -9618,13 +10480,26 @@ var InputChat = function InputChat(_ref) {
|
|
9618
10480
|
fileInputRef.current.value = "";
|
9619
10481
|
}
|
9620
10482
|
};
|
10483
|
+
var handleSaveCanvas = function handleSaveCanvas(data, drawPath) {
|
10484
|
+
onSaveCanvas(data, drawPath);
|
10485
|
+
};
|
10486
|
+
var handleClickImage = function handleClickImage() {
|
10487
|
+
if (!drawPath) return;
|
10488
|
+
handleToggleSketchDialog();
|
10489
|
+
};
|
10490
|
+
var handleopenSketchDialog = function handleopenSketchDialog() {
|
10491
|
+
handleToggleSketchDialog();
|
10492
|
+
onClearCanvas();
|
10493
|
+
};
|
9621
10494
|
return React__default.createElement(material.Grid, {
|
9622
10495
|
item: true,
|
9623
10496
|
xs: 12,
|
9624
10497
|
padding: "16px"
|
9625
|
-
}, React__default.createElement(material.
|
9626
|
-
|
9627
|
-
|
10498
|
+
}, React__default.createElement(material.Stack, {
|
10499
|
+
direction: {
|
10500
|
+
sx: "column",
|
10501
|
+
lg: "row"
|
10502
|
+
},
|
9628
10503
|
gap: "24px"
|
9629
10504
|
}, React__default.createElement(material.Box, {
|
9630
10505
|
display: "flex",
|
@@ -9636,12 +10511,14 @@ var InputChat = function InputChat(_ref) {
|
|
9636
10511
|
border: selectedFile ? "1px solid #97A1AF" : undefined,
|
9637
10512
|
borderRadius: selectedFile ? "6px" : undefined,
|
9638
10513
|
flexDirection: "column"
|
9639
|
-
}, selectedFile && React__default.createElement(
|
10514
|
+
}, selectedFile && React__default.createElement(material.Box, {
|
9640
10515
|
style: {
|
9641
10516
|
position: "relative",
|
9642
10517
|
margin: "10px",
|
9643
|
-
width: "fit-content"
|
9644
|
-
|
10518
|
+
width: "fit-content",
|
10519
|
+
cursor: drawPath ? "pointer" : "unset"
|
10520
|
+
},
|
10521
|
+
onClick: handleClickImage
|
9645
10522
|
}, React__default.createElement("img", {
|
9646
10523
|
src: selectedFile,
|
9647
10524
|
style: {
|
@@ -9660,21 +10537,21 @@ var InputChat = function InputChat(_ref) {
|
|
9660
10537
|
cursor: "pointer",
|
9661
10538
|
background: grey[100]
|
9662
10539
|
},
|
10540
|
+
disabled: isSending,
|
9663
10541
|
onClick: handleDeleteSelectedImage
|
9664
10542
|
}, React__default.createElement(fa.FaTrash, {
|
9665
10543
|
size: 16
|
9666
10544
|
}))), !selectedFile && React__default.createElement(TinyChatEditor, {
|
9667
10545
|
initValue: text,
|
9668
10546
|
onChange: onChangeInput,
|
9669
|
-
disabled:
|
10547
|
+
disabled: disabled
|
9670
10548
|
})), React__default.createElement(material.Typography, {
|
9671
10549
|
fontWeight: 500,
|
9672
10550
|
fontSize: "10px",
|
9673
10551
|
lineHeight: "11.93px",
|
9674
10552
|
color: "#97A1AF"
|
9675
|
-
}, t(
|
9676
|
-
|
9677
|
-
flexDirection: "column",
|
10553
|
+
}, t("this_is_the_guidance_text"))), React__default.createElement(material.Stack, {
|
10554
|
+
direction: "column",
|
9678
10555
|
justifyContent: "flex-start",
|
9679
10556
|
alignItems: "flex-end",
|
9680
10557
|
gap: "16px"
|
@@ -9683,11 +10560,19 @@ var InputChat = function InputChat(_ref) {
|
|
9683
10560
|
fullWidth: true,
|
9684
10561
|
className: styles$2["btn-send"],
|
9685
10562
|
sx: {
|
9686
|
-
bgcolor:
|
10563
|
+
bgcolor: disabled ? styles.light + " !important" : styles.less_dark
|
9687
10564
|
},
|
9688
|
-
disabled:
|
10565
|
+
disabled: disabled,
|
9689
10566
|
onClick: handleSubmit
|
9690
|
-
},
|
10567
|
+
}, isSending ? React__default.createElement(material.Stack, {
|
10568
|
+
justifyContent: "center",
|
10569
|
+
alignItems: "center"
|
10570
|
+
}, React__default.createElement(material.CircularProgress, {
|
10571
|
+
sx: {
|
10572
|
+
color: "#FFF"
|
10573
|
+
},
|
10574
|
+
size: 14
|
10575
|
+
})) : React__default.createElement(iconSendMessage, null), React__default.createElement(material.Typography, {
|
9691
10576
|
fontWeight: 700,
|
9692
10577
|
fontSize: "13px",
|
9693
10578
|
lineHeight: "15.51px"
|
@@ -9695,12 +10580,12 @@ var InputChat = function InputChat(_ref) {
|
|
9695
10580
|
variant: "outlined",
|
9696
10581
|
component: "label",
|
9697
10582
|
fullWidth: true,
|
9698
|
-
disabled:
|
10583
|
+
disabled: disabled,
|
9699
10584
|
sx: {
|
9700
10585
|
display: "flex",
|
9701
10586
|
gap: "8px",
|
9702
10587
|
padding: "12px !important",
|
9703
|
-
borderColor:
|
10588
|
+
borderColor: disabled ? "transparent" : styles.less_dark,
|
9704
10589
|
borderWidth: "1px"
|
9705
10590
|
}
|
9706
10591
|
}, React__default.createElement(iconPlusCircle, {
|
@@ -9716,9 +10601,20 @@ var InputChat = function InputChat(_ref) {
|
|
9716
10601
|
type: "file",
|
9717
10602
|
hidden: true,
|
9718
10603
|
ref: fileInputRef,
|
9719
|
-
disabled:
|
10604
|
+
disabled: disabled,
|
9720
10605
|
accept: "image/png, image/gif, image/jpeg",
|
9721
10606
|
onChangeCapture: handleSelectedFile
|
10607
|
+
})), !isStudent && React__default.createElement(React.Fragment, null, React__default.createElement(material.Button, {
|
10608
|
+
startIcon: React__default.createElement(md.MdDraw, null),
|
10609
|
+
variant: "contained",
|
10610
|
+
disabled: disabled,
|
10611
|
+
fullWidth: true,
|
10612
|
+
onClick: handleopenSketchDialog
|
10613
|
+
}, t("sketch")), React__default.createElement(SketchDialog, {
|
10614
|
+
open: open,
|
10615
|
+
drawPath: drawPath,
|
10616
|
+
onClose: handleToggleSketchDialog,
|
10617
|
+
onSave: handleSaveCanvas
|
9722
10618
|
})))));
|
9723
10619
|
};
|
9724
10620
|
|
@@ -9984,7 +10880,8 @@ var ChatHeader = function ChatHeader(_ref) {
|
|
9984
10880
|
};
|
9985
10881
|
|
9986
10882
|
var ChatContainer = function ChatContainer(_ref) {
|
9987
|
-
var
|
10883
|
+
var role = _ref.role,
|
10884
|
+
chatHeaderProps = _ref.chatHeaderProps,
|
9988
10885
|
chatListProps = _ref.chatListProps,
|
9989
10886
|
inputProps = _ref.inputProps,
|
9990
10887
|
_ref$scrollOffset = _ref.scrollOffset,
|
@@ -10077,76 +10974,9 @@ var ChatContainer = function ChatContainer(_ref) {
|
|
10077
10974
|
className: "d-flex justify-content-center align-items-center"
|
10078
10975
|
}, React__default.createElement(material.CircularProgress, null)), React__default.createElement(ChatList, Object.assign({}, chatListProps, {
|
10079
10976
|
listItemRef: listItemRef
|
10080
|
-
}))), React__default.createElement(InputChat, Object.assign({
|
10081
|
-
|
10082
|
-
|
10083
|
-
var MessageSortBy;
|
10084
|
-
(function (MessageSortBy) {
|
10085
|
-
MessageSortBy["CreatedAt"] = "CreatedAt";
|
10086
|
-
})(MessageSortBy || (MessageSortBy = {}));
|
10087
|
-
var OrderBy;
|
10088
|
-
(function (OrderBy) {
|
10089
|
-
OrderBy["ASC"] = "ASC";
|
10090
|
-
OrderBy["DESC"] = "DESC";
|
10091
|
-
})(OrderBy || (OrderBy = {}));
|
10092
|
-
var StudentSortBy;
|
10093
|
-
(function (StudentSortBy) {
|
10094
|
-
StudentSortBy["CreatedAt"] = "CreatedAt";
|
10095
|
-
StudentSortBy["FullName"] = "FullName";
|
10096
|
-
})(StudentSortBy || (StudentSortBy = {}));
|
10097
|
-
var StudentOrderBy;
|
10098
|
-
(function (StudentOrderBy) {
|
10099
|
-
StudentOrderBy["ASC"] = "ASC";
|
10100
|
-
StudentOrderBy["DESC"] = "DESC";
|
10101
|
-
})(StudentOrderBy || (StudentOrderBy = {}));
|
10102
|
-
var MessageAction;
|
10103
|
-
(function (MessageAction) {
|
10104
|
-
MessageAction[MessageAction["Default"] = 0] = "Default";
|
10105
|
-
MessageAction[MessageAction["Took"] = 1] = "Took";
|
10106
|
-
})(MessageAction || (MessageAction = {}));
|
10107
|
-
var MessageSourceType;
|
10108
|
-
(function (MessageSourceType) {
|
10109
|
-
MessageSourceType[MessageSourceType["Default"] = 0] = "Default";
|
10110
|
-
MessageSourceType[MessageSourceType["Exam"] = 1] = "Exam";
|
10111
|
-
MessageSourceType[MessageSourceType["Class"] = 2] = "Class";
|
10112
|
-
})(MessageSourceType || (MessageSourceType = {}));
|
10113
|
-
var MessageStatus;
|
10114
|
-
(function (MessageStatus) {
|
10115
|
-
MessageStatus["Default"] = "Sent";
|
10116
|
-
MessageStatus["Sending"] = "Sending...";
|
10117
|
-
MessageStatus["SentError"] = "Sent fail, Retry";
|
10118
|
-
})(MessageStatus || (MessageStatus = {}));
|
10119
|
-
|
10120
|
-
var types = {
|
10121
|
-
__proto__: null,
|
10122
|
-
get MessageSortBy () { return MessageSortBy; },
|
10123
|
-
get OrderBy () { return OrderBy; },
|
10124
|
-
get StudentSortBy () { return StudentSortBy; },
|
10125
|
-
get StudentOrderBy () { return StudentOrderBy; },
|
10126
|
-
get MessageAction () { return MessageAction; },
|
10127
|
-
get MessageSourceType () { return MessageSourceType; },
|
10128
|
-
get MessageStatus () { return MessageStatus; }
|
10129
|
-
};
|
10130
|
-
|
10131
|
-
var ExamStatus;
|
10132
|
-
(function (ExamStatus) {
|
10133
|
-
ExamStatus["Default"] = "Default";
|
10134
|
-
ExamStatus["Pending"] = "Pending";
|
10135
|
-
ExamStatus["Inprogress"] = "Inprogress";
|
10136
|
-
ExamStatus["Completed"] = "Completed";
|
10137
|
-
})(ExamStatus || (ExamStatus = {}));
|
10138
|
-
var Roles;
|
10139
|
-
(function (Roles) {
|
10140
|
-
Roles["Student"] = "Student";
|
10141
|
-
Roles["Teacher"] = "Teacher";
|
10142
|
-
Roles["Admin"] = "Admin";
|
10143
|
-
})(Roles || (Roles = {}));
|
10144
|
-
var MESSAGE_DEFAULT_FILTER = {
|
10145
|
-
currentPage: 1,
|
10146
|
-
pageSize: 15,
|
10147
|
-
textSearch: "",
|
10148
|
-
sortColumnDirection: OrderBy.DESC,
|
10149
|
-
sortColumnName: MessageSortBy.CreatedAt
|
10977
|
+
}))), React__default.createElement(InputChat, Object.assign({
|
10978
|
+
role: role
|
10979
|
+
}, inputProps)));
|
10150
10980
|
};
|
10151
10981
|
|
10152
10982
|
var RECENT_USER_URL = BASE_URL + "/api/recentUsers";
|
@@ -10375,6 +11205,12 @@ var useChatContainer = function useChatContainer(props) {
|
|
10375
11205
|
var _useState5 = React.useState(true),
|
10376
11206
|
isScrollToEnd = _useState5[0],
|
10377
11207
|
setScrollToEnd = _useState5[1];
|
11208
|
+
var _useState6 = React.useState(),
|
11209
|
+
drawPath = _useState6[0],
|
11210
|
+
setDrawPath = _useState6[1];
|
11211
|
+
var _useState7 = React.useState(false),
|
11212
|
+
isSending = _useState7[0],
|
11213
|
+
setSending = _useState7[1];
|
10378
11214
|
var isAdmin = roles === null || roles === void 0 ? void 0 : roles.includes(exports.Role.Admin);
|
10379
11215
|
var _useMessageList = useMessageList({
|
10380
11216
|
student: student
|
@@ -10399,6 +11235,7 @@ var useChatContainer = function useChatContainer(props) {
|
|
10399
11235
|
try {
|
10400
11236
|
var _temp3 = function _temp3(_result2) {
|
10401
11237
|
if (_exit) return _result2;
|
11238
|
+
setSending(false);
|
10402
11239
|
loadingRef.current = false;
|
10403
11240
|
};
|
10404
11241
|
var _exit = false;
|
@@ -10406,6 +11243,7 @@ var useChatContainer = function useChatContainer(props) {
|
|
10406
11243
|
loadingRef.current = true;
|
10407
11244
|
if (!(selectedConversation !== null && selectedConversation !== void 0 && selectedConversation.id)) return Promise.resolve();
|
10408
11245
|
setScrollToEnd(true);
|
11246
|
+
setSending(true);
|
10409
11247
|
var _temp2 = _catch(function () {
|
10410
11248
|
if (file) {
|
10411
11249
|
return Promise.resolve(handleUploadImageData(file)).then(function (selectedFile) {
|
@@ -10445,6 +11283,7 @@ var useChatContainer = function useChatContainer(props) {
|
|
10445
11283
|
};
|
10446
11284
|
var handleUploadImage = function handleUploadImage(file) {
|
10447
11285
|
try {
|
11286
|
+
handleClearCanvas();
|
10448
11287
|
if (file) {
|
10449
11288
|
setFile(file);
|
10450
11289
|
var reader = new FileReader();
|
@@ -10458,11 +11297,29 @@ var useChatContainer = function useChatContainer(props) {
|
|
10458
11297
|
return Promise.reject(e);
|
10459
11298
|
}
|
10460
11299
|
};
|
11300
|
+
var handleSaveCanvas = function handleSaveCanvas(data, drawPath) {
|
11301
|
+
try {
|
11302
|
+
return Promise.resolve(fetch(data)).then(function (_fetch) {
|
11303
|
+
return Promise.resolve(_fetch.blob()).then(function (blob) {
|
11304
|
+
setFile(blob);
|
11305
|
+
setBackgroundImage(data);
|
11306
|
+
setDrawPath(drawPath);
|
11307
|
+
});
|
11308
|
+
});
|
11309
|
+
} catch (e) {
|
11310
|
+
return Promise.reject(e);
|
11311
|
+
}
|
11312
|
+
};
|
11313
|
+
var handleClearCanvas = function handleClearCanvas() {
|
11314
|
+
setBackgroundImage(null);
|
11315
|
+
setDrawPath(undefined);
|
11316
|
+
setFile(undefined);
|
11317
|
+
};
|
10461
11318
|
var handleUploadImageData = function handleUploadImageData(file) {
|
10462
11319
|
try {
|
10463
11320
|
return Promise.resolve(_catch(function () {
|
10464
11321
|
var formData = new FormData();
|
10465
|
-
formData.append("upload", file);
|
11322
|
+
if (file instanceof Blob) formData.append("upload", file, 'drawing.png');else formData.append("upload", file);
|
10466
11323
|
return Promise.resolve(apiUploadImageFile(formData)).then(function (res) {
|
10467
11324
|
var _res$data;
|
10468
11325
|
return {
|
@@ -10535,7 +11392,8 @@ var useChatContainer = function useChatContainer(props) {
|
|
10535
11392
|
return Promise.reject(e);
|
10536
11393
|
}
|
10537
11394
|
};
|
10538
|
-
var handleDeleteSelectedImage = function handleDeleteSelectedImage() {
|
11395
|
+
var handleDeleteSelectedImage = function handleDeleteSelectedImage(e) {
|
11396
|
+
e === null || e === void 0 ? void 0 : e.stopPropagation();
|
10539
11397
|
setFile(undefined);
|
10540
11398
|
setBackgroundImage(null);
|
10541
11399
|
};
|
@@ -10623,12 +11481,16 @@ var useChatContainer = function useChatContainer(props) {
|
|
10623
11481
|
handleDeleteMessage: handleDeleteMessage
|
10624
11482
|
},
|
10625
11483
|
inputProps: {
|
11484
|
+
isSending: isSending,
|
11485
|
+
drawPath: drawPath,
|
10626
11486
|
selectedFile: backgroundImage,
|
10627
11487
|
text: (message === null || message === void 0 ? void 0 : message.content) || "",
|
10628
11488
|
onChangeInput: handleChangeInput,
|
10629
11489
|
onSubmit: handleAddMessage,
|
10630
11490
|
handleDeleteSelectedImage: handleDeleteSelectedImage,
|
10631
11491
|
handleUploadImage: handleUploadImage,
|
11492
|
+
onSaveCanvas: handleSaveCanvas,
|
11493
|
+
onClearCanvas: handleClearCanvas,
|
10632
11494
|
isCompleted: selectedConversation === null || selectedConversation === void 0 ? void 0 : selectedConversation.isCompleted
|
10633
11495
|
},
|
10634
11496
|
isScrollToEnd: isScrollToEnd,
|
@@ -23192,12 +24054,12 @@ var useExamResultData = function useExamResultData(props) {
|
|
23192
24054
|
var _useState9 = React.useState(),
|
23193
24055
|
openProblem = _useState9[0],
|
23194
24056
|
setOpenProblem = _useState9[1];
|
23195
|
-
var
|
23196
|
-
selectedQuestion =
|
23197
|
-
setSelectedQuestion =
|
23198
|
-
var
|
23199
|
-
errorMessage =
|
23200
|
-
setErrorMessage =
|
24057
|
+
var _useState10 = React.useState(),
|
24058
|
+
selectedQuestion = _useState10[0],
|
24059
|
+
setSelectedQuestion = _useState10[1];
|
24060
|
+
var _useState11 = React.useState(),
|
24061
|
+
errorMessage = _useState11[0],
|
24062
|
+
setErrorMessage = _useState11[1];
|
23201
24063
|
var _useTranslation = reactI18next.useTranslation(),
|
23202
24064
|
t = _useTranslation.t;
|
23203
24065
|
var isBelongAcademy = !!user && user.academyDomain && !user.isLearningSpace;
|
@@ -24090,7 +24952,7 @@ var useOverallChartContainer = function useOverallChartContainer(isStudent, exam
|
|
24090
24952
|
return [texts.slice(0, middle), texts.slice(middle)];
|
24091
24953
|
}, [JSON.stringify(categories)]);
|
24092
24954
|
var formatTooltip = React.useCallback(function (_ref2) {
|
24093
|
-
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$
|
24955
|
+
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$;
|
24094
24956
|
var dataPointIndex = _ref2.dataPointIndex,
|
24095
24957
|
w = _ref2.w;
|
24096
24958
|
var label = categories[dataPointIndex];
|
@@ -24134,12 +24996,12 @@ var useOverallChartContainer = function useOverallChartContainer(isStudent, exam
|
|
24134
24996
|
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
|
24135
24997
|
});
|
24136
24998
|
avgValue = "" + t("n_questions", {
|
24137
|
-
total: (_overallData$data$1$l = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$
|
24999
|
+
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
|
24138
25000
|
});
|
24139
25001
|
break;
|
24140
25002
|
default:
|
24141
|
-
myValue = ((_overallData$data$0$c = overallData === null || overallData === void 0 ? void 0 : (_overallData$data$
|
24142
|
-
avgValue = ((_overallData$data$1$
|
25003
|
+
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) + "%";
|
25004
|
+
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) + "%";
|
24143
25005
|
break;
|
24144
25006
|
}
|
24145
25007
|
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>";
|
@@ -29823,13 +30685,13 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29823
30685
|
};
|
29824
30686
|
var handleAddToClass = function handleAddToClass(userIds) {
|
29825
30687
|
try {
|
29826
|
-
var
|
30688
|
+
var _temp12 = function _temp12() {
|
29827
30689
|
dispatch(setLoading(false));
|
29828
30690
|
};
|
29829
30691
|
if (!classId || !openSelectDialog) return Promise.resolve();
|
29830
30692
|
dispatch(setLoading(true));
|
29831
|
-
var
|
29832
|
-
function
|
30693
|
+
var _temp11 = _catch(function () {
|
30694
|
+
function _temp10() {
|
29833
30695
|
return Promise.resolve(handleGetDetailData(false)).then(function () {
|
29834
30696
|
reactToastify.toast.success(t(classId ? "update_class_successfully" : "create_class_successfully"));
|
29835
30697
|
handleCloseSelectDialog();
|
@@ -29846,18 +30708,18 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29846
30708
|
});
|
29847
30709
|
}
|
29848
30710
|
}();
|
29849
|
-
return _temp9 && _temp9.then ? _temp9.then(
|
30711
|
+
return _temp9 && _temp9.then ? _temp9.then(_temp10) : _temp10(_temp9);
|
29850
30712
|
}, function (error) {
|
29851
30713
|
reactToastify.toast.error(getErrorMessage(t, error));
|
29852
30714
|
});
|
29853
|
-
return Promise.resolve(
|
30715
|
+
return Promise.resolve(_temp11 && _temp11.then ? _temp11.then(_temp12) : _temp12(_temp11));
|
29854
30716
|
} catch (e) {
|
29855
30717
|
return Promise.reject(e);
|
29856
30718
|
}
|
29857
30719
|
};
|
29858
30720
|
var handleSubmit = function handleSubmit(values, _) {
|
29859
30721
|
try {
|
29860
|
-
var
|
30722
|
+
var _temp16 = function _temp16() {
|
29861
30723
|
dispatch(setLoading(false));
|
29862
30724
|
};
|
29863
30725
|
if (values.courseWeeklyDays.some(function (i) {
|
@@ -29874,11 +30736,11 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29874
30736
|
}
|
29875
30737
|
var body = convertToRequestBody(values);
|
29876
30738
|
dispatch(setLoading(true));
|
29877
|
-
var
|
29878
|
-
function
|
30739
|
+
var _temp15 = _catch(function () {
|
30740
|
+
function _temp14() {
|
29879
30741
|
reactToastify.toast.success(t(classId ? "update_class_successfully" : "create_class_successfully"));
|
29880
30742
|
}
|
29881
|
-
var
|
30743
|
+
var _temp13 = function () {
|
29882
30744
|
if (!classId) {
|
29883
30745
|
return Promise.resolve(createClassApi(body)).then(function (res) {
|
29884
30746
|
pushTo(history, classListUrl + "/" + res.data.id);
|
@@ -29889,11 +30751,11 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29889
30751
|
});
|
29890
30752
|
}
|
29891
30753
|
}();
|
29892
|
-
return
|
30754
|
+
return _temp13 && _temp13.then ? _temp13.then(_temp14) : _temp14(_temp13);
|
29893
30755
|
}, function (error) {
|
29894
30756
|
reactToastify.toast.error(getErrorMessage(t, error));
|
29895
30757
|
});
|
29896
|
-
return Promise.resolve(
|
30758
|
+
return Promise.resolve(_temp15 && _temp15.then ? _temp15.then(_temp16) : _temp16(_temp15));
|
29897
30759
|
} catch (e) {
|
29898
30760
|
return Promise.reject(e);
|
29899
30761
|
}
|
@@ -29901,7 +30763,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29901
30763
|
var getStudentNotInClassList = function getStudentNotInClassList() {
|
29902
30764
|
try {
|
29903
30765
|
if (!classId) return Promise.resolve();
|
29904
|
-
var
|
30766
|
+
var _temp17 = _catch(function () {
|
29905
30767
|
var _textSearchRef$curren;
|
29906
30768
|
return Promise.resolve(getStudentClassApi(classId, _extends({}, filter, {
|
29907
30769
|
textSearch: (_textSearchRef$curren = textSearchRef.current) === null || _textSearchRef$curren === void 0 ? void 0 : _textSearchRef$curren.value,
|
@@ -29932,7 +30794,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29932
30794
|
setStudents([]);
|
29933
30795
|
reactToastify.toast.error(getErrorMessage(t, error));
|
29934
30796
|
});
|
29935
|
-
return Promise.resolve(
|
30797
|
+
return Promise.resolve(_temp17 && _temp17.then ? _temp17.then(function () {}) : void 0);
|
29936
30798
|
} catch (e) {
|
29937
30799
|
return Promise.reject(e);
|
29938
30800
|
}
|
@@ -29940,7 +30802,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29940
30802
|
var getTeacherNotInClassList = function getTeacherNotInClassList() {
|
29941
30803
|
try {
|
29942
30804
|
if (!classId) return Promise.resolve();
|
29943
|
-
var
|
30805
|
+
var _temp18 = _catch(function () {
|
29944
30806
|
var _textSearchRef$curren2;
|
29945
30807
|
return Promise.resolve(getTeacherClassApi(classId, _extends({}, filter, {
|
29946
30808
|
textSearch: (_textSearchRef$curren2 = textSearchRef.current) === null || _textSearchRef$curren2 === void 0 ? void 0 : _textSearchRef$curren2.value,
|
@@ -29971,7 +30833,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
29971
30833
|
setTeachers([]);
|
29972
30834
|
reactToastify.toast.error(getErrorMessage(t, error));
|
29973
30835
|
});
|
29974
|
-
return Promise.resolve(
|
30836
|
+
return Promise.resolve(_temp18 && _temp18.then ? _temp18.then(function () {}) : void 0);
|
29975
30837
|
} catch (e) {
|
29976
30838
|
return Promise.reject(e);
|
29977
30839
|
}
|
@@ -31729,9 +32591,9 @@ var useUserList = function useUserList(role) {
|
|
31729
32591
|
var _useState9 = React.useState(),
|
31730
32592
|
deleteFile = _useState9[0],
|
31731
32593
|
setDeleteFile = _useState9[1];
|
31732
|
-
var
|
31733
|
-
isOpenDeleteUserCsv =
|
31734
|
-
setOpenDeleteUserCsv =
|
32594
|
+
var _useState10 = React.useState(false),
|
32595
|
+
isOpenDeleteUserCsv = _useState10[0],
|
32596
|
+
setOpenDeleteUserCsv = _useState10[1];
|
31735
32597
|
var inputFileRef = React.useRef(null);
|
31736
32598
|
var firstLoadRef = React.useRef(true);
|
31737
32599
|
var handleChangeSelectedStudent = function handleChangeSelectedStudent(student) {
|
@@ -31887,7 +32749,7 @@ var useUserList = function useUserList(role) {
|
|
31887
32749
|
};
|
31888
32750
|
var getUserList = function getUserList() {
|
31889
32751
|
try {
|
31890
|
-
var
|
32752
|
+
var _temp10 = function _temp10() {
|
31891
32753
|
firstLoadRef.current && dispatch(setLoading(false));
|
31892
32754
|
if (firstLoadRef.current) firstLoadRef.current = false;
|
31893
32755
|
};
|
@@ -31916,7 +32778,7 @@ var useUserList = function useUserList(role) {
|
|
31916
32778
|
setPaging(DEFAULT_PAGING_RESPONSE);
|
31917
32779
|
console.log(error);
|
31918
32780
|
});
|
31919
|
-
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(
|
32781
|
+
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(_temp10) : _temp10(_temp9));
|
31920
32782
|
} catch (e) {
|
31921
32783
|
return Promise.reject(e);
|
31922
32784
|
}
|
@@ -31932,7 +32794,7 @@ var useUserList = function useUserList(role) {
|
|
31932
32794
|
setSelectedUser(user);
|
31933
32795
|
setOpenUserDialog(true);
|
31934
32796
|
return Promise.resolve(_catch(function () {
|
31935
|
-
var
|
32797
|
+
var _temp11 = function () {
|
31936
32798
|
if (!!user.id && !!user.email) {
|
31937
32799
|
return Promise.resolve(createRecentUserActionListApi({
|
31938
32800
|
userId: user === null || user === void 0 ? void 0 : user.id,
|
@@ -31942,7 +32804,7 @@ var useUserList = function useUserList(role) {
|
|
31942
32804
|
})).then(function () {});
|
31943
32805
|
}
|
31944
32806
|
}();
|
31945
|
-
if (
|
32807
|
+
if (_temp11 && _temp11.then) return _temp11.then(function () {});
|
31946
32808
|
}, function (error) {
|
31947
32809
|
console.error(getErrorMessage(t, error));
|
31948
32810
|
}));
|
@@ -31971,18 +32833,18 @@ var useUserList = function useUserList(role) {
|
|
31971
32833
|
};
|
31972
32834
|
var handleCreateOrUpdateUser = function handleCreateOrUpdateUser(value) {
|
31973
32835
|
try {
|
31974
|
-
var
|
32836
|
+
var _temp15 = function _temp15() {
|
31975
32837
|
dispatch(setLoading(false));
|
31976
32838
|
};
|
31977
32839
|
if (value.fullName === "marcus") return Promise.resolve();
|
31978
32840
|
dispatch(setLoading(true));
|
31979
|
-
var
|
31980
|
-
function
|
32841
|
+
var _temp14 = _catch(function () {
|
32842
|
+
function _temp13() {
|
31981
32843
|
return Promise.resolve(getUserList()).then(function () {
|
31982
32844
|
handleCloseUserDialog();
|
31983
32845
|
});
|
31984
32846
|
}
|
31985
|
-
var
|
32847
|
+
var _temp12 = function () {
|
31986
32848
|
if (!!(selectedUser !== null && selectedUser !== void 0 && selectedUser.id)) {
|
31987
32849
|
return Promise.resolve(updateUserApi(_extends({}, value, {
|
31988
32850
|
grade: value.grade == null ? undefined : value.grade
|
@@ -31993,23 +32855,23 @@ var useUserList = function useUserList(role) {
|
|
31993
32855
|
}))).then(function () {});
|
31994
32856
|
}
|
31995
32857
|
}();
|
31996
|
-
return
|
32858
|
+
return _temp12 && _temp12.then ? _temp12.then(_temp13) : _temp13(_temp12);
|
31997
32859
|
}, function (error) {
|
31998
32860
|
reactToastify.toast.error(getErrorMessage(t, error));
|
31999
32861
|
});
|
32000
|
-
return Promise.resolve(
|
32862
|
+
return Promise.resolve(_temp14 && _temp14.then ? _temp14.then(_temp15) : _temp15(_temp14));
|
32001
32863
|
} catch (e) {
|
32002
32864
|
return Promise.reject(e);
|
32003
32865
|
}
|
32004
32866
|
};
|
32005
32867
|
var handleDeleteUser = function handleDeleteUser() {
|
32006
32868
|
try {
|
32007
|
-
var
|
32869
|
+
var _temp17 = function _temp17() {
|
32008
32870
|
dispatch(setLoading(false));
|
32009
32871
|
};
|
32010
32872
|
if (!(selectedUser !== null && selectedUser !== void 0 && selectedUser.id)) return Promise.resolve();
|
32011
32873
|
dispatch(setLoading(true));
|
32012
|
-
var
|
32874
|
+
var _temp16 = _catch(function () {
|
32013
32875
|
return Promise.resolve(deleteUserApi(selectedUser.id)).then(function () {
|
32014
32876
|
toggleConfirmDialog();
|
32015
32877
|
getUserList();
|
@@ -32017,7 +32879,7 @@ var useUserList = function useUserList(role) {
|
|
32017
32879
|
}, function (error) {
|
32018
32880
|
reactToastify.toast.error(getErrorMessage(t, error));
|
32019
32881
|
});
|
32020
|
-
return Promise.resolve(
|
32882
|
+
return Promise.resolve(_temp16 && _temp16.then ? _temp16.then(_temp17) : _temp17(_temp16));
|
32021
32883
|
} catch (e) {
|
32022
32884
|
return Promise.reject(e);
|
32023
32885
|
}
|
@@ -32850,7 +33712,7 @@ var useCategoryOptions = function useCategoryOptions(subjectId, isMath, filter,
|
|
32850
33712
|
};
|
32851
33713
|
var getQuestionTypes = function getQuestionTypes(categoryId, subCategoryId) {
|
32852
33714
|
try {
|
32853
|
-
var
|
33715
|
+
var _temp10 = function _temp10() {
|
32854
33716
|
setLoadingQuestionTypes(false);
|
32855
33717
|
};
|
32856
33718
|
setLoadingQuestionTypes(true);
|
@@ -32873,7 +33735,7 @@ var useCategoryOptions = function useCategoryOptions(subjectId, isMath, filter,
|
|
32873
33735
|
}, function () {
|
32874
33736
|
setQuestionTypes([]);
|
32875
33737
|
});
|
32876
|
-
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(
|
33738
|
+
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(_temp10) : _temp10(_temp9));
|
32877
33739
|
} catch (e) {
|
32878
33740
|
return Promise.reject(e);
|
32879
33741
|
}
|