catchup-library-web 1.4.14 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -68,6 +68,7 @@ var __async = (__this, __arguments, generator) => {
68
68
  var index_exports = {};
69
69
  __export(index_exports, {
70
70
  ActivityBodyContent: () => ActivityBodyContent_default,
71
+ ActivityEmptyContent: () => ActivityEmptyContent_default,
71
72
  ActivityLabel: () => ActivityLabel_default,
72
73
  ActivityPreviewByData: () => ActivityPreviewByData_default,
73
74
  ActivitySolutionContent: () => ActivitySolutionContent_default,
@@ -303,6 +304,7 @@ var BaseImage = (props) => {
303
304
  widthClassName,
304
305
  heightClassName,
305
306
  src,
307
+ hidden,
306
308
  alt,
307
309
  showLoading,
308
310
  onLoad,
@@ -361,7 +363,7 @@ var BaseImage = (props) => {
361
363
  return loading ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(BaseLoading_default, { size: "small", primaryColor: "#57C2D3", secondaryColor: "#57C2D3" }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
362
364
  "span",
363
365
  {
364
- className: `${currentWidthClassName ? currentWidthClassName : ""} ${currentHeightClassName ? currentHeightClassName : ""} ${currentClassName ? currentClassName : ""} cursor-pointer inline-block`,
366
+ className: `${currentWidthClassName ? currentWidthClassName : ""} ${currentHeightClassName ? currentHeightClassName : ""} ${currentClassName ? currentClassName : ""} cursor-pointer inline-block ${hidden ? "hidden" : ""}`,
365
367
  onClick: handleOnClick,
366
368
  children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
367
369
  "img",
@@ -990,6 +992,13 @@ var BaseModal = ({
990
992
  };
991
993
  var BaseModal_default = BaseModal;
992
994
 
995
+ // src/components/activities/empty-content/ActivityEmptyContent.tsx
996
+ var import_jsx_runtime11 = require("react/jsx-runtime");
997
+ var ActivityEmptyContent = () => {
998
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("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__ */ (0, import_jsx_runtime11.jsx)("div", { className: "", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: "text-catchup-white text-xl", children: i18n_default.t("you_have_set_this_activity_as_empty") }) }) });
999
+ };
1000
+ var ActivityEmptyContent_default = ActivityEmptyContent;
1001
+
993
1002
  // src/components/activities/body-content/ShowBodyMediaByContentType.tsx
994
1003
  var import_react9 = require("react");
995
1004
  var import_react_modal2 = __toESM(require("react-modal"));
@@ -3055,7 +3064,7 @@ var constructActivityItemListSolutionOnly = (solutionMap) => {
3055
3064
 
3056
3065
  // src/components/activities/body-content/ShowBodyMediaByContentType.tsx
3057
3066
  var import_react_katex = require("react-katex");
3058
- var import_jsx_runtime11 = require("react/jsx-runtime");
3067
+ var import_jsx_runtime12 = require("react/jsx-runtime");
3059
3068
  var ShowBodyMediaByContentType = ({
3060
3069
  index,
3061
3070
  type,
@@ -3097,16 +3106,16 @@ var ShowBodyMediaByContentType = ({
3097
3106
  addition += 1;
3098
3107
  }
3099
3108
  valuePartList.push(
3100
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3109
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3101
3110
  "span",
3102
3111
  {
3103
3112
  className: "text-xl whitespace-pre-wrap",
3104
3113
  children: constructInputWithSpecialExpressionList(textValue).map(
3105
- (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3114
+ (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3106
3115
  "span",
3107
3116
  {
3108
3117
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
3109
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react_katex.InlineMath, { math: inputPart.value }) }) : inputPart.value
3118
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react_katex.InlineMath, { math: inputPart.value }) }) : inputPart.value
3110
3119
  },
3111
3120
  index2
3112
3121
  )
@@ -3120,17 +3129,17 @@ var ShowBodyMediaByContentType = ({
3120
3129
  const secondIndex = subValue.indexOf(checkText) + checkText.length + textValue.length - addition;
3121
3130
  currentIndex++;
3122
3131
  valuePartList.push(
3123
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3132
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3124
3133
  "span",
3125
3134
  {
3126
3135
  className: `text-xl font-bold whitespace-pre-wrap`,
3127
3136
  children: constructInputWithSpecialExpressionList(
3128
3137
  copyValue.substring(firstIndex + checkText.length, secondIndex)
3129
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3138
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3130
3139
  "span",
3131
3140
  {
3132
3141
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
3133
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react_katex.InlineMath, { math: inputPart.value }) }) : inputPart.value
3142
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react_katex.InlineMath, { math: inputPart.value }) }) : inputPart.value
3134
3143
  },
3135
3144
  index2
3136
3145
  ))
@@ -3150,7 +3159,7 @@ var ShowBodyMediaByContentType = ({
3150
3159
  if (textValue.trim() !== "") {
3151
3160
  currentIndex++;
3152
3161
  valuePartList.push(
3153
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: "text-xl", children: textValue }, `${index}_${currentIndex}`)
3162
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "text-xl", children: textValue }, `${index}_${currentIndex}`)
3154
3163
  );
3155
3164
  }
3156
3165
  const subValue = copyValue.substring(firstIndex + checkText.length);
@@ -3161,8 +3170,8 @@ var ShowBodyMediaByContentType = ({
3161
3170
  );
3162
3171
  currentIndex++;
3163
3172
  valuePartList.push(
3164
- /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "relative w-[200px]", children: [
3165
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3173
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "relative w-[200px]", children: [
3174
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3166
3175
  BaseImage_default,
3167
3176
  {
3168
3177
  src: imageSource,
@@ -3171,7 +3180,7 @@ var ShowBodyMediaByContentType = ({
3171
3180
  className: "rounded-catchup-xlarge"
3172
3181
  }
3173
3182
  ),
3174
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3183
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3175
3184
  "div",
3176
3185
  {
3177
3186
  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",
@@ -3179,7 +3188,7 @@ var ShowBodyMediaByContentType = ({
3179
3188
  setShowFullScreen(true);
3180
3189
  setSelectedFullScreenItem(imageSource);
3181
3190
  },
3182
- children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3191
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3183
3192
  BaseImage_default,
3184
3193
  {
3185
3194
  src: "/icons/arrow-up.webp",
@@ -3201,7 +3210,7 @@ var ShowBodyMediaByContentType = ({
3201
3210
  if (textValue.trim() !== "") {
3202
3211
  currentIndex++;
3203
3212
  valuePartList.push(
3204
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: "text-xl", children: textValue }, `${index}-${currentIndex}`)
3213
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "text-xl", children: textValue }, `${index}-${currentIndex}`)
3205
3214
  );
3206
3215
  }
3207
3216
  const subValue = copyValue.substring(firstIndex + checkText.length);
@@ -3212,7 +3221,7 @@ var ShowBodyMediaByContentType = ({
3212
3221
  );
3213
3222
  currentIndex++;
3214
3223
  valuePartList.push(
3215
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3224
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3216
3225
  "video",
3217
3226
  {
3218
3227
  src: videoSource,
@@ -3230,7 +3239,7 @@ var ShowBodyMediaByContentType = ({
3230
3239
  if (textValue.trim() !== "") {
3231
3240
  currentIndex++;
3232
3241
  valuePartList.push(
3233
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: "text-xl", children: textValue }, `${index}-${currentIndex}`)
3242
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "text-xl", children: textValue }, `${index}-${currentIndex}`)
3234
3243
  );
3235
3244
  }
3236
3245
  const subValue = copyValue.substring(firstIndex + checkText.length);
@@ -3241,7 +3250,7 @@ var ShowBodyMediaByContentType = ({
3241
3250
  );
3242
3251
  currentIndex++;
3243
3252
  valuePartList.push(
3244
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3253
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3245
3254
  "audio",
3246
3255
  {
3247
3256
  src: audioSource,
@@ -3267,9 +3276,9 @@ var ShowBodyMediaByContentType = ({
3267
3276
  if (regexMatchImageText) {
3268
3277
  const imageText = regexMatchImageText[1];
3269
3278
  valuePartList.push(
3270
- /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "bg-catchup-gray-50 relative px-4 py-4 rounded-catchup-small mt-2", children: [
3271
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "absolute -top-3 bg-catchup-white border rounded-catchup-small px-2 left-2", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: "font-bold", children: i18n_default.t("image_description") }) }),
3272
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3279
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "bg-catchup-gray-50 relative px-4 py-4 rounded-catchup-small mt-2", children: [
3280
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "absolute -top-3 bg-catchup-white border rounded-catchup-small px-2 left-2", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "font-bold", children: i18n_default.t("image_description") }) }),
3281
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3273
3282
  "span",
3274
3283
  {
3275
3284
  className: "text-xl whitespace-pre-wrap ",
@@ -3281,16 +3290,16 @@ var ShowBodyMediaByContentType = ({
3281
3290
  );
3282
3291
  } else {
3283
3292
  valuePartList.push(
3284
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3293
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3285
3294
  "span",
3286
3295
  {
3287
3296
  className: "text-xl whitespace-pre-wrap",
3288
3297
  children: constructInputWithSpecialExpressionList(copyValue).map(
3289
- (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3298
+ (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3290
3299
  "span",
3291
3300
  {
3292
3301
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
3293
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react_katex.InlineMath, { math: inputPart.value }) }) : inputPart.value
3302
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react_katex.InlineMath, { math: inputPart.value }) }) : inputPart.value
3294
3303
  },
3295
3304
  index2
3296
3305
  )
@@ -3304,7 +3313,7 @@ var ShowBodyMediaByContentType = ({
3304
3313
  return valuePartList;
3305
3314
  };
3306
3315
  const RenderShowFullScreenItem = () => {
3307
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3316
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3308
3317
  import_react_modal2.default,
3309
3318
  {
3310
3319
  isOpen: showFullScreen,
@@ -3335,8 +3344,8 @@ var ShowBodyMediaByContentType = ({
3335
3344
  }
3336
3345
  },
3337
3346
  contentLabel: "",
3338
- children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "flex-1 flex flex-col", children: [
3339
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3347
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex-1 flex flex-col", children: [
3348
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3340
3349
  BaseImage_default,
3341
3350
  {
3342
3351
  src: "/icons/cross-red.webp",
@@ -3348,7 +3357,7 @@ var ShowBodyMediaByContentType = ({
3348
3357
  }
3349
3358
  }
3350
3359
  ) }),
3351
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "flex items-center justify-center h-[500]", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3360
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex items-center justify-center h-[500]", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3352
3361
  BaseImage_default,
3353
3362
  {
3354
3363
  src: selectedFullScreenItem,
@@ -3363,14 +3372,14 @@ var ShowBodyMediaByContentType = ({
3363
3372
  };
3364
3373
  const RenderMainContent = () => {
3365
3374
  if (type === "TEXT") {
3366
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "mb-3 flex flex-row flex-wrap items-center mx-auto w-full", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { children: retrieveValueParts(value) }) });
3375
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "mb-3 flex flex-row flex-wrap items-center mx-auto w-full", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { children: retrieveValueParts(value) }) });
3367
3376
  } else if (type === "IMAGE") {
3368
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "mb-3 flex flex-col items-center relative", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
3377
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "mb-3 flex flex-col items-center relative", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
3369
3378
  "div",
3370
3379
  {
3371
3380
  className: `${size ? `${convertToPercentage(size)}` : ""} rounded-catchup-xlarge relative`,
3372
3381
  children: [
3373
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3382
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3374
3383
  BaseImage_default,
3375
3384
  {
3376
3385
  src: value,
@@ -3379,7 +3388,7 @@ var ShowBodyMediaByContentType = ({
3379
3388
  className: "w-full rounded-catchup-xlarge"
3380
3389
  }
3381
3390
  ),
3382
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3391
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3383
3392
  "div",
3384
3393
  {
3385
3394
  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",
@@ -3387,7 +3396,7 @@ var ShowBodyMediaByContentType = ({
3387
3396
  setShowFullScreen(true);
3388
3397
  setSelectedFullScreenItem(value);
3389
3398
  },
3390
- children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3399
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3391
3400
  BaseImage_default,
3392
3401
  {
3393
3402
  src: "/icons/arrow-up.webp",
@@ -3402,7 +3411,7 @@ var ShowBodyMediaByContentType = ({
3402
3411
  }
3403
3412
  ) });
3404
3413
  } else if (type === "VIDEO") {
3405
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "mb-3 flex flex-col items-center", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3414
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "mb-3 flex flex-col items-center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3406
3415
  "video",
3407
3416
  {
3408
3417
  src: value,
@@ -3411,10 +3420,10 @@ var ShowBodyMediaByContentType = ({
3411
3420
  }
3412
3421
  ) });
3413
3422
  } else if (type === "AUDIO") {
3414
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "mb-3 flex flex-col items-center", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("audio", { src: value, controls: true, className: `rounded-catchup-xlarge` }) });
3423
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "mb-3 flex flex-col items-center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("audio", { src: value, controls: true, className: `rounded-catchup-xlarge` }) });
3415
3424
  }
3416
3425
  };
3417
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "w-full", children: [
3426
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "w-full", children: [
3418
3427
  RenderShowFullScreenItem(),
3419
3428
  RenderMainContent()
3420
3429
  ] }, index);
@@ -3422,7 +3431,7 @@ var ShowBodyMediaByContentType = ({
3422
3431
  var ShowBodyMediaByContentType_default = ShowBodyMediaByContentType;
3423
3432
 
3424
3433
  // src/components/activities/body-content/ActivityBodyContent.tsx
3425
- var import_jsx_runtime12 = require("react/jsx-runtime");
3434
+ var import_jsx_runtime13 = require("react/jsx-runtime");
3426
3435
  var ActivityBodyContent = ({
3427
3436
  templateType,
3428
3437
  bodyMap,
@@ -3430,7 +3439,7 @@ var ActivityBodyContent = ({
3430
3439
  answerMap
3431
3440
  }) => {
3432
3441
  let currentQQIndex = 0;
3433
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex flex-col justify-center items-center", children: Object.keys(bodyMap).map((key, index) => {
3442
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "flex flex-col justify-center items-center", children: Object.keys(bodyMap).map((key, index) => {
3434
3443
  const body = JSON.parse(bodyMap[key]);
3435
3444
  if (templateType === "DROPDOWN") {
3436
3445
  while (body.value.includes("@@")) {
@@ -3507,7 +3516,7 @@ var ActivityBodyContent = ({
3507
3516
  currentQQIndex++;
3508
3517
  }
3509
3518
  }
3510
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3519
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3511
3520
  ShowBodyMediaByContentType_default,
3512
3521
  {
3513
3522
  index,
@@ -3521,16 +3530,16 @@ var ActivityBodyContent = ({
3521
3530
  var ActivityBodyContent_default = ActivityBodyContent;
3522
3531
 
3523
3532
  // src/components/dividers/DividerLine.tsx
3524
- var import_jsx_runtime13 = require("react/jsx-runtime");
3533
+ var import_jsx_runtime14 = require("react/jsx-runtime");
3525
3534
  var DividerLine = () => {
3526
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "bg-catchup-gray-50 h-[1px] w-full my-3" });
3535
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "bg-catchup-gray-50 h-[1px] w-full my-3" });
3527
3536
  };
3528
3537
  var DividerLine_default = DividerLine;
3529
3538
 
3530
3539
  // src/components/dividers/VerticalDividerLine.tsx
3531
- var import_jsx_runtime14 = require("react/jsx-runtime");
3540
+ var import_jsx_runtime15 = require("react/jsx-runtime");
3532
3541
  var VerticalDividerLine = () => {
3533
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "bg-catchup-gray-50 h-full w-[1px] mx-3" });
3542
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "bg-catchup-gray-50 h-full w-[1px] mx-3" });
3534
3543
  };
3535
3544
  var VerticalDividerLine_default = VerticalDividerLine;
3536
3545
 
@@ -3540,7 +3549,7 @@ var import_react_katex2 = require("react-katex");
3540
3549
  // src/components/groups/InputGroup.tsx
3541
3550
  var import_react_select = __toESM(require("react-select"));
3542
3551
  var import_react10 = require("react");
3543
- var import_jsx_runtime15 = require("react/jsx-runtime");
3552
+ var import_jsx_runtime16 = require("react/jsx-runtime");
3544
3553
  var InputGroup = ({
3545
3554
  type,
3546
3555
  title,
@@ -3598,13 +3607,13 @@ var InputGroup = ({
3598
3607
  }
3599
3608
  };
3600
3609
  const CheckboxInputGroup = () => {
3601
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
3610
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
3602
3611
  "div",
3603
3612
  {
3604
3613
  className: "flex flex-row items-center gap-x-1 cursor-pointer",
3605
3614
  onClick,
3606
3615
  children: [
3607
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3616
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3608
3617
  BaseImage_default,
3609
3618
  {
3610
3619
  src: value ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -3614,15 +3623,15 @@ var InputGroup = ({
3614
3623
  }
3615
3624
  }
3616
3625
  ),
3617
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "", children: title })
3626
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "", children: title })
3618
3627
  ]
3619
3628
  }
3620
3629
  );
3621
3630
  };
3622
3631
  const FileInputGroup = () => {
3623
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "my-1", children: [
3624
- title ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3625
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3632
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "my-1", children: [
3633
+ title ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3634
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3626
3635
  "input",
3627
3636
  {
3628
3637
  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",
@@ -3639,9 +3648,9 @@ var InputGroup = ({
3639
3648
  ] });
3640
3649
  };
3641
3650
  const DateInputGroup = () => {
3642
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "my-1", children: [
3643
- title ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3644
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3651
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "my-1", children: [
3652
+ title ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3653
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3645
3654
  "input",
3646
3655
  {
3647
3656
  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`,
@@ -3656,9 +3665,9 @@ var InputGroup = ({
3656
3665
  ] });
3657
3666
  };
3658
3667
  const SearchableSelectInputGroup = () => {
3659
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "my-1", children: [
3660
- title ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400 ", children: title }) : null,
3661
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3668
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "my-1", children: [
3669
+ title ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400 ", children: title }) : null,
3670
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3662
3671
  import_react_select.default,
3663
3672
  {
3664
3673
  options: convertOptionListToSelectComponent(
@@ -3721,16 +3730,16 @@ var InputGroup = ({
3721
3730
  ] });
3722
3731
  };
3723
3732
  const TextAreaInputGroup = () => {
3724
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "my-1 flex-1 flex flex-col relative", children: [
3725
- /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex flex-row justify-between items-center", children: [
3726
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { children: title ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null }),
3727
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { children: value && limit ? /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("p", { className: "text-md font-semibold pr-2 py-1 text-catchup-gray-400", children: [
3733
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "my-1 flex-1 flex flex-col relative", children: [
3734
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex flex-row justify-between items-center", children: [
3735
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { children: title ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null }),
3736
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { children: value && limit ? /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("p", { className: "text-md font-semibold pr-2 py-1 text-catchup-gray-400", children: [
3728
3737
  value.length,
3729
3738
  " / ",
3730
3739
  limit
3731
3740
  ] }) : null })
3732
3741
  ] }),
3733
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3742
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3734
3743
  "textarea",
3735
3744
  {
3736
3745
  ref: textAreaRef,
@@ -3749,9 +3758,9 @@ var InputGroup = ({
3749
3758
  ] });
3750
3759
  };
3751
3760
  const TextInputGroup = () => {
3752
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "my-1 relative", children: [
3753
- title ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3754
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3761
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "my-1 relative", children: [
3762
+ title ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3763
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3755
3764
  "input",
3756
3765
  {
3757
3766
  disabled,
@@ -3891,10 +3900,10 @@ var getColorByIndex = (index) => {
3891
3900
 
3892
3901
  // src/components/dropdowns/MediaDropdown.tsx
3893
3902
  var import_react11 = require("react");
3894
- var import_jsx_runtime16 = require("react/jsx-runtime");
3903
+ var import_jsx_runtime17 = require("react/jsx-runtime");
3895
3904
  var MediaDropdown = ({ id, answer, optionList }) => {
3896
3905
  const [showDropdown, setShowDropdown] = (0, import_react11.useState)(false);
3897
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
3906
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
3898
3907
  "div",
3899
3908
  {
3900
3909
  className: "w-full relative",
@@ -3905,17 +3914,17 @@ var MediaDropdown = ({ id, answer, optionList }) => {
3905
3914
  setShowDropdown(false);
3906
3915
  },
3907
3916
  children: [
3908
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "w-full flex flex-col items-center justify-center", children: answer }),
3909
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3917
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "w-full flex flex-col items-center justify-center", children: answer }),
3918
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3910
3919
  "ul",
3911
3920
  {
3912
3921
  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`,
3913
- children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
3922
+ children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
3914
3923
  "li",
3915
3924
  {
3916
3925
  className: `${option.listItemClassNames ? option.listItemClassNames : ""}`,
3917
3926
  children: [
3918
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3927
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3919
3928
  "div",
3920
3929
  {
3921
3930
  className: `w-full flex flex-col my-2 ${option.divClassNames ? option.divClassNames : ""}`,
@@ -3923,7 +3932,7 @@ var MediaDropdown = ({ id, answer, optionList }) => {
3923
3932
  children: option.media
3924
3933
  }
3925
3934
  ),
3926
- index !== optionList.length - 1 ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "w-full border my-1 border-catchup-light-blue rounded-catchup-full" }) : null
3935
+ index !== optionList.length - 1 ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "w-full border my-1 border-catchup-light-blue rounded-catchup-full" }) : null
3927
3936
  ]
3928
3937
  },
3929
3938
  option.id
@@ -3940,7 +3949,7 @@ var MediaDropdown_default = MediaDropdown;
3940
3949
  // src/components/activities/material-content/ShowMaterialMediaByContentType.tsx
3941
3950
  var import_react12 = require("react");
3942
3951
  var import_react_modal3 = __toESM(require("react-modal"));
3943
- var import_jsx_runtime17 = require("react/jsx-runtime");
3952
+ var import_jsx_runtime18 = require("react/jsx-runtime");
3944
3953
  var ShowMaterialMediaByContentType = ({
3945
3954
  key,
3946
3955
  contentType,
@@ -3968,7 +3977,7 @@ var ShowMaterialMediaByContentType = ({
3968
3977
  }
3969
3978
  }, [isLoaded, key]);
3970
3979
  const RenderShowFullScreenItem = () => {
3971
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3980
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3972
3981
  import_react_modal3.default,
3973
3982
  {
3974
3983
  isOpen: showFullScreen,
@@ -3999,8 +4008,8 @@ var ShowMaterialMediaByContentType = ({
3999
4008
  }
4000
4009
  },
4001
4010
  contentLabel: "",
4002
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex-1 flex flex-col", children: [
4003
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4011
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex-1 flex flex-col", children: [
4012
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4004
4013
  BaseImage_default,
4005
4014
  {
4006
4015
  src: "/icons/cross-red.webp",
@@ -4012,7 +4021,7 @@ var ShowMaterialMediaByContentType = ({
4012
4021
  }
4013
4022
  }
4014
4023
  ) }),
4015
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4024
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4016
4025
  BaseImage_default,
4017
4026
  {
4018
4027
  src: selectedFullScreenItem,
@@ -4025,14 +4034,14 @@ var ShowMaterialMediaByContentType = ({
4025
4034
  }
4026
4035
  );
4027
4036
  };
4028
- return contentType === "IMAGE" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { children: [
4037
+ return contentType === "IMAGE" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { children: [
4029
4038
  RenderShowFullScreenItem(),
4030
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
4039
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
4031
4040
  "div",
4032
4041
  {
4033
4042
  className: `${isFullHeight ? "h-catchup-activity-box-item" : "max-w-catchup-activity-box-item"} flex flex-col justify-center items-center relative`,
4034
4043
  children: [
4035
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4044
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4036
4045
  BaseImage_default,
4037
4046
  {
4038
4047
  src,
@@ -4045,7 +4054,7 @@ var ShowMaterialMediaByContentType = ({
4045
4054
  }
4046
4055
  }
4047
4056
  ),
4048
- src !== null && src !== "" && src !== "DEFAULT_OPTION" && canFullScreen ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4057
+ src !== null && src !== "" && src !== "DEFAULT_OPTION" && canFullScreen ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4049
4058
  "div",
4050
4059
  {
4051
4060
  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",
@@ -4057,7 +4066,7 @@ var ShowMaterialMediaByContentType = ({
4057
4066
  setShowFullScreen(true);
4058
4067
  setSelectedFullScreenItem(src);
4059
4068
  },
4060
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4069
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4061
4070
  BaseImage_default,
4062
4071
  {
4063
4072
  src: "/icons/arrow-up.webp",
@@ -4071,7 +4080,7 @@ var ShowMaterialMediaByContentType = ({
4071
4080
  ]
4072
4081
  }
4073
4082
  ) }) })
4074
- ] }, key) : contentType === "VIDEO" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "h-full flex flex-col justify-center items-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4083
+ ] }, key) : contentType === "VIDEO" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "h-full flex flex-col justify-center items-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4075
4084
  "video",
4076
4085
  {
4077
4086
  className: "h-catchup-activity-box-item rounded-catchup-xlarge",
@@ -4080,7 +4089,7 @@ var ShowMaterialMediaByContentType = ({
4080
4089
  onClick: () => {
4081
4090
  }
4082
4091
  }
4083
- ) }) }) }) : contentType === "AUDIO" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "h-full flex flex-col justify-center items-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4092
+ ) }) }) }) : contentType === "AUDIO" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "h-full flex flex-row flex-wrap items-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "h-full flex flex-col justify-center items-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4084
4093
  "audio",
4085
4094
  {
4086
4095
  className: "h-catchup-activity-box-item rounded-catchup-xlarge",
@@ -4094,7 +4103,7 @@ var ShowMaterialMediaByContentType = ({
4094
4103
  var ShowMaterialMediaByContentType_default = ShowMaterialMediaByContentType;
4095
4104
 
4096
4105
  // src/components/activities/material-content/DropdownActivityMaterialContent.tsx
4097
- var import_jsx_runtime18 = require("react/jsx-runtime");
4106
+ var import_jsx_runtime19 = require("react/jsx-runtime");
4098
4107
  var DropdownActivityMaterialContent = ({
4099
4108
  uniqueValue,
4100
4109
  answer,
@@ -4136,22 +4145,22 @@ var DropdownActivityMaterialContent = ({
4136
4145
  return "INCORRECT";
4137
4146
  };
4138
4147
  const answerMap = retrieveAnswerMap();
4139
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-row flex-wrap items-center", children: [
4140
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_dropdown_text") }) }),
4141
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DividerLine_default, {}) }),
4142
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
4148
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: "flex flex-row flex-wrap items-center", children: [
4149
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_dropdown_text") }) }),
4150
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DividerLine_default, {}) }),
4151
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
4143
4152
  const answerKey = Object.keys(materialMap[materialKey])[0];
4144
4153
  const learnerAnswerState = checkAnswerState(
4145
4154
  answerKey,
4146
4155
  answerMap[materialKey]
4147
4156
  );
4148
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
4149
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "my-auto", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("p", { className: "text-xl", children: [
4157
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
4158
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "my-auto", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("p", { className: "text-xl", children: [
4150
4159
  parseFloat(materialKey) + 1,
4151
4160
  "."
4152
4161
  ] }) }),
4153
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "w-full relative", children: [
4154
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4162
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: "w-full relative", children: [
4163
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4155
4164
  InputGroup_default,
4156
4165
  {
4157
4166
  type: "select",
@@ -4159,13 +4168,13 @@ var DropdownActivityMaterialContent = ({
4159
4168
  optionList: shuffleArray(
4160
4169
  materialMap[materialKey][answerKey]
4161
4170
  ).map((materialOption) => ({
4162
- text: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4171
+ text: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4163
4172
  materialOption
4164
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4173
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4165
4174
  "span",
4166
4175
  {
4167
4176
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4168
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4177
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4169
4178
  import_react_katex2.InlineMath,
4170
4179
  {
4171
4180
  math: inputPart.value
@@ -4180,11 +4189,11 @@ var DropdownActivityMaterialContent = ({
4180
4189
  onChange(answer, materialKey, e.target.value);
4181
4190
  }
4182
4191
  }
4183
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4192
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4184
4193
  MediaDropdown_default,
4185
4194
  {
4186
4195
  id: materialKey,
4187
- answer: answerMap[materialKey] === "DEFAULT_OPTION" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "w-catchup-activity-box-item border h-catchup-activity-box-item rounded-catchup-xlarge border-dashed border-catchup-blue", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "italic", children: i18n_default.t("please_select") }) }) }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4196
+ answer: answerMap[materialKey] === "DEFAULT_OPTION" ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "w-catchup-activity-box-item border h-catchup-activity-box-item rounded-catchup-xlarge border-dashed border-catchup-blue", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "italic", children: i18n_default.t("please_select") }) }) }) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4188
4197
  ShowMaterialMediaByContentType_default,
4189
4198
  {
4190
4199
  contentType: contentMap.type,
@@ -4196,7 +4205,7 @@ var DropdownActivityMaterialContent = ({
4196
4205
  optionList: materialMap[materialKey][answerKey].map(
4197
4206
  (materialOption, index2) => ({
4198
4207
  id: index2,
4199
- media: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4208
+ media: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4200
4209
  ShowMaterialMediaByContentType_default,
4201
4210
  {
4202
4211
  contentType: contentMap.type,
@@ -4215,24 +4224,24 @@ var DropdownActivityMaterialContent = ({
4215
4224
  })
4216
4225
  )
4217
4226
  }
4218
- ) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4227
+ ) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4219
4228
  answerMap[materialKey]
4220
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4229
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4221
4230
  "span",
4222
4231
  {
4223
4232
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4224
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_react_katex2.InlineMath, { math: inputPart.value }) }) : inputPart.value
4233
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react_katex2.InlineMath, { math: inputPart.value }) }) : inputPart.value
4225
4234
  },
4226
4235
  index2
4227
4236
  )) }) }),
