performanceresultscreens 0.0.12 → 0.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/components/Atoms/ExtractedDiagramView/ExtractedDiagramView.d.ts +1 -1
  2. package/dist/components/Atoms/ExtractedDiagramView/ExtractedDiagramView.js +5 -2
  3. package/dist/components/Atoms/ExtractedDiagramView/ExtractedDiagramView.js.map +1 -1
  4. package/dist/components/Atoms/TranscriptionImagePreview/TranscriptionImagePreview.js +1 -1
  5. package/dist/components/Atoms/TranscriptionImagePreview/TranscriptionImagePreview.js.map +1 -1
  6. package/dist/components/Molecules/AccordianPay4/Accordian.d.ts +1 -1
  7. package/dist/components/Molecules/AccordianPay4/Accordian.js +8 -9
  8. package/dist/components/Molecules/AccordianPay4/Accordian.js.map +1 -1
  9. package/dist/components/Molecules/AccordianPay4/Accordian.stories.d.ts +1 -0
  10. package/dist/components/Molecules/AccordianPay4/Accordian.stories.js +11 -1
  11. package/dist/components/Molecules/AccordianPay4/Accordian.stories.js.map +1 -1
  12. package/dist/components/Molecules/Descriptive/DescriptiveLabel.d.ts +2 -1
  13. package/dist/components/Molecules/Descriptive/DescriptiveLabel.js +4 -2
  14. package/dist/components/Molecules/Descriptive/DescriptiveLabel.js.map +1 -1
  15. package/dist/components/Molecules/Descriptive/descriptiveStyles.d.ts +12 -4
  16. package/dist/components/Molecules/Descriptive/descriptiveStyles.js +5 -0
  17. package/dist/components/Molecules/Descriptive/descriptiveStyles.js.map +1 -1
  18. package/dist/components/Molecules/DescriptiveAnswer/DescriptiveAnswerV1.js +49 -31
  19. package/dist/components/Molecules/DescriptiveAnswer/DescriptiveAnswerV1.js.map +1 -1
  20. package/dist/components/Molecules/MediaModal/MediaModal.js +2 -2
  21. package/dist/components/Molecules/MediaModal/MediaModal.js.map +1 -1
  22. package/dist/components/Molecules/Pay4Use/ExecutionModal.js +2 -6
  23. package/dist/components/Molecules/Pay4Use/ExecutionModal.js.map +1 -1
  24. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.d.ts +1 -0
  25. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.js +14 -3
  26. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.js.map +1 -1
  27. package/dist/components/Molecules/PerformanceScreen/QuizResult.styles.js +73 -68
  28. package/dist/components/Molecules/PerformanceScreen/QuizResult.styles.js.map +1 -1
  29. package/dist/components/Molecules/SmartLearn/SmartLearn.d.ts +2 -2
  30. package/dist/components/Molecules/SmartLearn/SmartLearn.js +34 -17
  31. package/dist/components/Molecules/SmartLearn/SmartLearn.js.map +1 -1
  32. package/dist/components/Molecules/SmartLearn/SmartLearn.stories.d.ts +3 -2
  33. package/dist/components/Molecules/SmartLearn/SmartLearn.stories.js +32 -20
  34. package/dist/components/Molecules/SmartLearn/SmartLearn.stories.js.map +1 -1
  35. package/dist/components/Molecules/SmartLearn/SmartLearn.styles.d.ts +46 -2
  36. package/dist/components/Molecules/SmartLearn/SmartLearn.styles.js +47 -3
  37. package/dist/components/Molecules/SmartLearn/SmartLearn.styles.js.map +1 -1
  38. package/dist/components/Molecules/SmartLearn/types.d.ts +1 -1
  39. package/dist/components/Molecules/StaticscreensLearnmore/Staticback.js +8 -4
  40. package/dist/components/Molecules/StaticscreensLearnmore/Staticback.js.map +1 -1
  41. package/dist/components/Molecules/StaticscreensLearnmore/Staticback.styles.d.ts +1 -1
  42. package/dist/components/Molecules/StaticscreensLearnmore/Staticback.styles.js +3 -3
  43. package/dist/components/Molecules/StaticscreensLearnmore/Staticback.styles.js.map +1 -1
  44. package/dist/components/Molecules/Tutor/Assistant/Assistant.js +119 -29
  45. package/dist/components/Molecules/Tutor/Assistant/Assistant.js.map +1 -1
  46. package/dist/components/Molecules/Tutor/Assistant/Assistant.styles.d.ts +93 -1
  47. package/dist/components/Molecules/Tutor/Assistant/Assistant.styles.js +77 -6
  48. package/dist/components/Molecules/Tutor/Assistant/Assistant.styles.js.map +1 -1
  49. package/dist/components/Molecules/Tutor/Assistant/TutorAssistant.js +1 -1
  50. package/dist/components/Molecules/Tutor/Assistant/TutorAssistant.js.map +1 -1
  51. package/dist/components/Molecules/Tutor/User/User.js +22 -2
  52. package/dist/components/Molecules/Tutor/User/User.js.map +1 -1
  53. package/dist/components/Molecules/Tutor/User/User.stories.d.ts +1 -0
  54. package/dist/components/Molecules/Tutor/User/User.stories.js +92 -1
  55. package/dist/components/Molecules/Tutor/User/User.stories.js.map +1 -1
  56. package/dist/components/Molecules/comprehension/ComprehensionLayout.d.ts +11 -1
  57. package/dist/components/Molecules/comprehension/ComprehensionLayout.js +52 -19
  58. package/dist/components/Molecules/comprehension/ComprehensionLayout.js.map +1 -1
  59. package/dist/components/Molecules/optionLayouts/scqtemp.js +168 -55
  60. package/dist/components/Molecules/optionLayouts/scqtemp.js.map +1 -1
  61. package/dist/components/Molecules/questionLayouts/QuestionsLayout.js +166 -101
  62. package/dist/components/Molecules/questionLayouts/QuestionsLayout.js.map +1 -1
  63. package/dist/components/Organisms/PostDetails/PostInfo.js +7 -3
  64. package/dist/components/Organisms/PostDetails/PostInfo.js.map +1 -1
  65. package/dist/components/Organisms/ReviewComponent/ChatPresenter.js +2 -2
  66. package/dist/components/Organisms/ReviewComponent/ChatPresenter.js.map +1 -1
  67. package/dist/components/Organisms/ReviewComponent/Review.d.ts +12 -1
  68. package/dist/components/Organisms/ReviewComponent/Review.js +147 -50
  69. package/dist/components/Organisms/ReviewComponent/Review.js.map +1 -1
  70. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.d.ts +12 -1
  71. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.js +7 -8
  72. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.js.map +1 -1
  73. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.stories.d.ts +62 -0
  74. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.stories.js +47 -1
  75. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.stories.js.map +1 -1
  76. package/dist/components/Organisms/ReviewComponent/reviewUtils.d.ts +21 -80
  77. package/dist/components/Organisms/ReviewComponent/reviewUtils.js +67 -51
  78. package/dist/components/Organisms/ReviewComponent/reviewUtils.js.map +1 -1
  79. package/dist/components/Organisms/ReviewComponent/selectionUtils.d.ts +1715 -0
  80. package/dist/components/Organisms/ReviewComponent/selectionUtils.js +2898 -1
  81. package/dist/components/Organisms/ReviewComponent/selectionUtils.js.map +1 -1
  82. package/dist/components/Organisms/StudentEditor/StudentEditor.stories.js +14 -9
  83. package/dist/components/Organisms/StudentEditor/StudentEditor.stories.js.map +1 -1
  84. package/dist/components/Organisms/StudentEditor/components/MathModal.js +3 -0
  85. package/dist/components/Organisms/StudentEditor/components/MathModal.js.map +1 -1
  86. package/dist/components/Organisms/StudentEditor/components/TextEditor.js +145 -85
  87. package/dist/components/Organisms/StudentEditor/components/TextEditor.js.map +1 -1
  88. package/dist/components/Organisms/StudentEditor/utils/keyboard-config.d.ts +4 -4
  89. package/dist/components/Organisms/StudentEditor/utils/keyboard-config.js +52 -52
  90. package/dist/components/Organisms/StudentEditor/utils/keyboard-config.js.map +1 -1
  91. package/dist/index.d.ts +3 -0
  92. package/dist/index.js +7 -1
  93. package/dist/index.js.map +1 -1
  94. package/dist/utils/LearningPathUtils.d.ts +1 -0
  95. package/dist/utils/LearningPathUtils.js +2 -1
  96. package/dist/utils/LearningPathUtils.js.map +1 -1
  97. package/dist/utils/common-utils.js.map +1 -1
  98. package/dist/utils/presentationModes.d.ts +59 -0
  99. package/dist/utils/presentationModes.js +36 -1
  100. package/dist/utils/presentationModes.js.map +1 -1
  101. package/package.json +4 -1
