catchup-library-web 1.10.1 → 1.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -4464,13 +4464,18 @@ var FillInTheBlanksActivityMaterialContent = ({
4464
4464
  const foundAnswer = answer.data.find(
4465
4465
  (answerData) => answerData.type === "FILL_IN_THE_BLANKS"
4466
4466
  );
4467
+ if (!foundAnswer) return;
4467
4468
  if (foundAnswer.answerMap.length === 0) return;
4468
4469
  if (Object.keys(materialMap).length === 0) return;
4469
- foundAnswer.answerMap = Object.keys(materialMap).map(
4470
- (materialMapKey, index) => JSON.parse(materialMap[materialMapKey])[0]
4471
- );
4472
- onChange(answer, 0, JSON.parse(materialMap[0])[0]);
4473
- }, [showCorrectAnswer]);
4470
+ const newAnswerMap = {};
4471
+ Object.keys(materialMap).forEach((materialMapKey) => {
4472
+ newAnswerMap[materialMapKey] = JSON.parse(materialMap[materialMapKey])[0];
4473
+ });
4474
+ foundAnswer.answerMap = newAnswerMap;
4475
+ if (Object.keys(materialMap).length > 0) {
4476
+ onChange(answer, 0, JSON.parse(materialMap[0])[0]);
4477
+ }
4478
+ }, [showCorrectAnswer, answer, materialMap, onChange]);
4474
4479
  const retrieveAnswerMap = () => {
4475
4480
  const foundIndex = answer.data.findIndex(
4476
4481
  (answerData) => answerData.type === "FILL_IN_THE_BLANKS"
package/dist/index.mjs CHANGED
@@ -4265,13 +4265,18 @@ var FillInTheBlanksActivityMaterialContent = ({
4265
4265
  const foundAnswer = answer.data.find(
4266
4266
  (answerData) => answerData.type === "FILL_IN_THE_BLANKS"
4267
4267
  );
4268
+ if (!foundAnswer) return;
4268
4269
  if (foundAnswer.answerMap.length === 0) return;
4269
4270
  if (Object.keys(materialMap).length === 0) return;
4270
- foundAnswer.answerMap = Object.keys(materialMap).map(
4271
- (materialMapKey, index) => JSON.parse(materialMap[materialMapKey])[0]
4272
- );
4273
- onChange(answer, 0, JSON.parse(materialMap[0])[0]);
4274
- }, [showCorrectAnswer]);
4271
+ const newAnswerMap = {};
4272
+ Object.keys(materialMap).forEach((materialMapKey) => {
4273
+ newAnswerMap[materialMapKey] = JSON.parse(materialMap[materialMapKey])[0];
4274
+ });
4275
+ foundAnswer.answerMap = newAnswerMap;
4276
+ if (Object.keys(materialMap).length > 0) {
4277
+ onChange(answer, 0, JSON.parse(materialMap[0])[0]);
4278
+ }
4279
+ }, [showCorrectAnswer, answer, materialMap, onChange]);
4275
4280
  const retrieveAnswerMap = () => {
4276
4281
  const foundIndex = answer.data.findIndex(
4277
4282
  (answerData) => answerData.type === "FILL_IN_THE_BLANKS"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "catchup-library-web",
3
- "version": "1.10.1",
3
+ "version": "1.10.2",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -40,19 +40,45 @@ const FillInTheBlanksActivityMaterialContent = ({
40
40
  setShuffleOptionList(shuffleArray(optionList));
41
41
  }, []);
42
42
 
43
+ // useEffect(() => {
44
+ // if (!showCorrectAnswer) return;
45
+ // const foundAnswer = answer.data.find(
46
+ // (answerData: any) => answerData.type === "FILL_IN_THE_BLANKS"
47
+ // );
48
+ // if (foundAnswer.answerMap.length === 0) return;
49
+ // if (Object.keys(materialMap).length === 0) return;
50
+ // foundAnswer.answerMap = Object.keys(materialMap).map(
51
+ // (materialMapKey, index) => JSON.parse(materialMap[materialMapKey])[0]
52
+ // );
53
+
54
+ // onChange(answer, 0, JSON.parse(materialMap[0])[0]);
55
+ // }, [showCorrectAnswer]);
56
+
43
57
  useEffect(() => {
44
58
  if (!showCorrectAnswer) return;
59
+
45
60
  const foundAnswer = answer.data.find(
46
61
  (answerData: any) => answerData.type === "FILL_IN_THE_BLANKS"
47
62
  );
63
+
64
+ if (!foundAnswer) return;
48
65
  if (foundAnswer.answerMap.length === 0) return;
49
66
  if (Object.keys(materialMap).length === 0) return;
50
- foundAnswer.answerMap = Object.keys(materialMap).map(
51
- (materialMapKey, index) => JSON.parse(materialMap[materialMapKey])[0]
52
- );
53
67
 
54
- onChange(answer, 0, JSON.parse(materialMap[0])[0]);
55
- }, [showCorrectAnswer]);
68
+ // Create a new answerMap with correct answers
69
+ const newAnswerMap: any = {};
70
+ Object.keys(materialMap).forEach((materialMapKey) => {
71
+ newAnswerMap[materialMapKey] = JSON.parse(materialMap[materialMapKey])[0];
72
+ });
73
+
74
+ // Update the answer map
75
+ foundAnswer.answerMap = newAnswerMap;
76
+
77
+ // Trigger onChange for the first item
78
+ if (Object.keys(materialMap).length > 0) {
79
+ onChange(answer, 0, JSON.parse(materialMap[0])[0]);
80
+ }
81
+ }, [showCorrectAnswer, answer, materialMap, onChange]);
56
82
 
57
83
  const retrieveAnswerMap = () => {
58
84
  const foundIndex = answer.data.findIndex(