questionlayoutrefactoring 0.0.23 → 0.0.24
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.
|
@@ -51,58 +51,6 @@ const parsedUserAnswer = (userAnswer) => {
|
|
|
51
51
|
}
|
|
52
52
|
return null;
|
|
53
53
|
};
|
|
54
|
-
const getRevisionPresentationConfig = (isRevision, parsedAnswer, showanswer, history, revisionMode) => {
|
|
55
|
-
if (!isRevision || !revisionMode)
|
|
56
|
-
return null;
|
|
57
|
-
const responseType = parsedAnswer?.response_type;
|
|
58
|
-
const hasHistory = history?.length > 0;
|
|
59
|
-
// Answered with history available
|
|
60
|
-
if (responseType === presentationModes_1.RevisionEvaluationStates.Answered) {
|
|
61
|
-
return revisionMode.Answered;
|
|
62
|
-
}
|
|
63
|
-
// User has viewed the answer - use Viewed config but make IsViewed toggleable
|
|
64
|
-
if (responseType === presentationModes_1.RevisionEvaluationStates.Viewed) {
|
|
65
|
-
return {
|
|
66
|
-
...revisionMode.Viewed,
|
|
67
|
-
IsViewed: showanswer,
|
|
68
|
-
UserAnswered: false,
|
|
69
|
-
ShowAnswerButton: true,
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
// Default: not answered yet - CAN show editor
|
|
73
|
-
return {
|
|
74
|
-
...revisionMode.NotAnswered,
|
|
75
|
-
ShowAnswerButton: true,
|
|
76
|
-
IsViewed: showanswer,
|
|
77
|
-
};
|
|
78
|
-
};
|
|
79
|
-
const handleToggleAnswerLogic = async (showanswer, parsedAnswer, onToggleAnswer, qindex, isEditorDisabled, setShowAnswer) => {
|
|
80
|
-
if (isEditorDisabled) {
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
const hasViewedResponse = parsedAnswer?.response_type === presentationModes_1.RevisionEvaluationStates.Viewed;
|
|
84
|
-
// If user already viewed, allow instant toggle
|
|
85
|
-
if (hasViewedResponse) {
|
|
86
|
-
setShowAnswer(!showanswer);
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
// First time viewing - must call API to mark as viewed
|
|
90
|
-
try {
|
|
91
|
-
if (onToggleAnswer) {
|
|
92
|
-
const result = await onToggleAnswer(qindex);
|
|
93
|
-
if (result?.success) {
|
|
94
|
-
setShowAnswer(true);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
console.error("❌ Failed to toggle answer - API call failed");
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
catch (error) {
|
|
102
|
-
console.error("Error toggling answer:", error);
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
54
|
const shouldShowEditorInRevision = (isRevision, parsedAnswer) => {
|
|
107
55
|
if (!isRevision)
|
|
108
56
|
return false;
|
|
@@ -110,11 +58,11 @@ const shouldShowEditorInRevision = (isRevision, parsedAnswer) => {
|
|
|
110
58
|
return (responseType !== presentationModes_1.RevisionEvaluationStates.Answered &&
|
|
111
59
|
responseType !== presentationModes_1.RevisionEvaluationStates.Viewed);
|
|
112
60
|
};
|
|
113
|
-
const hasUserAnsweredInRevision = (presentationConfig) => {
|
|
114
|
-
return presentationConfig?.UserAnswered
|
|
61
|
+
const hasUserAnsweredInRevision = (isRevision, presentationConfig) => {
|
|
62
|
+
return isRevision && presentationConfig?.UserAnswered;
|
|
115
63
|
};
|
|
116
|
-
const isAnswerViewedInRevision = (presentationConfig) => {
|
|
117
|
-
return presentationConfig?.IsViewed
|
|
64
|
+
const isAnswerViewedInRevision = (isRevision, presentationConfig) => {
|
|
65
|
+
return isRevision && presentationConfig?.IsViewed;
|
|
118
66
|
};
|
|
119
67
|
// ============= SUB COMPONENTS =============
|
|
120
68
|
/**
|
|
@@ -138,7 +86,7 @@ const RevisionEditorSection = ({ showEditor, editorData, setEditorData, isEditor
|
|
|
138
86
|
* RevisionAnsweredSection - Shows chat presenter for answered questions
|
|
139
87
|
*/
|
|
140
88
|
const RevisionAnsweredSection = ({ presentationConfig, currentQuestion, history, commonProps, isStudent, isEditorDisabled, isRevision, isRevisionBasedQuestion, }) => {
|
|
141
|
-
if (!hasUserAnsweredInRevision(presentationConfig))
|
|
89
|
+
if (!hasUserAnsweredInRevision(isRevision, presentationConfig))
|
|
142
90
|
return null;
|
|
143
91
|
return ((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: commonProps, isStudent: isStudent, assistantInfo: history, tutor_mode: !isEditorDisabled, isRevision: isRevision, isRevisionBasedQuestion: isRevisionBasedQuestion }) }));
|
|
144
92
|
};
|
|
@@ -146,7 +94,7 @@ const RevisionAnsweredSection = ({ presentationConfig, currentQuestion, history,
|
|
|
146
94
|
* RevisionViewedSection - Shows sample answer for viewed questions
|
|
147
95
|
*/
|
|
148
96
|
const RevisionViewedSection = ({ presentationConfig, currentQuestion, commonProps, history, isStudent, isEditorDisabled, isRevision, questionObject }) => {
|
|
149
|
-
if (!isAnswerViewedInRevision(presentationConfig))
|
|
97
|
+
if (!isAnswerViewedInRevision(isRevision, presentationConfig))
|
|
150
98
|
return null;
|
|
151
99
|
return ((0, jsx_runtime_1.jsx)(react_1.Box, { mt: "20px", children: (0, jsx_runtime_1.jsx)(ChatPresenter_1.default, { showCoversation: true, isDescriptiveAnswer: true, question: questionObject, commonProps: commonProps, isStudent: isStudent, assistantInfo: history, tutor_mode: !isEditorDisabled, isRevision: isRevision, isViewed: true }) }));
|
|
152
100
|
};
|
|
@@ -185,14 +133,63 @@ const RevisionView = (props = {}) => {
|
|
|
185
133
|
return (0, presentationModes_1.getPresentationModeBasedOnTask)(presentationModes_1.presentationModes.Revision);
|
|
186
134
|
}
|
|
187
135
|
}, [isRevision]);
|
|
136
|
+
(0, react_2.useEffect)(() => {
|
|
137
|
+
if (parsedAnswer?.response_type === presentationModes_1.RevisionEvaluationStates.Viewed) {
|
|
138
|
+
setShowAnswer(true);
|
|
139
|
+
}
|
|
140
|
+
}, [parsedAnswer]);
|
|
188
141
|
// Get presentation configuration based on revision state
|
|
189
142
|
const presentationConfig = (0, react_2.useMemo)(() => {
|
|
190
|
-
|
|
191
|
-
|
|
143
|
+
if (!isRevision)
|
|
144
|
+
return null;
|
|
145
|
+
const responseType = parsedAnswer?.response_type;
|
|
146
|
+
const hasHistory = props?.history?.length > 0;
|
|
147
|
+
// Answered with history available
|
|
148
|
+
if (responseType === presentationModes_1.RevisionEvaluationStates.Answered) {
|
|
149
|
+
return revisionMode.Answered;
|
|
150
|
+
}
|
|
151
|
+
// User has viewed the answer - use Viewed config but make IsViewed toggleable
|
|
152
|
+
if (responseType === presentationModes_1.RevisionEvaluationStates.Viewed) {
|
|
153
|
+
return {
|
|
154
|
+
...revisionMode.Viewed,
|
|
155
|
+
IsViewed: showanswer,
|
|
156
|
+
UserAnswered: false,
|
|
157
|
+
ShowAnswerButton: true, // Always show toggle button
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
// Default: not answered yet - CAN show editor
|
|
161
|
+
return {
|
|
162
|
+
...revisionMode.NotAnswered,
|
|
163
|
+
ShowAnswerButton: true,
|
|
164
|
+
IsViewed: showanswer,
|
|
165
|
+
};
|
|
166
|
+
}, [isRevision, parsedAnswer, showanswer, props?.history, revisionMode]);
|
|
192
167
|
// Handle answer toggle with proper logic
|
|
193
168
|
const handleToggleAnswer = (0, react_2.useCallback)(async () => {
|
|
194
|
-
|
|
195
|
-
|
|
169
|
+
if (isEditorDisabled) {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
const hasViewedResponse = parsedAnswer?.response_type === presentationModes_1.RevisionEvaluationStates.Viewed;
|
|
173
|
+
if (hasViewedResponse) {
|
|
174
|
+
setShowAnswer(!showanswer);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
try {
|
|
178
|
+
if (onToggleAnswer) {
|
|
179
|
+
const result = await onToggleAnswer(qindex);
|
|
180
|
+
if (result?.success) {
|
|
181
|
+
setShowAnswer(true);
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
console.error("❌ Failed to toggle answer - API call failed");
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
console.error("❌ Error toggling answer:", error);
|
|
190
|
+
// Don't show answer on error
|
|
191
|
+
}
|
|
192
|
+
}, [showanswer, parsedAnswer, onToggleAnswer]);
|
|
196
193
|
// Show editor only when appropriate
|
|
197
194
|
const showEditor = shouldShowEditorInRevision(isRevision, parsedAnswer);
|
|
198
195
|
if (!isRevision)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Revision.js","sourceRoot":"","sources":["../../../../src/components/Molecules/Revision/Revision.jsx"],"names":[],"mappings":";;;;;;;AAAA,4CAA6C;AAC7C,4CAAkE;AAClE,iCAAkE;AAClE,yFAAiE;AACjE,kGAA0E;AAC1E,qGAA6E;AAC7E,uFAA+D;AAC/D,6EAAoD;AACpD,wEAA+H;AAE/H,MAAM,KAAK,GAAG;IACZ,aAAa,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC9B,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa;QAC1C,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,mBAAmB;QAC9D,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iCAAiC;QACjE,SAAS,EAAE,QAAQ;QACnB,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,kCAAkC;QAC5C,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;KAC/C,CAAC;CACH,CAAC;AAEF,gDAAgD;AAEhD,MAAM,gBAAgB,GAAG,CAAC,UAAU,EAAE,EAAE;IACtC,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAE7B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,OAAO,UAAU,CAAC;KACnB;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;SAC/B;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Revision.js","sourceRoot":"","sources":["../../../../src/components/Molecules/Revision/Revision.jsx"],"names":[],"mappings":"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"}
|