4228
- learnerAnswerState === "CORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4237
+ learnerAnswerState === "CORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4229
4238
  BaseImage_default,
4230
4239
  {
4231
4240
  src: "/icons/checkbox.webp",
4232
4241
  alt: "chekbbox",
4233
4242
  size: "small"
4234
4243
  }
4235
- ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
4244
+ ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4236
4245
  BaseImage_default,
4237
4246
  {
4238
4247
  src: "/icons/cross-red.webp",
@@ -4248,7 +4257,7 @@ var DropdownActivityMaterialContent = ({
4248
4257
  var DropdownActivityMaterialContent_default = DropdownActivityMaterialContent;
4249
4258
 
4250
4259
  // src/components/activities/DropdownActivityContent.tsx
4251
- var import_jsx_runtime19 = require("react/jsx-runtime");
4260
+ var import_jsx_runtime20 = require("react/jsx-runtime");
4252
4261
  var DropdownActivityContent = ({
4253
4262
  answer,
4254
4263
  data,
@@ -4272,8 +4281,8 @@ var DropdownActivityContent = ({
4272
4281
  answerMap[key] = value;
4273
4282
  changeAnswer(answer2);
4274
4283
  };
4275
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
4276
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4284
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
4285
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4277
4286
  ActivityBodyContent_default,
4278
4287
  {
4279
4288
  bodyMap: dropdownBodyMap,
@@ -4282,9 +4291,9 @@ var DropdownActivityContent = ({
4282
4291
  templateType: "DROPDOWN"
4283
4292
  }
4284
4293
  ) }),
4285
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DividerLine_default, {}) }),
4286
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(VerticalDividerLine_default, {}) }),
4287
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4294
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DividerLine_default, {}) }),
4295
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(VerticalDividerLine_default, {}) }),
4296
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4288
4297
  DropdownActivityMaterialContent_default,
