touchstudy-core 0.1.39 → 0.1.40

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/index.js CHANGED
@@ -94,12 +94,15 @@ var encodeParams = function encodeParams(params) {
94
94
  return encodeURIComponent(key) + "=" + encodeURIComponent(params[key]);
95
95
  }).join('&');
96
96
  };
97
- var Roles;
98
- (function (Roles) {
99
- Roles["Student"] = "Student";
100
- Roles["Teacher"] = "Teacher";
101
- Roles["Admin"] = "Admin";
102
- })(Roles || (Roles = {}));
97
+ (function (Role) {
98
+ Role["Student"] = "Student";
99
+ Role["Teacher"] = "Teacher";
100
+ Role["Admin"] = "Admin";
101
+ Role["AcademyAdmin"] = "AcademyAdmin";
102
+ })(exports.Role || (exports.Role = {}));
103
+ var PrintHeaderClassName = "print-header";
104
+ var PrintContentClassName = "print-content";
105
+ var PrintContainerClassName = "print-container";
103
106
 
104
107
  var utcToLocalTime = (function (time, FORMAT) {
105
108
  if (time === DATE_MIN_VALUE || time === DATE_TIME_MIN_VALUE) return "";
@@ -141,18 +144,6 @@ function _objectWithoutPropertiesLoose(source, excluded) {
141
144
 
142
145
  var styles = {"btn-login-google":"_2HqmH","block-login":"_wWIyO","box-login":"_38Lo1","btn-primary":"_rd4Uy","dropdown-menu":"_1krbH","header-avatar":"_RQaHE","dropdown-menu-flag":"_XK8oS","dropdown-content":"_3ys4W","dropdown-change":"_ToOW_","item-address":"_3sQlR","item-logout":"_3bqSM","title-address":"_1jgSI","img-avatar":"_35Ttz","item-contact":"_1wc7o","content-text":"_3S4f2","dropdown-content-language":"_3ajui","dropdown-item-language":"_3Y_y4","dropdown-item-language-active":"_CzNMi","dropdown-academy":"_3CMVp","image-academy":"_2ibYC","image-academy--item":"_3RDWF","academy-btn":"_1JMRU","switch-icon":"_N4FNf","dropdown-content-academy":"_31Dr0","dropdown-academy-item":"_3bjcz","noGutters":"_31ZQk","custom-col-2":"_3yXyK","custom-col-3":"_1RsJQ","custom-col-5":"_L42CP","custom-col-10":"_2u6eL","custom-row":"_8x7OP","custom-col":"_1JmTh","custom-col-4":"_3HO1e","custom-col-8":"_Oy31M","custom-col-12":"_3aUKo","custom-container":"_39LRs","form-label":"__Ut-u","form-control":"_2k4dX","btn-outline-primary":"_2PWdX","sort-icons":"_mQvLF","active":"_3oAH-","form-select":"_3W3aw","truncate":"_3NJzN","headers":"_3xnI5","logo-container":"_3YG70","tabBox":"_1CQPn","routerBox":"_3hx2T","tabText":"_3UyhW","router-link-active":"_1TGKA","router-link":"_1AqMh","userImg":"_2RI6G","disabled-link":"_3aVHg"};
143
146
 
144
- var AuthenticationMessage;
145
- (function (AuthenticationMessage) {
146
- AuthenticationMessage["NotAllowedToRegister"] = "NotAllowedToRegister";
147
- AuthenticationMessage["InvalidGoogleToken"] = "InvalidGoogleToken";
148
- })(AuthenticationMessage || (AuthenticationMessage = {}));
149
- (function (Role) {
150
- Role["Student"] = "Student";
151
- Role["Teacher"] = "Teacher";
152
- Role["Admin"] = "Admin";
153
- Role["AcademyAdmin"] = "AcademyAdmin";
154
- })(exports.Role || (exports.Role = {}));
155
-
156
147
  // A type of promise-like that resolves synchronously and supports only one observer
157
148
  const _Pact = /*#__PURE__*/(function() {
158
149
  function _Pact() {}
@@ -222,6 +213,35 @@ function _isSettledPact(thenable) {
222
213
  return thenable instanceof _Pact && thenable.s & 1;
223
214
  }
224
215
 
216
+ // Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)
217
+ function _forTo(array, body, check) {
218
+ var i = -1, pact, reject;
219
+ function _cycle(result) {
220
+ try {
221
+ while (++i < array.length && (!check || !check())) {
222
+ result = body(i);
223
+ if (result && result.then) {
224
+ if (_isSettledPact(result)) {
225
+ result = result.v;
226
+ } else {
227
+ result.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));
228
+ return;
229
+ }
230
+ }
231
+ }
232
+ if (pact) {
233
+ _settle(pact, 1, result);
234
+ } else {
235
+ pact = result;
236
+ }
237
+ } catch (e) {
238
+ _settle(pact || (pact = new _Pact()), 2, e);
239
+ }
240
+ }
241
+ _cycle();
242
+ return pact;
243
+ }
244
+
225
245
  const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator"))) : "@@iterator";
226
246
 
227
247
  const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator"))) : "@@asyncIterator";
@@ -1386,7 +1406,7 @@ var useSubjectSelect = function useSubjectSelect() {
1386
1406
  var isSuperAdmin = reactRedux.useSelector(function (state) {
1387
1407
  var _state$common2, _state$common2$user;
1388
1408
  return (state === null || state === void 0 ? void 0 : (_state$common2 = state.common) === null || _state$common2 === void 0 ? void 0 : (_state$common2$user = _state$common2.user) === null || _state$common2$user === void 0 ? void 0 : _state$common2$user.roles) || [];
1389
- }).includes(Roles.Admin) && !isDomain;
1409
+ }).includes(exports.Role.Admin) && !isDomain;
1390
1410
  var subjectOptions = React.useMemo(function () {
1391
1411
  return subjectList === null || subjectList === void 0 ? void 0 : subjectList.map(function (subject) {
1392
1412
  return {
@@ -3914,75 +3934,6 @@ var ChatItem = function ChatItem(props) {
3914
3934
  }));
3915
3935
  };
3916
3936
 
3917
- var MessageSortBy;
3918
- (function (MessageSortBy) {
3919
- MessageSortBy["CreatedAt"] = "CreatedAt";
3920
- })(MessageSortBy || (MessageSortBy = {}));
3921
- var OrderBy;
3922
- (function (OrderBy) {
3923
- OrderBy["ASC"] = "ASC";
3924
- OrderBy["DESC"] = "DESC";
3925
- })(OrderBy || (OrderBy = {}));
3926
- var StudentSortBy;
3927
- (function (StudentSortBy) {
3928
- StudentSortBy["CreatedAt"] = "CreatedAt";
3929
- StudentSortBy["FullName"] = "FullName";
3930
- })(StudentSortBy || (StudentSortBy = {}));
3931
- var StudentOrderBy;
3932
- (function (StudentOrderBy) {
3933
- StudentOrderBy["ASC"] = "ASC";
3934
- StudentOrderBy["DESC"] = "DESC";
3935
- })(StudentOrderBy || (StudentOrderBy = {}));
3936
- var MessageAction;
3937
- (function (MessageAction) {
3938
- MessageAction[MessageAction["Default"] = 0] = "Default";
3939
- MessageAction[MessageAction["Took"] = 1] = "Took";
3940
- })(MessageAction || (MessageAction = {}));
3941
- var MessageSourceType;
3942
- (function (MessageSourceType) {
3943
- MessageSourceType[MessageSourceType["Default"] = 0] = "Default";
3944
- MessageSourceType[MessageSourceType["Exam"] = 1] = "Exam";
3945
- MessageSourceType[MessageSourceType["Class"] = 2] = "Class";
3946
- })(MessageSourceType || (MessageSourceType = {}));
3947
- var MessageStatus;
3948
- (function (MessageStatus) {
3949
- MessageStatus["Default"] = "Sent";
3950
- MessageStatus["Sending"] = "Sending...";
3951
- MessageStatus["SentError"] = "Sent fail, Retry";
3952
- })(MessageStatus || (MessageStatus = {}));
3953
-
3954
- var types = {
3955
- __proto__: null,
3956
- get MessageSortBy () { return MessageSortBy; },
3957
- get OrderBy () { return OrderBy; },
3958
- get StudentSortBy () { return StudentSortBy; },
3959
- get StudentOrderBy () { return StudentOrderBy; },
3960
- get MessageAction () { return MessageAction; },
3961
- get MessageSourceType () { return MessageSourceType; },
3962
- get MessageStatus () { return MessageStatus; }
3963
- };
3964
-
3965
- var ExamStatus;
3966
- (function (ExamStatus) {
3967
- ExamStatus["Default"] = "Default";
3968
- ExamStatus["Pending"] = "Pending";
3969
- ExamStatus["Inprogress"] = "Inprogress";
3970
- ExamStatus["Completed"] = "Completed";
3971
- })(ExamStatus || (ExamStatus = {}));
3972
- var Roles$1;
3973
- (function (Roles) {
3974
- Roles["Student"] = "Student";
3975
- Roles["Teacher"] = "Teacher";
3976
- Roles["Admin"] = "Admin";
3977
- })(Roles$1 || (Roles$1 = {}));
3978
- var MESSAGE_DEFAULT_FILTER = {
3979
- currentPage: 1,
3980
- pageSize: 15,
3981
- textSearch: "",
3982
- sortColumnDirection: OrderBy.DESC,
3983
- sortColumnName: MessageSortBy.CreatedAt
3984
- };
3985
-
3986
3937
  var ChatList = function ChatList(_ref) {
3987
3938
  var _ref$messages = _ref.messages,
3988
3939
  messages = _ref$messages === void 0 ? [] : _ref$messages,
@@ -4007,7 +3958,7 @@ var ChatList = function ChatList(_ref) {
4007
3958
  });
4008
3959
  });
4009
3960
  }, [JSON.stringify(messages)]);
