catchup-library-web 1.12.13 → 1.12.15
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.d.mts +29 -1
- package/dist/index.d.ts +29 -1
- package/dist/index.js +772 -617
- package/dist/index.mjs +758 -606
- package/package.json +1 -1
- package/src/components/bars/ProgressBar.tsx +85 -0
- package/src/components/bars/ScoreBar.tsx +37 -0
- package/src/components/bars/TimedProgressBar.tsx +58 -0
- package/src/index.ts +4 -0
- package/src/properties/BarProperties.ts +23 -0
package/dist/index.mjs
CHANGED
|
@@ -38,15 +38,164 @@ var __async = (__this, __arguments, generator) => {
|
|
|
38
38
|
});
|
|
39
39
|
};
|
|
40
40
|
|
|
41
|
+
// src/components/bars/ProgressBar.tsx
|
|
42
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
43
|
+
var ProgressBar = ({
|
|
44
|
+
title,
|
|
45
|
+
showRemainingTime,
|
|
46
|
+
totalTimeInSeconds,
|
|
47
|
+
remainingTimeInSeconds,
|
|
48
|
+
color,
|
|
49
|
+
borderColor,
|
|
50
|
+
height
|
|
51
|
+
}) => {
|
|
52
|
+
const retrieveMinutes = () => {
|
|
53
|
+
return Math.floor(remainingTimeInSeconds / 60);
|
|
54
|
+
};
|
|
55
|
+
const retrieveSeconds = (minutes) => {
|
|
56
|
+
const minuteInSeconds = minutes * 60;
|
|
57
|
+
return Math.floor(remainingTimeInSeconds - minuteInSeconds);
|
|
58
|
+
};
|
|
59
|
+
const calculatePercentage = () => {
|
|
60
|
+
if (remainingTimeInSeconds < 0) {
|
|
61
|
+
return totalTimeInSeconds / totalTimeInSeconds * 100;
|
|
62
|
+
} else {
|
|
63
|
+
return (totalTimeInSeconds - remainingTimeInSeconds) / totalTimeInSeconds * 100;
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
const currentMinutes = retrieveMinutes();
|
|
67
|
+
const currentSeconds = retrieveSeconds(currentMinutes);
|
|
68
|
+
return /* @__PURE__ */ jsx("div", { className: "relative w-full ", children: /* @__PURE__ */ jsxs("div", { className: "", children: [
|
|
69
|
+
title ? /* @__PURE__ */ jsx("div", { className: "absolute top-2 left-6", children: /* @__PURE__ */ jsx("span", { className: "text-xl", children: title }) }) : null,
|
|
70
|
+
showRemainingTime ? /* @__PURE__ */ jsx("div", { className: "absolute top-2 right-6", children: /* @__PURE__ */ jsxs("span", { className: "flex flex-row text-xl", children: [
|
|
71
|
+
/* @__PURE__ */ jsxs("p", { className: "mx-1", children: [
|
|
72
|
+
currentMinutes < 0 ? `00` : currentMinutes < 10 ? `0${currentMinutes}` : currentMinutes,
|
|
73
|
+
" "
|
|
74
|
+
] }),
|
|
75
|
+
":",
|
|
76
|
+
/* @__PURE__ */ jsxs("p", { className: "mx-1", children: [
|
|
77
|
+
currentSeconds < 0 ? `00` : currentSeconds < 10 ? `0${currentSeconds}` : currentSeconds,
|
|
78
|
+
" "
|
|
79
|
+
] })
|
|
80
|
+
] }) }) : null,
|
|
81
|
+
/* @__PURE__ */ jsx(
|
|
82
|
+
"div",
|
|
83
|
+
{
|
|
84
|
+
className: `${borderColor ? borderColor : "border-catchup-red"} border rounded-catchup-full`,
|
|
85
|
+
children: /* @__PURE__ */ jsx("div", { className: `w-full ${height ? height : ""} `, children: /* @__PURE__ */ jsx(
|
|
86
|
+
"div",
|
|
87
|
+
{
|
|
88
|
+
className: `rounded-catchup-full ${color ? color : "bg-catchup-red"} ${height ? height : "h-catchup-quicktivity"}`,
|
|
89
|
+
style: { width: `${calculatePercentage()}%` }
|
|
90
|
+
}
|
|
91
|
+
) })
|
|
92
|
+
}
|
|
93
|
+
)
|
|
94
|
+
] }) });
|
|
95
|
+
};
|
|
96
|
+
var ProgressBar_default = ProgressBar;
|
|
97
|
+
|
|
98
|
+
// src/components/bars/TimedProgressBar.tsx
|
|
99
|
+
import { useEffect, useState } from "react";
|
|
100
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
101
|
+
var TimedProgressBar = ({
|
|
102
|
+
title,
|
|
103
|
+
startTimer,
|
|
104
|
+
showRemainingTime,
|
|
105
|
+
totalTimeInSeconds,
|
|
106
|
+
remainingTimeInSeconds,
|
|
107
|
+
handleOnTimerEnds
|
|
108
|
+
}) => {
|
|
109
|
+
const [timerRemainingTimeInSeconds, setTimerRemainingTimeInSeconds] = useState(remainingTimeInSeconds);
|
|
110
|
+
const [timerIntervalId, setTimerIntervalId] = useState(null);
|
|
111
|
+
let timerRemainingTimeInSecondsValue = 999999999999999;
|
|
112
|
+
useEffect(() => {
|
|
113
|
+
timerRemainingTimeInSecondsValue = remainingTimeInSeconds;
|
|
114
|
+
setTimerRemainingTimeInSeconds(timerRemainingTimeInSeconds);
|
|
115
|
+
if (timerIntervalId) {
|
|
116
|
+
clearInterval(timerIntervalId);
|
|
117
|
+
}
|
|
118
|
+
if (startTimer) {
|
|
119
|
+
const currentTimerIntervalId = setInterval(() => {
|
|
120
|
+
timerRemainingTimeInSecondsValue = timerRemainingTimeInSecondsValue - 0.05;
|
|
121
|
+
setTimerRemainingTimeInSeconds(timerRemainingTimeInSecondsValue);
|
|
122
|
+
}, 50);
|
|
123
|
+
setTimerIntervalId(currentTimerIntervalId);
|
|
124
|
+
} else {
|
|
125
|
+
if (timerIntervalId) {
|
|
126
|
+
clearInterval(timerIntervalId);
|
|
127
|
+
setTimerIntervalId(null);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}, [remainingTimeInSeconds, startTimer]);
|
|
131
|
+
useEffect(() => {
|
|
132
|
+
if (timerRemainingTimeInSeconds < 0) {
|
|
133
|
+
if (timerIntervalId) {
|
|
134
|
+
clearInterval(timerIntervalId);
|
|
135
|
+
}
|
|
136
|
+
handleOnTimerEnds(startTimer);
|
|
137
|
+
}
|
|
138
|
+
}, [timerRemainingTimeInSeconds]);
|
|
139
|
+
return /* @__PURE__ */ jsx2(
|
|
140
|
+
ProgressBar_default,
|
|
141
|
+
{
|
|
142
|
+
title,
|
|
143
|
+
showRemainingTime,
|
|
144
|
+
remainingTimeInSeconds: timerRemainingTimeInSeconds,
|
|
145
|
+
totalTimeInSeconds
|
|
146
|
+
}
|
|
147
|
+
);
|
|
148
|
+
};
|
|
149
|
+
var TimedProgressBar_default = TimedProgressBar;
|
|
150
|
+
|
|
151
|
+
// src/components/bars/ScoreBar.tsx
|
|
152
|
+
import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
153
|
+
var ScoreBar = ({ score, className }) => {
|
|
154
|
+
const getProgressBarColor = (score2) => {
|
|
155
|
+
if (score2 >= 70) return "bg-catchup-green";
|
|
156
|
+
if (score2 >= 30) return "bg-catchup-orange";
|
|
157
|
+
return "bg-catchup-red";
|
|
158
|
+
};
|
|
159
|
+
const getTextColor = (score2) => {
|
|
160
|
+
if (score2 >= 70) return "text-catchup-hover-green";
|
|
161
|
+
if (score2 >= 30) return "text-catchup-orange";
|
|
162
|
+
return "text-catchup-red";
|
|
163
|
+
};
|
|
164
|
+
return /* @__PURE__ */ jsxs2("div", { className: `flex items-center gap-2 ${className}`, children: [
|
|
165
|
+
/* @__PURE__ */ jsx3("div", { className: "flex-1 h-5 bg-catchup-gray-100 rounded-catchup-full overflow-hidden", children: /* @__PURE__ */ jsx3(
|
|
166
|
+
"div",
|
|
167
|
+
{
|
|
168
|
+
className: `h-full rounded-catchup-full transition-all duration-300 ${getProgressBarColor(
|
|
169
|
+
score
|
|
170
|
+
)}`,
|
|
171
|
+
style: { width: `${score}%` }
|
|
172
|
+
}
|
|
173
|
+
) }),
|
|
174
|
+
/* @__PURE__ */ jsxs2(
|
|
175
|
+
"span",
|
|
176
|
+
{
|
|
177
|
+
className: `min-w-[35px] font-semibold text-right ${getTextColor(
|
|
178
|
+
score
|
|
179
|
+
)}`,
|
|
180
|
+
children: [
|
|
181
|
+
score,
|
|
182
|
+
"%"
|
|
183
|
+
]
|
|
184
|
+
}
|
|
185
|
+
)
|
|
186
|
+
] });
|
|
187
|
+
};
|
|
188
|
+
var ScoreBar_default = ScoreBar;
|
|
189
|
+
|
|
41
190
|
// src/components/buttons/PrimaryButton.tsx
|
|
42
|
-
import { useState as
|
|
191
|
+
import { useState as useState3 } from "react";
|
|
43
192
|
|
|
44
193
|
// src/components/images/BaseImage.tsx
|
|
45
|
-
import { useState, forwardRef } from "react";
|
|
194
|
+
import { useState as useState2, forwardRef } from "react";
|
|
46
195
|
|
|
47
196
|
// src/components/loading/BaseLoading.tsx
|
|
48
197
|
import { Oval } from "react-loader-spinner";
|
|
49
|
-
import { jsx } from "react/jsx-runtime";
|
|
198
|
+
import { jsx as jsx4 } from "react/jsx-runtime";
|
|
50
199
|
var BaseLoading = ({
|
|
51
200
|
height,
|
|
52
201
|
width,
|
|
@@ -77,12 +226,12 @@ var BaseLoading = ({
|
|
|
77
226
|
currentHeight = height;
|
|
78
227
|
currentWidth = width;
|
|
79
228
|
}
|
|
80
|
-
return /* @__PURE__ */
|
|
229
|
+
return /* @__PURE__ */ jsx4(
|
|
81
230
|
"div",
|
|
82
231
|
{
|
|
83
232
|
className: "flex justify-center items-center",
|
|
84
233
|
style: { marginTop: currentMargin, marginBottom: currentMargin },
|
|
85
|
-
children: /* @__PURE__ */
|
|
234
|
+
children: /* @__PURE__ */ jsx4(
|
|
86
235
|
Oval,
|
|
87
236
|
{
|
|
88
237
|
height: currentHeight,
|
|
@@ -103,7 +252,7 @@ var BaseLoading = ({
|
|
|
103
252
|
var BaseLoading_default = BaseLoading;
|
|
104
253
|
|
|
105
254
|
// src/components/images/BaseImage.tsx
|
|
106
|
-
import { jsx as
|
|
255
|
+
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
107
256
|
var BaseImage = forwardRef(
|
|
108
257
|
(props, ref) => {
|
|
109
258
|
const {
|
|
@@ -124,8 +273,8 @@ var BaseImage = forwardRef(
|
|
|
124
273
|
dataToolTipHTML,
|
|
125
274
|
borderRadius
|
|
126
275
|
} = props;
|
|
127
|
-
const [key, setKey] =
|
|
128
|
-
const [loading, setLoading] =
|
|
276
|
+
const [key, setKey] = useState2((/* @__PURE__ */ new Date()).getTime());
|
|
277
|
+
const [loading, setLoading] = useState2(false);
|
|
129
278
|
const handleOnClick = (e) => {
|
|
130
279
|
e.preventDefault();
|
|
131
280
|
if (showLoading) {
|
|
@@ -175,19 +324,19 @@ var BaseImage = forwardRef(
|
|
|
175
324
|
currentWidthClassName = widthClassName;
|
|
176
325
|
currentHeightClassName = heightClassName;
|
|
177
326
|
}
|
|
178
|
-
return loading ? /* @__PURE__ */
|
|
327
|
+
return loading ? /* @__PURE__ */ jsx5(
|
|
179
328
|
BaseLoading_default,
|
|
180
329
|
{
|
|
181
330
|
size: "small",
|
|
182
331
|
primaryColor: "#57C2D3",
|
|
183
332
|
secondaryColor: "#57C2D3"
|
|
184
333
|
}
|
|
185
|
-
) : /* @__PURE__ */
|
|
334
|
+
) : /* @__PURE__ */ jsx5(
|
|
186
335
|
"span",
|
|
187
336
|
{
|
|
188
337
|
className: `${currentWidthClassName ? currentWidthClassName : ""} ${currentHeightClassName ? currentHeightClassName : ""} ${currentClassName ? currentClassName : ""} cursor-pointer inline-block ${hidden ? "hidden" : ""}`,
|
|
189
338
|
onClick: handleOnClick,
|
|
190
|
-
children: /* @__PURE__ */
|
|
339
|
+
children: /* @__PURE__ */ jsx5(
|
|
191
340
|
"img",
|
|
192
341
|
{
|
|
193
342
|
ref,
|
|
@@ -211,7 +360,7 @@ BaseImage.displayName = "BaseImage";
|
|
|
211
360
|
var BaseImage_default = BaseImage;
|
|
212
361
|
|
|
213
362
|
// src/components/buttons/PrimaryButton.tsx
|
|
214
|
-
import { jsx as
|
|
363
|
+
import { jsx as jsx6, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
215
364
|
var PrimaryButton = ({
|
|
216
365
|
title,
|
|
217
366
|
size,
|
|
@@ -221,7 +370,7 @@ var PrimaryButton = ({
|
|
|
221
370
|
textOnly,
|
|
222
371
|
iconOnly
|
|
223
372
|
}) => {
|
|
224
|
-
const [loading, setLoading] =
|
|
373
|
+
const [loading, setLoading] = useState3(false);
|
|
225
374
|
const internalOnClick = () => __async(void 0, null, function* () {
|
|
226
375
|
if (loading) return;
|
|
227
376
|
if (disabled) return;
|
|
@@ -248,12 +397,12 @@ var PrimaryButton = ({
|
|
|
248
397
|
currentLoadingSize = 14;
|
|
249
398
|
currentHeightClassName = "h-8";
|
|
250
399
|
}
|
|
251
|
-
return /* @__PURE__ */
|
|
400
|
+
return /* @__PURE__ */ jsx6(
|
|
252
401
|
"button",
|
|
253
402
|
{
|
|
254
403
|
className: `border border-catchup-blue-500 bg-catchup-blue-500 text-catchup-white rounded-catchup-button ${loading ? "" : disabled ? "opacity-50" : "hover:bg-catchup-blue-700 active:bg-catchup-blue-500"} transition duration-300 ${currentWidthClassName} ${currentHeightClassName}`,
|
|
255
404
|
onClick: internalOnClick,
|
|
256
|
-
children: loading ? /* @__PURE__ */
|
|
405
|
+
children: loading ? /* @__PURE__ */ jsx6(
|
|
257
406
|
BaseLoading_default,
|
|
258
407
|
{
|
|
259
408
|
height: currentLoadingSize,
|
|
@@ -261,8 +410,8 @@ var PrimaryButton = ({
|
|
|
261
410
|
primaryColor: "#ffffff",
|
|
262
411
|
secondaryColor: "#ffffff"
|
|
263
412
|
}
|
|
264
|
-
) : /* @__PURE__ */
|
|
265
|
-
iconPosition === "left" ? /* @__PURE__ */
|
|
413
|
+
) : /* @__PURE__ */ jsxs3("div", { className: "flex flex-row justify-center items-center gap-x-2 px-4", children: [
|
|
414
|
+
iconPosition === "left" ? /* @__PURE__ */ jsx6(
|
|
266
415
|
BaseImage_default,
|
|
267
416
|
{
|
|
268
417
|
src: "/icons/primary-button-arrow-left.webp",
|
|
@@ -270,8 +419,8 @@ var PrimaryButton = ({
|
|
|
270
419
|
size: "xsmall"
|
|
271
420
|
}
|
|
272
421
|
) : null,
|
|
273
|
-
iconOnly ? null : /* @__PURE__ */
|
|
274
|
-
textOnly || iconPosition === "left" ? null : /* @__PURE__ */
|
|
422
|
+
iconOnly ? null : /* @__PURE__ */ jsx6("p", { className: "", children: title }),
|
|
423
|
+
textOnly || iconPosition === "left" ? null : /* @__PURE__ */ jsx6(
|
|
275
424
|
BaseImage_default,
|
|
276
425
|
{
|
|
277
426
|
src: "/icons/primary-button-arrow-right.webp",
|
|
@@ -286,8 +435,8 @@ var PrimaryButton = ({
|
|
|
286
435
|
var PrimaryButton_default = PrimaryButton;
|
|
287
436
|
|
|
288
437
|
// src/components/buttons/SecondaryButton.tsx
|
|
289
|
-
import { useState as
|
|
290
|
-
import { jsx as
|
|
438
|
+
import { useState as useState4 } from "react";
|
|
439
|
+
import { jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
291
440
|
var SecondaryButton = ({
|
|
292
441
|
title,
|
|
293
442
|
size,
|
|
@@ -297,8 +446,8 @@ var SecondaryButton = ({
|
|
|
297
446
|
textOnly,
|
|
298
447
|
iconOnly
|
|
299
448
|
}) => {
|
|
300
|
-
const [loading, setLoading] =
|
|
301
|
-
const [isHovered, setIsHovered] =
|
|
449
|
+
const [loading, setLoading] = useState4(false);
|
|
450
|
+
const [isHovered, setIsHovered] = useState4(false);
|
|
302
451
|
const internalOnClick = () => __async(void 0, null, function* () {
|
|
303
452
|
if (loading) return;
|
|
304
453
|
if (disabled) return;
|
|
@@ -325,7 +474,7 @@ var SecondaryButton = ({
|
|
|
325
474
|
currentLoadingSize = 14;
|
|
326
475
|
currentHeightClassName = "h-8";
|
|
327
476
|
}
|
|
328
|
-
return /* @__PURE__ */
|
|
477
|
+
return /* @__PURE__ */ jsx7(
|
|
329
478
|
"button",
|
|
330
479
|
{
|
|
331
480
|
className: `border border-catchup-gray-400 bg-catchup-white text-catchup-gray-600 rounded-catchup-button ${loading ? "" : disabled ? "opacity-50" : "hover:bg-catchup-gray-400 hover:text-catchup-white hover:border-catchup-gray-400 active:bg-catchup-gray-500 active:border-catchup-gray-500 active:text-catchup-white"} transition duration-300 ${currentWidthClassName} ${currentHeightClassName}`,
|
|
@@ -336,7 +485,7 @@ var SecondaryButton = ({
|
|
|
336
485
|
onMouseLeave: () => {
|
|
337
486
|
setIsHovered(false);
|
|
338
487
|
},
|
|
339
|
-
children: loading ? /* @__PURE__ */
|
|
488
|
+
children: loading ? /* @__PURE__ */ jsx7(
|
|
340
489
|
BaseLoading_default,
|
|
341
490
|
{
|
|
342
491
|
height: currentLoadingSize,
|
|
@@ -344,8 +493,8 @@ var SecondaryButton = ({
|
|
|
344
493
|
primaryColor: "#55777f",
|
|
345
494
|
secondaryColor: "#55777f"
|
|
346
495
|
}
|
|
347
|
-
) : /* @__PURE__ */
|
|
348
|
-
iconPosition === "left" ? /* @__PURE__ */
|
|
496
|
+
) : /* @__PURE__ */ jsxs4("div", { className: "flex flex-row justify-center items-center gap-x-2 px-4", children: [
|
|
497
|
+
iconPosition === "left" ? /* @__PURE__ */ jsx7(
|
|
349
498
|
BaseImage_default,
|
|
350
499
|
{
|
|
351
500
|
src: "/icons/secondary-button-arrow-left.webp",
|
|
@@ -353,8 +502,8 @@ var SecondaryButton = ({
|
|
|
353
502
|
size: "xsmall"
|
|
354
503
|
}
|
|
355
504
|
) : null,
|
|
356
|
-
iconOnly ? null : /* @__PURE__ */
|
|
357
|
-
textOnly || iconPosition === "left" ? null : /* @__PURE__ */
|
|
505
|
+
iconOnly ? null : /* @__PURE__ */ jsx7("p", { className: "", children: title }),
|
|
506
|
+
textOnly || iconPosition === "left" ? null : /* @__PURE__ */ jsx7(
|
|
358
507
|
BaseImage_default,
|
|
359
508
|
{
|
|
360
509
|
src: "/icons/secondary-button-arrow-right.webp",
|
|
@@ -369,8 +518,8 @@ var SecondaryButton = ({
|
|
|
369
518
|
var SecondaryButton_default = SecondaryButton;
|
|
370
519
|
|
|
371
520
|
// src/components/buttons/CreateButton.tsx
|
|
372
|
-
import { useState as
|
|
373
|
-
import { jsx as
|
|
521
|
+
import { useState as useState5 } from "react";
|
|
522
|
+
import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
374
523
|
var CreateButton = ({
|
|
375
524
|
title,
|
|
376
525
|
size,
|
|
@@ -380,7 +529,7 @@ var CreateButton = ({
|
|
|
380
529
|
textOnly,
|
|
381
530
|
iconOnly
|
|
382
531
|
}) => {
|
|
383
|
-
const [loading, setLoading] =
|
|
532
|
+
const [loading, setLoading] = useState5(false);
|
|
384
533
|
const internalOnClick = () => __async(void 0, null, function* () {
|
|
385
534
|
if (loading) return;
|
|
386
535
|
if (disabled) return;
|
|
@@ -407,12 +556,12 @@ var CreateButton = ({
|
|
|
407
556
|
currentLoadingSize = 14;
|
|
408
557
|
currentHeightClassName = "h-8";
|
|
409
558
|
}
|
|
410
|
-
return /* @__PURE__ */
|
|
559
|
+
return /* @__PURE__ */ jsx8(
|
|
411
560
|
"button",
|
|
412
561
|
{
|
|
413
562
|
className: `border border-catchup-blue-500 bg-catchup-blue-500 text-catchup-white rounded-catchup-button ${loading ? "" : disabled ? "opacity-50" : "hover:bg-catchup-blue-700 active:bg-catchup-blue-500"} transition duration-300 ${currentWidthClassName} ${currentHeightClassName}`,
|
|
414
563
|
onClick: internalOnClick,
|
|
415
|
-
children: loading ? /* @__PURE__ */
|
|
564
|
+
children: loading ? /* @__PURE__ */ jsx8(
|
|
416
565
|
BaseLoading_default,
|
|
417
566
|
{
|
|
418
567
|
height: currentLoadingSize,
|
|
@@ -420,8 +569,8 @@ var CreateButton = ({
|
|
|
420
569
|
primaryColor: "#ffffff",
|
|
421
570
|
secondaryColor: "#ffffff"
|
|
422
571
|
}
|
|
423
|
-
) : /* @__PURE__ */
|
|
424
|
-
iconPosition === "left" ? /* @__PURE__ */
|
|
572
|
+
) : /* @__PURE__ */ jsxs5("div", { className: "flex flex-row justify-center items-center gap-x-2 px-4", children: [
|
|
573
|
+
iconPosition === "left" ? /* @__PURE__ */ jsx8(
|
|
425
574
|
BaseImage_default,
|
|
426
575
|
{
|
|
427
576
|
src: "/icons/primary-button-create-white.webp",
|
|
@@ -429,8 +578,8 @@ var CreateButton = ({
|
|
|
429
578
|
size: "xsmall"
|
|
430
579
|
}
|
|
431
580
|
) : null,
|
|
432
|
-
iconOnly ? null : /* @__PURE__ */
|
|
433
|
-
textOnly || iconPosition === "left" ? null : /* @__PURE__ */
|
|
581
|
+
iconOnly ? null : /* @__PURE__ */ jsx8("p", { className: "", children: title }),
|
|
582
|
+
textOnly || iconPosition === "left" ? null : /* @__PURE__ */ jsx8(
|
|
434
583
|
BaseImage_default,
|
|
435
584
|
{
|
|
436
585
|
src: "/icons/primary-button-create-white.webp",
|
|
@@ -445,8 +594,8 @@ var CreateButton = ({
|
|
|
445
594
|
var CreateButton_default = CreateButton;
|
|
446
595
|
|
|
447
596
|
// src/components/buttons/DeleteButton.tsx
|
|
448
|
-
import { useState as
|
|
449
|
-
import { jsx as
|
|
597
|
+
import { useState as useState6 } from "react";
|
|
598
|
+
import { jsx as jsx9, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
450
599
|
var DeleteButton = ({
|
|
451
600
|
title,
|
|
452
601
|
size,
|
|
@@ -456,8 +605,8 @@ var DeleteButton = ({
|
|
|
456
605
|
textOnly,
|
|
457
606
|
iconOnly
|
|
458
607
|
}) => {
|
|
459
|
-
const [loading, setLoading] =
|
|
460
|
-
const [isHovered, setIsHovered] =
|
|
608
|
+
const [loading, setLoading] = useState6(false);
|
|
609
|
+
const [isHovered, setIsHovered] = useState6(false);
|
|
461
610
|
const internalOnClick = () => __async(void 0, null, function* () {
|
|
462
611
|
if (loading) return;
|
|
463
612
|
if (disabled) return;
|
|
@@ -481,7 +630,7 @@ var DeleteButton = ({
|
|
|
481
630
|
currentHeightClassName = "h-12";
|
|
482
631
|
currentLoadingSize = 18;
|
|
483
632
|
}
|
|
484
|
-
return /* @__PURE__ */
|
|
633
|
+
return /* @__PURE__ */ jsx9(
|
|
485
634
|
"button",
|
|
486
635
|
{
|
|
487
636
|
className: `border border-catchup-red bg-catchup-white text-catchup-red rounded-catchup-button ${loading ? "" : disabled ? "opacity-50" : "hover:bg-catchup-red hover:text-catchup-white hover:border-catchup-red active:bg-catchup-red active:hover:border-catchup-red active:text-catchup-white active:opacity-80"} transition duration-300 ${currentWidthClassName} ${currentHeightClassName}`,
|
|
@@ -492,7 +641,7 @@ var DeleteButton = ({
|
|
|
492
641
|
onMouseLeave: () => {
|
|
493
642
|
setIsHovered(false);
|
|
494
643
|
},
|
|
495
|
-
children: loading ? /* @__PURE__ */
|
|
644
|
+
children: loading ? /* @__PURE__ */ jsx9(
|
|
496
645
|
BaseLoading_default,
|
|
497
646
|
{
|
|
498
647
|
height: currentLoadingSize,
|
|
@@ -500,8 +649,8 @@ var DeleteButton = ({
|
|
|
500
649
|
primaryColor: "#55777f",
|
|
501
650
|
secondaryColor: "#55777f"
|
|
502
651
|
}
|
|
503
|
-
) : /* @__PURE__ */
|
|
504
|
-
iconPosition === "left" ? /* @__PURE__ */
|
|
652
|
+
) : /* @__PURE__ */ jsxs6("div", { className: "flex flex-row justify-center items-center gap-x-2", children: [
|
|
653
|
+
iconPosition === "left" ? /* @__PURE__ */ jsx9(
|
|
505
654
|
BaseImage_default,
|
|
506
655
|
{
|
|
507
656
|
src: `${isHovered ? "/icons/remove-white.webp" : "/icons/remove-red.webp"}`,
|
|
@@ -509,8 +658,8 @@ var DeleteButton = ({
|
|
|
509
658
|
size: "xsmall"
|
|
510
659
|
}
|
|
511
660
|
) : null,
|
|
512
|
-
iconOnly ? null : /* @__PURE__ */
|
|
513
|
-
textOnly || iconPosition === "left" ? null : /* @__PURE__ */
|
|
661
|
+
iconOnly ? null : /* @__PURE__ */ jsx9("p", { className: "", children: title }),
|
|
662
|
+
textOnly || iconPosition === "left" ? null : /* @__PURE__ */ jsx9(
|
|
514
663
|
BaseImage_default,
|
|
515
664
|
{
|
|
516
665
|
src: `${isHovered ? "/icons/remove-white.webp" : "/icons/remove-red.webp"}`,
|
|
@@ -525,8 +674,8 @@ var DeleteButton = ({
|
|
|
525
674
|
var DeleteButton_default = DeleteButton;
|
|
526
675
|
|
|
527
676
|
// src/components/buttons/CancelButton.tsx
|
|
528
|
-
import { useState as
|
|
529
|
-
import { jsx as
|
|
677
|
+
import { useState as useState7 } from "react";
|
|
678
|
+
import { jsx as jsx10, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
530
679
|
var CancelButton = ({
|
|
531
680
|
title,
|
|
532
681
|
size,
|
|
@@ -536,8 +685,8 @@ var CancelButton = ({
|
|
|
536
685
|
textOnly,
|
|
537
686
|
iconOnly
|
|
538
687
|
}) => {
|
|
539
|
-
const [loading, setLoading] =
|
|
540
|
-
const [isHovered, setIsHovered] =
|
|
688
|
+
const [loading, setLoading] = useState7(false);
|
|
689
|
+
const [isHovered, setIsHovered] = useState7(false);
|
|
541
690
|
const internalOnClick = () => __async(void 0, null, function* () {
|
|
542
691
|
if (loading) return;
|
|
543
692
|
if (disabled) return;
|
|
@@ -564,7 +713,7 @@ var CancelButton = ({
|
|
|
564
713
|
currentLoadingSize = 14;
|
|
565
714
|
currentHeightClassName = "h-8";
|
|
566
715
|
}
|
|
567
|
-
return /* @__PURE__ */
|
|
716
|
+
return /* @__PURE__ */ jsx10(
|
|
568
717
|
"button",
|
|
569
718
|
{
|
|
570
719
|
className: `border border-catchup-gray-400 bg-catchup-white text-catchup-gray-600 rounded-catchup-button ${loading ? "" : disabled ? "opacity-50" : "hover:bg-catchup-gray-400 hover:text-catchup-white hover:border-catchup-gray-400 active:bg-catchup-gray-500 active:border-catchup-gray-500 active:text-catchup-white"} transition duration-300 ${currentWidthClassName} ${currentHeightClassName}`,
|
|
@@ -575,7 +724,7 @@ var CancelButton = ({
|
|
|
575
724
|
onMouseLeave: () => {
|
|
576
725
|
setIsHovered(false);
|
|
577
726
|
},
|
|
578
|
-
children: loading ? /* @__PURE__ */
|
|
727
|
+
children: loading ? /* @__PURE__ */ jsx10(
|
|
579
728
|
BaseLoading_default,
|
|
580
729
|
{
|
|
581
730
|
height: currentLoadingSize,
|
|
@@ -583,8 +732,8 @@ var CancelButton = ({
|
|
|
583
732
|
primaryColor: "#55777f",
|
|
584
733
|
secondaryColor: "#55777f"
|
|
585
734
|
}
|
|
586
|
-
) : /* @__PURE__ */
|
|
587
|
-
iconPosition === "left" ? /* @__PURE__ */
|
|
735
|
+
) : /* @__PURE__ */ jsxs7("div", { className: "flex flex-row justify-center items-center gap-x-2", children: [
|
|
736
|
+
iconPosition === "left" ? /* @__PURE__ */ jsx10(
|
|
588
737
|
BaseImage_default,
|
|
589
738
|
{
|
|
590
739
|
src: `${isHovered ? "/icons/cancel-button-arrow-left-white.webp" : "/icons/cancel-button-arrow-left.webp"}`,
|
|
@@ -592,8 +741,8 @@ var CancelButton = ({
|
|
|
592
741
|
size: "xsmall"
|
|
593
742
|
}
|
|
594
743
|
) : null,
|
|
595
|
-
iconOnly ? null : /* @__PURE__ */
|
|
596
|
-
textOnly || iconPosition === "left" ? null : /* @__PURE__ */
|
|
744
|
+
iconOnly ? null : /* @__PURE__ */ jsx10("p", { className: "", children: title }),
|
|
745
|
+
textOnly || iconPosition === "left" ? null : /* @__PURE__ */ jsx10(
|
|
597
746
|
BaseImage_default,
|
|
598
747
|
{
|
|
599
748
|
src: `${isHovered ? "/icons/cancel-button-arrow-left-white.webp" : "/icons/cancel-button-arrow-left.webp"}`,
|
|
@@ -608,8 +757,8 @@ var CancelButton = ({
|
|
|
608
757
|
var CancelButton_default = CancelButton;
|
|
609
758
|
|
|
610
759
|
// src/components/buttons/ApproveButton.tsx
|
|
611
|
-
import { useState as
|
|
612
|
-
import { jsx as
|
|
760
|
+
import { useState as useState8 } from "react";
|
|
761
|
+
import { jsx as jsx11, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
613
762
|
var ApproveButton = ({
|
|
614
763
|
title,
|
|
615
764
|
size,
|
|
@@ -619,7 +768,7 @@ var ApproveButton = ({
|
|
|
619
768
|
textOnly,
|
|
620
769
|
iconOnly
|
|
621
770
|
}) => {
|
|
622
|
-
const [loading, setLoading] =
|
|
771
|
+
const [loading, setLoading] = useState8(false);
|
|
623
772
|
const internalOnClick = () => __async(void 0, null, function* () {
|
|
624
773
|
if (loading) return;
|
|
625
774
|
if (disabled) return;
|
|
@@ -646,12 +795,12 @@ var ApproveButton = ({
|
|
|
646
795
|
currentLoadingSize = 14;
|
|
647
796
|
currentHeightClassName = "h-8";
|
|
648
797
|
}
|
|
649
|
-
return /* @__PURE__ */
|
|
798
|
+
return /* @__PURE__ */ jsx11(
|
|
650
799
|
"button",
|
|
651
800
|
{
|
|
652
801
|
className: `border border-catchup-green bg-catchup-green text-catchup-white rounded-catchup-button ${loading ? "" : disabled ? "opacity-50" : "hover:bg-catchup-hover-green active:bg-catchup-green"} transition duration-300 ${currentWidthClassName} ${currentHeightClassName}`,
|
|
653
802
|
onClick: internalOnClick,
|
|
654
|
-
children: loading ? /* @__PURE__ */
|
|
803
|
+
children: loading ? /* @__PURE__ */ jsx11(
|
|
655
804
|
BaseLoading_default,
|
|
656
805
|
{
|
|
657
806
|
height: currentLoadingSize,
|
|
@@ -659,8 +808,8 @@ var ApproveButton = ({
|
|
|
659
808
|
primaryColor: "#ffffff",
|
|
660
809
|
secondaryColor: "#ffffff"
|
|
661
810
|
}
|
|
662
|
-
) : /* @__PURE__ */
|
|
663
|
-
iconPosition === "left" ? /* @__PURE__ */
|
|
811
|
+
) : /* @__PURE__ */ jsxs8("div", { className: "flex flex-row justify-center items-center gap-x-2 px-4", children: [
|
|
812
|
+
iconPosition === "left" ? /* @__PURE__ */ jsx11(
|
|
664
813
|
BaseImage_default,
|
|
665
814
|
{
|
|
666
815
|
src: "/icons/primary-button-arrow-left.webp",
|
|
@@ -668,8 +817,8 @@ var ApproveButton = ({
|
|
|
668
817
|
size: "xsmall"
|
|
669
818
|
}
|
|
670
819
|
) : null,
|
|
671
|
-
iconOnly ? null : /* @__PURE__ */
|
|
672
|
-
textOnly || iconPosition === "left" ? null : /* @__PURE__ */
|
|
820
|
+
iconOnly ? null : /* @__PURE__ */ jsx11("p", { className: "", children: title }),
|
|
821
|
+
textOnly || iconPosition === "left" ? null : /* @__PURE__ */ jsx11(
|
|
673
822
|
BaseImage_default,
|
|
674
823
|
{
|
|
675
824
|
src: "/icons/primary-button-arrow-right.webp",
|
|
@@ -684,7 +833,7 @@ var ApproveButton = ({
|
|
|
684
833
|
var ApproveButton_default = ApproveButton;
|
|
685
834
|
|
|
686
835
|
// src/components/cards/FullCard.tsx
|
|
687
|
-
import { jsx as
|
|
836
|
+
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
688
837
|
var FullCard = ({
|
|
689
838
|
bgColor,
|
|
690
839
|
opacity,
|
|
@@ -692,11 +841,11 @@ var FullCard = ({
|
|
|
692
841
|
usePadding,
|
|
693
842
|
children
|
|
694
843
|
}) => {
|
|
695
|
-
return /* @__PURE__ */
|
|
844
|
+
return /* @__PURE__ */ jsx12("div", { className: "flex flex-col justify-center items-center h-full", children: /* @__PURE__ */ jsx12(
|
|
696
845
|
"div",
|
|
697
846
|
{
|
|
698
847
|
className: `flex-1 ${bgColor ? bgColor : ""} ${opacity ? opacity : "opacity-100"} rounded-catchup-xlarge w-full border border-catchup-gray-50 bg-catchup-white`,
|
|
699
|
-
children: /* @__PURE__ */
|
|
848
|
+
children: /* @__PURE__ */ jsx12(
|
|
700
849
|
"div",
|
|
701
850
|
{
|
|
702
851
|
className: `flex flex-col mx-auto ${usePadding === false ? "p-0" : "p-6"} h-full`,
|
|
@@ -709,7 +858,7 @@ var FullCard = ({
|
|
|
709
858
|
var FullCard_default = FullCard;
|
|
710
859
|
|
|
711
860
|
// src/components/loading/BaseLoadingWithText.tsx
|
|
712
|
-
import { useEffect, useState as
|
|
861
|
+
import { useEffect as useEffect2, useState as useState9 } from "react";
|
|
713
862
|
|
|
714
863
|
// src/language/i18n.ts
|
|
715
864
|
import i18n from "i18next";
|
|
@@ -718,19 +867,19 @@ i18n.use(initReactI18next);
|
|
|
718
867
|
var i18n_default = i18n;
|
|
719
868
|
|
|
720
869
|
// src/components/loading/BaseLoadingWithText.tsx
|
|
721
|
-
import { jsx as
|
|
870
|
+
import { jsx as jsx13, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
722
871
|
var BaseLoadingWithText = (props) => {
|
|
723
872
|
const { height, width, size, primaryColor, secondaryColor, hideText } = props;
|
|
724
|
-
const [initialTimestamp, setInitialTimestamp] =
|
|
873
|
+
const [initialTimestamp, setInitialTimestamp] = useState9(
|
|
725
874
|
(/* @__PURE__ */ new Date()).getTime()
|
|
726
875
|
);
|
|
727
|
-
const [currentTimestamp, setCurrentTimeStamp] =
|
|
876
|
+
const [currentTimestamp, setCurrentTimeStamp] = useState9(
|
|
728
877
|
(/* @__PURE__ */ new Date()).getTime()
|
|
729
878
|
);
|
|
730
879
|
let timerId;
|
|
731
880
|
let textClassName;
|
|
732
881
|
let textWidth;
|
|
733
|
-
|
|
882
|
+
useEffect2(() => {
|
|
734
883
|
timerId = setInterval(() => {
|
|
735
884
|
setCurrentTimeStamp((/* @__PURE__ */ new Date()).getTime());
|
|
736
885
|
}, 1e3);
|
|
@@ -766,8 +915,8 @@ var BaseLoadingWithText = (props) => {
|
|
|
766
915
|
textWidth = 250;
|
|
767
916
|
}
|
|
768
917
|
const loadingText = retrieveLoadingText();
|
|
769
|
-
return /* @__PURE__ */
|
|
770
|
-
/* @__PURE__ */
|
|
918
|
+
return /* @__PURE__ */ jsxs9("div", { className: "flex flex-col justify-center items-center", children: [
|
|
919
|
+
/* @__PURE__ */ jsx13(
|
|
771
920
|
BaseLoading_default,
|
|
772
921
|
{
|
|
773
922
|
height,
|
|
@@ -777,12 +926,12 @@ var BaseLoadingWithText = (props) => {
|
|
|
777
926
|
secondaryColor
|
|
778
927
|
}
|
|
779
928
|
),
|
|
780
|
-
!hideText && size !== "small" ? /* @__PURE__ */
|
|
929
|
+
!hideText && size !== "small" ? /* @__PURE__ */ jsx13(
|
|
781
930
|
"div",
|
|
782
931
|
{
|
|
783
932
|
className: `${textClassName} text-center`,
|
|
784
933
|
style: { width: textWidth },
|
|
785
|
-
children: /* @__PURE__ */
|
|
934
|
+
children: /* @__PURE__ */ jsx13("p", { className: "font-bold", children: loadingText })
|
|
786
935
|
}
|
|
787
936
|
) : null
|
|
788
937
|
] });
|
|
@@ -791,7 +940,7 @@ var BaseLoadingWithText_default = BaseLoadingWithText;
|
|
|
791
940
|
|
|
792
941
|
// src/components/modals/BaseModal.tsx
|
|
793
942
|
import Modal from "react-modal";
|
|
794
|
-
import { jsx as
|
|
943
|
+
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
795
944
|
var BaseModal = ({
|
|
796
945
|
isOpen,
|
|
797
946
|
size,
|
|
@@ -800,7 +949,7 @@ var BaseModal = ({
|
|
|
800
949
|
customSize,
|
|
801
950
|
children
|
|
802
951
|
}) => {
|
|
803
|
-
return /* @__PURE__ */
|
|
952
|
+
return /* @__PURE__ */ jsx14(
|
|
804
953
|
Modal,
|
|
805
954
|
{
|
|
806
955
|
isOpen,
|
|
@@ -828,7 +977,7 @@ var BaseModal = ({
|
|
|
828
977
|
}
|
|
829
978
|
},
|
|
830
979
|
contentLabel: "",
|
|
831
|
-
children: customSize ? /* @__PURE__ */
|
|
980
|
+
children: customSize ? /* @__PURE__ */ jsx14("div", { className: `${customSize} font-quicksand`, children }) : /* @__PURE__ */ jsx14(
|
|
832
981
|
"div",
|
|
833
982
|
{
|
|
834
983
|
className: `font-quicksand ${size === "small" ? "w-[600px]" : size === "medium" ? "w-[900px]" : "w-[600px] lg:w-[900px] xl:w-[1200px] 2xl:w-[1500px]"}`,
|
|
@@ -841,14 +990,14 @@ var BaseModal = ({
|
|
|
841
990
|
var BaseModal_default = BaseModal;
|
|
842
991
|
|
|
843
992
|
// src/components/activities/empty-content/ActivityEmptyContent.tsx
|
|
844
|
-
import { jsx as
|
|
993
|
+
import { jsx as jsx15 } from "react/jsx-runtime";
|
|
845
994
|
var ActivityEmptyContent = () => {
|
|
846
|
-
return /* @__PURE__ */
|
|
995
|
+
return /* @__PURE__ */ jsx15("div", { className: "flex flex-col items-center justify-center border-2 border-catchup-orange rounded-catchup-xlarge px-5 py-2 my-5 bg-catchup-orange", children: /* @__PURE__ */ jsx15("div", { className: "", children: /* @__PURE__ */ jsx15("p", { className: "text-catchup-white text-xl", children: i18n_default.t("you_have_set_this_activity_as_empty") }) }) });
|
|
847
996
|
};
|
|
848
997
|
var ActivityEmptyContent_default = ActivityEmptyContent;
|
|
849
998
|
|
|
850
999
|
// src/components/activities/body-content/ShowBodyMediaByContentType.tsx
|
|
851
|
-
import { useState as
|
|
1000
|
+
import { useState as useState10 } from "react";
|
|
852
1001
|
import Modal2 from "react-modal";
|
|
853
1002
|
|
|
854
1003
|
// src/utilization/CatchtivityUtilization.ts
|
|
@@ -2917,15 +3066,15 @@ var constructActivityItemListSolutionOnly = (solutionMap) => {
|
|
|
2917
3066
|
|
|
2918
3067
|
// src/components/activities/body-content/ShowBodyMediaByContentType.tsx
|
|
2919
3068
|
import { InlineMath } from "react-katex";
|
|
2920
|
-
import { jsx as
|
|
3069
|
+
import { jsx as jsx16, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
2921
3070
|
var ShowBodyMediaByContentType = ({
|
|
2922
3071
|
index,
|
|
2923
3072
|
type,
|
|
2924
3073
|
value,
|
|
2925
3074
|
size
|
|
2926
3075
|
}) => {
|
|
2927
|
-
const [showFullScreen, setShowFullScreen] =
|
|
2928
|
-
const [selectedFullScreenItem, setSelectedFullScreenItem] =
|
|
3076
|
+
const [showFullScreen, setShowFullScreen] = useState10(false);
|
|
3077
|
+
const [selectedFullScreenItem, setSelectedFullScreenItem] = useState10("");
|
|
2929
3078
|
const convertToPercentage = (size2) => {
|
|
2930
3079
|
switch (size2) {
|
|
2931
3080
|
case "1/3":
|
|
@@ -2939,11 +3088,11 @@ var ShowBodyMediaByContentType = ({
|
|
|
2939
3088
|
}
|
|
2940
3089
|
};
|
|
2941
3090
|
const renderSpecialExpressions = (inputPart, partIndex, parentKey) => {
|
|
2942
|
-
return /* @__PURE__ */
|
|
3091
|
+
return /* @__PURE__ */ jsx16(
|
|
2943
3092
|
"span",
|
|
2944
3093
|
{
|
|
2945
3094
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
2946
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
3095
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx16("span", { className: "text-2xl", children: /* @__PURE__ */ jsx16(InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
2947
3096
|
},
|
|
2948
3097
|
`${parentKey}-expr-${partIndex}`
|
|
2949
3098
|
);
|
|
@@ -2963,7 +3112,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
2963
3112
|
};
|
|
2964
3113
|
const renderTextContent = (text, itemKey) => {
|
|
2965
3114
|
const balancedText = balanceSpecialChars(text);
|
|
2966
|
-
return /* @__PURE__ */
|
|
3115
|
+
return /* @__PURE__ */ jsx16("span", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(balancedText).map(
|
|
2967
3116
|
(inputPart, exprIndex) => renderSpecialExpressions(inputPart, exprIndex, itemKey)
|
|
2968
3117
|
) }, itemKey);
|
|
2969
3118
|
};
|
|
@@ -2996,7 +3145,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
2996
3145
|
currentIndex++;
|
|
2997
3146
|
const itemKey = `text-inside-${index}-${currentIndex}`;
|
|
2998
3147
|
valuePartList.push(
|
|
2999
|
-
/* @__PURE__ */
|
|
3148
|
+
/* @__PURE__ */ jsx16("span", { className: "text-xl font-bold whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(textInsideTag).map(
|
|
3000
3149
|
(inputPart, exprIndex) => renderSpecialExpressions(inputPart, exprIndex, itemKey)
|
|
3001
3150
|
) }, itemKey)
|
|
3002
3151
|
);
|
|
@@ -3016,7 +3165,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3016
3165
|
if (textBeforeTag.trim() !== "") {
|
|
3017
3166
|
currentIndex++;
|
|
3018
3167
|
valuePartList.push(
|
|
3019
|
-
/* @__PURE__ */
|
|
3168
|
+
/* @__PURE__ */ jsx16(
|
|
3020
3169
|
"p",
|
|
3021
3170
|
{
|
|
3022
3171
|
className: "text-xl",
|
|
@@ -3035,12 +3184,12 @@ var ShowBodyMediaByContentType = ({
|
|
|
3035
3184
|
);
|
|
3036
3185
|
currentIndex++;
|
|
3037
3186
|
valuePartList.push(
|
|
3038
|
-
/* @__PURE__ */
|
|
3187
|
+
/* @__PURE__ */ jsxs10(
|
|
3039
3188
|
"div",
|
|
3040
3189
|
{
|
|
3041
3190
|
className: "relative w-[200px]",
|
|
3042
3191
|
children: [
|
|
3043
|
-
/* @__PURE__ */
|
|
3192
|
+
/* @__PURE__ */ jsx16(
|
|
3044
3193
|
BaseImage_default,
|
|
3045
3194
|
{
|
|
3046
3195
|
src: imageSource,
|
|
@@ -3049,12 +3198,12 @@ var ShowBodyMediaByContentType = ({
|
|
|
3049
3198
|
className: "rounded-catchup-xlarge"
|
|
3050
3199
|
}
|
|
3051
3200
|
),
|
|
3052
|
-
/* @__PURE__ */
|
|
3201
|
+
/* @__PURE__ */ jsx16(
|
|
3053
3202
|
"div",
|
|
3054
3203
|
{
|
|
3055
3204
|
className: "absolute flex items-center justify-center top-2 right-2 h-6 w-6 cursor-pointer border rounded-catchup-xlarge border-catchup-blue p-1",
|
|
3056
3205
|
onClick: () => handleOpenFullScreen(imageSource),
|
|
3057
|
-
children: /* @__PURE__ */
|
|
3206
|
+
children: /* @__PURE__ */ jsx16(
|
|
3058
3207
|
BaseImage_default,
|
|
3059
3208
|
{
|
|
3060
3209
|
src: "/icons/arrow-up.webp",
|
|
@@ -3083,7 +3232,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3083
3232
|
if (textBeforeTag.trim() !== "") {
|
|
3084
3233
|
currentIndex++;
|
|
3085
3234
|
valuePartList.push(
|
|
3086
|
-
/* @__PURE__ */
|
|
3235
|
+
/* @__PURE__ */ jsx16(
|
|
3087
3236
|
"p",
|
|
3088
3237
|
{
|
|
3089
3238
|
className: "text-xl",
|
|
@@ -3102,7 +3251,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3102
3251
|
);
|
|
3103
3252
|
currentIndex++;
|
|
3104
3253
|
valuePartList.push(
|
|
3105
|
-
/* @__PURE__ */
|
|
3254
|
+
/* @__PURE__ */ jsx16(
|
|
3106
3255
|
"video",
|
|
3107
3256
|
{
|
|
3108
3257
|
src: videoSource,
|
|
@@ -3125,7 +3274,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3125
3274
|
if (textBeforeTag.trim() !== "") {
|
|
3126
3275
|
currentIndex++;
|
|
3127
3276
|
valuePartList.push(
|
|
3128
|
-
/* @__PURE__ */
|
|
3277
|
+
/* @__PURE__ */ jsx16(
|
|
3129
3278
|
"p",
|
|
3130
3279
|
{
|
|
3131
3280
|
className: "text-xl",
|
|
@@ -3144,7 +3293,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3144
3293
|
);
|
|
3145
3294
|
currentIndex++;
|
|
3146
3295
|
valuePartList.push(
|
|
3147
|
-
/* @__PURE__ */
|
|
3296
|
+
/* @__PURE__ */ jsx16(
|
|
3148
3297
|
"audio",
|
|
3149
3298
|
{
|
|
3150
3299
|
src: audioSource,
|
|
@@ -3170,13 +3319,13 @@ var ShowBodyMediaByContentType = ({
|
|
|
3170
3319
|
if (regexMatchImageText) {
|
|
3171
3320
|
const imageText = regexMatchImageText[1];
|
|
3172
3321
|
valuePartList.push(
|
|
3173
|
-
/* @__PURE__ */
|
|
3322
|
+
/* @__PURE__ */ jsxs10(
|
|
3174
3323
|
"div",
|
|
3175
3324
|
{
|
|
3176
3325
|
className: "bg-catchup-gray-50 relative px-4 py-4 rounded-catchup-small mt-2",
|
|
3177
3326
|
children: [
|
|
3178
|
-
/* @__PURE__ */
|
|
3179
|
-
/* @__PURE__ */
|
|
3327
|
+
/* @__PURE__ */ jsx16("div", { className: "absolute -top-3 bg-catchup-white border rounded-catchup-small px-2 left-2", children: /* @__PURE__ */ jsx16("p", { className: "font-bold", children: i18n_default.t("image_description") }) }),
|
|
3328
|
+
/* @__PURE__ */ jsx16("span", { className: "text-xl whitespace-pre-wrap", children: imageText })
|
|
3180
3329
|
]
|
|
3181
3330
|
},
|
|
3182
3331
|
`img-desc-${index}-${currentIndex}`
|
|
@@ -3190,7 +3339,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3190
3339
|
return valuePartList;
|
|
3191
3340
|
};
|
|
3192
3341
|
const RenderShowFullScreenItem = () => {
|
|
3193
|
-
return /* @__PURE__ */
|
|
3342
|
+
return /* @__PURE__ */ jsx16(
|
|
3194
3343
|
Modal2,
|
|
3195
3344
|
{
|
|
3196
3345
|
isOpen: showFullScreen,
|
|
@@ -3219,8 +3368,8 @@ var ShowBodyMediaByContentType = ({
|
|
|
3219
3368
|
}
|
|
3220
3369
|
},
|
|
3221
3370
|
contentLabel: "Image Fullscreen View",
|
|
3222
|
-
children: /* @__PURE__ */
|
|
3223
|
-
/* @__PURE__ */
|
|
3371
|
+
children: /* @__PURE__ */ jsxs10("div", { className: "flex-1 flex flex-col", children: [
|
|
3372
|
+
/* @__PURE__ */ jsx16("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ jsx16(
|
|
3224
3373
|
BaseImage_default,
|
|
3225
3374
|
{
|
|
3226
3375
|
src: "/icons/cross-red.webp",
|
|
@@ -3232,7 +3381,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3232
3381
|
}
|
|
3233
3382
|
}
|
|
3234
3383
|
) }),
|
|
3235
|
-
/* @__PURE__ */
|
|
3384
|
+
/* @__PURE__ */ jsx16("div", { className: "flex items-center justify-center h-[500]", children: /* @__PURE__ */ jsx16(
|
|
3236
3385
|
BaseImage_default,
|
|
3237
3386
|
{
|
|
3238
3387
|
src: selectedFullScreenItem,
|
|
@@ -3248,16 +3397,16 @@ var ShowBodyMediaByContentType = ({
|
|
|
3248
3397
|
const RenderMainContent = () => {
|
|
3249
3398
|
switch (type) {
|
|
3250
3399
|
case "TEXT":
|
|
3251
|
-
return /* @__PURE__ */
|
|
3400
|
+
return /* @__PURE__ */ jsx16("div", { className: "mb-3 flex flex-row flex-wrap items-center mx-auto w-full", children: retrieveValueParts(value) });
|
|
3252
3401
|
case "IMAGE":
|
|
3253
|
-
return /* @__PURE__ */
|
|
3402
|
+
return /* @__PURE__ */ jsx16("div", { className: "mb-3 flex flex-col items-center relative", children: /* @__PURE__ */ jsxs10(
|
|
3254
3403
|
"div",
|
|
3255
3404
|
{
|
|
3256
3405
|
className: `${convertToPercentage(
|
|
3257
3406
|
size || ""
|
|
3258
3407
|
)} rounded-catchup-xlarge relative`,
|
|
3259
3408
|
children: [
|
|
3260
|
-
/* @__PURE__ */
|
|
3409
|
+
/* @__PURE__ */ jsx16(
|
|
3261
3410
|
BaseImage_default,
|
|
3262
3411
|
{
|
|
3263
3412
|
src: value,
|
|
@@ -3266,12 +3415,12 @@ var ShowBodyMediaByContentType = ({
|
|
|
3266
3415
|
className: "w-full rounded-catchup-xlarge"
|
|
3267
3416
|
}
|
|
3268
3417
|
),
|
|
3269
|
-
/* @__PURE__ */
|
|
3418
|
+
/* @__PURE__ */ jsx16(
|
|
3270
3419
|
"div",
|
|
3271
3420
|
{
|
|
3272
3421
|
className: "absolute flex items-center justify-center top-2 right-2 h-6 w-6 cursor-pointer border rounded-catchup-xlarge border-catchup-blue p-1",
|
|
3273
3422
|
onClick: () => handleOpenFullScreen(value),
|
|
3274
|
-
children: /* @__PURE__ */
|
|
3423
|
+
children: /* @__PURE__ */ jsx16(
|
|
3275
3424
|
BaseImage_default,
|
|
3276
3425
|
{
|
|
3277
3426
|
src: "/icons/arrow-up.webp",
|
|
@@ -3286,7 +3435,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3286
3435
|
}
|
|
3287
3436
|
) });
|
|
3288
3437
|
case "VIDEO":
|
|
3289
|
-
return /* @__PURE__ */
|
|
3438
|
+
return /* @__PURE__ */ jsx16("div", { className: "mb-3 flex flex-col items-center", children: /* @__PURE__ */ jsx16(
|
|
3290
3439
|
"video",
|
|
3291
3440
|
{
|
|
3292
3441
|
src: value,
|
|
@@ -3297,12 +3446,12 @@ var ShowBodyMediaByContentType = ({
|
|
|
3297
3446
|
}
|
|
3298
3447
|
) });
|
|
3299
3448
|
case "AUDIO":
|
|
3300
|
-
return /* @__PURE__ */
|
|
3449
|
+
return /* @__PURE__ */ jsx16("div", { className: "mb-3 flex flex-col items-center", children: /* @__PURE__ */ jsx16("audio", { src: value, controls: true, className: "rounded-catchup-xlarge" }) });
|
|
3301
3450
|
default:
|
|
3302
3451
|
return null;
|
|
3303
3452
|
}
|
|
3304
3453
|
};
|
|
3305
|
-
return /* @__PURE__ */
|
|
3454
|
+
return /* @__PURE__ */ jsxs10("div", { className: "w-full", children: [
|
|
3306
3455
|
RenderShowFullScreenItem(),
|
|
3307
3456
|
RenderMainContent()
|
|
3308
3457
|
] }, `body-content-${index}`);
|
|
@@ -3310,7 +3459,7 @@ var ShowBodyMediaByContentType = ({
|
|
|
3310
3459
|
var ShowBodyMediaByContentType_default = ShowBodyMediaByContentType;
|
|
3311
3460
|
|
|
3312
3461
|
// src/components/activities/body-content/ActivityBodyContent.tsx
|
|
3313
|
-
import { jsx as
|
|
3462
|
+
import { jsx as jsx17 } from "react/jsx-runtime";
|
|
3314
3463
|
var ActivityBodyContent = ({
|
|
3315
3464
|
templateType,
|
|
3316
3465
|
bodyMap,
|
|
@@ -3391,7 +3540,7 @@ var ActivityBodyContent = ({
|
|
|
3391
3540
|
key
|
|
3392
3541
|
});
|
|
3393
3542
|
}).filter(Boolean);
|
|
3394
|
-
return /* @__PURE__ */
|
|
3543
|
+
return /* @__PURE__ */ jsx17("div", { className: "flex flex-col justify-center items-center", children: processedBodies.map((body, index) => /* @__PURE__ */ jsx17(
|
|
3395
3544
|
ShowBodyMediaByContentType_default,
|
|
3396
3545
|
{
|
|
3397
3546
|
index,
|
|
@@ -3405,16 +3554,16 @@ var ActivityBodyContent = ({
|
|
|
3405
3554
|
var ActivityBodyContent_default = ActivityBodyContent;
|
|
3406
3555
|
|
|
3407
3556
|
// src/components/dividers/DividerLine.tsx
|
|
3408
|
-
import { jsx as
|
|
3557
|
+
import { jsx as jsx18 } from "react/jsx-runtime";
|
|
3409
3558
|
var DividerLine = () => {
|
|
3410
|
-
return /* @__PURE__ */
|
|
3559
|
+
return /* @__PURE__ */ jsx18("div", { className: "bg-catchup-gray-50 h-[1px] w-full my-3" });
|
|
3411
3560
|
};
|
|
3412
3561
|
var DividerLine_default = DividerLine;
|
|
3413
3562
|
|
|
3414
3563
|
// src/components/dividers/VerticalDividerLine.tsx
|
|
3415
|
-
import { jsx as
|
|
3564
|
+
import { jsx as jsx19 } from "react/jsx-runtime";
|
|
3416
3565
|
var VerticalDividerLine = () => {
|
|
3417
|
-
return /* @__PURE__ */
|
|
3566
|
+
return /* @__PURE__ */ jsx19("div", { className: "bg-catchup-gray-50 h-full w-[1px] mx-3" });
|
|
3418
3567
|
};
|
|
3419
3568
|
var VerticalDividerLine_default = VerticalDividerLine;
|
|
3420
3569
|
|
|
@@ -3423,8 +3572,8 @@ import { InlineMath as InlineMath2 } from "react-katex";
|
|
|
3423
3572
|
|
|
3424
3573
|
// src/components/groups/InputGroup.tsx
|
|
3425
3574
|
import Select from "react-select";
|
|
3426
|
-
import { useEffect as
|
|
3427
|
-
import { Fragment, jsx as
|
|
3575
|
+
import { useEffect as useEffect3, useRef, useState as useState11, useCallback } from "react";
|
|
3576
|
+
import { Fragment, jsx as jsx20, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
3428
3577
|
var InputGroup = ({
|
|
3429
3578
|
type,
|
|
3430
3579
|
title,
|
|
@@ -3447,10 +3596,10 @@ var InputGroup = ({
|
|
|
3447
3596
|
}) => {
|
|
3448
3597
|
const textAreaRef = useRef(null);
|
|
3449
3598
|
const latexTextAreaRef = useRef(null);
|
|
3450
|
-
const [showMathConstructor, setShowMathConstructor] =
|
|
3451
|
-
const [mathValue, setMathValue] =
|
|
3599
|
+
const [showMathConstructor, setShowMathConstructor] = useState11(false);
|
|
3600
|
+
const [mathValue, setMathValue] = useState11("");
|
|
3452
3601
|
const mathFieldRef = useRef(null);
|
|
3453
|
-
|
|
3602
|
+
useEffect3(() => {
|
|
3454
3603
|
if (!textAreaRef) return;
|
|
3455
3604
|
if (!textAreaRef.current) return;
|
|
3456
3605
|
if (value) {
|
|
@@ -3459,7 +3608,7 @@ var InputGroup = ({
|
|
|
3459
3608
|
textAreaRef.current.style.height = `44px`;
|
|
3460
3609
|
}
|
|
3461
3610
|
}, [textAreaRef, value]);
|
|
3462
|
-
|
|
3611
|
+
useEffect3(() => {
|
|
3463
3612
|
if (!latexTextAreaRef) return;
|
|
3464
3613
|
if (!latexTextAreaRef.current) return;
|
|
3465
3614
|
if (value) {
|
|
@@ -3468,7 +3617,7 @@ var InputGroup = ({
|
|
|
3468
3617
|
latexTextAreaRef.current.style.height = `44px`;
|
|
3469
3618
|
}
|
|
3470
3619
|
}, [latexTextAreaRef, value]);
|
|
3471
|
-
|
|
3620
|
+
useEffect3(() => {
|
|
3472
3621
|
if (!useMath) return;
|
|
3473
3622
|
import("mathlive").then(({ MathfieldElement }) => {
|
|
3474
3623
|
if (!customElements.get("math-field")) {
|
|
@@ -3526,7 +3675,7 @@ var InputGroup = ({
|
|
|
3526
3675
|
setShowMathConstructor(true);
|
|
3527
3676
|
};
|
|
3528
3677
|
const MathConstructorModal = () => {
|
|
3529
|
-
return /* @__PURE__ */
|
|
3678
|
+
return /* @__PURE__ */ jsx20(
|
|
3530
3679
|
BaseModal_default,
|
|
3531
3680
|
{
|
|
3532
3681
|
isOpen: showMathConstructor,
|
|
@@ -3536,10 +3685,10 @@ var InputGroup = ({
|
|
|
3536
3685
|
setShowMathConstructor(false);
|
|
3537
3686
|
},
|
|
3538
3687
|
size: "large",
|
|
3539
|
-
children: /* @__PURE__ */
|
|
3540
|
-
/* @__PURE__ */
|
|
3541
|
-
/* @__PURE__ */
|
|
3542
|
-
/* @__PURE__ */
|
|
3688
|
+
children: /* @__PURE__ */ jsx20(FullCard_default, { children: /* @__PURE__ */ jsx20("div", { className: "bg-white rounded-lg overflow-hidden", children: /* @__PURE__ */ jsxs11("div", { className: "p-6 space-y-6", children: [
|
|
3689
|
+
/* @__PURE__ */ jsxs11("div", { children: [
|
|
3690
|
+
/* @__PURE__ */ jsx20("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: i18n_default.t("math_editor") }),
|
|
3691
|
+
/* @__PURE__ */ jsx20("div", { className: "border border-catchup-gray-100 rounded-catchup-large focus-within:border-catchup-blue-400 focus-within:shadow-input", children: /* @__PURE__ */ jsx20(
|
|
3543
3692
|
"math-field",
|
|
3544
3693
|
{
|
|
3545
3694
|
ref: mathFieldRef,
|
|
@@ -3566,10 +3715,10 @@ var InputGroup = ({
|
|
|
3566
3715
|
}
|
|
3567
3716
|
) })
|
|
3568
3717
|
] }),
|
|
3569
|
-
/* @__PURE__ */
|
|
3570
|
-
/* @__PURE__ */
|
|
3571
|
-
/* @__PURE__ */
|
|
3572
|
-
/* @__PURE__ */
|
|
3718
|
+
/* @__PURE__ */ jsxs11("div", { children: [
|
|
3719
|
+
/* @__PURE__ */ jsx20("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: i18n_default.t("latex_output") }),
|
|
3720
|
+
/* @__PURE__ */ jsxs11("div", { className: "relative", children: [
|
|
3721
|
+
/* @__PURE__ */ jsx20(
|
|
3573
3722
|
"textarea",
|
|
3574
3723
|
{
|
|
3575
3724
|
ref: latexTextAreaRef,
|
|
@@ -3579,7 +3728,7 @@ var InputGroup = ({
|
|
|
3579
3728
|
placeholder: i18n_default.t("latex_will_appear_here")
|
|
3580
3729
|
}
|
|
3581
3730
|
),
|
|
3582
|
-
/* @__PURE__ */
|
|
3731
|
+
/* @__PURE__ */ jsx20(
|
|
3583
3732
|
"button",
|
|
3584
3733
|
{
|
|
3585
3734
|
onClick: handleCopyLatex,
|
|
@@ -3595,13 +3744,13 @@ var InputGroup = ({
|
|
|
3595
3744
|
);
|
|
3596
3745
|
};
|
|
3597
3746
|
const CheckboxInputGroup = () => {
|
|
3598
|
-
return /* @__PURE__ */
|
|
3747
|
+
return /* @__PURE__ */ jsxs11(
|
|
3599
3748
|
"div",
|
|
3600
3749
|
{
|
|
3601
3750
|
className: "flex flex-row items-center gap-x-1 cursor-pointer",
|
|
3602
3751
|
onClick,
|
|
3603
3752
|
children: [
|
|
3604
|
-
/* @__PURE__ */
|
|
3753
|
+
/* @__PURE__ */ jsx20(
|
|
3605
3754
|
BaseImage_default,
|
|
3606
3755
|
{
|
|
3607
3756
|
src: value ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
|
|
@@ -3611,15 +3760,15 @@ var InputGroup = ({
|
|
|
3611
3760
|
}
|
|
3612
3761
|
}
|
|
3613
3762
|
),
|
|
3614
|
-
/* @__PURE__ */
|
|
3763
|
+
/* @__PURE__ */ jsx20("p", { className: "", children: title })
|
|
3615
3764
|
]
|
|
3616
3765
|
}
|
|
3617
3766
|
);
|
|
3618
3767
|
};
|
|
3619
3768
|
const FileInputGroup = () => {
|
|
3620
|
-
return /* @__PURE__ */
|
|
3621
|
-
title ? /* @__PURE__ */
|
|
3622
|
-
/* @__PURE__ */
|
|
3769
|
+
return /* @__PURE__ */ jsxs11("div", { className: "my-1", children: [
|
|
3770
|
+
title ? /* @__PURE__ */ jsx20("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
|
|
3771
|
+
/* @__PURE__ */ jsx20(
|
|
3623
3772
|
"input",
|
|
3624
3773
|
{
|
|
3625
3774
|
className: "w-full py-2 px-4 border border-catchup-gray-100 placeholder-catchup-gray-200 rounded-catchup-large text-black focus:outline-none focus:border-catchup-blue-400 focus:shadow-input",
|
|
@@ -3636,9 +3785,9 @@ var InputGroup = ({
|
|
|
3636
3785
|
] });
|
|
3637
3786
|
};
|
|
3638
3787
|
const DateInputGroup = () => {
|
|
3639
|
-
return /* @__PURE__ */
|
|
3640
|
-
title ? /* @__PURE__ */
|
|
3641
|
-
/* @__PURE__ */
|
|
3788
|
+
return /* @__PURE__ */ jsxs11("div", { className: "my-1", children: [
|
|
3789
|
+
title ? /* @__PURE__ */ jsx20("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
|
|
3790
|
+
/* @__PURE__ */ jsx20(
|
|
3642
3791
|
"input",
|
|
3643
3792
|
{
|
|
3644
3793
|
className: `w-full py-2 px-4 border ${errorText ? "border-catchup-red shadow-error" : theme === "red" ? "border-catchup-red bg-catchup-red text-catchup-white focus:border-catchup-red" : "border-catchup-gray-100 placeholder-catchup-gray-200 focus:border-catchup-blue-400"} rounded-catchup-large text-black focus:outline-none focus:shadow-input`,
|
|
@@ -3653,9 +3802,9 @@ var InputGroup = ({
|
|
|
3653
3802
|
] });
|
|
3654
3803
|
};
|
|
3655
3804
|
const SearchableSelectInputGroup = () => {
|
|
3656
|
-
return /* @__PURE__ */
|
|
3657
|
-
title ? /* @__PURE__ */
|
|
3658
|
-
/* @__PURE__ */
|
|
3805
|
+
return /* @__PURE__ */ jsxs11("div", { className: "my-1", children: [
|
|
3806
|
+
title ? /* @__PURE__ */ jsx20("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400 ", children: title }) : null,
|
|
3807
|
+
/* @__PURE__ */ jsx20(
|
|
3659
3808
|
Select,
|
|
3660
3809
|
{
|
|
3661
3810
|
options: convertOptionListToSelectComponent(
|
|
@@ -3718,16 +3867,16 @@ var InputGroup = ({
|
|
|
3718
3867
|
] });
|
|
3719
3868
|
};
|
|
3720
3869
|
const TextAreaInputGroup = () => {
|
|
3721
|
-
return /* @__PURE__ */
|
|
3722
|
-
/* @__PURE__ */
|
|
3723
|
-
/* @__PURE__ */
|
|
3724
|
-
/* @__PURE__ */
|
|
3870
|
+
return /* @__PURE__ */ jsxs11("div", { className: "my-1 flex-1 flex flex-col relative", children: [
|
|
3871
|
+
/* @__PURE__ */ jsxs11("div", { className: "flex flex-row justify-between items-center", children: [
|
|
3872
|
+
/* @__PURE__ */ jsx20("div", { children: title ? /* @__PURE__ */ jsx20("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null }),
|
|
3873
|
+
/* @__PURE__ */ jsx20("div", { children: value && limit ? /* @__PURE__ */ jsxs11("p", { className: "text-md font-semibold pr-2 py-1 text-catchup-gray-400", children: [
|
|
3725
3874
|
value.length,
|
|
3726
3875
|
" / ",
|
|
3727
3876
|
limit
|
|
3728
3877
|
] }) : null })
|
|
3729
3878
|
] }),
|
|
3730
|
-
/* @__PURE__ */
|
|
3879
|
+
/* @__PURE__ */ jsx20(
|
|
3731
3880
|
"textarea",
|
|
3732
3881
|
{
|
|
3733
3882
|
ref: textAreaRef,
|
|
@@ -3740,22 +3889,22 @@ var InputGroup = ({
|
|
|
3740
3889
|
onKeyDown
|
|
3741
3890
|
}
|
|
3742
3891
|
),
|
|
3743
|
-
useMath && /* @__PURE__ */
|
|
3892
|
+
useMath && /* @__PURE__ */ jsx20(
|
|
3744
3893
|
"button",
|
|
3745
3894
|
{
|
|
3746
3895
|
className: "absolute right-2 top-1/2 transform -translate-y-1/2 bg-catchup-blue-400 text-white rounded-md px-3 py-1 shadow-sm hover:bg-catchup-blue-500 transition-colors duration-200 z-10",
|
|
3747
3896
|
onClick: handleOpenMathConstructor,
|
|
3748
3897
|
type: "button",
|
|
3749
|
-
children: /* @__PURE__ */
|
|
3750
|
-
/* @__PURE__ */
|
|
3751
|
-
/* @__PURE__ */
|
|
3898
|
+
children: /* @__PURE__ */ jsxs11("div", { className: "flex items-center gap-x-1", children: [
|
|
3899
|
+
/* @__PURE__ */ jsx20("span", { className: "text-sm font-medium", children: "\u{1D453}(x)" }),
|
|
3900
|
+
/* @__PURE__ */ jsx20(
|
|
3752
3901
|
"svg",
|
|
3753
3902
|
{
|
|
3754
3903
|
className: "w-3 h-3",
|
|
3755
3904
|
fill: "none",
|
|
3756
3905
|
stroke: "currentColor",
|
|
3757
3906
|
viewBox: "0 0 24 24",
|
|
3758
|
-
children: /* @__PURE__ */
|
|
3907
|
+
children: /* @__PURE__ */ jsx20(
|
|
3759
3908
|
"path",
|
|
3760
3909
|
{
|
|
3761
3910
|
strokeLinecap: "round",
|
|
@@ -3772,13 +3921,13 @@ var InputGroup = ({
|
|
|
3772
3921
|
] });
|
|
3773
3922
|
};
|
|
3774
3923
|
const TextInputGroup = () => {
|
|
3775
|
-
return /* @__PURE__ */
|
|
3776
|
-
title ? /* @__PURE__ */
|
|
3777
|
-
/* @__PURE__ */
|
|
3924
|
+
return /* @__PURE__ */ jsxs11("div", { className: "my-1 relative", children: [
|
|
3925
|
+
title ? /* @__PURE__ */ jsx20("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
|
|
3926
|
+
/* @__PURE__ */ jsx20(
|
|
3778
3927
|
"div",
|
|
3779
3928
|
{
|
|
3780
3929
|
className: `w-full border ${errorText ? "border-catchup-red shadow-error" : "border-catchup-gray-100"} rounded-catchup-large focus-within:border-catchup-blue-400 focus-within:shadow-input ${disabled ? "bg-catchup-lighter-gray" : "bg-white"}`,
|
|
3781
|
-
children: /* @__PURE__ */
|
|
3930
|
+
children: /* @__PURE__ */ jsx20(
|
|
3782
3931
|
"input",
|
|
3783
3932
|
{
|
|
3784
3933
|
disabled,
|
|
@@ -3794,22 +3943,22 @@ var InputGroup = ({
|
|
|
3794
3943
|
)
|
|
3795
3944
|
}
|
|
3796
3945
|
),
|
|
3797
|
-
useMath && /* @__PURE__ */
|
|
3946
|
+
useMath && /* @__PURE__ */ jsx20(
|
|
3798
3947
|
"button",
|
|
3799
3948
|
{
|
|
3800
3949
|
className: "absolute right-2 top-1/2 transform -translate-y-1/2 bg-catchup-blue-400 text-white rounded-md px-3 py-1 shadow-sm hover:bg-catchup-blue-500 transition-colors duration-200",
|
|
3801
3950
|
onClick: handleOpenMathConstructor,
|
|
3802
3951
|
type: "button",
|
|
3803
|
-
children: /* @__PURE__ */
|
|
3804
|
-
/* @__PURE__ */
|
|
3805
|
-
/* @__PURE__ */
|
|
3952
|
+
children: /* @__PURE__ */ jsxs11("div", { className: "flex items-center gap-x-1", children: [
|
|
3953
|
+
/* @__PURE__ */ jsx20("span", { className: "text-sm font-medium", children: "\u{1D453}(x)" }),
|
|
3954
|
+
/* @__PURE__ */ jsx20(
|
|
3806
3955
|
"svg",
|
|
3807
3956
|
{
|
|
3808
3957
|
className: "w-3 h-3",
|
|
3809
3958
|
fill: "none",
|
|
3810
3959
|
stroke: "currentColor",
|
|
3811
3960
|
viewBox: "0 0 24 24",
|
|
3812
|
-
children: /* @__PURE__ */
|
|
3961
|
+
children: /* @__PURE__ */ jsx20(
|
|
3813
3962
|
"path",
|
|
3814
3963
|
{
|
|
3815
3964
|
strokeLinecap: "round",
|
|
@@ -3842,16 +3991,16 @@ var InputGroup = ({
|
|
|
3842
3991
|
return CheckboxInputGroup();
|
|
3843
3992
|
}
|
|
3844
3993
|
};
|
|
3845
|
-
return /* @__PURE__ */
|
|
3994
|
+
return /* @__PURE__ */ jsxs11(Fragment, { children: [
|
|
3846
3995
|
RenderMainContent(),
|
|
3847
|
-
/* @__PURE__ */
|
|
3996
|
+
/* @__PURE__ */ jsx20(MathConstructorModal, {})
|
|
3848
3997
|
] });
|
|
3849
3998
|
};
|
|
3850
3999
|
var InputGroup_default = InputGroup;
|
|
3851
4000
|
|
|
3852
4001
|
// src/components/activities/material-content/DropdownActivityMaterialContent.tsx
|
|
3853
|
-
import { useEffect as
|
|
3854
|
-
import { useState as
|
|
4002
|
+
import { useEffect as useEffect5 } from "react";
|
|
4003
|
+
import { useState as useState14 } from "react";
|
|
3855
4004
|
|
|
3856
4005
|
// src/utilization/AppUtilization.ts
|
|
3857
4006
|
var colors = [
|
|
@@ -3951,11 +4100,11 @@ var getColorByIndex = (index) => {
|
|
|
3951
4100
|
};
|
|
3952
4101
|
|
|
3953
4102
|
// src/components/dropdowns/MediaDropdown.tsx
|
|
3954
|
-
import { useState as
|
|
3955
|
-
import { jsx as
|
|
4103
|
+
import { useState as useState12 } from "react";
|
|
4104
|
+
import { jsx as jsx21, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
3956
4105
|
var MediaDropdown = ({ id, answer, optionList }) => {
|
|
3957
|
-
const [showDropdown, setShowDropdown] =
|
|
3958
|
-
return /* @__PURE__ */
|
|
4106
|
+
const [showDropdown, setShowDropdown] = useState12(false);
|
|
4107
|
+
return /* @__PURE__ */ jsxs12(
|
|
3959
4108
|
"div",
|
|
3960
4109
|
{
|
|
3961
4110
|
className: "w-full relative",
|
|
@@ -3966,17 +4115,17 @@ var MediaDropdown = ({ id, answer, optionList }) => {
|
|
|
3966
4115
|
setShowDropdown(false);
|
|
3967
4116
|
},
|
|
3968
4117
|
children: [
|
|
3969
|
-
/* @__PURE__ */
|
|
3970
|
-
/* @__PURE__ */
|
|
4118
|
+
/* @__PURE__ */ jsx21("div", { className: "w-full flex flex-col items-center justify-center", children: answer }),
|
|
4119
|
+
/* @__PURE__ */ jsx21(
|
|
3971
4120
|
"ul",
|
|
3972
4121
|
{
|
|
3973
4122
|
className: `absolute ${showDropdown ? "opacity-100 visible" : "opacity-0 invisible"} flex flex-col items-center w-[300px] rounded-catchup-xlarge border-3 transition-all duration-300 border-catchup-blue bg-catchup-white px-4 py-4 translate-x-1/2 right-1/2 mt-2 z-10`,
|
|
3974
|
-
children: optionList.map((option, index) => /* @__PURE__ */
|
|
4123
|
+
children: optionList.map((option, index) => /* @__PURE__ */ jsxs12(
|
|
3975
4124
|
"li",
|
|
3976
4125
|
{
|
|
3977
4126
|
className: `${option.listItemClassNames ? option.listItemClassNames : ""}`,
|
|
3978
4127
|
children: [
|
|
3979
|
-
/* @__PURE__ */
|
|
4128
|
+
/* @__PURE__ */ jsx21(
|
|
3980
4129
|
"div",
|
|
3981
4130
|
{
|
|
3982
4131
|
className: `w-full flex flex-col my-2 ${option.divClassNames ? option.divClassNames : ""}`,
|
|
@@ -3984,7 +4133,7 @@ var MediaDropdown = ({ id, answer, optionList }) => {
|
|
|
3984
4133
|
children: option.media
|
|
3985
4134
|
}
|
|
3986
4135
|
),
|
|
3987
|
-
index !== optionList.length - 1 ? /* @__PURE__ */
|
|
4136
|
+
index !== optionList.length - 1 ? /* @__PURE__ */ jsx21("div", { className: "w-full border my-1 border-catchup-light-blue rounded-catchup-full" }) : null
|
|
3988
4137
|
]
|
|
3989
4138
|
},
|
|
3990
4139
|
option.id
|
|
@@ -3999,24 +4148,24 @@ var MediaDropdown = ({ id, answer, optionList }) => {
|
|
|
3999
4148
|
var MediaDropdown_default = MediaDropdown;
|
|
4000
4149
|
|
|
4001
4150
|
// src/components/activities/material-content/ShowMaterialMediaByContentType.tsx
|
|
4002
|
-
import { useEffect as
|
|
4151
|
+
import { useEffect as useEffect4, useRef as useRef2, useState as useState13 } from "react";
|
|
4003
4152
|
import Modal3 from "react-modal";
|
|
4004
|
-
import { jsx as
|
|
4153
|
+
import { jsx as jsx22, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
4005
4154
|
var ShowMaterialMediaByContentType = ({
|
|
4006
4155
|
key,
|
|
4007
4156
|
contentType,
|
|
4008
4157
|
src,
|
|
4009
4158
|
canFullScreen
|
|
4010
4159
|
}) => {
|
|
4011
|
-
const [showFullScreen, setShowFullScreen] =
|
|
4012
|
-
const [selectedFullScreenItem, setSelectedFullScreenItem] =
|
|
4013
|
-
const [isLoaded, setIsLoaded] =
|
|
4014
|
-
const [isFullHeight, setIsFullHeight] =
|
|
4160
|
+
const [showFullScreen, setShowFullScreen] = useState13(false);
|
|
4161
|
+
const [selectedFullScreenItem, setSelectedFullScreenItem] = useState13(null);
|
|
4162
|
+
const [isLoaded, setIsLoaded] = useState13(false);
|
|
4163
|
+
const [isFullHeight, setIsFullHeight] = useState13(false);
|
|
4015
4164
|
const imageRef = useRef2(null);
|
|
4016
|
-
|
|
4165
|
+
useEffect4(() => {
|
|
4017
4166
|
setIsLoaded(false);
|
|
4018
4167
|
}, []);
|
|
4019
|
-
|
|
4168
|
+
useEffect4(() => {
|
|
4020
4169
|
if (!isLoaded) return;
|
|
4021
4170
|
if (!imageRef) return;
|
|
4022
4171
|
if (!imageRef.current) return;
|
|
@@ -4029,7 +4178,7 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4029
4178
|
}
|
|
4030
4179
|
}, [isLoaded, key]);
|
|
4031
4180
|
const RenderShowFullScreenItem = () => {
|
|
4032
|
-
return /* @__PURE__ */
|
|
4181
|
+
return /* @__PURE__ */ jsx22(
|
|
4033
4182
|
Modal3,
|
|
4034
4183
|
{
|
|
4035
4184
|
isOpen: showFullScreen,
|
|
@@ -4060,8 +4209,8 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4060
4209
|
}
|
|
4061
4210
|
},
|
|
4062
4211
|
contentLabel: "",
|
|
4063
|
-
children: /* @__PURE__ */
|
|
4064
|
-
/* @__PURE__ */
|
|
4212
|
+
children: /* @__PURE__ */ jsxs13("div", { className: "flex-1 flex flex-col", children: [
|
|
4213
|
+
/* @__PURE__ */ jsx22("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ jsx22(
|
|
4065
4214
|
BaseImage_default,
|
|
4066
4215
|
{
|
|
4067
4216
|
src: "/icons/cross-red.webp",
|
|
@@ -4073,7 +4222,7 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4073
4222
|
}
|
|
4074
4223
|
}
|
|
4075
4224
|
) }),
|
|
4076
|
-
/* @__PURE__ */
|
|
4225
|
+
/* @__PURE__ */ jsx22("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx22(
|
|
4077
4226
|
BaseImage_default,
|
|
4078
4227
|
{
|
|
4079
4228
|
src: selectedFullScreenItem,
|
|
@@ -4086,14 +4235,14 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4086
4235
|
}
|
|
4087
4236
|
);
|
|
4088
4237
|
};
|
|
4089
|
-
return contentType === "IMAGE" ? /* @__PURE__ */
|
|
4238
|
+
return contentType === "IMAGE" ? /* @__PURE__ */ jsxs13("div", { children: [
|
|
4090
4239
|
RenderShowFullScreenItem(),
|
|
4091
|
-
/* @__PURE__ */
|
|
4240
|
+
/* @__PURE__ */ jsx22("div", { className: "my-2", children: /* @__PURE__ */ jsx22("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ jsxs13(
|
|
4092
4241
|
"div",
|
|
4093
4242
|
{
|
|
4094
4243
|
className: `${isFullHeight ? "h-catchup-activity-box-item" : "max-w-catchup-activity-box-item"} flex flex-col justify-center items-center relative`,
|
|
4095
4244
|
children: [
|
|
4096
|
-
/* @__PURE__ */
|
|
4245
|
+
/* @__PURE__ */ jsx22(
|
|
4097
4246
|
BaseImage_default,
|
|
4098
4247
|
{
|
|
4099
4248
|
src,
|
|
@@ -4106,7 +4255,7 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4106
4255
|
}
|
|
4107
4256
|
}
|
|
4108
4257
|
),
|
|
4109
|
-
src !== null && src !== "" && src !== "DEFAULT_OPTION" && canFullScreen ? /* @__PURE__ */
|
|
4258
|
+
src !== null && src !== "" && src !== "DEFAULT_OPTION" && canFullScreen ? /* @__PURE__ */ jsx22(
|
|
4110
4259
|
"div",
|
|
4111
4260
|
{
|
|
4112
4261
|
className: "absolute flex items-center justify-center top-2 right-2 h-6 w-6 cursor-pointer border rounded-catchup-xlarge border-catchup-blue p-1",
|
|
@@ -4118,7 +4267,7 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4118
4267
|
setShowFullScreen(true);
|
|
4119
4268
|
setSelectedFullScreenItem(src);
|
|
4120
4269
|
},
|
|
4121
|
-
children: /* @__PURE__ */
|
|
4270
|
+
children: /* @__PURE__ */ jsx22(
|
|
4122
4271
|
BaseImage_default,
|
|
4123
4272
|
{
|
|
4124
4273
|
src: "/icons/arrow-up.webp",
|
|
@@ -4132,7 +4281,7 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4132
4281
|
]
|
|
4133
4282
|
}
|
|
4134
4283
|
) }) })
|
|
4135
|
-
] }, key) : contentType === "VIDEO" ? /* @__PURE__ */
|
|
4284
|
+
] }, key) : contentType === "VIDEO" ? /* @__PURE__ */ jsx22("div", { className: "my-2", children: /* @__PURE__ */ jsx22("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ jsx22("div", { className: "h-full flex flex-col justify-center items-center", children: /* @__PURE__ */ jsx22(
|
|
4136
4285
|
"video",
|
|
4137
4286
|
{
|
|
4138
4287
|
className: "h-catchup-activity-box-item rounded-catchup-xlarge",
|
|
@@ -4141,7 +4290,7 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4141
4290
|
onClick: () => {
|
|
4142
4291
|
}
|
|
4143
4292
|
}
|
|
4144
|
-
) }) }) }) : contentType === "AUDIO" ? /* @__PURE__ */
|
|
4293
|
+
) }) }) }) : contentType === "AUDIO" ? /* @__PURE__ */ jsx22("div", { className: "my-2", children: /* @__PURE__ */ jsx22("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ jsx22("div", { className: "h-full flex flex-col justify-center items-center", children: /* @__PURE__ */ jsx22(
|
|
4145
4294
|
"audio",
|
|
4146
4295
|
{
|
|
4147
4296
|
className: "h-catchup-activity-box-item rounded-catchup-xlarge",
|
|
@@ -4155,7 +4304,7 @@ var ShowMaterialMediaByContentType = ({
|
|
|
4155
4304
|
var ShowMaterialMediaByContentType_default = ShowMaterialMediaByContentType;
|
|
4156
4305
|
|
|
4157
4306
|
// src/components/activities/material-content/DropdownActivityMaterialContent.tsx
|
|
4158
|
-
import { jsx as
|
|
4307
|
+
import { jsx as jsx23, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
4159
4308
|
var DropdownActivityMaterialContent = ({
|
|
4160
4309
|
uniqueValue,
|
|
4161
4310
|
answer,
|
|
@@ -4166,8 +4315,8 @@ var DropdownActivityMaterialContent = ({
|
|
|
4166
4315
|
isPreview,
|
|
4167
4316
|
showCorrectAnswer
|
|
4168
4317
|
}) => {
|
|
4169
|
-
const [updated, setUpdated] =
|
|
4170
|
-
|
|
4318
|
+
const [updated, setUpdated] = useState14(false);
|
|
4319
|
+
useEffect5(() => {
|
|
4171
4320
|
if (!showCorrectAnswer) return;
|
|
4172
4321
|
const foundAnswer = answer.data.find(
|
|
4173
4322
|
(answerData) => answerData.type === "DROPDOWN"
|
|
@@ -4180,7 +4329,7 @@ var DropdownActivityMaterialContent = ({
|
|
|
4180
4329
|
onChange(answer, 0, Object.keys(materialMap[0])[0]);
|
|
4181
4330
|
setUpdated(true);
|
|
4182
4331
|
}, [showCorrectAnswer]);
|
|
4183
|
-
|
|
4332
|
+
useEffect5(() => {
|
|
4184
4333
|
if (!updated) return;
|
|
4185
4334
|
setUpdated(false);
|
|
4186
4335
|
}, [updated]);
|
|
@@ -4198,22 +4347,22 @@ var DropdownActivityMaterialContent = ({
|
|
|
4198
4347
|
return "INCORRECT";
|
|
4199
4348
|
};
|
|
4200
4349
|
const answerMap = retrieveAnswerMap();
|
|
4201
|
-
return /* @__PURE__ */
|
|
4202
|
-
/* @__PURE__ */
|
|
4203
|
-
/* @__PURE__ */
|
|
4204
|
-
/* @__PURE__ */
|
|
4350
|
+
return /* @__PURE__ */ jsxs14("div", { className: "flex flex-row flex-wrap items-center", children: [
|
|
4351
|
+
/* @__PURE__ */ jsx23("div", { className: "hidden md:block", children: /* @__PURE__ */ jsx23("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_dropdown_text") }) }),
|
|
4352
|
+
/* @__PURE__ */ jsx23("div", { className: "hidden md:contents", children: /* @__PURE__ */ jsx23(DividerLine_default, {}) }),
|
|
4353
|
+
/* @__PURE__ */ jsx23("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
|
|
4205
4354
|
const answerKey = Object.keys(materialMap[materialKey])[0];
|
|
4206
4355
|
const learnerAnswerState = checkAnswerState(
|
|
4207
4356
|
answerKey,
|
|
4208
4357
|
answerMap[materialKey]
|
|
4209
4358
|
);
|
|
4210
|
-
return /* @__PURE__ */
|
|
4211
|
-
/* @__PURE__ */
|
|
4359
|
+
return /* @__PURE__ */ jsx23("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ jsx23("div", { className: "mx-2", children: /* @__PURE__ */ jsxs14("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
|
|
4360
|
+
/* @__PURE__ */ jsx23("div", { className: "my-auto", children: /* @__PURE__ */ jsxs14("p", { className: "text-xl", children: [
|
|
4212
4361
|
parseFloat(materialKey) + 1,
|
|
4213
4362
|
"."
|
|
4214
4363
|
] }) }),
|
|
4215
|
-
/* @__PURE__ */
|
|
4216
|
-
/* @__PURE__ */
|
|
4364
|
+
/* @__PURE__ */ jsxs14("div", { className: "w-full relative", children: [
|
|
4365
|
+
/* @__PURE__ */ jsx23("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsx23("div", { className: "flex-1", children: /* @__PURE__ */ jsx23(
|
|
4217
4366
|
InputGroup_default,
|
|
4218
4367
|
{
|
|
4219
4368
|
type: "select",
|
|
@@ -4221,13 +4370,13 @@ var DropdownActivityMaterialContent = ({
|
|
|
4221
4370
|
optionList: shuffleArray(
|
|
4222
4371
|
materialMap[materialKey][answerKey]
|
|
4223
4372
|
).map((materialOption) => ({
|
|
4224
|
-
text: /* @__PURE__ */
|
|
4373
|
+
text: /* @__PURE__ */ jsx23("span", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
4225
4374
|
materialOption
|
|
4226
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
4375
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx23(
|
|
4227
4376
|
"span",
|
|
4228
4377
|
{
|
|
4229
4378
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
4230
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
4379
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx23("span", { className: "text-2xl", children: /* @__PURE__ */ jsx23(
|
|
4231
4380
|
InlineMath2,
|
|
4232
4381
|
{
|
|
4233
4382
|
math: inputPart.value
|
|
@@ -4242,11 +4391,11 @@ var DropdownActivityMaterialContent = ({
|
|
|
4242
4391
|
onChange(answer, materialKey, e.target.value);
|
|
4243
4392
|
}
|
|
4244
4393
|
}
|
|
4245
|
-
) }) : /* @__PURE__ */
|
|
4394
|
+
) }) : /* @__PURE__ */ jsx23(
|
|
4246
4395
|
MediaDropdown_default,
|
|
4247
4396
|
{
|
|
4248
4397
|
id: materialKey,
|
|
4249
|
-
answer: answerMap[materialKey] === "DEFAULT_OPTION" ? /* @__PURE__ */
|
|
4398
|
+
answer: answerMap[materialKey] === "DEFAULT_OPTION" ? /* @__PURE__ */ jsx23("div", { className: "w-catchup-activity-box-item border h-catchup-activity-box-item rounded-catchup-xlarge border-dashed border-catchup-blue", children: /* @__PURE__ */ jsx23("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ jsx23("span", { className: "italic", children: i18n_default.t("please_select") }) }) }) : /* @__PURE__ */ jsx23(
|
|
4250
4399
|
ShowMaterialMediaByContentType_default,
|
|
4251
4400
|
{
|
|
4252
4401
|
contentType: contentMap.type,
|
|
@@ -4258,7 +4407,7 @@ var DropdownActivityMaterialContent = ({
|
|
|
4258
4407
|
optionList: materialMap[materialKey][answerKey].map(
|
|
4259
4408
|
(materialOption, index2) => ({
|
|
4260
4409
|
id: index2,
|
|
4261
|
-
media: /* @__PURE__ */
|
|
4410
|
+
media: /* @__PURE__ */ jsx23("div", { children: /* @__PURE__ */ jsx23(
|
|
4262
4411
|
ShowMaterialMediaByContentType_default,
|
|
4263
4412
|
{
|
|
4264
4413
|
contentType: contentMap.type,
|
|
@@ -4277,24 +4426,24 @@ var DropdownActivityMaterialContent = ({
|
|
|
4277
4426
|
})
|
|
4278
4427
|
)
|
|
4279
4428
|
}
|
|
4280
|
-
) : /* @__PURE__ */
|
|
4429
|
+
) : /* @__PURE__ */ jsx23("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
4281
4430
|
answerMap[materialKey]
|
|
4282
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
4431
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx23(
|
|
4283
4432
|
"span",
|
|
4284
4433
|
{
|
|
4285
4434
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
4286
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
4435
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx23("span", { className: "text-2xl", children: /* @__PURE__ */ jsx23(InlineMath2, { math: inputPart.value }) }) : inputPart.value
|
|
4287
4436
|
},
|
|
4288
4437
|
index2
|
|
4289
4438
|
)) }) }),
|
|
4290
|
-
learnerAnswerState === "CORRECT" ? /* @__PURE__ */
|
|
4439
|
+
learnerAnswerState === "CORRECT" ? /* @__PURE__ */ jsx23("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ jsx23(
|
|
4291
4440
|
BaseImage_default,
|
|
4292
4441
|
{
|
|
4293
4442
|
src: "/icons/checkbox.webp",
|
|
4294
4443
|
alt: "chekbbox",
|
|
4295
4444
|
size: "small"
|
|
4296
4445
|
}
|
|
4297
|
-
) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */
|
|
4446
|
+
) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ jsx23("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ jsx23(
|
|
4298
4447
|
BaseImage_default,
|
|
4299
4448
|
{
|
|
4300
4449
|
src: "/icons/cross-red.webp",
|
|
@@ -4310,8 +4459,8 @@ var DropdownActivityMaterialContent = ({
|
|
|
4310
4459
|
var DropdownActivityMaterialContent_default = DropdownActivityMaterialContent;
|
|
4311
4460
|
|
|
4312
4461
|
// src/components/activities/DropdownActivityContent.tsx
|
|
4313
|
-
import { useState as
|
|
4314
|
-
import { jsx as
|
|
4462
|
+
import { useState as useState15, useEffect as useEffect6 } from "react";
|
|
4463
|
+
import { jsx as jsx24, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
4315
4464
|
var DropdownActivityContent = ({
|
|
4316
4465
|
answer,
|
|
4317
4466
|
data,
|
|
@@ -4324,7 +4473,7 @@ var DropdownActivityContent = ({
|
|
|
4324
4473
|
const contentMap = parseContentMapFromData(data);
|
|
4325
4474
|
const dropdownBodyMap = parseBodyMapFromData(data, "DROPDOWN");
|
|
4326
4475
|
const dropdownMaterialMap = parseMaterialMapFromData(data, "DROPDOWN");
|
|
4327
|
-
const [currentAnswerMap, setCurrentAnswerMap] =
|
|
4476
|
+
const [currentAnswerMap, setCurrentAnswerMap] = useState15(() => {
|
|
4328
4477
|
return retrieveCurrentAnswerMap();
|
|
4329
4478
|
});
|
|
4330
4479
|
function retrieveCurrentAnswerMap() {
|
|
@@ -4333,7 +4482,7 @@ var DropdownActivityContent = ({
|
|
|
4333
4482
|
);
|
|
4334
4483
|
return answer.data[foundIndex].answerMap;
|
|
4335
4484
|
}
|
|
4336
|
-
|
|
4485
|
+
useEffect6(() => {
|
|
4337
4486
|
setCurrentAnswerMap(retrieveCurrentAnswerMap());
|
|
4338
4487
|
}, [answer]);
|
|
4339
4488
|
const handleDropdownAnswerOnChange = (answerObj, key, value) => {
|
|
@@ -4353,8 +4502,8 @@ var DropdownActivityContent = ({
|
|
|
4353
4502
|
setCurrentAnswerMap(newAnswerMap);
|
|
4354
4503
|
changeAnswer(newAnswer);
|
|
4355
4504
|
};
|
|
4356
|
-
return /* @__PURE__ */
|
|
4357
|
-
/* @__PURE__ */
|
|
4505
|
+
return /* @__PURE__ */ jsxs15("div", { className: "flex flex-row flex-wrap", children: [
|
|
4506
|
+
/* @__PURE__ */ jsx24("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ jsx24(
|
|
4358
4507
|
ActivityBodyContent_default,
|
|
4359
4508
|
{
|
|
4360
4509
|
bodyMap: dropdownBodyMap,
|
|
@@ -4363,9 +4512,9 @@ var DropdownActivityContent = ({
|
|
|
4363
4512
|
templateType: "DROPDOWN"
|
|
4364
4513
|
}
|
|
4365
4514
|
) }),
|
|
4366
|
-
/* @__PURE__ */
|
|
4367
|
-
/* @__PURE__ */
|
|
4368
|
-
/* @__PURE__ */
|
|
4515
|
+
/* @__PURE__ */ jsx24("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx24(DividerLine_default, {}) }),
|
|
4516
|
+
/* @__PURE__ */ jsx24("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx24(VerticalDividerLine_default, {}) }),
|
|
4517
|
+
/* @__PURE__ */ jsx24("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ jsx24(
|
|
4369
4518
|
DropdownActivityMaterialContent_default,
|
|
4370
4519
|
{
|
|
4371
4520
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -4384,13 +4533,13 @@ var DropdownActivityContent_default = DropdownActivityContent;
|
|
|
4384
4533
|
|
|
4385
4534
|
// src/components/activities/material-content/FillInTheBlanksActivityMaterialContent.tsx
|
|
4386
4535
|
import { InlineMath as InlineMath3 } from "react-katex";
|
|
4387
|
-
import { useState as
|
|
4388
|
-
import { useEffect as
|
|
4536
|
+
import { useState as useState16 } from "react";
|
|
4537
|
+
import { useEffect as useEffect7 } from "react";
|
|
4389
4538
|
import { useDrop as useDrop2 } from "react-dnd";
|
|
4390
4539
|
|
|
4391
4540
|
// src/components/dnds/DraggableItem.tsx
|
|
4392
4541
|
import { useDrag } from "react-dnd";
|
|
4393
|
-
import { jsx as
|
|
4542
|
+
import { jsx as jsx25 } from "react/jsx-runtime";
|
|
4394
4543
|
var DraggableItem = ({
|
|
4395
4544
|
key,
|
|
4396
4545
|
item,
|
|
@@ -4412,11 +4561,11 @@ var DraggableItem = ({
|
|
|
4412
4561
|
})
|
|
4413
4562
|
});
|
|
4414
4563
|
const opacity = isDragging ? 0.4 : 1;
|
|
4415
|
-
return /* @__PURE__ */
|
|
4564
|
+
return /* @__PURE__ */ jsx25(
|
|
4416
4565
|
"div",
|
|
4417
4566
|
{
|
|
4418
4567
|
className: `${isDragging ? "w-[0px] opacity-0" : "opacity-100"} transition-all duration-500`,
|
|
4419
|
-
children: /* @__PURE__ */
|
|
4568
|
+
children: /* @__PURE__ */ jsx25("div", { ref: drag, className: "", style: { opacity }, children: component })
|
|
4420
4569
|
},
|
|
4421
4570
|
key
|
|
4422
4571
|
);
|
|
@@ -4426,7 +4575,7 @@ var DraggableItem_default = DraggableItem;
|
|
|
4426
4575
|
// src/components/dnds/DroppableItem.tsx
|
|
4427
4576
|
import { useRef as useRef3 } from "react";
|
|
4428
4577
|
import { useDrop } from "react-dnd";
|
|
4429
|
-
import { jsx as
|
|
4578
|
+
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
4430
4579
|
var DroppableItem = ({
|
|
4431
4580
|
key,
|
|
4432
4581
|
item,
|
|
@@ -4446,7 +4595,7 @@ var DroppableItem = ({
|
|
|
4446
4595
|
}
|
|
4447
4596
|
});
|
|
4448
4597
|
dropRef(drop(ref));
|
|
4449
|
-
return /* @__PURE__ */
|
|
4598
|
+
return /* @__PURE__ */ jsx26(
|
|
4450
4599
|
"div",
|
|
4451
4600
|
{
|
|
4452
4601
|
className: `w-full transition-all duration-500 h-full`,
|
|
@@ -4459,7 +4608,7 @@ var DroppableItem = ({
|
|
|
4459
4608
|
var DroppableItem_default = DroppableItem;
|
|
4460
4609
|
|
|
4461
4610
|
// src/components/activities/material-content/FillInTheBlanksActivityMaterialContent.tsx
|
|
4462
|
-
import { jsx as
|
|
4611
|
+
import { jsx as jsx27, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
4463
4612
|
var FillInTheBlanksActivityMaterialContent = ({
|
|
4464
4613
|
uniqueValue,
|
|
4465
4614
|
answer,
|
|
@@ -4471,9 +4620,9 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4471
4620
|
isPreview,
|
|
4472
4621
|
showCorrectAnswer
|
|
4473
4622
|
}) => {
|
|
4474
|
-
const [shuffleOptionList, setShuffleOptionList] =
|
|
4475
|
-
const [selectedOption, setSelectedOption] =
|
|
4476
|
-
const [pasteOptionIndex, setPasteOptionIndex] =
|
|
4623
|
+
const [shuffleOptionList, setShuffleOptionList] = useState16([]);
|
|
4624
|
+
const [selectedOption, setSelectedOption] = useState16(null);
|
|
4625
|
+
const [pasteOptionIndex, setPasteOptionIndex] = useState16(null);
|
|
4477
4626
|
const [{ isOver, canDrop }, drop] = useDrop2({
|
|
4478
4627
|
accept: "FILL_IN_THE_BLANKS",
|
|
4479
4628
|
drop: () => {
|
|
@@ -4483,10 +4632,10 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4483
4632
|
canDrop: monitor.canDrop()
|
|
4484
4633
|
})
|
|
4485
4634
|
});
|
|
4486
|
-
|
|
4635
|
+
useEffect7(() => {
|
|
4487
4636
|
setShuffleOptionList(shuffleArray(optionList));
|
|
4488
4637
|
}, []);
|
|
4489
|
-
|
|
4638
|
+
useEffect7(() => {
|
|
4490
4639
|
if (!showCorrectAnswer) return;
|
|
4491
4640
|
const foundAnswer = answer.data.find(
|
|
4492
4641
|
(answerData) => answerData.type === "FILL_IN_THE_BLANKS"
|
|
@@ -4518,12 +4667,12 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4518
4667
|
return Object.keys(answerMap2).findIndex((key) => answerMap2[key] === option) !== -1;
|
|
4519
4668
|
};
|
|
4520
4669
|
const answerMap = retrieveAnswerMap();
|
|
4521
|
-
return /* @__PURE__ */
|
|
4670
|
+
return /* @__PURE__ */ jsxs16("div", { className: "flex flex-row flex-wrap items-center", onMouseUp: () => {
|
|
4522
4671
|
}, children: [
|
|
4523
|
-
/* @__PURE__ */
|
|
4524
|
-
/* @__PURE__ */
|
|
4525
|
-
/* @__PURE__ */
|
|
4526
|
-
(option, index) => checkAnswerProvided(answerMap, option) ? /* @__PURE__ */
|
|
4672
|
+
/* @__PURE__ */ jsx27("div", { className: "hidden md:block", children: /* @__PURE__ */ jsx27("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_fill_in_the_blanks_text") }) }),
|
|
4673
|
+
/* @__PURE__ */ jsx27("div", { className: "hidden md:contents", children: /* @__PURE__ */ jsx27(DividerLine_default, {}) }),
|
|
4674
|
+
/* @__PURE__ */ jsx27("div", { className: "w-full flex flex-row flex-wrap gap-x-2 gap-y-2 my-2", children: shuffleOptionList.map(
|
|
4675
|
+
(option, index) => checkAnswerProvided(answerMap, option) ? /* @__PURE__ */ jsx27("div", { className: "opacity-30", children: /* @__PURE__ */ jsx27(
|
|
4527
4676
|
ShowMaterialMediaByContentType_default,
|
|
4528
4677
|
{
|
|
4529
4678
|
contentType: contentMap.type,
|
|
@@ -4531,12 +4680,12 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4531
4680
|
canFullScreen: true
|
|
4532
4681
|
},
|
|
4533
4682
|
`${uniqueValue}-${index}`
|
|
4534
|
-
) }, index) : /* @__PURE__ */
|
|
4683
|
+
) }, index) : /* @__PURE__ */ jsx27(
|
|
4535
4684
|
DraggableItem_default,
|
|
4536
4685
|
{
|
|
4537
4686
|
item: { index: option },
|
|
4538
4687
|
type: "FILL_IN_THE_BLANKS",
|
|
4539
|
-
component: contentMap.type === "TEXT" ? /* @__PURE__ */
|
|
4688
|
+
component: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx27(
|
|
4540
4689
|
"div",
|
|
4541
4690
|
{
|
|
4542
4691
|
className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge cursor-pointer",
|
|
@@ -4544,9 +4693,9 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4544
4693
|
setSelectedOption(option);
|
|
4545
4694
|
setPasteOptionIndex(null);
|
|
4546
4695
|
},
|
|
4547
|
-
children: /* @__PURE__ */
|
|
4696
|
+
children: /* @__PURE__ */ jsx27("p", { className: "italic whitespace-pre-wrap", children: option })
|
|
4548
4697
|
}
|
|
4549
|
-
) : /* @__PURE__ */
|
|
4698
|
+
) : /* @__PURE__ */ jsx27(
|
|
4550
4699
|
"div",
|
|
4551
4700
|
{
|
|
4552
4701
|
className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge cursor-pointer",
|
|
@@ -4554,7 +4703,7 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4554
4703
|
setSelectedOption(option);
|
|
4555
4704
|
setPasteOptionIndex(null);
|
|
4556
4705
|
},
|
|
4557
|
-
children: /* @__PURE__ */
|
|
4706
|
+
children: /* @__PURE__ */ jsx27(
|
|
4558
4707
|
ShowMaterialMediaByContentType_default,
|
|
4559
4708
|
{
|
|
4560
4709
|
contentType: contentMap.type,
|
|
@@ -4572,12 +4721,12 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4572
4721
|
index
|
|
4573
4722
|
)
|
|
4574
4723
|
) }),
|
|
4575
|
-
/* @__PURE__ */
|
|
4724
|
+
/* @__PURE__ */ jsx27("div", { className: "flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
|
|
4576
4725
|
const learnerAnswerState = checkAnswerState(
|
|
4577
4726
|
JSON.parse(materialMap[materialKey]),
|
|
4578
4727
|
answerMap[materialKey]
|
|
4579
4728
|
);
|
|
4580
|
-
return /* @__PURE__ */
|
|
4729
|
+
return /* @__PURE__ */ jsx27("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ jsx27("div", { className: "mx-2", children: /* @__PURE__ */ jsx27(
|
|
4581
4730
|
DroppableItem_default,
|
|
4582
4731
|
{
|
|
4583
4732
|
item: { index },
|
|
@@ -4585,13 +4734,13 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4585
4734
|
target: pasteOptionIndex,
|
|
4586
4735
|
setTarget: setPasteOptionIndex,
|
|
4587
4736
|
dropRef: drop,
|
|
4588
|
-
component: /* @__PURE__ */
|
|
4589
|
-
/* @__PURE__ */
|
|
4737
|
+
component: /* @__PURE__ */ jsxs16("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
|
|
4738
|
+
/* @__PURE__ */ jsx27("div", { className: "my-auto", children: /* @__PURE__ */ jsxs16("p", { className: "text-xl", children: [
|
|
4590
4739
|
parseFloat(materialKey) + 1,
|
|
4591
4740
|
"."
|
|
4592
4741
|
] }) }),
|
|
4593
|
-
/* @__PURE__ */
|
|
4594
|
-
/* @__PURE__ */
|
|
4742
|
+
/* @__PURE__ */ jsx27("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsxs16("div", { className: "relative", children: [
|
|
4743
|
+
/* @__PURE__ */ jsx27("div", { className: "flex-1", children: /* @__PURE__ */ jsx27(
|
|
4595
4744
|
InputGroup_default,
|
|
4596
4745
|
{
|
|
4597
4746
|
type: "textarea",
|
|
@@ -4606,14 +4755,14 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4606
4755
|
}
|
|
4607
4756
|
}
|
|
4608
4757
|
) }),
|
|
4609
|
-
learnerAnswerState === "CORRECT" ? /* @__PURE__ */
|
|
4758
|
+
learnerAnswerState === "CORRECT" ? /* @__PURE__ */ jsx27("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ jsx27(
|
|
4610
4759
|
BaseImage_default,
|
|
4611
4760
|
{
|
|
4612
4761
|
src: "/icons/checkbox.webp",
|
|
4613
4762
|
alt: "checkbox",
|
|
4614
4763
|
size: "small"
|
|
4615
4764
|
}
|
|
4616
|
-
) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */
|
|
4765
|
+
) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ jsx27("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ jsx27(
|
|
4617
4766
|
BaseImage_default,
|
|
4618
4767
|
{
|
|
4619
4768
|
src: "/icons/cross-red.webp",
|
|
@@ -4621,20 +4770,20 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4621
4770
|
size: "small"
|
|
4622
4771
|
}
|
|
4623
4772
|
) }) : null
|
|
4624
|
-
] }) : answerMap[materialKey] === "" ? /* @__PURE__ */
|
|
4773
|
+
] }) : answerMap[materialKey] === "" ? /* @__PURE__ */ jsx27(
|
|
4625
4774
|
"div",
|
|
4626
4775
|
{
|
|
4627
4776
|
className: `w-catchup-activity-box-item border h-catchup-activity-box-item rounded-catchup-xlarge border-dashed ${learnerAnswerState === "CORRECT" ? "border-catchup-green" : learnerAnswerState === "INCORRECT" ? "border-catchup-red" : "border-catchup-blue"}`,
|
|
4628
|
-
children: /* @__PURE__ */
|
|
4777
|
+
children: /* @__PURE__ */ jsx27("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ jsx27("span", { className: "italic", children: i18n_default.t("please_drop_here") }) })
|
|
4629
4778
|
}
|
|
4630
|
-
) : /* @__PURE__ */
|
|
4779
|
+
) : /* @__PURE__ */ jsx27(
|
|
4631
4780
|
"div",
|
|
4632
4781
|
{
|
|
4633
4782
|
className: "flex-1 cursor-pointer",
|
|
4634
4783
|
onClick: () => {
|
|
4635
4784
|
onChange(answer, materialKey, "");
|
|
4636
4785
|
},
|
|
4637
|
-
children: /* @__PURE__ */
|
|
4786
|
+
children: /* @__PURE__ */ jsx27(
|
|
4638
4787
|
ShowMaterialMediaByContentType_default,
|
|
4639
4788
|
{
|
|
4640
4789
|
contentType: contentMap.type,
|
|
@@ -4644,13 +4793,13 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4644
4793
|
`${uniqueValue}-${index}`
|
|
4645
4794
|
)
|
|
4646
4795
|
}
|
|
4647
|
-
) : /* @__PURE__ */
|
|
4796
|
+
) : /* @__PURE__ */ jsx27("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
|
|
4648
4797
|
answerMap[materialKey]
|
|
4649
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
4798
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx27(
|
|
4650
4799
|
"span",
|
|
4651
4800
|
{
|
|
4652
4801
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
4653
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
4802
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx27("span", { className: "text-2xl", children: /* @__PURE__ */ jsx27(InlineMath3, { math: inputPart.value }) }) : inputPart.value
|
|
4654
4803
|
},
|
|
4655
4804
|
index2
|
|
4656
4805
|
)) }, materialKey) })
|
|
@@ -4664,8 +4813,8 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4664
4813
|
var FillInTheBlanksActivityMaterialContent_default = FillInTheBlanksActivityMaterialContent;
|
|
4665
4814
|
|
|
4666
4815
|
// src/components/activities/FillInTheBlanksActivityContent.tsx
|
|
4667
|
-
import { useState as
|
|
4668
|
-
import { jsx as
|
|
4816
|
+
import { useState as useState17, useEffect as useEffect8 } from "react";
|
|
4817
|
+
import { jsx as jsx28, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
4669
4818
|
var FillInTheBlanksActivityContent = ({
|
|
4670
4819
|
answer,
|
|
4671
4820
|
data,
|
|
@@ -4685,7 +4834,7 @@ var FillInTheBlanksActivityContent = ({
|
|
|
4685
4834
|
"FILL_IN_THE_BLANKS"
|
|
4686
4835
|
);
|
|
4687
4836
|
const fillInTheBlanksIncorrectList = data.fillInTheBlanksIncorrectList ? JSON.parse(data.fillInTheBlanksIncorrectList) : [];
|
|
4688
|
-
const [currentAnswerMap, setCurrentAnswerMap] =
|
|
4837
|
+
const [currentAnswerMap, setCurrentAnswerMap] = useState17(() => {
|
|
4689
4838
|
return retrieveCurrentAnswerMap();
|
|
4690
4839
|
});
|
|
4691
4840
|
function retrieveCurrentAnswerMap() {
|
|
@@ -4694,7 +4843,7 @@ var FillInTheBlanksActivityContent = ({
|
|
|
4694
4843
|
);
|
|
4695
4844
|
return answer.data[foundIndex].answerMap;
|
|
4696
4845
|
}
|
|
4697
|
-
|
|
4846
|
+
useEffect8(() => {
|
|
4698
4847
|
setCurrentAnswerMap(retrieveCurrentAnswerMap());
|
|
4699
4848
|
}, [answer]);
|
|
4700
4849
|
const constructAnswerOptionList = () => {
|
|
@@ -4732,8 +4881,8 @@ var FillInTheBlanksActivityContent = ({
|
|
|
4732
4881
|
setCurrentAnswerMap(newAnswerMap);
|
|
4733
4882
|
changeAnswer(newAnswer);
|
|
4734
4883
|
};
|
|
4735
|
-
return /* @__PURE__ */
|
|
4736
|
-
/* @__PURE__ */
|
|
4884
|
+
return /* @__PURE__ */ jsxs17("div", { className: "flex flex-row flex-wrap", children: [
|
|
4885
|
+
/* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ jsx28(
|
|
4737
4886
|
ActivityBodyContent_default,
|
|
4738
4887
|
{
|
|
4739
4888
|
bodyMap: fillInTheBlanksBodyMap,
|
|
@@ -4742,9 +4891,9 @@ var FillInTheBlanksActivityContent = ({
|
|
|
4742
4891
|
templateType: "FILL_IN_THE_BLANKS"
|
|
4743
4892
|
}
|
|
4744
4893
|
) }),
|
|
4745
|
-
/* @__PURE__ */
|
|
4746
|
-
/* @__PURE__ */
|
|
4747
|
-
/* @__PURE__ */
|
|
4894
|
+
/* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx28(DividerLine_default, {}) }),
|
|
4895
|
+
/* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx28(VerticalDividerLine_default, {}) }),
|
|
4896
|
+
/* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ jsx28(
|
|
4748
4897
|
FillInTheBlanksActivityMaterialContent_default,
|
|
4749
4898
|
{
|
|
4750
4899
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -4763,22 +4912,22 @@ var FillInTheBlanksActivityContent = ({
|
|
|
4763
4912
|
var FillInTheBlanksActivityContent_default = FillInTheBlanksActivityContent;
|
|
4764
4913
|
|
|
4765
4914
|
// src/components/activities/material-content/GroupingActivityMaterialContent.tsx
|
|
4766
|
-
import { useEffect as
|
|
4915
|
+
import { useEffect as useEffect10, useRef as useRef4, useState as useState19 } from "react";
|
|
4767
4916
|
import { useDrop as useDrop3 } from "react-dnd";
|
|
4768
4917
|
import { InlineMath as InlineMath4 } from "react-katex";
|
|
4769
4918
|
|
|
4770
4919
|
// src/hooks/useScreenSize.ts
|
|
4771
|
-
import { useState as
|
|
4920
|
+
import { useState as useState18, useEffect as useEffect9 } from "react";
|
|
4772
4921
|
var useScreenSize = () => {
|
|
4773
|
-
const [containerSize, setContainerSize] =
|
|
4922
|
+
const [containerSize, setContainerSize] = useState18({
|
|
4774
4923
|
width: 0,
|
|
4775
4924
|
height: 0
|
|
4776
4925
|
});
|
|
4777
|
-
const [screenSize, setScreenSize] =
|
|
4926
|
+
const [screenSize, setScreenSize] = useState18({
|
|
4778
4927
|
width: window.innerWidth,
|
|
4779
4928
|
height: window.innerHeight
|
|
4780
4929
|
});
|
|
4781
|
-
|
|
4930
|
+
useEffect9(() => {
|
|
4782
4931
|
const handleResize = () => {
|
|
4783
4932
|
setScreenSize({
|
|
4784
4933
|
width: window.innerWidth,
|
|
@@ -4803,7 +4952,7 @@ var useScreenSize = () => {
|
|
|
4803
4952
|
var useScreenSize_default = useScreenSize;
|
|
4804
4953
|
|
|
4805
4954
|
// src/components/activities/material-content/GroupingActivityMaterialContent.tsx
|
|
4806
|
-
import { Fragment as Fragment2, jsx as
|
|
4955
|
+
import { Fragment as Fragment2, jsx as jsx29, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
4807
4956
|
var GroupingActivityMaterialContent = ({
|
|
4808
4957
|
uniqueValue,
|
|
4809
4958
|
answer,
|
|
@@ -4814,10 +4963,10 @@ var GroupingActivityMaterialContent = ({
|
|
|
4814
4963
|
isPreview,
|
|
4815
4964
|
showCorrectAnswer
|
|
4816
4965
|
}) => {
|
|
4817
|
-
const [selectedValue, setSelectedValue] =
|
|
4818
|
-
const [selectedTargetKey, setSelectedTargetKey] =
|
|
4819
|
-
const [isShuffled, setIsShuffled] =
|
|
4820
|
-
const [shuffledMaterialList, setShuffledMaterialList] =
|
|
4966
|
+
const [selectedValue, setSelectedValue] = useState19(null);
|
|
4967
|
+
const [selectedTargetKey, setSelectedTargetKey] = useState19(null);
|
|
4968
|
+
const [isShuffled, setIsShuffled] = useState19(false);
|
|
4969
|
+
const [shuffledMaterialList, setShuffledMaterialList] = useState19([]);
|
|
4821
4970
|
const { screenSize, containerSize } = useScreenSize_default();
|
|
4822
4971
|
const [{ isOver, canDrop }, drop] = useDrop3({
|
|
4823
4972
|
accept: "GROUPING",
|
|
@@ -4830,14 +4979,14 @@ var GroupingActivityMaterialContent = ({
|
|
|
4830
4979
|
});
|
|
4831
4980
|
const ref = useRef4(null);
|
|
4832
4981
|
const itemsRef = useRef4(null);
|
|
4833
|
-
const [maxWidth, setMaxWidth] =
|
|
4834
|
-
|
|
4982
|
+
const [maxWidth, setMaxWidth] = useState19(0);
|
|
4983
|
+
useEffect10(() => {
|
|
4835
4984
|
if (!ref) return;
|
|
4836
4985
|
if (!ref.current) return;
|
|
4837
4986
|
if (!screenSize) return;
|
|
4838
4987
|
setMaxWidth(ref.current.offsetWidth - 12);
|
|
4839
4988
|
}, [ref, screenSize]);
|
|
4840
|
-
|
|
4989
|
+
useEffect10(() => {
|
|
4841
4990
|
const shuffleArray2 = (array) => {
|
|
4842
4991
|
if (!isShuffled) {
|
|
4843
4992
|
const copyArray = JSON.parse(JSON.stringify(array));
|
|
@@ -4858,7 +5007,7 @@ var GroupingActivityMaterialContent = ({
|
|
|
4858
5007
|
});
|
|
4859
5008
|
setShuffledMaterialList(shuffleArray2(materialList));
|
|
4860
5009
|
}, []);
|
|
4861
|
-
|
|
5010
|
+
useEffect10(() => {
|
|
4862
5011
|
if (!showCorrectAnswer) return;
|
|
4863
5012
|
answer.data.find(
|
|
4864
5013
|
(answerData) => answerData.type === "GROUPING"
|
|
@@ -4902,19 +5051,19 @@ var GroupingActivityMaterialContent = ({
|
|
|
4902
5051
|
};
|
|
4903
5052
|
const answerMap = retrieveAnswerMap();
|
|
4904
5053
|
const filteredMaterialList = retrieveFilteredMaterialList(answerMap);
|
|
4905
|
-
return /* @__PURE__ */
|
|
4906
|
-
/* @__PURE__ */
|
|
5054
|
+
return /* @__PURE__ */ jsxs18(Fragment2, { children: [
|
|
5055
|
+
/* @__PURE__ */ jsx29(
|
|
4907
5056
|
"div",
|
|
4908
5057
|
{
|
|
4909
5058
|
ref: itemsRef,
|
|
4910
5059
|
className: "flex-1 flex flex-row gap-x-4 gap-y-4 overflow-auto py-2",
|
|
4911
5060
|
children: filteredMaterialList.map((materialValue, index) => {
|
|
4912
|
-
return /* @__PURE__ */
|
|
5061
|
+
return /* @__PURE__ */ jsx29(
|
|
4913
5062
|
DraggableItem_default,
|
|
4914
5063
|
{
|
|
4915
5064
|
item: { index: materialValue },
|
|
4916
5065
|
type: "GROUPING",
|
|
4917
|
-
component: /* @__PURE__ */
|
|
5066
|
+
component: /* @__PURE__ */ jsx29(
|
|
4918
5067
|
"div",
|
|
4919
5068
|
{
|
|
4920
5069
|
className: `${selectedValue === materialValue ? "border-catchup-blue" : "border-catchup-lighter-gray"} h-catchup-activity-covering-box-item flex flex-col items-center justify-center border-2 rounded-catchup-xlarge cursor-pointer transition-all duration-300`,
|
|
@@ -4928,22 +5077,22 @@ var GroupingActivityMaterialContent = ({
|
|
|
4928
5077
|
setSelectedValue(null);
|
|
4929
5078
|
}
|
|
4930
5079
|
},
|
|
4931
|
-
children: contentMap.type === "TEXT" ? /* @__PURE__ */
|
|
5080
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx29(
|
|
4932
5081
|
"div",
|
|
4933
5082
|
{
|
|
4934
5083
|
className: `flex flex-col items-center justify-center m-4 min-h-[64px] min-w-[200px]`,
|
|
4935
|
-
children: /* @__PURE__ */
|
|
5084
|
+
children: /* @__PURE__ */ jsx29("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
4936
5085
|
materialValue
|
|
4937
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
5086
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx29(
|
|
4938
5087
|
"span",
|
|
4939
5088
|
{
|
|
4940
5089
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
4941
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5090
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx29("span", { className: "text-2xl", children: /* @__PURE__ */ jsx29(InlineMath4, { math: inputPart.value }) }) : inputPart.value
|
|
4942
5091
|
},
|
|
4943
5092
|
index2
|
|
4944
5093
|
)) })
|
|
4945
5094
|
}
|
|
4946
|
-
) : /* @__PURE__ */
|
|
5095
|
+
) : /* @__PURE__ */ jsx29(
|
|
4947
5096
|
ShowMaterialMediaByContentType_default,
|
|
4948
5097
|
{
|
|
4949
5098
|
contentType: contentMap.type,
|
|
@@ -4968,22 +5117,22 @@ var GroupingActivityMaterialContent = ({
|
|
|
4968
5117
|
})
|
|
4969
5118
|
}
|
|
4970
5119
|
),
|
|
4971
|
-
filteredMaterialList.length > 0 ? /* @__PURE__ */
|
|
4972
|
-
Object.keys(answerMap).map((answerMapKey, index) => /* @__PURE__ */
|
|
4973
|
-
/* @__PURE__ */
|
|
5120
|
+
filteredMaterialList.length > 0 ? /* @__PURE__ */ jsx29(DividerLine_default, {}) : null,
|
|
5121
|
+
Object.keys(answerMap).map((answerMapKey, index) => /* @__PURE__ */ jsxs18("div", { className: "flex flex-row w-full", children: [
|
|
5122
|
+
/* @__PURE__ */ jsx29("div", { className: "w-1/3", children: /* @__PURE__ */ jsx29(
|
|
4974
5123
|
"div",
|
|
4975
5124
|
{
|
|
4976
5125
|
className: `border-catchup-blue h-catchup-activity-outer-box-item flex flex-col items-center justify-center border-2 rounded-catchup-xlarge transition-all duration-300 my-3`,
|
|
4977
|
-
children: /* @__PURE__ */
|
|
5126
|
+
children: /* @__PURE__ */ jsx29(
|
|
4978
5127
|
"div",
|
|
4979
5128
|
{
|
|
4980
5129
|
className: `flex flex-col items-center justify-center transition-all duration-300 m-4`,
|
|
4981
|
-
children: /* @__PURE__ */
|
|
4982
|
-
(inputPart, index2) => /* @__PURE__ */
|
|
5130
|
+
children: /* @__PURE__ */ jsx29("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
|
|
5131
|
+
(inputPart, index2) => /* @__PURE__ */ jsx29(
|
|
4983
5132
|
"span",
|
|
4984
5133
|
{
|
|
4985
5134
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
4986
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5135
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx29("span", { className: "text-2xl", children: /* @__PURE__ */ jsx29(InlineMath4, { math: inputPart.value }) }) : inputPart.value
|
|
4987
5136
|
},
|
|
4988
5137
|
index2
|
|
4989
5138
|
)
|
|
@@ -4992,12 +5141,12 @@ var GroupingActivityMaterialContent = ({
|
|
|
4992
5141
|
)
|
|
4993
5142
|
}
|
|
4994
5143
|
) }),
|
|
4995
|
-
/* @__PURE__ */
|
|
4996
|
-
/* @__PURE__ */
|
|
5144
|
+
/* @__PURE__ */ jsx29("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
|
|
5145
|
+
/* @__PURE__ */ jsx29("div", { className: "flex-1", ref, children: /* @__PURE__ */ jsx29("div", { className: "h-full py-3", children: /* @__PURE__ */ jsx29(
|
|
4997
5146
|
"div",
|
|
4998
5147
|
{
|
|
4999
5148
|
className: `${canDrop ? selectedTargetKey === answerMapKey ? "bg-catchup-light-blue" : "bg-catchup-light-blue opacity-40" : ""} flex-1 border-catchup-blue rounded-catchup-xlarge border-2 h-full p-1`,
|
|
5000
|
-
children: /* @__PURE__ */
|
|
5149
|
+
children: /* @__PURE__ */ jsx29(
|
|
5001
5150
|
DroppableItem_default,
|
|
5002
5151
|
{
|
|
5003
5152
|
item: { index: answerMapKey },
|
|
@@ -5005,7 +5154,7 @@ var GroupingActivityMaterialContent = ({
|
|
|
5005
5154
|
target: selectedTargetKey,
|
|
5006
5155
|
setTarget: setSelectedTargetKey,
|
|
5007
5156
|
dropRef: drop,
|
|
5008
|
-
component: /* @__PURE__ */
|
|
5157
|
+
component: /* @__PURE__ */ jsx29(
|
|
5009
5158
|
"div",
|
|
5010
5159
|
{
|
|
5011
5160
|
className: "h-full flex-1 flex flex-row items-center overflow-x-auto",
|
|
@@ -5018,7 +5167,7 @@ var GroupingActivityMaterialContent = ({
|
|
|
5018
5167
|
materialMap[answerMapKey],
|
|
5019
5168
|
answerMapValue
|
|
5020
5169
|
);
|
|
5021
|
-
return /* @__PURE__ */
|
|
5170
|
+
return /* @__PURE__ */ jsx29("div", { className: "p-1", children: /* @__PURE__ */ jsx29("div", { className: "h-catchup-activity-box-item", children: /* @__PURE__ */ jsx29(
|
|
5022
5171
|
"div",
|
|
5023
5172
|
{
|
|
5024
5173
|
className: `${learnerAnswerState === "EMPTY" ? "border-catchup-lighter-gray" : learnerAnswerState === "CORRECT" ? "border-catchup-green" : learnerAnswerState === "INCORRECT" ? "border-catchup-red" : "border-catchup-blue"} border-2 rounded-catchup-xlarge h-full flex flex-col items-center justify-center transition-all duration-300 cursor-pointer`,
|
|
@@ -5034,17 +5183,17 @@ var GroupingActivityMaterialContent = ({
|
|
|
5034
5183
|
setSelectedValue(null);
|
|
5035
5184
|
}
|
|
5036
5185
|
},
|
|
5037
|
-
children: contentMap.type === "TEXT" ? /* @__PURE__ */
|
|
5186
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx29(
|
|
5038
5187
|
"div",
|
|
5039
5188
|
{
|
|
5040
5189
|
className: `flex flex-col items-center justify-center transition-all duration-300 min-h-[64px] min-w-[200px]`,
|
|
5041
|
-
children: /* @__PURE__ */
|
|
5190
|
+
children: /* @__PURE__ */ jsx29("div", { className: "m-2", children: /* @__PURE__ */ jsx29("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
5042
5191
|
answerMapValue
|
|
5043
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
5192
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx29(
|
|
5044
5193
|
"span",
|
|
5045
5194
|
{
|
|
5046
5195
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5047
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5196
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx29("span", { className: "text-2xl", children: /* @__PURE__ */ jsx29(
|
|
5048
5197
|
InlineMath4,
|
|
5049
5198
|
{
|
|
5050
5199
|
math: inputPart.value
|
|
@@ -5054,7 +5203,7 @@ var GroupingActivityMaterialContent = ({
|
|
|
5054
5203
|
index2
|
|
5055
5204
|
)) }) })
|
|
5056
5205
|
}
|
|
5057
|
-
) : /* @__PURE__ */
|
|
5206
|
+
) : /* @__PURE__ */ jsx29(
|
|
5058
5207
|
ShowMaterialMediaByContentType_default,
|
|
5059
5208
|
{
|
|
5060
5209
|
contentType: contentMap.type,
|
|
@@ -5080,7 +5229,7 @@ var GroupingActivityMaterialContent = ({
|
|
|
5080
5229
|
var GroupingActivityMaterialContent_default = GroupingActivityMaterialContent;
|
|
5081
5230
|
|
|
5082
5231
|
// src/components/activities/GroupingActivityContent.tsx
|
|
5083
|
-
import { Fragment as Fragment3, jsx as
|
|
5232
|
+
import { Fragment as Fragment3, jsx as jsx30, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
5084
5233
|
var GroupingActivityContent = ({
|
|
5085
5234
|
answer,
|
|
5086
5235
|
data,
|
|
@@ -5105,16 +5254,16 @@ var GroupingActivityContent = ({
|
|
|
5105
5254
|
}
|
|
5106
5255
|
changeAnswer(answer2);
|
|
5107
5256
|
};
|
|
5108
|
-
return /* @__PURE__ */
|
|
5109
|
-
/* @__PURE__ */
|
|
5257
|
+
return /* @__PURE__ */ jsxs19(Fragment3, { children: [
|
|
5258
|
+
/* @__PURE__ */ jsx30(
|
|
5110
5259
|
ActivityBodyContent_default,
|
|
5111
5260
|
{
|
|
5112
5261
|
bodyMap: groupingBodyMap,
|
|
5113
5262
|
templateType: "GROUPING"
|
|
5114
5263
|
}
|
|
5115
5264
|
),
|
|
5116
|
-
/* @__PURE__ */
|
|
5117
|
-
/* @__PURE__ */
|
|
5265
|
+
/* @__PURE__ */ jsx30(DividerLine_default, {}),
|
|
5266
|
+
/* @__PURE__ */ jsx30(
|
|
5118
5267
|
GroupingActivityMaterialContent_default,
|
|
5119
5268
|
{
|
|
5120
5269
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -5132,10 +5281,10 @@ var GroupingActivityContent = ({
|
|
|
5132
5281
|
var GroupingActivityContent_default = GroupingActivityContent;
|
|
5133
5282
|
|
|
5134
5283
|
// src/components/activities/material-content/MatchingActivityMaterialContent.tsx
|
|
5135
|
-
import { useEffect as
|
|
5284
|
+
import { useEffect as useEffect11, useRef as useRef5, useState as useState20 } from "react";
|
|
5136
5285
|
import { useDrop as useDrop4 } from "react-dnd";
|
|
5137
5286
|
import { InlineMath as InlineMath5 } from "react-katex";
|
|
5138
|
-
import { Fragment as Fragment4, jsx as
|
|
5287
|
+
import { Fragment as Fragment4, jsx as jsx31, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
5139
5288
|
var MatchingActivityMaterialContent = ({
|
|
5140
5289
|
uniqueValue,
|
|
5141
5290
|
answer,
|
|
@@ -5146,10 +5295,10 @@ var MatchingActivityMaterialContent = ({
|
|
|
5146
5295
|
isPreview,
|
|
5147
5296
|
showCorrectAnswer
|
|
5148
5297
|
}) => {
|
|
5149
|
-
const [selectedValue, setSelectedValue] =
|
|
5150
|
-
const [selectedTargetKey, setSelectedTargetKey] =
|
|
5151
|
-
const [isShuffled, setIsShuffled] =
|
|
5152
|
-
const [shuffledMaterialList, setShuffledMaterialList] =
|
|
5298
|
+
const [selectedValue, setSelectedValue] = useState20(null);
|
|
5299
|
+
const [selectedTargetKey, setSelectedTargetKey] = useState20(null);
|
|
5300
|
+
const [isShuffled, setIsShuffled] = useState20(false);
|
|
5301
|
+
const [shuffledMaterialList, setShuffledMaterialList] = useState20([]);
|
|
5153
5302
|
const [{ isOver, canDrop }, drop] = useDrop4({
|
|
5154
5303
|
accept: "MATCHING",
|
|
5155
5304
|
drop: () => {
|
|
@@ -5161,7 +5310,7 @@ var MatchingActivityMaterialContent = ({
|
|
|
5161
5310
|
});
|
|
5162
5311
|
const { containerSize } = useScreenSize_default();
|
|
5163
5312
|
const itemsRef = useRef5(null);
|
|
5164
|
-
|
|
5313
|
+
useEffect11(() => {
|
|
5165
5314
|
const shuffleArray2 = (array) => {
|
|
5166
5315
|
if (!isShuffled) {
|
|
5167
5316
|
const copyArray = JSON.parse(JSON.stringify(array));
|
|
@@ -5180,13 +5329,13 @@ var MatchingActivityMaterialContent = ({
|
|
|
5180
5329
|
});
|
|
5181
5330
|
setShuffledMaterialList(shuffleArray2(materialList));
|
|
5182
5331
|
}, []);
|
|
5183
|
-
|
|
5332
|
+
useEffect11(() => {
|
|
5184
5333
|
if (!showCorrectAnswer) return;
|
|
5185
5334
|
answer.data.find(
|
|
5186
5335
|
(answerData) => answerData.type === "MATCHING"
|
|
5187
5336
|
).answerMap = materialMap;
|
|
5188
5337
|
}, [showCorrectAnswer]);
|
|
5189
|
-
|
|
5338
|
+
useEffect11(() => {
|
|
5190
5339
|
if (!itemsRef) return;
|
|
5191
5340
|
if (!itemsRef.current) return;
|
|
5192
5341
|
if (!containerSize) return;
|
|
@@ -5231,18 +5380,18 @@ var MatchingActivityMaterialContent = ({
|
|
|
5231
5380
|
};
|
|
5232
5381
|
const answerMap = retrieveAnswerMap();
|
|
5233
5382
|
const filteredMaterialList = retrieveFilteredMaterialList(answerMap);
|
|
5234
|
-
return /* @__PURE__ */
|
|
5235
|
-
/* @__PURE__ */
|
|
5383
|
+
return /* @__PURE__ */ jsxs20(Fragment4, { children: [
|
|
5384
|
+
/* @__PURE__ */ jsx31(
|
|
5236
5385
|
"div",
|
|
5237
5386
|
{
|
|
5238
5387
|
ref: itemsRef,
|
|
5239
5388
|
className: "flex-1 flex flex-row gap-x-4 gap-y-4 overflow-auto py-2",
|
|
5240
|
-
children: filteredMaterialList.map((materialValue, index) => /* @__PURE__ */
|
|
5389
|
+
children: filteredMaterialList.map((materialValue, index) => /* @__PURE__ */ jsx31(
|
|
5241
5390
|
DraggableItem_default,
|
|
5242
5391
|
{
|
|
5243
5392
|
item: { index: materialValue },
|
|
5244
5393
|
type: "MATCHING",
|
|
5245
|
-
component: /* @__PURE__ */
|
|
5394
|
+
component: /* @__PURE__ */ jsx31(
|
|
5246
5395
|
"div",
|
|
5247
5396
|
{
|
|
5248
5397
|
className: `${selectedValue === materialValue ? "border-catchup-blue" : "border-catchup-lighter-gray"} h-catchup-activity-covering-box-item flex flex-col items-center justify-center border-2 rounded-catchup-xlarge cursor-pointer transition-all duration-300`,
|
|
@@ -5256,22 +5405,22 @@ var MatchingActivityMaterialContent = ({
|
|
|
5256
5405
|
setSelectedValue(null);
|
|
5257
5406
|
}
|
|
5258
5407
|
},
|
|
5259
|
-
children: contentMap.type === "TEXT" ? /* @__PURE__ */
|
|
5408
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx31(
|
|
5260
5409
|
"div",
|
|
5261
5410
|
{
|
|
5262
5411
|
className: `flex flex-col items-center justify-center m-4 min-h-[64px] min-w-[200px]`,
|
|
5263
|
-
children: /* @__PURE__ */
|
|
5412
|
+
children: /* @__PURE__ */ jsx31("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
5264
5413
|
materialValue
|
|
5265
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
5414
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx31(
|
|
5266
5415
|
"span",
|
|
5267
5416
|
{
|
|
5268
5417
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5269
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5418
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(InlineMath5, { math: inputPart.value }) }) : inputPart.value
|
|
5270
5419
|
},
|
|
5271
5420
|
index2
|
|
5272
5421
|
)) })
|
|
5273
5422
|
}
|
|
5274
|
-
) : /* @__PURE__ */
|
|
5423
|
+
) : /* @__PURE__ */ jsx31(
|
|
5275
5424
|
ShowMaterialMediaByContentType_default,
|
|
5276
5425
|
{
|
|
5277
5426
|
contentType: contentMap.type,
|
|
@@ -5295,27 +5444,27 @@ var MatchingActivityMaterialContent = ({
|
|
|
5295
5444
|
))
|
|
5296
5445
|
}
|
|
5297
5446
|
),
|
|
5298
|
-
filteredMaterialList.length > 0 ? /* @__PURE__ */
|
|
5447
|
+
filteredMaterialList.length > 0 ? /* @__PURE__ */ jsx31(DividerLine_default, {}) : null,
|
|
5299
5448
|
Object.keys(answerMap).map((answerMapKey, index) => {
|
|
5300
5449
|
const learnerAnswerState = checkAnswerState(
|
|
5301
5450
|
materialMap[answerMapKey],
|
|
5302
5451
|
answerMap[answerMapKey]
|
|
5303
5452
|
);
|
|
5304
|
-
return /* @__PURE__ */
|
|
5305
|
-
/* @__PURE__ */
|
|
5453
|
+
return /* @__PURE__ */ jsxs20("div", { className: "flex flex-row w-full", children: [
|
|
5454
|
+
/* @__PURE__ */ jsx31("div", { className: "w-1/3", children: /* @__PURE__ */ jsx31(
|
|
5306
5455
|
"div",
|
|
5307
5456
|
{
|
|
5308
5457
|
className: `h-catchup-activity-outer-box-item flex flex-col items-center justify-center border-2 rounded-catchup-xlarge transition-all duration-300 my-3 ${learnerAnswerState === "EMPTY" ? "border-catchup-blue" : learnerAnswerState === "CORRECT" ? "border-catchup-green" : learnerAnswerState === "INCORRECT" ? "border-catchup-red" : "border-catchup-blue"}`,
|
|
5309
|
-
children: /* @__PURE__ */
|
|
5458
|
+
children: /* @__PURE__ */ jsx31(
|
|
5310
5459
|
"div",
|
|
5311
5460
|
{
|
|
5312
5461
|
className: `flex flex-col items-center justify-center transition-all duration-300 m-4`,
|
|
5313
|
-
children: /* @__PURE__ */
|
|
5314
|
-
(inputPart, index2) => /* @__PURE__ */
|
|
5462
|
+
children: /* @__PURE__ */ jsx31("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
|
|
5463
|
+
(inputPart, index2) => /* @__PURE__ */ jsx31(
|
|
5315
5464
|
"span",
|
|
5316
5465
|
{
|
|
5317
5466
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5318
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5467
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(InlineMath5, { math: inputPart.value }) }) : inputPart.value
|
|
5319
5468
|
},
|
|
5320
5469
|
index2
|
|
5321
5470
|
)
|
|
@@ -5324,8 +5473,8 @@ var MatchingActivityMaterialContent = ({
|
|
|
5324
5473
|
)
|
|
5325
5474
|
}
|
|
5326
5475
|
) }),
|
|
5327
|
-
/* @__PURE__ */
|
|
5328
|
-
/* @__PURE__ */
|
|
5476
|
+
/* @__PURE__ */ jsx31("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
|
|
5477
|
+
/* @__PURE__ */ jsx31("div", { className: "flex-1", children: /* @__PURE__ */ jsx31(
|
|
5329
5478
|
"div",
|
|
5330
5479
|
{
|
|
5331
5480
|
className: `${canDrop ? selectedTargetKey === answerMapKey ? "bg-catchup-light-blue" : "bg-catchup-light-blue opacity-40" : ""} h-catchup-activity-outer-box-item flex flex-col items-center justify-center border-2 rounded-catchup-xlarge cursor-pointer transition-all duration-300 my-3 ${learnerAnswerState === "EMPTY" ? "border-catchup-blue" : learnerAnswerState === "CORRECT" ? "border-catchup-green" : learnerAnswerState === "INCORRECT" ? "border-catchup-red" : "border-catchup-blue"}`,
|
|
@@ -5334,7 +5483,7 @@ var MatchingActivityMaterialContent = ({
|
|
|
5334
5483
|
setSelectedValue(null);
|
|
5335
5484
|
}
|
|
5336
5485
|
},
|
|
5337
|
-
children: /* @__PURE__ */
|
|
5486
|
+
children: /* @__PURE__ */ jsx31(
|
|
5338
5487
|
DroppableItem_default,
|
|
5339
5488
|
{
|
|
5340
5489
|
item: { index: answerMapKey },
|
|
@@ -5342,7 +5491,7 @@ var MatchingActivityMaterialContent = ({
|
|
|
5342
5491
|
target: selectedTargetKey,
|
|
5343
5492
|
setTarget: setSelectedTargetKey,
|
|
5344
5493
|
dropRef: drop,
|
|
5345
|
-
component: /* @__PURE__ */
|
|
5494
|
+
component: /* @__PURE__ */ jsx31(
|
|
5346
5495
|
"div",
|
|
5347
5496
|
{
|
|
5348
5497
|
className: `h-full flex-1 flex flex-row items-center justify-center `,
|
|
@@ -5355,16 +5504,16 @@ var MatchingActivityMaterialContent = ({
|
|
|
5355
5504
|
);
|
|
5356
5505
|
}
|
|
5357
5506
|
},
|
|
5358
|
-
children: contentMap.type === "TEXT" ? /* @__PURE__ */
|
|
5507
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx31("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
5359
5508
|
answerMap[answerMapKey]
|
|
5360
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
5509
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx31(
|
|
5361
5510
|
"span",
|
|
5362
5511
|
{
|
|
5363
5512
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5364
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5513
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(InlineMath5, { math: inputPart.value }) }) : inputPart.value
|
|
5365
5514
|
},
|
|
5366
5515
|
index2
|
|
5367
|
-
)) }) : /* @__PURE__ */
|
|
5516
|
+
)) }) : /* @__PURE__ */ jsx31(
|
|
5368
5517
|
ShowMaterialMediaByContentType_default,
|
|
5369
5518
|
{
|
|
5370
5519
|
contentType: contentMap.type,
|
|
@@ -5387,7 +5536,7 @@ var MatchingActivityMaterialContent = ({
|
|
|
5387
5536
|
var MatchingActivityMaterialContent_default = MatchingActivityMaterialContent;
|
|
5388
5537
|
|
|
5389
5538
|
// src/components/activities/MatchingActivityContent.tsx
|
|
5390
|
-
import { Fragment as Fragment5, jsx as
|
|
5539
|
+
import { Fragment as Fragment5, jsx as jsx32, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
5391
5540
|
var MatchingActivityContent = ({
|
|
5392
5541
|
answer,
|
|
5393
5542
|
data,
|
|
@@ -5408,16 +5557,16 @@ var MatchingActivityContent = ({
|
|
|
5408
5557
|
answerMap[key] = value;
|
|
5409
5558
|
changeAnswer(answer2);
|
|
5410
5559
|
};
|
|
5411
|
-
return /* @__PURE__ */
|
|
5412
|
-
/* @__PURE__ */
|
|
5560
|
+
return /* @__PURE__ */ jsxs21(Fragment5, { children: [
|
|
5561
|
+
/* @__PURE__ */ jsx32(
|
|
5413
5562
|
ActivityBodyContent_default,
|
|
5414
5563
|
{
|
|
5415
5564
|
bodyMap: matchingBodyMap,
|
|
5416
5565
|
templateType: "MATCHING"
|
|
5417
5566
|
}
|
|
5418
5567
|
),
|
|
5419
|
-
/* @__PURE__ */
|
|
5420
|
-
/* @__PURE__ */
|
|
5568
|
+
/* @__PURE__ */ jsx32(DividerLine_default, {}),
|
|
5569
|
+
/* @__PURE__ */ jsx32(
|
|
5421
5570
|
MatchingActivityMaterialContent_default,
|
|
5422
5571
|
{
|
|
5423
5572
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -5436,7 +5585,7 @@ var MatchingActivityContent_default = MatchingActivityContent;
|
|
|
5436
5585
|
|
|
5437
5586
|
// src/components/activities/material-content/MCMAActivityMaterialContent.tsx
|
|
5438
5587
|
import { InlineMath as InlineMath6 } from "react-katex";
|
|
5439
|
-
import { jsx as
|
|
5588
|
+
import { jsx as jsx33, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
5440
5589
|
var MCMAActivityMaterialContent = ({
|
|
5441
5590
|
uniqueValue,
|
|
5442
5591
|
answer,
|
|
@@ -5469,10 +5618,10 @@ var MCMAActivityMaterialContent = ({
|
|
|
5469
5618
|
const answerMap = retrieveAnswerMap();
|
|
5470
5619
|
const correctAnswerList = retrieveCorrectAnswerList();
|
|
5471
5620
|
return Object.keys(materialMap).map((materialKey, index) => {
|
|
5472
|
-
return /* @__PURE__ */
|
|
5473
|
-
/* @__PURE__ */
|
|
5474
|
-
/* @__PURE__ */
|
|
5475
|
-
checkCanAnswerQuestion() ? /* @__PURE__ */
|
|
5621
|
+
return /* @__PURE__ */ jsx33("div", { className: "flex flex-row items-center my-1", children: /* @__PURE__ */ jsxs22("div", { className: "flex-1 flex flex-col justify-center border-catchup-lighter-gray rounded-catchup-xlarge px-5", children: [
|
|
5622
|
+
/* @__PURE__ */ jsx33("div", { className: "hidden md:block", children: /* @__PURE__ */ jsx33("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcma_text") }) }),
|
|
5623
|
+
/* @__PURE__ */ jsx33("div", { className: "hidden md:contents", children: /* @__PURE__ */ jsx33(DividerLine_default, {}) }),
|
|
5624
|
+
checkCanAnswerQuestion() ? /* @__PURE__ */ jsx33("div", { className: "flex flex-row w-full flex-wrap ", children: materialMap[materialKey].map(
|
|
5476
5625
|
(materialSubKey, index2) => {
|
|
5477
5626
|
const foundAnswer = answerMap[materialKey].find(
|
|
5478
5627
|
(learnerAnswer) => learnerAnswer === materialSubKey
|
|
@@ -5485,7 +5634,7 @@ var MCMAActivityMaterialContent = ({
|
|
|
5485
5634
|
const foundIndex = correctAnswerList.findIndex(
|
|
5486
5635
|
(correctAnswer) => correctAnswer === materialSubKey
|
|
5487
5636
|
);
|
|
5488
|
-
return /* @__PURE__ */
|
|
5637
|
+
return /* @__PURE__ */ jsxs22(
|
|
5489
5638
|
"div",
|
|
5490
5639
|
{
|
|
5491
5640
|
className: `w-full flex flex-row items-center justify-center cursor-pointer my-2 gap-x-2 ${learnerAnswerState === "EMPTY" && foundIndex !== -1 || learnerAnswerState === "CORRECT" ? "border-2 border-catchup-green rounded-catchup-xlarge p-2" : learnerAnswerState === "INCORRECT" ? "border-2 border-catchup-red rounded-catchup-xlarge p-2" : ""}`,
|
|
@@ -5493,7 +5642,7 @@ var MCMAActivityMaterialContent = ({
|
|
|
5493
5642
|
onChange(answer, materialKey, materialSubKey);
|
|
5494
5643
|
},
|
|
5495
5644
|
children: [
|
|
5496
|
-
/* @__PURE__ */
|
|
5645
|
+
/* @__PURE__ */ jsx33(
|
|
5497
5646
|
BaseImage_default,
|
|
5498
5647
|
{
|
|
5499
5648
|
src: answerMap[materialKey].includes(materialSubKey) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
|
|
@@ -5503,16 +5652,16 @@ var MCMAActivityMaterialContent = ({
|
|
|
5503
5652
|
}
|
|
5504
5653
|
}
|
|
5505
5654
|
),
|
|
5506
|
-
/* @__PURE__ */
|
|
5655
|
+
/* @__PURE__ */ jsx33("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx33("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
5507
5656
|
materialSubKey
|
|
5508
|
-
).map((inputPart, index3) => /* @__PURE__ */
|
|
5657
|
+
).map((inputPart, index3) => /* @__PURE__ */ jsx33(
|
|
5509
5658
|
"span",
|
|
5510
5659
|
{
|
|
5511
5660
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5512
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5661
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx33("span", { className: "text-2xl", children: /* @__PURE__ */ jsx33(InlineMath6, { math: inputPart.value }) }) : inputPart.value
|
|
5513
5662
|
},
|
|
5514
5663
|
index3
|
|
5515
|
-
)) }) : /* @__PURE__ */
|
|
5664
|
+
)) }) : /* @__PURE__ */ jsx33(
|
|
5516
5665
|
ShowMaterialMediaByContentType_default,
|
|
5517
5666
|
{
|
|
5518
5667
|
contentType: contentMap.type,
|
|
@@ -5526,13 +5675,13 @@ var MCMAActivityMaterialContent = ({
|
|
|
5526
5675
|
index2
|
|
5527
5676
|
);
|
|
5528
5677
|
}
|
|
5529
|
-
) }) : /* @__PURE__ */
|
|
5678
|
+
) }) : /* @__PURE__ */ jsx33("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
|
|
5530
5679
|
answerMap[materialKey]
|
|
5531
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
5680
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx33(
|
|
5532
5681
|
"span",
|
|
5533
5682
|
{
|
|
5534
5683
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5535
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5684
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx33("span", { className: "text-2xl", children: /* @__PURE__ */ jsx33(InlineMath6, { math: inputPart.value }) }) : inputPart.value
|
|
5536
5685
|
},
|
|
5537
5686
|
index2
|
|
5538
5687
|
)) }, materialKey)
|
|
@@ -5542,7 +5691,7 @@ var MCMAActivityMaterialContent = ({
|
|
|
5542
5691
|
var MCMAActivityMaterialContent_default = MCMAActivityMaterialContent;
|
|
5543
5692
|
|
|
5544
5693
|
// src/components/activities/MCMAActivityContent.tsx
|
|
5545
|
-
import { jsx as
|
|
5694
|
+
import { jsx as jsx34, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
5546
5695
|
var MCMAActivityContent = ({
|
|
5547
5696
|
answer,
|
|
5548
5697
|
data,
|
|
@@ -5569,11 +5718,11 @@ var MCMAActivityContent = ({
|
|
|
5569
5718
|
}
|
|
5570
5719
|
changeAnswer(answer2);
|
|
5571
5720
|
};
|
|
5572
|
-
return /* @__PURE__ */
|
|
5573
|
-
/* @__PURE__ */
|
|
5574
|
-
/* @__PURE__ */
|
|
5575
|
-
/* @__PURE__ */
|
|
5576
|
-
/* @__PURE__ */
|
|
5721
|
+
return /* @__PURE__ */ jsxs23("div", { className: "flex flex-row flex-wrap", children: [
|
|
5722
|
+
/* @__PURE__ */ jsx34("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ jsx34(ActivityBodyContent_default, { bodyMap: MCMABodyMap, templateType: "MCMA" }) }),
|
|
5723
|
+
/* @__PURE__ */ jsx34("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx34(DividerLine_default, {}) }),
|
|
5724
|
+
/* @__PURE__ */ jsx34("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx34(VerticalDividerLine_default, {}) }),
|
|
5725
|
+
/* @__PURE__ */ jsx34("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ jsx34(
|
|
5577
5726
|
MCMAActivityMaterialContent_default,
|
|
5578
5727
|
{
|
|
5579
5728
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -5591,7 +5740,7 @@ var MCMAActivityContent_default = MCMAActivityContent;
|
|
|
5591
5740
|
|
|
5592
5741
|
// src/components/activities/material-content/MCSAActivityMaterialContent.tsx
|
|
5593
5742
|
import { InlineMath as InlineMath7 } from "react-katex";
|
|
5594
|
-
import { jsx as
|
|
5743
|
+
import { jsx as jsx35, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
5595
5744
|
var MCSAActivityMaterialContent = ({
|
|
5596
5745
|
uniqueValue,
|
|
5597
5746
|
answer,
|
|
@@ -5621,10 +5770,10 @@ var MCSAActivityMaterialContent = ({
|
|
|
5621
5770
|
const answerMap = retrieveAnswerMap();
|
|
5622
5771
|
const correctAnswer = retrieveCorrectAnswer();
|
|
5623
5772
|
return Object.keys(materialMap).map((materialKey, index) => {
|
|
5624
|
-
return /* @__PURE__ */
|
|
5625
|
-
/* @__PURE__ */
|
|
5626
|
-
/* @__PURE__ */
|
|
5627
|
-
checkCanAnswerQuestion() ? /* @__PURE__ */
|
|
5773
|
+
return /* @__PURE__ */ jsx35("div", { className: "flex flex-row items-center my-1", children: /* @__PURE__ */ jsxs24("div", { className: "flex-1 flex flex-col justify-center border-catchup-lighter-gray rounded-catchup-xlarge px-5", children: [
|
|
5774
|
+
/* @__PURE__ */ jsx35("div", { className: "hidden md:block", children: /* @__PURE__ */ jsx35("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcsa_text") }) }),
|
|
5775
|
+
/* @__PURE__ */ jsx35("div", { className: "hidden md:contents", children: /* @__PURE__ */ jsx35(DividerLine_default, {}) }),
|
|
5776
|
+
checkCanAnswerQuestion() ? /* @__PURE__ */ jsx35(
|
|
5628
5777
|
"div",
|
|
5629
5778
|
{
|
|
5630
5779
|
className: `flex flex-row w-full ${Object.keys(materialMap[materialKey]).length <= 4 ? "justify-center" : ""} flex-wrap`,
|
|
@@ -5635,7 +5784,7 @@ var MCSAActivityMaterialContent = ({
|
|
|
5635
5784
|
materialSubKey,
|
|
5636
5785
|
answerMap[materialKey]
|
|
5637
5786
|
);
|
|
5638
|
-
return /* @__PURE__ */
|
|
5787
|
+
return /* @__PURE__ */ jsxs24(
|
|
5639
5788
|
"div",
|
|
5640
5789
|
{
|
|
5641
5790
|
className: `w-full flex flex-row items-center justify-center cursor-pointer my-2 gap-x-2 ${learnerAnswerState === "EMPTY" && materialSubKey === correctAnswer || learnerAnswerState === "CORRECT" ? "border-2 border-catchup-green rounded-catchup-xlarge p-2" : learnerAnswerState === "INCORRECT" ? "border-2 border-catchup-red rounded-catchup-xlarge p-2" : ""}`,
|
|
@@ -5643,7 +5792,7 @@ var MCSAActivityMaterialContent = ({
|
|
|
5643
5792
|
onChange(answer, materialKey, materialSubKey);
|
|
5644
5793
|
},
|
|
5645
5794
|
children: [
|
|
5646
|
-
/* @__PURE__ */
|
|
5795
|
+
/* @__PURE__ */ jsx35(
|
|
5647
5796
|
BaseImage_default,
|
|
5648
5797
|
{
|
|
5649
5798
|
src: answerMap[materialKey] === materialSubKey ? "/icons/item-element.webp" : "/icons/not-selected-item-element.webp",
|
|
@@ -5653,16 +5802,16 @@ var MCSAActivityMaterialContent = ({
|
|
|
5653
5802
|
}
|
|
5654
5803
|
}
|
|
5655
5804
|
),
|
|
5656
|
-
/* @__PURE__ */
|
|
5805
|
+
/* @__PURE__ */ jsx35("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx35("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
5657
5806
|
materialSubKey
|
|
5658
|
-
).map((inputPart, index3) => /* @__PURE__ */
|
|
5807
|
+
).map((inputPart, index3) => /* @__PURE__ */ jsx35(
|
|
5659
5808
|
"span",
|
|
5660
5809
|
{
|
|
5661
5810
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5662
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5811
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx35("span", { className: "text-2xl", children: /* @__PURE__ */ jsx35(InlineMath7, { math: inputPart.value }) }) : inputPart.value
|
|
5663
5812
|
},
|
|
5664
5813
|
index3
|
|
5665
|
-
)) }) : /* @__PURE__ */
|
|
5814
|
+
)) }) : /* @__PURE__ */ jsx35(
|
|
5666
5815
|
ShowMaterialMediaByContentType_default,
|
|
5667
5816
|
{
|
|
5668
5817
|
contentType: contentMap.type,
|
|
@@ -5678,13 +5827,13 @@ var MCSAActivityMaterialContent = ({
|
|
|
5678
5827
|
}
|
|
5679
5828
|
)
|
|
5680
5829
|
}
|
|
5681
|
-
) : /* @__PURE__ */
|
|
5830
|
+
) : /* @__PURE__ */ jsx35("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
5682
5831
|
answerMap[materialKey]
|
|
5683
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
5832
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx35(
|
|
5684
5833
|
"span",
|
|
5685
5834
|
{
|
|
5686
5835
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5687
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
5836
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx35("span", { className: "text-2xl", children: /* @__PURE__ */ jsx35(InlineMath7, { math: inputPart.value }) }) : inputPart.value
|
|
5688
5837
|
},
|
|
5689
5838
|
index2
|
|
5690
5839
|
)) })
|
|
@@ -5694,7 +5843,7 @@ var MCSAActivityMaterialContent = ({
|
|
|
5694
5843
|
var MCSAActivityMaterialContent_default = MCSAActivityMaterialContent;
|
|
5695
5844
|
|
|
5696
5845
|
// src/components/activities/MCSAActivityContent.tsx
|
|
5697
|
-
import { jsx as
|
|
5846
|
+
import { jsx as jsx36, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
5698
5847
|
var MCSAActivityContent = ({
|
|
5699
5848
|
answer,
|
|
5700
5849
|
data,
|
|
@@ -5714,11 +5863,11 @@ var MCSAActivityContent = ({
|
|
|
5714
5863
|
answerMap[key] = value;
|
|
5715
5864
|
changeAnswer(answer2);
|
|
5716
5865
|
};
|
|
5717
|
-
return /* @__PURE__ */
|
|
5718
|
-
/* @__PURE__ */
|
|
5719
|
-
/* @__PURE__ */
|
|
5720
|
-
/* @__PURE__ */
|
|
5721
|
-
/* @__PURE__ */
|
|
5866
|
+
return /* @__PURE__ */ jsxs25("div", { className: "flex flex-row flex-wrap", children: [
|
|
5867
|
+
/* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ jsx36(ActivityBodyContent_default, { bodyMap: MCSABodyMap, templateType: "MCSA" }) }),
|
|
5868
|
+
/* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx36(DividerLine_default, {}) }),
|
|
5869
|
+
/* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx36(VerticalDividerLine_default, {}) }),
|
|
5870
|
+
/* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ jsx36(
|
|
5722
5871
|
MCSAActivityMaterialContent_default,
|
|
5723
5872
|
{
|
|
5724
5873
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -5735,7 +5884,7 @@ var MCSAActivityContent = ({
|
|
|
5735
5884
|
var MCSAActivityContent_default = MCSAActivityContent;
|
|
5736
5885
|
|
|
5737
5886
|
// src/components/activities/material-content/OpenEndedActivityMaterialContent.tsx
|
|
5738
|
-
import { Fragment as Fragment6, jsx as
|
|
5887
|
+
import { Fragment as Fragment6, jsx as jsx37, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
5739
5888
|
var OpenEndedActivityMaterialContent = ({
|
|
5740
5889
|
answer,
|
|
5741
5890
|
contentMap,
|
|
@@ -5758,7 +5907,7 @@ var OpenEndedActivityMaterialContent = ({
|
|
|
5758
5907
|
};
|
|
5759
5908
|
const RenderTextContent = (answerMap2) => {
|
|
5760
5909
|
const answerMapAnswer = answerMap2["ANSWER"];
|
|
5761
|
-
return /* @__PURE__ */
|
|
5910
|
+
return /* @__PURE__ */ jsx37(
|
|
5762
5911
|
InputGroup_default,
|
|
5763
5912
|
{
|
|
5764
5913
|
type: "textarea",
|
|
@@ -5771,16 +5920,16 @@ var OpenEndedActivityMaterialContent = ({
|
|
|
5771
5920
|
);
|
|
5772
5921
|
};
|
|
5773
5922
|
const answerMap = retrieveAnswerMap();
|
|
5774
|
-
return /* @__PURE__ */
|
|
5775
|
-
/* @__PURE__ */
|
|
5776
|
-
/* @__PURE__ */
|
|
5923
|
+
return /* @__PURE__ */ jsx37(Fragment6, { children: /* @__PURE__ */ jsxs26("div", { className: "", children: [
|
|
5924
|
+
/* @__PURE__ */ jsx37("div", { className: "hidden md:block", children: /* @__PURE__ */ jsx37("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_open_ended_text") }) }),
|
|
5925
|
+
/* @__PURE__ */ jsx37("div", { className: "hidden md:contents", children: /* @__PURE__ */ jsx37(DividerLine_default, {}) }),
|
|
5777
5926
|
contentMap.type === "TEXT" ? RenderTextContent(answerMap) : null
|
|
5778
5927
|
] }) });
|
|
5779
5928
|
};
|
|
5780
5929
|
var OpenEndedActivityMaterialContent_default = OpenEndedActivityMaterialContent;
|
|
5781
5930
|
|
|
5782
5931
|
// src/components/activities/OpenEndedActivityContent.tsx
|
|
5783
|
-
import { Fragment as Fragment7, jsx as
|
|
5932
|
+
import { Fragment as Fragment7, jsx as jsx38, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
5784
5933
|
var OpenEndedActivityContent = ({
|
|
5785
5934
|
answer,
|
|
5786
5935
|
data,
|
|
@@ -5798,12 +5947,12 @@ var OpenEndedActivityContent = ({
|
|
|
5798
5947
|
answerMap["ANSWER"] = value;
|
|
5799
5948
|
changeAnswer(answer2);
|
|
5800
5949
|
};
|
|
5801
|
-
return /* @__PURE__ */
|
|
5802
|
-
/* @__PURE__ */
|
|
5950
|
+
return /* @__PURE__ */ jsxs27("div", { className: "flex flex-row flex-wrap", children: [
|
|
5951
|
+
/* @__PURE__ */ jsx38(
|
|
5803
5952
|
"div",
|
|
5804
5953
|
{
|
|
5805
5954
|
className: `${showMaterialContent ? isFullScreen ? "w-full" : "w-full md:w-[40%]" : "w-full"}`,
|
|
5806
|
-
children: /* @__PURE__ */
|
|
5955
|
+
children: /* @__PURE__ */ jsx38(
|
|
5807
5956
|
ActivityBodyContent_default,
|
|
5808
5957
|
{
|
|
5809
5958
|
bodyMap: openEndedBodyMap,
|
|
@@ -5812,16 +5961,16 @@ var OpenEndedActivityContent = ({
|
|
|
5812
5961
|
)
|
|
5813
5962
|
}
|
|
5814
5963
|
),
|
|
5815
|
-
showMaterialContent ? /* @__PURE__ */
|
|
5816
|
-
/* @__PURE__ */
|
|
5964
|
+
showMaterialContent ? /* @__PURE__ */ jsxs27(Fragment7, { children: [
|
|
5965
|
+
/* @__PURE__ */ jsx38(
|
|
5817
5966
|
"div",
|
|
5818
5967
|
{
|
|
5819
5968
|
className: `${isFullScreen ? "contents" : "contents md:hidden"}`,
|
|
5820
|
-
children: /* @__PURE__ */
|
|
5969
|
+
children: /* @__PURE__ */ jsx38(DividerLine_default, {})
|
|
5821
5970
|
}
|
|
5822
5971
|
),
|
|
5823
|
-
/* @__PURE__ */
|
|
5824
|
-
/* @__PURE__ */
|
|
5972
|
+
/* @__PURE__ */ jsx38("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx38(VerticalDividerLine_default, {}) }),
|
|
5973
|
+
/* @__PURE__ */ jsx38("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ jsx38(
|
|
5825
5974
|
OpenEndedActivityMaterialContent_default,
|
|
5826
5975
|
{
|
|
5827
5976
|
answer,
|
|
@@ -5835,14 +5984,14 @@ var OpenEndedActivityContent = ({
|
|
|
5835
5984
|
var OpenEndedActivityContent_default = OpenEndedActivityContent;
|
|
5836
5985
|
|
|
5837
5986
|
// src/components/activities/material-content/OrderingActivityMaterialContent.tsx
|
|
5838
|
-
import { useEffect as
|
|
5987
|
+
import { useEffect as useEffect12, useState as useState21 } from "react";
|
|
5839
5988
|
import { useDrop as useDrop6 } from "react-dnd";
|
|
5840
5989
|
import { InlineMath as InlineMath8 } from "react-katex";
|
|
5841
5990
|
|
|
5842
5991
|
// src/components/dnds/DraggableDroppableItem.tsx
|
|
5843
5992
|
import { useRef as useRef6 } from "react";
|
|
5844
5993
|
import { useDrag as useDrag2, useDrop as useDrop5 } from "react-dnd";
|
|
5845
|
-
import { jsx as
|
|
5994
|
+
import { jsx as jsx39 } from "react/jsx-runtime";
|
|
5846
5995
|
var DraggableDroppableItem = ({
|
|
5847
5996
|
key,
|
|
5848
5997
|
item,
|
|
@@ -5880,12 +6029,12 @@ var DraggableDroppableItem = ({
|
|
|
5880
6029
|
});
|
|
5881
6030
|
const opacity = isDragging ? 0.4 : 1;
|
|
5882
6031
|
drag(drop(ref));
|
|
5883
|
-
return /* @__PURE__ */
|
|
6032
|
+
return /* @__PURE__ */ jsx39(
|
|
5884
6033
|
"div",
|
|
5885
6034
|
{
|
|
5886
6035
|
className: `${isDragging ? "w-[0px] opacity-0" : "w-full opacity-100"} transition-all duration-500`,
|
|
5887
6036
|
ref: dropRef,
|
|
5888
|
-
children: /* @__PURE__ */
|
|
6037
|
+
children: /* @__PURE__ */ jsx39("div", { ref, className: "w-full", style: { opacity }, children: component })
|
|
5889
6038
|
},
|
|
5890
6039
|
key
|
|
5891
6040
|
);
|
|
@@ -5893,7 +6042,7 @@ var DraggableDroppableItem = ({
|
|
|
5893
6042
|
var DraggableDroppableItem_default = DraggableDroppableItem;
|
|
5894
6043
|
|
|
5895
6044
|
// src/components/activities/material-content/OrderingActivityMaterialContent.tsx
|
|
5896
|
-
import { jsx as
|
|
6045
|
+
import { jsx as jsx40, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
5897
6046
|
var OrderingActivityMaterialContent = ({
|
|
5898
6047
|
uniqueValue,
|
|
5899
6048
|
answer,
|
|
@@ -5904,10 +6053,10 @@ var OrderingActivityMaterialContent = ({
|
|
|
5904
6053
|
isPreview,
|
|
5905
6054
|
showCorrectAnswer
|
|
5906
6055
|
}) => {
|
|
5907
|
-
const [selectedTargetKey, setSelectedTargetKey] =
|
|
5908
|
-
const [selectedKey, setSelectedKey] =
|
|
6056
|
+
const [selectedTargetKey, setSelectedTargetKey] = useState21(null);
|
|
6057
|
+
const [selectedKey, setSelectedKey] = useState21(null);
|
|
5909
6058
|
const { screenSize } = useScreenSize_default();
|
|
5910
|
-
const [view, setView] =
|
|
6059
|
+
const [view, setView] = useState21("PC");
|
|
5911
6060
|
const [{ isOver, canDrop }, drop] = useDrop6({
|
|
5912
6061
|
accept: "ORDERING",
|
|
5913
6062
|
drop: () => {
|
|
@@ -5917,7 +6066,7 @@ var OrderingActivityMaterialContent = ({
|
|
|
5917
6066
|
canDrop: monitor.canDrop()
|
|
5918
6067
|
})
|
|
5919
6068
|
});
|
|
5920
|
-
|
|
6069
|
+
useEffect12(() => {
|
|
5921
6070
|
if (!screenSize) return;
|
|
5922
6071
|
if (screenSize.width <= 768) {
|
|
5923
6072
|
setView("TABLET");
|
|
@@ -5925,7 +6074,7 @@ var OrderingActivityMaterialContent = ({
|
|
|
5925
6074
|
setView("PC");
|
|
5926
6075
|
}
|
|
5927
6076
|
}, [screenSize]);
|
|
5928
|
-
|
|
6077
|
+
useEffect12(() => {
|
|
5929
6078
|
if (!showCorrectAnswer) return;
|
|
5930
6079
|
const answerMap2 = answer.data.find(
|
|
5931
6080
|
(answerData) => answerData.type === "ORDERING"
|
|
@@ -5970,12 +6119,12 @@ var OrderingActivityMaterialContent = ({
|
|
|
5970
6119
|
return 0;
|
|
5971
6120
|
};
|
|
5972
6121
|
const answerMap = retrieveAnswerMap();
|
|
5973
|
-
return /* @__PURE__ */
|
|
6122
|
+
return /* @__PURE__ */ jsx40("div", { className: "flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
|
|
5974
6123
|
const learnerAnswerState = checkAnswerState(
|
|
5975
6124
|
answerMap[materialKey] + "",
|
|
5976
6125
|
index + ""
|
|
5977
6126
|
);
|
|
5978
|
-
return /* @__PURE__ */
|
|
6127
|
+
return /* @__PURE__ */ jsx40("div", { className: "w-full lg:w-1/2", children: /* @__PURE__ */ jsxs28(
|
|
5979
6128
|
"div",
|
|
5980
6129
|
{
|
|
5981
6130
|
className: `flex flex-row items-center my-4 mx-2`,
|
|
@@ -5983,26 +6132,26 @@ var OrderingActivityMaterialContent = ({
|
|
|
5983
6132
|
marginTop: view === "PC" ? calculateMarginTop(parseFloat(materialKey)) : 0
|
|
5984
6133
|
},
|
|
5985
6134
|
children: [
|
|
5986
|
-
/* @__PURE__ */
|
|
6135
|
+
/* @__PURE__ */ jsx40("div", { className: "mr-3", children: /* @__PURE__ */ jsx40(
|
|
5987
6136
|
"div",
|
|
5988
6137
|
{
|
|
5989
6138
|
className: `min-h-catchup-activity-outer-box-item w-catchup-activity-box-item flex flex-col items-center justify-center cursor-pointer transition-all duration-300`,
|
|
5990
|
-
children: /* @__PURE__ */
|
|
6139
|
+
children: /* @__PURE__ */ jsx40(
|
|
5991
6140
|
"div",
|
|
5992
6141
|
{
|
|
5993
6142
|
className: `${selectedKey === materialKey ? "border-2 border-catchup-light-gray" : "border-2 border-catchup-blue"} flex flex-col items-center justify-center transition-all duration-300 rounded-catchup-full w-[50px] h-[50px]`,
|
|
5994
|
-
children: /* @__PURE__ */
|
|
6143
|
+
children: /* @__PURE__ */ jsx40("p", { className: "", children: parseFloat(materialKey) + 1 })
|
|
5995
6144
|
}
|
|
5996
6145
|
)
|
|
5997
6146
|
}
|
|
5998
6147
|
) }),
|
|
5999
|
-
/* @__PURE__ */
|
|
6148
|
+
/* @__PURE__ */ jsx40(
|
|
6000
6149
|
DraggableDroppableItem_default,
|
|
6001
6150
|
{
|
|
6002
6151
|
item: { index: materialKey },
|
|
6003
6152
|
type: "ORDERING",
|
|
6004
6153
|
dropRef: drop,
|
|
6005
|
-
component: /* @__PURE__ */
|
|
6154
|
+
component: /* @__PURE__ */ jsx40(
|
|
6006
6155
|
"div",
|
|
6007
6156
|
{
|
|
6008
6157
|
className: `${canDrop ? selectedKey !== materialKey ? selectedTargetKey === materialKey ? "bg-catchup-light-blue rounded-catchup-xlarge" : "bg-catchup-light-blue rounded-catchup-xlarge opacity-40" : "" : ""} flex-1 min-h-catchup-activity-outer-box-item flex flex-col items-center justify-center border-2 rounded-catchup-xlarge cursor-pointer p-3 ${learnerAnswerState === "CORRECT" ? "border-catchup-green" : learnerAnswerState === "INCORRECT" ? "border-catchup-red" : "border-catchup-blue"}`,
|
|
@@ -6011,16 +6160,16 @@ var OrderingActivityMaterialContent = ({
|
|
|
6011
6160
|
setSelectedKey(materialKey);
|
|
6012
6161
|
}
|
|
6013
6162
|
},
|
|
6014
|
-
children: contentMap.type === "TEXT" ? /* @__PURE__ */
|
|
6163
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx40("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
6015
6164
|
materialMap[answerMap[materialKey]]
|
|
6016
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
6165
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx40(
|
|
6017
6166
|
"span",
|
|
6018
6167
|
{
|
|
6019
6168
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6020
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
6169
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx40("span", { className: "text-2xl", children: /* @__PURE__ */ jsx40(InlineMath8, { math: inputPart.value }) }) : inputPart.value
|
|
6021
6170
|
},
|
|
6022
6171
|
index2
|
|
6023
|
-
)) }) : /* @__PURE__ */
|
|
6172
|
+
)) }) : /* @__PURE__ */ jsx40(
|
|
6024
6173
|
ShowMaterialMediaByContentType_default,
|
|
6025
6174
|
{
|
|
6026
6175
|
contentType: contentMap.type,
|
|
@@ -6052,7 +6201,7 @@ var OrderingActivityMaterialContent = ({
|
|
|
6052
6201
|
var OrderingActivityMaterialContent_default = OrderingActivityMaterialContent;
|
|
6053
6202
|
|
|
6054
6203
|
// src/components/activities/OrderingActivityContent.tsx
|
|
6055
|
-
import { Fragment as Fragment8, jsx as
|
|
6204
|
+
import { Fragment as Fragment8, jsx as jsx41, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
6056
6205
|
var OrderingActivityContent = ({
|
|
6057
6206
|
answer,
|
|
6058
6207
|
data,
|
|
@@ -6075,16 +6224,16 @@ var OrderingActivityContent = ({
|
|
|
6075
6224
|
answerMap[secondaryKey] = prevValue;
|
|
6076
6225
|
changeAnswer(answer2);
|
|
6077
6226
|
};
|
|
6078
|
-
return /* @__PURE__ */
|
|
6079
|
-
/* @__PURE__ */
|
|
6227
|
+
return /* @__PURE__ */ jsxs29(Fragment8, { children: [
|
|
6228
|
+
/* @__PURE__ */ jsx41(
|
|
6080
6229
|
ActivityBodyContent_default,
|
|
6081
6230
|
{
|
|
6082
6231
|
bodyMap: orderingBodyMap,
|
|
6083
6232
|
templateType: "ORDERING"
|
|
6084
6233
|
}
|
|
6085
6234
|
),
|
|
6086
|
-
/* @__PURE__ */
|
|
6087
|
-
/* @__PURE__ */
|
|
6235
|
+
/* @__PURE__ */ jsx41(DividerLine_default, {}),
|
|
6236
|
+
/* @__PURE__ */ jsx41(
|
|
6088
6237
|
OrderingActivityMaterialContent_default,
|
|
6089
6238
|
{
|
|
6090
6239
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -6102,9 +6251,9 @@ var OrderingActivityContent = ({
|
|
|
6102
6251
|
var OrderingActivityContent_default = OrderingActivityContent;
|
|
6103
6252
|
|
|
6104
6253
|
// src/components/activities/material-content/TrueFalseActivityMaterialContent.tsx
|
|
6105
|
-
import { useEffect as
|
|
6254
|
+
import { useEffect as useEffect13, useState as useState22 } from "react";
|
|
6106
6255
|
import { InlineMath as InlineMath9 } from "react-katex";
|
|
6107
|
-
import { Fragment as Fragment9, jsx as
|
|
6256
|
+
import { Fragment as Fragment9, jsx as jsx42, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
6108
6257
|
var TrueFalseActivityMaterialContent = ({
|
|
6109
6258
|
uniqueValue,
|
|
6110
6259
|
answer,
|
|
@@ -6116,8 +6265,8 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6116
6265
|
showCorrectAnswer
|
|
6117
6266
|
}) => {
|
|
6118
6267
|
const { screenSize } = useScreenSize_default();
|
|
6119
|
-
const [shuffleOptionList, setShuffleOptionList] =
|
|
6120
|
-
|
|
6268
|
+
const [shuffleOptionList, setShuffleOptionList] = useState22([]);
|
|
6269
|
+
useEffect13(() => {
|
|
6121
6270
|
const optionList = [];
|
|
6122
6271
|
optionList.push(...materialMap.trueList);
|
|
6123
6272
|
optionList.push(...materialMap.falseList);
|
|
@@ -6127,7 +6276,7 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6127
6276
|
setShuffleOptionList(shuffleArray(optionList));
|
|
6128
6277
|
}
|
|
6129
6278
|
}, []);
|
|
6130
|
-
|
|
6279
|
+
useEffect13(() => {
|
|
6131
6280
|
if (!showCorrectAnswer) return;
|
|
6132
6281
|
answer.data.find(
|
|
6133
6282
|
(answerData) => answerData.type === "TRUE_FALSE"
|
|
@@ -6157,14 +6306,14 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6157
6306
|
return "INCORRECT";
|
|
6158
6307
|
};
|
|
6159
6308
|
const answerMap = retrieveAnswerMap();
|
|
6160
|
-
return /* @__PURE__ */
|
|
6161
|
-
/* @__PURE__ */
|
|
6162
|
-
/* @__PURE__ */
|
|
6163
|
-
/* @__PURE__ */
|
|
6164
|
-
/* @__PURE__ */
|
|
6165
|
-
/* @__PURE__ */
|
|
6309
|
+
return /* @__PURE__ */ jsxs30("div", { className: "", children: [
|
|
6310
|
+
/* @__PURE__ */ jsx42("div", { className: "hidden md:block", children: /* @__PURE__ */ jsx42("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_true_false_text") }) }),
|
|
6311
|
+
/* @__PURE__ */ jsx42("div", { className: "hidden md:contents", children: /* @__PURE__ */ jsx42(DividerLine_default, {}) }),
|
|
6312
|
+
/* @__PURE__ */ jsxs30("div", { className: "flex flex-row justify-end items-center gap-x-2", children: [
|
|
6313
|
+
/* @__PURE__ */ jsx42("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx42("p", { className: "font-bold text-lg", children: i18n_default.t("true") }) }),
|
|
6314
|
+
/* @__PURE__ */ jsx42("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx42("p", { className: "font-bold text-lg", children: i18n_default.t("false") }) })
|
|
6166
6315
|
] }),
|
|
6167
|
-
checkCanAnswerQuestion() ? /* @__PURE__ */
|
|
6316
|
+
checkCanAnswerQuestion() ? /* @__PURE__ */ jsx42("div", { className: `flex flex-row w-full justify-center flex-wrap`, children: shuffleOptionList.map((shuffleOption, index) => {
|
|
6168
6317
|
const correctAnswer = materialMap.trueList.find(
|
|
6169
6318
|
(trueItem) => trueItem === shuffleOption
|
|
6170
6319
|
) !== void 0 ? "TRUE" : "FALSE";
|
|
@@ -6175,21 +6324,21 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6175
6324
|
correctAnswer,
|
|
6176
6325
|
learnerAnswer
|
|
6177
6326
|
);
|
|
6178
|
-
return /* @__PURE__ */
|
|
6327
|
+
return /* @__PURE__ */ jsxs30(
|
|
6179
6328
|
"div",
|
|
6180
6329
|
{
|
|
6181
6330
|
className: `w-full flex flex-row items-center justify-center cursor-pointer my-2 ${learnerAnswerState === "CORRECT" ? "border-2 border-catchup-green rounded-catchup-xlarge p-2" : learnerAnswerState === "INCORRECT" ? "border-2 border-catchup-red rounded-catchup-xlarge p-2" : ""}`,
|
|
6182
6331
|
children: [
|
|
6183
|
-
/* @__PURE__ */
|
|
6332
|
+
/* @__PURE__ */ jsx42("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx42("p", { className: "text-xl p-2 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
6184
6333
|
shuffleOption
|
|
6185
|
-
).map((inputPart, index2) => /* @__PURE__ */
|
|
6334
|
+
).map((inputPart, index2) => /* @__PURE__ */ jsx42(
|
|
6186
6335
|
"span",
|
|
6187
6336
|
{
|
|
6188
6337
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6189
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
6338
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx42("span", { className: "text-2xl", children: /* @__PURE__ */ jsx42(InlineMath9, { math: inputPart.value }) }) : inputPart.value
|
|
6190
6339
|
},
|
|
6191
6340
|
index2
|
|
6192
|
-
)) }) : /* @__PURE__ */
|
|
6341
|
+
)) }) : /* @__PURE__ */ jsx42(
|
|
6193
6342
|
ShowMaterialMediaByContentType_default,
|
|
6194
6343
|
{
|
|
6195
6344
|
contentType: contentMap.type,
|
|
@@ -6198,8 +6347,8 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6198
6347
|
},
|
|
6199
6348
|
`${uniqueValue}-${index}`
|
|
6200
6349
|
) }),
|
|
6201
|
-
/* @__PURE__ */
|
|
6202
|
-
/* @__PURE__ */
|
|
6350
|
+
/* @__PURE__ */ jsxs30("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6351
|
+
/* @__PURE__ */ jsx42("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx42("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ jsx42(
|
|
6203
6352
|
BaseImage_default,
|
|
6204
6353
|
{
|
|
6205
6354
|
src: answerMap.trueList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
|
|
@@ -6210,7 +6359,7 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6210
6359
|
}
|
|
6211
6360
|
}
|
|
6212
6361
|
) }) }),
|
|
6213
|
-
/* @__PURE__ */
|
|
6362
|
+
/* @__PURE__ */ jsx42("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx42("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ jsx42(
|
|
6214
6363
|
BaseImage_default,
|
|
6215
6364
|
{
|
|
6216
6365
|
src: answerMap.falseList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
|
|
@@ -6226,14 +6375,14 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6226
6375
|
},
|
|
6227
6376
|
index
|
|
6228
6377
|
);
|
|
6229
|
-
}) }) : /* @__PURE__ */
|
|
6230
|
-
answerMap.trueList.map((item) => /* @__PURE__ */
|
|
6231
|
-
/* @__PURE__ */
|
|
6232
|
-
/* @__PURE__ */
|
|
6378
|
+
}) }) : /* @__PURE__ */ jsxs30(Fragment9, { children: [
|
|
6379
|
+
answerMap.trueList.map((item) => /* @__PURE__ */ jsxs30("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6380
|
+
/* @__PURE__ */ jsx42("div", { className: "flex-1", children: /* @__PURE__ */ jsx42("p", { children: item }) }),
|
|
6381
|
+
/* @__PURE__ */ jsx42("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx42("p", { className: "underline", children: i18n_default.t("true") }) })
|
|
6233
6382
|
] })),
|
|
6234
|
-
answerMap.falseList.map((item) => /* @__PURE__ */
|
|
6235
|
-
/* @__PURE__ */
|
|
6236
|
-
/* @__PURE__ */
|
|
6383
|
+
answerMap.falseList.map((item) => /* @__PURE__ */ jsxs30("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6384
|
+
/* @__PURE__ */ jsx42("div", { className: "flex-1", children: /* @__PURE__ */ jsx42("p", { children: item }) }),
|
|
6385
|
+
/* @__PURE__ */ jsx42("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx42("p", { className: "underline", children: i18n_default.t("false") }) })
|
|
6237
6386
|
] }))
|
|
6238
6387
|
] })
|
|
6239
6388
|
] });
|
|
@@ -6241,7 +6390,7 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6241
6390
|
var TrueFalseActivityMaterialContent_default = TrueFalseActivityMaterialContent;
|
|
6242
6391
|
|
|
6243
6392
|
// src/components/activities/TrueFalseActivityContent.tsx
|
|
6244
|
-
import { jsx as
|
|
6393
|
+
import { jsx as jsx43, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
6245
6394
|
var TrueFalseActivityContent = ({
|
|
6246
6395
|
answer,
|
|
6247
6396
|
data,
|
|
@@ -6291,17 +6440,17 @@ var TrueFalseActivityContent = ({
|
|
|
6291
6440
|
}
|
|
6292
6441
|
changeAnswer(answer2);
|
|
6293
6442
|
};
|
|
6294
|
-
return /* @__PURE__ */
|
|
6295
|
-
/* @__PURE__ */
|
|
6443
|
+
return /* @__PURE__ */ jsxs31("div", { className: "flex flex-row flex-wrap", children: [
|
|
6444
|
+
/* @__PURE__ */ jsx43("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[40%]"}`, children: /* @__PURE__ */ jsx43(
|
|
6296
6445
|
ActivityBodyContent_default,
|
|
6297
6446
|
{
|
|
6298
6447
|
bodyMap: trueFalseBodyMap,
|
|
6299
6448
|
templateType: "GROUPING"
|
|
6300
6449
|
}
|
|
6301
6450
|
) }),
|
|
6302
|
-
/* @__PURE__ */
|
|
6303
|
-
/* @__PURE__ */
|
|
6304
|
-
/* @__PURE__ */
|
|
6451
|
+
/* @__PURE__ */ jsx43("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx43(DividerLine_default, {}) }),
|
|
6452
|
+
/* @__PURE__ */ jsx43("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx43(VerticalDividerLine_default, {}) }),
|
|
6453
|
+
/* @__PURE__ */ jsx43("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ jsx43(
|
|
6305
6454
|
TrueFalseActivityMaterialContent_default,
|
|
6306
6455
|
{
|
|
6307
6456
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -6320,7 +6469,7 @@ var TrueFalseActivityContent_default = TrueFalseActivityContent;
|
|
|
6320
6469
|
|
|
6321
6470
|
// src/components/activities/solution-content/ActivitySolutionContent.tsx
|
|
6322
6471
|
import { InlineMath as InlineMath10 } from "react-katex";
|
|
6323
|
-
import { jsx as
|
|
6472
|
+
import { jsx as jsx44, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
6324
6473
|
var ActivitySolutionContent = ({
|
|
6325
6474
|
activityTemplateType,
|
|
6326
6475
|
data
|
|
@@ -6350,8 +6499,8 @@ var ActivitySolutionContent = ({
|
|
|
6350
6499
|
return null;
|
|
6351
6500
|
}
|
|
6352
6501
|
if (!solutionMap || Object.keys(solutionMap).length === 0) return null;
|
|
6353
|
-
return /* @__PURE__ */
|
|
6354
|
-
/* @__PURE__ */
|
|
6502
|
+
return /* @__PURE__ */ jsx44("div", { className: "mx-2", children: /* @__PURE__ */ jsxs32("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
|
|
6503
|
+
/* @__PURE__ */ jsx44("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("solution") }),
|
|
6355
6504
|
Object.keys(solutionMap).map((key) => {
|
|
6356
6505
|
let currentItem;
|
|
6357
6506
|
try {
|
|
@@ -6361,12 +6510,12 @@ var ActivitySolutionContent = ({
|
|
|
6361
6510
|
return null;
|
|
6362
6511
|
}
|
|
6363
6512
|
const { value } = currentItem;
|
|
6364
|
-
return /* @__PURE__ */
|
|
6365
|
-
(inputPart, partIndex) => /* @__PURE__ */
|
|
6513
|
+
return /* @__PURE__ */ jsx44("div", { className: "my-3 text-xl", children: constructInputWithSpecialExpressionList(value).map(
|
|
6514
|
+
(inputPart, partIndex) => /* @__PURE__ */ jsx44(
|
|
6366
6515
|
"span",
|
|
6367
6516
|
{
|
|
6368
6517
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6369
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
6518
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx44("span", { className: "text-2xl", children: /* @__PURE__ */ jsx44(InlineMath10, { math: inputPart.value }) }) : inputPart.value
|
|
6370
6519
|
},
|
|
6371
6520
|
`${key}_part_${partIndex}`
|
|
6372
6521
|
)
|
|
@@ -6378,7 +6527,7 @@ var ActivitySolutionContent_default = ActivitySolutionContent;
|
|
|
6378
6527
|
|
|
6379
6528
|
// src/components/activities/evaluation-rubric-content/ActivityEvaluationRubricContent.tsx
|
|
6380
6529
|
import { InlineMath as InlineMath11 } from "react-katex";
|
|
6381
|
-
import { jsx as
|
|
6530
|
+
import { jsx as jsx45, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
6382
6531
|
var ActivityEvaluationRubricContent = ({
|
|
6383
6532
|
activityTemplateType,
|
|
6384
6533
|
data
|
|
@@ -6407,21 +6556,21 @@ var ActivityEvaluationRubricContent = ({
|
|
|
6407
6556
|
}
|
|
6408
6557
|
if (!evaluationRubricMap || Object.keys(evaluationRubricMap).length === 0)
|
|
6409
6558
|
return null;
|
|
6410
|
-
return /* @__PURE__ */
|
|
6411
|
-
/* @__PURE__ */
|
|
6559
|
+
return /* @__PURE__ */ jsx45("div", { className: "mx-2", children: /* @__PURE__ */ jsxs33("div", { className: "p-4 border-catchup-gray-400 border-2 rounded-catchup-xlarge", children: [
|
|
6560
|
+
/* @__PURE__ */ jsx45("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
|
|
6412
6561
|
Object.keys(evaluationRubricMap).map((key, index) => {
|
|
6413
6562
|
const currentItem = JSON.parse(evaluationRubricMap[key]);
|
|
6414
6563
|
const { value } = currentItem;
|
|
6415
|
-
return /* @__PURE__ */
|
|
6564
|
+
return /* @__PURE__ */ jsx45("p", { className: "my-3", children: /* @__PURE__ */ jsx45(
|
|
6416
6565
|
"span",
|
|
6417
6566
|
{
|
|
6418
6567
|
className: "text-xl whitespace-pre-wrap",
|
|
6419
6568
|
children: constructInputWithSpecialExpressionList(value).map(
|
|
6420
|
-
(inputPart, index2) => /* @__PURE__ */
|
|
6569
|
+
(inputPart, index2) => /* @__PURE__ */ jsx45(
|
|
6421
6570
|
"span",
|
|
6422
6571
|
{
|
|
6423
6572
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6424
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
6573
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx45("span", { className: "text-2xl", children: /* @__PURE__ */ jsx45(InlineMath11, { math: inputPart.value }) }) : inputPart.value
|
|
6425
6574
|
},
|
|
6426
6575
|
index2
|
|
6427
6576
|
)
|
|
@@ -6435,31 +6584,31 @@ var ActivityEvaluationRubricContent = ({
|
|
|
6435
6584
|
var ActivityEvaluationRubricContent_default = ActivityEvaluationRubricContent;
|
|
6436
6585
|
|
|
6437
6586
|
// src/components/activities/ActivityPreviewByData.tsx
|
|
6438
|
-
import { useEffect as
|
|
6587
|
+
import { useEffect as useEffect14, useState as useState23 } from "react";
|
|
6439
6588
|
|
|
6440
6589
|
// src/components/boxes/SelectionBox.tsx
|
|
6441
|
-
import { jsx as
|
|
6590
|
+
import { jsx as jsx46, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
6442
6591
|
var SelectionBox = ({
|
|
6443
6592
|
optionList,
|
|
6444
6593
|
selectedId,
|
|
6445
6594
|
handleSelectOnClick
|
|
6446
6595
|
}) => {
|
|
6447
|
-
return /* @__PURE__ */
|
|
6596
|
+
return /* @__PURE__ */ jsx46("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx46(
|
|
6448
6597
|
"div",
|
|
6449
6598
|
{
|
|
6450
6599
|
className: `${option.id === selectedId ? "border-catchup-blue-400" : "border-catchup-gray-100 hover:border-catchup-blue-500"} border-2 rounded-catchup-xlarge py-3 px-8 cursor-pointer duration-300 transition-all`,
|
|
6451
6600
|
onClick: () => {
|
|
6452
6601
|
handleSelectOnClick(option.id);
|
|
6453
6602
|
},
|
|
6454
|
-
children: /* @__PURE__ */
|
|
6603
|
+
children: /* @__PURE__ */ jsxs34(
|
|
6455
6604
|
"div",
|
|
6456
6605
|
{
|
|
6457
6606
|
className: `flex flex-row items-center gap-x-1 ${option.id === selectedId ? "opacity-100" : "opacity-50"}`,
|
|
6458
6607
|
children: [
|
|
6459
6608
|
option.icon,
|
|
6460
|
-
/* @__PURE__ */
|
|
6461
|
-
/* @__PURE__ */
|
|
6462
|
-
option.subText ? /* @__PURE__ */
|
|
6609
|
+
/* @__PURE__ */ jsxs34("div", { className: "flex-1 flex flex-col items-center", children: [
|
|
6610
|
+
/* @__PURE__ */ jsx46("p", { children: option.text }),
|
|
6611
|
+
option.subText ? /* @__PURE__ */ jsxs34("p", { className: "text-md", children: [
|
|
6463
6612
|
"(",
|
|
6464
6613
|
option.subText,
|
|
6465
6614
|
")"
|
|
@@ -6475,7 +6624,7 @@ var SelectionBox = ({
|
|
|
6475
6624
|
var SelectionBox_default = SelectionBox;
|
|
6476
6625
|
|
|
6477
6626
|
// src/components/activities/ActivityPreviewByData.tsx
|
|
6478
|
-
import { jsx as
|
|
6627
|
+
import { jsx as jsx47, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
6479
6628
|
var ActivityPreviewByData = ({
|
|
6480
6629
|
data,
|
|
6481
6630
|
showType,
|
|
@@ -6487,14 +6636,14 @@ var ActivityPreviewByData = ({
|
|
|
6487
6636
|
showTaxonomy,
|
|
6488
6637
|
isFullScreen
|
|
6489
6638
|
}) => {
|
|
6490
|
-
const [key, setKey] =
|
|
6491
|
-
const [selectedType, setSelectedType] =
|
|
6492
|
-
const [optionList, setOptionList] =
|
|
6493
|
-
|
|
6639
|
+
const [key, setKey] = useState23((/* @__PURE__ */ new Date()).getTime());
|
|
6640
|
+
const [selectedType, setSelectedType] = useState23(null);
|
|
6641
|
+
const [optionList, setOptionList] = useState23([]);
|
|
6642
|
+
useEffect14(() => {
|
|
6494
6643
|
if (!data) return;
|
|
6495
6644
|
setKey((/* @__PURE__ */ new Date()).getTime());
|
|
6496
6645
|
}, [data]);
|
|
6497
|
-
|
|
6646
|
+
useEffect14(() => {
|
|
6498
6647
|
if (!typeOptionList) return;
|
|
6499
6648
|
if (typeOptionList.length === 0) return;
|
|
6500
6649
|
let foundTypeOption;
|
|
@@ -6509,7 +6658,7 @@ var ActivityPreviewByData = ({
|
|
|
6509
6658
|
setSelectedType(typeOptionList[0].id);
|
|
6510
6659
|
}
|
|
6511
6660
|
}, [typeOptionList, lockedType]);
|
|
6512
|
-
|
|
6661
|
+
useEffect14(() => {
|
|
6513
6662
|
const retrieveTaxonomyNameByActivityTypeFromData = (type) => {
|
|
6514
6663
|
let taxonomyMap = {
|
|
6515
6664
|
name: ""
|
|
@@ -6558,10 +6707,10 @@ var ActivityPreviewByData = ({
|
|
|
6558
6707
|
}, [data, lockedType, typeOptionList, showTaxonomy]);
|
|
6559
6708
|
if (!data) return;
|
|
6560
6709
|
const answer = constructAnswerBasedOnData(data);
|
|
6561
|
-
return /* @__PURE__ */
|
|
6562
|
-
showType ? /* @__PURE__ */
|
|
6563
|
-
showDescription ? /* @__PURE__ */
|
|
6564
|
-
/* @__PURE__ */
|
|
6710
|
+
return /* @__PURE__ */ jsxs35("div", { children: [
|
|
6711
|
+
showType ? /* @__PURE__ */ jsxs35("div", { className: "mb-4", children: [
|
|
6712
|
+
showDescription ? /* @__PURE__ */ jsx47("div", { className: "my-2", children: /* @__PURE__ */ jsx47("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
|
|
6713
|
+
/* @__PURE__ */ jsx47(
|
|
6565
6714
|
SelectionBox_default,
|
|
6566
6715
|
{
|
|
6567
6716
|
optionList,
|
|
@@ -6572,7 +6721,7 @@ var ActivityPreviewByData = ({
|
|
|
6572
6721
|
}
|
|
6573
6722
|
)
|
|
6574
6723
|
] }) : null,
|
|
6575
|
-
selectedType ? /* @__PURE__ */
|
|
6724
|
+
selectedType ? /* @__PURE__ */ jsx47("div", { className: "", children: selectedType === "ORDERING" && data["orderingBodyMap"] != null && data["orderingMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6576
6725
|
OrderingActivityContent_default,
|
|
6577
6726
|
{
|
|
6578
6727
|
answer,
|
|
@@ -6586,7 +6735,7 @@ var ActivityPreviewByData = ({
|
|
|
6586
6735
|
showCorrectAnswer: true,
|
|
6587
6736
|
isFullScreen
|
|
6588
6737
|
}
|
|
6589
|
-
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */
|
|
6738
|
+
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6590
6739
|
DropdownActivityContent_default,
|
|
6591
6740
|
{
|
|
6592
6741
|
answer,
|
|
@@ -6600,7 +6749,7 @@ var ActivityPreviewByData = ({
|
|
|
6600
6749
|
showCorrectAnswer: true,
|
|
6601
6750
|
isFullScreen
|
|
6602
6751
|
}
|
|
6603
|
-
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */
|
|
6752
|
+
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6604
6753
|
MCSAActivityContent_default,
|
|
6605
6754
|
{
|
|
6606
6755
|
answer,
|
|
@@ -6614,7 +6763,7 @@ var ActivityPreviewByData = ({
|
|
|
6614
6763
|
showCorrectAnswer: true,
|
|
6615
6764
|
isFullScreen
|
|
6616
6765
|
}
|
|
6617
|
-
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */
|
|
6766
|
+
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6618
6767
|
MCMAActivityContent_default,
|
|
6619
6768
|
{
|
|
6620
6769
|
answer,
|
|
@@ -6628,7 +6777,7 @@ var ActivityPreviewByData = ({
|
|
|
6628
6777
|
showCorrectAnswer: true,
|
|
6629
6778
|
isFullScreen
|
|
6630
6779
|
}
|
|
6631
|
-
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */
|
|
6780
|
+
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6632
6781
|
MatchingActivityContent_default,
|
|
6633
6782
|
{
|
|
6634
6783
|
answer,
|
|
@@ -6642,7 +6791,7 @@ var ActivityPreviewByData = ({
|
|
|
6642
6791
|
showCorrectAnswer: true,
|
|
6643
6792
|
isFullScreen
|
|
6644
6793
|
}
|
|
6645
|
-
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */
|
|
6794
|
+
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6646
6795
|
GroupingActivityContent_default,
|
|
6647
6796
|
{
|
|
6648
6797
|
answer,
|
|
@@ -6656,7 +6805,7 @@ var ActivityPreviewByData = ({
|
|
|
6656
6805
|
showCorrectAnswer: true,
|
|
6657
6806
|
isFullScreen
|
|
6658
6807
|
}
|
|
6659
|
-
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */
|
|
6808
|
+
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6660
6809
|
FillInTheBlanksActivityContent_default,
|
|
6661
6810
|
{
|
|
6662
6811
|
answer,
|
|
@@ -6670,7 +6819,7 @@ var ActivityPreviewByData = ({
|
|
|
6670
6819
|
showCorrectAnswer: true,
|
|
6671
6820
|
isFullScreen
|
|
6672
6821
|
}
|
|
6673
|
-
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */
|
|
6822
|
+
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6674
6823
|
OpenEndedActivityContent_default,
|
|
6675
6824
|
{
|
|
6676
6825
|
answer,
|
|
@@ -6680,7 +6829,7 @@ var ActivityPreviewByData = ({
|
|
|
6680
6829
|
data,
|
|
6681
6830
|
isFullScreen
|
|
6682
6831
|
}
|
|
6683
|
-
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */
|
|
6832
|
+
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ jsx47(
|
|
6684
6833
|
TrueFalseActivityContent_default,
|
|
6685
6834
|
{
|
|
6686
6835
|
answer,
|
|
@@ -6695,14 +6844,14 @@ var ActivityPreviewByData = ({
|
|
|
6695
6844
|
isFullScreen
|
|
6696
6845
|
}
|
|
6697
6846
|
) : null }, selectedType) : null,
|
|
6698
|
-
selectedType && showSolution ? /* @__PURE__ */
|
|
6847
|
+
selectedType && showSolution ? /* @__PURE__ */ jsx47("div", { className: "my-4", children: /* @__PURE__ */ jsx47(
|
|
6699
6848
|
ActivitySolutionContent_default,
|
|
6700
6849
|
{
|
|
6701
6850
|
activityTemplateType: selectedType,
|
|
6702
6851
|
data
|
|
6703
6852
|
}
|
|
6704
6853
|
) }) : null,
|
|
6705
|
-
selectedType && showEvaluationRubric ? /* @__PURE__ */
|
|
6854
|
+
selectedType && showEvaluationRubric ? /* @__PURE__ */ jsx47("div", { className: "my-4", children: /* @__PURE__ */ jsx47(
|
|
6706
6855
|
ActivityEvaluationRubricContent_default,
|
|
6707
6856
|
{
|
|
6708
6857
|
activityTemplateType: selectedType,
|
|
@@ -6714,8 +6863,8 @@ var ActivityPreviewByData = ({
|
|
|
6714
6863
|
var ActivityPreviewByData_default = ActivityPreviewByData;
|
|
6715
6864
|
|
|
6716
6865
|
// src/components/activities/ActivityPreviewByAnswerData.tsx
|
|
6717
|
-
import { useEffect as
|
|
6718
|
-
import { jsx as
|
|
6866
|
+
import { useEffect as useEffect15, useState as useState24 } from "react";
|
|
6867
|
+
import { jsx as jsx48, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
6719
6868
|
var ActivityPreviewByAnswerData = ({
|
|
6720
6869
|
data,
|
|
6721
6870
|
showType = true,
|
|
@@ -6729,11 +6878,11 @@ var ActivityPreviewByAnswerData = ({
|
|
|
6729
6878
|
showCorrectAnswer = false
|
|
6730
6879
|
}) => {
|
|
6731
6880
|
var _a;
|
|
6732
|
-
const [key, setKey] =
|
|
6733
|
-
const [selectedType, setSelectedType] =
|
|
6734
|
-
const [optionList, setOptionList] =
|
|
6735
|
-
const [answer, setAnswer] =
|
|
6736
|
-
|
|
6881
|
+
const [key, setKey] = useState24((/* @__PURE__ */ new Date()).getTime());
|
|
6882
|
+
const [selectedType, setSelectedType] = useState24(null);
|
|
6883
|
+
const [optionList, setOptionList] = useState24([]);
|
|
6884
|
+
const [answer, setAnswer] = useState24({ data: [] });
|
|
6885
|
+
useEffect15(() => {
|
|
6737
6886
|
if (!data) return;
|
|
6738
6887
|
setKey((/* @__PURE__ */ new Date()).getTime());
|
|
6739
6888
|
}, [data]);
|
|
@@ -6770,7 +6919,7 @@ var ActivityPreviewByAnswerData = ({
|
|
|
6770
6919
|
}
|
|
6771
6920
|
return taxonomyMap.name || "";
|
|
6772
6921
|
};
|
|
6773
|
-
|
|
6922
|
+
useEffect15(() => {
|
|
6774
6923
|
if (!data) return;
|
|
6775
6924
|
const constructAnswerBasedOnData2 = () => {
|
|
6776
6925
|
const newAnswer = { data: [] };
|
|
@@ -6809,7 +6958,7 @@ var ActivityPreviewByAnswerData = ({
|
|
|
6809
6958
|
};
|
|
6810
6959
|
constructAnswerBasedOnData2();
|
|
6811
6960
|
}, [data, lockedType]);
|
|
6812
|
-
|
|
6961
|
+
useEffect15(() => {
|
|
6813
6962
|
if (!data || !answer.data.length) return;
|
|
6814
6963
|
let currentTypeOptionList = typeOptionList || answer.data.map((item) => ({
|
|
6815
6964
|
id: item.type,
|
|
@@ -6842,37 +6991,37 @@ var ActivityPreviewByAnswerData = ({
|
|
|
6842
6991
|
};
|
|
6843
6992
|
switch (selectedType) {
|
|
6844
6993
|
case "ORDERING":
|
|
6845
|
-
return data.orderingBodyMap && data.orderingMaterialMap ? /* @__PURE__ */
|
|
6994
|
+
return data.orderingBodyMap && data.orderingMaterialMap ? /* @__PURE__ */ jsx48(OrderingActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6846
6995
|
case "DROPDOWN":
|
|
6847
|
-
return data.dropdownBodyMap && data.dropdownMaterialMap ? /* @__PURE__ */
|
|
6996
|
+
return data.dropdownBodyMap && data.dropdownMaterialMap ? /* @__PURE__ */ jsx48(DropdownActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6848
6997
|
case "MCSA":
|
|
6849
|
-
return data.MCSABodyMap && data.MCSAMaterialMap ? /* @__PURE__ */
|
|
6998
|
+
return data.MCSABodyMap && data.MCSAMaterialMap ? /* @__PURE__ */ jsx48(MCSAActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6850
6999
|
case "MCMA":
|
|
6851
|
-
return data.MCMABodyMap && data.MCMAMaterialMap ? /* @__PURE__ */
|
|
7000
|
+
return data.MCMABodyMap && data.MCMAMaterialMap ? /* @__PURE__ */ jsx48(MCMAActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6852
7001
|
case "MATCHING":
|
|
6853
|
-
return data.matchingBodyMap && data.matchingMaterialMap ? /* @__PURE__ */
|
|
7002
|
+
return data.matchingBodyMap && data.matchingMaterialMap ? /* @__PURE__ */ jsx48(MatchingActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6854
7003
|
case "GROUPING":
|
|
6855
|
-
return data.groupingBodyMap && data.groupingMaterialMap ? /* @__PURE__ */
|
|
7004
|
+
return data.groupingBodyMap && data.groupingMaterialMap ? /* @__PURE__ */ jsx48(GroupingActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6856
7005
|
case "FILL_IN_THE_BLANKS":
|
|
6857
|
-
return data.fillInTheBlanksBodyMap && data.fillInTheBlanksMaterialMap ? /* @__PURE__ */
|
|
7006
|
+
return data.fillInTheBlanksBodyMap && data.fillInTheBlanksMaterialMap ? /* @__PURE__ */ jsx48(FillInTheBlanksActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6858
7007
|
case "OPEN_ENDED":
|
|
6859
|
-
return data.openEndedBodyMap ? /* @__PURE__ */
|
|
7008
|
+
return data.openEndedBodyMap ? /* @__PURE__ */ jsx48(
|
|
6860
7009
|
OpenEndedActivityContent_default,
|
|
6861
7010
|
__spreadProps(__spreadValues({}, commonProps), {
|
|
6862
7011
|
showMaterialContent: true
|
|
6863
7012
|
})
|
|
6864
7013
|
) : null;
|
|
6865
7014
|
case "TRUE_FALSE":
|
|
6866
|
-
return data.trueFalseBodyMap && data.trueFalseMaterialMap ? /* @__PURE__ */
|
|
7015
|
+
return data.trueFalseBodyMap && data.trueFalseMaterialMap ? /* @__PURE__ */ jsx48(TrueFalseActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
6867
7016
|
default:
|
|
6868
7017
|
return null;
|
|
6869
7018
|
}
|
|
6870
7019
|
};
|
|
6871
7020
|
if (!data) return null;
|
|
6872
|
-
return /* @__PURE__ */
|
|
6873
|
-
showType && optionList.length > 0 ? /* @__PURE__ */
|
|
6874
|
-
showDescription ? /* @__PURE__ */
|
|
6875
|
-
/* @__PURE__ */
|
|
7021
|
+
return /* @__PURE__ */ jsxs36("div", { children: [
|
|
7022
|
+
showType && optionList.length > 0 ? /* @__PURE__ */ jsxs36("div", { className: "mb-4", children: [
|
|
7023
|
+
showDescription ? /* @__PURE__ */ jsx48("div", { className: "my-2", children: /* @__PURE__ */ jsx48("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
|
|
7024
|
+
/* @__PURE__ */ jsx48(
|
|
6876
7025
|
SelectionBox_default,
|
|
6877
7026
|
{
|
|
6878
7027
|
optionList,
|
|
@@ -6883,19 +7032,19 @@ var ActivityPreviewByAnswerData = ({
|
|
|
6883
7032
|
}
|
|
6884
7033
|
)
|
|
6885
7034
|
] }) : null,
|
|
6886
|
-
/* @__PURE__ */
|
|
6887
|
-
/* @__PURE__ */
|
|
6888
|
-
((_a = answer == null ? void 0 : answer.data[0]) == null ? void 0 : _a.isEmpty) ? /* @__PURE__ */
|
|
6889
|
-
selectedType ? /* @__PURE__ */
|
|
7035
|
+
/* @__PURE__ */ jsx48(DividerLine_default, {}),
|
|
7036
|
+
/* @__PURE__ */ jsxs36("div", { className: "flex flex-col my-2 w-full p-5", children: [
|
|
7037
|
+
((_a = answer == null ? void 0 : answer.data[0]) == null ? void 0 : _a.isEmpty) ? /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}) : null,
|
|
7038
|
+
selectedType ? /* @__PURE__ */ jsx48("div", { children: RenderSelectedActivityContent() }, selectedType) : null
|
|
6890
7039
|
] }),
|
|
6891
|
-
selectedType && showSolution ? /* @__PURE__ */
|
|
7040
|
+
selectedType && showSolution ? /* @__PURE__ */ jsx48("div", { className: "my-4", children: /* @__PURE__ */ jsx48(
|
|
6892
7041
|
ActivitySolutionContent_default,
|
|
6893
7042
|
{
|
|
6894
7043
|
activityTemplateType: selectedType,
|
|
6895
7044
|
data
|
|
6896
7045
|
}
|
|
6897
7046
|
) }) : null,
|
|
6898
|
-
selectedType && showEvaluationRubric ? /* @__PURE__ */
|
|
7047
|
+
selectedType && showEvaluationRubric ? /* @__PURE__ */ jsx48("div", { className: "my-4", children: /* @__PURE__ */ jsx48(
|
|
6899
7048
|
ActivityEvaluationRubricContent_default,
|
|
6900
7049
|
{
|
|
6901
7050
|
activityTemplateType: selectedType,
|
|
@@ -6907,9 +7056,9 @@ var ActivityPreviewByAnswerData = ({
|
|
|
6907
7056
|
var ActivityPreviewByAnswerData_default = ActivityPreviewByAnswerData;
|
|
6908
7057
|
|
|
6909
7058
|
// src/components/dividers/BlueVerticalDividerLine.tsx
|
|
6910
|
-
import { jsx as
|
|
7059
|
+
import { jsx as jsx49 } from "react/jsx-runtime";
|
|
6911
7060
|
var BlueVerticalDividerLine = ({ opacity }) => {
|
|
6912
|
-
return /* @__PURE__ */
|
|
7061
|
+
return /* @__PURE__ */ jsx49(
|
|
6913
7062
|
"div",
|
|
6914
7063
|
{
|
|
6915
7064
|
className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
|
|
@@ -6919,7 +7068,7 @@ var BlueVerticalDividerLine = ({ opacity }) => {
|
|
|
6919
7068
|
var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
|
|
6920
7069
|
|
|
6921
7070
|
// src/components/groups/LeftTextRightInputGroup.tsx
|
|
6922
|
-
import { jsx as
|
|
7071
|
+
import { jsx as jsx50, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
6923
7072
|
var LeftTextRightInputGroup = ({
|
|
6924
7073
|
type,
|
|
6925
7074
|
title,
|
|
@@ -6929,9 +7078,9 @@ var LeftTextRightInputGroup = ({
|
|
|
6929
7078
|
disabled,
|
|
6930
7079
|
errorText
|
|
6931
7080
|
}) => {
|
|
6932
|
-
return /* @__PURE__ */
|
|
6933
|
-
/* @__PURE__ */
|
|
6934
|
-
/* @__PURE__ */
|
|
7081
|
+
return /* @__PURE__ */ jsxs37("div", { className: "w-full flex flex-row mx-2", children: [
|
|
7082
|
+
/* @__PURE__ */ jsx50("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ jsx50("p", { children: title }) }),
|
|
7083
|
+
/* @__PURE__ */ jsx50("div", { className: "flex-1", children: /* @__PURE__ */ jsx50(
|
|
6935
7084
|
InputGroup_default,
|
|
6936
7085
|
{
|
|
6937
7086
|
type,
|
|
@@ -6947,14 +7096,14 @@ var LeftTextRightInputGroup = ({
|
|
|
6947
7096
|
var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
|
|
6948
7097
|
|
|
6949
7098
|
// src/components/boxes/SelectionCheckbox.tsx
|
|
6950
|
-
import { jsx as
|
|
7099
|
+
import { jsx as jsx51, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
6951
7100
|
var SelectionCheckbox = ({
|
|
6952
7101
|
optionList,
|
|
6953
7102
|
selectedIdList,
|
|
6954
7103
|
handleSelectOnClick,
|
|
6955
7104
|
handleRemoveOnClick
|
|
6956
7105
|
}) => {
|
|
6957
|
-
return /* @__PURE__ */
|
|
7106
|
+
return /* @__PURE__ */ jsx51("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx51(
|
|
6958
7107
|
"div",
|
|
6959
7108
|
{
|
|
6960
7109
|
className: `${selectedIdList.findIndex(
|
|
@@ -6969,14 +7118,14 @@ var SelectionCheckbox = ({
|
|
|
6969
7118
|
handleRemoveOnClick(option.id);
|
|
6970
7119
|
}
|
|
6971
7120
|
},
|
|
6972
|
-
children: /* @__PURE__ */
|
|
7121
|
+
children: /* @__PURE__ */ jsxs38(
|
|
6973
7122
|
"div",
|
|
6974
7123
|
{
|
|
6975
7124
|
className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
|
|
6976
7125
|
(selectedId) => selectedId === option.id
|
|
6977
7126
|
) > -1 ? "opacity-100" : "opacity-50"}`,
|
|
6978
7127
|
children: [
|
|
6979
|
-
/* @__PURE__ */
|
|
7128
|
+
/* @__PURE__ */ jsx51(
|
|
6980
7129
|
BaseImage_default,
|
|
6981
7130
|
{
|
|
6982
7131
|
src: selectedIdList.findIndex(
|
|
@@ -6986,7 +7135,7 @@ var SelectionCheckbox = ({
|
|
|
6986
7135
|
size: "small"
|
|
6987
7136
|
}
|
|
6988
7137
|
),
|
|
6989
|
-
/* @__PURE__ */
|
|
7138
|
+
/* @__PURE__ */ jsx51("div", { className: "flex-1", children: /* @__PURE__ */ jsx51("p", { children: option.text }) })
|
|
6990
7139
|
]
|
|
6991
7140
|
}
|
|
6992
7141
|
)
|
|
@@ -6997,7 +7146,7 @@ var SelectionCheckbox = ({
|
|
|
6997
7146
|
var SelectionCheckbox_default = SelectionCheckbox;
|
|
6998
7147
|
|
|
6999
7148
|
// src/components/tabs/SelectionTab.tsx
|
|
7000
|
-
import { jsx as
|
|
7149
|
+
import { jsx as jsx52, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
7001
7150
|
var SelectionTab = ({
|
|
7002
7151
|
optionList,
|
|
7003
7152
|
selectedId,
|
|
@@ -7007,7 +7156,7 @@ var SelectionTab = ({
|
|
|
7007
7156
|
textColor,
|
|
7008
7157
|
borderColor
|
|
7009
7158
|
}) => {
|
|
7010
|
-
return /* @__PURE__ */
|
|
7159
|
+
return /* @__PURE__ */ jsx52("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap mb-2 text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsxs39(
|
|
7011
7160
|
"div",
|
|
7012
7161
|
{
|
|
7013
7162
|
className: `${selectedId === option.id ? selectedTextColor ? selectedTextColor : "text-catchup-blue-500" : textColor ? textColor : "text-catchup-gray-300"} ${selectedId === option.id ? selectedBorderColor ? selectedBorderColor : "border-catchup-blue-500" : borderColor ? borderColor : "border-catchup-gray-50"} border-b-2 transition-all duration-300 p-3 cursor-pointer`,
|
|
@@ -7015,8 +7164,8 @@ var SelectionTab = ({
|
|
|
7015
7164
|
handleSelectOnClick(option.id);
|
|
7016
7165
|
},
|
|
7017
7166
|
children: [
|
|
7018
|
-
/* @__PURE__ */
|
|
7019
|
-
option.subTitle ? /* @__PURE__ */
|
|
7167
|
+
/* @__PURE__ */ jsx52("p", { className: "text-lg", children: option.title }),
|
|
7168
|
+
option.subTitle ? /* @__PURE__ */ jsx52("p", { className: "text-md", children: option.subTitle }) : null
|
|
7020
7169
|
]
|
|
7021
7170
|
},
|
|
7022
7171
|
index
|
|
@@ -7025,20 +7174,20 @@ var SelectionTab = ({
|
|
|
7025
7174
|
var SelectionTab_default = SelectionTab;
|
|
7026
7175
|
|
|
7027
7176
|
// src/components/tabs/SelectionTabFill.tsx
|
|
7028
|
-
import { jsx as
|
|
7177
|
+
import { jsx as jsx53 } from "react/jsx-runtime";
|
|
7029
7178
|
var SelectionTabFill = ({
|
|
7030
7179
|
optionList,
|
|
7031
7180
|
selectedId,
|
|
7032
7181
|
handleSelectOnClick
|
|
7033
7182
|
}) => {
|
|
7034
|
-
return /* @__PURE__ */
|
|
7183
|
+
return /* @__PURE__ */ jsx53("div", { className: "w-full flex flex-row bg-catchup-gray-50 gap-x-2 rounded-catchup-medium px-4 py-2 justify-center text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx53(
|
|
7035
7184
|
"div",
|
|
7036
7185
|
{
|
|
7037
7186
|
className: "cursor-pointer",
|
|
7038
7187
|
onClick: () => {
|
|
7039
7188
|
handleSelectOnClick(option.id);
|
|
7040
7189
|
},
|
|
7041
|
-
children: /* @__PURE__ */
|
|
7190
|
+
children: /* @__PURE__ */ jsx53(
|
|
7042
7191
|
"p",
|
|
7043
7192
|
{
|
|
7044
7193
|
className: `${selectedId === option.id ? "text-catchup-white bg-catchup-blue-500" : "text-catchup-gray-300"} transition-all duration-300 rounded-catchup-medium px-2 py-1`,
|
|
@@ -7052,57 +7201,57 @@ var SelectionTabFill = ({
|
|
|
7052
7201
|
var SelectionTabFill_default = SelectionTabFill;
|
|
7053
7202
|
|
|
7054
7203
|
// src/components/labels/ActivityTemplateLabel.tsx
|
|
7055
|
-
import { jsx as
|
|
7204
|
+
import { jsx as jsx54, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
7056
7205
|
var ActivityTemplateLabel = ({
|
|
7057
7206
|
title,
|
|
7058
7207
|
font
|
|
7059
7208
|
}) => {
|
|
7060
|
-
return /* @__PURE__ */
|
|
7061
|
-
/* @__PURE__ */
|
|
7062
|
-
/* @__PURE__ */
|
|
7209
|
+
return /* @__PURE__ */ jsx54("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs40("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7210
|
+
/* @__PURE__ */ jsx54(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
|
|
7211
|
+
/* @__PURE__ */ jsx54("p", { className: font ? font : "text-sm", children: title })
|
|
7063
7212
|
] }) });
|
|
7064
7213
|
};
|
|
7065
7214
|
var ActivityTemplateLabel_default = ActivityTemplateLabel;
|
|
7066
7215
|
|
|
7067
7216
|
// src/components/labels/BrandLabel.tsx
|
|
7068
|
-
import { jsx as
|
|
7217
|
+
import { jsx as jsx55, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
7069
7218
|
var BrandLabel = ({ title, icon, font }) => {
|
|
7070
|
-
return /* @__PURE__ */
|
|
7071
|
-
icon ? icon : /* @__PURE__ */
|
|
7072
|
-
/* @__PURE__ */
|
|
7219
|
+
return /* @__PURE__ */ jsx55("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs41("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7220
|
+
icon ? icon : /* @__PURE__ */ jsx55(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
|
|
7221
|
+
/* @__PURE__ */ jsx55("p", { className: font ? font : "text-sm", children: title })
|
|
7073
7222
|
] }) });
|
|
7074
7223
|
};
|
|
7075
7224
|
var BrandLabel_default = BrandLabel;
|
|
7076
7225
|
|
|
7077
7226
|
// src/components/labels/CoterieLabel.tsx
|
|
7078
|
-
import { jsx as
|
|
7227
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
7079
7228
|
var CoterieLabel = ({ title, font }) => {
|
|
7080
|
-
return /* @__PURE__ */
|
|
7229
|
+
return /* @__PURE__ */ jsx56("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsx56("p", { className: font ? font : "text-sm", children: title }) });
|
|
7081
7230
|
};
|
|
7082
7231
|
var CoterieLabel_default = CoterieLabel;
|
|
7083
7232
|
|
|
7084
7233
|
// src/components/labels/GradeLabel.tsx
|
|
7085
|
-
import { jsx as
|
|
7234
|
+
import { jsx as jsx57 } from "react/jsx-runtime";
|
|
7086
7235
|
var GradeLabel = ({ title, font }) => {
|
|
7087
|
-
return /* @__PURE__ */
|
|
7236
|
+
return /* @__PURE__ */ jsx57("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsx57("p", { className: font ? font : "text-sm", children: title }) });
|
|
7088
7237
|
};
|
|
7089
7238
|
var GradeLabel_default = GradeLabel;
|
|
7090
7239
|
|
|
7091
7240
|
// src/components/labels/OutcomeLabel.tsx
|
|
7092
|
-
import { jsx as
|
|
7241
|
+
import { jsx as jsx58, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
7093
7242
|
var OutcomeLabel = ({ title, font }) => {
|
|
7094
|
-
return /* @__PURE__ */
|
|
7095
|
-
/* @__PURE__ */
|
|
7096
|
-
/* @__PURE__ */
|
|
7243
|
+
return /* @__PURE__ */ jsx58("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs42("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7244
|
+
/* @__PURE__ */ jsx58(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
|
|
7245
|
+
/* @__PURE__ */ jsx58("p", { className: font ? font : "text-sm", children: title })
|
|
7097
7246
|
] }) });
|
|
7098
7247
|
};
|
|
7099
7248
|
var OutcomeLabel_default = OutcomeLabel;
|
|
7100
7249
|
|
|
7101
7250
|
// src/components/labels/PersonalLabel.tsx
|
|
7102
|
-
import { jsx as
|
|
7251
|
+
import { jsx as jsx59, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
7103
7252
|
var PersonalLabel = ({ title, icon, font }) => {
|
|
7104
|
-
return /* @__PURE__ */
|
|
7105
|
-
icon ? icon : /* @__PURE__ */
|
|
7253
|
+
return /* @__PURE__ */ jsx59("div", { className: "px-3 py-1 gap-x-3 border border-personal-label-border bg-personal-label text-personal-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs43("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7254
|
+
icon ? icon : /* @__PURE__ */ jsx59(
|
|
7106
7255
|
BaseImage_default,
|
|
7107
7256
|
{
|
|
7108
7257
|
src: "/icons/personal-label.webp",
|
|
@@ -7110,16 +7259,16 @@ var PersonalLabel = ({ title, icon, font }) => {
|
|
|
7110
7259
|
size: "xsmall"
|
|
7111
7260
|
}
|
|
7112
7261
|
),
|
|
7113
|
-
/* @__PURE__ */
|
|
7262
|
+
/* @__PURE__ */ jsx59("p", { className: font ? font : "text-sm", children: title })
|
|
7114
7263
|
] }) });
|
|
7115
7264
|
};
|
|
7116
7265
|
var PersonalLabel_default = PersonalLabel;
|
|
7117
7266
|
|
|
7118
7267
|
// src/components/labels/PublishingHouseLabel.tsx
|
|
7119
|
-
import { jsx as
|
|
7268
|
+
import { jsx as jsx60, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
7120
7269
|
var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
7121
|
-
return /* @__PURE__ */
|
|
7122
|
-
icon ? icon : /* @__PURE__ */
|
|
7270
|
+
return /* @__PURE__ */ jsx60("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs44("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7271
|
+
icon ? icon : /* @__PURE__ */ jsx60(
|
|
7123
7272
|
BaseImage_default,
|
|
7124
7273
|
{
|
|
7125
7274
|
src: "/icons/publishing-house-label.webp",
|
|
@@ -7127,79 +7276,79 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
|
7127
7276
|
size: "xsmall"
|
|
7128
7277
|
}
|
|
7129
7278
|
),
|
|
7130
|
-
/* @__PURE__ */
|
|
7279
|
+
/* @__PURE__ */ jsx60("p", { className: font ? font : "text-sm", children: title })
|
|
7131
7280
|
] }) });
|
|
7132
7281
|
};
|
|
7133
7282
|
var PublishingHouseLabel_default = PublishingHouseLabel;
|
|
7134
7283
|
|
|
7135
7284
|
// src/components/labels/ActivityLabel.tsx
|
|
7136
|
-
import { jsx as
|
|
7285
|
+
import { jsx as jsx61 } from "react/jsx-runtime";
|
|
7137
7286
|
var ActivityLabel = ({ title, font }) => {
|
|
7138
|
-
return /* @__PURE__ */
|
|
7287
|
+
return /* @__PURE__ */ jsx61("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsx61("p", { className: font ? font : "text-sm", children: title }) });
|
|
7139
7288
|
};
|
|
7140
7289
|
var ActivityLabel_default = ActivityLabel;
|
|
7141
7290
|
|
|
7142
7291
|
// src/components/infos/InfoWithText.tsx
|
|
7143
|
-
import { jsx as
|
|
7292
|
+
import { jsx as jsx62, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
7144
7293
|
var InfoWithText = (props) => {
|
|
7145
7294
|
const { value } = props;
|
|
7146
|
-
return /* @__PURE__ */
|
|
7147
|
-
/* @__PURE__ */
|
|
7148
|
-
/* @__PURE__ */
|
|
7295
|
+
return /* @__PURE__ */ jsxs45("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
|
|
7296
|
+
/* @__PURE__ */ jsx62(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
|
|
7297
|
+
/* @__PURE__ */ jsx62("div", { className: "flex-1", children: /* @__PURE__ */ jsx62("p", { className: "", children: value }) })
|
|
7149
7298
|
] });
|
|
7150
7299
|
};
|
|
7151
7300
|
var InfoWithText_default = InfoWithText;
|
|
7152
7301
|
|
|
7153
7302
|
// src/components/texts/InputWithSpecialExpression.tsx
|
|
7154
7303
|
import { InlineMath as InlineMath12 } from "react-katex";
|
|
7155
|
-
import { jsx as
|
|
7304
|
+
import { jsx as jsx63 } from "react/jsx-runtime";
|
|
7156
7305
|
var InputWithSpecialExpression = ({
|
|
7157
7306
|
value,
|
|
7158
7307
|
showSpecialOnly
|
|
7159
7308
|
}) => {
|
|
7160
7309
|
const inputWithSpecialExpressionList = constructInputWithSpecialExpressionList(value);
|
|
7161
|
-
return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */
|
|
7310
|
+
return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ jsx63("div", { className: "m-2", children: /* @__PURE__ */ jsx63("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx63(
|
|
7162
7311
|
"span",
|
|
7163
7312
|
{
|
|
7164
7313
|
className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
7165
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
7314
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx63("span", { className: "text-lg", children: /* @__PURE__ */ jsx63(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
|
|
7166
7315
|
}
|
|
7167
|
-
)) }) }) : null : /* @__PURE__ */
|
|
7316
|
+
)) }) }) : null : /* @__PURE__ */ jsx63("div", { className: "m-2", children: /* @__PURE__ */ jsx63("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx63(
|
|
7168
7317
|
"span",
|
|
7169
7318
|
{
|
|
7170
7319
|
className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
7171
|
-
children: inputPart.isEquation ? /* @__PURE__ */
|
|
7320
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx63("span", { className: "text-lg", children: /* @__PURE__ */ jsx63(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
|
|
7172
7321
|
}
|
|
7173
7322
|
)) }) });
|
|
7174
7323
|
};
|
|
7175
7324
|
var InputWithSpecialExpression_default = InputWithSpecialExpression;
|
|
7176
7325
|
|
|
7177
7326
|
// src/components/titles/BaseTitle.tsx
|
|
7178
|
-
import { jsx as
|
|
7327
|
+
import { jsx as jsx64, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
7179
7328
|
var BaseTitle = ({
|
|
7180
7329
|
title,
|
|
7181
7330
|
totalItemCount,
|
|
7182
7331
|
itemName,
|
|
7183
7332
|
description
|
|
7184
7333
|
}) => {
|
|
7185
|
-
return /* @__PURE__ */
|
|
7186
|
-
/* @__PURE__ */
|
|
7334
|
+
return /* @__PURE__ */ jsxs46("div", { className: "flex flex-col gap-y-2", children: [
|
|
7335
|
+
/* @__PURE__ */ jsxs46("p", { className: "text-2xl font-medium", children: [
|
|
7187
7336
|
title,
|
|
7188
|
-
totalItemCount && itemName ? /* @__PURE__ */
|
|
7337
|
+
totalItemCount && itemName ? /* @__PURE__ */ jsxs46("span", { className: "p-2 text-base text-catchup-blue-600 border border-catchup-blue-300 rounded-catchup-3xlarge mx-2 bg-catchup-blue-100", children: [
|
|
7189
7338
|
totalItemCount,
|
|
7190
7339
|
" ",
|
|
7191
7340
|
itemName
|
|
7192
7341
|
] }) : null
|
|
7193
7342
|
] }),
|
|
7194
|
-
description ? /* @__PURE__ */
|
|
7343
|
+
description ? /* @__PURE__ */ jsx64("p", { className: "", children: description }) : null
|
|
7195
7344
|
] });
|
|
7196
7345
|
};
|
|
7197
7346
|
var BaseTitle_default = BaseTitle;
|
|
7198
7347
|
|
|
7199
7348
|
// src/components/titles/SubTitle.tsx
|
|
7200
|
-
import { jsx as
|
|
7349
|
+
import { jsx as jsx65 } from "react/jsx-runtime";
|
|
7201
7350
|
var SubTitle = ({ title }) => {
|
|
7202
|
-
return /* @__PURE__ */
|
|
7351
|
+
return /* @__PURE__ */ jsx65("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
|
|
7203
7352
|
};
|
|
7204
7353
|
var SubTitle_default = SubTitle;
|
|
7205
7354
|
|
|
@@ -9786,7 +9935,9 @@ export {
|
|
|
9786
9935
|
OutcomeLabel_default as OutcomeLabel,
|
|
9787
9936
|
PersonalLabel_default as PersonalLabel,
|
|
9788
9937
|
PrimaryButton_default as PrimaryButton,
|
|
9938
|
+
ProgressBar_default as ProgressBar,
|
|
9789
9939
|
PublishingHouseLabel_default as PublishingHouseLabel,
|
|
9940
|
+
ScoreBar_default as ScoreBar,
|
|
9790
9941
|
SecondaryButton_default as SecondaryButton,
|
|
9791
9942
|
SelectionBox_default as SelectionBox,
|
|
9792
9943
|
SelectionCheckbox_default as SelectionCheckbox,
|
|
@@ -9794,6 +9945,7 @@ export {
|
|
|
9794
9945
|
SelectionTabFill_default as SelectionTabFill,
|
|
9795
9946
|
SubTitle_default as SubTitle,
|
|
9796
9947
|
THREE_MONTHS,
|
|
9948
|
+
TimedProgressBar_default as TimedProgressBar,
|
|
9797
9949
|
TrueFalseActivityContent_default as TrueFalseActivityContent,
|
|
9798
9950
|
VerticalDividerLine_default as VerticalDividerLine,
|
|
9799
9951
|
adjustForTimezone,
|