4289
4298
  {
4290
4299
  uniqueValue: JSON.stringify(data.contentMap),
@@ -4309,7 +4318,7 @@ var import_react_dnd3 = require("react-dnd");
4309
4318
 
4310
4319
  // src/components/dnds/DraggableItem.tsx
4311
4320
  var import_react_dnd = require("react-dnd");
4312
- var import_jsx_runtime20 = require("react/jsx-runtime");
4321
+ var import_jsx_runtime21 = require("react/jsx-runtime");
4313
4322
  var DraggableItem = ({
4314
4323
  key,
4315
4324
  item,
@@ -4331,11 +4340,11 @@ var DraggableItem = ({
4331
4340
  })
4332
4341
  });
4333
4342
  const opacity = isDragging ? 0.4 : 1;
4334
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4343
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
4335
4344
  "div",
4336
4345
  {
4337
4346
  className: `${isDragging ? "w-[0px] opacity-0" : "opacity-100"} transition-all duration-500`,
4338
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { ref: drag, className: "", style: { opacity }, children: component })
4347
+ children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { ref: drag, className: "", style: { opacity }, children: component })
4339
4348
  },
4340
4349
  key
4341
4350
  );
@@ -4345,7 +4354,7 @@ var DraggableItem_default = DraggableItem;
4345
4354
  // src/components/dnds/DroppableItem.tsx
4346
4355
  var import_react15 = require("react");
4347
4356
  var import_react_dnd2 = require("react-dnd");
4348
- var import_jsx_runtime21 = require("react/jsx-runtime");
4357
+ var import_jsx_runtime22 = require("react/jsx-runtime");
4349
4358
  var DroppableItem = ({
4350
4359
  key,
4351
4360
  item,
@@ -4365,7 +4374,7 @@ var DroppableItem = ({
4365
4374
  }
4366
4375
  });
4367
4376
  dropRef(drop(ref));
4368
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
4377
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4369
4378
  "div",
4370
4379
  {
4371
4380
  className: `w-full transition-all duration-500 h-full`,
@@ -4378,7 +4387,7 @@ var DroppableItem = ({
4378
4387
  var DroppableItem_default = DroppableItem;
4379
4388
 
4380
4389
  // src/components/activities/material-content/FillInTheBlanksActivityMaterialContent.tsx
4381
- var import_jsx_runtime22 = require("react/jsx-runtime");
4390
+ var import_jsx_runtime23 = require("react/jsx-runtime");
4382
4391
  var FillInTheBlanksActivityMaterialContent = ({
4383
4392
  uniqueValue,
4384
4393
  answer,
@@ -4436,12 +4445,12 @@ var FillInTheBlanksActivityMaterialContent = ({
4436
4445
  return Object.keys(answerMap2).findIndex((key) => answerMap2[key] === option) !== -1;
4437
4446
  };
4438
4447
  const answerMap = retrieveAnswerMap();
4439
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: "flex flex-row flex-wrap items-center", onMouseUp: () => {
4448
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "flex flex-row flex-wrap items-center", onMouseUp: () => {
4440
4449
  }, children: [
4441
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_fill_in_the_blanks_text") }) }),
4442
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DividerLine_default, {}) }),
4443
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "w-full flex flex-row flex-wrap gap-x-2 gap-y-2 my-2", children: shuffleOptionList.map(
4444
- (option, index) => checkAnswerProvided(answerMap, option) ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "opacity-30", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4450
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_fill_in_the_blanks_text") }) }),
4451
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DividerLine_default, {}) }),
4452
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "w-full flex flex-row flex-wrap gap-x-2 gap-y-2 my-2", children: shuffleOptionList.map(
4453
+ (option, index) => checkAnswerProvided(answerMap, option) ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "opacity-30", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4445
4454
  ShowMaterialMediaByContentType_default,
4446
4455
  {
4447
4456
  contentType: contentMap.type,
@@ -4449,12 +4458,12 @@ var FillInTheBlanksActivityMaterialContent = ({
4449
4458
  canFullScreen: true
4450
4459
  },
4451
4460
  `${uniqueValue}-${index}`
4452
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4461
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4453
4462
  DraggableItem_default,
4454
4463
  {
4455
4464
  item: { index: option },
4456
4465
  type: "FILL_IN_THE_BLANKS",
4457
- component: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4466
+ component: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4458
4467
  "div",
4459
4468
  {
4460
4469
  className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge cursor-pointer",
@@ -4462,9 +4471,9 @@ var FillInTheBlanksActivityMaterialContent = ({
4462
4471
  setSelectedOption(option);
4463
4472
  setPasteOptionIndex(null);
4464
4473
  },
4465
- children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("p", { className: "italic whitespace-pre-wrap", children: option })
4474
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("p", { className: "italic whitespace-pre-wrap", children: option })
4466
4475
  }
4467
- ) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4476
+ ) : /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4468
4477
  "div",
4469
4478
  {
4470
4479
  className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge cursor-pointer",
@@ -4472,7 +4481,7 @@ var FillInTheBlanksActivityMaterialContent = ({
4472
4481
  setSelectedOption(option);
4473
4482
  setPasteOptionIndex(null);
4474
4483
  },
4475
- children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4484
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4476
4485
  ShowMaterialMediaByContentType_default,
4477
4486
  {
4478
4487
  contentType: contentMap.type,
@@ -4490,12 +4499,12 @@ var FillInTheBlanksActivityMaterialContent = ({
4490
4499
  index
4491
4500
  )
4492
4501
  ) }),
4493
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
4502
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
4494
4503
  const learnerAnswerState = checkAnswerState(
4495
4504
  JSON.parse(materialMap[materialKey]),
4496
4505
  answerMap[materialKey]
4497
4506
  );
4498
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4507
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4499
4508
  DroppableItem_default,
4500
4509
  {
4501
4510
  item: { index },
@@ -4503,13 +4512,13 @@ var FillInTheBlanksActivityMaterialContent = ({
4503
4512
  target: pasteOptionIndex,
4504
4513
  setTarget: setPasteOptionIndex,
4505
4514
  dropRef: drop,
4506
- component: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
4507
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "my-auto", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("p", { className: "text-xl", children: [
4515
+ component: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
4516
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "my-auto", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("p", { className: "text-xl", children: [
4508
4517
  parseFloat(materialKey) + 1,
4509
4518
  "."
4510
4519
  ] }) }),
4511
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: "relative", children: [
4512
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4520
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "relative", children: [
4521
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4513
4522
  InputGroup_default,
4514
4523
  {
4515
4524
  type: "textarea",
@@ -4524,14 +4533,14 @@ var FillInTheBlanksActivityMaterialContent = ({
4524
4533
  }
4525
4534
  }
4526
4535
  ) }),
4527
- learnerAnswerState === "CORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4536
+ learnerAnswerState === "CORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4528
4537
  BaseImage_default,
4529
4538
  {
4530
4539
  src: "/icons/checkbox.webp",
4531
4540
  alt: "checkbox",
4532
4541
  size: "small"
4533
4542
  }
4534
- ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4543
+ ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4535
4544
  BaseImage_default,
4536
4545
  {
4537
4546
  src: "/icons/cross-red.webp",
@@ -4539,20 +4548,20 @@ var FillInTheBlanksActivityMaterialContent = ({
4539
4548
  size: "small"
4540
4549
  }
4541
4550
  ) }) : null
4542
- ] }) : answerMap[materialKey] === "" ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4551
+ ] }) : answerMap[materialKey] === "" ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4543
4552
  "div",
4544
4553
  {
4545
4554
  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"}`,
4546
- children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "italic", children: i18n_default.t("please_drop_here") }) })
4555
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "italic", children: i18n_default.t("please_drop_here") }) })
4547
4556
  }
4548
- ) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4557
+ ) : /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4549
4558
  "div",
