catchup-library-web 2.6.10 → 2.6.12

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.mjs CHANGED
@@ -848,8 +848,60 @@ var ApproveButton = ({
848
848
  };
849
849
  var ApproveButton_default = ApproveButton;
850
850
 
851
- // src/components/cards/FullCard.tsx
851
+ // src/components/buttons/StartButton.tsx
852
+ import { useState as useState9 } from "react";
852
853
  import { jsx as jsx12 } from "react/jsx-runtime";
854
+ var StartButton = ({
855
+ title,
856
+ size,
857
+ onClick,
858
+ disabled
859
+ }) => {
860
+ const [loading, setLoading] = useState9(false);
861
+ const internalOnClick = (e) => __async(void 0, null, function* () {
862
+ e.stopPropagation();
863
+ if (loading) return;
864
+ if (disabled) return;
865
+ setLoading(true);
866
+ yield onClick();
867
+ setLoading(false);
868
+ });
869
+ let currentHeightClassName;
870
+ let currentLoadingSize;
871
+ if (size === "small") {
872
+ currentHeightClassName = "h-8";
873
+ currentLoadingSize = 14;
874
+ } else if (size === "medium") {
875
+ currentHeightClassName = "h-10";
876
+ currentLoadingSize = 16;
877
+ } else if (size === "large") {
878
+ currentHeightClassName = "h-12";
879
+ currentLoadingSize = 18;
880
+ } else if (size === "unlimited") {
881
+ currentLoadingSize = 14;
882
+ currentHeightClassName = "h-8";
883
+ }
884
+ return /* @__PURE__ */ jsx12(
885
+ "button",
886
+ {
887
+ className: `px-8 py-2.5 bg-gradient-to-r from-catchup-green to-catchup-hover-green text-catchup-white font-bold text-lg rounded-catchup-full shadow-card ${loading ? "" : disabled ? "opacity-50" : "hover:from-catchup-hover-green hover:to-catchup-green hover:shadow-full-card hover:scale-105"} transition-all duration-300 transform ${currentHeightClassName}`,
888
+ onClick: internalOnClick,
889
+ children: loading ? /* @__PURE__ */ jsx12(
890
+ BaseLoading_default,
891
+ {
892
+ height: currentLoadingSize,
893
+ width: currentLoadingSize,
894
+ primaryColor: "#ffffff",
895
+ secondaryColor: "#ffffff"
896
+ }
897
+ ) : /* @__PURE__ */ jsx12("div", { className: "flex flex-row justify-center items-center gap-x-2", children: /* @__PURE__ */ jsx12("p", { children: title }) })
898
+ }
899
+ );
900
+ };
901
+ var StartButton_default = StartButton;
902
+
903
+ // src/components/cards/FullCard.tsx
904
+ import { jsx as jsx13 } from "react/jsx-runtime";
853
905
  var FullCard = ({
854
906
  backgroundColor,
855
907
  borderColor,
@@ -857,7 +909,7 @@ var FullCard = ({
857
909
  usePadding,
858
910
  children
859
911
  }) => {
860
- return /* @__PURE__ */ jsx12(
912
+ return /* @__PURE__ */ jsx13(
861
913
  "div",
862
914
  {
863
915
  className: `min-h-full
@@ -865,7 +917,7 @@ var FullCard = ({
865
917
  ${borderColor ? borderColor : "border-catchup-gray-50"}
866
918
  ${opacity ? opacity : "opacity-100"}
867
919
  rounded-catchup-xlarge w-full `,
868
- children: /* @__PURE__ */ jsx12(
920
+ children: /* @__PURE__ */ jsx13(
869
921
  "div",
870
922
  {
871
923
  className: `flex flex-col mx-auto ${usePadding === false ? "p-0" : "p-6"} h-full`,
@@ -878,14 +930,14 @@ var FullCard = ({
878
930
  var FullCard_default = FullCard;
879
931
 
880
932
  // src/components/cards/BaseCard.tsx
881
- import { jsx as jsx13 } from "react/jsx-runtime";
933
+ import { jsx as jsx14 } from "react/jsx-runtime";
882
934
  var BaseCard = ({ children }) => {
883
- return /* @__PURE__ */ jsx13("div", { className: "flex flex-col justify-center items-center h-full", children: /* @__PURE__ */ jsx13("div", { className: "bg-catchup-white rounded-catchup-xlarge h-catchup-card w-catchup-card shadow-dropdown", children: /* @__PURE__ */ jsx13("div", { className: "flex flex-col mx-auto p-8 h-full", children }) }) });
935
+ return /* @__PURE__ */ jsx14("div", { className: "flex flex-col justify-center items-center h-full", children: /* @__PURE__ */ jsx14("div", { className: "bg-catchup-white rounded-catchup-xlarge h-catchup-card w-catchup-card shadow-dropdown", children: /* @__PURE__ */ jsx14("div", { className: "flex flex-col mx-auto p-8 h-full", children }) }) });
884
936
  };
885
937
  var BaseCard_default = BaseCard;
886
938
 
887
939
  // src/components/loading/BaseLoadingWithText.tsx
888
- import { useEffect as useEffect2, useState as useState9 } from "react";
940
+ import { useEffect as useEffect2, useState as useState10 } from "react";
889
941
 
890
942
  // src/language/i18n.ts
891
943
  import i18n from "i18next";
@@ -894,13 +946,13 @@ i18n.use(initReactI18next);
894
946
  var i18n_default = i18n;
895
947
 
896
948
  // src/components/loading/BaseLoadingWithText.tsx
897
- import { jsx as jsx14, jsxs as jsxs9 } from "react/jsx-runtime";
949
+ import { jsx as jsx15, jsxs as jsxs9 } from "react/jsx-runtime";
898
950
  var BaseLoadingWithText = (props) => {
899
951
  const { height, width, size, primaryColor, secondaryColor, hideText } = props;
900
- const [initialTimestamp, setInitialTimestamp] = useState9(
952
+ const [initialTimestamp, setInitialTimestamp] = useState10(
901
953
  (/* @__PURE__ */ new Date()).getTime()
902
954
  );
903
- const [currentTimestamp, setCurrentTimeStamp] = useState9(
955
+ const [currentTimestamp, setCurrentTimeStamp] = useState10(
904
956
  (/* @__PURE__ */ new Date()).getTime()
905
957
  );
906
958
  let timerId;
@@ -943,7 +995,7 @@ var BaseLoadingWithText = (props) => {
943
995
  }
944
996
  const loadingText = retrieveLoadingText();
945
997
  return /* @__PURE__ */ jsxs9("div", { className: "flex flex-col justify-center items-center", children: [
946
- /* @__PURE__ */ jsx14(
998
+ /* @__PURE__ */ jsx15(
947
999
  BaseLoading_default,
948
1000
  {
949
1001
  height,
@@ -953,12 +1005,12 @@ var BaseLoadingWithText = (props) => {
953
1005
  secondaryColor
954
1006
  }
955
1007
  ),
956
- !hideText && size !== "small" ? /* @__PURE__ */ jsx14(
1008
+ !hideText && size !== "small" ? /* @__PURE__ */ jsx15(
957
1009
  "div",
958
1010
  {
959
1011
  className: `${textClassName} text-center`,
960
1012
  style: { width: textWidth },
961
- children: /* @__PURE__ */ jsx14("p", { className: "font-bold", children: loadingText })
1013
+ children: /* @__PURE__ */ jsx15("p", { className: "font-bold", children: loadingText })
962
1014
  }
963
1015
  ) : null
964
1016
  ] });
@@ -969,7 +1021,7 @@ var BaseLoadingWithText_default = BaseLoadingWithText;
969
1021
  import Modal from "react-modal";
970
1022
 
971
1023
  // src/components/titles/BaseTitle.tsx
972
- import { jsx as jsx15, jsxs as jsxs10 } from "react/jsx-runtime";
1024
+ import { jsx as jsx16, jsxs as jsxs10 } from "react/jsx-runtime";
973
1025
  var BaseTitle = ({
974
1026
  title,
975
1027
  totalItemCount,
@@ -985,20 +1037,20 @@ var BaseTitle = ({
985
1037
  itemName
986
1038
  ] }) : null
987
1039
  ] }),
988
- description ? /* @__PURE__ */ jsx15("p", { className: "", children: description }) : null
1040
+ description ? /* @__PURE__ */ jsx16("p", { className: "", children: description }) : null
989
1041
  ] });
990
1042
  };
991
1043
  var BaseTitle_default = BaseTitle;
992
1044
 
993
1045
  // src/components/dividers/DividerLine.tsx
994
- import { jsx as jsx16 } from "react/jsx-runtime";
1046
+ import { jsx as jsx17 } from "react/jsx-runtime";
995
1047
  var DividerLine = () => {
996
- return /* @__PURE__ */ jsx16("div", { className: "bg-catchup-gray-50 h-[1px] w-full my-3" });
1048
+ return /* @__PURE__ */ jsx17("div", { className: "bg-catchup-gray-50 h-[1px] w-full my-3" });
997
1049
  };
998
1050
  var DividerLine_default = DividerLine;
999
1051
 
1000
1052
  // src/components/modals/BaseModal.tsx
1001
- import { jsx as jsx17, jsxs as jsxs11 } from "react/jsx-runtime";
1053
+ import { jsx as jsx18, jsxs as jsxs11 } from "react/jsx-runtime";
1002
1054
  var BaseModal = ({
1003
1055
  title,
1004
1056
  isOpen,
@@ -1007,7 +1059,7 @@ var BaseModal = ({
1007
1059
  onRequestClose,
1008
1060
  children
1009
1061
  }) => {
1010
- return /* @__PURE__ */ jsx17(
1062
+ return /* @__PURE__ */ jsx18(
1011
1063
  Modal,
1012
1064
  {
1013
1065
  isOpen,
@@ -1035,14 +1087,14 @@ var BaseModal = ({
1035
1087
  }
1036
1088
  },
1037
1089
  contentLabel: "",
1038
- children: /* @__PURE__ */ jsx17(
1090
+ children: /* @__PURE__ */ jsx18(
1039
1091
  "div",
1040
1092
  {
1041
1093
  className: `font-quicksand ${size === "small" ? "w-[600px]" : size === "medium" ? "w-[900px]" : "w-[600px] lg:w-[900px] xl:w-[1200px] 2xl:w-[1500px]"}`,
1042
1094
  children: /* @__PURE__ */ jsxs11(FullCard_default, { children: [
1043
1095
  /* @__PURE__ */ jsxs11("div", { className: "flex flex-row justify-between", children: [
1044
- /* @__PURE__ */ jsx17(BaseTitle_default, { title }),
1045
- /* @__PURE__ */ jsx17(
1096
+ /* @__PURE__ */ jsx18(BaseTitle_default, { title }),
1097
+ /* @__PURE__ */ jsx18(
1046
1098
  BaseImage_default,
1047
1099
  {
1048
1100
  src: "/icons/cross-red.webp",
@@ -1052,8 +1104,8 @@ var BaseModal = ({
1052
1104
  }
1053
1105
  )
1054
1106
  ] }),
1055
- /* @__PURE__ */ jsx17(DividerLine_default, {}),
1056
- /* @__PURE__ */ jsx17("div", { className: "max-h-[calc(98vh-120px)] overflow-auto", children })
1107
+ /* @__PURE__ */ jsx18(DividerLine_default, {}),
1108
+ /* @__PURE__ */ jsx18("div", { className: "max-h-[calc(98vh-120px)] overflow-auto", children })
1057
1109
  ] })
1058
1110
  }
1059
1111
  )
@@ -1063,20 +1115,20 @@ var BaseModal = ({
1063
1115
  var BaseModal_default = BaseModal;
1064
1116
 
1065
1117
  // src/components/pdfs/BasePDF.tsx
1066
- import { useState as useState10 } from "react";
1118
+ import { useState as useState11 } from "react";
1067
1119
  import { Document, Page } from "react-pdf";
1068
- import { jsx as jsx18, jsxs as jsxs12 } from "react/jsx-runtime";
1120
+ import { jsx as jsx19, jsxs as jsxs12 } from "react/jsx-runtime";
1069
1121
  var BasePDF = ({ file }) => {
1070
- const [pageNumber, setPageNumber] = useState10(1);
1071
- const [numberOfPages, setNumberOfPages] = useState10(0);
1122
+ const [pageNumber, setPageNumber] = useState11(1);
1123
+ const [numberOfPages, setNumberOfPages] = useState11(0);
1072
1124
  const handleOnDocumentLoadSuccess = ({ numPages }) => {
1073
1125
  setPageNumber(1);
1074
1126
  setNumberOfPages(numPages);
1075
1127
  };
1076
1128
  return /* @__PURE__ */ jsxs12(Document, { file, onLoadSuccess: handleOnDocumentLoadSuccess, children: [
1077
- /* @__PURE__ */ jsx18(Page, { pageNumber }),
1129
+ /* @__PURE__ */ jsx19(Page, { pageNumber }),
1078
1130
  /* @__PURE__ */ jsxs12("div", { className: "flex flex-row items-center justify-center", children: [
1079
- pageNumber === 1 ? null : /* @__PURE__ */ jsx18("div", { className: "px-2", children: /* @__PURE__ */ jsx18("div", { className: "cursor-pointer", children: /* @__PURE__ */ jsx18(
1131
+ pageNumber === 1 ? null : /* @__PURE__ */ jsx19("div", { className: "px-2", children: /* @__PURE__ */ jsx19("div", { className: "cursor-pointer", children: /* @__PURE__ */ jsx19(
1080
1132
  BaseImage_default,
1081
1133
  {
1082
1134
  alt: "arrow-left",
@@ -1087,7 +1139,7 @@ var BasePDF = ({ file }) => {
1087
1139
  }
1088
1140
  }
1089
1141
  ) }) }),
1090
- Array.from(Array(numberOfPages).keys()).filter((index) => index < pageNumber + 5).filter((index) => index > pageNumber - 5).map((index) => /* @__PURE__ */ jsx18("div", { className: "px-2", children: /* @__PURE__ */ jsx18(
1142
+ Array.from(Array(numberOfPages).keys()).filter((index) => index < pageNumber + 5).filter((index) => index > pageNumber - 5).map((index) => /* @__PURE__ */ jsx19("div", { className: "px-2", children: /* @__PURE__ */ jsx19(
1091
1143
  "p",
1092
1144
  {
1093
1145
  className: `${pageNumber === index + 1 ? "text-2xl" : "text-md"} cursor-pointer`,
@@ -1097,7 +1149,7 @@ var BasePDF = ({ file }) => {
1097
1149
  children: index + 1
1098
1150
  }
1099
1151
  ) }, index)),
1100
- numberOfPages === 0 || pageNumber === numberOfPages ? null : /* @__PURE__ */ jsx18("div", { className: "px-2", children: /* @__PURE__ */ jsx18("div", { className: "cursor-pointer", children: /* @__PURE__ */ jsx18(
1152
+ numberOfPages === 0 || pageNumber === numberOfPages ? null : /* @__PURE__ */ jsx19("div", { className: "px-2", children: /* @__PURE__ */ jsx19("div", { className: "cursor-pointer", children: /* @__PURE__ */ jsx19(
1101
1153
  BaseImage_default,
1102
1154
  {
1103
1155
  src: "/icons/arrow-right.webp",
@@ -1114,14 +1166,14 @@ var BasePDF = ({ file }) => {
1114
1166
  var BasePDF_default = BasePDF;
1115
1167
 
1116
1168
  // src/components/activities/empty-contents/ActivityEmptyContent.tsx
1117
- import { jsx as jsx19 } from "react/jsx-runtime";
1169
+ import { jsx as jsx20 } from "react/jsx-runtime";
1118
1170
  var ActivityEmptyContent = () => {
1119
- return /* @__PURE__ */ jsx19("div", { className: "flex flex-col items-center justify-center border-2 border-catchup-orange rounded-catchup-xlarge px-5 py-2 mb-2 bg-catchup-orange text-catchup-white", children: /* @__PURE__ */ jsx19("p", { className: "text-lg", children: i18n_default.t("you_have_set_this_activity_as_empty") }) });
1171
+ return /* @__PURE__ */ jsx20("div", { className: "flex flex-col items-center justify-center border-2 border-catchup-orange rounded-catchup-xlarge px-5 py-2 mb-2 bg-catchup-orange text-catchup-white", children: /* @__PURE__ */ jsx20("p", { className: "text-lg", children: i18n_default.t("you_have_set_this_activity_as_empty") }) });
1120
1172
  };
1121
1173
  var ActivityEmptyContent_default = ActivityEmptyContent;
1122
1174
 
1123
1175
  // src/components/activities/body-contents/ShowBodyMediaByContentType.tsx
1124
- import { useState as useState11 } from "react";
1176
+ import { useState as useState12 } from "react";
1125
1177
  import Modal2 from "react-modal";
1126
1178
 
1127
1179
  // src/utilization/CatchtivityUtilization.ts
@@ -3140,15 +3192,15 @@ var retrieveActivityCountOptionList = () => {
3140
3192
 
3141
3193
  // src/components/activities/body-contents/ShowBodyMediaByContentType.tsx
3142
3194
  import { InlineMath } from "react-katex";
3143
- import { jsx as jsx20, jsxs as jsxs13 } from "react/jsx-runtime";
3195
+ import { jsx as jsx21, jsxs as jsxs13 } from "react/jsx-runtime";
3144
3196
  var ShowBodyMediaByContentType = ({
3145
3197
  index,
3146
3198
  type,
3147
3199
  value,
3148
3200
  size
3149
3201
  }) => {
3150
- const [showFullScreen, setShowFullScreen] = useState11(false);
3151
- const [selectedFullScreenItem, setSelectedFullScreenItem] = useState11("");
3202
+ const [showFullScreen, setShowFullScreen] = useState12(false);
3203
+ const [selectedFullScreenItem, setSelectedFullScreenItem] = useState12("");
3152
3204
  const convertToPercentage = (size2) => {
3153
3205
  switch (size2) {
3154
3206
  case "1/3":
@@ -3162,17 +3214,17 @@ var ShowBodyMediaByContentType = ({
3162
3214
  }
3163
3215
  };
3164
3216
  const renderSpecialExpressions = (inputPart, inputPartIndex) => {
3165
- return /* @__PURE__ */ jsx20(
3217
+ return /* @__PURE__ */ jsx21(
3166
3218
  "span",
3167
3219
  {
3168
3220
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
3169
- children: inputPart.isEquation ? /* @__PURE__ */ jsx20("span", { className: "text-xl", children: /* @__PURE__ */ jsx20(InlineMath, { math: inputPart.value }) }) : inputPart.value
3221
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx21("span", { className: "text-xl", children: /* @__PURE__ */ jsx21(InlineMath, { math: inputPart.value }) }) : inputPart.value
3170
3222
  },
3171
3223
  inputPartIndex
3172
3224
  );
3173
3225
  };
3174
3226
  const renderTextContent = (text, itemKey) => {
3175
- return /* @__PURE__ */ jsx20("span", { className: "text-xl", children: constructInputWithSpecialExpressionList(text).map(
3227
+ return /* @__PURE__ */ jsx21("span", { className: "text-xl", children: constructInputWithSpecialExpressionList(text).map(
3176
3228
  (inputPart, inputPartIndex) => renderSpecialExpressions(inputPart, inputPartIndex)
3177
3229
  ) }, itemKey);
3178
3230
  };
@@ -3204,7 +3256,7 @@ var ShowBodyMediaByContentType = ({
3204
3256
  currentIndex++;
3205
3257
  const itemKey = `text-inside-${index}-${currentIndex}`;
3206
3258
  valuePartList.push(
3207
- /* @__PURE__ */ jsx20("span", { className: "text-xl font-bold", children: constructInputWithSpecialExpressionList(textInsideTag).map(
3259
+ /* @__PURE__ */ jsx21("span", { className: "text-xl font-bold", children: constructInputWithSpecialExpressionList(textInsideTag).map(
3208
3260
  (inputPart, inputPartIndex) => renderSpecialExpressions(inputPart, inputPartIndex)
3209
3261
  ) }, itemKey)
3210
3262
  );
@@ -3221,7 +3273,7 @@ var ShowBodyMediaByContentType = ({
3221
3273
  if (textBeforeTag.trim() !== "") {
3222
3274
  currentIndex++;
3223
3275
  valuePartList.push(
3224
- /* @__PURE__ */ jsx20(
3276
+ /* @__PURE__ */ jsx21(
3225
3277
  "p",
3226
3278
  {
3227
3279
  className: "text-xl",
@@ -3245,7 +3297,7 @@ var ShowBodyMediaByContentType = ({
3245
3297
  {
3246
3298
  className: "relative w-[200px]",
3247
3299
  children: [
3248
- /* @__PURE__ */ jsx20(
3300
+ /* @__PURE__ */ jsx21(
3249
3301
  BaseImage_default,
3250
3302
  {
3251
3303
  src: imageSource,
@@ -3254,12 +3306,12 @@ var ShowBodyMediaByContentType = ({
3254
3306
  className: "rounded-catchup-xlarge"
3255
3307
  }
3256
3308
  ),
3257
- /* @__PURE__ */ jsx20(
3309
+ /* @__PURE__ */ jsx21(
3258
3310
  "div",
3259
3311
  {
3260
3312
  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",
3261
3313
  onClick: () => handleOpenFullScreen(imageSource),
3262
- children: /* @__PURE__ */ jsx20(
3314
+ children: /* @__PURE__ */ jsx21(
3263
3315
  BaseImage_default,
3264
3316
  {
3265
3317
  src: "/icons/arrow-up.webp",
@@ -3288,7 +3340,7 @@ var ShowBodyMediaByContentType = ({
3288
3340
  if (textBeforeTag.trim() !== "") {
3289
3341
  currentIndex++;
3290
3342
  valuePartList.push(
3291
- /* @__PURE__ */ jsx20(
3343
+ /* @__PURE__ */ jsx21(
3292
3344
  "p",
3293
3345
  {
3294
3346
  className: "text-xl",
@@ -3307,7 +3359,7 @@ var ShowBodyMediaByContentType = ({
3307
3359
  );
3308
3360
  currentIndex++;
3309
3361
  valuePartList.push(
3310
- /* @__PURE__ */ jsx20(
3362
+ /* @__PURE__ */ jsx21(
3311
3363
  "video",
3312
3364
  {
3313
3365
  src: videoSource,
@@ -3330,7 +3382,7 @@ var ShowBodyMediaByContentType = ({
3330
3382
  if (textBeforeTag.trim() !== "") {
3331
3383
  currentIndex++;
3332
3384
  valuePartList.push(
3333
- /* @__PURE__ */ jsx20(
3385
+ /* @__PURE__ */ jsx21(
3334
3386
  "p",
3335
3387
  {
3336
3388
  className: "text-xl",
@@ -3349,7 +3401,7 @@ var ShowBodyMediaByContentType = ({
3349
3401
  );
3350
3402
  currentIndex++;
3351
3403
  valuePartList.push(
3352
- /* @__PURE__ */ jsx20(
3404
+ /* @__PURE__ */ jsx21(
3353
3405
  "audio",
3354
3406
  {
3355
3407
  src: audioSource,
@@ -3379,8 +3431,8 @@ var ShowBodyMediaByContentType = ({
3379
3431
  {
3380
3432
  className: "bg-catchup-gray-50 relative px-4 py-4 rounded-catchup-small mt-2",
3381
3433
  children: [
3382
- /* @__PURE__ */ jsx20("div", { className: "absolute -top-3 bg-catchup-white border rounded-catchup-small px-2 left-2", children: /* @__PURE__ */ jsx20("p", { className: "font-bold", children: i18n_default.t("image_description") }) }),
3383
- /* @__PURE__ */ jsx20("span", { className: "text-xl", children: imageText })
3434
+ /* @__PURE__ */ jsx21("div", { className: "absolute -top-3 bg-catchup-white border rounded-catchup-small px-2 left-2", children: /* @__PURE__ */ jsx21("p", { className: "font-bold", children: i18n_default.t("image_description") }) }),
3435
+ /* @__PURE__ */ jsx21("span", { className: "text-xl", children: imageText })
3384
3436
  ]
3385
3437
  },
3386
3438
  `img-desc-${index}-${currentIndex}`
@@ -3394,7 +3446,7 @@ var ShowBodyMediaByContentType = ({
3394
3446
  return valuePartList;
3395
3447
  };
3396
3448
  const RenderShowFullScreenItem = () => {
3397
- return /* @__PURE__ */ jsx20(
3449
+ return /* @__PURE__ */ jsx21(
3398
3450
  Modal2,
3399
3451
  {
3400
3452
  isOpen: showFullScreen,
@@ -3424,7 +3476,7 @@ var ShowBodyMediaByContentType = ({
3424
3476
  },
3425
3477
  contentLabel: "Image Fullscreen View",
3426
3478
  children: /* @__PURE__ */ jsxs13("div", { className: "flex-1 flex flex-col", children: [
3427
- /* @__PURE__ */ jsx20("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ jsx20(
3479
+ /* @__PURE__ */ jsx21("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ jsx21(
3428
3480
  BaseImage_default,
3429
3481
  {
3430
3482
  src: "/icons/cross-red.webp",
@@ -3436,7 +3488,7 @@ var ShowBodyMediaByContentType = ({
3436
3488
  }
3437
3489
  }
3438
3490
  ) }),
3439
- /* @__PURE__ */ jsx20("div", { className: "flex items-center justify-center h-[500]", children: /* @__PURE__ */ jsx20(
3491
+ /* @__PURE__ */ jsx21("div", { className: "flex items-center justify-center h-[500]", children: /* @__PURE__ */ jsx21(
3440
3492
  BaseImage_default,
3441
3493
  {
3442
3494
  src: selectedFullScreenItem,
@@ -3452,10 +3504,10 @@ var ShowBodyMediaByContentType = ({
3452
3504
  const RenderMainContent = () => {
3453
3505
  switch (type) {
3454
3506
  case "TEXT":
3455
- return /* @__PURE__ */ jsx20("div", { className: "mb-1 flex flex-row flex-wrap items-center mx-auto w-full", children: /* @__PURE__ */ jsx20("p", { className: "whitespace-pre-wrap", children: retrieveValueParts(value) }) });
3507
+ return /* @__PURE__ */ jsx21("div", { className: "mb-1 flex flex-row flex-wrap items-center mx-auto w-full", children: /* @__PURE__ */ jsx21("p", { className: "whitespace-pre-wrap", children: retrieveValueParts(value) }) });
3456
3508
  case "IMAGE":
3457
- return /* @__PURE__ */ jsx20("div", { className: "mb-1 flex flex-col items-center relative", children: /* @__PURE__ */ jsxs13("div", { className: "relative", children: [
3458
- /* @__PURE__ */ jsx20(
3509
+ return /* @__PURE__ */ jsx21("div", { className: "mb-1 flex flex-col items-center relative", children: /* @__PURE__ */ jsxs13("div", { className: "relative", children: [
3510
+ /* @__PURE__ */ jsx21(
3459
3511
  BaseImage_default,
3460
3512
  {
3461
3513
  src: value,
@@ -3465,12 +3517,12 @@ var ShowBodyMediaByContentType = ({
3465
3517
  imageClassName: "max-h-[50vh] max-w-full object-contain rounded-catchup-xlarge"
3466
3518
  }
3467
3519
  ),
3468
- /* @__PURE__ */ jsx20(
3520
+ /* @__PURE__ */ jsx21(
3469
3521
  "div",
3470
3522
  {
3471
3523
  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",
3472
3524
  onClick: () => handleOpenFullScreen(value),
3473
- children: /* @__PURE__ */ jsx20(
3525
+ children: /* @__PURE__ */ jsx21(
3474
3526
  BaseImage_default,
3475
3527
  {
3476
3528
  src: "/icons/arrow-up.webp",
@@ -3483,7 +3535,7 @@ var ShowBodyMediaByContentType = ({
3483
3535
  )
3484
3536
  ] }) });
3485
3537
  case "VIDEO":
3486
- return /* @__PURE__ */ jsx20("div", { className: "mb-1 flex flex-col items-center", children: /* @__PURE__ */ jsx20(
3538
+ return /* @__PURE__ */ jsx21("div", { className: "mb-1 flex flex-col items-center", children: /* @__PURE__ */ jsx21(
3487
3539
  "video",
3488
3540
  {
3489
3541
  src: value,
@@ -3492,7 +3544,7 @@ var ShowBodyMediaByContentType = ({
3492
3544
  }
3493
3545
  ) });
3494
3546
  case "AUDIO":
3495
- return /* @__PURE__ */ jsx20("div", { className: "mb-1 flex flex-col items-center", children: /* @__PURE__ */ jsx20("audio", { src: value, controls: true, className: "rounded-catchup-xlarge" }) });
3547
+ return /* @__PURE__ */ jsx21("div", { className: "mb-1 flex flex-col items-center", children: /* @__PURE__ */ jsx21("audio", { src: value, controls: true, className: "rounded-catchup-xlarge" }) });
3496
3548
  default:
3497
3549
  return null;
3498
3550
  }
@@ -3505,7 +3557,7 @@ var ShowBodyMediaByContentType = ({
3505
3557
  var ShowBodyMediaByContentType_default = ShowBodyMediaByContentType;
3506
3558
 
3507
3559
  // src/components/activities/body-contents/ActivityBodyContent.tsx
3508
- import { jsx as jsx21 } from "react/jsx-runtime";
3560
+ import { jsx as jsx22 } from "react/jsx-runtime";
3509
3561
  var ActivityBodyContent = ({
3510
3562
  templateType,
3511
3563
  bodyMap,
@@ -3586,7 +3638,7 @@ var ActivityBodyContent = ({
3586
3638
  key
3587
3639
  });
3588
3640
  }).filter(Boolean);
3589
- return /* @__PURE__ */ jsx21("div", { className: "flex flex-col", children: processedBodies.map((body, index) => /* @__PURE__ */ jsx21(
3641
+ return /* @__PURE__ */ jsx22("div", { className: "flex flex-col", children: processedBodies.map((body, index) => /* @__PURE__ */ jsx22(
3590
3642
  ShowBodyMediaByContentType_default,
3591
3643
  {
3592
3644
  index,
@@ -3600,9 +3652,9 @@ var ActivityBodyContent = ({
3600
3652
  var ActivityBodyContent_default = ActivityBodyContent;
3601
3653
 
3602
3654
  // src/components/dividers/VerticalDividerLine.tsx
3603
- import { jsx as jsx22 } from "react/jsx-runtime";
3655
+ import { jsx as jsx23 } from "react/jsx-runtime";
3604
3656
  var VerticalDividerLine = () => {
3605
- return /* @__PURE__ */ jsx22("div", { className: "bg-catchup-gray-50 h-full w-[1px] mx-3" });
3657
+ return /* @__PURE__ */ jsx23("div", { className: "bg-catchup-gray-50 h-full w-[1px] mx-3" });
3606
3658
  };
3607
3659
  var VerticalDividerLine_default = VerticalDividerLine;
3608
3660
 
@@ -3612,8 +3664,8 @@ import { InlineMath as InlineMath2 } from "react-katex";
3612
3664
  // src/components/groups/InputGroup.tsx
3613
3665
  import Select from "react-select";
3614
3666
  import Switch from "react-switch";
3615
- import { useEffect as useEffect3, useRef, useState as useState12, useCallback } from "react";
3616
- import { Fragment, jsx as jsx23, jsxs as jsxs14 } from "react/jsx-runtime";
3667
+ import { useEffect as useEffect3, useRef, useState as useState13, useCallback } from "react";
3668
+ import { Fragment, jsx as jsx24, jsxs as jsxs14 } from "react/jsx-runtime";
3617
3669
  var InputGroup = ({
3618
3670
  type,
3619
3671
  title,
@@ -3640,8 +3692,8 @@ var InputGroup = ({
3640
3692
  }) => {
3641
3693
  const textAreaRef = useRef(null);
3642
3694
  const latexTextAreaRef = useRef(null);
3643
- const [showMathConstructor, setShowMathConstructor] = useState12(false);
3644
- const [mathValue, setMathValue] = useState12("");
3695
+ const [showMathConstructor, setShowMathConstructor] = useState13(false);
3696
+ const [mathValue, setMathValue] = useState13("");
3645
3697
  const mathFieldRef = useRef(null);
3646
3698
  useEffect3(() => {
3647
3699
  if (!textAreaRef) return;
@@ -3728,7 +3780,7 @@ var InputGroup = ({
3728
3780
  setShowMathConstructor(true);
3729
3781
  };
3730
3782
  const MathConstructorModal = () => {
3731
- return /* @__PURE__ */ jsx23(
3783
+ return /* @__PURE__ */ jsx24(
3732
3784
  BaseModal_default,
3733
3785
  {
3734
3786
  title: i18n_default.t("math_editor"),
@@ -3739,8 +3791,8 @@ var InputGroup = ({
3739
3791
  onRequestClose: () => {
3740
3792
  setShowMathConstructor(false);
3741
3793
  },
3742
- children: /* @__PURE__ */ jsx23("div", { className: "bg-catchup-white rounded-lg overflow-hidden", children: /* @__PURE__ */ jsxs14("div", { className: "p-6 space-y-6", children: [
3743
- /* @__PURE__ */ jsx23("div", { children: /* @__PURE__ */ jsx23("div", { className: "border border-catchup-gray-100 rounded-catchup-large focus-within:border-catchup-blue-400 focus-within:shadow-input", children: /* @__PURE__ */ jsx23(
3794
+ children: /* @__PURE__ */ jsx24("div", { className: "bg-catchup-white rounded-lg overflow-hidden", children: /* @__PURE__ */ jsxs14("div", { className: "p-6 space-y-6", children: [
3795
+ /* @__PURE__ */ jsx24("div", { children: /* @__PURE__ */ jsx24("div", { className: "border border-catchup-gray-100 rounded-catchup-large focus-within:border-catchup-blue-400 focus-within:shadow-input", children: /* @__PURE__ */ jsx24(
3744
3796
  "math-field",
3745
3797
  {
3746
3798
  ref: mathFieldRef,
@@ -3767,9 +3819,9 @@ var InputGroup = ({
3767
3819
  }
3768
3820
  ) }) }),
3769
3821
  /* @__PURE__ */ jsxs14("div", { children: [
3770
- /* @__PURE__ */ jsx23("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: i18n_default.t("latex_output") }),
3822
+ /* @__PURE__ */ jsx24("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: i18n_default.t("latex_output") }),
3771
3823
  /* @__PURE__ */ jsxs14("div", { className: "relative", children: [
3772
- /* @__PURE__ */ jsx23(
3824
+ /* @__PURE__ */ jsx24(
3773
3825
  "textarea",
3774
3826
  {
3775
3827
  ref: latexTextAreaRef,
@@ -3779,7 +3831,7 @@ var InputGroup = ({
3779
3831
  placeholder: i18n_default.t("latex_will_appear_here")
3780
3832
  }
3781
3833
  ),
3782
- /* @__PURE__ */ jsx23(
3834
+ /* @__PURE__ */ jsx24(
3783
3835
  "button",
3784
3836
  {
3785
3837
  onClick: handleCopyLatex,
@@ -3801,7 +3853,7 @@ var InputGroup = ({
3801
3853
  className: "flex flex-row items-center gap-x-1 cursor-pointer",
3802
3854
  onClick,
3803
3855
  children: [
3804
- /* @__PURE__ */ jsx23(
3856
+ /* @__PURE__ */ jsx24(
3805
3857
  BaseImage_default,
3806
3858
  {
3807
3859
  src: value ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -3811,15 +3863,15 @@ var InputGroup = ({
3811
3863
  }
3812
3864
  }
3813
3865
  ),
3814
- /* @__PURE__ */ jsx23("p", { className: "", children: title })
3866
+ /* @__PURE__ */ jsx24("p", { className: "", children: title })
3815
3867
  ]
3816
3868
  }
3817
3869
  );
3818
3870
  };
3819
3871
  const FileInputGroup = () => {
3820
3872
  return /* @__PURE__ */ jsxs14("div", { className: "my-1", children: [
3821
- title ? /* @__PURE__ */ jsx23("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3822
- /* @__PURE__ */ jsx23(
3873
+ title ? /* @__PURE__ */ jsx24("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3874
+ /* @__PURE__ */ jsx24(
3823
3875
  "input",
3824
3876
  {
3825
3877
  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",
@@ -3837,8 +3889,8 @@ var InputGroup = ({
3837
3889
  };
3838
3890
  const DateInputGroup = () => {
3839
3891
  return /* @__PURE__ */ jsxs14("div", { className: "my-1", children: [
3840
- title ? /* @__PURE__ */ jsx23("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3841
- /* @__PURE__ */ jsx23(
3892
+ title ? /* @__PURE__ */ jsx24("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null,
3893
+ /* @__PURE__ */ jsx24(
3842
3894
  "input",
3843
3895
  {
3844
3896
  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`,
@@ -3856,8 +3908,8 @@ var InputGroup = ({
3856
3908
  };
3857
3909
  const SearchableSelectInputGroup = () => {
3858
3910
  return /* @__PURE__ */ jsxs14("div", { className: "my-1", children: [
3859
- title ? /* @__PURE__ */ jsx23("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400 ", children: title }) : null,
3860
- /* @__PURE__ */ jsx23(
3911
+ title ? /* @__PURE__ */ jsx24("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400 ", children: title }) : null,
3912
+ /* @__PURE__ */ jsx24(
3861
3913
  Select,
3862
3914
  {
3863
3915
  options: convertOptionListToSelectComponent(
@@ -3922,14 +3974,14 @@ var InputGroup = ({
3922
3974
  const TextAreaInputGroup = () => {
3923
3975
  return /* @__PURE__ */ jsxs14("div", { className: "my-1 flex-1 flex flex-col relative", children: [
3924
3976
  /* @__PURE__ */ jsxs14("div", { className: "flex flex-row justify-between items-center", children: [
3925
- /* @__PURE__ */ jsx23("div", { children: title ? /* @__PURE__ */ jsx23("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null }),
3926
- /* @__PURE__ */ jsx23("div", { children: value && limit ? /* @__PURE__ */ jsxs14("p", { className: "text-md font-semibold pr-2 py-1 text-catchup-gray-400", children: [
3977
+ /* @__PURE__ */ jsx24("div", { children: title ? /* @__PURE__ */ jsx24("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null }),
3978
+ /* @__PURE__ */ jsx24("div", { children: value && limit ? /* @__PURE__ */ jsxs14("p", { className: "text-md font-semibold pr-2 py-1 text-catchup-gray-400", children: [
3927
3979
  value.length,
3928
3980
  " / ",
3929
3981
  limit
3930
3982
  ] }) : null })
3931
3983
  ] }),
3932
- /* @__PURE__ */ jsx23(
3984
+ /* @__PURE__ */ jsx24(
3933
3985
  "textarea",
3934
3986
  {
3935
3987
  ref: textAreaRef,
@@ -3942,22 +3994,22 @@ var InputGroup = ({
3942
3994
  onKeyDown
3943
3995
  }
3944
3996
  ),
3945
- useMath && /* @__PURE__ */ jsx23(
3997
+ useMath && /* @__PURE__ */ jsx24(
3946
3998
  "button",
3947
3999
  {
3948
4000
  className: "absolute right-2 top-1/2 transform -translate-y-1/2 bg-catchup-blue-400 text-white rounded-md px-3 py-1 shadow-sm hover:bg-catchup-blue-500 transition-colors duration-200 z-10",
3949
4001
  onClick: handleOpenMathConstructor,
3950
4002
  type: "button",
3951
4003
  children: /* @__PURE__ */ jsxs14("div", { className: "flex items-center gap-x-1", children: [
3952
- /* @__PURE__ */ jsx23("span", { className: "text-sm font-medium", children: "\u{1D453}(x)" }),
3953
- /* @__PURE__ */ jsx23(
4004
+ /* @__PURE__ */ jsx24("span", { className: "text-sm font-medium", children: "\u{1D453}(x)" }),
4005
+ /* @__PURE__ */ jsx24(
3954
4006
  "svg",
3955
4007
  {
3956
4008
  className: "w-3 h-3",
3957
4009
  fill: "none",
3958
4010
  stroke: "currentColor",
3959
4011
  viewBox: "0 0 24 24",
3960
- children: /* @__PURE__ */ jsx23(
4012
+ children: /* @__PURE__ */ jsx24(
3961
4013
  "path",
3962
4014
  {
3963
4015
  strokeLinecap: "round",
@@ -3976,18 +4028,18 @@ var InputGroup = ({
3976
4028
  const TextInputGroup = () => {
3977
4029
  return /* @__PURE__ */ jsxs14("div", { className: "my-1 relative", children: [
3978
4030
  /* @__PURE__ */ jsxs14("div", { className: "flex flex-row justify-between items-center", children: [
3979
- /* @__PURE__ */ jsx23("div", { children: title ? /* @__PURE__ */ jsx23("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null }),
3980
- /* @__PURE__ */ jsx23("div", { children: value && limit ? /* @__PURE__ */ jsxs14("p", { className: "text-md font-semibold pr-2 py-1 text-catchup-gray-400", children: [
4031
+ /* @__PURE__ */ jsx24("div", { children: title ? /* @__PURE__ */ jsx24("p", { className: "text-md font-semibold pl-2 py-1 text-catchup-gray-400", children: title }) : null }),
4032
+ /* @__PURE__ */ jsx24("div", { children: value && limit ? /* @__PURE__ */ jsxs14("p", { className: "text-md font-semibold pr-2 py-1 text-catchup-gray-400", children: [
3981
4033
  value.length,
3982
4034
  " / ",
3983
4035
  limit
3984
4036
  ] }) : null })
3985
4037
  ] }),
3986
- /* @__PURE__ */ jsx23(
4038
+ /* @__PURE__ */ jsx24(
3987
4039
  "div",
3988
4040
  {
3989
4041
  className: `w-full border ${errorText ? "border-catchup-red shadow-error" : "border-catchup-gray-100"} rounded-catchup-large focus-within:border-catchup-blue-400 focus-within:shadow-input ${disabled ? "bg-catchup-lighter-gray" : "bg-catchup-white"}`,
3990
- children: /* @__PURE__ */ jsx23(
4042
+ children: /* @__PURE__ */ jsx24(
3991
4043
  "input",
3992
4044
  {
3993
4045
  disabled,
@@ -4005,22 +4057,22 @@ var InputGroup = ({
4005
4057
  )
4006
4058
  }
4007
4059
  ),
4008
- useMath && /* @__PURE__ */ jsx23(
4060
+ useMath && /* @__PURE__ */ jsx24(
4009
4061
  "button",
4010
4062
  {
4011
4063
  className: "absolute right-2 top-1/2 transform -translate-y-1/2 bg-catchup-blue-400 text-white rounded-md px-3 py-1 shadow-sm hover:bg-catchup-blue-500 transition-colors duration-200",
4012
4064
  onClick: handleOpenMathConstructor,
4013
4065
  type: "button",
4014
4066
  children: /* @__PURE__ */ jsxs14("div", { className: "flex items-center gap-x-1", children: [
4015
- /* @__PURE__ */ jsx23("span", { className: "text-sm font-medium", children: "\u{1D453}(x)" }),
4016
- /* @__PURE__ */ jsx23(
4067
+ /* @__PURE__ */ jsx24("span", { className: "text-sm font-medium", children: "\u{1D453}(x)" }),
4068
+ /* @__PURE__ */ jsx24(
4017
4069
  "svg",
4018
4070
  {
4019
4071
  className: "w-3 h-3",
4020
4072
  fill: "none",
4021
4073
  stroke: "currentColor",
4022
4074
  viewBox: "0 0 24 24",
4023
- children: /* @__PURE__ */ jsx23(
4075
+ children: /* @__PURE__ */ jsx24(
4024
4076
  "path",
4025
4077
  {
4026
4078
  strokeLinecap: "round",
@@ -4039,7 +4091,7 @@ var InputGroup = ({
4039
4091
  const SwitchInputGroup = () => {
4040
4092
  return /* @__PURE__ */ jsxs14("div", { className: "flex flex-col my-1", children: [
4041
4093
  /* @__PURE__ */ jsxs14("div", { className: "flex flex-row items-center", children: [
4042
- /* @__PURE__ */ jsx23(
4094
+ /* @__PURE__ */ jsx24(
4043
4095
  Switch,
4044
4096
  {
4045
4097
  onChange: () => {
@@ -4058,7 +4110,7 @@ var InputGroup = ({
4058
4110
  disabled
4059
4111
  }
4060
4112
  ),
4061
- /* @__PURE__ */ jsx23(
4113
+ /* @__PURE__ */ jsx24(
4062
4114
  "p",
4063
4115
  {
4064
4116
  className: `${checked ? "font-bold" : "text-catchup-gray"} px-2 transition-all duration-300`,
@@ -4066,7 +4118,7 @@ var InputGroup = ({
4066
4118
  }
4067
4119
  )
4068
4120
  ] }),
4069
- description ? /* @__PURE__ */ jsx23("p", { className: "text-md text-catchup-gray-300 mt-1 ml-12", children: description }) : null
4121
+ description ? /* @__PURE__ */ jsx24("p", { className: "text-md text-catchup-gray-300 mt-1 ml-12", children: description }) : null
4070
4122
  ] });
4071
4123
  };
4072
4124
  const RenderMainContent = () => {
@@ -4090,14 +4142,14 @@ var InputGroup = ({
4090
4142
  };
4091
4143
  return /* @__PURE__ */ jsxs14(Fragment, { children: [
4092
4144
  RenderMainContent(),
4093
- /* @__PURE__ */ jsx23(MathConstructorModal, {})
4145
+ /* @__PURE__ */ jsx24(MathConstructorModal, {})
4094
4146
  ] });
4095
4147
  };
4096
4148
  var InputGroup_default = InputGroup;
4097
4149
 
4098
4150
  // src/components/activities/material-contents/DropdownActivityMaterialContent.tsx
4099
4151
  import { useEffect as useEffect6 } from "react";
4100
- import { useState as useState15 } from "react";
4152
+ import { useState as useState16 } from "react";
4101
4153
 
4102
4154
  // src/utilization/AppUtilization.ts
4103
4155
  var colors = [
@@ -4221,10 +4273,10 @@ var getSystemLanguageFromCurriculumType = (curriculumType) => {
4221
4273
  };
4222
4274
 
4223
4275
  // src/components/dropdowns/MediaDropdown.tsx
4224
- import { useState as useState13, useEffect as useEffect4, useRef as useRef2 } from "react";
4225
- import { jsx as jsx24, jsxs as jsxs15 } from "react/jsx-runtime";
4276
+ import { useState as useState14, useEffect as useEffect4, useRef as useRef2 } from "react";
4277
+ import { jsx as jsx25, jsxs as jsxs15 } from "react/jsx-runtime";
4226
4278
  var MediaDropdown = ({ id, answer, optionList }) => {
4227
- const [showDropdown, setShowDropdown] = useState13(false);
4279
+ const [showDropdown, setShowDropdown] = useState14(false);
4228
4280
  const dropdownRef = useRef2(null);
4229
4281
  useEffect4(() => {
4230
4282
  const handleClickOutside = (event) => {
@@ -4253,7 +4305,7 @@ var MediaDropdown = ({ id, answer, optionList }) => {
4253
4305
  setShowDropdown(false);
4254
4306
  };
4255
4307
  return /* @__PURE__ */ jsxs15("div", { ref: dropdownRef, className: "w-full relative", children: [
4256
- /* @__PURE__ */ jsx24(
4308
+ /* @__PURE__ */ jsx25(
4257
4309
  "div",
4258
4310
  {
4259
4311
  className: "w-full flex flex-col items-center justify-center cursor-pointer",
@@ -4261,7 +4313,7 @@ var MediaDropdown = ({ id, answer, optionList }) => {
4261
4313
  children: answer
4262
4314
  }
4263
4315
  ),
4264
- /* @__PURE__ */ jsx24(
4316
+ /* @__PURE__ */ jsx25(
4265
4317
  "ul",
4266
4318
  {
4267
4319
  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`,
@@ -4270,7 +4322,7 @@ var MediaDropdown = ({ id, answer, optionList }) => {
4270
4322
  {
4271
4323
  className: `${option.listItemClassNames ? option.listItemClassNames : ""}`,
4272
4324
  children: [
4273
- /* @__PURE__ */ jsx24(
4325
+ /* @__PURE__ */ jsx25(
4274
4326
  "div",
4275
4327
  {
4276
4328
  className: `w-full flex flex-col my-2 cursor-pointer ${option.divClassNames ? option.divClassNames : ""}`,
@@ -4278,7 +4330,7 @@ var MediaDropdown = ({ id, answer, optionList }) => {
4278
4330
  children: option.media
4279
4331
  }
4280
4332
  ),
4281
- index !== optionList.length - 1 ? /* @__PURE__ */ jsx24("div", { className: "w-full border my-1 border-catchup-light-blue rounded-catchup-full" }) : null
4333
+ index !== optionList.length - 1 ? /* @__PURE__ */ jsx25("div", { className: "w-full border my-1 border-catchup-light-blue rounded-catchup-full" }) : null
4282
4334
  ]
4283
4335
  },
4284
4336
  option.id
@@ -4290,25 +4342,25 @@ var MediaDropdown = ({ id, answer, optionList }) => {
4290
4342
  var MediaDropdown_default = MediaDropdown;
4291
4343
 
4292
4344
  // src/components/activities/material-contents/ShowMaterialMediaByContentType.tsx
4293
- import { useEffect as useEffect5, useRef as useRef3, useState as useState14 } from "react";
4345
+ import { useEffect as useEffect5, useRef as useRef3, useState as useState15 } from "react";
4294
4346
  import Modal3 from "react-modal";
4295
- import { Fragment as Fragment2, jsx as jsx25, jsxs as jsxs16 } from "react/jsx-runtime";
4347
+ import { Fragment as Fragment2, jsx as jsx26, jsxs as jsxs16 } from "react/jsx-runtime";
4296
4348
  var ShowMaterialMediaByContentType = ({
4297
4349
  key,
4298
4350
  contentType,
4299
4351
  src,
4300
4352
  canFullScreen
4301
4353
  }) => {
4302
- const [showFullScreen, setShowFullScreen] = useState14(false);
4303
- const [selectedFullScreenItem, setSelectedFullScreenItem] = useState14(null);
4304
- const [isLoaded, setIsLoaded] = useState14(false);
4354
+ const [showFullScreen, setShowFullScreen] = useState15(false);
4355
+ const [selectedFullScreenItem, setSelectedFullScreenItem] = useState15(null);
4356
+ const [isLoaded, setIsLoaded] = useState15(false);
4305
4357
  const imageRef = useRef3(null);
4306
4358
  const videoRef = useRef3(null);
4307
4359
  useEffect5(() => {
4308
4360
  setIsLoaded(false);
4309
4361
  }, []);
4310
4362
  const RenderShowFullScreenItem = () => {
4311
- return /* @__PURE__ */ jsx25(
4363
+ return /* @__PURE__ */ jsx26(
4312
4364
  Modal3,
4313
4365
  {
4314
4366
  isOpen: showFullScreen,
@@ -4340,7 +4392,7 @@ var ShowMaterialMediaByContentType = ({
4340
4392
  },
4341
4393
  contentLabel: "",
4342
4394
  children: /* @__PURE__ */ jsxs16("div", { className: "flex-1 flex flex-col", children: [
4343
- /* @__PURE__ */ jsx25("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ jsx25(
4395
+ /* @__PURE__ */ jsx26("div", { className: "ml-auto px-5 py-3", children: /* @__PURE__ */ jsx26(
4344
4396
  BaseImage_default,
4345
4397
  {
4346
4398
  src: "/icons/cross-red.webp",
@@ -4352,7 +4404,7 @@ var ShowMaterialMediaByContentType = ({
4352
4404
  }
4353
4405
  }
4354
4406
  ) }),
4355
- /* @__PURE__ */ jsx25("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx25(
4407
+ /* @__PURE__ */ jsx26("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx26(
4356
4408
  BaseImage_default,
4357
4409
  {
4358
4410
  src: selectedFullScreenItem,
@@ -4367,8 +4419,8 @@ var ShowMaterialMediaByContentType = ({
4367
4419
  };
4368
4420
  return contentType === "IMAGE" ? /* @__PURE__ */ jsxs16(Fragment2, { children: [
4369
4421
  RenderShowFullScreenItem(),
4370
- /* @__PURE__ */ jsx25("div", { className: "my-2 w-full h-full", children: /* @__PURE__ */ jsx25("div", { className: "h-full flex items-center justify-center", children: /* @__PURE__ */ jsxs16("div", { className: "h-catchup-activity-media-box-item w-catchup-activity-media-box-item flex items-center justify-center relative", children: [
4371
- /* @__PURE__ */ jsx25(
4422
+ /* @__PURE__ */ jsx26("div", { className: "my-2 w-full h-full", children: /* @__PURE__ */ jsx26("div", { className: "h-full flex items-center justify-center", children: /* @__PURE__ */ jsxs16("div", { className: "h-catchup-activity-media-box-item w-catchup-activity-media-box-item flex items-center justify-center relative", children: [
4423
+ /* @__PURE__ */ jsx26(
4372
4424
  BaseImage_default,
4373
4425
  {
4374
4426
  src,
@@ -4383,7 +4435,7 @@ var ShowMaterialMediaByContentType = ({
4383
4435
  }
4384
4436
  }
4385
4437
  ),
4386
- src !== null && src !== "" && src !== "DEFAULT_OPTION" && canFullScreen ? /* @__PURE__ */ jsx25(
4438
+ src !== null && src !== "" && src !== "DEFAULT_OPTION" && canFullScreen ? /* @__PURE__ */ jsx26(
4387
4439
  "div",
4388
4440
  {
4389
4441
  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 bg-catchup-white bg-opacity-80",
@@ -4395,7 +4447,7 @@ var ShowMaterialMediaByContentType = ({
4395
4447
  setShowFullScreen(true);
4396
4448
  setSelectedFullScreenItem(src);
4397
4449
  },
4398
- children: /* @__PURE__ */ jsx25(
4450
+ children: /* @__PURE__ */ jsx26(
4399
4451
  BaseImage_default,
4400
4452
  {
4401
4453
  src: "/icons/arrow-up.webp",
@@ -4407,7 +4459,7 @@ var ShowMaterialMediaByContentType = ({
4407
4459
  }
4408
4460
  ) : null
4409
4461
  ] }) }) })
4410
- ] }) : contentType === "VIDEO" ? /* @__PURE__ */ jsx25("div", { className: "my-2 w-full h-full", children: /* @__PURE__ */ jsx25("div", { className: "h-full flex items-center justify-center", children: /* @__PURE__ */ jsx25("div", { className: "h-catchup-activity-media-box-item w-catchup-activity-media-box-item flex items-center justify-center", children: /* @__PURE__ */ jsx25(
4462
+ ] }) : contentType === "VIDEO" ? /* @__PURE__ */ jsx26("div", { className: "my-2 w-full h-full", children: /* @__PURE__ */ jsx26("div", { className: "h-full flex items-center justify-center", children: /* @__PURE__ */ jsx26("div", { className: "h-catchup-activity-media-box-item w-catchup-activity-media-box-item flex items-center justify-center", children: /* @__PURE__ */ jsx26(
4411
4463
  "video",
4412
4464
  {
4413
4465
  ref: videoRef,
@@ -4417,7 +4469,7 @@ var ShowMaterialMediaByContentType = ({
4417
4469
  onClick: () => {
4418
4470
  }
4419
4471
  }
4420
- ) }) }) }) : contentType === "AUDIO" ? /* @__PURE__ */ jsx25("div", { className: "my-2 w-full h-full", children: /* @__PURE__ */ jsx25("div", { className: "h-full flex items-center justify-center", children: /* @__PURE__ */ jsx25("div", { className: "h-catchup-activity-media-box-item w-catchup-activity-media-box-item flex items-center justify-center", children: /* @__PURE__ */ jsx25(
4472
+ ) }) }) }) : contentType === "AUDIO" ? /* @__PURE__ */ jsx26("div", { className: "my-2 w-full h-full", children: /* @__PURE__ */ jsx26("div", { className: "h-full flex items-center justify-center", children: /* @__PURE__ */ jsx26("div", { className: "h-catchup-activity-media-box-item w-catchup-activity-media-box-item flex items-center justify-center", children: /* @__PURE__ */ jsx26(
4421
4473
  "audio",
4422
4474
  {
4423
4475
  className: "w-full rounded-catchup-xlarge",
@@ -4431,7 +4483,7 @@ var ShowMaterialMediaByContentType = ({
4431
4483
  var ShowMaterialMediaByContentType_default = ShowMaterialMediaByContentType;
4432
4484
 
4433
4485
  // src/components/activities/material-contents/DropdownActivityMaterialContent.tsx
4434
- import { jsx as jsx26, jsxs as jsxs17 } from "react/jsx-runtime";
4486
+ import { jsx as jsx27, jsxs as jsxs17 } from "react/jsx-runtime";
4435
4487
  var DropdownActivityMaterialContent = ({
4436
4488
  uniqueValue,
4437
4489
  answerMap,
@@ -4442,7 +4494,7 @@ var DropdownActivityMaterialContent = ({
4442
4494
  isPreview,
4443
4495
  showCorrectAnswer
4444
4496
  }) => {
4445
- const [displayAnswerMap, setDisplayAnswerMap] = useState15(answerMap);
4497
+ const [displayAnswerMap, setDisplayAnswerMap] = useState16(answerMap);
4446
4498
  useEffect6(() => {
4447
4499
  if (showCorrectAnswer) {
4448
4500
  const correctAnswerMap = {};
@@ -4464,22 +4516,22 @@ var DropdownActivityMaterialContent = ({
4464
4516
  return "INCORRECT";
4465
4517
  };
4466
4518
  return /* @__PURE__ */ jsxs17("div", { className: "flex flex-col h-full", children: [
4467
- /* @__PURE__ */ jsx26("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx26("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_dropdown_text") }) }),
4468
- /* @__PURE__ */ jsx26("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx26(DividerLine_default, {}) }),
4469
- /* @__PURE__ */ jsx26("div", { className: "flex-1 min-h-0 overflow-y-auto", children: /* @__PURE__ */ jsx26("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(displayAnswerMap).map(
4519
+ /* @__PURE__ */ jsx27("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx27("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_dropdown_text") }) }),
4520
+ /* @__PURE__ */ jsx27("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx27(DividerLine_default, {}) }),
4521
+ /* @__PURE__ */ jsx27("div", { className: "flex-1 min-h-0 overflow-y-auto", children: /* @__PURE__ */ jsx27("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(displayAnswerMap).map(
4470
4522
  (materialKey, index) => {
4471
4523
  const answerKey = Object.keys(materialMap[materialKey])[0];
4472
4524
  const learnerAnswerState = checkAnswerState(
4473
4525
  answerKey,
4474
4526
  displayAnswerMap[materialKey]
4475
4527
  );
4476
- return /* @__PURE__ */ jsx26("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ jsx26("div", { className: "mx-2", children: /* @__PURE__ */ jsxs17("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
4477
- /* @__PURE__ */ jsx26("div", { className: "my-auto", children: /* @__PURE__ */ jsxs17("p", { className: "text-xl", children: [
4528
+ return /* @__PURE__ */ jsx27("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ jsx27("div", { className: "mx-2", children: /* @__PURE__ */ jsxs17("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
4529
+ /* @__PURE__ */ jsx27("div", { className: "my-auto", children: /* @__PURE__ */ jsxs17("p", { className: "text-xl", children: [
4478
4530
  parseFloat(materialKey) + 1,
4479
4531
  "."
4480
4532
  ] }) }),
4481
4533
  /* @__PURE__ */ jsxs17("div", { className: "w-full relative", children: [
4482
- /* @__PURE__ */ jsx26("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsx26("div", { className: "flex-1", children: /* @__PURE__ */ jsx26(
4534
+ /* @__PURE__ */ jsx27("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsx27("div", { className: "flex-1", children: /* @__PURE__ */ jsx27(
4483
4535
  InputGroup_default,
4484
4536
  {
4485
4537
  type: "select",
@@ -4487,13 +4539,13 @@ var DropdownActivityMaterialContent = ({
4487
4539
  optionList: shuffleArray(
4488
4540
  materialMap[materialKey][answerKey]
4489
4541
  ).map((materialOption) => ({
4490
- text: /* @__PURE__ */ jsx26("span", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4542
+ text: /* @__PURE__ */ jsx27("span", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4491
4543
  materialOption
4492
- ).map((inputPart, index2) => /* @__PURE__ */ jsx26(
4544
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx27(
4493
4545
  "span",
4494
4546
  {
4495
4547
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4496
- children: inputPart.isEquation ? /* @__PURE__ */ jsx26("span", { className: "text-xl", children: /* @__PURE__ */ jsx26(
4548
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx27("span", { className: "text-xl", children: /* @__PURE__ */ jsx27(
4497
4549
  InlineMath2,
4498
4550
  {
4499
4551
  math: inputPart.value
@@ -4512,11 +4564,11 @@ var DropdownActivityMaterialContent = ({
4512
4564
  );
4513
4565
  }
4514
4566
  }
4515
- ) }) : /* @__PURE__ */ jsx26(
4567
+ ) }) : /* @__PURE__ */ jsx27(
4516
4568
  MediaDropdown_default,
4517
4569
  {
4518
4570
  id: materialKey,
4519
- answer: displayAnswerMap[materialKey] === "DEFAULT_OPTION" ? /* @__PURE__ */ jsx26("div", { className: "w-catchup-activity-media-box-item h-catchup-activity-media-box-item border rounded-catchup-xlarge border-dashed border-catchup-blue", children: /* @__PURE__ */ jsx26("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ jsx26("span", { className: "italic", children: i18n_default.t("please_select") }) }) }) : /* @__PURE__ */ jsx26(
4571
+ answer: displayAnswerMap[materialKey] === "DEFAULT_OPTION" ? /* @__PURE__ */ jsx27("div", { className: "w-catchup-activity-media-box-item h-catchup-activity-media-box-item border rounded-catchup-xlarge border-dashed border-catchup-blue", children: /* @__PURE__ */ jsx27("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ jsx27("span", { className: "italic", children: i18n_default.t("please_select") }) }) }) : /* @__PURE__ */ jsx27(
4520
4572
  ShowMaterialMediaByContentType_default,
4521
4573
  {
4522
4574
  contentType: contentMap.type,
@@ -4527,7 +4579,7 @@ var DropdownActivityMaterialContent = ({
4527
4579
  ),
4528
4580
  optionList: materialMap[materialKey][answerKey].map((materialOption, index2) => ({
4529
4581
  id: index2,
4530
- media: /* @__PURE__ */ jsx26("div", { children: /* @__PURE__ */ jsx26(
4582
+ media: /* @__PURE__ */ jsx27("div", { children: /* @__PURE__ */ jsx27(
4531
4583
  ShowMaterialMediaByContentType_default,
4532
4584
  {
4533
4585
  contentType: contentMap.type,
@@ -4545,24 +4597,24 @@ var DropdownActivityMaterialContent = ({
4545
4597
  }
4546
4598
  }))
4547
4599
  }
4548
- ) : /* @__PURE__ */ jsx26("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4600
+ ) : /* @__PURE__ */ jsx27("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
4549
4601
  displayAnswerMap[materialKey]
4550
- ).map((inputPart, index2) => /* @__PURE__ */ jsx26(
4602
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx27(
4551
4603
  "span",
4552
4604
  {
4553
4605
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4554
- children: inputPart.isEquation ? /* @__PURE__ */ jsx26("span", { className: "text-xl", children: /* @__PURE__ */ jsx26(InlineMath2, { math: inputPart.value }) }) : inputPart.value
4606
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx27("span", { className: "text-xl", children: /* @__PURE__ */ jsx27(InlineMath2, { math: inputPart.value }) }) : inputPart.value
4555
4607
  },
4556
4608
  index2
4557
4609
  )) }) }),
4558
- learnerAnswerState === "CORRECT" ? /* @__PURE__ */ jsx26("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ jsx26(
4610
+ learnerAnswerState === "CORRECT" ? /* @__PURE__ */ jsx27("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ jsx27(
4559
4611
  BaseImage_default,
4560
4612
  {
4561
4613
  src: "/icons/checkbox.webp",
4562
4614
  alt: "chekbbox",
4563
4615
  size: "small"
4564
4616
  }
4565
- ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ jsx26("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ jsx26(
4617
+ ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ jsx27("div", { className: "absolute -top-2 right-3 bg-catchup-white", children: /* @__PURE__ */ jsx27(
4566
4618
  BaseImage_default,
4567
4619
  {
4568
4620
  src: "/icons/cross-red.webp",
@@ -4579,8 +4631,8 @@ var DropdownActivityMaterialContent = ({
4579
4631
  var DropdownActivityMaterialContent_default = DropdownActivityMaterialContent;
4580
4632
 
4581
4633
  // src/components/activities/DropdownActivityContent.tsx
4582
- import { useState as useState16, useEffect as useEffect7 } from "react";
4583
- import { jsx as jsx27, jsxs as jsxs18 } from "react/jsx-runtime";
4634
+ import { useState as useState17, useEffect as useEffect7 } from "react";
4635
+ import { jsx as jsx28, jsxs as jsxs18 } from "react/jsx-runtime";
4584
4636
  var DropdownActivityContent = ({
4585
4637
  answerMap,
4586
4638
  data,
@@ -4593,7 +4645,7 @@ var DropdownActivityContent = ({
4593
4645
  const contentMap = parseContentMapFromData(data);
4594
4646
  const dropdownBodyMap = parseBodyMapFromData(data, "DROPDOWN");
4595
4647
  const dropdownMaterialMap = parseMaterialMapFromData(data, "DROPDOWN");
4596
- const [currentAnswerMap, setCurrentAnswerMap] = useState16(answerMap);
4648
+ const [currentAnswerMap, setCurrentAnswerMap] = useState17(answerMap);
4597
4649
  useEffect7(() => {
4598
4650
  setCurrentAnswerMap(answerMap);
4599
4651
  }, [answerMap]);
@@ -4604,7 +4656,7 @@ var DropdownActivityContent = ({
4604
4656
  changeAnswer(answerMap2);
4605
4657
  };
4606
4658
  return /* @__PURE__ */ jsxs18("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
4607
- /* @__PURE__ */ jsx27("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx27(
4659
+ /* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx28(
4608
4660
  ActivityBodyContent_default,
4609
4661
  {
4610
4662
  bodyMap: dropdownBodyMap,
@@ -4613,9 +4665,9 @@ var DropdownActivityContent = ({
4613
4665
  templateType: "DROPDOWN"
4614
4666
  }
4615
4667
  ) }),
4616
- /* @__PURE__ */ jsx27("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx27(DividerLine_default, {}) }),
4617
- /* @__PURE__ */ jsx27("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx27(VerticalDividerLine_default, {}) }),
4618
- /* @__PURE__ */ jsx27("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx27(
4668
+ /* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx28(DividerLine_default, {}) }),
4669
+ /* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx28(VerticalDividerLine_default, {}) }),
4670
+ /* @__PURE__ */ jsx28("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx28(
4619
4671
  DropdownActivityMaterialContent_default,
4620
4672
  {
4621
4673
  uniqueValue: JSON.stringify(data.contentMap),
@@ -4634,34 +4686,34 @@ var DropdownActivityContent_default = DropdownActivityContent;
4634
4686
 
4635
4687
  // src/components/activities/material-contents/FillInTheBlanksActivityMaterialContent.tsx
4636
4688
  import { InlineMath as InlineMath4 } from "react-katex";
4637
- import { useState as useState17, useEffect as useEffect8, useRef as useRef4 } from "react";
4689
+ import { useState as useState18, useEffect as useEffect8, useRef as useRef4 } from "react";
4638
4690
 
4639
4691
  // src/components/texts/InputWithSpecialExpression.tsx
4640
4692
  import { InlineMath as InlineMath3 } from "react-katex";
4641
- import { jsx as jsx28 } from "react/jsx-runtime";
4693
+ import { jsx as jsx29 } from "react/jsx-runtime";
4642
4694
  var InputWithSpecialExpression = ({
4643
4695
  value,
4644
4696
  showSpecialOnly
4645
4697
  }) => {
4646
4698
  const inputWithSpecialExpressionList = constructInputWithSpecialExpressionList(value);
4647
- return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ jsx28("div", { className: "m-2", children: /* @__PURE__ */ jsx28("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx28(
4699
+ return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ jsx29("div", { className: "m-2", children: /* @__PURE__ */ jsx29("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx29(
4648
4700
  "span",
4649
4701
  {
4650
4702
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4651
- children: inputPart.isEquation ? /* @__PURE__ */ jsx28("span", { className: "text-lg", children: /* @__PURE__ */ jsx28(InlineMath3, { math: inputPart.value }, index) }) : inputPart.value
4703
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx29("span", { className: "text-lg", children: /* @__PURE__ */ jsx29(InlineMath3, { math: inputPart.value }, index) }) : inputPart.value
4652
4704
  }
4653
- )) }) }) : null : /* @__PURE__ */ jsx28("div", { className: "m-2", children: /* @__PURE__ */ jsx28("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx28(
4705
+ )) }) }) : null : /* @__PURE__ */ jsx29("div", { className: "m-2", children: /* @__PURE__ */ jsx29("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx29(
4654
4706
  "span",
4655
4707
  {
4656
4708
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4657
- children: inputPart.isEquation ? /* @__PURE__ */ jsx28("span", { className: "text-lg", children: /* @__PURE__ */ jsx28(InlineMath3, { math: inputPart.value }, index) }) : inputPart.value
4709
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx29("span", { className: "text-lg", children: /* @__PURE__ */ jsx29(InlineMath3, { math: inputPart.value }, index) }) : inputPart.value
4658
4710
  }
4659
4711
  )) }) });
4660
4712
  };
4661
4713
  var InputWithSpecialExpression_default = InputWithSpecialExpression;
4662
4714
 
4663
4715
  // src/components/activities/material-contents/FillInTheBlanksActivityMaterialContent.tsx
4664
- import { jsx as jsx29, jsxs as jsxs19 } from "react/jsx-runtime";
4716
+ import { jsx as jsx30, jsxs as jsxs19 } from "react/jsx-runtime";
4665
4717
  var FillInTheBlanksActivityMaterialContent = ({
4666
4718
  uniqueValue,
4667
4719
  answerMap,
@@ -4673,20 +4725,20 @@ var FillInTheBlanksActivityMaterialContent = ({
4673
4725
  isPreview,
4674
4726
  showCorrectAnswer
4675
4727
  }) => {
4676
- const [shuffleOptionList, setShuffleOptionList] = useState17([]);
4677
- const [selectedOption, setSelectedOption] = useState17(null);
4678
- const [draggedOption, setDraggedOption] = useState17(null);
4679
- const [dropTargetIndex, setDropTargetIndex] = useState17(null);
4680
- const [draggedElement, setDraggedElement] = useState17(
4728
+ const [shuffleOptionList, setShuffleOptionList] = useState18([]);
4729
+ const [selectedOption, setSelectedOption] = useState18(null);
4730
+ const [draggedOption, setDraggedOption] = useState18(null);
4731
+ const [dropTargetIndex, setDropTargetIndex] = useState18(null);
4732
+ const [draggedElement, setDraggedElement] = useState18(
4681
4733
  null
4682
4734
  );
4683
- const [displayAnswerMap, setDisplayAnswerMap] = useState17(answerMap);
4735
+ const [displayAnswerMap, setDisplayAnswerMap] = useState18(answerMap);
4684
4736
  const dragElementRef = useRef4(null);
4685
- const [mousePosition, setMousePosition] = useState17({
4737
+ const [mousePosition, setMousePosition] = useState18({
4686
4738
  x: 0,
4687
4739
  y: 0
4688
4740
  });
4689
- const [touchPosition, setTouchPosition] = useState17({
4741
+ const [touchPosition, setTouchPosition] = useState18({
4690
4742
  x: 0,
4691
4743
  y: 0
4692
4744
  });
@@ -4797,9 +4849,9 @@ var FillInTheBlanksActivityMaterialContent = ({
4797
4849
  onMouseMove: handleMouseMove,
4798
4850
  onMouseUp: handleMouseUp,
4799
4851
  children: [
4800
- /* @__PURE__ */ jsx29("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx29("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_fill_in_the_blanks_text") }) }),
4801
- /* @__PURE__ */ jsx29("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx29(DividerLine_default, {}) }),
4802
- draggedOption && mousePosition.x > 0 && /* @__PURE__ */ jsx29(
4852
+ /* @__PURE__ */ jsx30("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx30("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_fill_in_the_blanks_text") }) }),
4853
+ /* @__PURE__ */ jsx30("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx30(DividerLine_default, {}) }),
4854
+ draggedOption && mousePosition.x > 0 && /* @__PURE__ */ jsx30(
4803
4855
  "div",
4804
4856
  {
4805
4857
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -4808,13 +4860,13 @@ var FillInTheBlanksActivityMaterialContent = ({
4808
4860
  top: `${mousePosition.y}px`,
4809
4861
  transform: "translate(-50%, -50%)"
4810
4862
  },
4811
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx29("div", { className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx29("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ jsx29(
4863
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx30("div", { className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx30("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ jsx30(
4812
4864
  InputWithSpecialExpression_default,
4813
4865
  {
4814
4866
  value: draggedOption,
4815
4867
  showSpecialOnly: false
4816
4868
  }
4817
- ) }) }) : /* @__PURE__ */ jsx29("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx29(
4869
+ ) }) }) : /* @__PURE__ */ jsx30("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx30(
4818
4870
  ShowMaterialMediaByContentType_default,
4819
4871
  {
4820
4872
  contentType: contentMap.type,
@@ -4825,7 +4877,7 @@ var FillInTheBlanksActivityMaterialContent = ({
4825
4877
  ) })
4826
4878
  }
4827
4879
  ),
4828
- draggedOption && touchPosition.x > 0 && /* @__PURE__ */ jsx29(
4880
+ draggedOption && touchPosition.x > 0 && /* @__PURE__ */ jsx30(
4829
4881
  "div",
4830
4882
  {
4831
4883
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -4834,13 +4886,13 @@ var FillInTheBlanksActivityMaterialContent = ({
4834
4886
  top: `${touchPosition.y}px`,
4835
4887
  transform: "translate(-50%, -50%)"
4836
4888
  },
4837
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx29("div", { className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx29("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ jsx29(
4889
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx30("div", { className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx30("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ jsx30(
4838
4890
  InputWithSpecialExpression_default,
4839
4891
  {
4840
4892
  value: draggedOption,
4841
4893
  showSpecialOnly: false
4842
4894
  }
4843
- ) }) }) : /* @__PURE__ */ jsx29("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx29(
4895
+ ) }) }) : /* @__PURE__ */ jsx30("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx30(
4844
4896
  ShowMaterialMediaByContentType_default,
4845
4897
  {
4846
4898
  contentType: contentMap.type,
@@ -4852,8 +4904,8 @@ var FillInTheBlanksActivityMaterialContent = ({
4852
4904
  }
4853
4905
  ),
4854
4906
  /* @__PURE__ */ jsxs19("div", { className: "flex-1 min-h-0 overflow-y-auto", children: [
4855
- /* @__PURE__ */ jsx29("div", { className: "w-full flex flex-row flex-wrap gap-x-2 gap-y-2 my-2", children: shuffleOptionList.map(
4856
- (option, index) => checkAnswerProvided(displayAnswerMap, option) ? /* @__PURE__ */ jsx29(
4907
+ /* @__PURE__ */ jsx30("div", { className: "w-full flex flex-row flex-wrap gap-x-2 gap-y-2 my-2", children: shuffleOptionList.map(
4908
+ (option, index) => checkAnswerProvided(displayAnswerMap, option) ? /* @__PURE__ */ jsx30(
4857
4909
  ShowMaterialMediaByContentType_default,
4858
4910
  {
4859
4911
  contentType: contentMap.type,
@@ -4861,7 +4913,7 @@ var FillInTheBlanksActivityMaterialContent = ({
4861
4913
  canFullScreen: true
4862
4914
  },
4863
4915
  `${uniqueValue}-${index}`
4864
- ) : /* @__PURE__ */ jsx29(
4916
+ ) : /* @__PURE__ */ jsx30(
4865
4917
  "div",
4866
4918
  {
4867
4919
  ref: draggedOption === option ? dragElementRef : null,
@@ -4871,12 +4923,12 @@ var FillInTheBlanksActivityMaterialContent = ({
4871
4923
  onTouchStart: (e) => handleTouchStart(e, option, e.currentTarget),
4872
4924
  onTouchMove: handleTouchMove,
4873
4925
  onTouchEnd: handleTouchEnd,
4874
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx29(
4926
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx30(
4875
4927
  "div",
4876
4928
  {
4877
4929
  className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge cursor-pointer select-none",
4878
4930
  onClick: () => handleSelectOption(option),
4879
- children: /* @__PURE__ */ jsx29("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ jsx29(
4931
+ children: /* @__PURE__ */ jsx30("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ jsx30(
4880
4932
  InputWithSpecialExpression_default,
4881
4933
  {
4882
4934
  value: option,
@@ -4884,12 +4936,12 @@ var FillInTheBlanksActivityMaterialContent = ({
4884
4936
  }
4885
4937
  ) })
4886
4938
  }
4887
- ) : /* @__PURE__ */ jsx29(
4939
+ ) : /* @__PURE__ */ jsx30(
4888
4940
  "div",
4889
4941
  {
4890
4942
  className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge cursor-pointer select-none",
4891
4943
  onClick: () => handleSelectOption(option),
4892
- children: /* @__PURE__ */ jsx29(
4944
+ children: /* @__PURE__ */ jsx30(
4893
4945
  ShowMaterialMediaByContentType_default,
4894
4946
  {
4895
4947
  contentType: contentMap.type,
@@ -4904,12 +4956,12 @@ var FillInTheBlanksActivityMaterialContent = ({
4904
4956
  index
4905
4957
  )
4906
4958
  ) }),
4907
- /* @__PURE__ */ jsx29("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(displayAnswerMap).map((materialKey, index) => {
4959
+ /* @__PURE__ */ jsx30("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(displayAnswerMap).map((materialKey, index) => {
4908
4960
  const learnerAnswerState = checkAnswerState(
4909
4961
  JSON.parse(materialMap[materialKey]),
4910
4962
  displayAnswerMap[materialKey]
4911
4963
  );
4912
- return /* @__PURE__ */ jsx29("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ jsx29("div", { className: "mx-2", children: /* @__PURE__ */ jsx29(
4964
+ return /* @__PURE__ */ jsx30("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ jsx30("div", { className: "mx-2", children: /* @__PURE__ */ jsx30(
4913
4965
  "div",
4914
4966
  {
4915
4967
  "data-drop-zone": materialKey,
@@ -4918,12 +4970,12 @@ var FillInTheBlanksActivityMaterialContent = ({
4918
4970
  onClick: () => handleDropZoneClick(materialKey),
4919
4971
  className: `${dropTargetIndex === materialKey ? "ring-2 ring-blue-400 bg-blue-50" : ""} transition-all duration-200 rounded-lg`,
4920
4972
  children: /* @__PURE__ */ jsxs19("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
4921
- /* @__PURE__ */ jsx29("div", { className: "my-auto", children: /* @__PURE__ */ jsxs19("p", { className: "text-xl", children: [
4973
+ /* @__PURE__ */ jsx30("div", { className: "my-auto", children: /* @__PURE__ */ jsxs19("p", { className: "text-xl", children: [
4922
4974
  parseFloat(materialKey) + 1,
4923
4975
  "."
4924
4976
  ] }) }),
4925
- /* @__PURE__ */ jsx29("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsxs19("div", { className: "relative", children: [
4926
- /* @__PURE__ */ jsx29("div", { className: "flex-1", children: /* @__PURE__ */ jsx29(
4977
+ /* @__PURE__ */ jsx30("div", { className: "flex-1", children: checkCanAnswerQuestion() ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsxs19("div", { className: "relative", children: [
4978
+ /* @__PURE__ */ jsx30("div", { className: "flex-1", children: /* @__PURE__ */ jsx30(
4927
4979
  "div",
4928
4980
  {
4929
4981
  className: `w-full min-h-[44px] border rounded-lg ${displayAnswerMap[materialKey] ? "border-catchup-blue-400 px-2 cursor-pointer" : "bg-catchup-gray-50 border-catchup-gray-200 border-dashed py-2 px-4"}`,
@@ -4933,7 +4985,7 @@ var FillInTheBlanksActivityMaterialContent = ({
4933
4985
  onChange(answerMap, materialKey, "");
4934
4986
  }
4935
4987
  },
4936
- children: displayAnswerMap[materialKey] ? /* @__PURE__ */ jsx29(
4988
+ children: displayAnswerMap[materialKey] ? /* @__PURE__ */ jsx30(
4937
4989
  InputWithSpecialExpression_default,
4938
4990
  {
4939
4991
  value: displayAnswerMap[materialKey],
@@ -4942,14 +4994,14 @@ var FillInTheBlanksActivityMaterialContent = ({
4942
4994
  ) : null
4943
4995
  }
4944
4996
  ) }),
4945
- learnerAnswerState === "CORRECT" ? /* @__PURE__ */ jsx29("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ jsx29(
4997
+ learnerAnswerState === "CORRECT" ? /* @__PURE__ */ jsx30("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ jsx30(
4946
4998
  BaseImage_default,
4947
4999
  {
4948
5000
  src: "/icons/checkbox.webp",
4949
5001
  alt: "checkbox",
4950
5002
  size: "small"
4951
5003
  }
4952
- ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ jsx29("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ jsx29(
5004
+ ) }) : learnerAnswerState === "INCORRECT" ? /* @__PURE__ */ jsx30("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ jsx30(
4953
5005
  BaseImage_default,
4954
5006
  {
4955
5007
  src: "/icons/cross-red.webp",
@@ -4957,13 +5009,13 @@ var FillInTheBlanksActivityMaterialContent = ({
4957
5009
  size: "small"
4958
5010
  }
4959
5011
  ) }) : null
4960
- ] }) : displayAnswerMap[materialKey] === "" ? /* @__PURE__ */ jsx29(
5012
+ ] }) : displayAnswerMap[materialKey] === "" ? /* @__PURE__ */ jsx30(
4961
5013
  "div",
4962
5014
  {
4963
5015
  className: `w-catchup-activity-media-box-item h-catchup-activity-media-box-item border rounded-catchup-xlarge border-dashed ${learnerAnswerState === "CORRECT" ? "border-catchup-green" : learnerAnswerState === "INCORRECT" ? "border-catchup-red" : "border-catchup-blue"}`,
4964
- children: /* @__PURE__ */ jsx29("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ jsx29("span", { className: "italic", children: i18n_default.t("please_drop_here") }) })
5016
+ children: /* @__PURE__ */ jsx30("div", { className: "h-full flex flex-col items-center justify-center px-4 py-2", children: /* @__PURE__ */ jsx30("span", { className: "italic", children: i18n_default.t("please_drop_here") }) })
4965
5017
  }
4966
- ) : /* @__PURE__ */ jsx29(
5018
+ ) : /* @__PURE__ */ jsx30(
4967
5019
  "div",
4968
5020
  {
4969
5021
  className: "flex-1 cursor-pointer",
@@ -4971,7 +5023,7 @@ var FillInTheBlanksActivityMaterialContent = ({
4971
5023
  e.stopPropagation();
4972
5024
  onChange(answerMap, materialKey, "");
4973
5025
  },
4974
- children: /* @__PURE__ */ jsx29(
5026
+ children: /* @__PURE__ */ jsx30(
4975
5027
  ShowMaterialMediaByContentType_default,
4976
5028
  {
4977
5029
  contentType: contentMap.type,
@@ -4981,13 +5033,13 @@ var FillInTheBlanksActivityMaterialContent = ({
4981
5033
  `${uniqueValue}-${index}`
4982
5034
  )
4983
5035
  }
4984
- ) : /* @__PURE__ */ jsx29("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
5036
+ ) : /* @__PURE__ */ jsx30("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
4985
5037
  displayAnswerMap[materialKey]
4986
- ).map((inputPart, index2) => /* @__PURE__ */ jsx29(
5038
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx30(
4987
5039
  "span",
4988
5040
  {
4989
5041
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
4990
- children: inputPart.isEquation ? /* @__PURE__ */ jsx29("span", { className: "text-xl", children: /* @__PURE__ */ jsx29(InlineMath4, { math: inputPart.value }) }) : inputPart.value
5042
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx30("span", { className: "text-xl", children: /* @__PURE__ */ jsx30(InlineMath4, { math: inputPart.value }) }) : inputPart.value
4991
5043
  },
4992
5044
  index2
4993
5045
  )) }, materialKey) })
@@ -5003,8 +5055,8 @@ var FillInTheBlanksActivityMaterialContent = ({
5003
5055
  var FillInTheBlanksActivityMaterialContent_default = FillInTheBlanksActivityMaterialContent;
5004
5056
 
5005
5057
  // src/components/activities/FillInTheBlanksActivityContent.tsx
5006
- import { useState as useState18, useEffect as useEffect9 } from "react";
5007
- import { jsx as jsx30, jsxs as jsxs20 } from "react/jsx-runtime";
5058
+ import { useState as useState19, useEffect as useEffect9 } from "react";
5059
+ import { jsx as jsx31, jsxs as jsxs20 } from "react/jsx-runtime";
5008
5060
  var FillInTheBlanksActivityContent = ({
5009
5061
  answerMap,
5010
5062
  data,
@@ -5024,7 +5076,7 @@ var FillInTheBlanksActivityContent = ({
5024
5076
  "FILL_IN_THE_BLANKS"
5025
5077
  );
5026
5078
  const fillInTheBlanksIncorrectList = data.fillInTheBlanksIncorrectList ? JSON.parse(data.fillInTheBlanksIncorrectList) : [];
5027
- const [currentAnswerMap, setCurrentAnswerMap] = useState18(answerMap);
5079
+ const [currentAnswerMap, setCurrentAnswerMap] = useState19(answerMap);
5028
5080
  useEffect9(() => {
5029
5081
  setCurrentAnswerMap(answerMap);
5030
5082
  }, [answerMap]);
@@ -5053,7 +5105,7 @@ var FillInTheBlanksActivityContent = ({
5053
5105
  changeAnswer(answerMap2);
5054
5106
  };
5055
5107
  return /* @__PURE__ */ jsxs20("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
5056
- /* @__PURE__ */ jsx30("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx30(
5108
+ /* @__PURE__ */ jsx31("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx31(
5057
5109
  ActivityBodyContent_default,
5058
5110
  {
5059
5111
  bodyMap: fillInTheBlanksBodyMap,
@@ -5062,9 +5114,9 @@ var FillInTheBlanksActivityContent = ({
5062
5114
  templateType: "FILL_IN_THE_BLANKS"
5063
5115
  }
5064
5116
  ) }),
5065
- /* @__PURE__ */ jsx30("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx30(DividerLine_default, {}) }),
5066
- /* @__PURE__ */ jsx30("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx30(VerticalDividerLine_default, {}) }),
5067
- /* @__PURE__ */ jsx30("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx30(
5117
+ /* @__PURE__ */ jsx31("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx31(DividerLine_default, {}) }),
5118
+ /* @__PURE__ */ jsx31("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx31(VerticalDividerLine_default, {}) }),
5119
+ /* @__PURE__ */ jsx31("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx31(
5068
5120
  FillInTheBlanksActivityMaterialContent_default,
5069
5121
  {
5070
5122
  uniqueValue: JSON.stringify(data.contentMap),
@@ -5083,9 +5135,9 @@ var FillInTheBlanksActivityContent = ({
5083
5135
  var FillInTheBlanksActivityContent_default = FillInTheBlanksActivityContent;
5084
5136
 
5085
5137
  // src/components/activities/material-contents/GroupingActivityMaterialContent.tsx
5086
- import { useEffect as useEffect10, useRef as useRef5, useState as useState19 } from "react";
5138
+ import { useEffect as useEffect10, useRef as useRef5, useState as useState20 } from "react";
5087
5139
  import { InlineMath as InlineMath5 } from "react-katex";
5088
- import { Fragment as Fragment3, jsx as jsx31, jsxs as jsxs21 } from "react/jsx-runtime";
5140
+ import { Fragment as Fragment3, jsx as jsx32, jsxs as jsxs21 } from "react/jsx-runtime";
5089
5141
  var GroupingActivityMaterialContent = ({
5090
5142
  uniqueValue,
5091
5143
  answerMap,
@@ -5096,20 +5148,20 @@ var GroupingActivityMaterialContent = ({
5096
5148
  isPreview,
5097
5149
  showCorrectAnswer
5098
5150
  }) => {
5099
- const [selectedValue, setSelectedValue] = useState19(null);
5100
- const [draggedValue, setDraggedValue] = useState19(null);
5101
- const [dropTargetKey, setDropTargetKey] = useState19(null);
5102
- const [draggedElement, setDraggedElement] = useState19(
5151
+ const [selectedValue, setSelectedValue] = useState20(null);
5152
+ const [draggedValue, setDraggedValue] = useState20(null);
5153
+ const [dropTargetKey, setDropTargetKey] = useState20(null);
5154
+ const [draggedElement, setDraggedElement] = useState20(
5103
5155
  null
5104
5156
  );
5105
- const [shuffledMaterialList, setShuffledMaterialList] = useState19([]);
5106
- const [displayAnswerMap, setDisplayAnswerMap] = useState19(answerMap);
5157
+ const [shuffledMaterialList, setShuffledMaterialList] = useState20([]);
5158
+ const [displayAnswerMap, setDisplayAnswerMap] = useState20(answerMap);
5107
5159
  const dragElementRef = useRef5(null);
5108
- const [mousePosition, setMousePosition] = useState19({
5160
+ const [mousePosition, setMousePosition] = useState20({
5109
5161
  x: 0,
5110
5162
  y: 0
5111
5163
  });
5112
- const [touchPosition, setTouchPosition] = useState19({
5164
+ const [touchPosition, setTouchPosition] = useState20({
5113
5165
  x: 0,
5114
5166
  y: 0
5115
5167
  });
@@ -5283,7 +5335,7 @@ var GroupingActivityMaterialContent = ({
5283
5335
  };
5284
5336
  const filteredMaterialList = retrieveFilteredMaterialList(displayAnswerMap);
5285
5337
  return /* @__PURE__ */ jsxs21("div", { className: "flex flex-col h-full", onMouseMove: handleMouseMove, onMouseUp: handleMouseUp, children: [
5286
- draggedValue && mousePosition.x > 0 && /* @__PURE__ */ jsx31(
5338
+ draggedValue && mousePosition.x > 0 && /* @__PURE__ */ jsx32(
5287
5339
  "div",
5288
5340
  {
5289
5341
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -5292,16 +5344,16 @@ var GroupingActivityMaterialContent = ({
5292
5344
  top: `${mousePosition.y}px`,
5293
5345
  transform: "translate(-50%, -50%)"
5294
5346
  },
5295
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx31("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx31("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px]", children: /* @__PURE__ */ jsx31("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5296
- (inputPart, index) => /* @__PURE__ */ jsx31(
5347
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx32("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx32("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px]", children: /* @__PURE__ */ jsx32("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5348
+ (inputPart, index) => /* @__PURE__ */ jsx32(
5297
5349
  "span",
5298
5350
  {
5299
5351
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5300
- children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5352
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx32("span", { className: "text-2xl", children: /* @__PURE__ */ jsx32(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5301
5353
  },
5302
5354
  index
5303
5355
  )
5304
- ) }) }) }) : /* @__PURE__ */ jsx31("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx31(
5356
+ ) }) }) }) : /* @__PURE__ */ jsx32("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx32(
5305
5357
  ShowMaterialMediaByContentType_default,
5306
5358
  {
5307
5359
  contentType: contentMap.type,
@@ -5312,7 +5364,7 @@ var GroupingActivityMaterialContent = ({
5312
5364
  ) })
5313
5365
  }
5314
5366
  ),
5315
- draggedValue && touchPosition.x > 0 && /* @__PURE__ */ jsx31(
5367
+ draggedValue && touchPosition.x > 0 && /* @__PURE__ */ jsx32(
5316
5368
  "div",
5317
5369
  {
5318
5370
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -5321,16 +5373,16 @@ var GroupingActivityMaterialContent = ({
5321
5373
  top: `${touchPosition.y}px`,
5322
5374
  transform: "translate(-50%, -50%)"
5323
5375
  },
5324
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx31("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx31("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px]", children: /* @__PURE__ */ jsx31("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5325
- (inputPart, index) => /* @__PURE__ */ jsx31(
5376
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx32("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx32("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px]", children: /* @__PURE__ */ jsx32("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5377
+ (inputPart, index) => /* @__PURE__ */ jsx32(
5326
5378
  "span",
5327
5379
  {
5328
5380
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5329
- children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5381
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx32("span", { className: "text-2xl", children: /* @__PURE__ */ jsx32(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5330
5382
  },
5331
5383
  index
5332
5384
  )
5333
- ) }) }) }) : /* @__PURE__ */ jsx31("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx31(
5385
+ ) }) }) }) : /* @__PURE__ */ jsx32("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx32(
5334
5386
  ShowMaterialMediaByContentType_default,
5335
5387
  {
5336
5388
  contentType: contentMap.type,
@@ -5342,8 +5394,8 @@ var GroupingActivityMaterialContent = ({
5342
5394
  }
5343
5395
  ),
5344
5396
  filteredMaterialList.length > 0 ? /* @__PURE__ */ jsxs21(Fragment3, { children: [
5345
- /* @__PURE__ */ jsx31("div", { className: "flex-shrink-0 flex flex-row gap-x-4 overflow-x-auto py-2", children: filteredMaterialList.map((materialValue, index) => {
5346
- return /* @__PURE__ */ jsx31(
5397
+ /* @__PURE__ */ jsx32("div", { className: "flex-shrink-0 flex flex-row gap-x-4 overflow-x-auto py-2", children: filteredMaterialList.map((materialValue, index) => {
5398
+ return /* @__PURE__ */ jsx32(
5347
5399
  "div",
5348
5400
  {
5349
5401
  ref: draggedValue === materialValue ? dragElementRef : null,
@@ -5353,21 +5405,21 @@ var GroupingActivityMaterialContent = ({
5353
5405
  onTouchStart: (e) => handleTouchStart(e, materialValue, e.currentTarget),
5354
5406
  onTouchMove: handleTouchMove,
5355
5407
  onTouchEnd: handleTouchEnd,
5356
- children: /* @__PURE__ */ jsx31(
5408
+ children: /* @__PURE__ */ jsx32(
5357
5409
  "div",
5358
5410
  {
5359
5411
  className: `${selectedValue === materialValue ? "border-catchup-blue" : "border-catchup-lighter-gray"} ${contentMap.type === "TEXT" ? "h-catchup-activity-text-box-item" : "h-catchup-activity-media-box-item"} flex flex-col items-center justify-center border-2 rounded-catchup-xlarge cursor-pointer transition-all duration-300`,
5360
5412
  onClick: () => handleSelectItem(materialValue),
5361
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx31("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] overflow-y-auto", children: /* @__PURE__ */ jsx31("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5413
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx32("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] overflow-y-auto", children: /* @__PURE__ */ jsx32("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5362
5414
  materialValue
5363
- ).map((inputPart, index2) => /* @__PURE__ */ jsx31(
5415
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx32(
5364
5416
  "span",
5365
5417
  {
5366
5418
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5367
- children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5419
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx32("span", { className: "text-2xl", children: /* @__PURE__ */ jsx32(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5368
5420
  },
5369
5421
  index2
5370
- )) }) }) : /* @__PURE__ */ jsx31(
5422
+ )) }) }) : /* @__PURE__ */ jsx32(
5371
5423
  ShowMaterialMediaByContentType_default,
5372
5424
  {
5373
5425
  contentType: contentMap.type,
@@ -5382,27 +5434,27 @@ var GroupingActivityMaterialContent = ({
5382
5434
  index
5383
5435
  );
5384
5436
  }) }),
5385
- /* @__PURE__ */ jsx31("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx31(DividerLine_default, {}) })
5437
+ /* @__PURE__ */ jsx32("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx32(DividerLine_default, {}) })
5386
5438
  ] }) : null,
5387
- /* @__PURE__ */ jsx31("div", { className: "flex-1 min-h-0 overflow-y-auto", children: Object.keys(displayAnswerMap).map((answerMapKey, index) => /* @__PURE__ */ jsxs21("div", { className: "flex flex-row w-full", children: [
5388
- /* @__PURE__ */ jsx31("div", { className: "w-1/3", children: /* @__PURE__ */ jsx31(
5439
+ /* @__PURE__ */ jsx32("div", { className: "flex-1 min-h-0 overflow-y-auto", children: Object.keys(displayAnswerMap).map((answerMapKey, index) => /* @__PURE__ */ jsxs21("div", { className: "flex flex-row w-full", children: [
5440
+ /* @__PURE__ */ jsx32("div", { className: "w-1/3", children: /* @__PURE__ */ jsx32(
5389
5441
  "div",
5390
5442
  {
5391
5443
  className: `border-catchup-blue ${contentMap.type === "TEXT" ? "h-catchup-activity-text-outer-box-item" : "h-catchup-activity-media-outer-box-item"} flex flex-col items-center justify-center border-2 rounded-catchup-xlarge transition-all duration-300 my-3`,
5392
- children: /* @__PURE__ */ jsx31("div", { className: "flex flex-col items-center justify-center transition-all duration-300 px-4 text-center", children: /* @__PURE__ */ jsx31("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
5393
- (inputPart, index2) => /* @__PURE__ */ jsx31(
5444
+ children: /* @__PURE__ */ jsx32("div", { className: "flex flex-col items-center justify-center transition-all duration-300 px-4 text-center", children: /* @__PURE__ */ jsx32("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
5445
+ (inputPart, index2) => /* @__PURE__ */ jsx32(
5394
5446
  "span",
5395
5447
  {
5396
5448
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5397
- children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5449
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx32("span", { className: "text-2xl", children: /* @__PURE__ */ jsx32(InlineMath5, { math: inputPart.value }) }) : inputPart.value
5398
5450
  },
5399
5451
  index2
5400
5452
  )
5401
5453
  ) }) })
5402
5454
  }
5403
5455
  ) }),
5404
- /* @__PURE__ */ jsx31("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
5405
- /* @__PURE__ */ jsx31("div", { className: "flex-1 min-w-0", ref, children: /* @__PURE__ */ jsx31("div", { className: "h-full py-3", children: /* @__PURE__ */ jsx31(
5456
+ /* @__PURE__ */ jsx32("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
5457
+ /* @__PURE__ */ jsx32("div", { className: "flex-1 min-w-0", ref, children: /* @__PURE__ */ jsx32("div", { className: "h-full py-3", children: /* @__PURE__ */ jsx32(
5406
5458
  "div",
5407
5459
  {
5408
5460
  ref: (el) => dropZoneRefs.current[answerMapKey] = el,
@@ -5411,17 +5463,17 @@ var GroupingActivityMaterialContent = ({
5411
5463
  onMouseLeave: () => setDropTargetKey(null),
5412
5464
  onClick: () => handleDropZoneClick(answerMapKey),
5413
5465
  className: `${dropTargetKey === answerMapKey ? "bg-catchup-light-blue ring-2 ring-blue-400" : ""} flex-1 border-catchup-blue rounded-catchup-xlarge border-2 h-full p-1 transition-all duration-200`,
5414
- children: /* @__PURE__ */ jsx31("div", { className: "h-full w-full overflow-x-auto", children: /* @__PURE__ */ jsx31("div", { className: "flex flex-row items-center gap-2 w-max h-full", children: displayAnswerMap[answerMapKey].map(
5466
+ children: /* @__PURE__ */ jsx32("div", { className: "h-full w-full overflow-x-auto", children: /* @__PURE__ */ jsx32("div", { className: "flex flex-row items-center gap-2 w-max h-full", children: displayAnswerMap[answerMapKey].map(
5415
5467
  (answerMapValue, answerMapIndex) => {
5416
5468
  const learnerAnswerState = checkAnswerState(
5417
5469
  materialMap[answerMapKey],
5418
5470
  answerMapValue
5419
5471
  );
5420
- return /* @__PURE__ */ jsx31("div", { className: "p-1", children: /* @__PURE__ */ jsx31(
5472
+ return /* @__PURE__ */ jsx32("div", { className: "p-1", children: /* @__PURE__ */ jsx32(
5421
5473
  "div",
5422
5474
  {
5423
5475
  className: `${contentMap.type === "TEXT" ? "h-catchup-activity-text-box-item" : "h-catchup-activity-media-box-item"}`,
5424
- children: /* @__PURE__ */ jsx31(
5476
+ children: /* @__PURE__ */ jsx32(
5425
5477
  "div",
5426
5478
  {
5427
5479
  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`,
@@ -5437,13 +5489,13 @@ var GroupingActivityMaterialContent = ({
5437
5489
  setSelectedValue(null);
5438
5490
  }
5439
5491
  },
5440
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx31("div", { className: "flex flex-col items-center justify-center transition-all duration-300 min-w-[200px] overflow-y-auto", children: /* @__PURE__ */ jsx31("div", { className: "m-2", children: /* @__PURE__ */ jsx31("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5492
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx32("div", { className: "flex flex-col items-center justify-center transition-all duration-300 min-w-[200px] overflow-y-auto", children: /* @__PURE__ */ jsx32("div", { className: "m-2", children: /* @__PURE__ */ jsx32("p", { className: "text-xl text-center whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5441
5493
  answerMapValue
5442
- ).map((inputPart, index2) => /* @__PURE__ */ jsx31(
5494
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx32(
5443
5495
  "span",
5444
5496
  {
5445
5497
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5446
- children: inputPart.isEquation ? /* @__PURE__ */ jsx31("span", { className: "text-2xl", children: /* @__PURE__ */ jsx31(
5498
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx32("span", { className: "text-2xl", children: /* @__PURE__ */ jsx32(
5447
5499
  InlineMath5,
5448
5500
  {
5449
5501
  math: inputPart.value
@@ -5451,7 +5503,7 @@ var GroupingActivityMaterialContent = ({
5451
5503
  ) }) : inputPart.value
5452
5504
  },
5453
5505
  index2
5454
- )) }) }) }) : /* @__PURE__ */ jsx31(
5506
+ )) }) }) }) : /* @__PURE__ */ jsx32(
5455
5507
  ShowMaterialMediaByContentType_default,
5456
5508
  {
5457
5509
  contentType: contentMap.type,
@@ -5474,7 +5526,7 @@ var GroupingActivityMaterialContent = ({
5474
5526
  var GroupingActivityMaterialContent_default = GroupingActivityMaterialContent;
5475
5527
 
5476
5528
  // src/components/activities/GroupingActivityContent.tsx
5477
- import { jsx as jsx32, jsxs as jsxs22 } from "react/jsx-runtime";
5529
+ import { jsx as jsx33, jsxs as jsxs22 } from "react/jsx-runtime";
5478
5530
  var GroupingActivityContent = ({
5479
5531
  answerMap,
5480
5532
  data,
@@ -5497,11 +5549,11 @@ var GroupingActivityContent = ({
5497
5549
  changeAnswer(answerMap2);
5498
5550
  };
5499
5551
  return /* @__PURE__ */ jsxs22("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
5500
- /* @__PURE__ */ jsx32(
5552
+ /* @__PURE__ */ jsx33(
5501
5553
  "div",
5502
5554
  {
5503
5555
  className: `${isFullScreen ? "w-full" : "w-full md:w-[40%] md:overflow-y-auto"}`,
5504
- children: /* @__PURE__ */ jsx32(
5556
+ children: /* @__PURE__ */ jsx33(
5505
5557
  ActivityBodyContent_default,
5506
5558
  {
5507
5559
  bodyMap: groupingBodyMap,
@@ -5510,13 +5562,13 @@ var GroupingActivityContent = ({
5510
5562
  )
5511
5563
  }
5512
5564
  ),
5513
- /* @__PURE__ */ jsx32("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx32(DividerLine_default, {}) }),
5514
- /* @__PURE__ */ jsx32("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx32(VerticalDividerLine_default, {}) }),
5515
- /* @__PURE__ */ jsx32(
5565
+ /* @__PURE__ */ jsx33("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx33(DividerLine_default, {}) }),
5566
+ /* @__PURE__ */ jsx33("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx33(VerticalDividerLine_default, {}) }),
5567
+ /* @__PURE__ */ jsx33(
5516
5568
  "div",
5517
5569
  {
5518
5570
  className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`,
5519
- children: /* @__PURE__ */ jsx32(
5571
+ children: /* @__PURE__ */ jsx33(
5520
5572
  GroupingActivityMaterialContent_default,
5521
5573
  {
5522
5574
  uniqueValue: JSON.stringify(data.contentMap),
@@ -5536,9 +5588,9 @@ var GroupingActivityContent = ({
5536
5588
  var GroupingActivityContent_default = GroupingActivityContent;
5537
5589
 
5538
5590
  // src/components/activities/material-contents/MatchingActivityMaterialContent.tsx
5539
- import { useEffect as useEffect11, useRef as useRef6, useState as useState20 } from "react";
5591
+ import { useEffect as useEffect11, useRef as useRef6, useState as useState21 } from "react";
5540
5592
  import { InlineMath as InlineMath6 } from "react-katex";
5541
- import { Fragment as Fragment4, jsx as jsx33, jsxs as jsxs23 } from "react/jsx-runtime";
5593
+ import { Fragment as Fragment4, jsx as jsx34, jsxs as jsxs23 } from "react/jsx-runtime";
5542
5594
  var MatchingActivityMaterialContent = ({
5543
5595
  uniqueValue,
5544
5596
  answerMap,
@@ -5549,20 +5601,20 @@ var MatchingActivityMaterialContent = ({
5549
5601
  isPreview,
5550
5602
  showCorrectAnswer
5551
5603
  }) => {
5552
- const [selectedValue, setSelectedValue] = useState20(null);
5553
- const [draggedValue, setDraggedValue] = useState20(null);
5554
- const [dropTargetKey, setDropTargetKey] = useState20(null);
5555
- const [draggedElement, setDraggedElement] = useState20(
5604
+ const [selectedValue, setSelectedValue] = useState21(null);
5605
+ const [draggedValue, setDraggedValue] = useState21(null);
5606
+ const [dropTargetKey, setDropTargetKey] = useState21(null);
5607
+ const [draggedElement, setDraggedElement] = useState21(
5556
5608
  null
5557
5609
  );
5558
- const [shuffledMaterialList, setShuffledMaterialList] = useState20([]);
5559
- const [displayAnswerMap, setDisplayAnswerMap] = useState20(answerMap);
5610
+ const [shuffledMaterialList, setShuffledMaterialList] = useState21([]);
5611
+ const [displayAnswerMap, setDisplayAnswerMap] = useState21(answerMap);
5560
5612
  const dragElementRef = useRef6(null);
5561
- const [mousePosition, setMousePosition] = useState20({
5613
+ const [mousePosition, setMousePosition] = useState21({
5562
5614
  x: 0,
5563
5615
  y: 0
5564
5616
  });
5565
- const [touchPosition, setTouchPosition] = useState20({
5617
+ const [touchPosition, setTouchPosition] = useState21({
5566
5618
  x: 0,
5567
5619
  y: 0
5568
5620
  });
@@ -5728,7 +5780,7 @@ var MatchingActivityMaterialContent = ({
5728
5780
  };
5729
5781
  const filteredMaterialList = retrieveFilteredMaterialList(displayAnswerMap);
5730
5782
  return /* @__PURE__ */ jsxs23("div", { className: "flex flex-col h-full", onMouseMove: handleMouseMove, onMouseUp: handleMouseUp, children: [
5731
- draggedValue && mousePosition.x > 0 && /* @__PURE__ */ jsx33(
5783
+ draggedValue && mousePosition.x > 0 && /* @__PURE__ */ jsx34(
5732
5784
  "div",
5733
5785
  {
5734
5786
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -5737,16 +5789,16 @@ var MatchingActivityMaterialContent = ({
5737
5789
  top: `${mousePosition.y}px`,
5738
5790
  transform: "translate(-50%, -50%)"
5739
5791
  },
5740
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx33("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx33("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] px-4", children: /* @__PURE__ */ jsx33("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5741
- (inputPart, index) => /* @__PURE__ */ jsx33(
5792
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx34("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx34("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] px-4", children: /* @__PURE__ */ jsx34("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5793
+ (inputPart, index) => /* @__PURE__ */ jsx34(
5742
5794
  "span",
5743
5795
  {
5744
5796
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5745
- children: inputPart.isEquation ? /* @__PURE__ */ jsx33("span", { className: "text-xl", children: /* @__PURE__ */ jsx33(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5797
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx34("span", { className: "text-xl", children: /* @__PURE__ */ jsx34(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5746
5798
  },
5747
5799
  index
5748
5800
  )
5749
- ) }) }) }) : /* @__PURE__ */ jsx33("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx33(
5801
+ ) }) }) }) : /* @__PURE__ */ jsx34("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx34(
5750
5802
  ShowMaterialMediaByContentType_default,
5751
5803
  {
5752
5804
  contentType: contentMap.type,
@@ -5757,7 +5809,7 @@ var MatchingActivityMaterialContent = ({
5757
5809
  ) })
5758
5810
  }
5759
5811
  ),
5760
- draggedValue && touchPosition.x > 0 && /* @__PURE__ */ jsx33(
5812
+ draggedValue && touchPosition.x > 0 && /* @__PURE__ */ jsx34(
5761
5813
  "div",
5762
5814
  {
5763
5815
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -5766,16 +5818,16 @@ var MatchingActivityMaterialContent = ({
5766
5818
  top: `${touchPosition.y}px`,
5767
5819
  transform: "translate(-50%, -50%)"
5768
5820
  },
5769
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx33("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx33("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] px-4", children: /* @__PURE__ */ jsx33("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5770
- (inputPart, index) => /* @__PURE__ */ jsx33(
5821
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx34("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx34("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] px-4", children: /* @__PURE__ */ jsx34("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(draggedValue).map(
5822
+ (inputPart, index) => /* @__PURE__ */ jsx34(
5771
5823
  "span",
5772
5824
  {
5773
5825
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5774
- children: inputPart.isEquation ? /* @__PURE__ */ jsx33("span", { className: "text-xl", children: /* @__PURE__ */ jsx33(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5826
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx34("span", { className: "text-xl", children: /* @__PURE__ */ jsx34(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5775
5827
  },
5776
5828
  index
5777
5829
  )
5778
- ) }) }) }) : /* @__PURE__ */ jsx33("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx33(
5830
+ ) }) }) }) : /* @__PURE__ */ jsx34("div", { className: "border-catchup-blue border-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx34(
5779
5831
  ShowMaterialMediaByContentType_default,
5780
5832
  {
5781
5833
  contentType: contentMap.type,
@@ -5787,12 +5839,12 @@ var MatchingActivityMaterialContent = ({
5787
5839
  }
5788
5840
  ),
5789
5841
  filteredMaterialList.length > 0 ? /* @__PURE__ */ jsxs23(Fragment4, { children: [
5790
- /* @__PURE__ */ jsx33(
5842
+ /* @__PURE__ */ jsx34(
5791
5843
  "div",
5792
5844
  {
5793
5845
  ref: itemsRef,
5794
5846
  className: "flex-shrink-0 flex flex-row gap-x-4 gap-y-4 overflow-x-auto py-2",
5795
- children: filteredMaterialList.map((materialValue, index) => /* @__PURE__ */ jsx33(
5847
+ children: filteredMaterialList.map((materialValue, index) => /* @__PURE__ */ jsx34(
5796
5848
  "div",
5797
5849
  {
5798
5850
  ref: draggedValue === materialValue ? dragElementRef : null,
@@ -5802,21 +5854,21 @@ var MatchingActivityMaterialContent = ({
5802
5854
  onTouchStart: (e) => handleTouchStart(e, materialValue, e.currentTarget),
5803
5855
  onTouchMove: handleTouchMove,
5804
5856
  onTouchEnd: handleTouchEnd,
5805
- children: /* @__PURE__ */ jsx33(
5857
+ children: /* @__PURE__ */ jsx34(
5806
5858
  "div",
5807
5859
  {
5808
5860
  className: `${selectedValue === materialValue ? "border-catchup-blue" : "border-catchup-lighter-gray"} ${contentMap.type === "TEXT" ? "h-catchup-activity-text-box-item" : "h-catchup-activity-media-box-item"} flex flex-col items-center justify-center border-2 rounded-catchup-xlarge cursor-pointer transition-all duration-300`,
5809
5861
  onClick: () => handleSelectItem(materialValue),
5810
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx33("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] overflow-hidden px-4", children: /* @__PURE__ */ jsx33("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5862
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx34("div", { className: "flex flex-col items-center justify-center m-2 min-w-[200px] overflow-hidden px-4", children: /* @__PURE__ */ jsx34("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5811
5863
  materialValue
5812
- ).map((inputPart, index2) => /* @__PURE__ */ jsx33(
5864
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx34(
5813
5865
  "span",
5814
5866
  {
5815
5867
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5816
- children: inputPart.isEquation ? /* @__PURE__ */ jsx33("span", { className: "text-xl", children: /* @__PURE__ */ jsx33(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5868
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx34("span", { className: "text-xl", children: /* @__PURE__ */ jsx34(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5817
5869
  },
5818
5870
  index2
5819
- )) }) }) : /* @__PURE__ */ jsx33(
5871
+ )) }) }) : /* @__PURE__ */ jsx34(
5820
5872
  ShowMaterialMediaByContentType_default,
5821
5873
  {
5822
5874
  contentType: contentMap.type,
@@ -5832,32 +5884,32 @@ var MatchingActivityMaterialContent = ({
5832
5884
  ))
5833
5885
  }
5834
5886
  ),
5835
- /* @__PURE__ */ jsx33("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx33(DividerLine_default, {}) })
5887
+ /* @__PURE__ */ jsx34("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx34(DividerLine_default, {}) })
5836
5888
  ] }) : null,
5837
- /* @__PURE__ */ jsx33("div", { className: "flex-1 min-h-0 overflow-y-auto", children: Object.keys(displayAnswerMap).map((answerMapKey, index) => {
5889
+ /* @__PURE__ */ jsx34("div", { className: "flex-1 min-h-0 overflow-y-auto", children: Object.keys(displayAnswerMap).map((answerMapKey, index) => {
5838
5890
  const learnerAnswerState = checkAnswerState(
5839
5891
  materialMap[answerMapKey],
5840
5892
  displayAnswerMap[answerMapKey]
5841
5893
  );
5842
5894
  return /* @__PURE__ */ jsxs23("div", { className: "flex flex-row w-full", children: [
5843
- /* @__PURE__ */ jsx33("div", { className: "w-1/3", children: /* @__PURE__ */ jsx33(
5895
+ /* @__PURE__ */ jsx34("div", { className: "w-1/3", children: /* @__PURE__ */ jsx34(
5844
5896
  "div",
5845
5897
  {
5846
5898
  className: `${contentMap.type === "TEXT" ? "h-catchup-activity-text-box-item" : "h-catchup-activity-media-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"}`,
5847
- children: /* @__PURE__ */ jsx33("div", { className: "flex flex-col items-center justify-center transition-all duration-300 px-4 text-center", children: /* @__PURE__ */ jsx33("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
5848
- (inputPart, index2) => /* @__PURE__ */ jsx33(
5899
+ children: /* @__PURE__ */ jsx34("div", { className: "flex flex-col items-center justify-center transition-all duration-300 px-4 text-center", children: /* @__PURE__ */ jsx34("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(answerMapKey).map(
5900
+ (inputPart, index2) => /* @__PURE__ */ jsx34(
5849
5901
  "span",
5850
5902
  {
5851
5903
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5852
- children: inputPart.isEquation ? /* @__PURE__ */ jsx33("span", { className: "text-xl", children: /* @__PURE__ */ jsx33(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5904
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx34("span", { className: "text-xl", children: /* @__PURE__ */ jsx34(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5853
5905
  },
5854
5906
  index2
5855
5907
  )
5856
5908
  ) }) })
5857
5909
  }
5858
5910
  ) }),
5859
- /* @__PURE__ */ jsx33("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
5860
- /* @__PURE__ */ jsx33("div", { className: "flex-1", children: /* @__PURE__ */ jsx33(
5911
+ /* @__PURE__ */ jsx34("div", { className: "mx-4 w-[2px] bg-catchup-lighter-gray" }),
5912
+ /* @__PURE__ */ jsx34("div", { className: "flex-1", children: /* @__PURE__ */ jsx34(
5861
5913
  "div",
5862
5914
  {
5863
5915
  ref: (el) => dropZoneRefs.current[answerMapKey] = el,
@@ -5866,7 +5918,7 @@ var MatchingActivityMaterialContent = ({
5866
5918
  onMouseLeave: () => setDropTargetKey(null),
5867
5919
  onClick: () => handleDropZoneClick(answerMapKey),
5868
5920
  className: `${dropTargetKey === answerMapKey ? "bg-catchup-light-blue ring-2 ring-blue-400" : ""} ${contentMap.type === "TEXT" ? "h-catchup-activity-text-box-item" : "h-catchup-activity-media-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"}`,
5869
- children: /* @__PURE__ */ jsx33(
5921
+ children: /* @__PURE__ */ jsx34(
5870
5922
  "div",
5871
5923
  {
5872
5924
  className: "h-full flex-1 flex flex-row items-center justify-center px-4",
@@ -5877,16 +5929,16 @@ var MatchingActivityMaterialContent = ({
5877
5929
  setSelectedValue(null);
5878
5930
  }
5879
5931
  },
5880
- children: displayAnswerMap[answerMapKey] ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsx33("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5932
+ children: displayAnswerMap[answerMapKey] ? contentMap.type === "TEXT" ? /* @__PURE__ */ jsx34("p", { className: "text-lg whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
5881
5933
  displayAnswerMap[answerMapKey]
5882
- ).map((inputPart, index2) => /* @__PURE__ */ jsx33(
5934
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx34(
5883
5935
  "span",
5884
5936
  {
5885
5937
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
5886
- children: inputPart.isEquation ? /* @__PURE__ */ jsx33("span", { className: "text-xl", children: /* @__PURE__ */ jsx33(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5938
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx34("span", { className: "text-xl", children: /* @__PURE__ */ jsx34(InlineMath6, { math: inputPart.value }) }) : inputPart.value
5887
5939
  },
5888
5940
  index2
5889
- )) }) : /* @__PURE__ */ jsx33(
5941
+ )) }) : /* @__PURE__ */ jsx34(
5890
5942
  ShowMaterialMediaByContentType_default,
5891
5943
  {
5892
5944
  contentType: contentMap.type,
@@ -5906,7 +5958,7 @@ var MatchingActivityMaterialContent = ({
5906
5958
  var MatchingActivityMaterialContent_default = MatchingActivityMaterialContent;
5907
5959
 
5908
5960
  // src/components/activities/MatchingActivityContent.tsx
5909
- import { jsx as jsx34, jsxs as jsxs24 } from "react/jsx-runtime";
5961
+ import { jsx as jsx35, jsxs as jsxs24 } from "react/jsx-runtime";
5910
5962
  var MatchingActivityContent = ({
5911
5963
  answerMap,
5912
5964
  data,
@@ -5925,11 +5977,11 @@ var MatchingActivityContent = ({
5925
5977
  changeAnswer(answerMap2);
5926
5978
  };
5927
5979
  return /* @__PURE__ */ jsxs24("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
5928
- /* @__PURE__ */ jsx34(
5980
+ /* @__PURE__ */ jsx35(
5929
5981
  "div",
5930
5982
  {
5931
5983
  className: `${isFullScreen ? "w-full" : "w-full md:w-[40%] md:overflow-y-auto"}`,
5932
- children: /* @__PURE__ */ jsx34(
5984
+ children: /* @__PURE__ */ jsx35(
5933
5985
  ActivityBodyContent_default,
5934
5986
  {
5935
5987
  bodyMap: matchingBodyMap,
@@ -5938,13 +5990,13 @@ var MatchingActivityContent = ({
5938
5990
  )
5939
5991
  }
5940
5992
  ),
5941
- /* @__PURE__ */ jsx34("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx34(DividerLine_default, {}) }),
5942
- /* @__PURE__ */ jsx34("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx34(VerticalDividerLine_default, {}) }),
5943
- /* @__PURE__ */ jsx34(
5993
+ /* @__PURE__ */ jsx35("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx35(DividerLine_default, {}) }),
5994
+ /* @__PURE__ */ jsx35("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx35(VerticalDividerLine_default, {}) }),
5995
+ /* @__PURE__ */ jsx35(
5944
5996
  "div",
5945
5997
  {
5946
5998
  className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`,
5947
- children: /* @__PURE__ */ jsx34(
5999
+ children: /* @__PURE__ */ jsx35(
5948
6000
  MatchingActivityMaterialContent_default,
5949
6001
  {
5950
6002
  uniqueValue: JSON.stringify(data.contentMap),
@@ -5964,9 +6016,9 @@ var MatchingActivityContent = ({
5964
6016
  var MatchingActivityContent_default = MatchingActivityContent;
5965
6017
 
5966
6018
  // src/components/activities/material-contents/MCMAActivityMaterialContent.tsx
5967
- import { useEffect as useEffect12, useState as useState21 } from "react";
6019
+ import { useEffect as useEffect12, useState as useState22 } from "react";
5968
6020
  import { InlineMath as InlineMath7 } from "react-katex";
5969
- import { jsx as jsx35, jsxs as jsxs25 } from "react/jsx-runtime";
6021
+ import { jsx as jsx36, jsxs as jsxs25 } from "react/jsx-runtime";
5970
6022
  var MCMAActivityMaterialContent = ({
5971
6023
  uniqueValue,
5972
6024
  answerMap,
@@ -5977,7 +6029,7 @@ var MCMAActivityMaterialContent = ({
5977
6029
  isPreview,
5978
6030
  showCorrectAnswer
5979
6031
  }) => {
5980
- const [displayAnswerMap, setDisplayAnswerMap] = useState21(answerMap);
6032
+ const [displayAnswerMap, setDisplayAnswerMap] = useState22(answerMap);
5981
6033
  useEffect12(() => {
5982
6034
  if (showCorrectAnswer) {
5983
6035
  const correctAnswerMap = {};
@@ -6004,11 +6056,11 @@ var MCMAActivityMaterialContent = ({
6004
6056
  return "INCORRECT";
6005
6057
  };
6006
6058
  const correctAnswerList = retrieveCorrectAnswerList();
6007
- return /* @__PURE__ */ jsx35("div", { className: "flex flex-col h-full", children: Object.keys(materialMap).map((materialKey, index) => {
6008
- return /* @__PURE__ */ jsx35("div", { className: "flex flex-col flex-1 min-h-0", children: /* @__PURE__ */ jsxs25("div", { className: "flex-1 flex flex-col border-catchup-lighter-gray rounded-catchup-xlarge px-5 md:px-0 min-h-0", children: [
6009
- /* @__PURE__ */ jsx35("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx35("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcma_text") }) }),
6010
- /* @__PURE__ */ jsx35("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx35(DividerLine_default, {}) }),
6011
- /* @__PURE__ */ jsx35("div", { className: "flex-1 min-h-0 overflow-y-auto", children: checkCanAnswerQuestion() ? /* @__PURE__ */ jsx35("div", { className: "flex flex-row w-full flex-wrap ", children: materialMap[materialKey].map(
6059
+ return /* @__PURE__ */ jsx36("div", { className: "flex flex-col h-full", children: Object.keys(materialMap).map((materialKey, index) => {
6060
+ return /* @__PURE__ */ jsx36("div", { className: "flex flex-col flex-1 min-h-0", children: /* @__PURE__ */ jsxs25("div", { className: "flex-1 flex flex-col border-catchup-lighter-gray rounded-catchup-xlarge px-5 md:px-0 min-h-0", children: [
6061
+ /* @__PURE__ */ jsx36("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx36("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcma_text") }) }),
6062
+ /* @__PURE__ */ jsx36("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx36(DividerLine_default, {}) }),
6063
+ /* @__PURE__ */ jsx36("div", { className: "flex-1 min-h-0 overflow-y-auto", children: checkCanAnswerQuestion() ? /* @__PURE__ */ jsx36("div", { className: "flex flex-row w-full flex-wrap ", children: materialMap[materialKey].map(
6012
6064
  (materialSubKey, index2) => {
6013
6065
  const foundAnswer = displayAnswerMap[materialKey].find(
6014
6066
  (learnerAnswer) => learnerAnswer === materialSubKey
@@ -6029,7 +6081,7 @@ var MCMAActivityMaterialContent = ({
6029
6081
  onChange(answerMap, materialKey, materialSubKey);
6030
6082
  },
6031
6083
  children: [
6032
- /* @__PURE__ */ jsx35(
6084
+ /* @__PURE__ */ jsx36(
6033
6085
  BaseImage_default,
6034
6086
  {
6035
6087
  src: displayAnswerMap[materialKey].includes(materialSubKey) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -6039,16 +6091,16 @@ var MCMAActivityMaterialContent = ({
6039
6091
  }
6040
6092
  }
6041
6093
  ),
6042
- /* @__PURE__ */ jsx35("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx35("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6094
+ /* @__PURE__ */ jsx36("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx36("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6043
6095
  materialSubKey
6044
- ).map((inputPart, index3) => /* @__PURE__ */ jsx35(
6096
+ ).map((inputPart, index3) => /* @__PURE__ */ jsx36(
6045
6097
  "span",
6046
6098
  {
6047
6099
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6048
- children: inputPart.isEquation ? /* @__PURE__ */ jsx35("span", { className: "text-xl", children: /* @__PURE__ */ jsx35(InlineMath7, { math: inputPart.value }) }) : inputPart.value
6100
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx36("span", { className: "text-xl", children: /* @__PURE__ */ jsx36(InlineMath7, { math: inputPart.value }) }) : inputPart.value
6049
6101
  },
6050
6102
  index3
6051
- )) }) : /* @__PURE__ */ jsx35(
6103
+ )) }) : /* @__PURE__ */ jsx36(
6052
6104
  ShowMaterialMediaByContentType_default,
6053
6105
  {
6054
6106
  contentType: contentMap.type,
@@ -6062,13 +6114,13 @@ var MCMAActivityMaterialContent = ({
6062
6114
  index2
6063
6115
  );
6064
6116
  }
6065
- ) }) : /* @__PURE__ */ jsx35("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
6117
+ ) }) : /* @__PURE__ */ jsx36("p", { className: "text-xl", children: constructInputWithSpecialExpressionList(
6066
6118
  displayAnswerMap[materialKey]
6067
- ).map((inputPart, index2) => /* @__PURE__ */ jsx35(
6119
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx36(
6068
6120
  "span",
6069
6121
  {
6070
6122
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6071
- children: inputPart.isEquation ? /* @__PURE__ */ jsx35("span", { className: "text-xl", children: /* @__PURE__ */ jsx35(InlineMath7, { math: inputPart.value }) }) : inputPart.value
6123
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx36("span", { className: "text-xl", children: /* @__PURE__ */ jsx36(InlineMath7, { math: inputPart.value }) }) : inputPart.value
6072
6124
  },
6073
6125
  index2
6074
6126
  )) }, materialKey) })
@@ -6078,7 +6130,7 @@ var MCMAActivityMaterialContent = ({
6078
6130
  var MCMAActivityMaterialContent_default = MCMAActivityMaterialContent;
6079
6131
 
6080
6132
  // src/components/activities/MCMAActivityContent.tsx
6081
- import { jsx as jsx36, jsxs as jsxs26 } from "react/jsx-runtime";
6133
+ import { jsx as jsx37, jsxs as jsxs26 } from "react/jsx-runtime";
6082
6134
  var MCMAActivityContent = ({
6083
6135
  answerMap,
6084
6136
  data,
@@ -6104,10 +6156,10 @@ var MCMAActivityContent = ({
6104
6156
  changeAnswer(answerMap2);
6105
6157
  };
6106
6158
  return /* @__PURE__ */ jsxs26("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
6107
- /* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx36(ActivityBodyContent_default, { bodyMap: MCMABodyMap, templateType: "MCMA" }) }),
6108
- /* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx36(DividerLine_default, {}) }),
6109
- /* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx36(VerticalDividerLine_default, {}) }),
6110
- /* @__PURE__ */ jsx36("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx36(
6159
+ /* @__PURE__ */ jsx37("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx37(ActivityBodyContent_default, { bodyMap: MCMABodyMap, templateType: "MCMA" }) }),
6160
+ /* @__PURE__ */ jsx37("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx37(DividerLine_default, {}) }),
6161
+ /* @__PURE__ */ jsx37("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx37(VerticalDividerLine_default, {}) }),
6162
+ /* @__PURE__ */ jsx37("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx37(
6111
6163
  MCMAActivityMaterialContent_default,
6112
6164
  {
6113
6165
  uniqueValue: JSON.stringify(data.contentMap),
@@ -6125,9 +6177,9 @@ var MCMAActivityContent = ({
6125
6177
  var MCMAActivityContent_default = MCMAActivityContent;
6126
6178
 
6127
6179
  // src/components/activities/material-contents/MCSAActivityMaterialContent.tsx
6128
- import { useEffect as useEffect13, useState as useState22 } from "react";
6180
+ import { useEffect as useEffect13, useState as useState23 } from "react";
6129
6181
  import { InlineMath as InlineMath8 } from "react-katex";
6130
- import { jsx as jsx37, jsxs as jsxs27 } from "react/jsx-runtime";
6182
+ import { jsx as jsx38, jsxs as jsxs27 } from "react/jsx-runtime";
6131
6183
  var MCSAActivityMaterialContent = ({
6132
6184
  uniqueValue,
6133
6185
  answerMap,
@@ -6138,7 +6190,7 @@ var MCSAActivityMaterialContent = ({
6138
6190
  isPreview,
6139
6191
  showCorrectAnswer
6140
6192
  }) => {
6141
- const [displayAnswerMap, setDisplayAnswerMap] = useState22(answerMap);
6193
+ const [displayAnswerMap, setDisplayAnswerMap] = useState23(answerMap);
6142
6194
  useEffect13(() => {
6143
6195
  if (showCorrectAnswer) {
6144
6196
  const correctAnswer2 = retrieveCorrectAnswer();
@@ -6159,11 +6211,11 @@ var MCSAActivityMaterialContent = ({
6159
6211
  return "INCORRECT";
6160
6212
  };
6161
6213
  const correctAnswer = retrieveCorrectAnswer();
6162
- return /* @__PURE__ */ jsx37("div", { className: "flex flex-col h-full", children: Object.keys(materialMap).map((materialKey, index) => {
6163
- return /* @__PURE__ */ jsx37("div", { className: "flex flex-col flex-1 min-h-0", children: /* @__PURE__ */ jsxs27("div", { className: "flex-1 flex flex-col border-catchup-lighter-gray rounded-catchup-xlarge px-5 md:px-0 min-h-0", children: [
6164
- /* @__PURE__ */ jsx37("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx37("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcsa_text") }) }),
6165
- /* @__PURE__ */ jsx37("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx37(DividerLine_default, {}) }),
6166
- /* @__PURE__ */ jsx37("div", { className: "flex-1 min-h-0 overflow-y-auto", children: checkCanAnswerQuestion() ? /* @__PURE__ */ jsx37(
6214
+ return /* @__PURE__ */ jsx38("div", { className: "flex flex-col h-full", children: Object.keys(materialMap).map((materialKey, index) => {
6215
+ return /* @__PURE__ */ jsx38("div", { className: "flex flex-col flex-1 min-h-0", children: /* @__PURE__ */ jsxs27("div", { className: "flex-1 flex flex-col border-catchup-lighter-gray rounded-catchup-xlarge px-5 md:px-0 min-h-0", children: [
6216
+ /* @__PURE__ */ jsx38("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx38("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_mcsa_text") }) }),
6217
+ /* @__PURE__ */ jsx38("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx38(DividerLine_default, {}) }),
6218
+ /* @__PURE__ */ jsx38("div", { className: "flex-1 min-h-0 overflow-y-auto", children: checkCanAnswerQuestion() ? /* @__PURE__ */ jsx38(
6167
6219
  "div",
6168
6220
  {
6169
6221
  className: `flex flex-row w-full ${Object.keys(materialMap[materialKey]).length <= 4 ? "justify-center" : ""} flex-wrap`,
@@ -6182,7 +6234,7 @@ var MCSAActivityMaterialContent = ({
6182
6234
  onChange(answerMap, materialKey, materialSubKey);
6183
6235
  },
6184
6236
  children: [
6185
- /* @__PURE__ */ jsx37(
6237
+ /* @__PURE__ */ jsx38(
6186
6238
  BaseImage_default,
6187
6239
  {
6188
6240
  src: displayAnswerMap[materialKey] === materialSubKey ? "/icons/item-element.webp" : "/icons/not-selected-item-element.webp",
@@ -6192,16 +6244,16 @@ var MCSAActivityMaterialContent = ({
6192
6244
  }
6193
6245
  }
6194
6246
  ),
6195
- /* @__PURE__ */ jsx37("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx37("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6247
+ /* @__PURE__ */ jsx38("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx38("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6196
6248
  materialSubKey
6197
- ).map((inputPart, index3) => /* @__PURE__ */ jsx37(
6249
+ ).map((inputPart, index3) => /* @__PURE__ */ jsx38(
6198
6250
  "span",
6199
6251
  {
6200
6252
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6201
- children: inputPart.isEquation ? /* @__PURE__ */ jsx37("span", { className: "text-xl", children: /* @__PURE__ */ jsx37(InlineMath8, { math: inputPart.value }) }) : inputPart.value
6253
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx38("span", { className: "text-xl", children: /* @__PURE__ */ jsx38(InlineMath8, { math: inputPart.value }) }) : inputPart.value
6202
6254
  },
6203
6255
  index3
6204
- )) }) : /* @__PURE__ */ jsx37(
6256
+ )) }) : /* @__PURE__ */ jsx38(
6205
6257
  ShowMaterialMediaByContentType_default,
6206
6258
  {
6207
6259
  contentType: contentMap.type,
@@ -6217,13 +6269,13 @@ var MCSAActivityMaterialContent = ({
6217
6269
  }
6218
6270
  )
6219
6271
  }
6220
- ) : /* @__PURE__ */ jsx37("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6272
+ ) : /* @__PURE__ */ jsx38("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6221
6273
  displayAnswerMap[materialKey]
6222
- ).map((inputPart, index2) => /* @__PURE__ */ jsx37(
6274
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx38(
6223
6275
  "span",
6224
6276
  {
6225
6277
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6226
- children: inputPart.isEquation ? /* @__PURE__ */ jsx37("span", { className: "text-xl", children: /* @__PURE__ */ jsx37(InlineMath8, { math: inputPart.value }) }) : inputPart.value
6278
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx38("span", { className: "text-xl", children: /* @__PURE__ */ jsx38(InlineMath8, { math: inputPart.value }) }) : inputPart.value
6227
6279
  },
6228
6280
  index2
6229
6281
  )) }) })
@@ -6233,7 +6285,7 @@ var MCSAActivityMaterialContent = ({
6233
6285
  var MCSAActivityMaterialContent_default = MCSAActivityMaterialContent;
6234
6286
 
6235
6287
  // src/components/activities/MCSAActivityContent.tsx
6236
- import { jsx as jsx38, jsxs as jsxs28 } from "react/jsx-runtime";
6288
+ import { jsx as jsx39, jsxs as jsxs28 } from "react/jsx-runtime";
6237
6289
  var MCSAActivityContent = ({
6238
6290
  answerMap,
6239
6291
  data,
@@ -6252,10 +6304,10 @@ var MCSAActivityContent = ({
6252
6304
  changeAnswer(answerMap2);
6253
6305
  };
6254
6306
  return /* @__PURE__ */ jsxs28("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
6255
- /* @__PURE__ */ jsx38("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx38(ActivityBodyContent_default, { bodyMap: MCSABodyMap, templateType: "MCSA" }) }),
6256
- /* @__PURE__ */ jsx38("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx38(DividerLine_default, {}) }),
6257
- /* @__PURE__ */ jsx38("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx38(VerticalDividerLine_default, {}) }),
6258
- /* @__PURE__ */ jsx38("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx38(
6307
+ /* @__PURE__ */ jsx39("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[60%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx39(ActivityBodyContent_default, { bodyMap: MCSABodyMap, templateType: "MCSA" }) }),
6308
+ /* @__PURE__ */ jsx39("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx39(DividerLine_default, {}) }),
6309
+ /* @__PURE__ */ jsx39("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx39(VerticalDividerLine_default, {}) }),
6310
+ /* @__PURE__ */ jsx39("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx39(
6259
6311
  MCSAActivityMaterialContent_default,
6260
6312
  {
6261
6313
  uniqueValue: JSON.stringify(data.contentMap),
@@ -6362,7 +6414,7 @@ var retrieveAcceptedFormats = (fileType) => {
6362
6414
  };
6363
6415
 
6364
6416
  // src/components/activities/material-contents/OpenEndedActivityMaterialContent.tsx
6365
- import { Fragment as Fragment5, jsx as jsx39, jsxs as jsxs29 } from "react/jsx-runtime";
6417
+ import { Fragment as Fragment5, jsx as jsx40, jsxs as jsxs29 } from "react/jsx-runtime";
6366
6418
  var OpenEndedActivityMaterialContent = ({
6367
6419
  answerMap,
6368
6420
  contentMap,
@@ -6377,7 +6429,7 @@ var OpenEndedActivityMaterialContent = ({
6377
6429
  fileType = retrieveFileTypeFromExtension(extension);
6378
6430
  }
6379
6431
  if (fileType === "IMAGE") {
6380
- return /* @__PURE__ */ jsx39("div", { className: "flex flex-col justify-center items-center my-5", children: /* @__PURE__ */ jsx39(
6432
+ return /* @__PURE__ */ jsx40("div", { className: "flex flex-col justify-center items-center my-5", children: /* @__PURE__ */ jsx40(
6381
6433
  BaseImage_default,
6382
6434
  {
6383
6435
  src: answerMapAnswer,
@@ -6387,9 +6439,9 @@ var OpenEndedActivityMaterialContent = ({
6387
6439
  }
6388
6440
  ) });
6389
6441
  } else if (fileType === "PDF") {
6390
- return /* @__PURE__ */ jsx39(BasePDF_default, { file: answerMapAnswer });
6442
+ return /* @__PURE__ */ jsx40(BasePDF_default, { file: answerMapAnswer });
6391
6443
  } else if (fileType === "AUDIO") {
6392
- return /* @__PURE__ */ jsx39("div", { className: "h-[56px]", children: /* @__PURE__ */ jsx39(
6444
+ return /* @__PURE__ */ jsx40("div", { className: "h-[56px]", children: /* @__PURE__ */ jsx40(
6393
6445
  "audio",
6394
6446
  {
6395
6447
  className: "h-full w-full rounded-catchup-xlarge",
@@ -6400,7 +6452,7 @@ var OpenEndedActivityMaterialContent = ({
6400
6452
  }
6401
6453
  ) });
6402
6454
  } else if (fileType === "TEXT") {
6403
- return /* @__PURE__ */ jsx39(
6455
+ return /* @__PURE__ */ jsx40(
6404
6456
  InputGroup_default,
6405
6457
  {
6406
6458
  type: "textarea",
@@ -6419,7 +6471,7 @@ var OpenEndedActivityMaterialContent = ({
6419
6471
  const answerMapAnswer = answerMap2["ANSWER"];
6420
6472
  const extension = answerMapAnswer.split(".").pop();
6421
6473
  const fileType = retrieveFileTypeFromExtension(extension);
6422
- return /* @__PURE__ */ jsx39(Fragment5, { children: fileType === "IMAGE" ? /* @__PURE__ */ jsx39("div", { className: "flex flex-col justify-center items-center my-5", children: /* @__PURE__ */ jsx39(
6474
+ return /* @__PURE__ */ jsx40(Fragment5, { children: fileType === "IMAGE" ? /* @__PURE__ */ jsx40("div", { className: "flex flex-col justify-center items-center my-5", children: /* @__PURE__ */ jsx40(
6423
6475
  BaseImage_default,
6424
6476
  {
6425
6477
  src: answerMapAnswer,
@@ -6427,11 +6479,11 @@ var OpenEndedActivityMaterialContent = ({
6427
6479
  size: "custom",
6428
6480
  className: "w-[80%] rounded-catchup-xlarge max-h-[50vh] object-contain"
6429
6481
  }
6430
- ) }) : fileType === "PDF" ? /* @__PURE__ */ jsx39("div", { className: "flex flex-col justify-center items-center my-5", children: /* @__PURE__ */ jsx39(BasePDF_default, { file: answerMapAnswer }) }) : null });
6482
+ ) }) : fileType === "PDF" ? /* @__PURE__ */ jsx40("div", { className: "flex flex-col justify-center items-center my-5", children: /* @__PURE__ */ jsx40(BasePDF_default, { file: answerMapAnswer }) }) : null });
6431
6483
  };
6432
6484
  const RenderAudioContent = (answerMap2) => {
6433
6485
  const answerMapAnswer = answerMap2["ANSWER"];
6434
- return /* @__PURE__ */ jsx39("div", { className: "h-[56px]", children: /* @__PURE__ */ jsx39(
6486
+ return /* @__PURE__ */ jsx40("div", { className: "h-[56px]", children: /* @__PURE__ */ jsx40(
6435
6487
  "audio",
6436
6488
  {
6437
6489
  className: "h-full w-full rounded-catchup-xlarge",
@@ -6443,15 +6495,15 @@ var OpenEndedActivityMaterialContent = ({
6443
6495
  ) });
6444
6496
  };
6445
6497
  return /* @__PURE__ */ jsxs29("div", { className: "flex flex-col h-full", children: [
6446
- /* @__PURE__ */ jsx39("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx39("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_open_ended_text") }) }),
6447
- /* @__PURE__ */ jsx39("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx39(DividerLine_default, {}) }),
6448
- /* @__PURE__ */ jsx39("div", { className: "flex-1 min-h-0 overflow-y-auto", children: contentMap.type === "TEXT" ? RenderTextContent(answerMap) : contentMap.type === "IMAGE" ? RenderImageContent(answerMap) : contentMap.type === "AUDIO" ? RenderAudioContent(answerMap) : null })
6498
+ /* @__PURE__ */ jsx40("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx40("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_open_ended_text") }) }),
6499
+ /* @__PURE__ */ jsx40("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx40(DividerLine_default, {}) }),
6500
+ /* @__PURE__ */ jsx40("div", { className: "flex-1 min-h-0 overflow-y-auto", children: contentMap.type === "TEXT" ? RenderTextContent(answerMap) : contentMap.type === "IMAGE" ? RenderImageContent(answerMap) : contentMap.type === "AUDIO" ? RenderAudioContent(answerMap) : null })
6449
6501
  ] });
6450
6502
  };
6451
6503
  var OpenEndedActivityMaterialContent_default = OpenEndedActivityMaterialContent;
6452
6504
 
6453
6505
  // src/components/activities/OpenEndedActivityContent.tsx
6454
- import { Fragment as Fragment6, jsx as jsx40, jsxs as jsxs30 } from "react/jsx-runtime";
6506
+ import { Fragment as Fragment6, jsx as jsx41, jsxs as jsxs30 } from "react/jsx-runtime";
6455
6507
  var OpenEndedActivityContent = ({
6456
6508
  answerMap,
6457
6509
  data,
@@ -6469,11 +6521,11 @@ var OpenEndedActivityContent = ({
6469
6521
  changeAnswer(answerMap2);
6470
6522
  };
6471
6523
  return /* @__PURE__ */ jsxs30("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
6472
- /* @__PURE__ */ jsx40(
6524
+ /* @__PURE__ */ jsx41(
6473
6525
  "div",
6474
6526
  {
6475
6527
  className: `${showMaterialContent ? isFullScreen ? "w-full" : "w-full md:w-[40%] md:overflow-y-auto" : "w-full"}`,
6476
- children: /* @__PURE__ */ jsx40(
6528
+ children: /* @__PURE__ */ jsx41(
6477
6529
  ActivityBodyContent_default,
6478
6530
  {
6479
6531
  bodyMap: openEndedBodyMap,
@@ -6483,15 +6535,15 @@ var OpenEndedActivityContent = ({
6483
6535
  }
6484
6536
  ),
6485
6537
  showMaterialContent ? /* @__PURE__ */ jsxs30(Fragment6, { children: [
6486
- /* @__PURE__ */ jsx40(
6538
+ /* @__PURE__ */ jsx41(
6487
6539
  "div",
6488
6540
  {
6489
6541
  className: `${isFullScreen ? "contents" : "contents md:hidden"}`,
6490
- children: /* @__PURE__ */ jsx40(DividerLine_default, {})
6542
+ children: /* @__PURE__ */ jsx41(DividerLine_default, {})
6491
6543
  }
6492
6544
  ),
6493
- /* @__PURE__ */ jsx40("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx40(VerticalDividerLine_default, {}) }),
6494
- /* @__PURE__ */ jsx40("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx40(
6545
+ /* @__PURE__ */ jsx41("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx41(VerticalDividerLine_default, {}) }),
6546
+ /* @__PURE__ */ jsx41("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx41(
6495
6547
  OpenEndedActivityMaterialContent_default,
6496
6548
  {
6497
6549
  answerMap,
@@ -6506,9 +6558,9 @@ var OpenEndedActivityContent = ({
6506
6558
  var OpenEndedActivityContent_default = OpenEndedActivityContent;
6507
6559
 
6508
6560
  // src/components/activities/material-contents/OrderingActivityMaterialContent.tsx
6509
- import { useEffect as useEffect14, useState as useState23, useRef as useRef7 } from "react";
6561
+ import { useEffect as useEffect14, useState as useState24, useRef as useRef7 } from "react";
6510
6562
  import { InlineMath as InlineMath9 } from "react-katex";
6511
- import { jsx as jsx41, jsxs as jsxs31 } from "react/jsx-runtime";
6563
+ import { jsx as jsx42, jsxs as jsxs31 } from "react/jsx-runtime";
6512
6564
  var OrderingActivityMaterialContent = ({
6513
6565
  uniqueValue,
6514
6566
  answerMap,
@@ -6519,22 +6571,22 @@ var OrderingActivityMaterialContent = ({
6519
6571
  isPreview,
6520
6572
  showCorrectAnswer
6521
6573
  }) => {
6522
- const [selectedKey, setSelectedKey] = useState23(null);
6523
- const [draggedKey, setDraggedKey] = useState23(null);
6524
- const [dropTargetKey, setDropTargetKey] = useState23(null);
6525
- const [draggedElement, setDraggedElement] = useState23(
6574
+ const [selectedKey, setSelectedKey] = useState24(null);
6575
+ const [draggedKey, setDraggedKey] = useState24(null);
6576
+ const [dropTargetKey, setDropTargetKey] = useState24(null);
6577
+ const [draggedElement, setDraggedElement] = useState24(
6526
6578
  null
6527
6579
  );
6528
6580
  const dragElementRef = useRef7(null);
6529
- const [mousePosition, setMousePosition] = useState23({
6581
+ const [mousePosition, setMousePosition] = useState24({
6530
6582
  x: 0,
6531
6583
  y: 0
6532
6584
  });
6533
- const [touchPosition, setTouchPosition] = useState23({
6585
+ const [touchPosition, setTouchPosition] = useState24({
6534
6586
  x: 0,
6535
6587
  y: 0
6536
6588
  });
6537
- const [displayAnswerMap, setDisplayAnswerMap] = useState23(answerMap);
6589
+ const [displayAnswerMap, setDisplayAnswerMap] = useState24(answerMap);
6538
6590
  useEffect14(() => {
6539
6591
  if (showCorrectAnswer) {
6540
6592
  const correctAnswerMap = {};
@@ -6633,7 +6685,7 @@ var OrderingActivityMaterialContent = ({
6633
6685
  onMouseMove: handleMouseMove,
6634
6686
  onMouseUp: handleMouseUp,
6635
6687
  children: [
6636
- draggedKey && mousePosition.x > 0 && /* @__PURE__ */ jsx41(
6688
+ draggedKey && mousePosition.x > 0 && /* @__PURE__ */ jsx42(
6637
6689
  "div",
6638
6690
  {
6639
6691
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -6642,16 +6694,16 @@ var OrderingActivityMaterialContent = ({
6642
6694
  top: `${mousePosition.y}px`,
6643
6695
  transform: "translate(-50%, -50%)"
6644
6696
  },
6645
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx41("div", { className: "border-catchup-blue border-2 px-3 py-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx41("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6697
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx42("div", { className: "border-catchup-blue border-2 px-3 py-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx42("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6646
6698
  materialMap[displayAnswerMap[draggedKey]]
6647
- ).map((inputPart, index) => /* @__PURE__ */ jsx41(
6699
+ ).map((inputPart, index) => /* @__PURE__ */ jsx42(
6648
6700
  "span",
6649
6701
  {
6650
6702
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6651
- children: inputPart.isEquation ? /* @__PURE__ */ jsx41("span", { className: "text-xl", children: /* @__PURE__ */ jsx41(InlineMath9, { math: inputPart.value }) }) : inputPart.value
6703
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx42("span", { className: "text-xl", children: /* @__PURE__ */ jsx42(InlineMath9, { math: inputPart.value }) }) : inputPart.value
6652
6704
  },
6653
6705
  index
6654
- )) }) }) : /* @__PURE__ */ jsx41("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx41(
6706
+ )) }) }) : /* @__PURE__ */ jsx42("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx42(
6655
6707
  ShowMaterialMediaByContentType_default,
6656
6708
  {
6657
6709
  contentType: contentMap.type,
@@ -6662,7 +6714,7 @@ var OrderingActivityMaterialContent = ({
6662
6714
  ) })
6663
6715
  }
6664
6716
  ),
6665
- draggedKey && touchPosition.x > 0 && /* @__PURE__ */ jsx41(
6717
+ draggedKey && touchPosition.x > 0 && /* @__PURE__ */ jsx42(
6666
6718
  "div",
6667
6719
  {
6668
6720
  className: "fixed pointer-events-none z-50 opacity-80",
@@ -6671,16 +6723,16 @@ var OrderingActivityMaterialContent = ({
6671
6723
  top: `${touchPosition.y}px`,
6672
6724
  transform: "translate(-50%, -50%)"
6673
6725
  },
6674
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx41("div", { className: "border-catchup-blue border-2 px-3 py-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx41("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6726
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx42("div", { className: "border-catchup-blue border-2 px-3 py-2 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx42("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6675
6727
  materialMap[displayAnswerMap[draggedKey]]
6676
- ).map((inputPart, index) => /* @__PURE__ */ jsx41(
6728
+ ).map((inputPart, index) => /* @__PURE__ */ jsx42(
6677
6729
  "span",
6678
6730
  {
6679
6731
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6680
- children: inputPart.isEquation ? /* @__PURE__ */ jsx41("span", { className: "text-xl", children: /* @__PURE__ */ jsx41(InlineMath9, { math: inputPart.value }) }) : inputPart.value
6732
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx42("span", { className: "text-xl", children: /* @__PURE__ */ jsx42(InlineMath9, { math: inputPart.value }) }) : inputPart.value
6681
6733
  },
6682
6734
  index
6683
- )) }) }) : /* @__PURE__ */ jsx41("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx41(
6735
+ )) }) }) : /* @__PURE__ */ jsx42("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-catchup-white shadow-lg", children: /* @__PURE__ */ jsx42(
6684
6736
  ShowMaterialMediaByContentType_default,
6685
6737
  {
6686
6738
  contentType: contentMap.type,
@@ -6691,24 +6743,24 @@ var OrderingActivityMaterialContent = ({
6691
6743
  ) })
6692
6744
  }
6693
6745
  ),
6694
- /* @__PURE__ */ jsx41("div", { className: "flex-1 min-h-0 overflow-y-auto", children: Object.keys(displayAnswerMap).map((materialKey, index) => {
6746
+ /* @__PURE__ */ jsx42("div", { className: "flex-1 min-h-0 overflow-y-auto", children: Object.keys(displayAnswerMap).map((materialKey, index) => {
6695
6747
  const learnerAnswerState = checkAnswerState(
6696
6748
  displayAnswerMap[materialKey] + "",
6697
6749
  index + ""
6698
6750
  );
6699
- return /* @__PURE__ */ jsx41("div", { className: "w-full", children: /* @__PURE__ */ jsxs31(
6751
+ return /* @__PURE__ */ jsx42("div", { className: "w-full", children: /* @__PURE__ */ jsxs31(
6700
6752
  "div",
6701
6753
  {
6702
6754
  className: `flex flex-row items-center my-4 mx-2`,
6703
6755
  children: [
6704
- /* @__PURE__ */ jsx41("div", { className: "mr-3", children: /* @__PURE__ */ jsx41("div", { className: "h-catchup-activity-box-item w-catchup-activity-box-item flex flex-col items-center justify-center cursor-pointer transition-all duration-300 overflow-y-auto", children: /* @__PURE__ */ jsx41(
6756
+ /* @__PURE__ */ jsx42("div", { className: "mr-3", children: /* @__PURE__ */ jsx42("div", { className: "h-catchup-activity-box-item w-catchup-activity-box-item flex flex-col items-center justify-center cursor-pointer transition-all duration-300 overflow-y-auto", children: /* @__PURE__ */ jsx42(
6705
6757
  "div",
6706
6758
  {
6707
6759
  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]`,
6708
- children: /* @__PURE__ */ jsx41("p", { className: "", children: parseFloat(materialKey) + 1 })
6760
+ children: /* @__PURE__ */ jsx42("p", { className: "", children: parseFloat(materialKey) + 1 })
6709
6761
  }
6710
6762
  ) }) }),
6711
- /* @__PURE__ */ jsx41(
6763
+ /* @__PURE__ */ jsx42(
6712
6764
  "div",
6713
6765
  {
6714
6766
  ref: draggedKey === materialKey ? dragElementRef : null,
@@ -6721,21 +6773,21 @@ var OrderingActivityMaterialContent = ({
6721
6773
  onTouchStart: (e) => handleTouchStart(e, materialKey, e.currentTarget),
6722
6774
  onTouchMove: handleTouchMove,
6723
6775
  onTouchEnd: handleTouchEnd,
6724
- children: /* @__PURE__ */ jsx41(
6776
+ children: /* @__PURE__ */ jsx42(
6725
6777
  "div",
6726
6778
  {
6727
6779
  className: `${contentMap.type === "TEXT" ? "h-catchup-activity-text-box-item" : "h-catchup-activity-media-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"}`,
6728
6780
  onClick: () => handleSelectItem(materialKey),
6729
- children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx41("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6781
+ children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx42("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6730
6782
  materialMap[displayAnswerMap[materialKey]]
6731
- ).map((inputPart, index2) => /* @__PURE__ */ jsx41(
6783
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx42(
6732
6784
  "span",
6733
6785
  {
6734
6786
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6735
- children: inputPart.isEquation ? /* @__PURE__ */ jsx41("span", { className: "text-xl", children: /* @__PURE__ */ jsx41(InlineMath9, { math: inputPart.value }) }) : inputPart.value
6787
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx42("span", { className: "text-xl", children: /* @__PURE__ */ jsx42(InlineMath9, { math: inputPart.value }) }) : inputPart.value
6736
6788
  },
6737
6789
  index2
6738
- )) }) : /* @__PURE__ */ jsx41(
6790
+ )) }) : /* @__PURE__ */ jsx42(
6739
6791
  ShowMaterialMediaByContentType_default,
6740
6792
  {
6741
6793
  contentType: contentMap.type,
@@ -6759,7 +6811,7 @@ var OrderingActivityMaterialContent = ({
6759
6811
  var OrderingActivityMaterialContent_default = OrderingActivityMaterialContent;
6760
6812
 
6761
6813
  // src/components/activities/OrderingActivityContent.tsx
6762
- import { jsx as jsx42, jsxs as jsxs32 } from "react/jsx-runtime";
6814
+ import { jsx as jsx43, jsxs as jsxs32 } from "react/jsx-runtime";
6763
6815
  var OrderingActivityContent = ({
6764
6816
  answerMap,
6765
6817
  data,
@@ -6780,11 +6832,11 @@ var OrderingActivityContent = ({
6780
6832
  changeAnswer(answerMap2);
6781
6833
  };
6782
6834
  return /* @__PURE__ */ jsxs32("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
6783
- /* @__PURE__ */ jsx42(
6835
+ /* @__PURE__ */ jsx43(
6784
6836
  "div",
6785
6837
  {
6786
6838
  className: `${isFullScreen ? "w-full" : "w-full md:w-[40%] md:overflow-y-auto"}`,
6787
- children: /* @__PURE__ */ jsx42(
6839
+ children: /* @__PURE__ */ jsx43(
6788
6840
  ActivityBodyContent_default,
6789
6841
  {
6790
6842
  bodyMap: orderingBodyMap,
@@ -6793,13 +6845,13 @@ var OrderingActivityContent = ({
6793
6845
  )
6794
6846
  }
6795
6847
  ),
6796
- /* @__PURE__ */ jsx42("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx42(DividerLine_default, {}) }),
6797
- /* @__PURE__ */ jsx42("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx42(VerticalDividerLine_default, {}) }),
6798
- /* @__PURE__ */ jsx42(
6848
+ /* @__PURE__ */ jsx43("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx43(DividerLine_default, {}) }),
6849
+ /* @__PURE__ */ jsx43("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx43(VerticalDividerLine_default, {}) }),
6850
+ /* @__PURE__ */ jsx43(
6799
6851
  "div",
6800
6852
  {
6801
6853
  className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`,
6802
- children: /* @__PURE__ */ jsx42(
6854
+ children: /* @__PURE__ */ jsx43(
6803
6855
  OrderingActivityMaterialContent_default,
6804
6856
  {
6805
6857
  uniqueValue: JSON.stringify(data.contentMap),
@@ -6819,9 +6871,9 @@ var OrderingActivityContent = ({
6819
6871
  var OrderingActivityContent_default = OrderingActivityContent;
6820
6872
 
6821
6873
  // src/components/activities/material-contents/TrueFalseActivityMaterialContent.tsx
6822
- import { useEffect as useEffect15, useState as useState24 } from "react";
6874
+ import { useEffect as useEffect15, useState as useState25 } from "react";
6823
6875
  import { InlineMath as InlineMath10 } from "react-katex";
6824
- import { Fragment as Fragment7, jsx as jsx43, jsxs as jsxs33 } from "react/jsx-runtime";
6876
+ import { Fragment as Fragment7, jsx as jsx44, jsxs as jsxs33 } from "react/jsx-runtime";
6825
6877
  var TrueFalseActivityMaterialContent = ({
6826
6878
  uniqueValue,
6827
6879
  answerMap,
@@ -6832,8 +6884,8 @@ var TrueFalseActivityMaterialContent = ({
6832
6884
  isPreview,
6833
6885
  showCorrectAnswer
6834
6886
  }) => {
6835
- const [shuffleOptionList, setShuffleOptionList] = useState24([]);
6836
- const [displayAnswerMap, setDisplayAnswerMap] = useState24(answerMap);
6887
+ const [shuffleOptionList, setShuffleOptionList] = useState25([]);
6888
+ const [displayAnswerMap, setDisplayAnswerMap] = useState25(answerMap);
6837
6889
  useEffect15(() => {
6838
6890
  const optionList = [];
6839
6891
  optionList.push(...materialMap.trueList);
@@ -6859,13 +6911,13 @@ var TrueFalseActivityMaterialContent = ({
6859
6911
  return "INCORRECT";
6860
6912
  };
6861
6913
  return /* @__PURE__ */ jsxs33("div", { className: "flex flex-col h-full", children: [
6862
- /* @__PURE__ */ jsx43("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx43("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_true_false_text") }) }),
6863
- /* @__PURE__ */ jsx43("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx43(DividerLine_default, {}) }),
6914
+ /* @__PURE__ */ jsx44("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx44("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_true_false_text") }) }),
6915
+ /* @__PURE__ */ jsx44("div", { className: "hidden md:block flex-shrink-0", children: /* @__PURE__ */ jsx44(DividerLine_default, {}) }),
6864
6916
  /* @__PURE__ */ jsxs33("div", { className: "flex flex-row justify-end items-center gap-x-2 flex-shrink-0", children: [
6865
- /* @__PURE__ */ jsx43("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx43("p", { className: "font-bold text-lg", children: i18n_default.t("true") }) }),
6866
- /* @__PURE__ */ jsx43("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx43("p", { className: "font-bold text-lg", children: i18n_default.t("false") }) })
6917
+ /* @__PURE__ */ jsx44("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx44("p", { className: "font-bold text-lg", children: i18n_default.t("true") }) }),
6918
+ /* @__PURE__ */ jsx44("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx44("p", { className: "font-bold text-lg", children: i18n_default.t("false") }) })
6867
6919
  ] }),
6868
- /* @__PURE__ */ jsx43("div", { className: "flex-1 min-h-0 overflow-y-auto", children: checkCanAnswerQuestion() ? /* @__PURE__ */ jsx43("div", { className: `flex flex-row w-full justify-center flex-wrap`, children: shuffleOptionList.map((shuffleOption, index) => {
6920
+ /* @__PURE__ */ jsx44("div", { className: "flex-1 min-h-0 overflow-y-auto", children: checkCanAnswerQuestion() ? /* @__PURE__ */ jsx44("div", { className: `flex flex-row w-full justify-center flex-wrap`, children: shuffleOptionList.map((shuffleOption, index) => {
6869
6921
  const correctAnswer = materialMap.trueList.find(
6870
6922
  (trueItem) => trueItem === shuffleOption
6871
6923
  ) !== void 0 ? "TRUE" : "FALSE";
@@ -6881,16 +6933,16 @@ var TrueFalseActivityMaterialContent = ({
6881
6933
  {
6882
6934
  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" : ""}`,
6883
6935
  children: [
6884
- /* @__PURE__ */ jsx43("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx43("p", { className: "text-xl p-2 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6936
+ /* @__PURE__ */ jsx44("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ jsx44("p", { className: "text-xl p-2 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
6885
6937
  shuffleOption
6886
- ).map((inputPart, index2) => /* @__PURE__ */ jsx43(
6938
+ ).map((inputPart, index2) => /* @__PURE__ */ jsx44(
6887
6939
  "span",
6888
6940
  {
6889
6941
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6890
- children: inputPart.isEquation ? /* @__PURE__ */ jsx43("span", { className: "text-xl", children: /* @__PURE__ */ jsx43(InlineMath10, { math: inputPart.value }) }) : inputPart.value
6942
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx44("span", { className: "text-xl", children: /* @__PURE__ */ jsx44(InlineMath10, { math: inputPart.value }) }) : inputPart.value
6891
6943
  },
6892
6944
  index2
6893
- )) }) : /* @__PURE__ */ jsx43(
6945
+ )) }) : /* @__PURE__ */ jsx44(
6894
6946
  ShowMaterialMediaByContentType_default,
6895
6947
  {
6896
6948
  contentType: contentMap.type,
@@ -6900,7 +6952,7 @@ var TrueFalseActivityMaterialContent = ({
6900
6952
  `${uniqueValue}-${index}`
6901
6953
  ) }),
6902
6954
  /* @__PURE__ */ jsxs33("div", { className: "flex flex-row items-center gap-x-2", children: [
6903
- /* @__PURE__ */ jsx43("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx43("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ jsx43(
6955
+ /* @__PURE__ */ jsx44("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx44("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ jsx44(
6904
6956
  BaseImage_default,
6905
6957
  {
6906
6958
  src: displayAnswerMap.trueList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -6911,7 +6963,7 @@ var TrueFalseActivityMaterialContent = ({
6911
6963
  }
6912
6964
  }
6913
6965
  ) }) }),
6914
- /* @__PURE__ */ jsx43("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx43("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ jsx43(
6966
+ /* @__PURE__ */ jsx44("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx44("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ jsx44(
6915
6967
  BaseImage_default,
6916
6968
  {
6917
6969
  src: displayAnswerMap.falseList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
@@ -6929,12 +6981,12 @@ var TrueFalseActivityMaterialContent = ({
6929
6981
  );
6930
6982
  }) }) : /* @__PURE__ */ jsxs33(Fragment7, { children: [
6931
6983
  displayAnswerMap.trueList.map((item) => /* @__PURE__ */ jsxs33("div", { className: "flex flex-row items-center gap-x-2", children: [
6932
- /* @__PURE__ */ jsx43("div", { className: "flex-1", children: /* @__PURE__ */ jsx43("p", { children: item }) }),
6933
- /* @__PURE__ */ jsx43("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx43("p", { className: "underline", children: i18n_default.t("true") }) })
6984
+ /* @__PURE__ */ jsx44("div", { className: "flex-1", children: /* @__PURE__ */ jsx44("p", { children: item }) }),
6985
+ /* @__PURE__ */ jsx44("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx44("p", { className: "underline", children: i18n_default.t("true") }) })
6934
6986
  ] })),
6935
6987
  displayAnswerMap.falseList.map((item) => /* @__PURE__ */ jsxs33("div", { className: "flex flex-row items-center gap-x-2", children: [
6936
- /* @__PURE__ */ jsx43("div", { className: "flex-1", children: /* @__PURE__ */ jsx43("p", { children: item }) }),
6937
- /* @__PURE__ */ jsx43("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx43("p", { className: "underline", children: i18n_default.t("false") }) })
6988
+ /* @__PURE__ */ jsx44("div", { className: "flex-1", children: /* @__PURE__ */ jsx44("p", { children: item }) }),
6989
+ /* @__PURE__ */ jsx44("div", { className: "w-[50px]", children: /* @__PURE__ */ jsx44("p", { className: "underline", children: i18n_default.t("false") }) })
6938
6990
  ] }))
6939
6991
  ] }) })
6940
6992
  ] });
@@ -6942,7 +6994,7 @@ var TrueFalseActivityMaterialContent = ({
6942
6994
  var TrueFalseActivityMaterialContent_default = TrueFalseActivityMaterialContent;
6943
6995
 
6944
6996
  // src/components/activities/TrueFalseActivityContent.tsx
6945
- import { jsx as jsx44, jsxs as jsxs34 } from "react/jsx-runtime";
6997
+ import { jsx as jsx45, jsxs as jsxs34 } from "react/jsx-runtime";
6946
6998
  var TrueFalseActivityContent = ({
6947
6999
  answerMap,
6948
7000
  data,
@@ -6987,16 +7039,16 @@ var TrueFalseActivityContent = ({
6987
7039
  changeAnswer(answerMap2);
6988
7040
  };
6989
7041
  return /* @__PURE__ */ jsxs34("div", { className: `flex flex-col ${isFullScreen ? "" : "md:flex-row"} h-full`, children: [
6990
- /* @__PURE__ */ jsx44("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[40%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx44(
7042
+ /* @__PURE__ */ jsx45("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[40%] md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx45(
6991
7043
  ActivityBodyContent_default,
6992
7044
  {
6993
7045
  bodyMap: trueFalseBodyMap,
6994
7046
  templateType: "GROUPING"
6995
7047
  }
6996
7048
  ) }),
6997
- /* @__PURE__ */ jsx44("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx44(DividerLine_default, {}) }),
6998
- /* @__PURE__ */ jsx44("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx44(VerticalDividerLine_default, {}) }),
6999
- /* @__PURE__ */ jsx44("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx44(
7049
+ /* @__PURE__ */ jsx45("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ jsx45(DividerLine_default, {}) }),
7050
+ /* @__PURE__ */ jsx45("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ jsx45(VerticalDividerLine_default, {}) }),
7051
+ /* @__PURE__ */ jsx45("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1 md:overflow-y-auto"}`, children: /* @__PURE__ */ jsx45(
7000
7052
  TrueFalseActivityMaterialContent_default,
7001
7053
  {
7002
7054
  uniqueValue: JSON.stringify(data.contentMap),
@@ -7015,7 +7067,7 @@ var TrueFalseActivityContent_default = TrueFalseActivityContent;
7015
7067
 
7016
7068
  // src/components/activities/solution-contents/ActivitySolutionContent.tsx
7017
7069
  import { InlineMath as InlineMath11 } from "react-katex";
7018
- import { jsx as jsx45, jsxs as jsxs35 } from "react/jsx-runtime";
7070
+ import { jsx as jsx46, jsxs as jsxs35 } from "react/jsx-runtime";
7019
7071
  var ActivitySolutionContent = ({
7020
7072
  activityTemplateType,
7021
7073
  data
@@ -7047,8 +7099,8 @@ var ActivitySolutionContent = ({
7047
7099
  return null;
7048
7100
  }
7049
7101
  if (!solutionMap || Object.keys(solutionMap).length === 0) return null;
7050
- return /* @__PURE__ */ jsx45("div", { className: "mx-2", children: /* @__PURE__ */ jsxs35("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
7051
- /* @__PURE__ */ jsx45("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("solution") }),
7102
+ return /* @__PURE__ */ jsx46("div", { className: "mx-2", children: /* @__PURE__ */ jsxs35("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
7103
+ /* @__PURE__ */ jsx46("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("solution") }),
7052
7104
  Object.keys(solutionMap).map((key) => {
7053
7105
  let currentItem;
7054
7106
  try {
@@ -7058,12 +7110,12 @@ var ActivitySolutionContent = ({
7058
7110
  return null;
7059
7111
  }
7060
7112
  const { value } = currentItem;
7061
- return /* @__PURE__ */ jsx45("div", { className: "my-3 text-xl", children: constructInputWithSpecialExpressionList(value).map(
7062
- (inputPart, partIndex) => /* @__PURE__ */ jsx45(
7113
+ return /* @__PURE__ */ jsx46("div", { className: "my-3 text-xl", children: constructInputWithSpecialExpressionList(value).map(
7114
+ (inputPart, partIndex) => /* @__PURE__ */ jsx46(
7063
7115
  "span",
7064
7116
  {
7065
7117
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
7066
- children: inputPart.isEquation ? /* @__PURE__ */ jsx45("span", { className: "text-xl", children: /* @__PURE__ */ jsx45(InlineMath11, { math: inputPart.value }) }) : inputPart.value
7118
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx46("span", { className: "text-xl", children: /* @__PURE__ */ jsx46(InlineMath11, { math: inputPart.value }) }) : inputPart.value
7067
7119
  },
7068
7120
  `${key}_part_${partIndex}`
7069
7121
  )
@@ -7075,7 +7127,7 @@ var ActivitySolutionContent_default = ActivitySolutionContent;
7075
7127
 
7076
7128
  // src/components/activities/evaluation-rubric-contents/ActivityEvaluationRubricContent.tsx
7077
7129
  import { InlineMath as InlineMath12 } from "react-katex";
7078
- import { jsx as jsx46, jsxs as jsxs36 } from "react/jsx-runtime";
7130
+ import { jsx as jsx47, jsxs as jsxs36 } from "react/jsx-runtime";
7079
7131
  var ActivityEvaluationRubricContent = ({
7080
7132
  activityTemplateType,
7081
7133
  data
@@ -7106,7 +7158,7 @@ var ActivityEvaluationRubricContent = ({
7106
7158
  if (!evaluationRubricMap || Object.keys(evaluationRubricMap).length === 0)
7107
7159
  return null;
7108
7160
  return /* @__PURE__ */ jsxs36("div", { className: "p-4 border-catchup-gray-400 border-2 rounded-catchup-xlarge", children: [
7109
- /* @__PURE__ */ jsx46("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
7161
+ /* @__PURE__ */ jsx47("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
7110
7162
  Object.keys(evaluationRubricMap).map((key, index) => {
7111
7163
  const currentItem = JSON.parse(evaluationRubricMap[key]);
7112
7164
  const { value } = currentItem;
@@ -7123,12 +7175,12 @@ var ActivityEvaluationRubricContent = ({
7123
7175
  " ",
7124
7176
  i18n_default.t("points")
7125
7177
  ] }),
7126
- /* @__PURE__ */ jsx46("p", { className: "flex-1 text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(evaluationRubric).map(
7127
- (inputPart, inputIndex) => /* @__PURE__ */ jsx46(
7178
+ /* @__PURE__ */ jsx47("p", { className: "flex-1 text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(evaluationRubric).map(
7179
+ (inputPart, inputIndex) => /* @__PURE__ */ jsx47(
7128
7180
  "span",
7129
7181
  {
7130
7182
  className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
7131
- children: inputPart.isEquation ? /* @__PURE__ */ jsx46("span", { className: "text-xl", children: /* @__PURE__ */ jsx46(InlineMath12, { math: inputPart.value }) }) : inputPart.value
7183
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx47("span", { className: "text-xl", children: /* @__PURE__ */ jsx47(InlineMath12, { math: inputPart.value }) }) : inputPart.value
7132
7184
  },
7133
7185
  inputIndex
7134
7186
  )
@@ -7140,16 +7192,16 @@ var ActivityEvaluationRubricContent = ({
7140
7192
  var ActivityEvaluationRubricContent_default = ActivityEvaluationRubricContent;
7141
7193
 
7142
7194
  // src/components/activities/ActivityPreviewByData.tsx
7143
- import { useEffect as useEffect16, useState as useState25 } from "react";
7195
+ import { useEffect as useEffect16, useState as useState26 } from "react";
7144
7196
 
7145
7197
  // src/components/boxes/SelectionBox.tsx
7146
- import { jsx as jsx47, jsxs as jsxs37 } from "react/jsx-runtime";
7198
+ import { jsx as jsx48, jsxs as jsxs37 } from "react/jsx-runtime";
7147
7199
  var SelectionBox = ({
7148
7200
  optionList,
7149
7201
  selectedId,
7150
7202
  handleSelectOnClick
7151
7203
  }) => {
7152
- return /* @__PURE__ */ jsx47("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx47(
7204
+ return /* @__PURE__ */ jsx48("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx48(
7153
7205
  "div",
7154
7206
  {
7155
7207
  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`,
@@ -7163,7 +7215,7 @@ var SelectionBox = ({
7163
7215
  children: [
7164
7216
  option.icon,
7165
7217
  /* @__PURE__ */ jsxs37("div", { className: "flex-1 flex flex-col items-center", children: [
7166
- /* @__PURE__ */ jsx47("p", { children: option.text }),
7218
+ /* @__PURE__ */ jsx48("p", { children: option.text }),
7167
7219
  option.subText ? /* @__PURE__ */ jsxs37("p", { className: "text-md", children: [
7168
7220
  "(",
7169
7221
  option.subText,
@@ -7180,7 +7232,7 @@ var SelectionBox = ({
7180
7232
  var SelectionBox_default = SelectionBox;
7181
7233
 
7182
7234
  // src/components/activities/ActivityPreviewByData.tsx
7183
- import { Fragment as Fragment8, jsx as jsx48, jsxs as jsxs38 } from "react/jsx-runtime";
7235
+ import { Fragment as Fragment8, jsx as jsx49, jsxs as jsxs38 } from "react/jsx-runtime";
7184
7236
  var ACTIVITY_TEMPLATE_LIST = [
7185
7237
  { type: "ORDERING", materialMap: "orderingMaterialMap" },
7186
7238
  { type: "DROPDOWN", materialMap: "dropdownMaterialMap" },
@@ -7211,10 +7263,10 @@ var ActivityPreviewByData = ({
7211
7263
  showMaterialContent = true,
7212
7264
  isPreview = true
7213
7265
  }) => {
7214
- const [selectedType, setSelectedType] = useState25(null);
7215
- const [optionList, setOptionList] = useState25([]);
7216
- const [answerMapMap, setAnswerMapMap] = useState25({});
7217
- const [activityTemplateTypeList, setActivityTemplateTypeList] = useState25([]);
7266
+ const [selectedType, setSelectedType] = useState26(null);
7267
+ const [optionList, setOptionList] = useState26([]);
7268
+ const [answerMapMap, setAnswerMapMap] = useState26({});
7269
+ const [activityTemplateTypeList, setActivityTemplateTypeList] = useState26([]);
7218
7270
  useEffect16(() => {
7219
7271
  if (!data) return;
7220
7272
  let currentActivityTemplateMapList = JSON.parse(
@@ -7290,43 +7342,43 @@ var ActivityPreviewByData = ({
7290
7342
  switch (selectedType) {
7291
7343
  case "ORDERING":
7292
7344
  return data.orderingBodyMap && data.orderingMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7293
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7294
- /* @__PURE__ */ jsx48(OrderingActivityContent_default, __spreadValues({}, commonProps))
7345
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7346
+ /* @__PURE__ */ jsx49(OrderingActivityContent_default, __spreadValues({}, commonProps))
7295
7347
  ] }) : null;
7296
7348
  case "DROPDOWN":
7297
7349
  return data.dropdownBodyMap && data.dropdownMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7298
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7299
- /* @__PURE__ */ jsx48(DropdownActivityContent_default, __spreadValues({}, commonProps))
7350
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7351
+ /* @__PURE__ */ jsx49(DropdownActivityContent_default, __spreadValues({}, commonProps))
7300
7352
  ] }) : null;
7301
7353
  case "MCSA":
7302
7354
  return data.MCSABodyMap && data.MCSAMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7303
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7304
- /* @__PURE__ */ jsx48(MCSAActivityContent_default, __spreadValues({}, commonProps))
7355
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7356
+ /* @__PURE__ */ jsx49(MCSAActivityContent_default, __spreadValues({}, commonProps))
7305
7357
  ] }) : null;
7306
7358
  case "MCMA":
7307
7359
  return data.MCMABodyMap && data.MCMAMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7308
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7309
- /* @__PURE__ */ jsx48(MCMAActivityContent_default, __spreadValues({}, commonProps))
7360
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7361
+ /* @__PURE__ */ jsx49(MCMAActivityContent_default, __spreadValues({}, commonProps))
7310
7362
  ] }) : null;
7311
7363
  case "MATCHING":
7312
7364
  return data.matchingBodyMap && data.matchingMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7313
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7314
- /* @__PURE__ */ jsx48(MatchingActivityContent_default, __spreadValues({}, commonProps))
7365
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7366
+ /* @__PURE__ */ jsx49(MatchingActivityContent_default, __spreadValues({}, commonProps))
7315
7367
  ] }) : null;
7316
7368
  case "GROUPING":
7317
7369
  return data.groupingBodyMap && data.groupingMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7318
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7319
- /* @__PURE__ */ jsx48(GroupingActivityContent_default, __spreadValues({}, commonProps))
7370
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7371
+ /* @__PURE__ */ jsx49(GroupingActivityContent_default, __spreadValues({}, commonProps))
7320
7372
  ] }) : null;
7321
7373
  case "FILL_IN_THE_BLANKS":
7322
7374
  return data.fillInTheBlanksBodyMap && data.fillInTheBlanksMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7323
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7324
- /* @__PURE__ */ jsx48(FillInTheBlanksActivityContent_default, __spreadValues({}, commonProps))
7375
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7376
+ /* @__PURE__ */ jsx49(FillInTheBlanksActivityContent_default, __spreadValues({}, commonProps))
7325
7377
  ] }) : null;
7326
7378
  case "OPEN_ENDED":
7327
7379
  return data.openEndedBodyMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7328
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7329
- /* @__PURE__ */ jsx48(
7380
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7381
+ /* @__PURE__ */ jsx49(
7330
7382
  OpenEndedActivityContent_default,
7331
7383
  __spreadProps(__spreadValues({}, commonProps), {
7332
7384
  showMaterialContent
@@ -7335,8 +7387,8 @@ var ActivityPreviewByData = ({
7335
7387
  ] }) : null;
7336
7388
  case "TRUE_FALSE":
7337
7389
  return data.trueFalseBodyMap && data.trueFalseMaterialMap ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7338
- isEmpty && /* @__PURE__ */ jsx48(ActivityEmptyContent_default, {}),
7339
- /* @__PURE__ */ jsx48(TrueFalseActivityContent_default, __spreadValues({}, commonProps))
7390
+ isEmpty && /* @__PURE__ */ jsx49(ActivityEmptyContent_default, {}),
7391
+ /* @__PURE__ */ jsx49(TrueFalseActivityContent_default, __spreadValues({}, commonProps))
7340
7392
  ] }) : null;
7341
7393
  default:
7342
7394
  return null;
@@ -7346,8 +7398,8 @@ var ActivityPreviewByData = ({
7346
7398
  return /* @__PURE__ */ jsxs38("div", { children: [
7347
7399
  showType && optionList.length > 0 ? /* @__PURE__ */ jsxs38(Fragment8, { children: [
7348
7400
  /* @__PURE__ */ jsxs38("div", { className: "mb-2", children: [
7349
- showDescription ? /* @__PURE__ */ jsx48("div", { className: "my-2", children: /* @__PURE__ */ jsx48("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
7350
- /* @__PURE__ */ jsx48(
7401
+ showDescription ? /* @__PURE__ */ jsx49("div", { className: "my-2", children: /* @__PURE__ */ jsx49("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
7402
+ /* @__PURE__ */ jsx49(
7351
7403
  SelectionBox_default,
7352
7404
  {
7353
7405
  optionList,
@@ -7358,17 +7410,17 @@ var ActivityPreviewByData = ({
7358
7410
  }
7359
7411
  )
7360
7412
  ] }),
7361
- /* @__PURE__ */ jsx48(DividerLine_default, {})
7413
+ /* @__PURE__ */ jsx49(DividerLine_default, {})
7362
7414
  ] }) : null,
7363
- /* @__PURE__ */ jsx48("div", { className: "flex flex-col mb-2 w-full", children: RenderSelectedActivityContent() }),
7364
- selectedType && showSolution ? /* @__PURE__ */ jsx48("div", { className: "mb-2", children: /* @__PURE__ */ jsx48(
7415
+ /* @__PURE__ */ jsx49("div", { className: "flex flex-col mb-2 w-full", children: RenderSelectedActivityContent() }),
7416
+ selectedType && showSolution ? /* @__PURE__ */ jsx49("div", { className: "mb-2", children: /* @__PURE__ */ jsx49(
7365
7417
  ActivitySolutionContent_default,
7366
7418
  {
7367
7419
  activityTemplateType: selectedType,
7368
7420
  data
7369
7421
  }
7370
7422
  ) }) : null,
7371
- selectedType && showEvaluationRubric ? /* @__PURE__ */ jsx48("div", { className: "mb-2", children: /* @__PURE__ */ jsx48(
7423
+ selectedType && showEvaluationRubric ? /* @__PURE__ */ jsx49("div", { className: "mb-2", children: /* @__PURE__ */ jsx49(
7372
7424
  ActivityEvaluationRubricContent_default,
7373
7425
  {
7374
7426
  activityTemplateType: selectedType,
@@ -7380,16 +7432,16 @@ var ActivityPreviewByData = ({
7380
7432
  var ActivityPreviewByData_default = ActivityPreviewByData;
7381
7433
 
7382
7434
  // src/components/errors/StatusError.tsx
7383
- import { jsx as jsx49, jsxs as jsxs39 } from "react/jsx-runtime";
7435
+ import { jsx as jsx50, jsxs as jsxs39 } from "react/jsx-runtime";
7384
7436
  var StatusError = ({
7385
7437
  statusCode,
7386
7438
  statusText,
7387
7439
  textSize
7388
7440
  }) => {
7389
7441
  return /* @__PURE__ */ jsxs39("div", { className: "flex flex-col justify-center items-center", children: [
7390
- /* @__PURE__ */ jsx49("p", { className: "text-6xl text-catchup-red my-5", children: i18n_default.t("ooops_text") }),
7442
+ /* @__PURE__ */ jsx50("p", { className: "text-6xl text-catchup-red my-5", children: i18n_default.t("ooops_text") }),
7391
7443
  /* @__PURE__ */ jsxs39("div", { className: "text-center my-5", children: [
7392
- /* @__PURE__ */ jsx49("p", { className: "italic", children: i18n_default.t("unexcepted_error_text") }),
7444
+ /* @__PURE__ */ jsx50("p", { className: "italic", children: i18n_default.t("unexcepted_error_text") }),
7393
7445
  /* @__PURE__ */ jsxs39("p", { className: `${textSize ? textSize : "text-lg"}`, children: [
7394
7446
  "(",
7395
7447
  statusCode ? `${statusCode} - ` : null,
@@ -7402,9 +7454,9 @@ var StatusError = ({
7402
7454
  var StatusError_default = StatusError;
7403
7455
 
7404
7456
  // src/components/dividers/BlueVerticalDividerLine.tsx
7405
- import { jsx as jsx50 } from "react/jsx-runtime";
7457
+ import { jsx as jsx51 } from "react/jsx-runtime";
7406
7458
  var BlueVerticalDividerLine = ({ opacity }) => {
7407
- return /* @__PURE__ */ jsx50(
7459
+ return /* @__PURE__ */ jsx51(
7408
7460
  "div",
7409
7461
  {
7410
7462
  className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
@@ -7414,7 +7466,7 @@ var BlueVerticalDividerLine = ({ opacity }) => {
7414
7466
  var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
7415
7467
 
7416
7468
  // src/components/groups/LeftTextRightInputGroup.tsx
7417
- import { jsx as jsx51, jsxs as jsxs40 } from "react/jsx-runtime";
7469
+ import { jsx as jsx52, jsxs as jsxs40 } from "react/jsx-runtime";
7418
7470
  var LeftTextRightInputGroup = ({
7419
7471
  type,
7420
7472
  title,
@@ -7425,8 +7477,8 @@ var LeftTextRightInputGroup = ({
7425
7477
  errorText
7426
7478
  }) => {
7427
7479
  return /* @__PURE__ */ jsxs40("div", { className: "w-full flex flex-row mx-2", children: [
7428
- /* @__PURE__ */ jsx51("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ jsx51("p", { children: title }) }),
7429
- /* @__PURE__ */ jsx51("div", { className: "flex-1", children: /* @__PURE__ */ jsx51(
7480
+ /* @__PURE__ */ jsx52("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ jsx52("p", { children: title }) }),
7481
+ /* @__PURE__ */ jsx52("div", { className: "flex-1", children: /* @__PURE__ */ jsx52(
7430
7482
  InputGroup_default,
7431
7483
  {
7432
7484
  type,
@@ -7442,8 +7494,8 @@ var LeftTextRightInputGroup = ({
7442
7494
  var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
7443
7495
 
7444
7496
  // src/components/groups/PageTravelGroup.tsx
7445
- import { useEffect as useEffect17, useState as useState26 } from "react";
7446
- import { jsx as jsx52, jsxs as jsxs41 } from "react/jsx-runtime";
7497
+ import { useEffect as useEffect17, useState as useState27 } from "react";
7498
+ import { jsx as jsx53, jsxs as jsxs41 } from "react/jsx-runtime";
7447
7499
  var PageTravelGroup = ({
7448
7500
  isImageProcessing,
7449
7501
  handleImageProcessing,
@@ -7452,8 +7504,8 @@ var PageTravelGroup = ({
7452
7504
  setPageNumber,
7453
7505
  setImageReady
7454
7506
  }) => {
7455
- const [totalPageNumber, setTotalPageNumber] = useState26(0);
7456
- const [newPageNumber, setNewPageNumber] = useState26(0);
7507
+ const [totalPageNumber, setTotalPageNumber] = useState27(0);
7508
+ const [newPageNumber, setNewPageNumber] = useState27(0);
7457
7509
  useEffect17(() => {
7458
7510
  if (!initialTotalPageNumber) return;
7459
7511
  setTotalPageNumber(initialTotalPageNumber);
@@ -7470,7 +7522,7 @@ var PageTravelGroup = ({
7470
7522
  }
7471
7523
  };
7472
7524
  return /* @__PURE__ */ jsxs41("div", { className: "flex-1 flex flex-row justify-center items-center flex-wrap gap-x-2", children: [
7473
- /* @__PURE__ */ jsx52(
7525
+ /* @__PURE__ */ jsx53(
7474
7526
  "button",
7475
7527
  {
7476
7528
  className: "px-2 py-1 bg-catchup-blue-100 rounded-catchup-small",
@@ -7484,7 +7536,7 @@ var PageTravelGroup = ({
7484
7536
  " / ",
7485
7537
  totalPageNumber
7486
7538
  ] }),
7487
- /* @__PURE__ */ jsx52(
7539
+ /* @__PURE__ */ jsx53(
7488
7540
  "button",
7489
7541
  {
7490
7542
  className: "px-2 py-1 bg-catchup-blue-100 rounded-catchup-small",
@@ -7493,7 +7545,7 @@ var PageTravelGroup = ({
7493
7545
  children: "\u2192"
7494
7546
  }
7495
7547
  ),
7496
- /* @__PURE__ */ jsx52(
7548
+ /* @__PURE__ */ jsx53(
7497
7549
  "input",
7498
7550
  {
7499
7551
  className: "w-[90px] py-2 px-4 border border-catchup-gray-100 rounded-catchup-xlarge focus:outline-none placeholder-catchup-gray-200 focus:border-catchup-blue-400 focus:shadow-input",
@@ -7516,13 +7568,13 @@ var PageTravelGroup = ({
7516
7568
  var PageTravelGroup_default = PageTravelGroup;
7517
7569
 
7518
7570
  // src/hooks/useScreenSize.ts
7519
- import { useState as useState27, useEffect as useEffect18 } from "react";
7571
+ import { useState as useState28, useEffect as useEffect18 } from "react";
7520
7572
  var useScreenSize = () => {
7521
- const [containerSize, setContainerSize] = useState27({
7573
+ const [containerSize, setContainerSize] = useState28({
7522
7574
  width: 0,
7523
7575
  height: 0
7524
7576
  });
7525
- const [screenSize, setScreenSize] = useState27({
7577
+ const [screenSize, setScreenSize] = useState28({
7526
7578
  width: window.innerWidth,
7527
7579
  height: window.innerHeight
7528
7580
  });
@@ -7551,14 +7603,14 @@ var useScreenSize = () => {
7551
7603
  var useScreenSize_default = useScreenSize;
7552
7604
 
7553
7605
  // src/components/boxes/SelectionCheckbox.tsx
7554
- import { jsx as jsx53, jsxs as jsxs42 } from "react/jsx-runtime";
7606
+ import { jsx as jsx54, jsxs as jsxs42 } from "react/jsx-runtime";
7555
7607
  var SelectionCheckbox = ({
7556
7608
  optionList,
7557
7609
  selectedIdList,
7558
7610
  handleSelectOnClick,
7559
7611
  handleRemoveOnClick
7560
7612
  }) => {
7561
- return /* @__PURE__ */ jsx53("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx53(
7613
+ return /* @__PURE__ */ jsx54("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx54(
7562
7614
  "div",
7563
7615
  {
7564
7616
  className: `${selectedIdList.findIndex(
@@ -7580,7 +7632,7 @@ var SelectionCheckbox = ({
7580
7632
  (selectedId) => selectedId === option.id
7581
7633
  ) > -1 ? "opacity-100" : "opacity-50"}`,
7582
7634
  children: [
7583
- /* @__PURE__ */ jsx53(
7635
+ /* @__PURE__ */ jsx54(
7584
7636
  BaseImage_default,
7585
7637
  {
7586
7638
  src: selectedIdList.findIndex(
@@ -7590,7 +7642,7 @@ var SelectionCheckbox = ({
7590
7642
  size: "small"
7591
7643
  }
7592
7644
  ),
7593
- /* @__PURE__ */ jsx53("div", { className: "flex-1", children: /* @__PURE__ */ jsx53("p", { children: option.text }) })
7645
+ /* @__PURE__ */ jsx54("div", { className: "flex-1", children: /* @__PURE__ */ jsx54("p", { children: option.text }) })
7594
7646
  ]
7595
7647
  }
7596
7648
  )
@@ -7601,7 +7653,7 @@ var SelectionCheckbox = ({
7601
7653
  var SelectionCheckbox_default = SelectionCheckbox;
7602
7654
 
7603
7655
  // src/components/tabs/SelectionTab.tsx
7604
- import { jsx as jsx54, jsxs as jsxs43 } from "react/jsx-runtime";
7656
+ import { jsx as jsx55, jsxs as jsxs43 } from "react/jsx-runtime";
7605
7657
  var SelectionTab = ({
7606
7658
  optionList,
7607
7659
  selectedId,
@@ -7611,16 +7663,16 @@ var SelectionTab = ({
7611
7663
  textColor,
7612
7664
  borderColor
7613
7665
  }) => {
7614
- return /* @__PURE__ */ jsx54("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__ */ jsxs43(
7666
+ return /* @__PURE__ */ jsx55("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__ */ jsxs43(
7615
7667
  "div",
7616
7668
  {
7617
- 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`,
7669
+ 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 px-4 py-2 cursor-pointer`,
7618
7670
  onClick: () => {
7619
7671
  handleSelectOnClick(option.id);
7620
7672
  },
7621
7673
  children: [
7622
- /* @__PURE__ */ jsx54("p", { className: "text-lg", children: option.title }),
7623
- option.subTitle ? /* @__PURE__ */ jsx54("p", { className: "text-md", children: option.subTitle }) : null
7674
+ /* @__PURE__ */ jsx55("p", { className: "text-lg", children: option.title }),
7675
+ option.subTitle ? /* @__PURE__ */ jsx55("p", { className: "text-md", children: option.subTitle }) : null
7624
7676
  ]
7625
7677
  },
7626
7678
  index
@@ -7629,20 +7681,20 @@ var SelectionTab = ({
7629
7681
  var SelectionTab_default = SelectionTab;
7630
7682
 
7631
7683
  // src/components/tabs/SelectionTabFill.tsx
7632
- import { jsx as jsx55 } from "react/jsx-runtime";
7684
+ import { jsx as jsx56 } from "react/jsx-runtime";
7633
7685
  var SelectionTabFill = ({
7634
7686
  optionList,
7635
7687
  selectedId,
7636
7688
  handleSelectOnClick
7637
7689
  }) => {
7638
- return /* @__PURE__ */ jsx55("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__ */ jsx55(
7690
+ return /* @__PURE__ */ jsx56("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__ */ jsx56(
7639
7691
  "div",
7640
7692
  {
7641
7693
  className: "cursor-pointer",
7642
7694
  onClick: () => {
7643
7695
  handleSelectOnClick(option.id);
7644
7696
  },
7645
- children: /* @__PURE__ */ jsx55(
7697
+ children: /* @__PURE__ */ jsx56(
7646
7698
  "p",
7647
7699
  {
7648
7700
  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`,
@@ -7656,18 +7708,20 @@ var SelectionTabFill = ({
7656
7708
  var SelectionTabFill_default = SelectionTabFill;
7657
7709
 
7658
7710
  // src/components/tabs/SelectionTabPill.tsx
7659
- import { jsx as jsx56 } from "react/jsx-runtime";
7711
+ import { jsx as jsx57 } from "react/jsx-runtime";
7660
7712
  var SelectionTabPill = ({
7661
7713
  optionList,
7662
7714
  selectedId,
7663
- handleSelectOnClick
7715
+ handleSelectOnClick,
7716
+ selectedClassName,
7717
+ unselectedClassName
7664
7718
  }) => {
7665
- return /* @__PURE__ */ jsx56("div", { className: "flex flex-wrap items-center gap-3 my-2", children: optionList.map((option, index) => /* @__PURE__ */ jsx56(
7719
+ return /* @__PURE__ */ jsx57("div", { className: "flex flex-wrap items-center gap-3 my-2", children: optionList.map((option, index) => /* @__PURE__ */ jsx57(
7666
7720
  "button",
7667
7721
  {
7668
7722
  onClick: () => handleSelectOnClick(option.id),
7669
- className: `px-4 py-2 rounded-catchup-full transition-all duration-200 cursor-pointer ${selectedId === option.id ? "bg-catchup-blue text-catchup-white shadow-card" : "bg-catchup-blue-100 text-catchup-blue-800 hover:bg-catchup-blue-200"}`,
7670
- children: /* @__PURE__ */ jsx56("span", { className: "text-base font-semibold", children: option.title })
7723
+ className: `px-4 py-2 rounded-catchup-full transition-all duration-200 cursor-pointer ${selectedId === option.id ? selectedClassName || "bg-catchup-blue text-catchup-white shadow-card" : unselectedClassName || "bg-catchup-blue-100 text-catchup-blue-800 hover:bg-catchup-blue-200"}`,
7724
+ children: /* @__PURE__ */ jsx57("span", { className: "text-base font-semibold", children: option.title })
7671
7725
  },
7672
7726
  index
7673
7727
  )) });
@@ -7675,7 +7729,7 @@ var SelectionTabPill = ({
7675
7729
  var SelectionTabPill_default = SelectionTabPill;
7676
7730
 
7677
7731
  // src/components/labels/Label.tsx
7678
- import { jsx as jsx57, jsxs as jsxs44 } from "react/jsx-runtime";
7732
+ import { jsx as jsx58, jsxs as jsxs44 } from "react/jsx-runtime";
7679
7733
  var Label = ({
7680
7734
  title,
7681
7735
  icon,
@@ -7685,7 +7739,7 @@ var Label = ({
7685
7739
  backgroundColor,
7686
7740
  textColor
7687
7741
  }) => {
7688
- return /* @__PURE__ */ jsx57(
7742
+ return /* @__PURE__ */ jsx58(
7689
7743
  "div",
7690
7744
  {
7691
7745
  className: "px-3 py-1 gap-x-3 border rounded-catchup-2xlarge text-center",
@@ -7697,7 +7751,7 @@ var Label = ({
7697
7751
  },
7698
7752
  children: /* @__PURE__ */ jsxs44("div", { className: "flex flex-row items-center gap-x-2", children: [
7699
7753
  icon,
7700
- /* @__PURE__ */ jsx57("p", { className: font, children: title })
7754
+ /* @__PURE__ */ jsx58("p", { className: font, children: title })
7701
7755
  ] })
7702
7756
  }
7703
7757
  );
@@ -7705,9 +7759,9 @@ var Label = ({
7705
7759
  var Label_default = Label;
7706
7760
 
7707
7761
  // src/components/labels/AmberLabel.tsx
7708
- import { jsx as jsx58 } from "react/jsx-runtime";
7762
+ import { jsx as jsx59 } from "react/jsx-runtime";
7709
7763
  var AmberLabel = ({ title, icon, font }) => {
7710
- return /* @__PURE__ */ jsx58(
7764
+ return /* @__PURE__ */ jsx59(
7711
7765
  Label_default,
7712
7766
  {
7713
7767
  title,
@@ -7722,9 +7776,9 @@ var AmberLabel = ({ title, icon, font }) => {
7722
7776
  var AmberLabel_default = AmberLabel;
7723
7777
 
7724
7778
  // src/components/labels/TealLabel.tsx
7725
- import { jsx as jsx59 } from "react/jsx-runtime";
7779
+ import { jsx as jsx60 } from "react/jsx-runtime";
7726
7780
  var TealLabel = ({ title, icon, font }) => {
7727
- return /* @__PURE__ */ jsx59(
7781
+ return /* @__PURE__ */ jsx60(
7728
7782
  Label_default,
7729
7783
  {
7730
7784
  title,
@@ -7739,9 +7793,9 @@ var TealLabel = ({ title, icon, font }) => {
7739
7793
  var TealLabel_default = TealLabel;
7740
7794
 
7741
7795
  // src/components/labels/PurpleLabel.tsx
7742
- import { jsx as jsx60 } from "react/jsx-runtime";
7796
+ import { jsx as jsx61 } from "react/jsx-runtime";
7743
7797
  var PurpleLabel = ({ title, icon, font }) => {
7744
- return /* @__PURE__ */ jsx60(
7798
+ return /* @__PURE__ */ jsx61(
7745
7799
  Label_default,
7746
7800
  {
7747
7801
  title,
@@ -7756,9 +7810,9 @@ var PurpleLabel = ({ title, icon, font }) => {
7756
7810
  var PurpleLabel_default = PurpleLabel;
7757
7811
 
7758
7812
  // src/components/labels/GreenLabel.tsx
7759
- import { jsx as jsx61 } from "react/jsx-runtime";
7813
+ import { jsx as jsx62 } from "react/jsx-runtime";
7760
7814
  var GreenLabel = ({ title, icon, font }) => {
7761
- return /* @__PURE__ */ jsx61(
7815
+ return /* @__PURE__ */ jsx62(
7762
7816
  Label_default,
7763
7817
  {
7764
7818
  title,
@@ -7773,9 +7827,9 @@ var GreenLabel = ({ title, icon, font }) => {
7773
7827
  var GreenLabel_default = GreenLabel;
7774
7828
 
7775
7829
  // src/components/labels/BlueLabel.tsx
7776
- import { jsx as jsx62 } from "react/jsx-runtime";
7830
+ import { jsx as jsx63 } from "react/jsx-runtime";
7777
7831
  var BlueLabel = ({ title, icon, font }) => {
7778
- return /* @__PURE__ */ jsx62(
7832
+ return /* @__PURE__ */ jsx63(
7779
7833
  Label_default,
7780
7834
  {
7781
7835
  title,
@@ -7790,9 +7844,9 @@ var BlueLabel = ({ title, icon, font }) => {
7790
7844
  var BlueLabel_default = BlueLabel;
7791
7845
 
7792
7846
  // src/components/labels/OrangeLabel.tsx
7793
- import { jsx as jsx63 } from "react/jsx-runtime";
7847
+ import { jsx as jsx64 } from "react/jsx-runtime";
7794
7848
  var OrangeLabel = ({ title, icon, font }) => {
7795
- return /* @__PURE__ */ jsx63(
7849
+ return /* @__PURE__ */ jsx64(
7796
7850
  Label_default,
7797
7851
  {
7798
7852
  title,
@@ -7807,9 +7861,9 @@ var OrangeLabel = ({ title, icon, font }) => {
7807
7861
  var OrangeLabel_default = OrangeLabel;
7808
7862
 
7809
7863
  // src/components/labels/RedLabel.tsx
7810
- import { jsx as jsx64 } from "react/jsx-runtime";
7864
+ import { jsx as jsx65 } from "react/jsx-runtime";
7811
7865
  var RedLabel = ({ title, icon, font }) => {
7812
- return /* @__PURE__ */ jsx64(
7866
+ return /* @__PURE__ */ jsx65(
7813
7867
  Label_default,
7814
7868
  {
7815
7869
  title,
@@ -7824,9 +7878,9 @@ var RedLabel = ({ title, icon, font }) => {
7824
7878
  var RedLabel_default = RedLabel;
7825
7879
 
7826
7880
  // src/components/labels/LimeLabel.tsx
7827
- import { jsx as jsx65 } from "react/jsx-runtime";
7881
+ import { jsx as jsx66 } from "react/jsx-runtime";
7828
7882
  var LimeLabel = ({ title, icon, font }) => {
7829
- return /* @__PURE__ */ jsx65(
7883
+ return /* @__PURE__ */ jsx66(
7830
7884
  Label_default,
7831
7885
  {
7832
7886
  title,
@@ -7841,9 +7895,9 @@ var LimeLabel = ({ title, icon, font }) => {
7841
7895
  var LimeLabel_default = LimeLabel;
7842
7896
 
7843
7897
  // src/components/labels/CoralLabel.tsx
7844
- import { jsx as jsx66 } from "react/jsx-runtime";
7898
+ import { jsx as jsx67 } from "react/jsx-runtime";
7845
7899
  var CoralLabel = ({ title, icon, font }) => {
7846
- return /* @__PURE__ */ jsx66(
7900
+ return /* @__PURE__ */ jsx67(
7847
7901
  Label_default,
7848
7902
  {
7849
7903
  title,
@@ -7858,9 +7912,9 @@ var CoralLabel = ({ title, icon, font }) => {
7858
7912
  var CoralLabel_default = CoralLabel;
7859
7913
 
7860
7914
  // src/components/labels/CyanLabel.tsx
7861
- import { jsx as jsx67 } from "react/jsx-runtime";
7915
+ import { jsx as jsx68 } from "react/jsx-runtime";
7862
7916
  var CyanLabel = ({ title, icon, font }) => {
7863
- return /* @__PURE__ */ jsx67(
7917
+ return /* @__PURE__ */ jsx68(
7864
7918
  Label_default,
7865
7919
  {
7866
7920
  title,
@@ -7875,9 +7929,9 @@ var CyanLabel = ({ title, icon, font }) => {
7875
7929
  var CyanLabel_default = CyanLabel;
7876
7930
 
7877
7931
  // src/components/labels/GrayLabel.tsx
7878
- import { jsx as jsx68 } from "react/jsx-runtime";
7932
+ import { jsx as jsx69 } from "react/jsx-runtime";
7879
7933
  var GrayLabel = ({ title, icon, font }) => {
7880
- return /* @__PURE__ */ jsx68(
7934
+ return /* @__PURE__ */ jsx69(
7881
7935
  Label_default,
7882
7936
  {
7883
7937
  title,
@@ -7892,20 +7946,20 @@ var GrayLabel = ({ title, icon, font }) => {
7892
7946
  var GrayLabel_default = GrayLabel;
7893
7947
 
7894
7948
  // src/components/infos/InfoWithText.tsx
7895
- import { jsx as jsx69, jsxs as jsxs45 } from "react/jsx-runtime";
7949
+ import { jsx as jsx70, jsxs as jsxs45 } from "react/jsx-runtime";
7896
7950
  var InfoWithText = (props) => {
7897
7951
  const { value } = props;
7898
7952
  return /* @__PURE__ */ jsxs45("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
7899
- /* @__PURE__ */ jsx69(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
7900
- /* @__PURE__ */ jsx69("div", { className: "flex-1", children: /* @__PURE__ */ jsx69("p", { className: "", children: value }) })
7953
+ /* @__PURE__ */ jsx70(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
7954
+ /* @__PURE__ */ jsx70("div", { className: "flex-1", children: /* @__PURE__ */ jsx70("p", { className: "", children: value }) })
7901
7955
  ] });
7902
7956
  };
7903
7957
  var InfoWithText_default = InfoWithText;
7904
7958
 
7905
7959
  // src/components/titles/SubTitle.tsx
7906
- import { jsx as jsx70 } from "react/jsx-runtime";
7960
+ import { jsx as jsx71 } from "react/jsx-runtime";
7907
7961
  var SubTitle = ({ title }) => {
7908
- return /* @__PURE__ */ jsx70("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
7962
+ return /* @__PURE__ */ jsx71("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
7909
7963
  };
7910
7964
  var SubTitle_default = SubTitle;
7911
7965
 
@@ -10788,6 +10842,7 @@ export {
10788
10842
  SelectionTab_default as SelectionTab,
10789
10843
  SelectionTabFill_default as SelectionTabFill,
10790
10844
  SelectionTabPill_default as SelectionTabPill,
10845
+ StartButton_default as StartButton,
10791
10846
  StatusError_default as StatusError,
10792
10847
  SubTitle_default as SubTitle,
10793
10848
  THREE_MONTHS,