performanceresultscreens 0.0.27 → 0.0.30

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 (178) hide show
  1. package/dist/components/Atoms/AssistantImageModal/ImageModal.js +2 -1
  2. package/dist/components/Atoms/AssistantImageModal/ImageModal.js.map +1 -1
  3. package/dist/components/Atoms/ExtractedDiagramView/ExtractedDiagramView.d.ts +3 -7
  4. package/dist/components/Atoms/ExtractedDiagramView/ExtractedDiagramView.js +37 -11
  5. package/dist/components/Atoms/ExtractedDiagramView/ExtractedDiagramView.js.map +1 -1
  6. package/dist/components/Atoms/PrivacyTouchPoint/PrivacyTouchPoint.js +2 -2
  7. package/dist/components/Atoms/PrivacyTouchPoint/PrivacyTouchPoint.js.map +1 -1
  8. package/dist/components/Atoms/TranscriptionImagePreview/ImageAnnotation.js +3 -3
  9. package/dist/components/Atoms/TranscriptionImagePreview/ImageAnnotation.js.map +1 -1
  10. package/dist/components/Atoms/TranscriptionImagePreview/ImageTranscriptionStyles.d.ts +1 -75
  11. package/dist/components/Atoms/TranscriptionImagePreview/ImageTranscriptionStyles.js +122 -7
  12. package/dist/components/Atoms/TranscriptionImagePreview/ImageTranscriptionStyles.js.map +1 -1
  13. package/dist/components/Atoms/TranscriptionImagePreview/TranscriptionImagePreview.js +9 -1
  14. package/dist/components/Atoms/TranscriptionImagePreview/TranscriptionImagePreview.js.map +1 -1
  15. package/dist/components/Atoms/TranscriptionImagePreview/TranscriptionImagePreview.stories.d.ts +1 -0
  16. package/dist/components/Atoms/TranscriptionImagePreview/TranscriptionImagePreview.stories.js +49 -1
  17. package/dist/components/Atoms/TranscriptionImagePreview/TranscriptionImagePreview.stories.js.map +1 -1
  18. package/dist/components/Molecules/AccordianPay4/Accordian.d.ts +2 -13
  19. package/dist/components/Molecules/AccordianPay4/Accordian.js +13 -14
  20. package/dist/components/Molecules/AccordianPay4/Accordian.js.map +1 -1
  21. package/dist/components/Molecules/AccordianPay4/Accordian.stories.js.map +1 -1
  22. package/dist/components/Molecules/ActivityBanner/ActivityBanner.js +12 -8
  23. package/dist/components/Molecules/ActivityBanner/ActivityBanner.js.map +1 -1
  24. package/dist/components/Molecules/DashPlayer/DashPlayer.stories.js +1 -1
  25. package/dist/components/Molecules/DashPlayer/DashPlayer.stories.js.map +1 -1
  26. package/dist/components/Molecules/DescriptiveAnswer/DescriptiveAnswerV1.js +15 -4
  27. package/dist/components/Molecules/DescriptiveAnswer/DescriptiveAnswerV1.js.map +1 -1
  28. package/dist/components/Molecules/FactualCard/FactualCard.d.ts +3 -1
  29. package/dist/components/Molecules/FactualCard/FactualCard.js +15 -9
  30. package/dist/components/Molecules/FactualCard/FactualCard.js.map +1 -1
  31. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.d.ts +1 -0
  32. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.js +46 -34
  33. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.js.map +1 -1
  34. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.stories.d.ts +12 -0
  35. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.stories.js +10 -1
  36. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreen.stories.js.map +1 -1
  37. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreenSkeleton.d.ts +6 -0
  38. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreenSkeleton.js +12 -0
  39. package/dist/components/Molecules/PerformanceScreen/PreformanceResultScreenSkeleton.js.map +1 -0
  40. package/dist/components/Molecules/PostCard/PostCard.js +4 -4
  41. package/dist/components/Molecules/PostCard/PostCard.js.map +1 -1
  42. package/dist/components/Molecules/RecapNode/ContentView.d.ts +2 -0
  43. package/dist/components/Molecules/RecapNode/ContentView.js +43 -0
  44. package/dist/components/Molecules/RecapNode/ContentView.js.map +1 -0
  45. package/dist/components/Molecules/RecapNode/FlashcardNode.d.ts +0 -0
  46. package/dist/components/Molecules/RecapNode/FlashcardNode.js +2 -0
  47. package/dist/components/Molecules/RecapNode/FlashcardNode.js.map +1 -0
  48. package/dist/components/Molecules/RecapNode/Node.d.ts +3 -0
  49. package/dist/components/Molecules/RecapNode/Node.js +60 -0
  50. package/dist/components/Molecules/RecapNode/Node.js.map +1 -0
  51. package/dist/components/Molecules/RecapNode/Node.stories.d.ts +10 -0
  52. package/dist/components/Molecules/RecapNode/Node.stories.js +117 -0
  53. package/dist/components/Molecules/RecapNode/Node.stories.js.map +1 -0
  54. package/dist/components/Molecules/RecapNode/Node.styles.d.ts +11 -0
  55. package/dist/components/Molecules/RecapNode/Node.styles.js +53 -0
  56. package/dist/components/Molecules/RecapNode/Node.styles.js.map +1 -0
  57. package/dist/components/Molecules/RecapNode/SectionView.d.ts +6 -0
  58. package/dist/components/Molecules/RecapNode/SectionView.js +150 -0
  59. package/dist/components/Molecules/RecapNode/SectionView.js.map +1 -0
  60. package/dist/components/Molecules/RecapNode/VideoView.d.ts +10 -0
  61. package/dist/components/Molecules/RecapNode/VideoView.js +64 -0
  62. package/dist/components/Molecules/RecapNode/VideoView.js.map +1 -0
  63. package/dist/components/Molecules/Revision/Revision.d.ts +2 -0
  64. package/dist/components/Molecules/Revision/Revision.js +201 -0
  65. package/dist/components/Molecules/Revision/Revision.js.map +1 -0
  66. package/dist/components/Molecules/SmartLearn/SmartLearn.js +14 -11
  67. package/dist/components/Molecules/SmartLearn/SmartLearn.js.map +1 -1
  68. package/dist/components/Molecules/SmartLearn/SmartLearn.stories.js +13 -10
  69. package/dist/components/Molecules/SmartLearn/SmartLearn.stories.js.map +1 -1
  70. package/dist/components/Molecules/SmartLearn/types.d.ts +18 -1
  71. package/dist/components/Molecules/Tutor/User/User.js +7 -3
  72. package/dist/components/Molecules/Tutor/User/User.js.map +1 -1
  73. package/dist/components/Molecules/VideoView/VideoModal.js +2 -2
  74. package/dist/components/Molecules/VideoView/VideoModal.js.map +1 -1
  75. package/dist/components/Molecules/comprehension/ComprehensionLayout.js +9 -5
  76. package/dist/components/Molecules/comprehension/ComprehensionLayout.js.map +1 -1
  77. package/dist/components/Molecules/comprehension/SubQuestionLayout.js +1 -1
  78. package/dist/components/Molecules/comprehension/SubQuestionLayout.js.map +1 -1
  79. package/dist/components/Molecules/optionLayouts/Scq.d.ts +2 -0
  80. package/dist/components/Molecules/optionLayouts/Scq.js +427 -0
  81. package/dist/components/Molecules/optionLayouts/Scq.js.map +1 -0
  82. package/dist/components/Molecules/optionLayouts/Scqnew.d.ts +2 -0
  83. package/dist/components/Molecules/optionLayouts/Scqnew.js +491 -0
  84. package/dist/components/Molecules/optionLayouts/Scqnew.js.map +1 -0
  85. package/dist/components/Molecules/questionLayouts/AnswerLayoutnew.d.ts +1 -0
  86. package/dist/components/Molecules/questionLayouts/AnswerLayoutnew.js +61 -0
  87. package/dist/components/Molecules/questionLayouts/AnswerLayoutnew.js.map +1 -0
  88. package/dist/components/Molecules/questionLayouts/AnswerView.d.ts +1 -0
  89. package/dist/components/Molecules/questionLayouts/AnswerView.js +66 -0
  90. package/dist/components/Molecules/questionLayouts/AnswerView.js.map +1 -0
  91. package/dist/components/Molecules/questionLayouts/Question.styles.d.ts +115 -0
  92. package/dist/components/Molecules/questionLayouts/Question.styles.js +119 -0
  93. package/dist/components/Molecules/questionLayouts/Question.styles.js.map +1 -0
  94. package/dist/components/Molecules/questionLayouts/QuestionLayoutnew.d.ts +2 -0
  95. package/dist/components/Molecules/questionLayouts/QuestionLayoutnew.js +285 -0
  96. package/dist/components/Molecules/questionLayouts/QuestionLayoutnew.js.map +1 -0
  97. package/dist/components/Molecules/questionLayouts/QuestionView.d.ts +2 -0
  98. package/dist/components/Molecules/questionLayouts/QuestionView.js +106 -0
  99. package/dist/components/Molecules/questionLayouts/QuestionView.js.map +1 -0
  100. package/dist/components/Molecules/questionLayouts/QuestionsLayout.js +5 -2
  101. package/dist/components/Molecules/questionLayouts/QuestionsLayout.js.map +1 -1
  102. package/dist/components/Organisms/D3Graphs/Reactflow.d.ts +1 -0
  103. package/dist/components/Organisms/D3Graphs/Reactflow.js +244 -0
  104. package/dist/components/Organisms/D3Graphs/Reactflow.js.map +1 -0
  105. package/dist/components/Organisms/FlashCardNode/AccordionChildItem.d.ts +1 -0
  106. package/dist/components/Organisms/FlashCardNode/AccordionChildItem.js +37 -0
  107. package/dist/components/Organisms/FlashCardNode/AccordionChildItem.js.map +1 -0
  108. package/dist/components/Organisms/FlashCardNode/FlashCardNode.d.ts +3 -0
  109. package/dist/components/Organisms/FlashCardNode/FlashCardNode.js +93 -0
  110. package/dist/components/Organisms/FlashCardNode/FlashCardNode.js.map +1 -0
  111. package/dist/components/Organisms/FlashCardNode/FlashcardContainer.d.ts +27 -0
  112. package/dist/components/Organisms/FlashCardNode/FlashcardContainer.js +30 -0
  113. package/dist/components/Organisms/FlashCardNode/FlashcardContainer.js.map +1 -0
  114. package/dist/components/Organisms/FlashCardNode/FlashcardNode.stories.d.ts +15 -0
  115. package/dist/components/Organisms/FlashCardNode/FlashcardNode.stories.js +301 -0
  116. package/dist/components/Organisms/FlashCardNode/FlashcardNode.stories.js.map +1 -0
  117. package/dist/components/Organisms/FlashCardNode/IconBar.d.ts +7 -0
  118. package/dist/components/Organisms/FlashCardNode/IconBar.js +22 -0
  119. package/dist/components/Organisms/FlashCardNode/IconBar.js.map +1 -0
  120. package/dist/components/Organisms/FlashCardNode/MobileAccordionView.d.ts +10 -0
  121. package/dist/components/Organisms/FlashCardNode/MobileAccordionView.js +32 -0
  122. package/dist/components/Organisms/FlashCardNode/MobileAccordionView.js.map +1 -0
  123. package/dist/components/Organisms/FlashCardNode/NodeHandles.d.ts +3 -0
  124. package/dist/components/Organisms/FlashCardNode/NodeHandles.js +22 -0
  125. package/dist/components/Organisms/FlashCardNode/NodeHandles.js.map +1 -0
  126. package/dist/components/Organisms/PostDetails/ImageGallery.js +7 -4
  127. package/dist/components/Organisms/PostDetails/ImageGallery.js.map +1 -1
  128. package/dist/components/Organisms/RecapGraph/Example.stories.d.ts +3 -0
  129. package/dist/components/Organisms/RecapGraph/Example.stories.js +50 -0
  130. package/dist/components/Organisms/RecapGraph/Example.stories.js.map +1 -0
  131. package/dist/components/Organisms/RecapGraph/FlashCardNode.d.ts +3 -0
  132. package/dist/components/Organisms/RecapGraph/FlashCardNode.js +48 -0
  133. package/dist/components/Organisms/RecapGraph/FlashCardNode.js.map +1 -0
  134. package/dist/components/Organisms/RecapGraph/IconBar.d.ts +5 -0
  135. package/dist/components/Organisms/RecapGraph/IconBar.js +19 -0
  136. package/dist/components/Organisms/RecapGraph/IconBar.js.map +1 -0
  137. package/dist/components/Organisms/RecapGraph/NodeHandles.d.ts +4 -0
  138. package/dist/components/Organisms/RecapGraph/NodeHandles.js +21 -0
  139. package/dist/components/Organisms/RecapGraph/NodeHandles.js.map +1 -0
  140. package/dist/components/Organisms/RecapGraph/Reactgraphflow.d.ts +11 -0
  141. package/dist/components/Organisms/RecapGraph/Reactgraphflow.js +101 -0
  142. package/dist/components/Organisms/RecapGraph/Reactgraphflow.js.map +1 -0
  143. package/dist/components/Organisms/RecapGraph/useRecapGraphLogic.d.ts +29 -0
  144. package/dist/components/Organisms/RecapGraph/useRecapGraphLogic.js +357 -0
  145. package/dist/components/Organisms/RecapGraph/useRecapGraphLogic.js.map +1 -0
  146. package/dist/components/Organisms/ReviewComponent/ChatPresenter.js +2 -2
  147. package/dist/components/Organisms/ReviewComponent/ChatPresenter.js.map +1 -1
  148. package/dist/components/Organisms/ReviewComponent/Review.d.ts +2 -1
  149. package/dist/components/Organisms/ReviewComponent/Review.js +4 -4
  150. package/dist/components/Organisms/ReviewComponent/Review.js.map +1 -1
  151. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.d.ts +3 -1
  152. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.js +4 -3
  153. package/dist/components/Organisms/ReviewComponent/ReviewPresenter.js.map +1 -1
  154. package/dist/components/Organisms/StudentEditor/components/EditorComponent.d.ts +5 -0
  155. package/dist/components/Organisms/StudentEditor/components/EditorComponent.js +128 -0
  156. package/dist/components/Organisms/StudentEditor/components/EditorComponent.js.map +1 -0
  157. package/dist/components/Organisms/StudentEditor/components/MathModal.js +3 -0
  158. package/dist/components/Organisms/StudentEditor/components/MathModal.js.map +1 -1
  159. package/dist/components/Organisms/StudentEditor/components/TextEditor.js +24 -15
  160. package/dist/components/Organisms/StudentEditor/components/TextEditor.js.map +1 -1
  161. package/dist/index.d.ts +2 -0
  162. package/dist/index.js +5 -1
  163. package/dist/index.js.map +1 -1
  164. package/dist/utils/RecapData.d.ts +684 -0
  165. package/dist/utils/RecapData.js +2252 -0
  166. package/dist/utils/RecapData.js.map +1 -0
  167. package/dist/utils/accordionConstants.d.ts +15 -0
  168. package/dist/utils/accordionConstants.js +23 -0
  169. package/dist/utils/accordionConstants.js.map +1 -0
  170. package/dist/utils/common-utils.js +4 -0
  171. package/dist/utils/common-utils.js.map +1 -1
  172. package/dist/utils/contentUtils.d.ts +41 -0
  173. package/dist/utils/contentUtils.js +67 -0
  174. package/dist/utils/contentUtils.js.map +1 -0
  175. package/dist/utils/revision-utils.d.ts +13 -0
  176. package/dist/utils/revision-utils.js +90 -0
  177. package/dist/utils/revision-utils.js.map +1 -0
  178. package/package.json +5 -2