@@ -37,16 +37,10 @@ const presentationModes_1 = require("../../../utils/presentationModes");
37
37
  const tutor_utils_1 = require("../../../utils/tutor-utils");
38
38
  const crypto_1 = require("../../../utils/crypto");
39
39
  const Scqtemp = (props) => {
40
- const { options, userAnswer, onAnswerSubmitted: propOnAnswerSubmitted, handleAnswerChange, option_image_details, currentQuestion, taskType, answer, isDontAllow, isStandaloneWithSubjectMapping, isStandalone, isReviewScreen, isFactual, styles, icons, presenterLogic, } = props;
40
+ const { options, userAnswer, onAnswerSubmitted: propOnAnswerSubmitted, handleAnswerChange, option_image_details, currentQuestion, taskType, answer, isDontAllow, isStandaloneWithSubjectMapping, isStandalone, isReviewScreen, isFactual, styles, icons, presenterLogic, setLayoutType, } = props;
41
+ const [windowWidth, setWindowWidth] = (0, react_1.useState)(typeof window !== "undefined" ? window.innerWidth : 1024);
41
42
  const [value, setValue] = (0, react_1.useState)();
42
43
  const [optionsData, setOptionsData] = (0, react_1.useState)([]);
43
- (0, react_1.useEffect)(() => {
44
- let answerValue = (0, common_utils_1.isNotEmptyOrNull)(userAnswer)
45
- ? (0, common_utils_1.handleRemoveExtraSpaceInBubbles)((0, common_utils_1.extractGivenAnswers)(userAnswer)?.[0])
46
- : "";
47
- setValue(answerValue);
48
- setOptionsData(options.map((item) => (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(item)));
49
- }, [options]);
50
44
  const [isOpen, setIsOpen] = (0, react_1.useState)(false);
51
45
  const [imageIndex, setImageIndex] = (0, react_1.useState)();
52
46
  const [onAnswerSubmitted, setOnAnswerSubmitted, onAnswerSubmittedRef] = (0, react_usestateref_1.default)(propOnAnswerSubmitted
@@ -61,16 +55,94 @@ const Scqtemp = (props) => {
61
55
  : isStandalone || isStandaloneWithSubjectMapping
62
56
  ? LearningPathUtils_1.taskTypes.standalone
63
57
  : taskType));
64
- const handleOnChange = (item) => {
58
+ (0, react_1.useEffect)(() => {
59
+ let answerValue = (0, common_utils_1.isNotEmptyOrNull)(userAnswer)
60
+ ? (0, common_utils_1.handleRemoveExtraSpaceInBubbles)((0, common_utils_1.extractGivenAnswers)(userAnswer)?.[0])
61
+ : "";
62
+ setValue(answerValue);
63
+ setOptionsData(options.map((item) => (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(item)));
64
+ }, [options]);
65
+ (0, react_1.useEffect)(() => {
66
+ const handleResize = () => setWindowWidth(window.innerWidth);
67
+ window.addEventListener("resize", handleResize);
68
+ return () => window.removeEventListener("resize", handleResize);
69
+ }, []);
70
+ const screenConfig = (0, react_1.useMemo)(() => {
71
+ if (windowWidth >= 1536)
72
+ return {
73
+ characterCount: 30,
74
+ screenSize: "desktop",
75
+ };
76
+ if (windowWidth >= 1400)
77
+ return {
78
+ characterCount: 30,
79
+ screenSize: "desktop",
80
+ };
81
+ if (windowWidth >= 1280)
82
+ return {
83
+ characterCount: 24,
84
+ screenSize: "desktop",
85
+ };
86
+ if (windowWidth >= 1100)
87
+ return {
88
+ characterCount: 20,
89
+ screenSize: "desktop",
90
+ };
91
+ if (windowWidth >= 992)
92
+ return {
93
+ characterCount: 14,
94
+ screenSize: "desktop",
95
+ };
96
+ if (windowWidth >= 768)
97
+ return {
98
+ characterCount: 12,
99
+ screenSize: "tablet",
100
+ };
101
+ return { characterCount: 6, screenSize: "mobile" };
102
+ }, [windowWidth]);
103
+ const layoutType = (0, react_1.useMemo)(() => {
104
+ const { characterCount, screenSize } = screenConfig;
105
+ if (option_image_details?.length > 0) {
106
+ if (screenSize === "mobile")
107
+ return "column";
108
+ return "twoRows";
109
+ }
110
+ if (screenSize === "mobile")
111
+ return "column";
112
+ const checkLongString = (0, common_utils_1.hasLongString)(optionsData, characterCount);
113
+ if (screenSize === "tablet") {
114
+ return checkLongString ? "column" : "twoRows";
115
+ }
116
+ if (screenSize === "desktop") {
117
+ const checkLongStringTwoRows = (0, common_utils_1.hasLongString)(optionsData, characterCount + 2);
118
+ if (!checkLongStringTwoRows && checkLongString)
119
+ return "twoRows";
120
+ if (checkLongStringTwoRows)
121
+ return "column";
122
+ return "row";
123
+ }
124
+ return "row";
125
+ }, [screenConfig, optionsData, option_image_details]);
126
+ (0, react_1.useEffect)(() => {
127
+ setLayoutType?.(layoutType);
128
+ }, [layoutType, setLayoutType]);
129
+ const handleOnChange = (0, react_1.useCallback)((item) => {
65
130
  setValue(item);
66
131
  handleAnswerChange({ selectedItem: item });
67
- };
132
+ }, [handleAnswerChange]);
133
+ const openImage = (0, react_1.useCallback)((index) => {
134
+ setImageIndex(index);
135
+ setIsOpen(true);
136
+ }, []);
137
+ const handleClose = (0, react_1.useCallback)(() => {
138
+ setIsOpen(false);
139
+ }, []);
68
140
  (0, react_1.useEffect)(() => {
69
141
  if (propOnAnswerSubmitted) {
70
142
  setOnAnswerSubmitted(propOnAnswerSubmitted);
71
143
  }
72
144
  }, [propOnAnswerSubmitted]);
73
- const getAnswerStyle = (item, value, answerSubmitted, imagesList, currentQuestion, index) => {
145
+ const getAnswerStyle = (0, react_1.useCallback)((item, value, answerSubmitted, imagesList, currentQuestion, index) => {
74
146
  if ((0, common_utils_1.isNotEmptyOrNull)(currentQuestion?.answers_index_hashed_keys)) {
75
147
  item = (0, crypto_1.answers_index_hashed_keys)(currentQuestion?.uuid + common_utils_1.passphrase + index);
76
148
  }
@@ -142,50 +214,91 @@ const Scqtemp = (props) => {
142
214
  return imagesList?.length > 0 ? "scq-card" : "scq-card-noimage";
143
215
  }
144
216
  }
145
- };
146
- const openImage = (index) => {
147
- setImageIndex(index);
148
- setIsOpen(true);
149
- };
150
- const handleClose = () => {
151
- setIsOpen(false);
152
- };
153
- let isStudent = presenterLogic?.isStudent === common_utils_1.reviewUserRoles?.STUDENT;
154
- return ((0, jsx_runtime_1.jsxs)("div", { style: isDontAllow ? { pointerEvents: "none" } : {}, children: [(0, jsx_runtime_1.jsx)(react_2.Flex, { flexDirection: [
155
- "column",
156
- (0, common_utils_1.hasLongString)(optionsData) ? "column" : "row",
157
- (0, common_utils_1.hasLongString)(optionsData) ? "column" : "row",
158
- ], gap: "14px", children: optionsData.map((item, index) => {
159
- //for student
160
- let correctAnswerIndicator = getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-correct" ||
161
- getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-correct-noimage";
162
- let wrongAnswerIndicator = getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-wrong" ||
163
- getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-wrong-noimage";
164
- return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsxs)(react_2.Box, { className: styles[getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index)], variant: "outlined", cursor: "pointer", onClick: () => {
165
- !onAnswerSubmittedRef.current && handleOnChange(item);
166
- }, display: isStudent && "flex", justifyContent: isStudent && "space-between", alignItems: isStudent && "center", gap: isStudent && "8px", children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: "flex", alignItems: "center" }, children: [(0, jsx_runtime_1.jsx)(react_2.Box, { borderRadius: "50%", bgColor: "white", padding: "8px", borderColor: "#8f82d7", borderWidth: "1px", display: "flex", h: "28px", justifyContent: "center", alignItems: "center", children: (0, jsx_runtime_1.jsx)(react_2.Text, { as: "b", fontSize: "md", children: String.fromCharCode(65 + index) }) }), (0, jsx_runtime_1.jsxs)("div", { className: styles["scq-content"], children: [(0, jsx_runtime_1.jsx)(react_2.Text, { className: styles[taskType === LearningPathUtils_1.taskTypes.assessment || isFactual
167
- ? !onAnswerSubmittedRef.current
168
- ? item === value
169
- ? "scq-text-selected"
170
- : "scq-text"
171
- : (item === value || item === answer[0]) &&
172
- isReviewScreen
173
- ? "scq-text-selected"
174
- : "scq-text"
175
- : item === value ||
176
- (item === answer[0] &&
177
- onAnswerSubmittedRef.current &&
178
- presentationMode.DisplayCorrectAnswerAfterNextClick &&
179
- currentQuestion?.showGreen)
180
- ? "scq-text-selected"
181
- : "scq-text"], variant: "body2", color: correctAnswerIndicator || wrongAnswerIndicator
182
- ? "black"
183
- : "", children: (0, tutor_utils_1.renderContent)(item) }), option_image_details?.length > 0 && ((0, jsx_runtime_1.jsx)(react_2.Image, { className: styles["scq-image"], onClick: () => openImage(index), src: option_image_details?.[index]?.url, alt: `Image ${index}` }))] })] }), isStudent && ((0, jsx_runtime_1.jsx)(react_2.Box, { display: "flex", children: (0, jsx_runtime_1.jsx)(react_2.Image, { visibility: correctAnswerIndicator || wrongAnswerIndicator
184
- ? "visible"
185
- : "hidden", src: correctAnswerIndicator
186
- ? icons?.CheckmarkCircle
187
- : icons?.closeCircle, width: "24px", height: "24px" }) }))] }) }, index));
188
- }) }), isOpen && ((0, jsx_runtime_1.jsx)("div", { style: { background: "blue" }, children: (0, jsx_runtime_1.jsx)(imageModal_1.default, { isOpen: isOpen, handleClose: handleClose, url: option_image_details?.[imageIndex]?.url }, Math.random()) }))] }));
217
+ }, [presentationMode, isReviewScreen, taskType, isFactual, answer]);
218
+ const renderSingleOption = (0, react_1.useCallback)((item, index, isColumn = false) => {
219
+ const correctAnswerIndicator = getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-correct" ||
220
+ getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-correct-noimage";
221
+ const wrongAnswerIndicator = getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-wrong" ||
222
+ getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index) === "scq-card-wrong-noimage";
223
+ let isStudent = presenterLogic?.isStudent === common_utils_1.reviewUserRoles?.STUDENT;
224
+ return ((0, jsx_runtime_1.jsxs)(react_2.Box, { className: `${styles[getAnswerStyle(item, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, index)]} ${layoutType === "twoRows"
225
+ ? option_image_details?.length === 0
226
+ ? styles.twoRowOptions
227
+ : ""
228
+ : ""}`, variant: "outlined", cursor: "pointer", onClick: () => {
229
+ !onAnswerSubmittedRef.current && handleOnChange(item);
230
+ }, display: isStudent && "flex", justifyContent: isStudent && "space-between", alignItems: isStudent && "center", gap: isStudent && "8px", style: {
231
+ cursor: !onAnswerSubmittedRef.current && isDontAllow
232
+ ? "pointer"
233
+ : "default",
234
+ pointerEvents: isDontAllow ? "none" : "auto",
235
+ }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: "flex", alignItems: "center" }, children: [(0, jsx_runtime_1.jsx)(react_2.Box, { borderRadius: "50%", bgColor: correctAnswerIndicator
236
+ ? "#456125" // Correct answer alphabet background
237
+ : "#414141" // Default
238
+ , padding: "8px", color: "#F1F1F1", borderColor: correctAnswerIndicator ? "#456125" : "#414141", borderWidth: "1px", display: "flex", h: "28px", justifyContent: "center", alignItems: "center", children: (0, jsx_runtime_1.jsx)(react_2.Text, { as: "b", fontSize: "14px", fontFamily: "Inter, sans-serif", children: String.fromCharCode(65 + index) }) }), (0, jsx_runtime_1.jsxs)("div", { className: styles["scq-content"], children: [(0, jsx_runtime_1.jsx)(react_2.Text, { className: styles[taskType === LearningPathUtils_1.taskTypes.assessment || isFactual
239
+ ? !onAnswerSubmittedRef.current
240
+ ? item === value
241
+ ? "scq-text-selected"
242
+ : "scq-text"
243
+ : (item === value || item === answer?.[0]) &&
244
+ isReviewScreen
245
+ ? "scq-text-selected"
246
+ : "scq-text"
247
+ : item === value ||
248
+ (item === answer?.[0] &&
249
+ onAnswerSubmittedRef.current &&
250
+ presentationMode.DisplayCorrectAnswerAfterNextClick &&
251
+ currentQuestion?.showGreen)
252
+ ? "scq-text-selected"
253
+ : "scq-text"], variant: "body2", color: correctAnswerIndicator || wrongAnswerIndicator ? "white" : "", children: (0, tutor_utils_1.renderContent)(item) }), option_image_details?.length > 0 &&
254
+ option_image_details[index] && ((0, jsx_runtime_1.jsx)(react_2.Image, { className: styles["scq-image"], onClick: () => openImage(index), src: option_image_details?.[index]?.url, alt: `Image ${index}`, style: { cursor: "pointer" } }))] })] }), isStudent && ((0, jsx_runtime_1.jsx)(react_2.Box, { display: "flex", children: (0, jsx_runtime_1.jsx)(react_2.Image, { visibility: correctAnswerIndicator || wrongAnswerIndicator
255
+ ? "visible"
256
+ : "hidden", src: correctAnswerIndicator
257
+ ? icons?.CheckmarkCircle
258
+ : icons?.closeCircle, width: "24px", height: "24px" }) }))] }, index));
259
+ }, [
260
+ getAnswerStyle,
261
+ value,
262
+ onAnswerSubmittedRef,
263
+ option_image_details,
264
+ currentQuestion,
265
+ handleOnChange,
266
+ openImage,
267
+ presenterLogic,
268
+ taskType,
269
+ isFactual,
270
+ answer,
271
+ isReviewScreen,
272
+ presentationMode,
273
+ styles,
274
+ icons,
275
+ isDontAllow,
276
+ layoutType,
277
+ ]);
278
+ const renderedOptions = (0, react_1.useMemo)(() => {
279
+ if (!optionsData?.length)
280
+ return null;
281
+ if (layoutType === "twoRows") {
282
+ const rows = [];
283
+ for (let i = 0; i < optionsData?.length; i += 2) {
284
+ rows.push(optionsData?.slice(i, i + 2));
285
+ }
286
+ return ((0, jsx_runtime_1.jsx)(react_2.Box, { className: styles.twoRowsWrapper, children: rows.map((row, rowIndex) => ((0, jsx_runtime_1.jsx)(react_2.Box, { className: styles.rowContainer, children: row.map((item, idx) => {
287
+ const actualIndex = rowIndex * 2 + idx;
288
+ return ((0, jsx_runtime_1.jsx)(react_2.Box, { children: renderSingleOption(item, actualIndex, false) }, actualIndex));
289
+ }) }, rowIndex))) }));
290
+ }
291
+ return optionsData.map((item, index) => renderSingleOption(item, index, layoutType === "column"));
292
+ }, [optionsData, layoutType, renderSingleOption]);
293
+ const wrapperClasses = (0, react_1.useMemo)(() => {
294
+ const classes = [styles.optionsWrapper];
295
+ if (layoutType === "column")
296
+ classes.push(styles.columnWrapper);
297
+ if (layoutType === "twoRows")
298
+ classes.push(styles.twoRowsContainer);
299
+ return classes.join(" ");
300
+ }, [layoutType, styles]);
301
+ return ((0, jsx_runtime_1.jsxs)("div", { style: isDontAllow ? { pointerEvents: "none" } : {}, children: [(0, jsx_runtime_1.jsx)(react_2.Box, { className: wrapperClasses, children: renderedOptions }), isOpen && ((0, jsx_runtime_1.jsx)("div", { style: { background: "blue" }, children: (0, jsx_runtime_1.jsx)(imageModal_1.default, { isOpen: isOpen, handleClose: handleClose, url: option_image_details?.[imageIndex]?.url }, Math.random()) }))] }));
189
302
  };