4550
4559
  {
4551
4560
  className: "flex-1 cursor-pointer",
4552
4561
  onClick: () => {
4553
4562
  onChange(answer, materialKey, "");
4554
4563
  },
4555
- children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4564
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4556
4565
  ShowMaterialMediaByContentType_default,
4557
4566
  {
4558
4567
  contentType: contentMap.type,
@@ -4562,13 +4571,13 @@ var FillInTheBlanksActivityMaterialContent = ({
4562
4571
  `${uniqueValue}-${index}`
4563
4572
  )
4564
4573
  }
4565
- ) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
4574
+ ) : /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
4566
4575
  answerMap[materialKey]
4567
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4576
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4568
4577
  "span",
4569
4578
  {
4570
4579
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4571
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_react_katex3.InlineMath, { math: inputPart.value }) }) : inputPart.value
4580
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_react_katex3.InlineMath, { math: inputPart.value }) }) : inputPart.value
4572
4581
  },
4573
4582
  index2
4574
4583
  )) }, materialKey) })
@@ -4582,7 +4591,7 @@ var FillInTheBlanksActivityMaterialContent = ({
4582
4591
  var FillInTheBlanksActivityMaterialContent_default = FillInTheBlanksActivityMaterialContent;
4583
4592
 
4584
4593
  // src/components/activities/FillInTheBlanksActivityContent.tsx
4585
- var import_jsx_runtime23 = require("react/jsx-runtime");
4594
+ var import_jsx_runtime24 = require("react/jsx-runtime");
4586
4595
  var FillInTheBlanksActivityContent = ({
4587
4596
  answer,
4588
4597
  data,
@@ -4631,8 +4640,8 @@ var FillInTheBlanksActivityContent = ({
4631
4640
  answerMap[key] = value;
4632
4641
  changeAnswer(answer2);
4633
4642
  };
4634
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
4635
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4643
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
4644
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4636
4645
  ActivityBodyContent_default,
4637
4646
  {
4638
4647
  bodyMap: fillInTheBlanksBodyMap,
@@ -4641,9 +4650,9 @@ var FillInTheBlanksActivityContent = ({
4641
4650
  templateType: "FILL_IN_THE_BLANKS"
4642
4651
  }
4643
4652
  ) }),
4644
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DividerLine_default, {}) }),
4645
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(VerticalDividerLine_default, {}) }),
4646
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4653
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(DividerLine_default, {}) }),
4654
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(VerticalDividerLine_default, {}) }),
4655
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4647
4656
  FillInTheBlanksActivityMaterialContent_default,
4648
4657
  {
4649
4658
  uniqueValue: JSON.stringify(data.contentMap),
@@ -4702,7 +4711,7 @@ var useScreenSize = () => {
4702
4711
  var useScreenSize_default = useScreenSize;
4703
4712
 
4704
4713
  // src/components/activities/material-content/GroupingActivityMaterialContent.tsx
4705
- var import_jsx_runtime24 = require("react/jsx-runtime");
4714
+ var import_jsx_runtime25 = require("react/jsx-runtime");
4706
4715
  var GroupingActivityMaterialContent = ({
4707
4716
  uniqueValue,
4708
4717
  answer,
@@ -4807,19 +4816,19 @@ var GroupingActivityMaterialContent = ({
4807
4816
  };
4808
4817
  const answerMap = retrieveAnswerMap();
4809
4818
  const filteredMaterialList = retrieveFilteredMaterialList(answerMap);
4810
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(import_jsx_runtime24.Fragment, { children: [
4811
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4819
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [
4820
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4812
4821
  "div",
4813
4822
  {
4814
4823
  ref: itemsRef,
4815
4824
  className: "flex-1 flex flex-row gap-x-4 gap-y-4 overflow-auto py-2",
4816
4825
  children: filteredMaterialList.map((materialValue, index) => {
4817
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4826
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4818
4827
  DraggableItem_default,
4819
4828
  {
4820
4829
  item: { index: materialValue },
4821
4830
  type: "GROUPING",
4822
- component: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4831
+ component: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4823
4832
  "div",
4824
4833
  {
4825
4834
  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`,
@@ -4833,22 +4842,22 @@ var GroupingActivityMaterialContent = ({
4833
4842
  setSelectedValue(null);
4834
4843
  }
4835
4844
  },
4836
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4845
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4837
4846
  "div",
4838
4847
  {
4839
4848
  className: `flex flex-col items-center justify-center m-4 min-h-[64px] min-w-[200px]`,
4840
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4849
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4841
4850
  materialValue
4842
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4851
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4843
4852
  "span",
4844
4853
  {
4845
4854
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4846
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_react_katex4.InlineMath, { math: inputPart.value }) }) : inputPart.value
4855
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react_katex4.InlineMath, { math: inputPart.value }) }) : inputPart.value
4847
4856
  },
4848
4857
  index2
4849
4858
  )) })
4850
4859
  }
4851
- ) : /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4860
+ ) : /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4852
4861
  ShowMaterialMediaByContentType_default,
4853
4862
  {
4854
4863
  contentType: contentMap.type,
@@ -4873,22 +4882,22 @@ var GroupingActivityMaterialContent = ({
4873
4882
  })
4874
4883
  }
4875
4884
  ),
4876
- filteredMaterialList.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(DividerLine_default, {}) : null,
4877
- Object.keys(answerMap).map((answerMapKey, index) => /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: "flex flex-row w-full", children: [
4878
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "w-1/3", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4885
+ filteredMaterialList.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(DividerLine_default, {}) : null,
4886
+ Object.keys(answerMap).map((answerMapKey, index) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: "flex flex-row w-full", children: [
4887
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "w-1/3", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4879
4888
  "div",
4880
4889
  {
4881
4890
  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`,
4882
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4891
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4883
4892
  "div",
4884
4893
  {
4885
4894
  className: `flex flex-col items-center justify-center transition-all duration-300 m-4`,
4886
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
4887
- (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4895
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
4896
+ (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4888
4897
  "span",
4889
4898
  {
4890
4899
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4891
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_react_katex4.InlineMath, { math: inputPart.value }) }) : inputPart.value
4900
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react_katex4.InlineMath, { math: inputPart.value }) }) : inputPart.value
4892
4901
  },
4893
4902
  index2
4894
4903
  )
@@ -4897,12 +4906,12 @@ var GroupingActivityMaterialContent = ({
4897
4906
  )
4898
4907
  }
4899
4908
  ) }),
4900
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
4901
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "flex-1", ref, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "h-full py-3", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4909
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
4910
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "flex-1", ref, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "h-full py-3", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4902
4911
  "div",
4903
4912
  {
4904
4913
  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`,
4905
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4914
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4906
4915
  DroppableItem_default,
4907
4916
  {
4908
4917
  item: { index: answerMapKey },
@@ -4910,7 +4919,7 @@ var GroupingActivityMaterialContent = ({
4910
4919
  target: selectedTargetKey,
4911
4920
  setTarget: setSelectedTargetKey,
4912
4921
  dropRef: drop,
4913
- component: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4922
+ component: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4914
4923
  "div",
4915
4924
  {
4916
4925
  className: "h-full flex-1 flex flex-row items-center overflow-x-auto",
@@ -4923,7 +4932,7 @@ var GroupingActivityMaterialContent = ({
4923
4932
  materialMap[answerMapKey],
4924
4933
  answerMapValue
4925
4934
  );
4926
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "p-1", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "h-catchup-activity-box-item", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4935
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "p-1", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "h-catchup-activity-box-item", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4927
4936
  "div",
4928
4937
  {
4929
4938
  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`,
@@ -4939,17 +4948,17 @@ var GroupingActivityMaterialContent = ({
4939
4948
  setSelectedValue(null);
4940
4949
  }
4941
4950
  },
4942
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4951
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4943
4952
  "div",
4944
4953
  {
4945
4954
  className: `flex flex-col items-center justify-center transition-all duration-300 min-h-[64px] min-w-[200px]`,
4946
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4955
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4947
4956
  answerMapValue
4948
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4957
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4949
4958
  "span",
4950
4959
  {
4951
4960
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4952
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4961
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4953
4962
  import_react_katex4.InlineMath,
4954
4963
  {
4955
4964
  math: inputPart.value
@@ -4959,7 +4968,7 @@ var GroupingActivityMaterialContent = ({
4959
4968
  index2
4960
4969
  )) }) })
4961
4970
  }
4962
- ) : /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4971
+ ) : /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4963
4972
  ShowMaterialMediaByContentType_default,
4964
4973
  {
4965
4974
  contentType: contentMap.type,
@@ -4985,7 +4994,7 @@ var GroupingActivityMaterialContent = ({
4985
4994
  var GroupingActivityMaterialContent_default = GroupingActivityMaterialContent;
4986
4995
 
4987
4996
  // src/components/activities/GroupingActivityContent.tsx
4988
- var import_jsx_runtime25 = require("react/jsx-runtime");
4997
+ var import_jsx_runtime26 = require("react/jsx-runtime");
4989
4998
  var GroupingActivityContent = ({
4990
4999
  answer,
4991
5000
  data,
@@ -5010,16 +5019,16 @@ var GroupingActivityContent = ({
5010
5019
  }
5011
5020
  changeAnswer(answer2);
5012
5021
  };
5013
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [
5014
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
5022
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_jsx_runtime26.Fragment, { children: [
5023
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5015
5024
  ActivityBodyContent_default,
5016
5025
  {
5017
5026
  bodyMap: groupingBodyMap,
5018
5027
  templateType: "GROUPING"
5019
5028
  }
5020
5029
  ),
5021
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(DividerLine_default, {}),
5022
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
5030
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(DividerLine_default, {}),
5031
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5023
5032
  GroupingActivityMaterialContent_default,
5024
5033
  {
5025
5034
  uniqueValue: JSON.stringify(data.contentMap),
@@ -5040,7 +5049,7 @@ var GroupingActivityContent_default = GroupingActivityContent;
5040
5049
  var import_react20 = require("react");
5041
5050
  var import_react_dnd5 = require("react-dnd");
5042
5051
  var import_react_katex5 = require("react-katex");
5043
- var import_jsx_runtime26 = require("react/jsx-runtime");
5052
+ var import_jsx_runtime27 = require("react/jsx-runtime");
5044
5053
  var MatchingActivityMaterialContent = ({
5045
5054
  uniqueValue,
5046
5055
  answer,
@@ -5136,18 +5145,18 @@ var MatchingActivityMaterialContent = ({
5136
5145
  };
5137
5146
  const answerMap = retrieveAnswerMap();
5138
5147
  const filteredMaterialList = retrieveFilteredMaterialList(answerMap);
5139
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_jsx_runtime26.Fragment, { children: [
5140
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5148
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_jsx_runtime27.Fragment, { children: [
5149
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5141
5150
  "div",
5142
5151
  {
5143
5152
  ref: itemsRef,
5144
5153
  className: "flex-1 flex flex-row gap-x-4 gap-y-4 overflow-auto py-2",
5145
- children: filteredMaterialList.map((materialValue, index) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5154
+ children: filteredMaterialList.map((materialValue, index) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5146
5155
  DraggableItem_default,
5147
5156
  {
5148
5157
  item: { index: materialValue },
5149
5158
  type: "MATCHING",
5150
- component: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5159
+ component: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5151
5160
  "div",
5152
5161
  {
5153
5162
  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`,
@@ -5161,22 +5170,22 @@ var MatchingActivityMaterialContent = ({
5161
5170
  setSelectedValue(null);
5162
5171
  }
5163
5172
  },
5164
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5173
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5165
5174
  "div",
5166
5175
  {
5167
5176
  className: `flex flex-col items-center justify-center m-4 min-h-[64px] min-w-[200px]`,
5168
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5177
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5169
5178
  materialValue
5170
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5179
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5171
5180
  "span",
5172
5181
  {
5173
5182
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5174
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react_katex5.InlineMath, { math: inputPart.value }) }) : inputPart.value
5183
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_react_katex5.InlineMath, { math: inputPart.value }) }) : inputPart.value
5175
5184
  },
5176
5185
  index2
5177
5186
  )) })
5178
5187
  }
5179
- ) : /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5188
+ ) : /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5180
5189
  ShowMaterialMediaByContentType_default,
5181
5190
  {
5182
5191
  contentType: contentMap.type,
@@ -5200,27 +5209,27 @@ var MatchingActivityMaterialContent = ({
5200
5209
  ))
5201
5210
  }
5202
5211
  ),
5203
- filteredMaterialList.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(DividerLine_default, {}) : null,
5212
+ filteredMaterialList.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(DividerLine_default, {}) : null,
5204
5213
  Object.keys(answerMap).map((answerMapKey, index) => {
5205
5214
  const learnerAnswerState = checkAnswerState(
5206
5215
  materialMap[answerMapKey],
5207
5216
  answerMap[answerMapKey]
5208
5217
  );
5209
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: "flex flex-row w-full", children: [
5210
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "w-1/3", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5218
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex flex-row w-full", children: [
5219
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "w-1/3", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5211
5220
  "div",
5212
5221
  {
5213
5222
  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"}`,
5214
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5223
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5215
5224
  "div",
5216
5225
  {
5217
5226
  className: `flex flex-col items-center justify-center transition-all duration-300 m-4`,
5218
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
5219
- (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5227
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
5228
+ (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5220
5229
  "span",
5221
5230
  {
5222
5231
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5223
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react_katex5.InlineMath, { math: inputPart.value }) }) : inputPart.value
5232
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_react_katex5.InlineMath, { math: inputPart.value }) }) : inputPart.value
5224
5233
  },
5225
5234
  index2
5226
5235
  )
@@ -5229,8 +5238,8 @@ var MatchingActivityMaterialContent = ({
5229
5238
  )
5230
5239
  }
5231
5240
  ) }),
5232
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
5233
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5241
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
5242
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5234
5243
  "div",
5235
5244
  {
5236
5245
  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"}`,
@@ -5239,7 +5248,7 @@ var MatchingActivityMaterialContent = ({
5239
5248
  setSelectedValue(null);
5240
5249
  }
5241
5250
  },
5242
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5251
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5243
5252
  DroppableItem_default,
5244
5253
  {
5245
5254
  item: { index: answerMapKey },
@@ -5247,7 +5256,7 @@ var MatchingActivityMaterialContent = ({
5247
5256
  target: selectedTargetKey,
5248
5257
  setTarget: setSelectedTargetKey,
5249
5258
  dropRef: drop,
5250
- component: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5259
+ component: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5251
5260
  "div",
5252
5261
  {
5253
5262
  className: `h-full flex-1 flex flex-row items-center justify-center `,
@@ -5260,16 +5269,16 @@ var MatchingActivityMaterialContent = ({
5260
5269
  );
5261
5270
  }
5262
5271
  },
5263
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5272
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("p", { className: "text-xl p-5 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5264
5273
  answerMap[answerMapKey]
5265
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5274
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5266
5275
  "span",
5267
5276
  {
5268
5277
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5269
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react_katex5.InlineMath, { math: inputPart.value }) }) : inputPart.value
5278
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_react_katex5.InlineMath, { math: inputPart.value }) }) : inputPart.value
5270
5279
  },
5271
5280
  index2
5272
- )) }) : /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
5281
+ )) }) : /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5273
5282
  ShowMaterialMediaByContentType_default,
5274
5283
  {
5275
5284
  contentType: contentMap.type,
@@ -5292,7 +5301,7 @@ var MatchingActivityMaterialContent = ({
5292
5301
  var MatchingActivityMaterialContent_default = MatchingActivityMaterialContent;
5293
5302
 
5294
5303
  // src/components/activities/MatchingActivityContent.tsx
5295
- var import_jsx_runtime27 = require("react/jsx-runtime");
5304
+ var import_jsx_runtime28 = require("react/jsx-runtime");
5296
5305
  var MatchingActivityContent = ({
5297
5306
  answer,
5298
5307
  data,
@@ -5313,16 +5322,16 @@ var MatchingActivityContent = ({
5313
5322
  answerMap[key] = value;
5314
5323
  changeAnswer(answer2);
5315
5324
  };
5316
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_jsx_runtime27.Fragment, { children: [
5317
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5325
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_jsx_runtime28.Fragment, { children: [
5326
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5318
5327
  ActivityBodyContent_default,
5319
5328
  {
5320
5329
  bodyMap: matchingBodyMap,
5321
5330
  templateType: "MATCHING"
5322
5331
  }
5323
5332
  ),
5324
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(DividerLine_default, {}),
5325
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
5333
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(DividerLine_default, {}),
5334
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5326
5335
  MatchingActivityMaterialContent_default,
5327
5336
  {
5328
5337
  uniqueValue: JSON.stringify(data.contentMap),
@@ -5341,7 +5350,7 @@ var MatchingActivityContent_default = MatchingActivityContent;
5341
5350
 
5342
5351
  // src/components/activities/material-content/MCMAActivityMaterialContent.tsx
5343
5352
  var import_react_katex6 = require("react-katex");
5344
- var import_jsx_runtime28 = require("react/jsx-runtime");
5353
+ var import_jsx_runtime29 = require("react/jsx-runtime");
5345
5354
  var MCMAActivityMaterialContent = ({
5346
5355
  uniqueValue,
5347
5356
  answer,
@@ -5374,10 +5383,10 @@ var MCMAActivityMaterialContent = ({
5374
5383
  const answerMap = retrieveAnswerMap();
5375
5384
  const correctAnswerList = retrieveCorrectAnswerList();
5376
5385
  return Object.keys(materialMap).map((materialKey, index) => {
5377
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex flex-row items-center my-1", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex-1 flex flex-col justify-center border-catchup-lighter-gray rounded-catchup-xlarge px-5", children: [
5378
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcma_text") }) }),
5379
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(DividerLine_default, {}) }),
5380
- checkCanAnswerQuestion() ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex flex-row w-full flex-wrap ", children: materialMap[materialKey].map(
5386
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "flex flex-row items-center my-1", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: "flex-1 flex flex-col justify-center border-catchup-lighter-gray rounded-catchup-xlarge px-5", children: [
5387
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcma_text") }) }),
5388
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(DividerLine_default, {}) }),
5389
+ checkCanAnswerQuestion() ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "flex flex-row w-full flex-wrap ", children: materialMap[materialKey].map(
5381
5390
  (materialSubKey, index2) => {
5382
5391
  const foundAnswer = answerMap[materialKey].find(
5383
5392
  (learnerAnswer) => learnerAnswer === materialSubKey
@@ -5390,7 +5399,7 @@ var MCMAActivityMaterialContent = ({
5390
5399
  const foundIndex = correctAnswerList.findIndex(
5391
5400
  (correctAnswer) => correctAnswer === materialSubKey
5392
5401
  );
5393
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5402
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
5394
5403
  "div",
5395
5404
  {
5396
5405
  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" : ""}`,
@@ -5398,7 +5407,7 @@ var MCMAActivityMaterialContent = ({
5398
5407
  onChange(answer, materialKey, materialSubKey);
5399
5408
  },
5400
5409
  children: [
5401
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5410
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5402
5411
  BaseImage_default,
5403
5412
  {
5404
5413
  src: answerMap[materialKey].includes(materialSubKey) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -5408,16 +5417,16 @@ var MCMAActivityMaterialContent = ({
5408
5417
  }
5409
5418
  }
5410
5419
  ),
5411
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5420
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5412
5421
  materialSubKey
5413
- ).map((inputPart, index3) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5422
+ ).map((inputPart, index3) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5414
5423
  "span",
5415
5424
  {
5416
5425
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5417
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react_katex6.InlineMath, { math: inputPart.value }) }) : inputPart.value
5426
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_katex6.InlineMath, { math: inputPart.value }) }) : inputPart.value
5418
5427
  },
5419
5428
  index3
5420
- )) }) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5429
+ )) }) : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5421
5430
  ShowMaterialMediaByContentType_default,
5422
5431
  {
5423
5432
  contentType: contentMap.type,
@@ -5431,13 +5440,13 @@ var MCMAActivityMaterialContent = ({
5431
5440
  index2
5432
5441
  );
5433
5442
  }
5434
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
5443
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
5435
5444
  answerMap[materialKey]
5436
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5445
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5437
5446
  "span",
5438
5447
  {
5439
5448
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5440
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react_katex6.InlineMath, { math: inputPart.value }) }) : inputPart.value
5449
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_katex6.InlineMath, { math: inputPart.value }) }) : inputPart.value
5441
5450
  },
5442
5451
  index2
5443
5452
  )) }, materialKey)
@@ -5447,7 +5456,7 @@ var MCMAActivityMaterialContent = ({
5447
5456
  var MCMAActivityMaterialContent_default = MCMAActivityMaterialContent;
5448
5457
 
5449
5458
  // src/components/activities/MCMAActivityContent.tsx
5450
- var import_jsx_runtime29 = require("react/jsx-runtime");
5459
+ var import_jsx_runtime30 = require("react/jsx-runtime");
5451
5460
  var MCMAActivityContent = ({
5452
5461
  answer,
5453
5462
  data,
@@ -5474,11 +5483,11 @@ var MCMAActivityContent = ({
5474
5483
  }
5475
5484
  changeAnswer(answer2);
5476
5485
  };
5477
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
5478
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(ActivityBodyContent_default, { bodyMap: MCMABodyMap, templateType: "MCMA" }) }),
5479
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(DividerLine_default, {}) }),
5480
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(VerticalDividerLine_default, {}) }),
5481
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5486
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
5487
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ActivityBodyContent_default, { bodyMap: MCMABodyMap, templateType: "MCMA" }) }),
5488
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(DividerLine_default, {}) }),
5489
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(VerticalDividerLine_default, {}) }),
5490
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5482
5491
  MCMAActivityMaterialContent_default,