4010
- var isStudent = roles === null || roles === void 0 ? void 0 : roles.includes(Roles$1.Student);
3961
+ var isStudent = roles === null || roles === void 0 ? void 0 : roles.includes(exports.Role.Student);
4011
3962
  return React__default.createElement("ul", {
4012
3963
  ref: listItemRef,
4013
3964
  className: styles$1["list"] + " " + styles$1["padding-content"] + " d-flex h-100 flex-column mb-0 " + (!(filterMessage !== null && filterMessage !== void 0 && filterMessage.length) ? 'justify-content-center' : '')
@@ -4251,7 +4202,7 @@ var ChatHeader = function ChatHeader(_ref) {
4251
4202
  t = _useTranslation.t;
4252
4203
  var theme = material.useTheme();
4253
4204
  var isTabletUp = material.useMediaQuery(theme.breakpoints.up('lg'));
4254
- var isStudent = roles === null || roles === void 0 ? void 0 : roles.includes(Roles$1.Student);
4205
+ var isStudent = roles === null || roles === void 0 ? void 0 : roles.includes(exports.Role.Student);
4255
4206
  var filterDurationExam = React.useMemo(function () {
4256
4207
  if (!durationExam) return;
4257
4208
  return moment.duration(durationExam);
@@ -4565,6 +4516,75 @@ var ChatContainer = function ChatContainer(_ref) {
4565
4516
  })));
4566
4517
  };
4567
4518
 
4519
+ var MessageSortBy;
4520
+ (function (MessageSortBy) {
4521
+ MessageSortBy["CreatedAt"] = "CreatedAt";
4522
+ })(MessageSortBy || (MessageSortBy = {}));
4523
+ var OrderBy;
4524
+ (function (OrderBy) {
4525
+ OrderBy["ASC"] = "ASC";
4526
+ OrderBy["DESC"] = "DESC";
4527
+ })(OrderBy || (OrderBy = {}));
4528
+ var StudentSortBy;
4529
+ (function (StudentSortBy) {
4530
+ StudentSortBy["CreatedAt"] = "CreatedAt";
4531
+ StudentSortBy["FullName"] = "FullName";
4532
+ })(StudentSortBy || (StudentSortBy = {}));
4533
+ var StudentOrderBy;
4534
+ (function (StudentOrderBy) {
4535
+ StudentOrderBy["ASC"] = "ASC";
4536
+ StudentOrderBy["DESC"] = "DESC";
4537
+ })(StudentOrderBy || (StudentOrderBy = {}));
4538
+ var MessageAction;
4539
+ (function (MessageAction) {
4540
+ MessageAction[MessageAction["Default"] = 0] = "Default";
4541
+ MessageAction[MessageAction["Took"] = 1] = "Took";
4542
+ })(MessageAction || (MessageAction = {}));
4543
+ var MessageSourceType;
4544
+ (function (MessageSourceType) {
4545
+ MessageSourceType[MessageSourceType["Default"] = 0] = "Default";
4546
+ MessageSourceType[MessageSourceType["Exam"] = 1] = "Exam";
4547
+ MessageSourceType[MessageSourceType["Class"] = 2] = "Class";
4548
+ })(MessageSourceType || (MessageSourceType = {}));
4549
+ var MessageStatus;
4550
+ (function (MessageStatus) {
4551
+ MessageStatus["Default"] = "Sent";
4552
+ MessageStatus["Sending"] = "Sending...";
4553
+ MessageStatus["SentError"] = "Sent fail, Retry";
4554
+ })(MessageStatus || (MessageStatus = {}));
4555
+
4556
+ var types = {
4557
+ __proto__: null,
4558
+ get MessageSortBy () { return MessageSortBy; },
4559
+ get OrderBy () { return OrderBy; },
4560
+ get StudentSortBy () { return StudentSortBy; },
4561
+ get StudentOrderBy () { return StudentOrderBy; },
4562
+ get MessageAction () { return MessageAction; },
4563
+ get MessageSourceType () { return MessageSourceType; },
4564
+ get MessageStatus () { return MessageStatus; }
4565
+ };
4566
+
4567
+ var ExamStatus;
4568
+ (function (ExamStatus) {
4569
+ ExamStatus["Default"] = "Default";
4570
+ ExamStatus["Pending"] = "Pending";
4571
+ ExamStatus["Inprogress"] = "Inprogress";
4572
+ ExamStatus["Completed"] = "Completed";
4573
+ })(ExamStatus || (ExamStatus = {}));
4574
+ var Roles;
4575
+ (function (Roles) {
4576
+ Roles["Student"] = "Student";
4577
+ Roles["Teacher"] = "Teacher";
4578
+ Roles["Admin"] = "Admin";
4579
+ })(Roles || (Roles = {}));
4580
+ var MESSAGE_DEFAULT_FILTER = {
4581
+ currentPage: 1,
4582
+ pageSize: 15,
4583
+ textSearch: "",
4584
+ sortColumnDirection: OrderBy.DESC,
4585
+ sortColumnName: MessageSortBy.CreatedAt
4586
+ };
4587
+
4568
4588
  var useMessageList = function useMessageList() {
4569
4589
  var _useState = React.useState([]),
4570
4590
  messages = _useState[0],
@@ -5200,7 +5220,7 @@ var useCategorySelect = function useCategorySelect(_ref) {
5200
5220
  var isSuperAdmin = reactRedux.useSelector(function (state) {
5201
5221
  var _state$common2, _state$common2$user;
5202
5222
  return (state === null || state === void 0 ? void 0 : (_state$common2 = state.common) === null || _state$common2 === void 0 ? void 0 : (_state$common2$user = _state$common2.user) === null || _state$common2$user === void 0 ? void 0 : _state$common2$user.roles) || [];
5203
- }).includes(Roles.Admin) && !isDomain;
5223
+ }).includes(exports.Role.Admin) && !isDomain;
5204
5224
  var categoryOptions = React.useMemo(function () {
5205
5225
  return categoryList === null || categoryList === void 0 ? void 0 : categoryList.map(function (category) {
5206
5226
  var _category$path;
@@ -5940,7 +5960,7 @@ var useExam = function useExam(props) {
5940
5960
  setExamRequest = _useState2[1];
5941
5961
  var isTeacher = reactRedux.useSelector(function (state) {
5942
5962
  var _state$common, _state$common$user;
5943
- return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.roles.includes(Roles.Teacher);
5963
+ return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.roles.includes(exports.Role.Teacher);
5944
5964
  });
5945
5965
  var _useTranslation = reactI18next.useTranslation(),
5946
5966
  t = _useTranslation.t;
@@ -8404,12 +8424,12 @@ var TabList = [{
8404
8424
  label: "problem_analysis",
8405
8425
  value: 3
8406
8426
  }];
8407
- var Roles$2;
8427
+ var Roles$1;
8408
8428
  (function (Roles) {
8409
8429
  Roles["Student"] = "Student";
8410
8430
  Roles["Teacher"] = "Teacher";
8411
8431
  Roles["Admin"] = "Admin";
8412
- })(Roles$2 || (Roles$2 = {}));
8432
+ })(Roles$1 || (Roles$1 = {}));
8413
8433
  var EXAM_RESULT = {
8414
8434
  "id": 6047,
8415
8435
  "teacherId": 1,
@@ -9101,7 +9121,7 @@ var useExamResult = function useExamResult(searchParam, navigate, examSessionId,
9101
9121
  var _state$common, _state$common$user;
9102
9122
  return (state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.roles) || [];
9103
9123
  });
9104
- var isStudent = roles === null || roles === void 0 ? void 0 : roles.includes(Roles$2.Student);
9124
+ var isStudent = roles === null || roles === void 0 ? void 0 : roles.includes(exports.Role.Student);
9105
9125
  var examCode = query.get("examCode") || "";
9106
9126
  var language = reactRedux.useSelector(function (state) {
9107
9127
  var _state$common2;
@@ -9386,57 +9406,154 @@ var useExamResult = function useExamResult(searchParam, navigate, examSessionId,
9386
9406
  }, [JSON.stringify(timelyOrderQuestion), dataChartIndex, language]);
9387
9407
  var handleExportPdf = function handleExportPdf() {
9388
9408
  try {
9389
- var canvas = document.querySelector("#canvas");
9390
- var headerCanvas = document.querySelector("#header-canvas");
9391
- if (!canvas || !headerCanvas) return Promise.resolve();
9392
- var doc = new jspdf.jsPDF({
9393
- orientation: "p",
9394
- unit: "px",
9395
- format: "a4"
9396
- });
9397
- var WIDTH_PAPER = doc.internal.pageSize.width;
9398
- var HEIGHT_PAPER = doc.internal.pageSize.height;
9399
- var line = 0;
9400
- var imgWidth = WIDTH_PAPER;
9401
- var chartWidth = WIDTH_PAPER - 20;
9402
- return Promise.resolve(html2canvas(headerCanvas)).then(function (header) {
9403
- function _temp11() {
9404
- doc.save("download.pdf");
9409
+ var _temp23 = function _temp23(_result) {
9410
+ if (_exit) return _result;
9411
+ dispatch(setLoading(false));
9412
+ };
9413
+ var _exit = false;
9414
+ dispatch(setLoading(true));
9415
+ var _temp22 = _catch(function () {
9416
+ var canvas = document.querySelector("#canvas");
9417
+ var headerCanvas = document.querySelector("#header-canvas");
9418
+ if (!canvas || !headerCanvas) {
9419
+ _exit = true;
9420
+ return;
9405
9421
  }
9406
- var imgHeaderHeight = header.height * imgWidth / header.width;
9407
- var imgHeaderData = header.toDataURL('image/png');
9408
- doc.addImage(imgHeaderData, 'PNG', 0, 0, imgWidth, imgHeaderHeight);
9409
- line += imgHeaderHeight;
9410
- if (line > HEIGHT_PAPER) {
9422
+ var doc = new jspdf.jsPDF({
9423
+ orientation: "p",
9424
+ unit: "px",
9425
+ format: "a4"
9426
+ });
9427
+ var WIDTH_PAPER = doc.internal.pageSize.width;
9428
+ var HEIGHT_PAPER = doc.internal.pageSize.height;
9429
+ var line = 0;
9430
+ var breakPage = function breakPage() {
9411
9431
  doc.addPage();
9412
9432
  line = 20;
9413
- }
9414
- var _temp10 = function () {
9415
- if (canvas && canvas.childElementCount > 0) {
9416
- var _index = 0;
9417
- var _temp9 = _for(function () {
9418
- return _index < canvas.childElementCount;
9419
- }, function () {
9420
- return _index++;
9421
- }, function () {
9422
- var chart = canvas.children.item(_index);
9423
- return Promise.resolve(html2canvas(chart)).then(function (chartCanvas) {
9424
- var imgBodyHeight = chartCanvas.height * chartWidth / chartCanvas.width;
9425
- var imgBodyData = chartCanvas.toDataURL('image/png');
9426
- line += 10;
9427
- if (line + imgBodyHeight > HEIGHT_PAPER) {
9428
- doc.addPage();
9429
- line = 20;
9433
+ };
9434
+ var imgWidth = WIDTH_PAPER;
9435
+ var chartWidth = WIDTH_PAPER - 20;
9436
+ return Promise.resolve(html2canvas(headerCanvas)).then(function (header) {
9437
+ function _temp21() {
9438
+ doc.save("download.pdf");
9439
+ }
9440
+ var imgHeaderHeight = header.height * imgWidth / header.width;
9441
+ var imgHeaderData = header.toDataURL('image/png');
9442
+ doc.addImage(imgHeaderData, 'PNG', 0, 0, imgWidth, imgHeaderHeight);
9443
+ line += imgHeaderHeight;
9444
+ if (line > HEIGHT_PAPER) breakPage();
9445
+ var _temp20 = function () {
9446
+ if (canvas && canvas.childElementCount > 0) {
9447
+ var _index = 0;
9448
+ var _temp19 = _for(function () {
9449
+ return _index < canvas.childElementCount;
9450
+ }, function () {
9451
+ return _index++;
9452
+ }, function () {
9453
+ function _temp18() {
9454
+ function _temp16() {
9455
+ line += 20;
9456
+ }
9457
+ var _temp15 = function () {
9458
+ if (printContainerEls.length) {
9459
+ var _temp14 = _forTo(printContainerEls, function (i) {
9460
+ function _temp13() {
9461
+ var printHeader = function printHeader(top) {
9462
+ if (top === void 0) {
9463
+ top = 0;
9464
+ }
9465
+ try {
9466
+ if (!printHeaderCanvas) return Promise.resolve();
9467
+ var _height = printHeaderCanvas.height * chartWidth / printHeaderCanvas.width;
9468
+ var _data = printHeaderCanvas.toDataURL('image/png');
9469
+ line += top;
9470
+ if (line + _height > HEIGHT_PAPER) breakPage();
9471
+ doc.addImage(_data, 'PNG', 10, line, chartWidth, _height);
9472
+ line += _height;
9473
+ return Promise.resolve();
9474
+ } catch (e) {
9475
+ return Promise.reject(e);
9476
+ }
9477
+ };
9478
+ return Promise.resolve(printHeader(10)).then(function () {
9479
+ var printContents = printContainerEl.querySelectorAll("." + PrintContentClassName);
9480
+ if (!printContents.length) return;
9481
+ var _temp11 = _forTo(printContents, function (j) {
9482
+ var rowItem = printContents[j];
9483
+ return Promise.resolve(html2canvas(rowItem)).then(function (rowItemCanvas) {
9484
+ function _temp10() {
9485
+ doc.addImage(data, 'PNG', 10, line, chartWidth, height);
9486
+ line += height;
9487
+ }
9488
+ var height = rowItemCanvas.height * chartWidth / rowItemCanvas.width;
9489
+ var data = rowItemCanvas.toDataURL('image/png');
9490
+ var _temp9 = function () {
9491
+ if (line + height > HEIGHT_PAPER) {
9492
+ breakPage();
9493
+ return Promise.resolve(printHeader()).then(function () {});
9494
+ }
9495
+ }();
9496
+ return _temp9 && _temp9.then ? _temp9.then(_temp10) : _temp10(_temp9);
9497
+ });
9498
+ });
9499
+ if (_temp11 && _temp11.then) return _temp11.then(function () {});
9500
+ });
9501
+ }
9502
+ var printContainerEl = printContainerEls[i];
9503
+ var printHeaderEl = printContainerEl.querySelector("." + PrintHeaderClassName);
9504
+ var printHeaderCanvas = null;
9505
+ var _temp12 = function () {
9506
+ if (printHeaderEl) {
9507
+ return Promise.resolve(html2canvas(printHeaderEl)).then(function (_html2canvas) {
9508
+ printHeaderCanvas = _html2canvas;
9509
+ });
9510
+ }
9511
+ }();
9512
+ return _temp12 && _temp12.then ? _temp12.then(_temp13) : _temp13(_temp12);
9513
+ });
9514
+ if (_temp14 && _temp14.then) return _temp14.then(function () {});
9515
+ } else {
9516
+ return Promise.resolve(html2canvas(chart)).then(function (chartCanvas) {
9517
+ var imgBodyHeight = chartCanvas.height * chartWidth / chartCanvas.width;
9518
+ var imgBodyData = chartCanvas.toDataURL('image/png');
9519
+ line += 10;
9520
+ if (line + imgBodyHeight > HEIGHT_PAPER) breakPage();
9521
+ doc.addImage(imgBodyData, 'PNG', 10, line, chartWidth, imgBodyHeight);
9522
+ line += imgBodyHeight;
9523
+ });
9524
+ }
9525
+ }();
9526
+ return _temp15 && _temp15.then ? _temp15.then(_temp16) : _temp16(_temp15);
9430
9527
  }
9431
- doc.addImage(imgBodyData, 'PNG', 10, line, chartWidth, imgBodyHeight);
9432
- line += imgBodyHeight;
9528
+ var chart = canvas.children.item(_index);
9529
+ if (chart.getAttribute("id") === "header-canvas") return;
9530
+ var chartTitle = chart.querySelector(".chart-title");
9531
+ var printContainerEls = chart.querySelectorAll("." + PrintContainerClassName);
9532
+ var _temp17 = function () {
9533
+ if (chartTitle && printContainerEls.length) {
9534
+ return Promise.resolve(html2canvas(chartTitle)).then(function (printChartTitleCanvas) {
9535
+ var height = printChartTitleCanvas.height * chartWidth / printChartTitleCanvas.width;
9536
+ var data = printChartTitleCanvas.toDataURL('image/png');
9537
+ if (line + height + 10 > HEIGHT_PAPER) breakPage();else line + 10;
9538
+ doc.addImage(data, 'PNG', 10, line, chartWidth, height);
9539
+ line += height;
9540
+ });
9541
+ }
9542
+ }();
9543
+ return _temp17 && _temp17.then ? _temp17.then(_temp18) : _temp18(_temp17);
9433
9544
  });
9434
- });
9435
- if (_temp9 && _temp9.then) return _temp9.then(function () {});
9436
- }
9437
- }();
9438
- return _temp10 && _temp10.then ? _temp10.then(_temp11) : _temp11(_temp10);
9545
+ if (_temp19 && _temp19.then) return _temp19.then(function () {});
9546
+ }
9547
+ }();
9548
+ return _temp20 && _temp20.then ? _temp20.then(_temp21) : _temp21(_temp20);
9549
+ });
9550
+ }, function (error) {
9551
+ console.log({
9552
+ error: error
9553
+ });
9554
+ reactToastify.toast.error("Print pdf failure!");
9439
9555
  });
9556
+ return Promise.resolve(_temp22 && _temp22.then ? _temp22.then(_temp23) : _temp23(_temp22));
9440
9557
  } catch (e) {
9441
9558
  return Promise.reject(e);
9442
9559
  }
@@ -10939,7 +11056,8 @@ function CreateNewQuestionDialog(_ref) {
10939
11056
  function MyAnswer(_ref) {
10940
11057
  var data = _ref.data,
10941
11058
  categories = _ref.categories,
10942
- isStudent = _ref.isStudent;
11059
+ isStudent = _ref.isStudent,
11060
+ isPrint = _ref.isPrint;
10943
11061
  var _useCreateQuestionDia = useCreateQuestionDialog(),
10944
11062
  handleCreateQuestion = _useCreateQuestionDia.handleCreateQuestion,
10945
11063
  openCreateQuestionDialog = _useCreateQuestionDia.openCreateQuestionDialog,
@@ -10956,94 +11074,8 @@ function MyAnswer(_ref) {
10956
11074
  handleSelectQuestionOrder(id);
10957
11075
  toggleCreateQuestion();
10958
11076
  };
10959
- return React__default.createElement("div", {
10960
- className: styles$4["myanswer"]
10961
- }, formattedData && formattedData.length > 0 && formattedData.map(function (item) {
10962
- return React__default.createElement("div", {
10963
- key: item.category.id
10964
- }, React__default.createElement(material.Stack, {
10965
- bgcolor: "#F9FAFB",
10966
- flexDirection: "row",
10967
- padding: "12px",
10968
- className: styles$4["myAnswerItem"] + " " + styles["noGutters"]
10969
- }, React__default.createElement("div", {
10970
- className: styles["custom-col-2"],
10971
- style: {
10972
- display: "flex",
10973
- gap: "4px"
10974
- }
10975
- }, React__default.createElement(material.Typography, {
10976
- sx: {
10977
- fontSize: "13px",
10978
- fontWeight: 600,
10979
- color: "#97A1AF"
10980
- }
10981
- }, "\uBB38\uC81C \uBC88\uD638")), React__default.createElement("div", {
10982
- className: styles["custom-col-2"],
10983
- style: {
10984
- display: "flex",
10985
- gap: "4px"
10986
- }
10987
- }, React__default.createElement(material.Typography, {
10988
- sx: {
10989
- fontSize: "13px",
10990
- fontWeight: 600,
10991
- color: "#97A1AF"
10992
- }
10993
- }, "\uC815\uB2F5")), React__default.createElement("div", {
10994
- className: styles["custom-col-2"],
10995
- style: {
10996
- display: "flex",
10997
- gap: "4px"
10998
- }
10999
- }, React__default.createElement(material.Typography, {
11000
- sx: {
11001
- fontSize: "13px",
11002
- fontWeight: 600,
11003
- color: "#97A1AF"
11004
- }
11005
- }, "\uD480\uC774 \uC2DC\uAC04")), React__default.createElement("div", {
11006
- className: styles["custom-col-2"],
11007
- style: {
11008
- display: "flex",
11009
- alignItems: "center",
11010
- gap: "4px"
11011
- }
11012
- }, React__default.createElement(material.Typography, {
11013
- sx: {
11014
- fontSize: "13px",
11015
- fontWeight: 600,
11016
- color: "#97A1AF"
11017
- }
11018
- }, "\uC0C1\uC704\uAD8C \uBE44\uAD50")), React__default.createElement("div", {
11019
- className: styles["custom-col-2"],
11020
- style: {
11021
- display: "flex",
11022
- alignItems: "center",
11023
- gap: "4px"
11024
- }
11025
- }, React__default.createElement(material.Typography, {
11026
- sx: {
11027
- fontSize: "13px",
11028
- fontWeight: 600,
11029
- color: "#97A1AF"
11030
- }
11031
- }, "\uC804\uCCB4 \uC815\uB2F5\uB960"))), React__default.createElement("div", {
11032
- className: styles$4["titleMyAnswer2"]
11033
- }, React__default.createElement(material.Typography, {
11034
- sx: {
11035
- color: "#97A1AF",
11036
- fontSize: "12px"
11037
- }
11038
- }, "\uCE74\uD14C\uACE0\uB9AC"), React__default.createElement(material.Typography, {
11039
- sx: {
11040
- color: "#414E62",
11041
- fontSize: "12px",
11042
- fontWeight: 700
11043
- }
11044
- }, item.category.name)), React__default.createElement("div", {
11045
- className: styles$4["contentMyAnswer"]
11046
- }, item.questions.map(function (question, index) {
11077
+ var renderQuestions = function renderQuestions(questions) {
11078
+ return questions.map(function (question, index) {
11047
11079
  return React__default.createElement("div", {
11048
11080
  style: isOpenTime[question.id] ? {
11049
11081
  borderTop: index !== 0 ? "1px solid #E4E7EC" : "",
@@ -11138,7 +11170,108 @@ function MyAnswer(_ref) {
11138
11170
  }, React__default.createElement(iconChat, {
11139
11171
  color: "#5458D5"
11140
11172
  })))));
11141
- })));
11173
+ });
11174
+ };
11175
+ var renderPrintQuestions = function renderPrintQuestions(questions) {
11176
+ var chunkedQuestions = _.chunk(questions, 5);
11177
+ return chunkedQuestions.map(function (i, index) {
11178
+ return React__default.createElement("div", {
11179
+ key: index,
11180
+ className: PrintContentClassName
11181
+ }, renderQuestions(i));
11182
+ });
11183
+ };
11184
+ return React__default.createElement("div", {
11185
+ className: styles$4["myanswer"]
11186
+ }, formattedData && formattedData.length > 0 && formattedData.map(function (item) {
11187
+ return React__default.createElement("div", {
11188
+ key: item.category.id,
11189
+ className: isPrint ? PrintContainerClassName : ""
11190
+ }, React__default.createElement("div", {
11191
+ className: isPrint ? PrintHeaderClassName : ""
11192
+ }, React__default.createElement(material.Stack, {
11193
+ bgcolor: "#F9FAFB",
11194
+ flexDirection: "row",
11195
+ padding: "12px",
11196
+ className: styles$4["myAnswerItem"] + " " + styles["noGutters"]
11197
+ }, React__default.createElement("div", {
11198
+ className: styles["custom-col-2"],
11199
+ style: {
11200
+ display: "flex",
11201
+ gap: "4px"
11202
+ }
11203
+ }, React__default.createElement(material.Typography, {
11204
+ sx: {
11205
+ fontSize: "13px",
11206
+ fontWeight: 600,
11207
+ color: "#97A1AF"
11208
+ }
11209
+ }, "\uBB38\uC81C \uBC88\uD638")), React__default.createElement("div", {
11210
+ className: styles["custom-col-2"],
11211
+ style: {
11212
+ display: "flex",
11213
+ gap: "4px"
11214
+ }
11215
+ }, React__default.createElement(material.Typography, {
11216
+ sx: {
11217
+ fontSize: "13px",
11218
+ fontWeight: 600,
11219
+ color: "#97A1AF"
11220
+ }
11221
+ }, "\uC815\uB2F5")), React__default.createElement("div", {
11222
+ className: styles["custom-col-2"],
11223
+ style: {
11224
+ display: "flex",
11225
+ gap: "4px"
11226
+ }
11227
+ }, React__default.createElement(material.Typography, {
11228
+ sx: {
11229
+ fontSize: "13px",
11230
+ fontWeight: 600,
11231
+ color: "#97A1AF"
11232
+ }
11233
+ }, "\uD480\uC774 \uC2DC\uAC04")), React__default.createElement("div", {
11234
+ className: styles["custom-col-2"],
11235
+ style: {
11236
+ display: "flex",
11237
+ alignItems: "center",
11238
+ gap: "4px"
11239
+ }
11240
+ }, React__default.createElement(material.Typography, {
11241
+ sx: {
11242
+ fontSize: "13px",
11243
+ fontWeight: 600,
11244
+ color: "#97A1AF"
11245
+ }
11246
+ }, "\uC0C1\uC704\uAD8C \uBE44\uAD50")), React__default.createElement("div", {
11247
+ className: styles["custom-col-2"],
11248
+ style: {
11249
+ display: "flex",
11250
+ alignItems: "center",
11251
+ gap: "4px"
11252
+ }
11253
+ }, React__default.createElement(material.Typography, {
11254
+ sx: {
11255
+ fontSize: "13px",
11256
+ fontWeight: 600,
11257
+ color: "#97A1AF"
11258
+ }
11259
+ }, "\uC804\uCCB4 \uC815\uB2F5\uB960"))), React__default.createElement("div", {
11260
+ className: styles$4["titleMyAnswer2"]
11261
+ }, React__default.createElement(material.Typography, {
11262
+ sx: {
11263
+ color: "#97A1AF",
11264
+ fontSize: "12px"
11265
+ }
11266
+ }, "\uCE74\uD14C\uACE0\uB9AC"), React__default.createElement(material.Typography, {
11267
+ sx: {
11268
+ color: "#414E62",
11269
+ fontSize: "12px",
11270
+ fontWeight: 700
11271
+ }
11272
+ }, item.category.name))), React__default.createElement("div", {
11273
+ className: styles$4["contentMyAnswer"]
11274
+ }, isPrint ? renderPrintQuestions(item.questions) : renderQuestions(item.questions)));
11142
11275
  }), React__default.createElement(CreateNewQuestionDialog, {
11143
11276
  questions: data === null || data === void 0 ? void 0 : data.questions,
11144
11277
  questionOrderSelected: questionOrderSelected,
@@ -11191,10 +11324,74 @@ var iconBtnNextChart = function iconBtnNextChart(_ref) {
11191
11324
  }));
11192
11325
  };
11193
11326
 
11194
- function CompareGrass(_ref) {
11195
- var effectSize = _ref.effectSize;
11327
+ var CompareGrass = function CompareGrass(_ref) {
11328
+ var effectSize = _ref.effectSize,
11329
+ isPrint = _ref.isPrint;
11330
+ var renderTableBody = function renderTableBody(effectSize) {
11331
+ return effectSize.map(function (item, index) {
11332
+ return React__default.createElement("tr", {
11333
+ id: "print-item",
11334
+ key: item.id,
11335
+ style: index < effectSize.length - 1 ? {
11336
+ borderBottom: "1px solid #e4e7ec"
11337
+ } : {}
11338
+ }, React__default.createElement("td", {
11339
+ className: styles$4["tdcolumn1"]
11340
+ }, "\uBB38\uC81C ", item.questionOrder + 1), React__default.createElement("td", {
11341
+ style: {
11342
+ textAlign: "center",
11343
+ color: "#202B37"
11344
+ }
11345
+ }, item.correctAnswers, "\uBC88"), React__default.createElement("td", {
11346
+ className: styles$4["tdcolumn3"],
11347
+ style: {
11348
+ color: item.isCorrect ? "#1EE288" : "#F34B4B"
11349
+ }
11350
+ }, item.selectedAnswers ? item.selectedAnswers + "\uBC88" : ""), React__default.createElement("td", {
11351
+ style: {
11352
+ textAlign: "center",
11353
+ color: "#414E62"
11354
+ }
11355
+ }, item.mostSelectedAnswers ? item.mostSelectedAnswers + "\uBC88" : ""), React__default.createElement("td", null, React__default.createElement("div", {
11356
+ className: styles$4["classification"]
11357
+ }, item.problemCategories.map(function (problem, index) {
11358
+ return React__default.createElement("div", {
11359
+ key: index
11360
+ }, problem === 1 && React__default.createElement("span", {
11361
+ style: {
11362
+ border: "1px solid #1EE288"
11363
+ }
11364
+ }, "\uC26C\uC6B4 \uBB38\uC81C"), problem === 3 && React__default.createElement("span", {
11365
+ style: {
11366
+ border: "1px solid #FDDB64"
11367
+ }
11368
+ }, "\uD568\uC815 \uBB38\uC81C"), problem === 2 && React__default.createElement("span", {
11369
+ style: {
11370
+ border: "1px solid #F34B4B"
11371
+ }
11372
+ }, "\uBCC0\uBCC4\uB825 \uBB38\uC81C"), problem === 0 && React__default.createElement("span", {
11373
+ style: {
11374
+ border: "1px solid #DDDDDD"
11375
+ }
11376
+ }, "\uC77C\uBC18\uC801\uC778 \uBB38\uC81C"), problem === 4 && React__default.createElement("span", {
11377
+ style: {
11378
+ border: "1px solid #FF0000"
11379
+ }
11380
+ }, "\uC5B4\uB824\uC6B4 \uBB38\uC81C"));
11381
+ }))));
11382
+ });
11383
+ };
11384
+ var renderPrintTableBody = function renderPrintTableBody(effectSize) {
11385
+ var chunkedEffectSizeQuestions = _.chunk(effectSize, 5);
11386
+ return chunkedEffectSizeQuestions.map(function (i, index) {
11387
+ return React__default.createElement("tbody", {
11388
+ key: index,
11389
+ className: PrintContentClassName
11390
+ }, renderTableBody(i));
11391
+ });
11392
+ };
11196
11393
  return React__default.createElement("div", {
11197
- className: styles$4["compareGrass"]
11394
+ className: styles$4["compareGrass"] + " " + (isPrint ? PrintContainerClassName : "")
11198
11395
  }, React__default.createElement("div", {
11199
11396
  className: styles$4["tableCompareGrass"]
11200
11397
  }, React__default.createElement("div", {
@@ -11206,7 +11403,8 @@ function CompareGrass(_ref) {
11206
11403
  }, React__default.createElement("thead", {
11207
11404
  style: {
11208
11405
  borderBottom: "1px solid #E4E7EC"
11209
- }
11406
+ },
11407
+ className: isPrint ? PrintHeaderClassName : ""
11210
11408
  }, React__default.createElement("tr", null, React__default.createElement("th", {
11211
11409
  className: styles$4["thcolumn1"]
11212
11410
  }, "\uBB38\uC81C \uBC88\uD638"), React__default.createElement("th", {
@@ -11225,58 +11423,8 @@ function CompareGrass(_ref) {
11225
11423
  style: {
11226
11424
  textAlign: "center"
11227
11425
  }
11228
- }, "\uBB38\uC81C \uBD84\uB958"))), React__default.createElement("tbody", null, effectSize.map(function (item, index) {
11229
- return React__default.createElement("tr", {
11230
- key: item.id,
11231
- style: index < effectSize.length - 1 ? {
11232
- borderBottom: "1px solid #e4e7ec"
11233
- } : {}
11234
- }, React__default.createElement("td", {
11235
- className: styles$4["tdcolumn1"]
11236
- }, "\uBB38\uC81C ", item.questionOrder + 1), React__default.createElement("td", {
11237
- style: {
11238
- textAlign: "center",
11239
- color: "#202B37"
11240
- }
11241
- }, item.correctAnswers, "\uBC88"), React__default.createElement("td", {
11242
- className: styles$4["tdcolumn3"],
11243
- style: {
11244
- color: item.isCorrect ? "#1EE288" : "#F34B4B"
11245
- }
11246
- }, item.selectedAnswers ? item.selectedAnswers + "\uBC88" : ""), React__default.createElement("td", {
11247
- style: {
11248
- textAlign: "center",
11249
- color: "#414E62"
11250
- }
11251
- }, item.mostSelectedAnswers ? item.mostSelectedAnswers + "\uBC88" : ""), React__default.createElement("td", null, React__default.createElement("div", {
11252
- className: styles$4["classification"]
11253
- }, item.problemCategories.map(function (problem, index) {
11254
- return React__default.createElement("div", {
11255
- key: index
11256
- }, problem === 1 && React__default.createElement("span", {
11257
- style: {
11258
- border: "1px solid #1EE288"
11259
- }
11260
- }, "\uC26C\uC6B4 \uBB38\uC81C"), problem === 3 && React__default.createElement("span", {
11261
- style: {
11262
- border: "1px solid #FDDB64"
11263
- }
11264
- }, "\uD568\uC815 \uBB38\uC81C"), problem === 2 && React__default.createElement("span", {
11265
- style: {
11266
- border: "1px solid #F34B4B"
11267
- }
11268
- }, "\uBCC0\uBCC4\uB825 \uBB38\uC81C"), problem === 0 && React__default.createElement("span", {
11269
- style: {
11270
- border: "1px solid #DDDDDD"
11271
- }
11272
- }, "\uC77C\uBC18\uC801\uC778 \uBB38\uC81C"), problem === 4 && React__default.createElement("span", {
11273
- style: {
11274
- border: "1px solid #FF0000"
11275
- }
11276
- }, "\uC5B4\uB824\uC6B4 \uBB38\uC81C"));
11277
- }))));
11278
- }))))));
11279
- }
11426
+ }, "\uBB38\uC81C \uBD84\uB958"))), isPrint ? renderPrintTableBody(effectSize) : React__default.createElement("tbody", null, renderTableBody(effectSize))))));
11427
+ };
11280
11428
 
11281
11429
  var iconUpArrow = function iconUpArrow(_ref) {
11282
11430
  var _ref$width = _ref.width,
@@ -11365,20 +11513,75 @@ var iconAssignedQuestions = function iconAssignedQuestions(_ref) {
11365
11513
  }));
11366
11514
  };
11367
11515
 
11368
- function TrickyProblem(_ref) {
11516
+ var TrickyProblem = function TrickyProblem(_ref) {
11369
11517
  var data = _ref.data,
11370
11518
  openProblem = _ref.openProblem,
11371
- changeOpen = _ref.changeOpen;
11519
+ changeOpen = _ref.changeOpen,
11520
+ isPrint = _ref.isPrint;
11372
11521
  var inCorrectQuestions = data.questions.filter(function (i) {
11373
11522
  return i.isStar && !i.isCorrect;
11374
11523
  });
11375
11524
  var correctQuestions = data.questions.filter(function (i) {
11376
11525
  return i.isStar && i.isCorrect;
11377
11526
  });
11527
+ var renderProblems = function renderProblems() {
11528
+ return React__default.createElement(React.Fragment, null, React__default.createElement("div", {
11529
+ className: styles$4["titleTrickyProblem"]
11530
+ }, React__default.createElement(iconX, null), React__default.createElement("span", null, "\uBCC4\uD45C \uCE5C \uBB38\uC81C \uC911 \uD2C0\uB9B0 \uBB38\uC81C")), React__default.createElement("div", {
11531
+ className: styles$4["wrongQuestions"]
11532
+ }, !!inCorrectQuestions.length && inCorrectQuestions.map(function (question) {
11533
+ return React__default.createElement("span", {
11534
+ key: question.id,
11535
+ className: styles$4["question"]
11536
+ }, question.questionOrder + 1, "\uBC88");
11537
+ }), !data.questions.length && React__default.createElement("div", {
11538
+ className: styles$4["noData"]
11539
+ }, "\uB370\uC774\uD130 \uC5C6\uC74C")), React__default.createElement("div", {
11540
+ className: styles$4["titleTrickyProblem"]
11541
+ }, React__default.createElement(iconAssignedQuestions, null), React__default.createElement("span", null, "\uBCC4\uD45C \uCE5C \uBB38\uC81C \uC911 \uB9DE\uCD98 \uBB38\uC81C")), React__default.createElement("div", {
11542
+ className: styles$4["assignedQuestions"]
11543
+ }, !!correctQuestions.length && correctQuestions.map(function (question) {
11544
+ return React__default.createElement("div", {
11545
+ key: question.id,
11546
+ className: styles$4["question"]
11547
+ }, question.questionOrder + 1, "\uBC88");
11548
+ }), !data.questions.length && React__default.createElement("div", {
11549
+ className: styles$4["noData"]
11550
+ }, "\uB370\uC774\uD130 \uC5C6\uC74C")));
11551
+ };
11552
+ var renderPrintProblems = function renderPrintProblems() {
11553
+ return React__default.createElement(React.Fragment, null, React__default.createElement("div", {
11554
+ className: PrintContentClassName
11555
+ }, React__default.createElement("div", {
11556
+ className: styles$4["titleTrickyProblem"]
11557
+ }, React__default.createElement(iconX, null), React__default.createElement("span", null, "\uBCC4\uD45C \uCE5C \uBB38\uC81C \uC911 \uD2C0\uB9B0 \uBB38\uC81C")), React__default.createElement("div", {
11558
+ className: styles$4["wrongQuestions"]
11559
+ }, !!inCorrectQuestions.length && inCorrectQuestions.map(function (question) {
11560
+ return React__default.createElement("span", {
11561
+ key: question.id,
11562
+ className: styles$4["question"]
11563
+ }, question.questionOrder + 1, "\uBC88");
11564
+ }), !data.questions.length && React__default.createElement("div", {
11565
+ className: styles$4["noData"]
11566
+ }, "\uB370\uC774\uD130 \uC5C6\uC74C"))), React__default.createElement("div", {
11567
+ className: PrintContentClassName
11568
+ }, React__default.createElement("div", {
11569
+ className: styles$4["titleTrickyProblem"]
11570
+ }, React__default.createElement(iconAssignedQuestions, null), React__default.createElement("span", null, "\uBCC4\uD45C \uCE5C \uBB38\uC81C \uC911 \uB9DE\uCD98 \uBB38\uC81C")), React__default.createElement("div", {
11571
+ className: styles$4["assignedQuestions"]
11572
+ }, !!correctQuestions.length && correctQuestions.map(function (question) {
11573
+ return React__default.createElement("div", {
11574
+ key: question.id,
11575
+ className: styles$4["question"]
11576
+ }, question.questionOrder + 1, "\uBC88");
11577
+ }), !data.questions.length && React__default.createElement("div", {
11578
+ className: styles$4["noData"]
11579
+ }, "\uB370\uC774\uD130 \uC5C6\uC74C"))));
11580
+ };
11378
11581
  return React__default.createElement("div", {
11379
- className: styles$4["wrapperProblem"]
11582
+ className: styles$4["wrapperProblem"] + " " + (isPrint ? PrintContainerClassName : "")
11380
11583
  }, React__default.createElement("div", {
11381
- className: !openProblem.problem1 ? styles$4["titleProblemClose"] : styles$4["titleProblem"],
11584
+ className: (!openProblem.problem1 ? styles$4["titleProblemClose"] : styles$4["titleProblem"]) + " " + (isPrint ? PrintHeaderClassName : ""),
11382
11585
  onClick: function onClick() {
11383
11586
  return changeOpen(_extends({}, openProblem, {
11384
11587
  problem1: !openProblem.problem1
@@ -11390,41 +11593,53 @@ function TrickyProblem(_ref) {
11390
11593
  fontSize: "14px",
11391
11594
  fontWeight: 700
11392
11595
  }
11393
- }, "\uAE4C\uB2E4\uB85C\uC6E0\uB358 \uBB38\uC81C"), openProblem.problem1 ? React__default.createElement(iconUpArrow, null) : React__default.createElement(iconDownArrow, null)), openProblem.problem1 && React__default.createElement(React.Fragment, null, React__default.createElement("div", {
11394
- className: styles$4["titleTrickyProblem"]
11395
- }, React__default.createElement(iconX, null), React__default.createElement("span", null, "\uBCC4\uD45C \uCE5C \uBB38\uC81C \uC911 \uD2C0\uB9B0 \uBB38\uC81C")), React__default.createElement("div", {
11396
- className: styles$4["wrongQuestions"]
11397
- }, !!inCorrectQuestions.length && inCorrectQuestions.map(function (question) {
11398
- return React__default.createElement("span", {
11399
- key: question.id,
11400
- className: styles$4["question"]
11401
- }, question.questionOrder + 1, "\uBC88");
11402
- }), !data.questions.length && React__default.createElement("div", {
11403
- className: styles$4["noData"]
11404
- }, "\uB370\uC774\uD130 \uC5C6\uC74C")), React__default.createElement("div", {
11405
- className: styles$4["titleTrickyProblem"]
11406
- }, React__default.createElement(iconAssignedQuestions, null), React__default.createElement("span", null, "\uBCC4\uD45C \uCE5C \uBB38\uC81C \uC911 \uB9DE\uCD98 \uBB38\uC81C")), React__default.createElement("div", {
11407
- className: styles$4["assignedQuestions"]
11408
- }, !!correctQuestions.length && correctQuestions.map(function (question) {
11409
- return React__default.createElement("div", {
11410
- key: question.id,
11411
- className: styles$4["question"]
11412
- }, question.questionOrder + 1, "\uBC88");
11413
- }), !data.questions.length && React__default.createElement("div", {
11414
- className: styles$4["noData"]
11415
- }, "\uB370\uC774\uD130 \uC5C6\uC74C"))));
11416
- }
11596
+ }, "\uAE4C\uB2E4\uB85C\uC6E0\uB358 \uBB38\uC81C"), openProblem.problem1 ? React__default.createElement(iconUpArrow, null) : React__default.createElement(iconDownArrow, null)), openProblem.problem1 && React__default.createElement(React.Fragment, null, isPrint ? renderPrintProblems() : renderProblems()));
11597
+ };
11417
11598
 
11418
- function ProtractedProblem(_ref) {
11599
+ var ProtractedProblem = function ProtractedProblem(_ref) {
11419
11600
  var data = _ref.data,
11420
11601
  openProblem = _ref.openProblem,
11421
- changeOpen = _ref.changeOpen;
11602
+ changeOpen = _ref.changeOpen,
11603
+ isPrint = _ref.isPrint;
11422
11604
  var _useTranslation = reactI18next.useTranslation(),
11423
11605
  t = _useTranslation.t;
11606
+ var renderQuestions = function renderQuestions(data) {
11607
+ return data.map(function (item) {
11608
+ return React__default.createElement("div", {
11609
+ className: styles$4["content"],
11610
+ key: item.id
11611
+ }, React__default.createElement("div", {
11612
+ className: styles$4["contentColumn1"]
11613
+ }, React__default.createElement("div", null, React__default.createElement("span", {
11614
+ className: styles$4["span1"]
11615
+ }, "\uBB38\uC81C"), React__default.createElement("span", {
11616
+ className: styles$4["span2"]
11617
+ }, item.questionOrder + 1, "\uBC88"))), React__default.createElement("div", {
11618
+ className: styles$4["contentColumn2"]
11619
+ }, React__default.createElement("div", null, React__default.createElement("span", {
11620
+ className: styles$4["span1"]
11621
+ }, "\uB098\uC758 \uC2DC\uAC04"), React__default.createElement("span", {
11622
+ className: styles$4["span2"]
11623
+ }, "\uC0C1\uC704\uAD8C \uC2DC\uAC04")), React__default.createElement("div", null, React__default.createElement("span", {
11624
+ className: styles$4["duration"]
11625
+ }, formatTimeSecond(item.duration, t)), React__default.createElement("span", {
11626
+ className: styles$4["topDuration"]
11627
+ }, formatTimeSecond(item.topDuration, t)))));
11628
+ });
11629
+ };
11630
+ var renderPrintQuestions = function renderPrintQuestions() {
11631
+ var chunkedData = _.chunk(data, 5);
11632
+ return chunkedData.map(function (i, index) {
11633
+ return React__default.createElement("div", {
11634
+ key: index,
11635
+ className: PrintContentClassName
11636
+ }, renderQuestions(i));
11637
+ });
11638
+ };
11424
11639
  return React__default.createElement("div", {
11425
- className: styles$4["wrapperProblem"]
11640
+ className: styles$4["wrapperProblem"] + " " + (isPrint ? PrintContainerClassName : "")
11426
11641
  }, React__default.createElement("div", {
11427
- className: !openProblem.problem2 ? styles$4["titleProblemClose"] : styles$4["titleProblem"],
11642
+ className: (!openProblem.problem2 ? styles$4["titleProblemClose"] : styles$4["titleProblem"]) + " " + (isPrint ? PrintHeaderClassName : ""),
11428
11643
  onClick: function onClick() {
11429
11644
  return changeOpen(_extends({}, openProblem, {
11430
11645
  problem2: !openProblem.problem2
@@ -11438,45 +11653,58 @@ function ProtractedProblem(_ref) {
11438
11653
  }
11439
11654
  }, "\uC2DC\uAC04\uC774 \uC624\uB798 \uAC78\uB9B0 \uBB38\uC81C"), openProblem.problem2 ? React__default.createElement(iconUpArrow, null) : React__default.createElement(iconDownArrow, null)), openProblem.problem2 && React__default.createElement(React.Fragment, null, React__default.createElement("div", {
11440
11655
  className: styles$4["wrapperContent"]
11441
- }, data.length ? data.map(function (item) {
11442
- return React__default.createElement("div", {
11443
- className: styles$4["content"],
11444
- key: item.id
11445
- }, React__default.createElement("div", {
11446
- className: styles$4["contentColumn1"]
11447
- }, React__default.createElement("div", null, React__default.createElement("span", {
11448
- className: styles$4["span1"]
11449
- }, "\uBB38\uC81C"), React__default.createElement("span", {
11450
- className: styles$4["span2"]
11451
- }, item.questionOrder + 1, "\uBC88"))), React__default.createElement("div", {
11452
- className: styles$4["contentColumn2"]
11453
- }, React__default.createElement("div", null, React__default.createElement("span", {
11454
- className: styles$4["span1"]
11455
- }, "\uB098\uC758 \uC2DC\uAC04"), React__default.createElement("span", {
11456
- className: styles$4["span2"]
11457
- }, "\uC0C1\uC704\uAD8C \uC2DC\uAC04")), React__default.createElement("div", null, React__default.createElement("span", {
11458
- className: styles$4["duration"]
11459
- }, formatTimeSecond(item.duration, t)), React__default.createElement("span", {
11460
- className: styles$4["topDuration"]
11461
- }, formatTimeSecond(item.topDuration, t)))));
11462
- }) : React__default.createElement("div", {
11463
- className: styles$4["noData"]
11656
+ }, data.length ? isPrint ? renderPrintQuestions() : renderQuestions(data) : React__default.createElement("div", {
11657
+ className: styles$4["noData"] + " " + (isPrint ? PrintContentClassName : "")
11464
11658
  }, "\uB370\uC774\uD130 \uC5C6\uC74C"))));
11465
- }
11659
+ };
11466
11660
 
11467
- function Vulnerable(_ref) {
11661
+ var Vulnerable = function Vulnerable(_ref) {
11468
11662
  var data = _ref.data,
11469
11663
  openProblem = _ref.openProblem,
11470
- changeOpen = _ref.changeOpen;
11664
+ changeOpen = _ref.changeOpen,
11665
+ isPrint = _ref.isPrint;
11471
11666
  var incorrectQuestions = data.questions.filter(function (i) {
11472
11667
  return i.selectedAnswers !== "" && i.isCorrect === false;
11473
11668
  }).sort(function (q1, q2) {
11474
11669
  return q2.overallCorrectRate === q1.overallCorrectRate ? q1.questionOrder - q2.questionOrder : q2.overallCorrectRate - q1.overallCorrectRate;
11475
11670
  });
11671
+ var renderQuestions = function renderQuestions(questions) {
11672
+ return questions.map(function (question) {
11673
+ return React__default.createElement("div", {
11674
+ className: styles$4["content"],
11675
+ key: question.id
11676
+ }, React__default.createElement("div", {
11677
+ className: styles$4["contentColumn1"]
11678
+ }, React__default.createElement("div", null, React__default.createElement("span", {
11679
+ className: styles$4["span1"]
11680
+ }, "\uBB38\uC81C"), React__default.createElement("span", {
11681
+ className: styles$4["span2"]
11682
+ }, question.questionOrder + 1, "\uBC88"))), React__default.createElement("div", {
11683
+ className: styles$4["contentColumn2"]
11684
+ }, React__default.createElement("div", null, React__default.createElement("span", {
11685
+ className: styles$4["span1"]
11686
+ }, "\uC804\uCCB4 \uC815\uB2F5\uB960"), React__default.createElement("span", {
11687
+ className: styles$4["span2"]
11688
+ }, "\uB098\uC758 \uC624\uB2F5")), React__default.createElement("div", null, React__default.createElement("span", {
11689
+ className: styles$4["overallCorrectRate"]
11690
+ }, question.overallCorrectRate.toFixed(2), "%"), React__default.createElement("span", {
11691
+ className: styles$4["answer"]
11692
+ }, question.selectedAnswers, "\uBC88 (\uC815\uB2F5", " ", question.correctAnswers, "\uBC88)"))));
11693
+ });
11694
+ };
11695
+ var renderPrintQuestions = function renderPrintQuestions(questions) {
11696
+ var chunkedQuestions = _.chunk(questions, 5);
11697
+ return chunkedQuestions.map(function (i, index) {
11698
+ return React__default.createElement("div", {
11699
+ key: index,
11700
+ className: PrintContentClassName
11701
+ }, renderQuestions(i));
11702
+ });
11703
+ };
11476
11704
  return React__default.createElement("div", {
11477
- className: styles$4["wrapperProblem"]
11705
+ className: styles$4["wrapperProblem"] + " " + PrintContainerClassName
11478
11706
  }, React__default.createElement("div", {
11479
- className: !openProblem.problem3 ? styles$4["titleProblemClose"] : styles$4["titleProblem"],
11707
+ className: (!openProblem.problem3 ? styles$4["titleProblemClose"] : styles$4["titleProblem"]) + " " + (isPrint ? PrintHeaderClassName : ""),
11480
11708
  onClick: function onClick() {
11481
11709
  return changeOpen(_extends({}, openProblem, {
11482
11710
  problem3: !openProblem.problem3
@@ -11490,40 +11718,51 @@ function Vulnerable(_ref) {
11490
11718
  }
11491
11719
  }, "\uB0B4\uAC00 \uCDE8\uC57D\uD55C \uBB38\uC81C"), openProblem.problem3 ? React__default.createElement(iconUpArrow, null) : React__default.createElement(iconDownArrow, null)), openProblem.problem3 && React__default.createElement(React.Fragment, null, React__default.createElement("div", {
11492
11720
  className: styles$4["wrapperContent"]
11493
- }, incorrectQuestions.length ? React__default.createElement(React.Fragment, null, incorrectQuestions.map(function (question) {
11494
- return React__default.createElement("div", {
11495
- className: styles$4["content"],
11496
- key: question.id
11497
- }, React__default.createElement("div", {
11498
- className: styles$4["contentColumn1"]
11499
- }, React__default.createElement("div", null, React__default.createElement("span", {
11500
- className: styles$4["span1"]
11501
- }, "\uBB38\uC81C"), React__default.createElement("span", {
11502
- className: styles$4["span2"]
11503
- }, question.questionOrder + 1, "\uBC88"))), React__default.createElement("div", {
11504
- className: styles$4["contentColumn2"]
11505
- }, React__default.createElement("div", null, React__default.createElement("span", {
11506
- className: styles$4["span1"]
11507
- }, "\uC804\uCCB4 \uC815\uB2F5\uB960"), React__default.createElement("span", {
11508
- className: styles$4["span2"]
11509
- }, "\uB098\uC758 \uC624\uB2F5")), React__default.createElement("div", null, React__default.createElement("span", {
11510
- className: styles$4["overallCorrectRate"]
11511
- }, question.overallCorrectRate.toFixed(2), "%"), React__default.createElement("span", {
11512
- className: styles$4["answer"]
11513
- }, question.selectedAnswers, "\uBC88 (\uC815\uB2F5", " ", question.correctAnswers, "\uBC88)"))));
11514
- })) : React__default.createElement("div", {
11515
- className: styles$4["noData"]
11721
+ }, isPrint ? renderPrintQuestions(incorrectQuestions) : renderQuestions(incorrectQuestions), !incorrectQuestions.length && React__default.createElement("div", {
11722
+ className: styles$4["noData"] + " " + (isPrint ? PrintContentClassName : "")
11516
11723
  }, "\uB370\uC774\uD130 \uC5C6\uC74C"))));
11517
- }
11724
+ };
11518
11725
 
11519
- function GradesByTerritory(_ref) {
11726
+ var GradesByTerritory = function GradesByTerritory(_ref) {
11520
11727
  var data = _ref.data,
11521
11728
  openProblem = _ref.openProblem,
11522
- changeOpen = _ref.changeOpen;
11729
+ changeOpen = _ref.changeOpen,
11730
+ isPrint = _ref.isPrint;
11731
+ var renderCategories = function renderCategories(data) {
11732
+ return data.map(function (item) {
11733
+ var trackStyle = {
11734
+ left: item.percentageAmongStudents + "%"
11735
+ };
11736
+ return React__default.createElement("div", {
11737
+ className: styles$4["contentProblem"],
11738
+ key: item.id
11739
+ }, React__default.createElement("div", {
11740
+ className: styles$4["labelProblem"]
11741
+ }, React__default.createElement("span", {
11742
+ className: styles$4["name"]
11743
+ }, item.name), React__default.createElement("div", {
11744
+ className: styles$4["percent"]
11745
+ }, React__default.createElement("span", null, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("span", null, item.totalCorrectQuestions, "/", item.totalQuestions, "\uBB38\uC81C"))), React__default.createElement("div", {
11746
+ className: styles$4["slider"]
11747
+ }, React__default.createElement("div", null, React__default.createElement("span", {
11748
+ className: styles$4["track"],
11749
+ style: trackStyle
11750
+ }))));
11751
+ });
11752
+ };
11753
+ var renderPrintCategories = function renderPrintCategories() {
11754
+ var chunkedCategories = _.chunk(data, 5);
11755
+ return chunkedCategories.map(function (i, index) {
11756
+ return React__default.createElement("div", {
11757
+ key: index,
11758
+ className: PrintContentClassName
11759
+ }, renderCategories(i));
11760
+ });
11761
+ };
11523
11762
  return React__default.createElement("div", {
11524
- className: styles$4["wrapperProblem"]
11763
+ className: styles$4["wrapperProblem"] + " " + (isPrint ? PrintContainerClassName : "")
11525
11764
  }, React__default.createElement("div", {
11526
- className: !openProblem.problem4 ? styles$4["titleProblemClose"] : styles$4["titleProblem"],
11765
+ className: (!openProblem.problem4 ? styles$4["titleProblemClose"] : styles$4["titleProblem"]) + " " + (isPrint ? PrintHeaderClassName : ""),
11527
11766
  onClick: function onClick() {
11528
11767
  return changeOpen(_extends({}, openProblem, {
11529
11768
  problem4: !openProblem.problem4
@@ -11537,28 +11776,10 @@ function GradesByTerritory(_ref) {
11537
11776
  }
11538
11777
  }, "\uC601\uC5ED\uBCC4 \uC131\uC801"), openProblem.problem4 ? React__default.createElement(iconUpArrow, null) : React__default.createElement(iconDownArrow, null)), openProblem.problem4 && React__default.createElement("div", {
11539
11778
  className: styles$4["wrappContentProblem"]
11540
- }, data.length && data.map(function (item) {
11541
- return React__default.createElement("div", {
11542
- className: styles$4["contentProblem"],
11543
- key: item.id
11544
- }, React__default.createElement("div", {
11545
- className: styles$4["labelProblem"]
11546
- }, React__default.createElement("span", {
11547
- className: styles$4["name"]
11548
- }, item.name), React__default.createElement("div", {
11549
- className: styles$4["percent"]
11550
- }, React__default.createElement("span", null, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("span", null, item.totalCorrectQuestions, "/", item.totalQuestions, "\uBB38\uC81C"))), React__default.createElement("div", {
11551
- className: styles$4["slider"]
11552
- }, React__default.createElement("span", {
11553
- className: styles$4["track"],
11554
- style: {
11555
- left: item.percentageAmongStudents + "%"
11556
- }
11557
- })));
11558
- }), openProblem.problem4 && !data.length && React__default.createElement("div", {
11559
- className: styles$4["noData"]
11779
+ }, isPrint ? renderPrintCategories() : renderCategories(data), openProblem.problem4 && !data.length && React__default.createElement("div", {
11780
+ className: styles$4["noData"] + " " + (isPrint ? PrintContentClassName : "")
11560
11781
  }, "\uB370\uC774\uD130 \uC5C6\uC74C")));
11561
- }
11782
+ };
11562
11783
 
11563
11784
  var useCreateQuestionDialog$1 = function useCreateQuestionDialog() {
11564
11785
  var _useState = React.useState(false),
@@ -11787,8 +12008,7 @@ var ExamResultV2 = function ExamResultV2(_ref) {
11787
12008
  }
11788
12009
  }, React__default.createElement(material.Grid, {
11789
12010
  container: true,
11790
- padding: "24px",
11791
- id: "header-canvas"
12011
+ padding: "24px"
11792
12012
  }, React__default.createElement(material.Grid, {
11793
12013
  item: true
11794
12014
  }, resultDatas.courseName && React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
@@ -11998,14 +12218,104 @@ var ExamResultV2 = function ExamResultV2(_ref) {
11998
12218
  className: "position-absolute",
11999
12219
  sx: {
12000
12220
  zIndex: -1,
12001
- width: "100%"
12221
+ width: "1024px"
12002
12222
  },
12003
12223
  id: "canvas"
12004
- }, React__default.createElement(material.Stack, {
12224
+ }, React__default.createElement(material.Grid, {
12225
+ container: true,
12226
+ padding: "24px",
12227
+ id: "header-canvas"
12228
+ }, React__default.createElement(material.Grid, {
12229
+ item: true
12230
+ }, resultDatas.courseName && React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
12231
+ sx: {
12232
+ fontSize: "14px",
12233
+ fontWeight: 600,
12234
+ color: "#C3C5FE"
12235
+ }
12236
+ }, resultDatas.courseName)), React__default.createElement(material.Box, {
12237
+ display: "flex",
12238
+ gap: "16px",
12239
+ flexDirection: "column"
12240
+ }, React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
12241
+ sx: {
12242
+ fontSize: "20px",
12243
+ fontWeight: 600,
12244
+ color: "#5458D5"
12245
+ }
12246
+ }, resultDatas.title)), React__default.createElement(material.Stack, {
12247
+ flexDirection: "row",
12248
+ gap: "16px"
12249
+ }, React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
12250
+ sx: {
12251
+ fontSize: "13px",
12252
+ fontWeight: 600,
12253
+ color: "#97A1AF"
12254
+ }
12255
+ }, t("my_score")), React__default.createElement(material.Typography, {
12256
+ sx: {
12257
+ fontSize: "14px",
12258
+ fontWeight: 600,
12259
+ color: "#5458D5"
12260
+ }
12261
+ }, t("score_format", {
12262
+ score: resultDatas === null || resultDatas === void 0 ? void 0 : resultDatas.score
12263
+ }))), React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
12264
+ sx: {
12265
+ fontSize: "13px",
12266
+ fontWeight: 600,
12267
+ color: "#97A1AF"
12268
+ }
12269
+ }, t("exam_date")), React__default.createElement(material.Typography, {
12270
+ sx: {
12271
+ fontSize: "14px",
12272
+ fontWeight: 600,
12273
+ color: "#414E62"
12274
+ }
12275
+ }, utcToLocalTime(resultDatas === null || resultDatas === void 0 ? void 0 : resultDatas.startTime, t("date_format")))), React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
12276
+ sx: {
12277
+ fontSize: "13px",
12278
+ fontWeight: 600,
12279
+ color: "#97A1AF"
12280
+ }
12281
+ }, t("exam_time")), React__default.createElement(material.Typography, {
12282
+ sx: {
12283
+ fontSize: "14px",
12284
+ fontWeight: 600,
12285
+ color: "#414E62"
12286
+ }
12287
+ }, moment(resultDatas === null || resultDatas === void 0 ? void 0 : resultDatas.startTime, "HH:mm").format("hh:mm") + " ~ " + moment(resultDatas === null || resultDatas === void 0 ? void 0 : resultDatas.finishTime, "HH:mm").format("hh:mm"))), React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
12288
+ sx: {
12289
+ fontSize: "13px",
12290
+ fontWeight: 600,
12291
+ color: "#97A1AF"
12292
+ }
12293
+ }, t("total_students")), React__default.createElement(material.Typography, {
12294
+ sx: {
12295
+ fontSize: "14px",
12296
+ fontWeight: 600,
12297
+ color: "#414E62"
12298
+ }
12299
+ }, t("number_people", {
12300
+ number: resultDatas === null || resultDatas === void 0 ? void 0 : resultDatas.totalStudent
12301
+ }))), React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
12302
+ sx: {
12303
+ fontSize: "13px",
12304
+ fontWeight: 600,
12305
+ color: "#97A1AF"
12306
+ }
12307
+ }, t("teacher_in_charge")), React__default.createElement(material.Typography, {
12308
+ sx: {
12309
+ fontSize: "14px",
12310
+ fontWeight: 600,
12311
+ color: "#414E62"
12312
+ }
12313
+ }, resultDatas === null || resultDatas === void 0 ? void 0 : resultDatas.teacherName)))))), React__default.createElement(material.Stack, {
12005
12314
  display: "flex",
12006
12315
  flexDirection: "column",
12007
12316
  gap: "12px"
12008
12317
  }, React__default.createElement(material.Typography, {
12318
+ className: "chart-title",
12009
12319
  sx: {
12010
12320
  fontSize: "16px",
12011
12321
  fontWeight: 700,
@@ -12014,7 +12324,8 @@ var ExamResultV2 = function ExamResultV2(_ref) {
12014
12324
  }, t(TabList[0].label)), React__default.createElement(MyAnswer, {
12015
12325
  data: resultDatas,
12016
12326
  categories: categoryResponses,
12017
- isStudent: isStudent
12327
+ isStudent: isStudent,
12328
+ isPrint: true
12018
12329
  })), React__default.createElement(material.Stack, {
12019
12330
  display: "flex",
12020
12331
  flexDirection: "column",
@@ -12046,19 +12357,22 @@ var ExamResultV2 = function ExamResultV2(_ref) {
12046
12357
  gap: "12px",
12047
12358
  marginTop: "24px"
12048
12359
  }, React__default.createElement(material.Typography, {
12360
+ className: "chart-title",
12049
12361
  sx: {
12050
12362
  fontSize: "16px",
12051
12363
  fontWeight: 700,
12052
12364
  color: "#414E62"
12053
12365
  }
12054
12366
  }, t(TabList[2].label)), React__default.createElement(CompareGrass, {
12055
- effectSize: effectSize
12367
+ effectSize: effectSize,
12368
+ isPrint: true
12056
12369
  })), React__default.createElement(material.Stack, {
12057
12370
  display: "flex",
12058
12371
  flexDirection: "column",
12059
12372
  gap: "12px",
12060
12373
  marginTop: "24px"
12061
12374
  }, React__default.createElement(material.Typography, {
12375
+ className: "chart-title",
12062
12376
  sx: {
12063
12377
  fontSize: "16px",
12064
12378
  fontWeight: 700,
@@ -12069,25 +12383,29 @@ var ExamResultV2 = function ExamResultV2(_ref) {
12069
12383
  openProblem: _extends({}, openProblem, {
12070
12384
  problem1: true
12071
12385
  }),
12072
- changeOpen: setOpenProblem
12386
+ changeOpen: setOpenProblem,
12387
+ isPrint: true
12073
12388
  }), React__default.createElement(Vulnerable, {
12074
12389
  data: resultDatas,
12075
12390
  openProblem: _extends({}, openProblem, {
12076
12391
  problem3: true
12077
12392
  }),
12078
- changeOpen: setOpenProblem
12393
+ changeOpen: setOpenProblem,
12394
+ isPrint: true
12079
12395
  }), React__default.createElement(ProtractedProblem, {
12080
12396
  data: longTimeSpend,
12081
12397
  openProblem: _extends({}, openProblem, {
12082
12398
  problem2: true
12083
12399
  }),
12084
- changeOpen: setOpenProblem
12400
+ changeOpen: setOpenProblem,
12401
+ isPrint: true
12085
12402
  }), React__default.createElement(GradesByTerritory, {
12086
12403
  data: categoryResponses,
12087
12404
  openProblem: _extends({}, openProblem, {
12088
12405
  problem4: true
12089
12406
  }),
12090
- changeOpen: setOpenProblem
12407
+ changeOpen: setOpenProblem,
12408
+ isPrint: true
12091
12409
  })))), React__default.createElement(CreateNewQuestionDialog$1, {
12092
12410
  examSessionId: resultDatas === null || resultDatas === void 0 ? void 0 : resultDatas.examSessionId,
12093
12411
  handleCreateQuestion: handleCreateQuestion,