190
303
  exports.default = Scqtemp;
191
304
  //# sourceMappingURL=scqtemp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scqtemp.js","sourceRoot":"","sources":["../../../../src/components/Molecules/optionLayouts/scqtemp.jsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scqtemp.js","sourceRoot":"","sources":["../../../../src/components/Molecules/optionLayouts/scqtemp.jsx"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.QuestionsLayout = void 0;
7
7
  const jsx_runtime_1 = require("react/jsx-runtime");
8
8
  const react_1 = require("@chakra-ui/react");
9
+ const icons_1 = require("@chakra-ui/icons");
9
10
  const react_2 = require("react");
10
11
  // import NewQuestionImage from "../../../assets/svgs/newQuestion.svg";
11
12
  const LearningPathUtils_1 = require("../../../utils/LearningPathUtils");
@@ -16,126 +17,190 @@ const common_utils_1 = require("../../../utils/common-utils");
16
17
  const CustomButton_1 = __importDefault(require("../../Atoms/CustomButton/CustomButton"));
17
18
  const ChatPresenter_1 = __importDefault(require("../../Organisms/ReviewComponent/ChatPresenter"));
18
19
  const KeyTakeAway_1 = __importDefault(require("../../Organisms/ReviewComponent/KeyTakeAway"));
20
+ const TextEditor_1 = __importDefault(require("../../Organisms/StudentEditor/components/TextEditor"));
21
+ const slate_conversions_1 = require("../../Organisms/StudentEditor/utils/slate-conversions");
22
+ const DescriptiveAnswerV1_1 = __importDefault(require("../DescriptiveAnswer/DescriptiveAnswerV1"));
23
+ const presentationModes_1 = require("../../../utils/presentationModes");
24
+ const presentationModes_2 = require("../../../utils/presentationModes");
25
+ const DescriptiveLabel_1 = __importDefault(require("../Descriptive/DescriptiveLabel"));
19
26
  const style = {
20
- answerLayoutContainer: {
21
- marginLeft: { base: "14px", md: "14px", lg: "12px" },
22
- },
23
- hoverShow: {
24
- opacity: 0,
25
- visibility: "hidden",
26
- height: 0,
27
- transition: "opacity 0.4s ease-in-out, height 0.4s ease-in-out",
28
- },
29
- discussBox: (isFirstQuestion) => ({
30
- opacity: isFirstQuestion ? 1 : 0,
31
- visibility: isFirstQuestion ? "visible" : "hidden",
32
- height: isFirstQuestion ? "auto" : 0,
33
- transition: "opacity 0.5s ease-in-out, height 0.5s ease-in-out",
34
- }),
35
- viewDiscussBox: (isFirstQuestion, summary) => ({
36
- opacity: isFirstQuestion ? 1 : 0,
37
- visibility: isFirstQuestion ? "visible" : "hidden",
38
- height: isFirstQuestion ? "auto" : 0,
39
- transition: "opacity 0.5s ease-in-out, height 0.5s ease-in-out",
40
- }),
41
- discussBtn: {
42
- bg: "var(--Brand-800, rgba(95, 77, 199, 1))",
43
- color: "#FFFFFF",
44
- border: "1px solid #8F82D7",
45
- fontSize: "14px",
46
- h: "36px",
47
- width: "102px",
48
- },
49
- viewDiscussBtn: {
50
- border: "1px solid #130159",
51
- borderRadius: "8px",
52
- bg: "#FFFFFF",
53
- width: "160px",
54
- },
55
- summaryBox: (isFirstQuestion, assessmentConversation) => ({
56
- opacity: isFirstQuestion ? 1 : 0,
57
- height: isFirstQuestion ? "auto" : 0,
58
- transition: "opacity 0.5s ease-in-out, height 0.5s ease-in-out",
59
- mt: {
60
- base: assessmentConversation || isFirstQuestion ? "40px" : "0px",
61
- md: assessmentConversation || isFirstQuestion ? "50px" : "0px",
62
- lg: "0px",
63
- },
64
- marginLeft: "-16px",
27
+ showAnswerBtn: (isDisabled) => ({
28
+ bg: isDisabled ? "#F5F5F5" : "transparent",
29
+ border: isDisabled ? "1px solid #E0E0E0" : "1px solid #5F4DC7",
30
+ color: isDisabled ? "#BDBDBD" : "var(--Primary-Default, #5F4DC7)",
31
+ textAlign: "center",
32
+ fontFamily: "Poppins",
33
+ fontSize: "var(--Font-Size-button-sm, 14px)",
34
+ fontWeight: "500",
35
+ lineHeight: "var(--Line-Height-body-sm, 20px)",
36
+ borderRadius: "6px",
37
+ display: "flex",
38
+ alignItems: "center",
39
+ justifyContent: "center",
40
+ gap: "8px",
41
+ opacity: isDisabled ? 0.5 : 1,
42
+ cursor: isDisabled ? "not-allowed" : "pointer",
65
43
  }),
66
44
  };
67
45
  const QuestionsLayout = (props = {}) => {
68
- const { questionIndex, selectionStatus, presenterLogic, handleSelectionStatus, handleMoreQuestions, moreQuestionsAvailable, isFromParentApp, tutor_mode, isQuestionSelection = false, } = props;
46
+ const { questionIndex, selectionStatus, presenterLogic, handleSelectionStatus, handleMoreQuestions, moreQuestionsAvailable, isFromParentApp, tutor_mode, isQuestionSelection = false, isRevision, onToggleAnswer, qindex, isMobile, isRevisionBasedQuestion, tutorMode, questionObject, isOCREnabled, addImageRender, onCancelMoreQuestions, isReplaceClicked, setReplaceClickedState } = props;
69
47
  const styles = props?.commonProps?.questionLayoutStyle;
70
48
  const NewQuestionImage = props?.commonProps?.icons?.NewQuestionImage;
71
49
  const [currentQuestion, setCurrentQuestion] = (0, react_2.useState)({});
72
50
  const [currentQuestionIndex, setCurrentQuestionIndex] = (0, react_2.useState)(0);
73
51
  const [layoutType, setLayoutType] = (0, react_2.useState)(null);
74
52
  const [showChat, setShowChat] = (0, react_2.useState)(false);
53
+ const [editorData, setEditorData] = (0, react_2.useState)("");
75
54
  (0, react_2.useEffect)(() => {
76
- // Initialize the current question based on props
77
- let quesObj = props?.questionObject;
78
- let optionLayouts = quesObj?.options_layout?.map((item) => {
79
- return (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(item);
80
- });
55
+ let quesObj = questionObject;
56
+ let optionLayouts = quesObj?.options_layout
57
+ ? quesObj?.options_layout.map((item) => (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(item))
58
+ : [];
81
59
  let answerLayouts = (0, common_utils_1.isNotEmptyOrNull)(quesObj?.answers_index_hashed_keys)
82
- ? quesObj?.answers_index_hashed_keys
83
- : // : isNotEmptyOrNull(quesObj?.answers_key)
84
- // ? quesObj?.answers_key
85
- quesObj?.answers_layout?.map((item) => {
86
- return (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(item);
87
- });
60
+ ? quesObj.answers_index_hashed_keys
61
+ : quesObj?.answers_layout
62
+ ? quesObj.answers_layout.map((item) => (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(item))
63
+ : [];
88
64
  quesObj.options_layout = optionLayouts;
89
65
  quesObj.answers_layout = answerLayouts;
90
- setCurrentQuestion({ ...quesObj, history: props?.history, tutor_mode: tutor_mode });
91
- }, [props.questionObject]);
66
+ setCurrentQuestion({
67
+ ...quesObj,
68
+ history: props?.history,
69
+ tutor_mode: tutor_mode,
70
+ });
71
+ }, [props.questionObject, props?.history]);
92
72
  const onSend = (item) => {
93
73
  props.onAnswerChanged(item.answer, currentQuestion);
94
74
  };
95
- const handleToggleChat = () => {
96
- setShowChat(!showChat);
97
- };
98
75
  let isStudent = presenterLogic?.isStudent === common_utils_1.reviewUserRoles?.STUDENT;
99
- const isDescriptiveQuestion = common_utils_1.descQuestionTypes.includes(props?.questionObject?.question_type);
100
- return ((0, jsx_runtime_1.jsx)(react_1.Box, { className: props?.isComprehension &&
101
- styles["comprehensionSubQuestionMainContainer"], sx: {
102
- "& .hover-show": {
103
- opacity: 0,
104
- visibility: "hidden",
105
- height: 0,
106
- transition: "opacity 0.4s ease-in-out, height 0.4s ease-in-out",
107
- },
108
- "&:hover .hover-show": {
109
- opacity: 1,
110
- visibility: "visible",
111
- height: "auto",
112
- },
113
- }, children: (0, jsx_runtime_1.jsxs)(react_1.Box, { children: [!props.isFactual &&
114
- props.learningStepData &&
115
- props.learningStepData.dialog_entry_script &&
116
- props.learningStepData.dialog_entry_script.content && ((0, jsx_runtime_1.jsx)(Assistant_1.default, { moreQuestionsAvailable: moreQuestionsAvailable, questionIndex: questionIndex, selectionStatus: selectionStatus, presenterLogic: presenterLogic, handleSelectionStatus: handleSelectionStatus, handleMoreQuestions: handleMoreQuestions, assistantImg: props?.commonProps?.icons?.AssistantImg, text: "", isCopy: false, isDialogScript: true, scriptData: props.learningStepData.dialog_entry_script.content, assistantStyle: props?.commonProps?.assistantStyle, hideVin: props?.hideVin, commonProps: props.commonProps, isQuestionSelection: isQuestionSelection })), (0, jsx_runtime_1.jsxs)(react_1.Box, { className: props?.isComprehension && styles["comprehensionMainContainer"], children: [(0, jsx_runtime_1.jsxs)(react_1.Box, { className: props?.isComprehension && styles["comprehensionQuestionContainer"], children: [props?.isComprehension && ((0, jsx_runtime_1.jsx)(react_1.Box, { className: styles?.indexColumn, children: (0, jsx_runtime_1.jsx)(react_1.Box, { className: styles?.index, children: props?.questionIndex + 1 }) })), currentQuestion?.question_type !== LearningPathUtils_1.questionTypes.fib && ((0, jsx_runtime_1.jsx)(react_1.Box, { className: props?.isComprehension &&
117
- styles["comprehensionSubQuestionAssistant"], children: (0, jsx_runtime_1.jsx)(Assistant_1.default, { moreQuestionsAvailable: moreQuestionsAvailable, questionIndex: questionIndex, selectionStatus: selectionStatus, presenterLogic: presenterLogic, handleSelectionStatus: handleSelectionStatus, handleMoreQuestions: handleMoreQuestions, isQuestion: true, text: currentQuestion?.question_layout
118
- ? currentQuestion?.question_layout
119
- : "", assistantImg: props?.commonProps?.icons?.AssistantImg, imagesList: currentQuestion?.images_details, showDiscussLabel: props?.showDiscussLabel, questionType: currentQuestion?.question_type, assistantStyle: props?.commonProps?.assistantStyle, hideVin: props?.hideVin, discussIcon: props?.discussIcon, commonProps: props.commonProps, isFromParentApp: isFromParentApp, isComprehension: props?.isComprehension, isQuestionSelection: isQuestionSelection }) }))] }), (0, jsx_runtime_1.jsx)(react_1.Box, { className: `${styles[currentQuestion?.question_type !== LearningPathUtils_1.questionTypes.fib
120
- ? "optionsContainer"
121
- : "optionsContainerForFIB"]}
76
+ const isDescriptiveQuestion = common_utils_1.descQuestionTypes.includes(questionObject?.question_type);
77
+ const isEditorDisabled = isRevision && tutorMode === false && tutor_mode === false;
78
+ const parsedAnswer = (() => {
79
+ if (!props.userAnswer)
80
+ return null;
81
+ if (typeof props.userAnswer === "object") {
82
+ return props.userAnswer;
83
+ }
84
+ if (typeof props.userAnswer === "string") {
85
+ try {
86
+ return JSON.parse(props.userAnswer);
87
+ }
88
+ catch (error) {
89
+ console.error("Failed to parse userAnswer:", error);
90
+ return null;
91
+ }
92
+ }
93
+ return null;
94
+ })();
95
+ const [showanswer, setShowAnswer] = (0, react_2.useState)(() => {
96
+ return parsedAnswer?.response_type === presentationModes_1.RevisionEvaluationStates.Viewed;
97
+ });
98
+ // Update showanswer when parsedAnswer changes (from parent updates)
99
+ (0, react_2.useEffect)(() => {
100
+ if (parsedAnswer?.response_type === presentationModes_1.RevisionEvaluationStates.Viewed) {
101
+ setShowAnswer(true);
102
+ }
103
+ }, [parsedAnswer]);
104
+ const handleToggleAnswer = (0, react_2.useCallback)(async () => {
105
+ if (isEditorDisabled) {
106
+ return;
107
+ }
108
+ const hasViewedResponse = parsedAnswer?.response_type === presentationModes_1.RevisionEvaluationStates.Viewed;
109
+ // ✅ If user already viewed (even after refresh), allow instant toggle
110
+ if (hasViewedResponse) {
111
+ setShowAnswer(!showanswer);
112
+ return;
113
+ }
114
+ // ⚠️ First time viewing - must call API to mark as viewed
115
+ try {
116
+ if (onToggleAnswer) {
117
+ const result = await onToggleAnswer(qindex);
118
+ // ✅ CRITICAL: Only show answer if API call succeeded
119
+ if (result?.success) {
120
+ setShowAnswer(true);
121
+ }
122
+ else {
123
+ console.error("❌ Failed to toggle answer - API call failed");
124
+ // Optional: Show error toast to user
125
+ // showToast({
126
+ // title: 'Unable to Show Answer',
127
+ // description: 'Could not load the answer. Please try again.',
128
+ // status: 'error',
129
+ // });
130
+ }
131
+ }
132
+ }
133
+ catch (error) {
134
+ console.error("❌ Error toggling answer:", error);
135
+ // Don't show answer on error
136
+ }
137
+ }, [showanswer, parsedAnswer, onToggleAnswer]);
138
+ const revisionMode = (0, react_2.useMemo)(() => {
139
+ if (isRevision) {
140
+ return (0, presentationModes_2.getPresentationModeBasedOnTask)(presentationModes_1.presentationModes.Revision);
141
+ }
142
+ }, [isRevision]);
143
+ const presentationConfig = (0, react_2.useMemo)(() => {
144
+ if (!isRevision)
145
+ return null;
146
+ const responseType = parsedAnswer?.response_type;
147
+ const hasHistory = props?.history?.length > 0;
148
+ // Answered with history available
149
+ if (responseType === presentationModes_1.RevisionEvaluationStates.Answered) {
150
+ return revisionMode.Answered;
151
+ }
152
+ // User has viewed the answer - use Viewed config but make IsViewed toggleable
153
+ if (responseType === presentationModes_1.RevisionEvaluationStates.Viewed) {
154
+ return {
155
+ ...revisionMode.Viewed,
156
+ IsViewed: showanswer,
157
+ UserAnswered: false,
158
+ ShowAnswerButton: true, // Always show toggle button
159
+ };
160
+ }
161
+ // Default: not answered yet - CAN show editor
162
+ return {
163
+ ...revisionMode.NotAnswered,
164
+ ShowAnswerButton: true,
165
+ IsViewed: showanswer,
166
+ };
167
+ }, [isRevision, parsedAnswer, showanswer, props?.history, revisionMode]);
168
+ return ((0, jsx_runtime_1.jsxs)(react_1.Box, { children: [(0, jsx_runtime_1.jsxs)(react_1.Box, { children: [!props?.isFactual &&
169
+ props?.learningStepData?.dialog_entry_script?.content && ((0, jsx_runtime_1.jsx)(Assistant_1.default, { moreQuestionsAvailable: moreQuestionsAvailable, questionIndex: questionIndex, selectionStatus: selectionStatus, presenterLogic: presenterLogic, handleSelectionStatus: handleSelectionStatus, handleMoreQuestions: handleMoreQuestions, assistantImg: props?.commonProps?.icons?.AssistantImg, text: "", isCopy: false, isDialogScript: true, scriptData: props?.learningStepData?.dialog_entry_script?.content, assistantStyle: props?.commonProps?.assistantStyle, hideVin: props?.hideVin, commonProps: props.commonProps, isQuestionSelection: isQuestionSelection })), currentQuestion?.question_type !== LearningPathUtils_1.questionTypes.fib && ((0, jsx_runtime_1.jsxs)(react_1.Box
170
+ // className={
171
+ // props?.isComprehension &&
172
+ // styles["comprehensionSubQuestionAssistant"]
173
+ // }
174
+ , { children: [(0, jsx_runtime_1.jsx)(Assistant_1.default, { moreQuestionsAvailable: moreQuestionsAvailable, questionIndex: questionIndex, selectionStatus: selectionStatus, presenterLogic: presenterLogic, handleSelectionStatus: handleSelectionStatus, handleMoreQuestions: handleMoreQuestions, isQuestion: true, text: currentQuestion?.question_layout
175
+ ? currentQuestion?.question_layout
176
+ : "", assistantImg: props?.commonProps?.icons?.AssistantImg, imagesList: currentQuestion?.images_details, showDiscussLabel: props?.showDiscussLabel, questionType: currentQuestion?.question_type, assistantStyle: props?.commonProps?.assistantStyle, hideVin: props?.hideVin, discussIcon: props?.discussIcon, commonProps: props.commonProps, isFromParentApp: isFromParentApp, isComprehension: props?.isTeacher ? false : props?.isComprehension, isQuestionSelection: isQuestionSelection, isRevision: isRevision, qindex: qindex, isRevisionBasedQuestion: isRevisionBasedQuestion, onCancelMoreQuestions: onCancelMoreQuestions, isReplaceClicked: isReplaceClicked, setReplaceClickedState: setReplaceClickedState }), isRevision &&
177
+ parsedAnswer?.response_type !==
178
+ presentationModes_1.RevisionEvaluationStates.Answered &&
179
+ parsedAnswer?.response_type !==
180
+ presentationModes_1.RevisionEvaluationStates.Viewed &&
181
+ ((0, jsx_runtime_1.jsx)(react_1.Box, { position: "relative", opacity: isEditorDisabled ? 0.5 : 1, pointerEvents: isEditorDisabled ? "none" : "auto", mt: "20px", children: (0, jsx_runtime_1.jsx)(TextEditor_1.default, { data: editorData, handleChange: (data) => setEditorData(data), onSubmit: async (data, images) => {
182
+ if (props.onAnswerSubmit) {
183
+ const result = await props.onAnswerSubmit(data, images);
184
+ setEditorData("");
185
+ }
186
+ }, icons: {
187
+ submit: props?.commonProps?.icons?.SubmitImg,
188
+ formula: props?.commonProps?.icons?.Formula,
189
+ shift: props?.commonProps?.icons?.Shift,
190
+ }, addImageRender: isOCREnabled && addImageRender(qindex, questionObject), isDisabled: isEditorDisabled, height: "500px", isRevision: isRevision, isMobile: isMobile, disablePaste: true, tutorMode: tutorMode }) })), isRevision && presentationConfig?.UserAnswered && ((0, jsx_runtime_1.jsx)(react_1.Box, { mt: "20px", children: (0, jsx_runtime_1.jsx)(ChatPresenter_1.default, { showCoversation: true, isDescriptiveAnswer: true, question: currentQuestion, commonProps: props.commonProps, isStudent: isStudent, isComprehension: props?.isComprehension, assistantInfo: currentQuestion?.history || props?.history, tutor_mode: !isEditorDisabled, isRevision: isRevision, isRevisionBasedQuestion: isRevisionBasedQuestion }) })), isRevision && presentationConfig?.IsViewed && ((0, jsx_runtime_1.jsx)(react_1.Box, { mt: "20px", children: (0, jsx_runtime_1.jsx)(DescriptiveAnswerV1_1.default, { icons: {
191
+ AssistantImg: props?.commonProps?.icons?.AssistantImg,
192
+ CorrectAnsImg: props?.commonProps?.icons?.CorrectAnsImg,
193
+ }, assistantObj: {
194
+ descriptive_answer: {
195
+ solution_layout: questionObject?.solution_layout,
196
+ },
197
+ }, tutor_mode: !isEditorDisabled, isStudent: isStudent, isRevision: isRevision, isViewed: true }) })), isRevision &&
198
+ presentationConfig?.ShowAnswerButton &&
199
+ ((0, jsx_runtime_1.jsxs)(react_1.Flex, { align: "center", justify: "space-between", w: "100%", mt: "25px", gap: "12px", children: [(0, jsx_runtime_1.jsx)(DescriptiveLabel_1.default, { questionType: currentQuestion?.question_type, isRevision: isRevision }), (0, jsx_runtime_1.jsx)(react_1.Box, { flex: "1", borderBottom: "1px dashed gray" }), (0, jsx_runtime_1.jsx)(CustomButton_1.default, { label: (0, jsx_runtime_1.jsxs)(react_1.Flex, { alignItems: "center", gap: "8px", children: [showanswer ? "Hide Answer" : "Show Answer", showanswer ? ((0, jsx_runtime_1.jsx)(icons_1.ChevronUpIcon, {})) : ((0, jsx_runtime_1.jsx)(icons_1.ChevronDownIcon, {}))] }), customStyles: style?.showAnswerBtn(isEditorDisabled), handleClick: handleToggleAnswer })] }))] }))] }), (0, jsx_runtime_1.jsx)(react_1.Box, { className: `${styles[currentQuestion?.question_type !== LearningPathUtils_1.questionTypes.fib
200
+ ? "optionsContainer"
201
+ : "optionsContainerForFIB"]}
122
202
  ${props?.isComprehension && styles["comprehensionOptionContainer"]}
123
- `, children: (0, jsx_runtime_1.jsx)(react_1.Box, { sx: isStudent && style?.answerLayoutContainer, children: (0, jsx_runtime_1.jsx)(AnswerLayouts_1.AnswersLayout, { userAnswer: props.userAnswer, question_type: currentQuestion?.question_type, question_id: (0, Helper_1.getQuestionID)(currentQuestion), options: currentQuestion?.options_layout, answers: currentQuestion?.answers_layout, question: currentQuestion?.question, option_image_details: currentQuestion?.option_image_details, isDisabled: false, images_details: currentQuestion?.images_details, onSend: onSend, onAnswerSubmitted: props?.isAnswerSubmitted, isDontAllow: props?.isDontAllow || false, allowToCopy: props?.allowToCopy || false, currentQuestion: currentQuestion, taskType: props.taskType, commonProps: props.commonProps, presenterLogic: presenterLogic, isComprehension: props?.isComprehension, setLayoutType: setLayoutType }) }) }), presenterLogic?.showDiscuss &&
124
- props?.isComprehension &&
125
- !props?.isFromParentApp &&
126
- !isDescriptiveQuestion &&
127
- isStudent &&
128
- props?.history?.length === 0 && ((0, jsx_runtime_1.jsx)(react_1.Box, { alignSelf: "flex-end", className: !props.isFirstQuestion ? "hover-show" : "", sx: style.discussBox(props.isFirstQuestion), children: (0, jsx_runtime_1.jsx)(react_1.Box, { maxW: "160px", children: (0, jsx_runtime_1.jsx)(CustomButton_1.default, { label: "Discuss", customStyles: style.discussBtn, handleClick: () => props?.handleNavigate(currentQuestion?.version_uuid) }) }) })), props?.isComprehension &&
129
- !props?.isFromParentApp &&
130
- !isDescriptiveQuestion &&
131
- isStudent &&
132
- (0, common_utils_1.isNotEmptyOrNull)(props?.summary) && ((0, jsx_runtime_1.jsx)(react_1.Box, { alignSelf: "flex-end", className: !props.isFirstQuestion ? "hover-show" : "", sx: style.summaryBox(props?.isFirstQuestion, presenterLogic.showDiscuss), children: (0, jsx_runtime_1.jsx)(KeyTakeAway_1.default, { summary: props?.summary }) })), presenterLogic?.showDiscuss &&
133
- props?.isComprehension &&
134
- !props?.isFromParentApp &&
135
- !isDescriptiveQuestion &&
136
- isStudent &&
137
- props?.history?.length > 0 && ((0, jsx_runtime_1.jsx)(react_1.Box, { alignSelf: "flex-end", className: !props.isFirstQuestion ? "hover-show" : "", sx: style.viewDiscussBox(props?.isFirstQuestion), children: (0, jsx_runtime_1.jsx)(react_1.Box, { maxW: "160px", children: (0, jsx_runtime_1.jsx)(CustomButton_1.default, { label: showChat ? "Hide Discussion" : "View Discussion", customStyles: style?.viewDiscussBtn, handleClick: handleToggleChat }) }) })), props?.isComprehension && isStudent && ((0, jsx_runtime_1.jsx)(react_1.Box, { className: !props.isFirstQuestion ? "hover-show" : "", sx: presenterLogic.showDiscuss &&
138
- style?.summaryBox(props.isFirstQuestion), children: (0, jsx_runtime_1.jsx)(ChatPresenter_1.default, { showCoversation: showChat, isDescriptiveAnswer: isDescriptiveQuestion, question: currentQuestion, commonProps: props.commonProps, isStudent: isStudent, isComprehension: props?.isComprehension, assistantInfo: props?.history, tutor_mode: currentQuestion?.tutor_mode }) }))] })] }) }));
203
+ `, children: (0, jsx_runtime_1.jsx)(react_1.Box, { sx: isStudent && style?.answerLayoutContainer, children: (0, jsx_runtime_1.jsx)(AnswerLayouts_1.AnswersLayout, { userAnswer: props.userAnswer, question_type: currentQuestion?.question_type, question_id: (0, Helper_1.getQuestionID)(currentQuestion), options: currentQuestion?.options_layout, answers: currentQuestion?.answers_layout, question: currentQuestion?.question, option_image_details: currentQuestion?.option_image_details, isDisabled: false, images_details: currentQuestion?.images_details, onSend: onSend, onAnswerSubmitted: props?.isAnswerSubmitted, isDontAllow: props?.isDontAllow || false, allowToCopy: props?.allowToCopy || false, currentQuestion: currentQuestion, taskType: props.taskType, commonProps: props.commonProps, presenterLogic: presenterLogic, isComprehension: props?.isComprehension, setLayoutType: setLayoutType, isReviewScreen: props?.isReviewScreen }) }) })] }));
139
204
  };
140
205
  exports.QuestionsLayout = QuestionsLayout;
141
206
  //# sourceMappingURL=QuestionsLayout.js.map