5483
5492
  {
5484
5493
  uniqueValue: JSON.stringify(data.contentMap),
@@ -5496,7 +5505,7 @@ var MCMAActivityContent_default = MCMAActivityContent;
5496
5505
 
5497
5506
  // src/components/activities/material-content/MCSAActivityMaterialContent.tsx
5498
5507
  var import_react_katex7 = require("react-katex");
5499
- var import_jsx_runtime30 = require("react/jsx-runtime");
5508
+ var import_jsx_runtime31 = require("react/jsx-runtime");
5500
5509
  var MCSAActivityMaterialContent = ({
5501
5510
  uniqueValue,
5502
5511
  answer,
@@ -5526,10 +5535,10 @@ var MCSAActivityMaterialContent = ({
5526
5535
  const answerMap = retrieveAnswerMap();
5527
5536
  const correctAnswer = retrieveCorrectAnswer();
5528
5537
  return Object.keys(materialMap).map((materialKey, index) => {
5529
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "flex flex-row items-center my-1", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex-1 flex flex-col justify-center border-catchup-lighter-gray rounded-catchup-xlarge px-5", children: [
5530
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcsa_text") }) }),
5531
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(DividerLine_default, {}) }),
5532
- checkCanAnswerQuestion() ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5538
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex flex-row items-center my-1", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex-1 flex flex-col justify-center border-catchup-lighter-gray rounded-catchup-xlarge px-5", children: [
5539
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcsa_text") }) }),
5540
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(DividerLine_default, {}) }),
5541
+ checkCanAnswerQuestion() ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5533
5542
  "div",
5534
5543
  {
5535
5544
  className: `flex flex-row w-full ${Object.keys(materialMap[materialKey]).length <= 4 ? "justify-center" : ""} flex-wrap`,
@@ -5540,7 +5549,7 @@ var MCSAActivityMaterialContent = ({
5540
5549
  materialSubKey,
5541
5550
  answerMap[materialKey]
5542
5551
  );
5543
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
5552
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5544
5553
  "div",
5545
5554
  {
5546
5555
  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" : ""}`,
@@ -5548,7 +5557,7 @@ var MCSAActivityMaterialContent = ({
5548
5557
  onChange(answer, materialKey, materialSubKey);
5549
5558
  },
5550
5559
  children: [
5551
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5560
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5552
5561
  BaseImage_default,
5553
5562
  {
5554
5563
  src: answerMap[materialKey] === materialSubKey ? "/icons/item-element.webp" : "/icons/not-selected-item-element.webp",
@@ -5558,16 +5567,16 @@ var MCSAActivityMaterialContent = ({
5558
5567
  }
5559
5568
  }
5560
5569
  ),
5561
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5570
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5562
5571
  materialSubKey
5563
- ).map((inputPart, index3) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5572
+ ).map((inputPart, index3) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5564
5573
  "span",
5565
5574
  {
5566
5575
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5567
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react_katex7.InlineMath, { math: inputPart.value }) }) : inputPart.value
5576
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react_katex7.InlineMath, { math: inputPart.value }) }) : inputPart.value
5568
5577
  },
5569
5578
  index3
5570
- )) }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5579
+ )) }) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5571
5580
  ShowMaterialMediaByContentType_default,
5572
5581
  {
5573
5582
  contentType: contentMap.type,
@@ -5583,13 +5592,13 @@ var MCSAActivityMaterialContent = ({
5583
5592
  }
5584
5593
  )
5585
5594
  }
5586
- ) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5595
+ ) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5587
5596
  answerMap[materialKey]
5588
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5597
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5589
5598
  "span",
5590
5599
  {
5591
5600
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5592
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react_katex7.InlineMath, { math: inputPart.value }) }) : inputPart.value
5601
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react_katex7.InlineMath, { math: inputPart.value }) }) : inputPart.value
5593
5602
  },
5594
5603
  index2
5595
5604
  )) })
@@ -5599,7 +5608,7 @@ var MCSAActivityMaterialContent = ({
5599
5608
  var MCSAActivityMaterialContent_default = MCSAActivityMaterialContent;
5600
5609
 
5601
5610
  // src/components/activities/MCSAActivityContent.tsx
5602
- var import_jsx_runtime31 = require("react/jsx-runtime");
5611
+ var import_jsx_runtime32 = require("react/jsx-runtime");
5603
5612
  var MCSAActivityContent = ({
5604
5613
  answer,
5605
5614
  data,
@@ -5619,11 +5628,11 @@ var MCSAActivityContent = ({
5619
5628
  answerMap[key] = value;
5620
5629
  changeAnswer(answer2);
5621
5630
  };
5622
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
5623
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ActivityBodyContent_default, { bodyMap: MCSABodyMap, templateType: "MCSA" }) }),
5624
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(DividerLine_default, {}) }),
5625
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(VerticalDividerLine_default, {}) }),
5626
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5631
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
5632
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ActivityBodyContent_default, { bodyMap: MCSABodyMap, templateType: "MCSA" }) }),
5633
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(DividerLine_default, {}) }),
5634
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(VerticalDividerLine_default, {}) }),
5635
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
5627
5636
  MCSAActivityMaterialContent_default,