@@ -0,0 +1,491 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const jsx_runtime_1 = require("react/jsx-runtime");
30
+ const react_1 = __importStar(require("react"));
31
+ const common_utils_1 = require("../../../utils/common-utils");
32
+ const presentationModes_1 = require("../../../utils/presentationModes");
33
+ const react_usestateref_1 = __importDefault(require("react-usestateref"));
34
+ const LearningPathUtils_1 = require("../../../utils/LearningPathUtils");
35
+ const tutor_utils_1 = require("../../../utils/tutor-utils");
36
+ const imageModal_1 = __importDefault(require("../../Atoms/imageModal"));
37
+ const crypto_1 = require("../../../utils/crypto");
38
+ const react_2 = require("@chakra-ui/react");
39
+ const ScqComponent = (props) => {
40
+ const { options, userAnswer, onAnswerSubmitted: propOnAnswerSubmitted, handleAnswerChange, option_image_details, currentQuestion, taskType, answer, isDontAllow, isStandaloneWithSubjectMapping, isStandalone, isReviewScreen, isFactual, styles, icons, presenterLogic, isComprehension, setLayoutType, modifiedOptions, displayedQues, } = props;
41
+ const [windowWidth, setWindowWidth] = (0, react_1.useState)(typeof window !== "undefined" ? window.innerWidth : 1024);
42
+ const [value, setValue] = (0, react_1.useState)(isReviewScreen
43
+ ? undefined // Second approach: start with undefined
44
+ : (0, common_utils_1.isNotEmptyOrNull)(userAnswer) // First approach: initialize with extracted answer
45
+ ? (0, common_utils_1.extractGivenAnswers)(userAnswer)?.[0]
46
+ : "");
47
+ const [selectedIndex, setSelectedIndex] = (0, react_1.useState)();
48
+ const [optionsData, setOptionsData] = (0, react_1.useState)(isReviewScreen ? options : []);
49
+ const [isOpen, setIsOpen] = (0, react_1.useState)(false);
50
+ const [imageIndex, setImageIndex] = (0, react_1.useState)();
51
+ const [onAnswerSubmitted, setOnAnswerSubmitted, onAnswerSubmittedRef] = (0, react_usestateref_1.default)(propOnAnswerSubmitted
52
+ ? propOnAnswerSubmitted
53
+ : (0, common_utils_1.isNotEmptyOrNull)(userAnswer)
54
+ ? true
55
+ : false);
56
+ const [presentationMode, setPresentationMode] = (0, react_1.useState)((0, presentationModes_1.getPresentationModeBasedOnTask)(props?.currentQuestion?.factual === true
57
+ ? LearningPathUtils_1.taskTypes?.factualMode
58
+ : isReviewScreen
59
+ ? LearningPathUtils_1.taskTypes?.reviewMode
60
+ : isFactual
61
+ ? LearningPathUtils_1.taskTypes?.assessment
62
+ : isStandalone || isStandaloneWithSubjectMapping
63
+ ? LearningPathUtils_1.taskTypes?.standalone
64
+ : props?.taskType));
65
+ // Hashing states (only used when isReviewScreen is false)
66
+ const [hashedOptions, setHashedOptions] = (0, react_1.useState)({});
67
+ const [isHashingComplete, setIsHashingComplete] = (0, react_1.useState)(isReviewScreen); // Skip hashing if review screen
68
+ (0, react_1.useEffect)(() => {
69
+ if (isReviewScreen) {
70
+ // Second approach: use handleRemoveExtraSpaceInBubbles
71
+ let answerValue = (0, common_utils_1.isNotEmptyOrNull)(userAnswer)
72
+ ? (0, common_utils_1.handleRemoveExtraSpaceInBubbles)((0, common_utils_1.extractGivenAnswers)(userAnswer)?.[0])
73
+ : "";
74
+ setValue(answerValue);
75
+ setOptionsData(options.map((item) => (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(item)));
76
+ // Set selectedIndex if there's a userAnswer
77
+ if (answerValue && options) {
78
+ const index = options.findIndex((opt) => (0, common_utils_1.handleRemoveExtraSpaceInBubbles)(opt) === answerValue);
79
+ setSelectedIndex(index !== -1 ? index : undefined);
80
+ }
81
+ }
82
+ else {
83
+ // First approach: simpler options handling
84
+ setOptionsData(options);
85
+ // Set selectedIndex if there's a userAnswer
86
+ if (value && options) {
87
+ const index = options.findIndex((opt) => opt === value);
88
+ setSelectedIndex(index !== -1 ? index : undefined);
89
+ }
90
+ }
91
+ }, [options, userAnswer, isReviewScreen]);
92
+ // Hashing effect - only run when isReviewScreen is false
93
+ (0, react_1.useEffect)(() => {
94
+ if (isReviewScreen) {
95
+ setIsHashingComplete(true);
96
+ return;
97
+ }
98
+ const computeHashedOptions = async () => {
99
+ if (!optionsData.length)
100
+ return;
101
+ const hashed = {};
102
+ for (let i = 0; i < optionsData.length; i++) {
103
+ const item = optionsData[i];
104
+ let data = await ((0, common_utils_1.isNotEmptyOrNull)(currentQuestion?.answers_index_hashed_keys)
105
+ ? (0, crypto_1.answers_index_hashed_keys)(currentQuestion?.uuid + window.ENV.HASH_SECRET_KEY + i)
106
+ : (0, common_utils_1.isNotEmptyOrNull)(currentQuestion?.answers_key)
107
+ ? (0, crypto_1.answerEncryptText)(currentQuestion?.options_layout?.[i])
108
+ : item);
109
+ hashed[i] = data;
110
+ }
111
+ setHashedOptions(hashed);
112
+ setIsHashingComplete(true);
113
+ };
114
+ computeHashedOptions();
115
+ }, [
116
+ optionsData,
117
+ currentQuestion?.uuid,
118
+ currentQuestion?.answers_index_hashed_keys,
119
+ currentQuestion?.answers_key,
120
+ isReviewScreen,
121
+ ]);
122
+ // Get hashed option function
123
+ const getHashedOption = (0, react_1.useCallback)((item, position) => {
124
+ if (isReviewScreen || !isHashingComplete)
125
+ return item;
126
+ return hashedOptions[position] || item;
127
+ }, [hashedOptions, isHashingComplete, isReviewScreen]);
128
+ const handleOnChange = (0, react_1.useCallback)((item, index) => {
129
+ setValue(item);
130
+ setSelectedIndex(index);
131
+ if (isReviewScreen) {
132
+ handleAnswerChange({ selectedItem: item });
133
+ }
134
+ else {
135
+ // Use hashed option for non-review screens
136
+ let selectedAnswer = getHashedOption(item, index);
137
+ handleAnswerChange({
138
+ selectedItem: item,
139
+ selectedHashedIndexAnswer: selectedAnswer,
140
+ selectedIndex: index,
141
+ });
142
+ }
143
+ }, [getHashedOption, isReviewScreen]);
144
+ const openImage = (0, react_1.useCallback)((index) => {
145
+ setImageIndex(index);
146
+ setIsOpen(true);
147
+ }, []);
148
+ const handleClose = (0, react_1.useCallback)(() => {
149
+ setIsOpen(false);
150
+ }, []);
151
+ (0, react_1.useEffect)(() => {
152
+ if (propOnAnswerSubmitted && !isReviewScreen) {
153
+ let selectedAnswer = getHashedOption(value, selectedIndex);
154
+ setValue(selectedAnswer);
155
+ setOnAnswerSubmitted(propOnAnswerSubmitted);
156
+ }
157
+ else if (propOnAnswerSubmitted) {
158
+ setOnAnswerSubmitted(propOnAnswerSubmitted);
159
+ }
160
+ }, [
161
+ propOnAnswerSubmitted,
162
+ getHashedOption,
163
+ value,
164
+ selectedIndex,
165
+ isReviewScreen,
166
+ ]);
167
+ (0, react_1.useEffect)(() => {
168
+ const handleResize = () => setWindowWidth(window.innerWidth);
169
+ window.addEventListener("resize", handleResize);
170
+ return () => window.removeEventListener("resize", handleResize);
171
+ }, []);
172
+ let isStudent = presenterLogic?.isStudent === common_utils_1.reviewUserRoles?.STUDENT;
173
+ // Screen configuration - use SCQ_BREAKPOINTS when not review screen, otherwise use simplified config
174
+ const screenConfig = (0, react_1.useMemo)(() => {
175
+ if (!isReviewScreen && common_utils_1.SCQ_BREAKPOINTS) {
176
+ // Use SCQ_BREAKPOINTS approach
177
+ const config = common_utils_1.SCQ_BREAKPOINTS.find((bp) => windowWidth >= bp.min);
178
+ return {
179
+ characterCount: isComprehension
180
+ ? config.chars.comprehension
181
+ : config.chars.default,
182
+ screenSize: config.size,
183
+ };
184
+ }
185
+ // Use simplified approach for review screen
186
+ if (windowWidth >= 1536)
187
+ return {
188
+ characterCount: isComprehension ? 20 : 30,
189
+ screenSize: "desktop",
190
+ };
191
+ if (windowWidth >= 1400)
192
+ return {
193
+ characterCount: isComprehension ? 20 : 30,
194
+ screenSize: "desktop",
195
+ };
196
+ if (windowWidth >= 1280)
197
+ return {
198
+ characterCount: isComprehension ? 18 : 24,
199
+ screenSize: "desktop",
200
+ };
201
+ if (windowWidth >= 1100)
202
+ return {
203
+ characterCount: isComprehension ? 16 : 20,
204
+ screenSize: "desktop",
205
+ };
206
+ if (windowWidth >= 992)
207
+ return {
208
+ characterCount: isComprehension ? 10 : 14,
209
+ screenSize: "desktop",
210
+ };
211
+ if (windowWidth >= 768)
212
+ return {
213
+ characterCount: isComprehension ? 10 : 12,
214
+ screenSize: "tablet",
215
+ };
216
+ return { characterCount: 6, screenSize: "mobile" };
217
+ }, [windowWidth, isReviewScreen, isComprehension]);
218
+ const stringLengthAnalysis = (0, react_1.useMemo)(() => {
219
+ const { characterCount } = screenConfig;
220
+ return {
221
+ hasLongStrings: (0, common_utils_1.hasLongString)(options, characterCount),
222
+ hasVeryLongStrings: (0, common_utils_1.hasLongString)(options, characterCount + 2),
223
+ };
224
+ }, [screenConfig, options]);
225
+ const layoutType = (0, react_1.useMemo)(() => {
226
+ const { screenSize } = screenConfig;
227
+ const { hasLongStrings, hasVeryLongStrings } = stringLengthAnalysis;
228
+ if (option_image_details?.length > 0) {
229
+ if (screenSize === "mobile")
230
+ return "column";
231
+ return "twoRows";
232
+ }
233
+ if (screenSize === "mobile")
234
+ return "column";
235
+ if (screenSize === "tablet")
236
+ return hasLongStrings ? "column" : "twoRows";
237
+ if (screenSize === "desktop") {
238
+ if (!isReviewScreen && common_utils_1.SCQ_BREAKPOINTS) {
239
+ // Use original logic for non-review screens
240
+ if (hasVeryLongStrings)
241
+ return "column";
242
+ if (hasLongStrings)
243
+ return "twoRows";
244
+ return "row";
245
+ }
246
+ else {
247
+ // Simplified logic for review screens
248
+ const checkLongStringTwoRows = (0, common_utils_1.hasLongString)(options, screenConfig.characterCount + 2);
249
+ if (!checkLongStringTwoRows && hasLongStrings)
250
+ return "twoRows";
251
+ if (checkLongStringTwoRows)
252
+ return "column";
253
+ return "row";
254
+ }
255
+ }
256
+ return "row";
257
+ }, [
258
+ screenConfig,
259
+ stringLengthAnalysis,
260
+ option_image_details,
261
+ isReviewScreen,
262
+ options,
263
+ ]);
264
+ (0, react_1.useEffect)(() => {
265
+ setLayoutType?.(layoutType);
266
+ }, [layoutType, setLayoutType]);
267
+ const getAnswerStyle = (0, react_1.useCallback)((item, value, answerSubmitted, imagesList, currentQuestion, index) => {
268
+ if (isReviewScreen) {
269
+ // Review screen logic (simpler, no hashing)
270
+ if ((0, common_utils_1.isNotEmptyOrNull)(currentQuestion?.answers_index_hashed_keys)) {
271
+ item = (0, crypto_1.answers_index_hashed_keys)(currentQuestion?.uuid + common_utils_1.passphrase + index);
272
+ }
273
+ if (!answerSubmitted) {
274
+ if (item === value) {
275
+ return imagesList?.length > 0
276
+ ? "scq-card-selected"
277
+ : "scq-card-selected-noimage";
278
+ }
279
+ else {
280
+ return imagesList?.length > 0 ? "scq-card" : "scq-card-noimage";
281
+ }
282
+ }
283
+ else {
284
+ if ((0, common_utils_1.isNotEmptyOrNull)(currentQuestion?.answers_index_hashed_keys)
285
+ ? item === currentQuestion?.answers_index_hashed_keys?.[0]
286
+ : item === answer?.[0]) {
287
+ if (presentationMode.DisplayCorrectAnswerInstantly ||
288
+ (presentationMode.DisplayCorrectAnswerAfterNextClick &&
289
+ currentQuestion?.showGreen)) {
290
+ return imagesList?.length > 0
291
+ ? "scq-card-correct"
292
+ : "scq-card-correct-noimage";
293
+ }
294
+ else {
295
+ if (item === value) {
296
+ return taskType === LearningPathUtils_1.taskTypes.assessment || isFactual
297
+ ? imagesList?.length > 0
298
+ ? "scq-card"
299
+ : "scq-card-noimage"
300
+ : imagesList?.length > 0
301
+ ? "scq-card-selected"
302
+ : "scq-card-selected-noimage";
303
+ }
304
+ else {
305
+ return imagesList?.length > 0 ? "scq-card" : "scq-card-noimage";
306
+ }
307
+ }
308
+ }
309
+ else if (item === value) {
310
+ if (presentationMode.DisplayWrongAnswerInstantly ||
311
+ (presentationMode.DisplayWrongAnswerAfterNextClick &&
312
+ currentQuestion.showRed)) {
313
+ return imagesList?.length > 0
314
+ ? "scq-card-wrong"
315
+ : "scq-card-wrong-noimage";
316
+ }
317
+ else {
318
+ return taskType === LearningPathUtils_1.taskTypes.assessment || isFactual
319
+ ? imagesList?.length > 0
320
+ ? "scq-card"
321
+ : "scq-card-noimage"
322
+ : imagesList?.length > 0
323
+ ? "scq-card-selected"
324
+ : "scq-card-selected-noimage";
325
+ }
326
+ }
327
+ else {
328
+ return imagesList?.length > 0 ? "scq-card" : "scq-card-noimage";
329
+ }
330
+ }
331
+ }
332
+ else {
333
+ // Non-review screen logic (with hashing and presentation modes)
334
+ const hashedItem = getHashedOption(item, index);
335
+ const hashedValue = value
336
+ ? getHashedOption(value, optionsData.indexOf(value))
337
+ : value;
338
+ const questionIndex = displayedQues?.findIndex((item) => item.version_uuid === currentQuestion?.version_uuid);
339
+ if (currentQuestion?.factual === true
340
+ ? displayedQues?.[questionIndex]?.isSubmitted !== true
341
+ : !answerSubmitted) {
342
+ if (index === selectedIndex) {
343
+ return imagesList?.length > 0
344
+ ? "scq-card-selected"
345
+ : "scq-card-selected-noimage";
346
+ }
347
+ else {
348
+ return imagesList?.length > 0 ? "scq-card" : "scq-card-noimage";
349
+ }
350
+ }
351
+ else {
352
+ if (hashedItem === props?.answer?.[0]) {
353
+ if (presentationMode.DisplayCorrectAnswerInstantly ||
354
+ (presentationMode.DisplayCorrectAnswerAfterNextClick &&
355
+ currentQuestion?.showGreen)) {
356
+ return imagesList?.length > 0
357
+ ? "scq-card-correct"
358
+ : "scq-card-correct-noimage";
359
+ }
360
+ else {
361
+ if (hashedItem === hashedValue) {
362
+ return imagesList?.length > 0
363
+ ? "scq-card-selected"
364
+ : "scq-card-selected-noimage";
365
+ }
366
+ else {
367
+ return imagesList?.length > 0 ? "scq-card" : "scq-card-noimage";
368
+ }
369
+ }
370
+ }
371
+ else if (hashedItem === hashedValue) {
372
+ if (presentationMode.DisplayWrongAnswerInstantly ||
373
+ (presentationMode.DisplayWrongAnswerAfterNextClick &&
374
+ currentQuestion.showRed)) {
375
+ return imagesList?.length > 0
376
+ ? "scq-card-wrong"
377
+ : "scq-card-wrong-noimage";
378
+ }
379
+ else {
380
+ return props.taskType === LearningPathUtils_1.taskTypes.assessment || isFactual
381
+ ? imagesList?.length > 0
382
+ ? "scq-card-selected"
383
+ : "scq-card-selected-noimage"
384
+ : imagesList?.length > 0
385
+ ? "scq-card-selected"
386
+ : "scq-card-selected-noimage";
387
+ }
388
+ }
389
+ else {
390
+ return imagesList?.length > 0 ? "scq-card" : "scq-card-noimage";
391
+ }
392
+ }
393
+ }
394
+ }, [
395
+ getHashedOption,
396
+ optionsData,
397
+ selectedIndex,
398
+ isReviewScreen,
399
+ displayedQues,
400
+ answer,
401
+ ]);
402
+ const renderSingleOption = (0, react_1.useCallback)((optionContent, idx, isColumn = false) => {
403
+ const label = (0, common_utils_1.getCharacterFromNumber)(idx);
404
+ const answerStyle = getAnswerStyle(optionContent, value, onAnswerSubmittedRef.current, option_image_details, currentQuestion, idx);
405
+ const correctAnswerIndicator = answerStyle === "scq-card-correct" ||
406
+ answerStyle === "scq-card-correct-noimage";
407
+ const wrongAnswerIndicator = answerStyle === "scq-card-wrong" ||
408
+ answerStyle === "scq-card-wrong-noimage";
409
+ const selectedIndicator = answerStyle === "scq-card-selected" ||
410
+ answerStyle === "scq-card-selected-noimage";
411
+ const textColorStyle = correctAnswerIndicator || wrongAnswerIndicator
412
+ ? { color: "black" }
413
+ : selectedIndicator
414
+ ? { color: "white" }
415
+ : { color: "#130159" };
416
+ const textClassName = "scq-text";
417
+ return ((0, jsx_runtime_1.jsxs)(react_2.Box, { className: `${styles?.optionContainer} ${isColumn ? styles?.columnOptions : ""} ${layoutType === "twoRows"
418
+ ? option_image_details?.length === 0
419
+ ? styles?.twoRowOptions
420
+ : ""
421
+ : ""} ${isComprehension ? styles?.comprehensionOptionContainer : ""} ${styles[answerStyle]}`, onClick: () => {
422
+ if (!onAnswerSubmittedRef?.current) {
423
+ handleOnChange(optionContent, idx);
424
+ }
425
+ }, style: {
426
+ cursor: isReviewScreen
427
+ ? !onAnswerSubmittedRef.current && isDontAllow
428
+ ? "pointer"
429
+ : "default"
430
+ : onAnswerSubmittedRef.current || isDontAllow
431
+ ? "default"
432
+ : "pointer",
433
+ pointerEvents: isReviewScreen
434
+ ? isDontAllow
435
+ ? "none"
436
+ : "auto"
437
+ : "auto",
438
+ }, children: [(0, jsx_runtime_1.jsxs)(react_2.Box, { className: `${styles?.optionContainerLeft}`, children: [(0, jsx_runtime_1.jsx)(react_2.Box, { className: styles?.character, children: label }), (0, jsx_runtime_1.jsxs)(react_2.Box, { className: `${styles?.optionDetails} ${styles[textClassName]}`, style: textColorStyle, children: [(0, jsx_runtime_1.jsx)(react_2.Box, { children: (0, tutor_utils_1.renderContent)(modifiedOptions?.[idx] || optionContent) }), option_image_details?.length > 0 &&
439
+ option_image_details[idx] && ((0, jsx_runtime_1.jsx)(react_2.Box, { className: styles?.optionImage, children: (0, jsx_runtime_1.jsx)(react_2.Image, { src: option_image_details[idx].url, onClick: (e) => {
440
+ e.stopPropagation();
441
+ openImage(idx);
442
+ }, className: styles["scq-image"], alt: `Image ${idx}`, style: { cursor: "pointer" } }) }))] })] }), isStudent && ((0, jsx_runtime_1.jsx)(react_2.Box, { className: styles?.optionContainerRight, children: (0, jsx_runtime_1.jsx)(react_2.Image, { className: `${styles?.answerIndicator} ${correctAnswerIndicator || wrongAnswerIndicator
443
+ ? styles?.answerIndicatorActive
444
+ : ""}`, src: correctAnswerIndicator
445
+ ? icons?.CheckmarkCircle
446
+ : icons?.closeCircle, alt: correctAnswerIndicator ? "Correct" : "Wrong" }) }))] }, idx));
447
+ }, [
448
+ getAnswerStyle,
449
+ value,
450
+ onAnswerSubmittedRef,
451
+ handleOnChange,
452
+ openImage,
453
+ layoutType,
454
+ option_image_details,
455
+ isComprehension,
456
+ styles,
457
+ modifiedOptions,
458
+ isStudent,
459
+ icons,
460
+ ]);
461
+ const renderedOptions = (0, react_1.useMemo)(() => {
462
+ if (!options?.length)
463
+ return null;
464
+ if (layoutType === "twoRows") {
465
+ const rows = [];
466
+ for (let i = 0; i < options?.length; i += 2) {
467
+ rows.push(options?.slice(i, i + 2));
468
+ }
469
+ 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((optionContent, idx) => {
470
+ const actualIndex = rowIndex * 2 + idx;
471
+ return ((0, jsx_runtime_1.jsx)(react_2.Box, { children: renderSingleOption(optionContent, actualIndex, false) }, actualIndex));
472
+ }) }, rowIndex))) }));
473
+ }
474
+ return options.map((optionContent, idx) => renderSingleOption(optionContent, idx, layoutType === "column"));
475
+ }, [options, layoutType, renderSingleOption, styles]);
476
+ const wrapperClasses = (0, react_1.useMemo)(() => {
477
+ const classes = [styles?.optionsWrapper];
478
+ if (layoutType === "column")
479
+ classes.push(styles?.columnWrapper);
480
+ if (layoutType === "twoRows")
481
+ classes.push(styles?.twoRowsContainer);
482
+ return classes.join(" ");
483
+ }, [layoutType, styles]);
484
+ // Show loading while hashing is in progress (only for non-review screens)
485
+ if (!isHashingComplete && !isReviewScreen) {
486
+ return (0, jsx_runtime_1.jsx)(react_2.Box, { children: "Loading options..." });
487
+ }
488
+ return ((0, jsx_runtime_1.jsxs)(react_2.Box, { style: isDontAllow ? { pointerEvents: "none" } : {}, children: [(0, jsx_runtime_1.jsx)(react_2.Box, { className: wrapperClasses, children: renderedOptions }), isOpen && ((0, jsx_runtime_1.jsx)(imageModal_1.default, { isOpen: isOpen, handleClose: handleClose, url: option_image_details?.[imageIndex]?.url }, Math.random()))] }));
489
+ };
490
+ exports.default = ScqComponent;
491
+ //# sourceMappingURL=Scqnew.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Scqnew.js","sourceRoot":"","sources":["../../../../src/components/Molecules/optionLayouts/Scqnew.jsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export function AnswersLayout(props: any): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AnswersLayout = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = require("react");
9
+ const LearningPathUtils_1 = require("../../../utils/LearningPathUtils");
10
+ const scqtemp_1 = __importDefault(require("../optionLayouts/scqtemp"));
11
+ const mcqtemp_1 = __importDefault(require("../optionLayouts/mcqtemp"));
12
+ const fibtemp_1 = __importDefault(require("../optionLayouts/fibtemp"));
13
+ const Scqnew_1 = __importDefault(require("../optionLayouts/Scqnew"));
14
+ const common_utils_1 = require("../../../utils/common-utils");
15
+ const AnswersLayout = (props) => {
16
+ const [selectedAnswer, setSelectedAnswer] = (0, react_1.useState)("");
17
+ const [onSubmitClicked, setOnSubmitClicked] = (0, react_1.useState)(props.onAnswerSubmitted);
18
+ const { question_type, question, isDisabled, allowToCopy = false, onSend, commonProps, options, userAnswer, onAnswerSubmitted: propOnAnswerSubmitted, option_image_details, currentQuestion, taskType, answers: answer, isDontAllow = false, isStandaloneWithSubjectMapping, isStandalone, isReviewScreen, isFactual, presenterLogic, isComprehension, setLayoutType, question_id, modifiedOptions, images_details, displayedQues, } = props;
19
+ const handleAnswerChange = (item) => {
20
+ setSelectedAnswer(item?.selectedItem);
21
+ if (isReviewScreen) {
22
+ onSend({ answer: item?.selectedItem });
23
+ }
24
+ else {
25
+ props.onSend({
26
+ answer: item?.selectedItem,
27
+ hashedIndexAnswer: item?.selectedHashedIndexAnswer,
28
+ selectedIndex: item?.selectedIndex,
29
+ });
30
+ }
31
+ };
32
+ const onSubmitReceive = (data) => {
33
+ onSend(data);
34
+ };
35
+ let isStudent = presenterLogic?.isStudent === common_utils_1.reviewUserRoles?.STUDENT;
36
+ // MCQ Component rendering
37
+ const renderMCQ = () => {
38
+ return ((0, jsx_runtime_1.jsx)(mcqtemp_1.default, { options: options, userAnswer: userAnswer, handleAnswerChange: handleAnswerChange, onAnswerSubmitted: propOnAnswerSubmitted, option_image_details: option_image_details, isDontAllow: isDontAllow, currentQuestion: currentQuestion, taskType: taskType, answer: answer, isStandaloneWithSubjectMapping: isStandaloneWithSubjectMapping, isStandalone: isStandalone, isReviewScreen: isReviewScreen, isFactual: isFactual, styles: commonProps.mcqStyle }));
39
+ };
40
+ // FIB Component rendering
41
+ const renderFIB = () => {
42
+ return ((0, jsx_runtime_1.jsx)(fibtemp_1.default, { question: question, userAnswer: userAnswer, handleAnswerChange: handleAnswerChange, isDisabled: isDisabled, onAnswerSubmitted: propOnAnswerSubmitted, allowToCopy: allowToCopy, currentQuestion: currentQuestion, isDontAllow: isDontAllow, taskType: taskType, styles: commonProps?.fibStyle }));
43
+ };
44
+ // SCQ Component rendering
45
+ const renderSCQ = () => {
46
+ if (isReviewScreen && !isStudent) {
47
+ return ((0, jsx_runtime_1.jsx)(scqtemp_1.default, { options: options, userAnswer: userAnswer, handleAnswerChange: handleAnswerChange, onAnswerSubmitted: propOnAnswerSubmitted, option_image_details: option_image_details, isDontAllow: isDontAllow || false, currentQuestion: currentQuestion, taskType: taskType, answer: answer, isReviewScreen: isReviewScreen, isComprehension: isComprehension, setLayoutType: setLayoutType, styles: commonProps?.scqStyle, icons: commonProps?.icons, isStandaloneWithSubjectMapping: isStandaloneWithSubjectMapping, isStandalone: isStandalone, isFactual: isFactual, presenterLogic: presenterLogic }));
48
+ }
49
+ return ((0, jsx_runtime_1.jsx)(Scqnew_1.default, { "data-testid": "scq-component", options: options, userAnswer: userAnswer, handleAnswerChange: handleAnswerChange, onAnswerSubmitted: propOnAnswerSubmitted, option_image_details: option_image_details, isDontAllow: isDontAllow || false, currentQuestion: currentQuestion, taskType: taskType, answer: answer, isReviewScreen: isReviewScreen, isComprehension: isComprehension, setLayoutType: setLayoutType, styles: commonProps?.scqStyle, icons: commonProps?.icons, displayedQues: !isReviewScreen && displayedQues, question_type: !isReviewScreen && question_type, question_id: !isReviewScreen && question_id, modifiedOptions: !isReviewScreen && modifiedOptions, question: !isReviewScreen && question, images_details: !isReviewScreen && images_details, isDisabled: !isReviewScreen && isDisabled, onSend: !isReviewScreen && onSubmitReceive, isStandaloneWithSubjectMapping: isReviewScreen && isStandaloneWithSubjectMapping, isStandalone: isReviewScreen && isStandalone, isFactual: isReviewScreen && isFactual, presenterLogic: isReviewScreen && presenterLogic }, !isReviewScreen && question));
50
+ };
51
+ return ((0, jsx_runtime_1.jsxs)("div", { id: isReviewScreen ? undefined : "answers-layout", children: [question_type === LearningPathUtils_1.questionTypes.mcq && renderMCQ(), (question_type === LearningPathUtils_1.questionTypes.fib ||
52
+ question_type === LearningPathUtils_1.questionTypes.drag_fib) && renderFIB(), (question_type === LearningPathUtils_1.questionTypes.scq ||
53
+ question_type === LearningPathUtils_1.questionTypes.reason_assertion ||
54
+ question_type === LearningPathUtils_1.questionTypes.tf ||
55
+ question_type === LearningPathUtils_1.questionTypes.yn ||
56
+ question_type === LearningPathUtils_1.questionTypes.sorting ||
57
+ question_type === LearningPathUtils_1.questionTypes.match ||
58
+ question_type === LearningPathUtils_1.questionTypes.nav) && renderSCQ()] }));
59
+ };
60
+ exports.AnswersLayout = AnswersLayout;
61
+ //# sourceMappingURL=AnswerLayoutnew.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnswerLayoutnew.js","sourceRoot":"","sources":["../../../../src/components/Molecules/questionLayouts/AnswerLayoutnew.js"],"names":[],"mappings":";;;;;;;AAAA,iCAAiC;AACjC,wEAAiE;AACjE,uEAA+C;AAC/C,uEAA+C;AAC/C,uEAA+C;AAC/C,qEAAmD;AACnD,8DAA8D;AAEvD,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,EAAE;IACrC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EACpD,KAAK,CAAC,iBAAiB,CACxB,CAAC;IAEF,MAAM,EACJ,aAAa,EACb,QAAQ,EACR,UAAU,EACV,WAAW,GAAG,KAAK,EACnB,MAAM,EACN,WAAW,EACX,OAAO,EACP,UAAU,EACV,iBAAiB,EAAE,qBAAqB,EACxC,oBAAoB,EACpB,eAAe,EACf,QAAQ,EACR,OAAO,EAAE,MAAM,EACf,WAAW,GAAG,KAAK,EACnB,8BAA8B,EAC9B,YAAY,EACZ,cAAc,EACd,SAAS,EACT,cAAc,EACd,eAAe,EACf,aAAa,EACb,WAAW,EACX,eAAe,EACf,cAAc,EACd,aAAa,GACd,GAAG,KAAK,CAAC;IAER,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,EAAE;QACtC,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAEtC,IAAI,cAAc,EAAE;YAClB,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;SACxC;aAAM;YACL,KAAK,CAAC,MAAM,CAAC;gBACX,MAAM,EAAE,IAAI,EAAE,YAAY;gBAC1B,iBAAiB,EAAE,IAAI,EAAE,yBAAyB;gBAClD,aAAa,EAAE,IAAI,EAAE,aAAa;aACnC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEA,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC;IAEF,IAAI,SAAS,GAAG,cAAc,EAAE,SAAS,KAAK,8BAAe,EAAE,OAAO,CAAC;IAEvE,0BAA0B;IAC1B,MAAM,SAAS,GAAG,GAAG,EAAE;QACnB,OAAO,CACL,uBAAC,iBAAO,IACN,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,kBAAkB,EAAE,kBAAkB,EACtC,iBAAiB,EAAE,qBAAqB,EACxC,oBAAoB,EAAE,oBAAoB,EAC1C,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,8BAA8B,EAAE,8BAA8B,EAC9D,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,WAAW,CAAC,QAAQ,GAC5B,CACH,CAAC;IAEN,CAAC,CAAC;IAEF,0BAA0B;IAC1B,MAAM,SAAS,GAAG,GAAG,EAAE;QACnB,OAAO,CACL,uBAAC,iBAAO,IACN,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,qBAAqB,EACxC,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,WAAW,EAAE,QAAQ,GAC7B,CACH,CAAC;IACN,CAAC,CAAC;IAEF,0BAA0B;IAC1B,MAAM,SAAS,GAAG,GAAG,EAAE;QACvB,IAAI,cAAc,IAAI,CAAC,SAAS,EAAE;YAChC,OAAO,CACL,uBAAC,iBAAO,IACN,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,kBAAkB,EAAE,kBAAkB,EACtC,iBAAiB,EAAE,qBAAqB,EACxC,oBAAoB,EAAE,oBAAoB,EAC1C,WAAW,EAAE,WAAW,IAAI,KAAK,EACjC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,WAAW,EAAE,QAAQ,EAC7B,KAAK,EAAE,WAAW,EAAE,KAAK,EACzB,8BAA8B,EAAE,8BAA8B,EAC9D,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;SACH;QAED,OAAO,CACL,uBAAC,gBAAY,mBACC,eAAe,EAC3B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,kBAAkB,EAAE,kBAAkB,EACtC,iBAAiB,EAAE,qBAAqB,EACxC,oBAAoB,EAAE,oBAAoB,EAC1C,WAAW,EAAE,WAAW,IAAI,KAAK,EACjC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,WAAW,EAAE,QAAQ,EAC7B,KAAK,EAAE,WAAW,EAAE,KAAK,EACzB,aAAa,EAAE,CAAC,cAAc,IAAI,aAAa,EAE/C,aAAa,EAAE,CAAC,cAAc,IAAI,aAAa,EAC/C,WAAW,EAAE,CAAC,cAAc,IAAI,WAAW,EAC3C,eAAe,EAAE,CAAC,cAAc,IAAI,eAAe,EACnD,QAAQ,EAAE,CAAC,cAAc,IAAI,QAAQ,EACrC,cAAc,EAAE,CAAC,cAAc,IAAI,cAAc,EACjD,UAAU,EAAE,CAAC,cAAc,IAAI,UAAU,EACzC,MAAM,EAAE,CAAC,cAAc,IAAI,eAAe,EAC1C,8BAA8B,EAAE,cAAc,IAAI,8BAA8B,EAChF,YAAY,EAAE,cAAc,IAAI,YAAY,EAC5C,SAAS,EAAE,cAAc,IAAI,SAAS,EACtC,cAAc,EAAE,cAAc,IAAI,cAAc,IAX3C,CAAC,cAAc,IAAI,QAAQ,CAYhC,CACH,CAAC;IACJ,CAAC,CAAC;IAEA,OAAO,CACL,iCAAK,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,aACnD,aAAa,KAAK,iCAAa,CAAC,GAAG,IAAI,SAAS,EAAE,EAElD,CAAC,aAAa,KAAK,iCAAa,CAAC,GAAG;gBACnC,aAAa,KAAK,iCAAa,CAAC,QAAQ,CAAC,IAAI,SAAS,EAAE,EAEzD,CAAC,aAAa,KAAK,iCAAa,CAAC,GAAG;gBACnC,aAAa,KAAK,iCAAa,CAAC,gBAAgB;gBAChD,aAAa,KAAK,iCAAa,CAAC,EAAE;gBAClC,aAAa,KAAK,iCAAa,CAAC,EAAE;gBAClC,aAAa,KAAK,iCAAa,CAAC,OAAO;gBACvC,aAAa,KAAK,iCAAa,CAAC,KAAK;gBACrC,aAAa,KAAK,iCAAa,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,IACjD,CACP,CAAC;AACJ,CAAC,CAAC;AA5KW,QAAA,aAAa,iBA4KxB"}
@@ -0,0 +1 @@
1
+ export function AnswersLayout(props: any): import("react/jsx-runtime").JSX.Element;