touchstudy-core 0.1.81 → 0.1.82

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.
@@ -0,0 +1,4 @@
1
+ export declare const TabList: {
2
+ label: string;
3
+ value: number;
4
+ }[];
@@ -10,6 +10,8 @@ declare const usePrintView: ({ examSessionId, studentId, code, setNotFound, resu
10
10
  }) => {
11
11
  fileName: string;
12
12
  isDone: boolean;
13
+ status: string;
14
+ isShow: (value: number) => boolean;
13
15
  handelPrintSuccess: () => void;
14
16
  handelPrintError: (errorMessage?: string | undefined) => void;
15
17
  };
@@ -4,6 +4,8 @@ interface Props {
4
4
  contentRef: RefObject<HTMLElement>;
5
5
  resultData: ExamResult;
6
6
  examTime: string;
7
+ status?: string;
8
+ isShow?: (value: number) => boolean;
7
9
  isStudent: boolean;
8
10
  categoryResponses: CategoryResponse[];
9
11
  timelyOrderQuestions: TimelyOrderQuestion[];
package/dist/index.js CHANGED
@@ -2580,6 +2580,7 @@ var your_browser_must = "귀하의 브라우저는 다음을 충족해야 합니
2580
2580
  var allowed_to_send_pop_ups_and_use_redirects = "팝업 보내기 및 리디렉션 사용이 허용됨";
2581
2581
  var disable_ask_where_to_save_each_file_before_downloading = "다운로드하기 전에 각 파일을 저장할 위치 묻기 비활성화";
2582
2582
  var total_number_of_selected_results = "선택된 결과의 총 개수";
2583
+ var choose_to_print = "인쇄를 선택하세요";
2583
2584
  var lang_ko = {
2584
2585
  problem_solving: problem_solving,
2585
2586
  my_story: my_story,
@@ -3352,7 +3353,8 @@ var lang_ko = {
3352
3353
  your_browser_must: your_browser_must,
3353
3354
  allowed_to_send_pop_ups_and_use_redirects: allowed_to_send_pop_ups_and_use_redirects,
3354
3355
  disable_ask_where_to_save_each_file_before_downloading: disable_ask_where_to_save_each_file_before_downloading,
3355
- total_number_of_selected_results: total_number_of_selected_results
3356
+ total_number_of_selected_results: total_number_of_selected_results,
3357
+ choose_to_print: choose_to_print
3356
3358
  };
3357
3359
 
3358
3360
  var problem_solving$1 = "Problem Solving";
@@ -4135,6 +4137,7 @@ var your_browser_must$1 = "Your browser must";
4135
4137
  var allowed_to_send_pop_ups_and_use_redirects$1 = "Allowed to send pop-ups and use redirects";
4136
4138
  var disable_ask_where_to_save_each_file_before_downloading$1 = "Disable ask where to save each file before downloading";
4137
4139
  var total_number_of_selected_results$1 = "Total number of selected results";
4140
+ var choose_to_print$1 = "Choose to print";
4138
4141
  var lang_en = {
4139
4142
  problem_solving: problem_solving$1,
4140
4143
  my_story: my_story$1,
@@ -4908,7 +4911,8 @@ var lang_en = {
4908
4911
  your_browser_must: your_browser_must$1,
4909
4912
  allowed_to_send_pop_ups_and_use_redirects: allowed_to_send_pop_ups_and_use_redirects$1,
4910
4913
  disable_ask_where_to_save_each_file_before_downloading: disable_ask_where_to_save_each_file_before_downloading$1,
4911
- total_number_of_selected_results: total_number_of_selected_results$1
4914
+ total_number_of_selected_results: total_number_of_selected_results$1,
4915
+ choose_to_print: choose_to_print$1
4912
4916
  };
4913
4917
 
4914
4918
  i18n__default.use(reactI18next.initReactI18next).init({
@@ -10868,6 +10872,7 @@ var EXAM_RESULT = {
10868
10872
  topDuration: 180.939,
10869
10873
  answerResponseSignal: 0,
10870
10874
  isCorrect: false,
10875
+ score: 2,
10871
10876
  answerTime: "2024-03-13T04:29:00.685+00:00",
10872
10877
  article: 1,
10873
10878
  category: {
@@ -10889,6 +10894,7 @@ var EXAM_RESULT = {
10889
10894
  classAverageTime: 2.014,
10890
10895
  topDuration: 2.014,
10891
10896
  answerResponseSignal: 1,
10897
+ score: 2,
10892
10898
  isCorrect: false,
10893
10899
  answerTime: "2024-03-13T04:29:02.7+00:00",
10894
10900
  article: 1,
@@ -10911,6 +10917,7 @@ var EXAM_RESULT = {
10911
10917
  classAverageTime: 52.244,
10912
10918
  topDuration: 24.244,
10913
10919
  answerResponseSignal: 1,
10920
+ score: 2,
10914
10921
  isCorrect: false,
10915
10922
  answerTime: "2024-03-13T04:29:04.944+00:00",
10916
10923
  article: 1,
@@ -10933,6 +10940,7 @@ var EXAM_RESULT = {
10933
10940
  classAverageTime: 1.373,
10934
10941
  topDuration: 1.373,
10935
10942
  answerResponseSignal: 4,
10943
+ score: 2,
10936
10944
  isCorrect: true,
10937
10945
  answerTime: "2024-03-13T04:29:06.317+00:00",
10938
10946
  article: 1,
@@ -10955,6 +10963,7 @@ var EXAM_RESULT = {
10955
10963
  classAverageTime: 132.683,
10956
10964
  topDuration: 110.683,
10957
10965
  answerResponseSignal: 2,
10966
+ score: 2,
10958
10967
  isCorrect: false,
10959
10968
  answerTime: "2024-03-13T04:29:07+00:00",
10960
10969
  article: 1,
@@ -10977,6 +10986,7 @@ var EXAM_RESULT = {
10977
10986
  classAverageTime: 1.052,
10978
10987
  topDuration: 1.052,
10979
10988
  answerResponseSignal: 1,
10989
+ score: 2,
10980
10990
  isCorrect: true,
10981
10991
  answerTime: "2024-03-13T04:29:08.052+00:00",
10982
10992
  article: 2,
@@ -10999,6 +11009,7 @@ var EXAM_RESULT = {
10999
11009
  classAverageTime: 0,
11000
11010
  topDuration: null,
11001
11011
  answerResponseSignal: null,
11012
+ score: 2,
11002
11013
  isCorrect: false,
11003
11014
  answerTime: "0001-01-01T00:00:00+00:00",
11004
11015
  article: 2,
@@ -11021,6 +11032,7 @@ var EXAM_RESULT = {
11021
11032
  classAverageTime: 2.596,
11022
11033
  topDuration: 2.596,
11023
11034
  answerResponseSignal: 1,
11035
+ score: 2,
11024
11036
  isCorrect: false,
11025
11037
  answerTime: "2024-03-13T04:29:10.648+00:00",
11026
11038
  article: 2,
@@ -11043,6 +11055,7 @@ var EXAM_RESULT = {
11043
11055
  classAverageTime: 0.899,
11044
11056
  topDuration: 0.899,
11045
11057
  answerResponseSignal: 1,
11058
+ score: 2,
11046
11059
  isCorrect: false,
11047
11060
  answerTime: "2024-03-13T04:29:12.864+00:00",
11048
11061
  article: 2,
@@ -11066,6 +11079,7 @@ var EXAM_RESULT = {
11066
11079
  topDuration: 20.496,
11067
11080
  answerResponseSignal: 0,
11068
11081
  isCorrect: true,
11082
+ score: 2,
11069
11083
  answerTime: "2024-03-13T04:29:14.36+00:00",
11070
11084
  article: 2,
11071
11085
  category: {
@@ -11087,6 +11101,7 @@ var EXAM_RESULT = {
11087
11101
  classAverageTime: 0,
11088
11102
  topDuration: null,
11089
11103
  answerResponseSignal: null,
11104
+ score: 2,
11090
11105
  isCorrect: false,
11091
11106
  answerTime: "0001-01-01T00:00:00+00:00",
11092
11107
  article: 2,
@@ -11110,6 +11125,7 @@ var EXAM_RESULT = {
11110
11125
  topDuration: 1.317,
11111
11126
  answerResponseSignal: 1,
11112
11127
  isCorrect: true,
11128
+ score: 2,
11113
11129
  answerTime: "2024-03-13T04:29:11.965+00:00",
11114
11130
  article: 3,
11115
11131
  category: {
@@ -11131,6 +11147,7 @@ var EXAM_RESULT = {
11131
11147
  classAverageTime: 1.593,
11132
11148
  topDuration: 1.593,
11133
11149
  answerResponseSignal: 1,
11150
+ score: 2,
11134
11151
  isCorrect: false,
11135
11152
  answerTime: "2024-03-13T04:29:20.734+00:00",
11136
11153
  article: 3,
@@ -11153,6 +11170,7 @@ var EXAM_RESULT = {
11153
11170
  classAverageTime: 1.204,
11154
11171
  topDuration: 1.204,
11155
11172
  answerResponseSignal: 1,
11173
+ score: 2,
11156
11174
  isCorrect: false,
11157
11175
  answerTime: "2024-03-13T04:29:18.164+00:00",
11158
11176
  article: 3,
@@ -11175,6 +11193,7 @@ var EXAM_RESULT = {
11175
11193
  classAverageTime: 2.6,
11176
11194
  topDuration: 2.6,
11177
11195
  answerResponseSignal: 1,
11196
+ score: 2,
11178
11197
  isCorrect: false,
11179
11198
  answerTime: "2024-03-13T04:29:16.96+00:00",
11180
11199
  article: 3,
@@ -11197,6 +11216,7 @@ var EXAM_RESULT = {
11197
11216
  classAverageTime: 0.977,
11198
11217
  topDuration: 0.977,
11199
11218
  answerResponseSignal: 1,
11219
+ score: 2,
11200
11220
  isCorrect: true,
11201
11221
  answerTime: "2024-03-13T04:29:19.141+00:00",
11202
11222
  article: 3,
@@ -11725,12 +11745,12 @@ var useExamResult = function useExamResult(props) {
11725
11745
  setCategoryResponses(((_result$4$data2 = result[4].data) === null || _result$4$data2 === void 0 ? void 0 : _result$4$data2.data) || []);
11726
11746
  return isStudent ? _temp3(!isStudent && createRecentUserActionListApi({
11727
11747
  userId: studentId,
11728
- action: RecentUserAction$1.ViewedExamResult,
11748
+ action: isPrint ? RecentUserAction$1.PrintedExamResult : RecentUserAction$1.ViewedExamResult,
11729
11749
  data: "" + examSessionId,
11730
11750
  roles: [exports.Role.Teacher]
11731
11751
  })) : Promise.resolve(!isStudent && createRecentUserActionListApi({
11732
11752
  userId: studentId,
11733
- action: RecentUserAction$1.ViewedExamResult,
11753
+ action: isPrint ? RecentUserAction$1.PrintedExamResult : RecentUserAction$1.ViewedExamResult,
11734
11754
  data: "" + examSessionId,
11735
11755
  roles: [exports.Role.Teacher]
11736
11756
  })).then(_temp3);
@@ -14694,7 +14714,7 @@ var usePrintExamResult = function usePrintExamResult(isDataFetching, fileName, t
14694
14714
  var autoPrintPdf = function autoPrintPdf() {
14695
14715
  if (printState === PrintState.Printing) return;
14696
14716
  if (autoPrint && printState !== PrintState.Default) return;
14697
- if (totalChart !== renderedCharts.length) {
14717
+ if (totalChart !== 0 && totalChart !== renderedCharts.length) {
14698
14718
  !autoPrint && setPrintState(PrintState.Pending);
14699
14719
  return;
14700
14720
  }
@@ -14823,6 +14843,8 @@ var studentNameStyle = {
14823
14843
  var PrintExamResult = function PrintExamResult(_ref) {
14824
14844
  var resultData = _ref.resultData,
14825
14845
  examTime = _ref.examTime,
14846
+ status = _ref.status,
14847
+ isShow = _ref.isShow,
14826
14848
  isStudent = _ref.isStudent,
14827
14849
  categoryResponses = _ref.categoryResponses,
14828
14850
  timelyOrderQuestions = _ref.timelyOrderQuestions,
@@ -14950,7 +14972,7 @@ var PrintExamResult = function PrintExamResult(_ref) {
14950
14972
  fontWeight: 600,
14951
14973
  color: styles.gray_700
14952
14974
  }
14953
- }, resultData === null || resultData === void 0 ? void 0 : resultData.teacherName)))))), React__default.createElement(material.Stack, {
14975
+ }, resultData === null || resultData === void 0 ? void 0 : resultData.teacherName)))))), (!status || (isShow === null || isShow === void 0 ? void 0 : isShow(TabList[0].value))) && React__default.createElement(material.Stack, {
14954
14976
  display: "flex",
14955
14977
  flexDirection: "column",
14956
14978
  gap: "12px"
@@ -14960,7 +14982,7 @@ var PrintExamResult = function PrintExamResult(_ref) {
14960
14982
  data: resultData,
14961
14983
  categories: categoryResponses,
14962
14984
  isStudent: isStudent
14963
- })), React__default.createElement(material.Stack, {
14985
+ })), (!status || (isShow === null || isShow === void 0 ? void 0 : isShow(TabList[1].value))) && React__default.createElement(material.Stack, {
14964
14986
  display: "flex",
14965
14987
  flexDirection: "column",
14966
14988
  gap: "12px",
@@ -14987,7 +15009,7 @@ var PrintExamResult = function PrintExamResult(_ref) {
14987
15009
  series: allSeries[index],
14988
15010
  setIsRendered: setRenderedChart
14989
15011
  });
14990
- })), React__default.createElement(material.Stack, {
15012
+ })), (!status || (isShow === null || isShow === void 0 ? void 0 : isShow(TabList[2].value))) && React__default.createElement(material.Stack, {
14991
15013
  display: "flex",
14992
15014
  flexDirection: "column",
14993
15015
  gap: "12px",
@@ -14996,7 +15018,7 @@ var PrintExamResult = function PrintExamResult(_ref) {
14996
15018
  sx: textStyle
14997
15019
  }, i18n.t(TabList[2].label)), React__default.createElement(CompareGrass, {
14998
15020
  effectSize: effectSize
14999
- })), React__default.createElement(material.Stack, {
15021
+ })), (!status || (isShow === null || isShow === void 0 ? void 0 : isShow(TabList[3].value))) && React__default.createElement(material.Stack, {
15000
15022
  display: "flex",
15001
15023
  flexDirection: "column",
15002
15024
  gap: "12px",
@@ -16615,6 +16637,15 @@ var usePrintView = function usePrintView(_ref) {
16615
16637
  var _useState = React.useState(false),
16616
16638
  isDone = _useState[0],
16617
16639
  setDone = _useState[1];
16640
+ var _useLocation = reactRouterDom.useLocation(),
16641
+ search = _useLocation.search;
16642
+ var query = new URLSearchParams(search);
16643
+ var status = query.get('status') || '';
16644
+ var isShow = function isShow(value) {
16645
+ return (status === null || status === void 0 ? void 0 : status.split(',').some(function (i) {
16646
+ return i === value.toString();
16647
+ })) || false;
16648
+ };
16618
16649
  var handelPrintSuccess = function handelPrintSuccess() {
16619
16650
  var _window$opener$postMe, _window$opener;
16620
16651
  var data;
@@ -16661,6 +16692,8 @@ var usePrintView = function usePrintView(_ref) {
16661
16692
  return {
16662
16693
  fileName: fileName,
16663
16694
  isDone: isDone,
16695
+ status: status,
16696
+ isShow: isShow,
16664
16697
  handelPrintSuccess: handelPrintSuccess,
16665
16698
  handelPrintError: handelPrintError
16666
16699
  };
@@ -16729,9 +16762,11 @@ var PrintExamResultView = function PrintExamResultView(_ref) {
16729
16762
  }),
16730
16763
  fileName = _usePrintView.fileName,
16731
16764
  isDone = _usePrintView.isDone,
16765
+ status = _usePrintView.status,
16766
+ isShow = _usePrintView.isShow,
16732
16767
  handelPrintSuccess = _usePrintView.handelPrintSuccess,
16733
16768
  handelPrintError = _usePrintView.handelPrintError;
16734
- var _usePrintExamResult = usePrintExamResult(isLoading, fileName, timelyOrderQuestions.length, handelPrintSuccess, handelPrintError, true),
16769
+ var _usePrintExamResult = usePrintExamResult(isLoading, fileName, !status || isShow !== null && isShow !== void 0 && isShow(TabList[1].value) ? timelyOrderQuestions.length : 0, handelPrintSuccess, handelPrintError, true),
16735
16770
  contentRef = _usePrintExamResult.contentRef,
16736
16771
  setRenderedChart = _usePrintExamResult.setRenderedChart;
16737
16772
  var isTabletUp = material.useMediaQuery("(min-width:900px)");
@@ -16754,6 +16789,8 @@ var PrintExamResultView = function PrintExamResultView(_ref) {
16754
16789
  timelyOrderQuestions: timelyOrderQuestions,
16755
16790
  isMyStoryStudent: isMyStoryStudent,
16756
16791
  fileName: fileName,
16792
+ isShow: isShow,
16793
+ status: status,
16757
16794
  setRenderedChart: setRenderedChart
16758
16795
  }) : isLoading === undefined || isLoading === true ? React__default.createElement(LoadingComponent, {
16759
16796
  isLoading: !!isLoading,
@@ -16776,6 +16813,20 @@ var PrintState$1;
16776
16813
  PrintState[PrintState["Paused"] = 3] = "Paused";
16777
16814
  })(PrintState$1 || (PrintState$1 = {}));
16778
16815
 
16816
+ var TabList$1 = [{
16817
+ label: "comprehensive_analysis",
16818
+ value: 0
16819
+ }, {
16820
+ label: "solution_order",
16821
+ value: 1
16822
+ }, {
16823
+ label: "compare_solution",
16824
+ value: 2
16825
+ }, {
16826
+ label: "problem_analysis",
16827
+ value: 3
16828
+ }];
16829
+
16779
16830
  var TOTAL = 3;
16780
16831
  var PrintExamView2 = function PrintExamView2(_ref) {
16781
16832
  var history = _ref.history,
@@ -16810,7 +16861,23 @@ var PrintExamView2 = function PrintExamView2(_ref) {
16810
16861
  var _useState5 = React.useState([]),
16811
16862
  errorLinks = _useState5[0],
16812
16863
  setErrorLinks = _useState5[1];
16864
+ var _useState6 = React.useState([]),
16865
+ status = _useState6[0],
16866
+ setStatus = _useState6[1];
16813
16867
  var theme = material.useTheme();
16868
+ var handleChangeStatus = function handleChangeStatus(event) {
16869
+ if (event.target.checked) {
16870
+ setStatus(function (prev) {
16871
+ var _event$target;
16872
+ return [].concat(prev, [(_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value]);
16873
+ });
16874
+ } else setStatus(function (prev) {
16875
+ return prev === null || prev === void 0 ? void 0 : prev.filter(function (i) {
16876
+ var _event$target2;
16877
+ return i !== ((_event$target2 = event.target) === null || _event$target2 === void 0 ? void 0 : _event$target2.value);
16878
+ });
16879
+ });
16880
+ };
16814
16881
  var handleProgressPrint = function handleProgressPrint() {
16815
16882
  setData(dataProps);
16816
16883
  setCompleted([]);
@@ -16818,6 +16885,9 @@ var PrintExamView2 = function PrintExamView2(_ref) {
16818
16885
  setErrorLinks([]);
16819
16886
  setState(PrintState$1.Printing);
16820
16887
  };
16888
+ console.log({
16889
+ status: status
16890
+ });
16821
16891
  var print = function print(_ref2) {
16822
16892
  var examSessionId = _ref2.examSessionId,
16823
16893
  studentId = _ref2.studentId,
@@ -16826,7 +16896,7 @@ var PrintExamView2 = function PrintExamView2(_ref) {
16826
16896
  var height = 200;
16827
16897
  var left = window.screenX + window.outerWidth / 2 - width / 2;
16828
16898
  var top = window.screenY + window.outerHeight / 2 - height / 2;
16829
- var url = isTeacher ? window.location.origin + "/teacher/exam-results/" + examSessionId + "/students/" + studentId + "/print" : window.location.origin + "/student/exam-results/" + code + "/print";
16899
+ var url = isTeacher ? window.location.origin + "/teacher/exam-results/" + examSessionId + "/students/" + studentId + "/print?status=" + status.join(",") : window.location.origin + "/student/exam-results/" + code + "/print";
16830
16900
  var windowName = isTeacher ? "popup-" + examSessionId + "-" + studentId : "popup-" + code;
16831
16901
  var windowSpecs = "left=" + left + ",top=" + top + ",width=" + width + ",height=" + height + ",location=yes,resizable=yes,scrollbars=yes,status=yes";
16832
16902
  var childWindow = window.open(url, windowName, windowSpecs);
@@ -16988,7 +17058,29 @@ var PrintExamView2 = function PrintExamView2(_ref) {
16988
17058
  disablePadding: true
16989
17059
  }, t("allowed_to_send_pop_ups_and_use_redirects")), React__default.createElement(material.ListItem, {
16990
17060
  disablePadding: true
16991
- }, t("disable_ask_where_to_save_each_file_before_downloading")))), React__default.createElement(material.Button, {
17061
+ }, t("disable_ask_where_to_save_each_file_before_downloading")))), isTeacher && React__default.createElement(material.Stack, null, React__default.createElement(material.Typography, {
17062
+ fontWeight: 700
17063
+ }, t("choose_to_print"), ":"), React__default.createElement(material.FormGroup, {
17064
+ sx: {
17065
+ display: "flex",
17066
+ flexDirection: "row",
17067
+ gap: 1,
17068
+ flexWrap: "wrap"
17069
+ }
17070
+ }, TabList$1.map(function (_ref3) {
17071
+ var label = _ref3.label,
17072
+ value = _ref3.value;
17073
+ return React__default.createElement(material.FormControlLabel, {
17074
+ control: React__default.createElement(material.Checkbox, {
17075
+ onChange: handleChangeStatus,
17076
+ value: value,
17077
+ checked: status.some(function (i) {
17078
+ return i === value.toString();
17079
+ })
17080
+ }),
17081
+ label: t(label)
17082
+ });
17083
+ }))), React__default.createElement(material.Button, {
16992
17084
  className: "mt-3",
16993
17085
  variant: "contained",
16994
17086
  onClick: handleProgressPrint