5628
5637
  {
5629
5638
  uniqueValue: JSON.stringify(data.contentMap),
@@ -5640,7 +5649,7 @@ var MCSAActivityContent = ({
5640
5649
  var MCSAActivityContent_default = MCSAActivityContent;
5641
5650
 
5642
5651
  // src/components/activities/material-content/OpenEndedActivityMaterialContent.tsx
5643
- var import_jsx_runtime32 = require("react/jsx-runtime");
5652
+ var import_jsx_runtime33 = require("react/jsx-runtime");
5644
5653
  var OpenEndedActivityMaterialContent = ({
5645
5654
  answer,
5646
5655
  contentMap,
@@ -5661,12 +5670,9 @@ var OpenEndedActivityMaterialContent = ({
5661
5670
  const { answerMap: answerMap2 } = retrieveAnswer();
5662
5671
  return answerMap2;
5663
5672
  };
5664
- const checkShowContent = () => {
5665
- return false;
5666
- };
5667
5673
  const RenderTextContent = (answerMap2) => {
5668
5674
  const answerMapAnswer = answerMap2["ANSWER"];
5669
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
5675
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
5670
5676
  InputGroup_default,
5671
5677
  {
5672
5678
  type: "textarea",
@@ -5679,16 +5685,16 @@ var OpenEndedActivityMaterialContent = ({
5679
5685
  );
5680
5686
  };
5681
5687
  const answerMap = retrieveAnswerMap();
5682
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_jsx_runtime32.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "", children: [
5683
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_open_ended_text") }) }),
5684
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(DividerLine_default, {}) }),
5688
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_jsx_runtime33.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "", children: [
5689
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_open_ended_text") }) }),
5690
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(DividerLine_default, {}) }),
5685
5691
  contentMap.type === "TEXT" ? RenderTextContent(answerMap) : null
5686
5692
  ] }) });
5687
5693
  };
5688
5694
  var OpenEndedActivityMaterialContent_default = OpenEndedActivityMaterialContent;
5689
5695
 
5690
5696
  // src/components/activities/OpenEndedActivityContent.tsx
5691
- var import_jsx_runtime33 = require("react/jsx-runtime");
5697
+ var import_jsx_runtime34 = require("react/jsx-runtime");
5692
5698
  var OpenEndedActivityContent = ({
5693
5699
  answer,
5694
5700
  data,
@@ -5706,12 +5712,12 @@ var OpenEndedActivityContent = ({
5706
5712
  answerMap["ANSWER"] = value;
5707
5713
  changeAnswer(answer2);
5708
5714
  };
5709
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
5710
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
5715
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
5716
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
5711
5717
  "div",
5712
5718
  {
5713
5719
  className: `${showMaterialContent ? isFullScreen ? "w-full" : "w-full md:w-[40%]" : "w-full"}`,
5714
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
5720
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
5715
5721
  ActivityBodyContent_default,
5716
5722
  {
5717
5723
  bodyMap: openEndedBodyMap,
@@ -5720,16 +5726,16 @@ var OpenEndedActivityContent = ({
5720
5726
  )
5721
5727
  }
5722
5728
  ),
5723
- showMaterialContent ? /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_jsx_runtime33.Fragment, { children: [
5724
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
5729
+ showMaterialContent ? /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
5730
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
5725
5731
  "div",
5726
5732
  {
5727
5733
  className: `${isFullScreen ? "contents" : "contents md:hidden"}`,
5728
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(DividerLine_default, {})
5734
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(DividerLine_default, {})
5729
5735
  }
5730
5736
  ),
5731
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(VerticalDividerLine_default, {}) }),
5732
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
5737
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(VerticalDividerLine_default, {}) }),
5738
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
5733
5739
  OpenEndedActivityMaterialContent_default,
5734
5740
  {
5735
5741
  answer,
@@ -5750,7 +5756,7 @@ var import_react_katex8 = require("react-katex");
5750
5756
  // src/components/dnds/DraggableDroppableItem.tsx
5751
5757
  var import_react21 = require("react");
5752
5758
  var import_react_dnd6 = require("react-dnd");
5753
- var import_jsx_runtime34 = require("react/jsx-runtime");
5759
+ var import_jsx_runtime35 = require("react/jsx-runtime");
5754
5760
  var DraggableDroppableItem = ({
5755
5761
  key,
5756
5762
  item,
@@ -5788,12 +5794,12 @@ var DraggableDroppableItem = ({
5788
5794
  });
5789
5795
  const opacity = isDragging ? 0.4 : 1;
5790
5796
  drag(drop(ref));
5791
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
5797
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
5792
5798
  "div",
5793
5799
  {
5794
5800
  className: `${isDragging ? "w-[0px] opacity-0" : "w-full opacity-100"} transition-all duration-500`,
5795
5801
  ref: dropRef,
5796
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { ref, className: "w-full", style: { opacity }, children: component })
5802
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { ref, className: "w-full", style: { opacity }, children: component })
5797
5803
  },
5798
5804
  key
5799
5805
  );
@@ -5801,7 +5807,7 @@ var DraggableDroppableItem = ({
5801
5807
  var DraggableDroppableItem_default = DraggableDroppableItem;
5802
5808
 
5803
5809
  // src/components/activities/material-content/OrderingActivityMaterialContent.tsx
5804
- var import_jsx_runtime35 = require("react/jsx-runtime");
5810
+ var import_jsx_runtime36 = require("react/jsx-runtime");
5805
5811
  var OrderingActivityMaterialContent = ({
5806
5812
  uniqueValue,
5807
5813
  answer,
@@ -5878,12 +5884,12 @@ var OrderingActivityMaterialContent = ({
5878
5884
  return 0;
5879
5885
  };
5880
5886
  const answerMap = retrieveAnswerMap();
5881
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
5887
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
5882
5888
  const learnerAnswerState = checkAnswerState(
5883
5889
  answerMap[materialKey] + "",
5884
5890
  index + ""
5885
5891
  );
5886
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "w-full lg:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
5892
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "w-full lg:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
5887
5893
  "div",
5888
5894
  {
5889
5895
  className: `flex flex-row items-center my-4 mx-2`,
@@ -5891,26 +5897,26 @@ var OrderingActivityMaterialContent = ({
5891
5897
  marginTop: view === "PC" ? calculateMarginTop(parseFloat(materialKey)) : 0
5892
5898
  },
5893
5899
  children: [
5894
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "mr-3", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
5900
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "mr-3", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5895
5901
  "div",
5896
5902
  {
5897
5903
  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`,
5898
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
5904
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5899
5905
  "div",
5900
5906
  {
5901
5907
  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]`,
5902
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "", children: parseFloat(materialKey) + 1 })
5908
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: "", children: parseFloat(materialKey) + 1 })
5903
5909
  }
5904
5910
  )
5905
5911
  }
5906
5912
  ) }),
5907
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
5913
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5908
5914
  DraggableDroppableItem_default,
5909
5915
  {
5910
5916
  item: { index: materialKey },
5911
5917
  type: "ORDERING",
5912
5918
  dropRef: drop,
5913
- component: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
5919
+ component: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5914
5920
  "div",
5915
5921
  {
5916
5922
  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"}`,
@@ -5919,16 +5925,16 @@ var OrderingActivityMaterialContent = ({
5919
5925
  setSelectedKey(materialKey);
5920
5926
  }
5921
5927
  },
5922
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5928
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5923
5929
  materialMap[answerMap[materialKey]]
5924
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
5930
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5925
5931
  "span",
5926
5932
  {
5927
5933
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5928
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_react_katex8.InlineMath, { math: inputPart.value }) }) : inputPart.value
5934
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_react_katex8.InlineMath, { math: inputPart.value }) }) : inputPart.value
5929
5935
  },
5930
5936
  index2
5931
- )) }) : /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
5937
+ )) }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5932
5938
  ShowMaterialMediaByContentType_default,
5933
5939
  {
5934
5940
  contentType: contentMap.type,
@@ -5960,7 +5966,7 @@ var OrderingActivityMaterialContent = ({
5960
5966
  var OrderingActivityMaterialContent_default = OrderingActivityMaterialContent;
5961
5967
 
5962
5968
  // src/components/activities/OrderingActivityContent.tsx
5963
- var import_jsx_runtime36 = require("react/jsx-runtime");
5969
+ var import_jsx_runtime37 = require("react/jsx-runtime");
5964
5970
  var OrderingActivityContent = ({
5965
5971
  answer,
5966
5972
  data,
@@ -5983,16 +5989,16 @@ var OrderingActivityContent = ({
5983
5989
  answerMap[secondaryKey] = prevValue;
5984
5990
  changeAnswer(answer2);
5985
5991
  };
5986
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_jsx_runtime36.Fragment, { children: [
5987
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
5992
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
5993
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
5988
5994
  ActivityBodyContent_default,
5989
5995
  {
5990
5996
  bodyMap: orderingBodyMap,
5991
5997
  templateType: "ORDERING"
5992
5998
  }
5993
5999
  ),
5994
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(DividerLine_default, {}),
5995
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6000
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(DividerLine_default, {}),
6001
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
5996
6002
  OrderingActivityMaterialContent_default,
5997
6003
  {
5998
6004
  uniqueValue: JSON.stringify(data.contentMap),
@@ -6012,7 +6018,7 @@ var OrderingActivityContent_default = OrderingActivityContent;
6012
6018
  // src/components/activities/material-content/TrueFalseActivityMaterialContent.tsx
6013
6019
  var import_react23 = require("react");
6014
6020
  var import_react_katex9 = require("react-katex");
6015
- var import_jsx_runtime37 = require("react/jsx-runtime");
6021
+ var import_jsx_runtime38 = require("react/jsx-runtime");
6016
6022
  var TrueFalseActivityMaterialContent = ({
6017
6023
  uniqueValue,
6018
6024
  answer,
@@ -6065,14 +6071,14 @@ var TrueFalseActivityMaterialContent = ({
6065
6071
  return "INCORRECT";
6066
6072
  };
6067
6073
  const answerMap = retrieveAnswerMap();
6068
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "", children: [
6069
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_true_false_text") }) }),
6070
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(DividerLine_default, {}) }),
6071
- /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex flex-row justify-end items-center gap-x-2", children: [
6072
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "font-bold text-lg", children: i18n_default.t("true") }) }),
6073
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "font-bold text-lg", children: i18n_default.t("false") }) })
6074
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "", children: [
6075
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_true_false_text") }) }),
6076
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(DividerLine_default, {}) }),
6077
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-row justify-end items-center gap-x-2", children: [
6078
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "font-bold text-lg", children: i18n_default.t("true") }) }),
6079
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "font-bold text-lg", children: i18n_default.t("false") }) })
6074
6080
  ] }),
6075
- checkCanAnswerQuestion() ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: `flex flex-row w-full justify-center flex-wrap`, children: shuffleOptionList.map((shuffleOption, index) => {
6081
+ checkCanAnswerQuestion() ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: `flex flex-row w-full justify-center flex-wrap`, children: shuffleOptionList.map((shuffleOption, index) => {
6076
6082
  const correctAnswer = materialMap.trueList.find(
6077
6083
  (trueItem) => trueItem === shuffleOption
6078
6084
  ) !== void 0 ? "TRUE" : "FALSE";
@@ -6083,21 +6089,21 @@ var TrueFalseActivityMaterialContent = ({
6083
6089
  correctAnswer,
6084
6090
  learnerAnswer
6085
6091
  );
6086
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
6092
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
6087
6093
  "div",
6088
6094
  {
6089
6095
  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" : ""}`,
6090
6096
  children: [
6091
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "text-xl p-2 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6097
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "text-xl p-2 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6092
6098
  shuffleOption
6093
- ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
6099
+ ).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
6094
6100
  "span",
6095
6101
  {
6096
6102
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6097
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_react_katex9.InlineMath, { math: inputPart.value }) }) : inputPart.value
6103
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_react_katex9.InlineMath, { math: inputPart.value }) }) : inputPart.value
6098
6104
  },
6099
6105
  index2
6100
- )) }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
6106
+ )) }) : /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
6101
6107
  ShowMaterialMediaByContentType_default,
6102
6108
  {
6103
6109
  contentType: contentMap.type,
@@ -6106,8 +6112,8 @@ var TrueFalseActivityMaterialContent = ({
6106
6112
  },
6107
6113
  `${uniqueValue}-${index}`
6108
6114
  ) }),
6109
- /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6110
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
6115
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6116
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
6111
6117
  BaseImage_default,
6112
6118
  {
6113
6119
  src: answerMap.trueList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -6118,7 +6124,7 @@ var TrueFalseActivityMaterialContent = ({
6118
6124
  }
6119
6125
  }
6120
6126
  ) }) }),
6121
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
6127
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
6122
6128
  BaseImage_default,
6123
6129
  {
6124
6130
  src: answerMap.falseList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -6134,14 +6140,14 @@ var TrueFalseActivityMaterialContent = ({
6134
6140
  },
6135
6141
  index
6136
6142
  );
6137
- }) }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
6138
- answerMap.trueList.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6139
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { children: item }) }),
6140
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "underline", children: i18n_default.t("true") }) })
6143
+ }) }) : /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
6144
+ answerMap.trueList.map((item) => /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6145
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { children: item }) }),
6146
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "underline", children: i18n_default.t("true") }) })
6141
6147
  ] })),
6142
- answerMap.falseList.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6143
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { children: item }) }),
6144
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "underline", children: i18n_default.t("false") }) })
6148
+ answerMap.falseList.map((item) => /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6149
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { children: item }) }),
6150
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "underline", children: i18n_default.t("false") }) })
6145
6151
  ] }))
6146
6152
  ] })
6147
6153
  ] });
@@ -6149,7 +6155,7 @@ var TrueFalseActivityMaterialContent = ({
6149
6155
  var TrueFalseActivityMaterialContent_default = TrueFalseActivityMaterialContent;
6150
6156
 
6151
6157
  // src/components/activities/TrueFalseActivityContent.tsx
6152
- var import_jsx_runtime38 = require("react/jsx-runtime");
6158
+ var import_jsx_runtime39 = require("react/jsx-runtime");
6153
6159
  var TrueFalseActivityContent = ({
6154
6160
  answer,
6155
6161
  data,
@@ -6199,17 +6205,17 @@ var TrueFalseActivityContent = ({
6199
6205
  }
6200
6206
  changeAnswer(answer2);
6201
6207
  };
6202
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
6203
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[40%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
6208
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
6209
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[40%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
6204
6210
  ActivityBodyContent_default,
6205
6211
  {
6206
6212
  bodyMap: trueFalseBodyMap,
6207
6213
  templateType: "GROUPING"
6208
6214
  }
6209
6215
  ) }),
6210
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(DividerLine_default, {}) }),
6211
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(VerticalDividerLine_default, {}) }),
6212
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
6216
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(DividerLine_default, {}) }),
6217
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(VerticalDividerLine_default, {}) }),
6218
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
6213
6219
  TrueFalseActivityMaterialContent_default,
6214
6220
  {
6215
6221
  uniqueValue: JSON.stringify(data.contentMap),
@@ -6228,7 +6234,7 @@ var TrueFalseActivityContent_default = TrueFalseActivityContent;
6228
6234
 
6229
6235
  // src/components/activities/solution-content/ActivitySolutionContent.tsx
6230
6236
  var import_react_katex10 = require("react-katex");
6231
- var import_jsx_runtime39 = require("react/jsx-runtime");
6237
+ var import_jsx_runtime40 = require("react/jsx-runtime");
6232
6238
  var ActivitySolutionContent = ({
6233
6239
  activityTemplateType,
6234
6240
  data
@@ -6265,21 +6271,21 @@ var ActivitySolutionContent = ({
6265
6271
  const solutionMap = JSON.parse(solutionMapString);
6266
6272
  if (!solutionMap) return;
6267
6273
  if (Object.keys(solutionMap).length === 0) return;
6268
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
6269
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("solution") }),
6274
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
6275
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("solution") }),
6270
6276
  Object.keys(solutionMap).map((key, index) => {
6271
6277
  const currentItem = JSON.parse(solutionMap[key]);
6272
6278
  const { value } = currentItem;
6273
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("p", { className: "my-3", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
6279
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { className: "my-3", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
6274
6280
  "span",
6275
6281
  {
6276
6282
  className: "text-xl whitespace-pre-wrap",
6277
6283
  children: constructInputWithSpecialExpressionList(value).map(
6278
- (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
6284
+ (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
6279
6285
  "span",
6280
6286
  {
6281
6287
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6282
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_react_katex10.InlineMath, { math: inputPart.value }) }) : inputPart.value
6288
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_react_katex10.InlineMath, { math: inputPart.value }) }) : inputPart.value
6283
6289
  },
6284
6290
  index2
6285
6291
  )
@@ -6296,28 +6302,28 @@ var ActivitySolutionContent_default = ActivitySolutionContent;
6296
6302
  var import_react24 = require("react");
6297
6303
 
6298
6304
  // src/components/boxes/SelectionBox.tsx
6299
- var import_jsx_runtime40 = require("react/jsx-runtime");
6305
+ var import_jsx_runtime41 = require("react/jsx-runtime");
6300
6306
  var SelectionBox = ({
6301
6307
  optionList,
6302
6308
  selectedId,
6303
6309
  handleSelectOnClick
6304
6310
  }) => {
6305
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
6311
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6306
6312
  "div",
6307
6313
  {
6308
6314
  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`,
6309
6315
  onClick: () => {
6310
6316
  handleSelectOnClick(option.id);
6311
6317
  },
6312
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
6318
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
6313
6319
  "div",
6314
6320
  {
6315
6321
  className: `flex flex-row items-center gap-x-1 ${option.id === selectedId ? "opacity-100" : "opacity-50"}`,
6316
6322
  children: [
6317
6323
  option.icon,
6318
- /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "flex-1 flex flex-col items-center", children: [
6319
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { children: option.text }),
6320
- option.subText ? /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("p", { className: "text-md", children: [
6324
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "flex-1 flex flex-col items-center", children: [
6325
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { children: option.text }),
6326
+ option.subText ? /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("p", { className: "text-md", children: [
6321
6327
  "(",
6322
6328
  option.subText,
6323
6329
  ")"
@@ -6334,7 +6340,7 @@ var SelectionBox_default = SelectionBox;
6334
6340
 
6335
6341
  // src/components/activities/evaluation-rubric-content/ActivityEvaluationRubricContent.tsx
6336
6342
  var import_react_katex11 = require("react-katex");
6337
- var import_jsx_runtime41 = require("react/jsx-runtime");
6343
+ var import_jsx_runtime42 = require("react/jsx-runtime");
6338
6344
  var ActivityEvaluationRubricContent = ({
6339
6345
  activityTemplateType,
6340
6346
  data
@@ -6372,21 +6378,21 @@ var ActivityEvaluationRubricContent = ({
6372
6378
  const evaluationRubricMap = JSON.parse(evaluationRubricMapString);
6373
6379
  if (!evaluationRubricMap) return;
6374
6380
  if (Object.keys(evaluationRubricMap).length === 0) return;
6375
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "p-4 border-catchup-gray-400 border-2 rounded-catchup-xlarge", children: [
6376
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
6381
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "p-4 border-catchup-gray-400 border-2 rounded-catchup-xlarge", children: [
6382
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
6377
6383
  Object.keys(evaluationRubricMap).map((key, index) => {
6378
6384
  const currentItem = JSON.parse(evaluationRubricMap[key]);
6379
6385
  const { value } = currentItem;
6380
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: "my-3", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6386
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "my-3", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6381
6387
  "span",
6382
6388
  {
6383
6389
  className: "text-xl whitespace-pre-wrap",
6384
6390
  children: constructInputWithSpecialExpressionList(value).map(
6385
- (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6391
+ (inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6386
6392
  "span",
6387
6393
  {
6388
6394
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6389
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_react_katex11.InlineMath, { math: inputPart.value }) }) : inputPart.value
6395
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_react_katex11.InlineMath, { math: inputPart.value }) }) : inputPart.value
6390
6396
  },
6391
6397
  index2
6392
6398
  )
@@ -6400,7 +6406,7 @@ var ActivityEvaluationRubricContent = ({
6400
6406
  var ActivityEvaluationRubricContent_default = ActivityEvaluationRubricContent;
6401
6407
 
6402
6408
  // src/components/activities/ActivityPreviewByData.tsx
6403
- var import_jsx_runtime42 = require("react/jsx-runtime");
6409
+ var import_jsx_runtime43 = require("react/jsx-runtime");
6404
6410
  var ActivityPreviewByData = ({
6405
6411
  data,
6406
6412
  showType,
@@ -6483,10 +6489,10 @@ var ActivityPreviewByData = ({
6483
6489
  }, [data, lockedType, typeOptionList, showTaxonomy]);
6484
6490
  if (!data) return;
6485
6491
  const answer = constructAnswerBasedOnData(data);
6486
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { children: [
6487
- showType ? /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "mb-4", children: [
6488
- showDescription ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
6489
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6492
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { children: [
6493
+ showType ? /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "mb-4", children: [
6494
+ showDescription ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
6495
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6490
6496
  SelectionBox_default,
6491
6497
  {
6492
6498
  optionList,
@@ -6497,7 +6503,7 @@ var ActivityPreviewByData = ({
6497
6503
  }
6498
6504
  )
6499
6505
  ] }) : null,
6500
- selectedType ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "", children: selectedType === "ORDERING" && data["orderingBodyMap"] != null && data["orderingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6506
+ selectedType ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "", children: selectedType === "ORDERING" && data["orderingBodyMap"] != null && data["orderingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6501
6507
  OrderingActivityContent_default,
6502
6508
  {
6503
6509
  answer,
@@ -6511,7 +6517,7 @@ var ActivityPreviewByData = ({
6511
6517
  showCorrectAnswer: true,
6512
6518
  isFullScreen
6513
6519
  }
6514
- ) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6520
+ ) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6515
6521
  DropdownActivityContent_default,
6516
6522
  {
6517
6523
  answer,
@@ -6525,7 +6531,7 @@ var ActivityPreviewByData = ({
6525
6531
  showCorrectAnswer: true,
6526
6532
  isFullScreen
6527
6533
  }
6528
- ) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6534
+ ) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6529
6535
  MCSAActivityContent_default,
6530
6536
  {
6531
6537
  answer,
@@ -6539,7 +6545,7 @@ var ActivityPreviewByData = ({
6539
6545
  showCorrectAnswer: true,
6540
6546
  isFullScreen
6541
6547
  }
6542
- ) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6548
+ ) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6543
6549
  MCMAActivityContent_default,
6544
6550
  {
6545
6551
  answer,
@@ -6553,7 +6559,7 @@ var ActivityPreviewByData = ({
6553
6559
  showCorrectAnswer: true,
6554
6560
  isFullScreen
6555
6561
  }
6556
- ) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6562
+ ) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6557
6563
  MatchingActivityContent_default,
6558
6564
  {
6559
6565
  answer,
@@ -6567,7 +6573,7 @@ var ActivityPreviewByData = ({
6567
6573
  showCorrectAnswer: true,
6568
6574
  isFullScreen
6569
6575
  }
6570
- ) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6576
+ ) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6571
6577
  GroupingActivityContent_default,
6572
6578
  {
6573
6579
  answer,
@@ -6581,7 +6587,7 @@ var ActivityPreviewByData = ({
6581
6587
  showCorrectAnswer: true,
6582
6588
  isFullScreen
6583
6589
  }
6584
- ) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6590
+ ) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6585
6591
  FillInTheBlanksActivityContent_default,
6586
6592
  {
6587
6593
  answer,
@@ -6595,7 +6601,7 @@ var ActivityPreviewByData = ({
6595
6601
  showCorrectAnswer: true,
6596
6602
  isFullScreen
6597
6603
  }
6598
- ) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6604
+ ) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6599
6605
  OpenEndedActivityContent_default,
6600
6606
  {
6601
6607
  answer,
@@ -6605,7 +6611,7 @@ var ActivityPreviewByData = ({
6605
6611
  data,
6606
6612
  isFullScreen
6607
6613
  }
6608
- ) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6614
+ ) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6609
6615
  TrueFalseActivityContent_default,
6610
6616
  {
6611
6617
  answer,
@@ -6620,14 +6626,14 @@ var ActivityPreviewByData = ({
6620
6626
  isFullScreen
6621
6627
  }
6622
6628
  ) : null }, selectedType) : null,
6623
- selectedType && showSolution ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6629
+ selectedType && showSolution ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6624
6630
  ActivitySolutionContent_default,
6625
6631
  {
6626
6632
  activityTemplateType: selectedType,
6627
6633
  data
6628
6634
  }
6629
6635
  ) }) : null,
6630
- selectedType && showEvaluationRubric ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6636
+ selectedType && showEvaluationRubric ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6631
6637
  ActivityEvaluationRubricContent_default,
6632
6638
  {
6633
6639
  activityTemplateType: selectedType,
@@ -6639,9 +6645,9 @@ var ActivityPreviewByData = ({
6639
6645
  var ActivityPreviewByData_default = ActivityPreviewByData;
6640
6646
 
6641
6647
  // src/components/dividers/BlueVerticalDividerLine.tsx
6642
- var import_jsx_runtime43 = require("react/jsx-runtime");
6648
+ var import_jsx_runtime44 = require("react/jsx-runtime");
6643
6649
  var BlueVerticalDividerLine = ({ opacity }) => {
6644
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
6650
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6645
6651
  "div",
6646
6652
  {
6647
6653
  className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
@@ -6651,7 +6657,7 @@ var BlueVerticalDividerLine = ({ opacity }) => {
6651
6657
  var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
6652
6658
 
6653
6659
  // src/components/groups/LeftTextRightInputGroup.tsx
6654
- var import_jsx_runtime44 = require("react/jsx-runtime");
6660
+ var import_jsx_runtime45 = require("react/jsx-runtime");
6655
6661
  var LeftTextRightInputGroup = ({
6656
6662
  type,
6657
6663
  title,
@@ -6661,9 +6667,9 @@ var LeftTextRightInputGroup = ({
6661
6667
  disabled,
6662
6668
  errorText
6663
6669
  }) => {
6664
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "w-full flex flex-row mx-2", children: [
6665
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { children: title }) }),
6666
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6670
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: "w-full flex flex-row mx-2", children: [
6671
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { children: title }) }),
6672
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
6667
6673
  InputGroup_default,
6668
6674
  {
6669
6675
  type,
@@ -6679,14 +6685,14 @@ var LeftTextRightInputGroup = ({
6679
6685
  var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
6680
6686
 
6681
6687
  // src/components/boxes/SelectionCheckbox.tsx
6682
- var import_jsx_runtime45 = require("react/jsx-runtime");
6688
+ var import_jsx_runtime46 = require("react/jsx-runtime");
6683
6689
  var SelectionCheckbox = ({
6684
6690
  optionList,
6685
6691
  selectedIdList,
6686
6692
  handleSelectOnClick,
6687
6693
  handleRemoveOnClick
6688
6694
  }) => {
6689
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
6695
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
6690
6696
  "div",
6691
6697
  {
6692
6698
  className: `${selectedIdList.findIndex(
@@ -6701,14 +6707,14 @@ var SelectionCheckbox = ({
6701
6707
  handleRemoveOnClick(option.id);
6702
6708
  }
6703
6709
  },
6704
- children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
6710
+ children: /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
6705
6711
  "div",
6706
6712
  {
6707
6713
  className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
6708
6714
  (selectedId) => selectedId === option.id
6709
6715
  ) > -1 ? "opacity-100" : "opacity-50"}`,
6710
6716
  children: [
6711
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
6717
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
6712
6718
  BaseImage_default,
6713
6719
  {
6714
6720
  src: selectedIdList.findIndex(
@@ -6718,7 +6724,7 @@ var SelectionCheckbox = ({
6718
6724
  size: "small"
6719
6725
  }
6720
6726
  ),
6721
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { children: option.text }) })
6727
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { children: option.text }) })
6722
6728
  ]
6723
6729
  }
6724
6730
  )
@@ -6729,7 +6735,7 @@ var SelectionCheckbox = ({
6729
6735
  var SelectionCheckbox_default = SelectionCheckbox;
6730
6736
 
6731
6737
  // src/components/tabs/SelectionTab.tsx
6732
- var import_jsx_runtime46 = require("react/jsx-runtime");
6738
+ var import_jsx_runtime47 = require("react/jsx-runtime");
6733
6739
  var SelectionTab = ({
6734
6740
  optionList,
6735
6741
  selectedId,
@@ -6739,7 +6745,7 @@ var SelectionTab = ({
6739
6745
  textColor,
6740
6746
  borderColor
6741
6747
  }) => {
6742
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("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__ */ (0, import_jsx_runtime46.jsxs)(
6748
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("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__ */ (0, import_jsx_runtime47.jsxs)(
6743
6749
  "div",
6744
6750
  {
6745
6751
  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`,
@@ -6747,8 +6753,8 @@ var SelectionTab = ({
6747
6753
  handleSelectOnClick(option.id);
6748
6754
  },
6749
6755
  children: [
6750
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: "text-lg", children: option.title }),
6751
- option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: "text-md", children: option.subTitle }) : null
6756
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: "text-lg", children: option.title }),
6757
+ option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: "text-md", children: option.subTitle }) : null
6752
6758
  ]
6753
6759
  },
6754
6760
  index
@@ -6757,20 +6763,20 @@ var SelectionTab = ({
6757
6763
  var SelectionTab_default = SelectionTab;
6758
6764
 
6759
6765
  // src/components/tabs/SelectionTabFill.tsx
6760
- var import_jsx_runtime47 = require("react/jsx-runtime");
6766
+ var import_jsx_runtime48 = require("react/jsx-runtime");
6761
6767
  var SelectionTabFill = ({
6762
6768
  optionList,
6763
6769
  selectedId,
6764
6770
  handleSelectOnClick
6765
6771
  }) => {
6766
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("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__ */ (0, import_jsx_runtime47.jsx)(
6772
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("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__ */ (0, import_jsx_runtime48.jsx)(
6767
6773
  "div",
6768
6774
  {
6769
6775
  className: "cursor-pointer",
6770
6776
  onClick: () => {
6771
6777
  handleSelectOnClick(option.id);
6772
6778
  },
6773
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6779
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
6774
6780
  "p",
6775
6781
  {
6776
6782
  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`,
@@ -6784,57 +6790,57 @@ var SelectionTabFill = ({
6784
6790
  var SelectionTabFill_default = SelectionTabFill;
6785
6791
 
6786
6792
  // src/components/labels/ActivityTemplateLabel.tsx
6787
- var import_jsx_runtime48 = require("react/jsx-runtime");
6793
+ var import_jsx_runtime49 = require("react/jsx-runtime");
6788
6794
  var ActivityTemplateLabel = ({
6789
6795
  title,
6790
6796
  font
6791
6797
  }) => {
6792
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("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__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6793
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
6794
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: font ? font : "text-sm", children: title })
6798
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("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__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6799
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
6800
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: font ? font : "text-sm", children: title })
6795
6801
  ] }) });
6796
6802
  };
6797
6803
  var ActivityTemplateLabel_default = ActivityTemplateLabel;
6798
6804
 
6799
6805
  // src/components/labels/BrandLabel.tsx
6800
- var import_jsx_runtime49 = require("react/jsx-runtime");
6806
+ var import_jsx_runtime50 = require("react/jsx-runtime");
6801
6807
  var BrandLabel = ({ title, icon, font }) => {
6802
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("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__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6803
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
6804
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: font ? font : "text-sm", children: title })
6808
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("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__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6809
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
6810
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: font ? font : "text-sm", children: title })
6805
6811
  ] }) });
6806
6812
  };
6807
6813
  var BrandLabel_default = BrandLabel;
6808
6814
 
6809
6815
  // src/components/labels/CoterieLabel.tsx
6810
- var import_jsx_runtime50 = require("react/jsx-runtime");
6816
+ var import_jsx_runtime51 = require("react/jsx-runtime");
6811
6817
  var CoterieLabel = ({ title, font }) => {
6812
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("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__ */ (0, import_jsx_runtime50.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6818
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("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__ */ (0, import_jsx_runtime51.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6813
6819
  };
6814
6820
  var CoterieLabel_default = CoterieLabel;
6815
6821
 
6816
6822
  // src/components/labels/GradeLabel.tsx
6817
- var import_jsx_runtime51 = require("react/jsx-runtime");
6823
+ var import_jsx_runtime52 = require("react/jsx-runtime");
6818
6824
  var GradeLabel = ({ title, font }) => {
6819
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("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__ */ (0, import_jsx_runtime51.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6825
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("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__ */ (0, import_jsx_runtime52.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6820
6826
  };
6821
6827
  var GradeLabel_default = GradeLabel;
6822
6828
 
6823
6829
  // src/components/labels/OutcomeLabel.tsx
6824
- var import_jsx_runtime52 = require("react/jsx-runtime");
6830
+ var import_jsx_runtime53 = require("react/jsx-runtime");
6825
6831
  var OutcomeLabel = ({ title, font }) => {
6826
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("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__ */ (0, import_jsx_runtime52.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6827
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
6828
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("p", { className: font ? font : "text-sm", children: title })
6832
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("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__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6833
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
6834
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { className: font ? font : "text-sm", children: title })
6829
6835
  ] }) });
6830
6836
  };
6831
6837
  var OutcomeLabel_default = OutcomeLabel;
6832
6838
 
6833
6839
  // src/components/labels/PersonalLabel.tsx
6834
- var import_jsx_runtime53 = require("react/jsx-runtime");
6840
+ var import_jsx_runtime54 = require("react/jsx-runtime");
6835
6841
  var PersonalLabel = ({ title, icon, font }) => {
6836
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("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__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6837
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
6842
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("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__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6843
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
6838
6844
  BaseImage_default,
6839
6845
  {
6840
6846
  src: "/icons/personal-label.webp",
@@ -6842,16 +6848,16 @@ var PersonalLabel = ({ title, icon, font }) => {
6842
6848
  size: "xsmall"
6843
6849
  }
6844
6850
  ),
6845
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { className: font ? font : "text-sm", children: title })
6851
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("p", { className: font ? font : "text-sm", children: title })
6846
6852
  ] }) });
6847
6853
  };
6848
6854
  var PersonalLabel_default = PersonalLabel;
6849
6855
 
6850
6856
  // src/components/labels/PublishingHouseLabel.tsx
6851
- var import_jsx_runtime54 = require("react/jsx-runtime");
6857
+ var import_jsx_runtime55 = require("react/jsx-runtime");
6852
6858
  var PublishingHouseLabel = ({ title, icon, font }) => {
6853
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("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__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6854
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
6859
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("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__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6860
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6855
6861
  BaseImage_default,
6856
6862
  {
6857
6863
  src: "/icons/publishing-house-label.webp",
@@ -6859,79 +6865,79 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
6859
6865
  size: "xsmall"
6860
6866
  }
6861
6867
  ),
6862
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("p", { className: font ? font : "text-sm", children: title })
6868
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("p", { className: font ? font : "text-sm", children: title })
6863
6869
  ] }) });
6864
6870
  };
6865
6871
  var PublishingHouseLabel_default = PublishingHouseLabel;
6866
6872
 
6867
6873
  // src/components/labels/ActivityLabel.tsx
6868
- var import_jsx_runtime55 = require("react/jsx-runtime");
6874
+ var import_jsx_runtime56 = require("react/jsx-runtime");
6869
6875
  var ActivityLabel = ({ title, font }) => {
6870
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("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__ */ (0, import_jsx_runtime55.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6876
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("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__ */ (0, import_jsx_runtime56.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6871
6877
  };
6872
6878
  var ActivityLabel_default = ActivityLabel;
6873
6879
 
6874
6880
  // src/components/infos/InfoWithText.tsx
6875
- var import_jsx_runtime56 = require("react/jsx-runtime");
6881
+ var import_jsx_runtime57 = require("react/jsx-runtime");
6876
6882
  var InfoWithText = (props) => {
6877
6883
  const { value } = props;
6878
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6879
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
6880
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("p", { className: "", children: value }) })
6884
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6885
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
6886
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("p", { className: "", children: value }) })
6881
6887
  ] });
6882
6888
  };
6883
6889
  var InfoWithText_default = InfoWithText;
6884
6890
 
6885
6891
  // src/components/texts/InputWithSpecialExpression.tsx
6886
6892
  var import_react_katex12 = require("react-katex");
6887
- var import_jsx_runtime57 = require("react/jsx-runtime");
6893
+ var import_jsx_runtime58 = require("react/jsx-runtime");
6888
6894
  var InputWithSpecialExpression = ({
6889
6895
  value,
6890
6896
  showSpecialOnly
6891
6897
  }) => {
6892
6898
  const inputWithSpecialExpressionList = constructInputWithSpecialExpressionList(value);
6893
- return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6899
+ return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6894
6900
  "span",
6895
6901
  {
6896
6902
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6897
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6903
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6898
6904
  }
6899
- )) }) }) : null : /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6905
+ )) }) }) : null : /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6900
6906
  "span",
6901
6907
  {
6902
6908
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6903
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6909
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6904
6910
  }
6905
6911
  )) }) });
6906
6912
  };
6907
6913
  var InputWithSpecialExpression_default = InputWithSpecialExpression;
6908
6914
 
6909
6915
  // src/components/titles/BaseTitle.tsx
6910
- var import_jsx_runtime58 = require("react/jsx-runtime");
6916
+ var import_jsx_runtime59 = require("react/jsx-runtime");
6911
6917
  var BaseTitle = ({
6912
6918
  title,
6913
6919
  totalItemCount,
6914
6920
  itemName,
6915
6921
  description
6916
6922
  }) => {
6917
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex flex-col gap-y-2", children: [
6918
- /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("p", { className: "text-2xl font-medium", children: [
6923
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex flex-col gap-y-2", children: [
6924
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("p", { className: "text-2xl font-medium", children: [
6919
6925
  title,
6920
- totalItemCount && itemName ? /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("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: [
6926
+ totalItemCount && itemName ? /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("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: [
6921
6927
  totalItemCount,
6922
6928
  " ",
6923
6929
  itemName
6924
6930
  ] }) : null
6925
6931
  ] }),
6926
- description ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: "", children: description }) : null
6932
+ description ? /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "", children: description }) : null
6927
6933
  ] });
6928
6934
  };
6929
6935
  var BaseTitle_default = BaseTitle;
6930
6936
 
6931
6937
  // src/components/titles/SubTitle.tsx
6932
- var import_jsx_runtime59 = require("react/jsx-runtime");
6938
+ var import_jsx_runtime60 = require("react/jsx-runtime");
6933
6939
  var SubTitle = ({ title }) => {
6934
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
6940
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
6935
6941
  };
6936
6942
  var SubTitle_default = SubTitle;
6937
6943
 
@@ -9265,6 +9271,7 @@ var retrieveActivityMethodologyOptionList = () => {
9265
9271
  // Annotate the CommonJS export names for ESM import in node:
9266
9272
  0 && (module.exports = {
9267
9273
  ActivityBodyContent,
9274
+ ActivityEmptyContent,
9268
9275
  ActivityLabel,
9269
9276
  ActivityPreviewByData,
9270
9277
  ActivitySolutionContent,