catchup-library-web 1.20.32 → 1.20.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +445 -388
- package/dist/index.mjs +395 -338
- package/package.json +1 -1
- package/src/components/activities/material-contents/FillInTheBlanksActivityMaterialContent.tsx +136 -54
- package/src/components/activities/material-contents/OrderingActivityMaterialContent.tsx +214 -115
- package/src/components/activities/material-contents/OrderingActivityMaterialContent2.tsx +231 -0
package/dist/index.js
CHANGED
|
@@ -4903,21 +4903,29 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4903
4903
|
const [selectedOption, setSelectedOption] = (0, import_react18.useState)(null);
|
|
4904
4904
|
const [draggedOption, setDraggedOption] = (0, import_react18.useState)(null);
|
|
4905
4905
|
const [dropTargetIndex, setDropTargetIndex] = (0, import_react18.useState)(null);
|
|
4906
|
+
const [draggedElement, setDraggedElement] = (0, import_react18.useState)(
|
|
4907
|
+
null
|
|
4908
|
+
);
|
|
4909
|
+
const dragElementRef = (0, import_react18.useRef)(null);
|
|
4910
|
+
const [touchPosition, setTouchPosition] = (0, import_react18.useState)({
|
|
4911
|
+
x: 0,
|
|
4912
|
+
y: 0
|
|
4913
|
+
});
|
|
4906
4914
|
(0, import_react18.useEffect)(() => {
|
|
4907
4915
|
setShuffleOptionList(shuffleArray(optionList));
|
|
4908
|
-
}, []);
|
|
4916
|
+
}, [optionList]);
|
|
4909
4917
|
(0, import_react18.useEffect)(() => {
|
|
4910
4918
|
if (!showCorrectAnswer) return;
|
|
4911
4919
|
const foundAnswer = answer.data.find(
|
|
4912
4920
|
(answerData) => answerData.type === "FILL_IN_THE_BLANKS"
|
|
4913
4921
|
);
|
|
4914
|
-
if (foundAnswer.answerMap.length === 0) return;
|
|
4922
|
+
if (!foundAnswer || foundAnswer.answerMap.length === 0) return;
|
|
4915
4923
|
if (Object.keys(materialMap).length === 0) return;
|
|
4916
4924
|
foundAnswer.answerMap = Object.keys(materialMap).map(
|
|
4917
4925
|
(materialMapKey) => JSON.parse(materialMap[materialMapKey])[0]
|
|
4918
4926
|
);
|
|
4919
4927
|
onChange(answer, 0, JSON.parse(materialMap[0])[0]);
|
|
4920
|
-
}, [showCorrectAnswer]);
|
|
4928
|
+
}, [showCorrectAnswer, answer, materialMap, onChange]);
|
|
4921
4929
|
const retrieveAnswerMap = () => {
|
|
4922
4930
|
const foundIndex = answer.data.findIndex(
|
|
4923
4931
|
(answerData) => answerData.type === "FILL_IN_THE_BLANKS"
|
|
@@ -4937,36 +4945,89 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4937
4945
|
const checkAnswerProvided = (answerMap2, option) => {
|
|
4938
4946
|
return Object.keys(answerMap2).findIndex((key) => answerMap2[key] === option) !== -1;
|
|
4939
4947
|
};
|
|
4940
|
-
const
|
|
4941
|
-
|
|
4948
|
+
const handleMouseDown = (e, option) => {
|
|
4949
|
+
e.preventDefault();
|
|
4950
|
+
setDraggedOption(option);
|
|
4951
|
+
setSelectedOption(null);
|
|
4952
|
+
};
|
|
4953
|
+
const handleMouseUp = () => {
|
|
4954
|
+
if (dropTargetIndex !== null && draggedOption !== null) {
|
|
4955
|
+
onChange(answer, dropTargetIndex, draggedOption);
|
|
4956
|
+
}
|
|
4957
|
+
setDraggedOption(null);
|
|
4958
|
+
setDropTargetIndex(null);
|
|
4942
4959
|
};
|
|
4943
|
-
const
|
|
4960
|
+
const handleTouchStart = (e, option, element) => {
|
|
4961
|
+
const touch = e.touches[0];
|
|
4944
4962
|
setDraggedOption(option);
|
|
4963
|
+
setDraggedElement(element);
|
|
4964
|
+
setTouchPosition({ x: touch.clientX, y: touch.clientY });
|
|
4965
|
+
setSelectedOption(null);
|
|
4966
|
+
};
|
|
4967
|
+
const handleTouchMove = (e) => {
|
|
4968
|
+
if (!draggedOption) return;
|
|
4969
|
+
const touch = e.touches[0];
|
|
4970
|
+
setTouchPosition({ x: touch.clientX, y: touch.clientY });
|
|
4971
|
+
const elementUnder = document.elementFromPoint(
|
|
4972
|
+
touch.clientX,
|
|
4973
|
+
touch.clientY
|
|
4974
|
+
);
|
|
4975
|
+
const dropZone = elementUnder == null ? void 0 : elementUnder.closest("[data-drop-zone]");
|
|
4976
|
+
if (dropZone) {
|
|
4977
|
+
const dropIndex = dropZone.getAttribute("data-drop-zone");
|
|
4978
|
+
setDropTargetIndex(dropIndex);
|
|
4979
|
+
} else {
|
|
4980
|
+
setDropTargetIndex(null);
|
|
4981
|
+
}
|
|
4945
4982
|
};
|
|
4946
|
-
const
|
|
4983
|
+
const handleTouchEnd = () => {
|
|
4947
4984
|
if (dropTargetIndex !== null && draggedOption !== null) {
|
|
4948
4985
|
onChange(answer, dropTargetIndex, draggedOption);
|
|
4949
4986
|
}
|
|
4950
4987
|
setDraggedOption(null);
|
|
4951
4988
|
setDropTargetIndex(null);
|
|
4989
|
+
setDraggedElement(null);
|
|
4952
4990
|
};
|
|
4953
|
-
const
|
|
4954
|
-
|
|
4991
|
+
const handleSelectOption = (option) => {
|
|
4992
|
+
setSelectedOption(option);
|
|
4993
|
+
setDraggedOption(null);
|
|
4955
4994
|
};
|
|
4956
|
-
const
|
|
4995
|
+
const handleDropZoneClick = (index) => {
|
|
4957
4996
|
if (selectedOption !== null) {
|
|
4958
4997
|
onChange(answer, index, selectedOption);
|
|
4959
4998
|
setSelectedOption(null);
|
|
4960
|
-
} else if (draggedOption !== null) {
|
|
4961
|
-
onChange(answer, index, draggedOption);
|
|
4962
|
-
setDraggedOption(null);
|
|
4963
4999
|
}
|
|
4964
|
-
setDropTargetIndex(null);
|
|
4965
5000
|
};
|
|
4966
5001
|
const answerMap = retrieveAnswerMap();
|
|
4967
5002
|
return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row flex-wrap items-center", children: [
|
|
4968
5003
|
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_fill_in_the_blanks_text") }) }),
|
|
4969
5004
|
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(DividerLine_default, {}) }),
|
|
5005
|
+
draggedOption && touchPosition.x > 0 && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
5006
|
+
"div",
|
|
5007
|
+
{
|
|
5008
|
+
className: "fixed pointer-events-none z-50 opacity-80",
|
|
5009
|
+
style: {
|
|
5010
|
+
left: `${touchPosition.x}px`,
|
|
5011
|
+
top: `${touchPosition.y}px`,
|
|
5012
|
+
transform: "translate(-50%, -50%)"
|
|
5013
|
+
},
|
|
5014
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge bg-white shadow-lg", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
5015
|
+
InputWithSpecialExpression_default,
|
|
5016
|
+
{
|
|
5017
|
+
value: draggedOption,
|
|
5018
|
+
showSpecialOnly: false
|
|
5019
|
+
}
|
|
5020
|
+
) }) }) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-white shadow-lg", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
5021
|
+
ShowMaterialMediaByContentType_default,
|
|
5022
|
+
{
|
|
5023
|
+
contentType: contentMap.type,
|
|
5024
|
+
src: draggedOption,
|
|
5025
|
+
canFullScreen: false
|
|
5026
|
+
},
|
|
5027
|
+
uniqueValue
|
|
5028
|
+
) })
|
|
5029
|
+
}
|
|
5030
|
+
),
|
|
4970
5031
|
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-full flex flex-row flex-wrap gap-x-2 gap-y-2 my-2", children: shuffleOptionList.map(
|
|
4971
5032
|
(option, index) => checkAnswerProvided(answerMap, option) ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "opacity-30", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
4972
5033
|
ShowMaterialMediaByContentType_default,
|
|
@@ -4979,16 +5040,17 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
4979
5040
|
) }, index) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
4980
5041
|
"div",
|
|
4981
5042
|
{
|
|
4982
|
-
|
|
4983
|
-
|
|
4984
|
-
|
|
4985
|
-
|
|
5043
|
+
ref: draggedOption === option ? dragElementRef : null,
|
|
5044
|
+
className: `${draggedOption === option ? "opacity-40" : selectedOption === option ? "ring-2 ring-blue-500" : "opacity-100"} transition-all duration-200`,
|
|
5045
|
+
onMouseDown: (e) => handleMouseDown(e, option),
|
|
5046
|
+
onTouchStart: (e) => handleTouchStart(e, option, e.currentTarget),
|
|
5047
|
+
onTouchMove: handleTouchMove,
|
|
5048
|
+
onTouchEnd: handleTouchEnd,
|
|
4986
5049
|
children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
4987
5050
|
"div",
|
|
4988
5051
|
{
|
|
4989
|
-
className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge cursor-pointer select-none
|
|
5052
|
+
className: "border-catchup-blue border-2 px-2 rounded-catchup-xlarge cursor-pointer select-none",
|
|
4990
5053
|
onClick: () => handleSelectOption(option),
|
|
4991
|
-
onTouchEnd: () => handleSelectOption(option),
|
|
4992
5054
|
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "italic whitespace-pre-wrap", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
4993
5055
|
InputWithSpecialExpression_default,
|
|
4994
5056
|
{
|
|
@@ -5000,9 +5062,8 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
5000
5062
|
) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
5001
5063
|
"div",
|
|
5002
5064
|
{
|
|
5003
|
-
className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge cursor-pointer select-none
|
|
5065
|
+
className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge cursor-pointer select-none",
|
|
5004
5066
|
onClick: () => handleSelectOption(option),
|
|
5005
|
-
onTouchEnd: () => handleSelectOption(option),
|
|
5006
5067
|
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
5007
5068
|
ShowMaterialMediaByContentType_default,
|
|
5008
5069
|
{
|
|
@@ -5018,7 +5079,7 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
5018
5079
|
index
|
|
5019
5080
|
)
|
|
5020
5081
|
) }),
|
|
5021
|
-
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-full flex flex-row flex-wrap", children: Object.keys(answerMap).map((materialKey, index) => {
|
|
5082
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-full flex flex-row flex-wrap", onMouseUp: handleMouseUp, children: Object.keys(answerMap).map((materialKey, index) => {
|
|
5022
5083
|
const learnerAnswerState = checkAnswerState(
|
|
5023
5084
|
JSON.parse(materialMap[materialKey]),
|
|
5024
5085
|
answerMap[materialKey]
|
|
@@ -5026,21 +5087,11 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
5026
5087
|
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-full md:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
5027
5088
|
"div",
|
|
5028
5089
|
{
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5033
|
-
|
|
5034
|
-
onDrop: (e) => {
|
|
5035
|
-
e.preventDefault();
|
|
5036
|
-
handleDropZoneDrop(materialKey);
|
|
5037
|
-
},
|
|
5038
|
-
onClick: () => {
|
|
5039
|
-
if (selectedOption !== null) {
|
|
5040
|
-
handleDropZoneDrop(materialKey);
|
|
5041
|
-
}
|
|
5042
|
-
},
|
|
5043
|
-
className: `${dropTargetIndex === materialKey ? "ring-2 ring-blue-400" : ""}`,
|
|
5090
|
+
"data-drop-zone": materialKey,
|
|
5091
|
+
onMouseEnter: () => draggedOption && setDropTargetIndex(materialKey),
|
|
5092
|
+
onMouseLeave: () => setDropTargetIndex(null),
|
|
5093
|
+
onClick: () => handleDropZoneClick(materialKey),
|
|
5094
|
+
className: `${dropTargetIndex === materialKey ? "ring-2 ring-blue-400 bg-blue-50" : ""} transition-all duration-200 rounded-lg`,
|
|
5044
5095
|
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "w-full flex flex-row my-2 gap-x-2", children: [
|
|
5045
5096
|
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "my-auto", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("p", { className: "text-xl", children: [
|
|
5046
5097
|
parseFloat(materialKey) + 1,
|
|
@@ -5050,9 +5101,10 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
5050
5101
|
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
5051
5102
|
"div",
|
|
5052
5103
|
{
|
|
5053
|
-
className: `w-full min-h-[44px] border rounded-lg ${answerMap[materialKey] ? "border-catchup-blue-400 px-2" : "bg-catchup-gray-50 border-catchup-gray-200 border-dashed py-2 px-4"}`,
|
|
5054
|
-
onClick: () => {
|
|
5104
|
+
className: `w-full min-h-[44px] border rounded-lg ${answerMap[materialKey] ? "border-catchup-blue-400 px-2 cursor-pointer" : "bg-catchup-gray-50 border-catchup-gray-200 border-dashed py-2 px-4"}`,
|
|
5105
|
+
onClick: (e) => {
|
|
5055
5106
|
if (answerMap[materialKey]) {
|
|
5107
|
+
e.stopPropagation();
|
|
5056
5108
|
onChange(answer, materialKey, "");
|
|
5057
5109
|
}
|
|
5058
5110
|
},
|
|
@@ -5062,7 +5114,7 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
5062
5114
|
value: answerMap[materialKey],
|
|
5063
5115
|
showSpecialOnly: false
|
|
5064
5116
|
}
|
|
5065
|
-
) :
|
|
5117
|
+
) : null
|
|
5066
5118
|
}
|
|
5067
5119
|
) }),
|
|
5068
5120
|
learnerAnswerState === "CORRECT" ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "absolute -top-[10px] right-4 bg-catchup-white", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
@@ -5090,7 +5142,8 @@ var FillInTheBlanksActivityMaterialContent = ({
|
|
|
5090
5142
|
"div",
|
|
5091
5143
|
{
|
|
5092
5144
|
className: "flex-1 cursor-pointer",
|
|
5093
|
-
onClick: () => {
|
|
5145
|
+
onClick: (e) => {
|
|
5146
|
+
e.stopPropagation();
|
|
5094
5147
|
onChange(answer, materialKey, "");
|
|
5095
5148
|
},
|
|
5096
5149
|
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
@@ -6372,8 +6425,7 @@ var OpenEndedActivityContent = ({
|
|
|
6372
6425
|
var OpenEndedActivityContent_default = OpenEndedActivityContent;
|
|
6373
6426
|
|
|
6374
6427
|
// src/components/activities/material-contents/OrderingActivityMaterialContent.tsx
|
|
6375
|
-
var
|
|
6376
|
-
var import_react_dnd6 = require("react-dnd");
|
|
6428
|
+
var import_react24 = require("react");
|
|
6377
6429
|
var import_react_katex9 = require("react-katex");
|
|
6378
6430
|
|
|
6379
6431
|
// src/hooks/useScreenSize.ts
|
|
@@ -6411,59 +6463,8 @@ var useScreenSize = () => {
|
|
|
6411
6463
|
};
|
|
6412
6464
|
var useScreenSize_default = useScreenSize;
|
|
6413
6465
|
|
|
6414
|
-
// src/components/dnds/DraggableDroppableItem.tsx
|
|
6415
|
-
var import_react24 = require("react");
|
|
6416
|
-
var import_react_dnd5 = require("react-dnd");
|
|
6417
|
-
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
6418
|
-
var DraggableDroppableItem = ({
|
|
6419
|
-
item,
|
|
6420
|
-
type,
|
|
6421
|
-
component,
|
|
6422
|
-
moveCardHandler,
|
|
6423
|
-
dropRef,
|
|
6424
|
-
target,
|
|
6425
|
-
setTarget
|
|
6426
|
-
}) => {
|
|
6427
|
-
const ref = (0, import_react24.useRef)(null);
|
|
6428
|
-
const [, drop] = (0, import_react_dnd5.useDrop)({
|
|
6429
|
-
accept: type,
|
|
6430
|
-
hover() {
|
|
6431
|
-
if (!ref.current) {
|
|
6432
|
-
return;
|
|
6433
|
-
}
|
|
6434
|
-
if (item.index && target !== item.index) {
|
|
6435
|
-
setTarget(item.index);
|
|
6436
|
-
}
|
|
6437
|
-
}
|
|
6438
|
-
});
|
|
6439
|
-
const [{ isDragging }, drag] = (0, import_react_dnd5.useDrag)({
|
|
6440
|
-
type,
|
|
6441
|
-
item,
|
|
6442
|
-
end: (item2, monitor) => {
|
|
6443
|
-
const dropResult = monitor.getDropResult();
|
|
6444
|
-
if (dropResult) {
|
|
6445
|
-
moveCardHandler();
|
|
6446
|
-
}
|
|
6447
|
-
},
|
|
6448
|
-
collect: (monitor) => ({
|
|
6449
|
-
isDragging: monitor.isDragging()
|
|
6450
|
-
})
|
|
6451
|
-
});
|
|
6452
|
-
const opacity = isDragging ? 0.4 : 1;
|
|
6453
|
-
drag(drop(ref));
|
|
6454
|
-
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6455
|
-
"div",
|
|
6456
|
-
{
|
|
6457
|
-
className: `${isDragging ? "w-[0px] opacity-0" : "w-full opacity-100"} transition-all duration-500`,
|
|
6458
|
-
ref: dropRef,
|
|
6459
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { ref, className: "w-full", style: { opacity }, children: component })
|
|
6460
|
-
}
|
|
6461
|
-
);
|
|
6462
|
-
};
|
|
6463
|
-
var DraggableDroppableItem_default = DraggableDroppableItem;
|
|
6464
|
-
|
|
6465
6466
|
// src/components/activities/material-contents/OrderingActivityMaterialContent.tsx
|
|
6466
|
-
var
|
|
6467
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
6467
6468
|
var OrderingActivityMaterialContent = ({
|
|
6468
6469
|
uniqueValue,
|
|
6469
6470
|
answer,
|
|
@@ -6474,20 +6475,20 @@ var OrderingActivityMaterialContent = ({
|
|
|
6474
6475
|
isPreview,
|
|
6475
6476
|
showCorrectAnswer
|
|
6476
6477
|
}) => {
|
|
6477
|
-
const [
|
|
6478
|
-
const [
|
|
6479
|
-
const
|
|
6480
|
-
const [
|
|
6481
|
-
|
|
6482
|
-
|
|
6483
|
-
|
|
6484
|
-
|
|
6485
|
-
|
|
6486
|
-
|
|
6487
|
-
canDrop: monitor.canDrop()
|
|
6488
|
-
})
|
|
6478
|
+
const [selectedKey, setSelectedKey] = (0, import_react24.useState)(null);
|
|
6479
|
+
const [draggedKey, setDraggedKey] = (0, import_react24.useState)(null);
|
|
6480
|
+
const [dropTargetKey, setDropTargetKey] = (0, import_react24.useState)(null);
|
|
6481
|
+
const [draggedElement, setDraggedElement] = (0, import_react24.useState)(
|
|
6482
|
+
null
|
|
6483
|
+
);
|
|
6484
|
+
const dragElementRef = (0, import_react24.useRef)(null);
|
|
6485
|
+
const [touchPosition, setTouchPosition] = (0, import_react24.useState)({
|
|
6486
|
+
x: 0,
|
|
6487
|
+
y: 0
|
|
6489
6488
|
});
|
|
6490
|
-
|
|
6489
|
+
const { screenSize } = useScreenSize_default();
|
|
6490
|
+
const [view, setView] = (0, import_react24.useState)("PC");
|
|
6491
|
+
(0, import_react24.useEffect)(() => {
|
|
6491
6492
|
if (!screenSize) return;
|
|
6492
6493
|
if (screenSize.width <= 1024) {
|
|
6493
6494
|
setView("TABLET");
|
|
@@ -6495,7 +6496,7 @@ var OrderingActivityMaterialContent = ({
|
|
|
6495
6496
|
setView("PC");
|
|
6496
6497
|
}
|
|
6497
6498
|
}, [screenSize]);
|
|
6498
|
-
(0,
|
|
6499
|
+
(0, import_react24.useEffect)(() => {
|
|
6499
6500
|
if (!showCorrectAnswer) return;
|
|
6500
6501
|
const answerMap2 = answer.data.find(
|
|
6501
6502
|
(answerData) => answerData.type === "ORDERING"
|
|
@@ -6517,23 +6518,9 @@ var OrderingActivityMaterialContent = ({
|
|
|
6517
6518
|
}
|
|
6518
6519
|
return "INCORRECT";
|
|
6519
6520
|
};
|
|
6520
|
-
const handleOrderingActivityItemChange = (selectedKey2, materialKey) => {
|
|
6521
|
-
if (checkCanAnswerQuestion()) {
|
|
6522
|
-
if (selectedKey2) {
|
|
6523
|
-
onChange(answer, selectedKey2, materialKey);
|
|
6524
|
-
setSelectedKey(null);
|
|
6525
|
-
} else {
|
|
6526
|
-
setSelectedKey(materialKey);
|
|
6527
|
-
}
|
|
6528
|
-
}
|
|
6529
|
-
};
|
|
6530
6521
|
const calculateMarginTop = (index) => {
|
|
6531
6522
|
if (index === 0) {
|
|
6532
|
-
|
|
6533
|
-
return 0;
|
|
6534
|
-
} else {
|
|
6535
|
-
return 0;
|
|
6536
|
-
}
|
|
6523
|
+
return 0;
|
|
6537
6524
|
} else if (index === 1) {
|
|
6538
6525
|
if (contentMap.type === "TEXT") {
|
|
6539
6526
|
return 65;
|
|
@@ -6547,97 +6534,167 @@ var OrderingActivityMaterialContent = ({
|
|
|
6547
6534
|
return -130;
|
|
6548
6535
|
}
|
|
6549
6536
|
} else if (index % 2 === 1) {
|
|
6550
|
-
|
|
6551
|
-
return 0;
|
|
6552
|
-
} else {
|
|
6553
|
-
return 0;
|
|
6554
|
-
}
|
|
6537
|
+
return 0;
|
|
6555
6538
|
}
|
|
6556
6539
|
return 0;
|
|
6557
6540
|
};
|
|
6558
|
-
const
|
|
6559
|
-
|
|
6560
|
-
|
|
6561
|
-
|
|
6562
|
-
|
|
6541
|
+
const handleMouseDown = (e, materialKey) => {
|
|
6542
|
+
if (!checkCanAnswerQuestion()) return;
|
|
6543
|
+
e.preventDefault();
|
|
6544
|
+
setDraggedKey(materialKey);
|
|
6545
|
+
setSelectedKey(null);
|
|
6546
|
+
};
|
|
6547
|
+
const handleMouseUp = () => {
|
|
6548
|
+
if (dropTargetKey !== null && draggedKey !== null && dropTargetKey !== draggedKey) {
|
|
6549
|
+
onChange(answer, draggedKey, dropTargetKey);
|
|
6550
|
+
}
|
|
6551
|
+
setDraggedKey(null);
|
|
6552
|
+
setDropTargetKey(null);
|
|
6553
|
+
};
|
|
6554
|
+
const handleTouchStart = (e, materialKey, element) => {
|
|
6555
|
+
if (!checkCanAnswerQuestion()) return;
|
|
6556
|
+
const touch = e.touches[0];
|
|
6557
|
+
setDraggedKey(materialKey);
|
|
6558
|
+
setDraggedElement(element);
|
|
6559
|
+
setTouchPosition({ x: touch.clientX, y: touch.clientY });
|
|
6560
|
+
setSelectedKey(null);
|
|
6561
|
+
};
|
|
6562
|
+
const handleTouchMove = (e) => {
|
|
6563
|
+
if (!draggedKey) return;
|
|
6564
|
+
const touch = e.touches[0];
|
|
6565
|
+
setTouchPosition({ x: touch.clientX, y: touch.clientY });
|
|
6566
|
+
const elementUnder = document.elementFromPoint(
|
|
6567
|
+
touch.clientX,
|
|
6568
|
+
touch.clientY
|
|
6563
6569
|
);
|
|
6564
|
-
|
|
6570
|
+
const dropZone = elementUnder == null ? void 0 : elementUnder.closest("[data-ordering-drop-zone]");
|
|
6571
|
+
if (dropZone) {
|
|
6572
|
+
const dropKey = dropZone.getAttribute("data-ordering-drop-zone");
|
|
6573
|
+
setDropTargetKey(dropKey);
|
|
6574
|
+
} else {
|
|
6575
|
+
setDropTargetKey(null);
|
|
6576
|
+
}
|
|
6577
|
+
};
|
|
6578
|
+
const handleTouchEnd = () => {
|
|
6579
|
+
if (dropTargetKey !== null && draggedKey !== null && dropTargetKey !== draggedKey) {
|
|
6580
|
+
onChange(answer, draggedKey, dropTargetKey);
|
|
6581
|
+
}
|
|
6582
|
+
setDraggedKey(null);
|
|
6583
|
+
setDropTargetKey(null);
|
|
6584
|
+
setDraggedElement(null);
|
|
6585
|
+
};
|
|
6586
|
+
const handleSelectItem = (materialKey) => {
|
|
6587
|
+
if (!checkCanAnswerQuestion()) return;
|
|
6588
|
+
if (selectedKey === null) {
|
|
6589
|
+
setSelectedKey(materialKey);
|
|
6590
|
+
} else if (selectedKey === materialKey) {
|
|
6591
|
+
setSelectedKey(null);
|
|
6592
|
+
} else {
|
|
6593
|
+
onChange(answer, selectedKey, materialKey);
|
|
6594
|
+
setSelectedKey(null);
|
|
6595
|
+
}
|
|
6596
|
+
setDraggedKey(null);
|
|
6597
|
+
};
|
|
6598
|
+
const answerMap = retrieveAnswerMap();
|
|
6599
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex flex-row flex-wrap", onMouseUp: handleMouseUp, children: [
|
|
6600
|
+
draggedKey && touchPosition.x > 0 && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6565
6601
|
"div",
|
|
6566
6602
|
{
|
|
6567
|
-
className:
|
|
6603
|
+
className: "fixed pointer-events-none z-50 opacity-80",
|
|
6568
6604
|
style: {
|
|
6569
|
-
|
|
6605
|
+
left: `${touchPosition.x}px`,
|
|
6606
|
+
top: `${touchPosition.y}px`,
|
|
6607
|
+
transform: "translate(-50%, -50%)"
|
|
6570
6608
|
},
|
|
6571
|
-
children:
|
|
6572
|
-
|
|
6573
|
-
|
|
6574
|
-
|
|
6575
|
-
|
|
6576
|
-
|
|
6577
|
-
}
|
|
6578
|
-
|
|
6579
|
-
|
|
6580
|
-
|
|
6581
|
-
|
|
6582
|
-
|
|
6583
|
-
|
|
6584
|
-
|
|
6585
|
-
|
|
6586
|
-
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
onMouseDown: () => {
|
|
6590
|
-
if (checkCanAnswerQuestion()) {
|
|
6591
|
-
setSelectedKey(materialKey);
|
|
6592
|
-
}
|
|
6593
|
-
},
|
|
6594
|
-
onTouchEnd: () => {
|
|
6595
|
-
if (checkCanAnswerQuestion()) {
|
|
6596
|
-
setSelectedKey(materialKey);
|
|
6597
|
-
}
|
|
6598
|
-
},
|
|
6599
|
-
children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
6600
|
-
materialMap[answerMap[materialKey]]
|
|
6601
|
-
).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
6602
|
-
"span",
|
|
6603
|
-
{
|
|
6604
|
-
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6605
|
-
children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: "text-xl", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_react_katex9.InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
6606
|
-
},
|
|
6607
|
-
index2
|
|
6608
|
-
)) }) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
6609
|
-
ShowMaterialMediaByContentType_default,
|
|
6610
|
-
{
|
|
6611
|
-
contentType: contentMap.type,
|
|
6612
|
-
src: materialMap[answerMap[materialKey]],
|
|
6613
|
-
canFullScreen: true
|
|
6614
|
-
},
|
|
6615
|
-
`${uniqueValue}-${index}`
|
|
6616
|
-
)
|
|
6617
|
-
}
|
|
6618
|
-
),
|
|
6619
|
-
target: selectedTargetKey,
|
|
6620
|
-
setTarget: setSelectedTargetKey,
|
|
6621
|
-
moveCardHandler: () => {
|
|
6622
|
-
if (!selectedKey) return;
|
|
6623
|
-
if (!selectedTargetKey) return;
|
|
6624
|
-
handleOrderingActivityItemChange(
|
|
6625
|
-
selectedKey,
|
|
6626
|
-
selectedTargetKey
|
|
6627
|
-
);
|
|
6628
|
-
}
|
|
6629
|
-
},
|
|
6630
|
-
index
|
|
6631
|
-
)
|
|
6632
|
-
]
|
|
6609
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "border-catchup-blue border-2 px-3 py-2 rounded-catchup-xlarge bg-white shadow-lg", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
6610
|
+
materialMap[answerMap[draggedKey]]
|
|
6611
|
+
).map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6612
|
+
"span",
|
|
6613
|
+
{
|
|
6614
|
+
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6615
|
+
children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-xl", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_react_katex9.InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
6616
|
+
},
|
|
6617
|
+
index
|
|
6618
|
+
)) }) }) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "border-catchup-blue border-2 px-2 py-1 rounded-catchup-xlarge bg-white shadow-lg", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6619
|
+
ShowMaterialMediaByContentType_default,
|
|
6620
|
+
{
|
|
6621
|
+
contentType: contentMap.type,
|
|
6622
|
+
src: materialMap[answerMap[draggedKey]],
|
|
6623
|
+
canFullScreen: false
|
|
6624
|
+
},
|
|
6625
|
+
`${uniqueValue}-drag`
|
|
6626
|
+
) })
|
|
6633
6627
|
}
|
|
6634
|
-
)
|
|
6635
|
-
|
|
6628
|
+
),
|
|
6629
|
+
Object.keys(answerMap).map((materialKey, index) => {
|
|
6630
|
+
const learnerAnswerState = checkAnswerState(
|
|
6631
|
+
answerMap[materialKey] + "",
|
|
6632
|
+
index + ""
|
|
6633
|
+
);
|
|
6634
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "w-full lg:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
|
|
6635
|
+
"div",
|
|
6636
|
+
{
|
|
6637
|
+
className: `flex flex-row items-center my-4 mx-2`,
|
|
6638
|
+
style: {
|
|
6639
|
+
marginTop: view === "PC" ? calculateMarginTop(parseFloat(materialKey)) : 0
|
|
6640
|
+
},
|
|
6641
|
+
children: [
|
|
6642
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "mr-3", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("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__ */ (0, import_jsx_runtime42.jsx)(
|
|
6643
|
+
"div",
|
|
6644
|
+
{
|
|
6645
|
+
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]`,
|
|
6646
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "", children: parseFloat(materialKey) + 1 })
|
|
6647
|
+
}
|
|
6648
|
+
) }) }),
|
|
6649
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6650
|
+
"div",
|
|
6651
|
+
{
|
|
6652
|
+
ref: draggedKey === materialKey ? dragElementRef : null,
|
|
6653
|
+
"data-ordering-drop-zone": materialKey,
|
|
6654
|
+
className: `flex-1 ${draggedKey === materialKey ? "opacity-40" : selectedKey === materialKey ? "ring-2 ring-blue-500" : "opacity-100"} ${dropTargetKey === materialKey && draggedKey !== materialKey ? "ring-2 ring-blue-400 bg-blue-50" : ""} transition-all duration-200`,
|
|
6655
|
+
onMouseDown: (e) => handleMouseDown(e, materialKey),
|
|
6656
|
+
onMouseEnter: () => draggedKey && draggedKey !== materialKey && setDropTargetKey(materialKey),
|
|
6657
|
+
onMouseLeave: () => setDropTargetKey(null),
|
|
6658
|
+
onTouchStart: (e) => handleTouchStart(e, materialKey, e.currentTarget),
|
|
6659
|
+
onTouchMove: handleTouchMove,
|
|
6660
|
+
onTouchEnd: handleTouchEnd,
|
|
6661
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6662
|
+
"div",
|
|
6663
|
+
{
|
|
6664
|
+
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"}`,
|
|
6665
|
+
onClick: () => handleSelectItem(materialKey),
|
|
6666
|
+
children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "text-xl whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
6667
|
+
materialMap[answerMap[materialKey]]
|
|
6668
|
+
).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6669
|
+
"span",
|
|
6670
|
+
{
|
|
6671
|
+
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6672
|
+
children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-xl", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_react_katex9.InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
6673
|
+
},
|
|
6674
|
+
index2
|
|
6675
|
+
)) }) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6676
|
+
ShowMaterialMediaByContentType_default,
|
|
6677
|
+
{
|
|
6678
|
+
contentType: contentMap.type,
|
|
6679
|
+
src: materialMap[answerMap[materialKey]],
|
|
6680
|
+
canFullScreen: true
|
|
6681
|
+
},
|
|
6682
|
+
`${uniqueValue}-${index}`
|
|
6683
|
+
)
|
|
6684
|
+
}
|
|
6685
|
+
)
|
|
6686
|
+
}
|
|
6687
|
+
)
|
|
6688
|
+
]
|
|
6689
|
+
}
|
|
6690
|
+
) }, index);
|
|
6691
|
+
})
|
|
6692
|
+
] });
|
|
6636
6693
|
};
|
|
6637
6694
|
var OrderingActivityMaterialContent_default = OrderingActivityMaterialContent;
|
|
6638
6695
|
|
|
6639
6696
|
// src/components/activities/OrderingActivityContent.tsx
|
|
6640
|
-
var
|
|
6697
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
6641
6698
|
var OrderingActivityContent = ({
|
|
6642
6699
|
answer,
|
|
6643
6700
|
data,
|
|
@@ -6661,16 +6718,16 @@ var OrderingActivityContent = ({
|
|
|
6661
6718
|
answerMap[secondaryKey] = prevValue;
|
|
6662
6719
|
changeAnswer(answer2);
|
|
6663
6720
|
};
|
|
6664
|
-
return /* @__PURE__ */ (0,
|
|
6665
|
-
/* @__PURE__ */ (0,
|
|
6721
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(import_jsx_runtime43.Fragment, { children: [
|
|
6722
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
6666
6723
|
ActivityBodyContent_default,
|
|
6667
6724
|
{
|
|
6668
6725
|
bodyMap: orderingBodyMap,
|
|
6669
6726
|
templateType: "ORDERING"
|
|
6670
6727
|
}
|
|
6671
6728
|
),
|
|
6672
|
-
/* @__PURE__ */ (0,
|
|
6673
|
-
/* @__PURE__ */ (0,
|
|
6729
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(DividerLine_default, {}),
|
|
6730
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
6674
6731
|
OrderingActivityMaterialContent_default,
|
|
6675
6732
|
{
|
|
6676
6733
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -6688,9 +6745,9 @@ var OrderingActivityContent = ({
|
|
|
6688
6745
|
var OrderingActivityContent_default = OrderingActivityContent;
|
|
6689
6746
|
|
|
6690
6747
|
// src/components/activities/material-contents/TrueFalseActivityMaterialContent.tsx
|
|
6691
|
-
var
|
|
6748
|
+
var import_react25 = require("react");
|
|
6692
6749
|
var import_react_katex10 = require("react-katex");
|
|
6693
|
-
var
|
|
6750
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
6694
6751
|
var TrueFalseActivityMaterialContent = ({
|
|
6695
6752
|
uniqueValue,
|
|
6696
6753
|
answer,
|
|
@@ -6702,8 +6759,8 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6702
6759
|
showCorrectAnswer
|
|
6703
6760
|
}) => {
|
|
6704
6761
|
const { screenSize } = useScreenSize_default();
|
|
6705
|
-
const [shuffleOptionList, setShuffleOptionList] = (0,
|
|
6706
|
-
(0,
|
|
6762
|
+
const [shuffleOptionList, setShuffleOptionList] = (0, import_react25.useState)([]);
|
|
6763
|
+
(0, import_react25.useEffect)(() => {
|
|
6707
6764
|
const optionList = [];
|
|
6708
6765
|
optionList.push(...materialMap.trueList);
|
|
6709
6766
|
optionList.push(...materialMap.falseList);
|
|
@@ -6713,7 +6770,7 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6713
6770
|
setShuffleOptionList(shuffleArray(optionList));
|
|
6714
6771
|
}
|
|
6715
6772
|
}, []);
|
|
6716
|
-
(0,
|
|
6773
|
+
(0, import_react25.useEffect)(() => {
|
|
6717
6774
|
if (!showCorrectAnswer) return;
|
|
6718
6775
|
answer.data.find(
|
|
6719
6776
|
(answerData) => answerData.type === "TRUE_FALSE"
|
|
@@ -6743,14 +6800,14 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6743
6800
|
return "INCORRECT";
|
|
6744
6801
|
};
|
|
6745
6802
|
const answerMap = retrieveAnswerMap();
|
|
6746
|
-
return /* @__PURE__ */ (0,
|
|
6747
|
-
/* @__PURE__ */ (0,
|
|
6748
|
-
/* @__PURE__ */ (0,
|
|
6749
|
-
/* @__PURE__ */ (0,
|
|
6750
|
-
/* @__PURE__ */ (0,
|
|
6751
|
-
/* @__PURE__ */ (0,
|
|
6803
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "", children: [
|
|
6804
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "font-semibold text-xl opacity-60", children: i18n_default.t("please_select_true_false_text") }) }),
|
|
6805
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "hidden md:contents", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(DividerLine_default, {}) }),
|
|
6806
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-row justify-end items-center gap-x-2", children: [
|
|
6807
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "font-bold text-lg", children: i18n_default.t("true") }) }),
|
|
6808
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "font-bold text-lg", children: i18n_default.t("false") }) })
|
|
6752
6809
|
] }),
|
|
6753
|
-
checkCanAnswerQuestion() ? /* @__PURE__ */ (0,
|
|
6810
|
+
checkCanAnswerQuestion() ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: `flex flex-row w-full justify-center flex-wrap`, children: shuffleOptionList.map((shuffleOption, index) => {
|
|
6754
6811
|
const correctAnswer = materialMap.trueList.find(
|
|
6755
6812
|
(trueItem) => trueItem === shuffleOption
|
|
6756
6813
|
) !== void 0 ? "TRUE" : "FALSE";
|
|
@@ -6761,21 +6818,21 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6761
6818
|
correctAnswer,
|
|
6762
6819
|
learnerAnswer
|
|
6763
6820
|
);
|
|
6764
|
-
return /* @__PURE__ */ (0,
|
|
6821
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
|
|
6765
6822
|
"div",
|
|
6766
6823
|
{
|
|
6767
6824
|
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" : ""}`,
|
|
6768
6825
|
children: [
|
|
6769
|
-
/* @__PURE__ */ (0,
|
|
6826
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1", children: contentMap.type === "TEXT" ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "text-xl p-2 whitespace-pre-wrap", children: constructInputWithSpecialExpressionList(
|
|
6770
6827
|
shuffleOption
|
|
6771
|
-
).map((inputPart, index2) => /* @__PURE__ */ (0,
|
|
6828
|
+
).map((inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6772
6829
|
"span",
|
|
6773
6830
|
{
|
|
6774
6831
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6775
|
-
children: inputPart.isEquation ? /* @__PURE__ */ (0,
|
|
6832
|
+
children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "text-xl", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_react_katex10.InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
6776
6833
|
},
|
|
6777
6834
|
index2
|
|
6778
|
-
)) }) : /* @__PURE__ */ (0,
|
|
6835
|
+
)) }) : /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6779
6836
|
ShowMaterialMediaByContentType_default,
|
|
6780
6837
|
{
|
|
6781
6838
|
contentType: contentMap.type,
|
|
@@ -6784,8 +6841,8 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6784
6841
|
},
|
|
6785
6842
|
`${uniqueValue}-${index}`
|
|
6786
6843
|
) }),
|
|
6787
|
-
/* @__PURE__ */ (0,
|
|
6788
|
-
/* @__PURE__ */ (0,
|
|
6844
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6845
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6789
6846
|
BaseImage_default,
|
|
6790
6847
|
{
|
|
6791
6848
|
src: answerMap.trueList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
|
|
@@ -6796,7 +6853,7 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6796
6853
|
}
|
|
6797
6854
|
}
|
|
6798
6855
|
) }) }),
|
|
6799
|
-
/* @__PURE__ */ (0,
|
|
6856
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex flex-col items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6800
6857
|
BaseImage_default,
|
|
6801
6858
|
{
|
|
6802
6859
|
src: answerMap.falseList.includes(shuffleOption) ? "/icons/checkbox.webp" : "/icons/checkbox-empty.webp",
|
|
@@ -6812,14 +6869,14 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6812
6869
|
},
|
|
6813
6870
|
index
|
|
6814
6871
|
);
|
|
6815
|
-
}) }) : /* @__PURE__ */ (0,
|
|
6816
|
-
answerMap.trueList.map((item) => /* @__PURE__ */ (0,
|
|
6817
|
-
/* @__PURE__ */ (0,
|
|
6818
|
-
/* @__PURE__ */ (0,
|
|
6872
|
+
}) }) : /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_jsx_runtime44.Fragment, { children: [
|
|
6873
|
+
answerMap.trueList.map((item) => /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6874
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { children: item }) }),
|
|
6875
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "underline", children: i18n_default.t("true") }) })
|
|
6819
6876
|
] })),
|
|
6820
|
-
answerMap.falseList.map((item) => /* @__PURE__ */ (0,
|
|
6821
|
-
/* @__PURE__ */ (0,
|
|
6822
|
-
/* @__PURE__ */ (0,
|
|
6877
|
+
answerMap.falseList.map((item) => /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6878
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { children: item }) }),
|
|
6879
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-[50px]", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "underline", children: i18n_default.t("false") }) })
|
|
6823
6880
|
] }))
|
|
6824
6881
|
] })
|
|
6825
6882
|
] });
|
|
@@ -6827,7 +6884,7 @@ var TrueFalseActivityMaterialContent = ({
|
|
|
6827
6884
|
var TrueFalseActivityMaterialContent_default = TrueFalseActivityMaterialContent;
|
|
6828
6885
|
|
|
6829
6886
|
// src/components/activities/TrueFalseActivityContent.tsx
|
|
6830
|
-
var
|
|
6887
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
6831
6888
|
var TrueFalseActivityContent = ({
|
|
6832
6889
|
answer,
|
|
6833
6890
|
data,
|
|
@@ -6878,17 +6935,17 @@ var TrueFalseActivityContent = ({
|
|
|
6878
6935
|
}
|
|
6879
6936
|
changeAnswer(answer2);
|
|
6880
6937
|
};
|
|
6881
|
-
return /* @__PURE__ */ (0,
|
|
6882
|
-
/* @__PURE__ */ (0,
|
|
6938
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: "flex flex-row flex-wrap", children: [
|
|
6939
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:w-[40%]"}`, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
6883
6940
|
ActivityBodyContent_default,
|
|
6884
6941
|
{
|
|
6885
6942
|
bodyMap: trueFalseBodyMap,
|
|
6886
6943
|
templateType: "GROUPING"
|
|
6887
6944
|
}
|
|
6888
6945
|
) }),
|
|
6889
|
-
/* @__PURE__ */ (0,
|
|
6890
|
-
/* @__PURE__ */ (0,
|
|
6891
|
-
/* @__PURE__ */ (0,
|
|
6946
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: `${isFullScreen ? "contents" : "contents md:hidden"}`, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(DividerLine_default, {}) }),
|
|
6947
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: `${isFullScreen ? "hidden" : "hidden md:block"}`, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(VerticalDividerLine_default, {}) }),
|
|
6948
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: `${isFullScreen ? "w-full" : "w-full md:flex-1"}`, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
6892
6949
|
TrueFalseActivityMaterialContent_default,
|
|
6893
6950
|
{
|
|
6894
6951
|
uniqueValue: JSON.stringify(data.contentMap),
|
|
@@ -6907,7 +6964,7 @@ var TrueFalseActivityContent_default = TrueFalseActivityContent;
|
|
|
6907
6964
|
|
|
6908
6965
|
// src/components/activities/solution-contents/ActivitySolutionContent.tsx
|
|
6909
6966
|
var import_react_katex11 = require("react-katex");
|
|
6910
|
-
var
|
|
6967
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
6911
6968
|
var ActivitySolutionContent = ({
|
|
6912
6969
|
activityTemplateType,
|
|
6913
6970
|
data
|
|
@@ -6937,8 +6994,8 @@ var ActivitySolutionContent = ({
|
|
|
6937
6994
|
return null;
|
|
6938
6995
|
}
|
|
6939
6996
|
if (!solutionMap || Object.keys(solutionMap).length === 0) return null;
|
|
6940
|
-
return /* @__PURE__ */ (0,
|
|
6941
|
-
/* @__PURE__ */ (0,
|
|
6997
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
|
|
6998
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("solution") }),
|
|
6942
6999
|
Object.keys(solutionMap).map((key) => {
|
|
6943
7000
|
let currentItem;
|
|
6944
7001
|
try {
|
|
@@ -6948,12 +7005,12 @@ var ActivitySolutionContent = ({
|
|
|
6948
7005
|
return null;
|
|
6949
7006
|
}
|
|
6950
7007
|
const { value } = currentItem;
|
|
6951
|
-
return /* @__PURE__ */ (0,
|
|
6952
|
-
(inputPart, partIndex) => /* @__PURE__ */ (0,
|
|
7008
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "my-3 text-xl", children: constructInputWithSpecialExpressionList(value).map(
|
|
7009
|
+
(inputPart, partIndex) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
6953
7010
|
"span",
|
|
6954
7011
|
{
|
|
6955
7012
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
6956
|
-
children: inputPart.isEquation ? /* @__PURE__ */ (0,
|
|
7013
|
+
children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "text-xl", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_react_katex11.InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
6957
7014
|
},
|
|
6958
7015
|
`${key}_part_${partIndex}`
|
|
6959
7016
|
)
|
|
@@ -6965,7 +7022,7 @@ var ActivitySolutionContent_default = ActivitySolutionContent;
|
|
|
6965
7022
|
|
|
6966
7023
|
// src/components/activities/evaluation-rubric-contents/ActivityEvaluationRubricContent.tsx
|
|
6967
7024
|
var import_react_katex12 = require("react-katex");
|
|
6968
|
-
var
|
|
7025
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
6969
7026
|
var ActivityEvaluationRubricContent = ({
|
|
6970
7027
|
activityTemplateType,
|
|
6971
7028
|
data
|
|
@@ -6995,21 +7052,21 @@ var ActivityEvaluationRubricContent = ({
|
|
|
6995
7052
|
}
|
|
6996
7053
|
if (!evaluationRubricMap || Object.keys(evaluationRubricMap).length === 0)
|
|
6997
7054
|
return null;
|
|
6998
|
-
return /* @__PURE__ */ (0,
|
|
6999
|
-
/* @__PURE__ */ (0,
|
|
7055
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "p-4 border-catchup-gray-400 border-2 rounded-catchup-xlarge", children: [
|
|
7056
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
|
|
7000
7057
|
Object.keys(evaluationRubricMap).map((key, index) => {
|
|
7001
7058
|
const currentItem = JSON.parse(evaluationRubricMap[key]);
|
|
7002
7059
|
const { value } = currentItem;
|
|
7003
|
-
return /* @__PURE__ */ (0,
|
|
7060
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
7004
7061
|
"p",
|
|
7005
7062
|
{
|
|
7006
7063
|
className: "my-1 text-xl whitespace-pre-wrap",
|
|
7007
7064
|
children: constructInputWithSpecialExpressionList(value).map(
|
|
7008
|
-
(inputPart, index2) => /* @__PURE__ */ (0,
|
|
7065
|
+
(inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
7009
7066
|
"span",
|
|
7010
7067
|
{
|
|
7011
7068
|
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
7012
|
-
children: inputPart.isEquation ? /* @__PURE__ */ (0,
|
|
7069
|
+
children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-xl", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
7013
7070
|
},
|
|
7014
7071
|
index2
|
|
7015
7072
|
)
|
|
@@ -7023,31 +7080,31 @@ var ActivityEvaluationRubricContent = ({
|
|
|
7023
7080
|
var ActivityEvaluationRubricContent_default = ActivityEvaluationRubricContent;
|
|
7024
7081
|
|
|
7025
7082
|
// src/components/activities/ActivityPreviewByData.tsx
|
|
7026
|
-
var
|
|
7083
|
+
var import_react26 = require("react");
|
|
7027
7084
|
|
|
7028
7085
|
// src/components/boxes/SelectionBox.tsx
|
|
7029
|
-
var
|
|
7086
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
7030
7087
|
var SelectionBox = ({
|
|
7031
7088
|
optionList,
|
|
7032
7089
|
selectedId,
|
|
7033
7090
|
handleSelectOnClick
|
|
7034
7091
|
}) => {
|
|
7035
|
-
return /* @__PURE__ */ (0,
|
|
7092
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7036
7093
|
"div",
|
|
7037
7094
|
{
|
|
7038
7095
|
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`,
|
|
7039
7096
|
onClick: () => {
|
|
7040
7097
|
handleSelectOnClick(option.id);
|
|
7041
7098
|
},
|
|
7042
|
-
children: /* @__PURE__ */ (0,
|
|
7099
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
|
|
7043
7100
|
"div",
|
|
7044
7101
|
{
|
|
7045
7102
|
className: `flex flex-row items-center gap-x-1 ${option.id === selectedId ? "opacity-100" : "opacity-50"}`,
|
|
7046
7103
|
children: [
|
|
7047
7104
|
option.icon,
|
|
7048
|
-
/* @__PURE__ */ (0,
|
|
7049
|
-
/* @__PURE__ */ (0,
|
|
7050
|
-
option.subText ? /* @__PURE__ */ (0,
|
|
7105
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex-1 flex flex-col items-center", children: [
|
|
7106
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { children: option.text }),
|
|
7107
|
+
option.subText ? /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("p", { className: "text-md", children: [
|
|
7051
7108
|
"(",
|
|
7052
7109
|
option.subText,
|
|
7053
7110
|
")"
|
|
@@ -7063,7 +7120,7 @@ var SelectionBox = ({
|
|
|
7063
7120
|
var SelectionBox_default = SelectionBox;
|
|
7064
7121
|
|
|
7065
7122
|
// src/components/activities/ActivityPreviewByData.tsx
|
|
7066
|
-
var
|
|
7123
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
7067
7124
|
var ActivityPreviewByData = ({
|
|
7068
7125
|
data,
|
|
7069
7126
|
showType,
|
|
@@ -7075,14 +7132,14 @@ var ActivityPreviewByData = ({
|
|
|
7075
7132
|
showDifficulty,
|
|
7076
7133
|
isFullScreen
|
|
7077
7134
|
}) => {
|
|
7078
|
-
const [key, setKey] = (0,
|
|
7079
|
-
const [selectedType, setSelectedType] = (0,
|
|
7080
|
-
const [optionList, setOptionList] = (0,
|
|
7081
|
-
(0,
|
|
7135
|
+
const [key, setKey] = (0, import_react26.useState)((/* @__PURE__ */ new Date()).getTime());
|
|
7136
|
+
const [selectedType, setSelectedType] = (0, import_react26.useState)(null);
|
|
7137
|
+
const [optionList, setOptionList] = (0, import_react26.useState)([]);
|
|
7138
|
+
(0, import_react26.useEffect)(() => {
|
|
7082
7139
|
if (!data) return;
|
|
7083
7140
|
setKey((/* @__PURE__ */ new Date()).getTime());
|
|
7084
7141
|
}, [data]);
|
|
7085
|
-
(0,
|
|
7142
|
+
(0, import_react26.useEffect)(() => {
|
|
7086
7143
|
if (!typeOptionList) return;
|
|
7087
7144
|
if (typeOptionList.length === 0) return;
|
|
7088
7145
|
let foundTypeOption;
|
|
@@ -7097,7 +7154,7 @@ var ActivityPreviewByData = ({
|
|
|
7097
7154
|
setSelectedType(typeOptionList[0].id);
|
|
7098
7155
|
}
|
|
7099
7156
|
}, [typeOptionList, lockedType]);
|
|
7100
|
-
(0,
|
|
7157
|
+
(0, import_react26.useEffect)(() => {
|
|
7101
7158
|
if (!data) return;
|
|
7102
7159
|
if (!typeOptionList) return;
|
|
7103
7160
|
if (typeOptionList.length === 0) return;
|
|
@@ -7121,11 +7178,11 @@ var ActivityPreviewByData = ({
|
|
|
7121
7178
|
}, [data, lockedType, typeOptionList, showDifficulty]);
|
|
7122
7179
|
if (!data) return;
|
|
7123
7180
|
const answer = constructAnswerBasedOnData(data);
|
|
7124
|
-
return /* @__PURE__ */ (0,
|
|
7125
|
-
showType ? /* @__PURE__ */ (0,
|
|
7126
|
-
/* @__PURE__ */ (0,
|
|
7127
|
-
showDescription ? /* @__PURE__ */ (0,
|
|
7128
|
-
/* @__PURE__ */ (0,
|
|
7181
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { children: [
|
|
7182
|
+
showType ? /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_jsx_runtime49.Fragment, { children: [
|
|
7183
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "mb-4", children: [
|
|
7184
|
+
showDescription ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
|
|
7185
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7129
7186
|
SelectionBox_default,
|
|
7130
7187
|
{
|
|
7131
7188
|
optionList,
|
|
@@ -7136,9 +7193,9 @@ var ActivityPreviewByData = ({
|
|
|
7136
7193
|
}
|
|
7137
7194
|
)
|
|
7138
7195
|
] }),
|
|
7139
|
-
/* @__PURE__ */ (0,
|
|
7196
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)(DividerLine_default, {})
|
|
7140
7197
|
] }) : null,
|
|
7141
|
-
selectedType ? /* @__PURE__ */ (0,
|
|
7198
|
+
selectedType ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "", children: selectedType === "ORDERING" && data["orderingBodyMap"] != null && data["orderingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7142
7199
|
OrderingActivityContent_default,
|
|
7143
7200
|
{
|
|
7144
7201
|
answer,
|
|
@@ -7152,7 +7209,7 @@ var ActivityPreviewByData = ({
|
|
|
7152
7209
|
showCorrectAnswer: true,
|
|
7153
7210
|
isFullScreen
|
|
7154
7211
|
}
|
|
7155
|
-
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
7212
|
+
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7156
7213
|
DropdownActivityContent_default,
|
|
7157
7214
|
{
|
|
7158
7215
|
answer,
|
|
@@ -7166,7 +7223,7 @@ var ActivityPreviewByData = ({
|
|
|
7166
7223
|
showCorrectAnswer: true,
|
|
7167
7224
|
isFullScreen
|
|
7168
7225
|
}
|
|
7169
|
-
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
7226
|
+
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7170
7227
|
MCSAActivityContent_default,
|
|
7171
7228
|
{
|
|
7172
7229
|
answer,
|
|
@@ -7180,7 +7237,7 @@ var ActivityPreviewByData = ({
|
|
|
7180
7237
|
showCorrectAnswer: true,
|
|
7181
7238
|
isFullScreen
|
|
7182
7239
|
}
|
|
7183
|
-
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
7240
|
+
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7184
7241
|
MCMAActivityContent_default,
|
|
7185
7242
|
{
|
|
7186
7243
|
answer,
|
|
@@ -7194,7 +7251,7 @@ var ActivityPreviewByData = ({
|
|
|
7194
7251
|
showCorrectAnswer: true,
|
|
7195
7252
|
isFullScreen
|
|
7196
7253
|
}
|
|
7197
|
-
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
7254
|
+
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7198
7255
|
MatchingActivityContent_default,
|
|
7199
7256
|
{
|
|
7200
7257
|
answer,
|
|
@@ -7207,7 +7264,7 @@ var ActivityPreviewByData = ({
|
|
|
7207
7264
|
isPreview: true,
|
|
7208
7265
|
showCorrectAnswer: true
|
|
7209
7266
|
}
|
|
7210
|
-
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
7267
|
+
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7211
7268
|
GroupingActivityContent_default,
|
|
7212
7269
|
{
|
|
7213
7270
|
answer,
|
|
@@ -7220,7 +7277,7 @@ var ActivityPreviewByData = ({
|
|
|
7220
7277
|
isPreview: true,
|
|
7221
7278
|
showCorrectAnswer: true
|
|
7222
7279
|
}
|
|
7223
|
-
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
7280
|
+
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7224
7281
|
FillInTheBlanksActivityContent_default,
|
|
7225
7282
|
{
|
|
7226
7283
|
answer,
|
|
@@ -7234,7 +7291,7 @@ var ActivityPreviewByData = ({
|
|
|
7234
7291
|
showCorrectAnswer: true,
|
|
7235
7292
|
isFullScreen
|
|
7236
7293
|
}
|
|
7237
|
-
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ (0,
|
|
7294
|
+
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7238
7295
|
OpenEndedActivityContent_default,
|
|
7239
7296
|
{
|
|
7240
7297
|
answer,
|
|
@@ -7246,7 +7303,7 @@ var ActivityPreviewByData = ({
|
|
|
7246
7303
|
isPreview: true,
|
|
7247
7304
|
isFullScreen
|
|
7248
7305
|
}
|
|
7249
|
-
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
7306
|
+
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7250
7307
|
TrueFalseActivityContent_default,
|
|
7251
7308
|
{
|
|
7252
7309
|
answer,
|
|
@@ -7261,14 +7318,14 @@ var ActivityPreviewByData = ({
|
|
|
7261
7318
|
isFullScreen
|
|
7262
7319
|
}
|
|
7263
7320
|
) : null }, selectedType) : null,
|
|
7264
|
-
selectedType && showSolution ? /* @__PURE__ */ (0,
|
|
7321
|
+
selectedType && showSolution ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7265
7322
|
ActivitySolutionContent_default,
|
|
7266
7323
|
{
|
|
7267
7324
|
activityTemplateType: selectedType,
|
|
7268
7325
|
data
|
|
7269
7326
|
}
|
|
7270
7327
|
) }) : null,
|
|
7271
|
-
selectedType && showEvaluationRubric ? /* @__PURE__ */ (0,
|
|
7328
|
+
selectedType && showEvaluationRubric ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
7272
7329
|
ActivityEvaluationRubricContent_default,
|
|
7273
7330
|
{
|
|
7274
7331
|
activityTemplateType: selectedType,
|
|
@@ -7280,8 +7337,8 @@ var ActivityPreviewByData = ({
|
|
|
7280
7337
|
var ActivityPreviewByData_default = ActivityPreviewByData;
|
|
7281
7338
|
|
|
7282
7339
|
// src/components/activities/ActivityPreviewByAnswerData.tsx
|
|
7283
|
-
var
|
|
7284
|
-
var
|
|
7340
|
+
var import_react27 = require("react");
|
|
7341
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
7285
7342
|
var ActivityPreviewByAnswerData = ({
|
|
7286
7343
|
data,
|
|
7287
7344
|
showType = true,
|
|
@@ -7295,11 +7352,11 @@ var ActivityPreviewByAnswerData = ({
|
|
|
7295
7352
|
showCorrectAnswer = false
|
|
7296
7353
|
}) => {
|
|
7297
7354
|
var _a;
|
|
7298
|
-
const [key, setKey] = (0,
|
|
7299
|
-
const [selectedType, setSelectedType] = (0,
|
|
7300
|
-
const [optionList, setOptionList] = (0,
|
|
7301
|
-
const [answer, setAnswer] = (0,
|
|
7302
|
-
(0,
|
|
7355
|
+
const [key, setKey] = (0, import_react27.useState)((/* @__PURE__ */ new Date()).getTime());
|
|
7356
|
+
const [selectedType, setSelectedType] = (0, import_react27.useState)(null);
|
|
7357
|
+
const [optionList, setOptionList] = (0, import_react27.useState)([]);
|
|
7358
|
+
const [answer, setAnswer] = (0, import_react27.useState)({ data: [] });
|
|
7359
|
+
(0, import_react27.useEffect)(() => {
|
|
7303
7360
|
if (!data) return;
|
|
7304
7361
|
setKey((/* @__PURE__ */ new Date()).getTime());
|
|
7305
7362
|
}, [data]);
|
|
@@ -7312,7 +7369,7 @@ var ActivityPreviewByAnswerData = ({
|
|
|
7312
7369
|
}
|
|
7313
7370
|
return null;
|
|
7314
7371
|
};
|
|
7315
|
-
(0,
|
|
7372
|
+
(0, import_react27.useEffect)(() => {
|
|
7316
7373
|
if (!data) return;
|
|
7317
7374
|
const constructAnswerBasedOnData2 = () => {
|
|
7318
7375
|
const newAnswer = { data: [] };
|
|
@@ -7351,7 +7408,7 @@ var ActivityPreviewByAnswerData = ({
|
|
|
7351
7408
|
};
|
|
7352
7409
|
constructAnswerBasedOnData2();
|
|
7353
7410
|
}, [data, lockedType]);
|
|
7354
|
-
(0,
|
|
7411
|
+
(0, import_react27.useEffect)(() => {
|
|
7355
7412
|
if (!data || !answer.data.length) return;
|
|
7356
7413
|
let currentTypeOptionList = typeOptionList || answer.data.map((item) => ({
|
|
7357
7414
|
id: item.type,
|
|
@@ -7389,38 +7446,38 @@ var ActivityPreviewByAnswerData = ({
|
|
|
7389
7446
|
};
|
|
7390
7447
|
switch (selectedType) {
|
|
7391
7448
|
case "ORDERING":
|
|
7392
|
-
return data.orderingBodyMap && data.orderingMaterialMap ? /* @__PURE__ */ (0,
|
|
7449
|
+
return data.orderingBodyMap && data.orderingMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(OrderingActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7393
7450
|
case "DROPDOWN":
|
|
7394
|
-
return data.dropdownBodyMap && data.dropdownMaterialMap ? /* @__PURE__ */ (0,
|
|
7451
|
+
return data.dropdownBodyMap && data.dropdownMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(DropdownActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7395
7452
|
case "MCSA":
|
|
7396
|
-
return data.MCSABodyMap && data.MCSAMaterialMap ? /* @__PURE__ */ (0,
|
|
7453
|
+
return data.MCSABodyMap && data.MCSAMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(MCSAActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7397
7454
|
case "MCMA":
|
|
7398
|
-
return data.MCMABodyMap && data.MCMAMaterialMap ? /* @__PURE__ */ (0,
|
|
7455
|
+
return data.MCMABodyMap && data.MCMAMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(MCMAActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7399
7456
|
case "MATCHING":
|
|
7400
|
-
return data.matchingBodyMap && data.matchingMaterialMap ? /* @__PURE__ */ (0,
|
|
7457
|
+
return data.matchingBodyMap && data.matchingMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(MatchingActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7401
7458
|
case "GROUPING":
|
|
7402
|
-
return data.groupingBodyMap && data.groupingMaterialMap ? /* @__PURE__ */ (0,
|
|
7459
|
+
return data.groupingBodyMap && data.groupingMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(GroupingActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7403
7460
|
case "FILL_IN_THE_BLANKS":
|
|
7404
|
-
return data.fillInTheBlanksBodyMap && data.fillInTheBlanksMaterialMap ? /* @__PURE__ */ (0,
|
|
7461
|
+
return data.fillInTheBlanksBodyMap && data.fillInTheBlanksMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(FillInTheBlanksActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7405
7462
|
case "OPEN_ENDED":
|
|
7406
|
-
return data.openEndedBodyMap ? /* @__PURE__ */ (0,
|
|
7463
|
+
return data.openEndedBodyMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7407
7464
|
OpenEndedActivityContent_default,
|
|
7408
7465
|
__spreadProps(__spreadValues({}, commonProps), {
|
|
7409
7466
|
showMaterialContent: true
|
|
7410
7467
|
})
|
|
7411
7468
|
) : null;
|
|
7412
7469
|
case "TRUE_FALSE":
|
|
7413
|
-
return data.trueFalseBodyMap && data.trueFalseMaterialMap ? /* @__PURE__ */ (0,
|
|
7470
|
+
return data.trueFalseBodyMap && data.trueFalseMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TrueFalseActivityContent_default, __spreadValues({}, commonProps)) : null;
|
|
7414
7471
|
default:
|
|
7415
7472
|
return null;
|
|
7416
7473
|
}
|
|
7417
7474
|
};
|
|
7418
7475
|
if (!data) return null;
|
|
7419
|
-
return /* @__PURE__ */ (0,
|
|
7420
|
-
showType && optionList.length > 0 ? /* @__PURE__ */ (0,
|
|
7421
|
-
/* @__PURE__ */ (0,
|
|
7422
|
-
showDescription ? /* @__PURE__ */ (0,
|
|
7423
|
-
/* @__PURE__ */ (0,
|
|
7476
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { children: [
|
|
7477
|
+
showType && optionList.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(import_jsx_runtime50.Fragment, { children: [
|
|
7478
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "mb-4", children: [
|
|
7479
|
+
showDescription ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
|
|
7480
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7424
7481
|
SelectionBox_default,
|
|
7425
7482
|
{
|
|
7426
7483
|
optionList,
|
|
@@ -7431,20 +7488,20 @@ var ActivityPreviewByAnswerData = ({
|
|
|
7431
7488
|
}
|
|
7432
7489
|
)
|
|
7433
7490
|
] }),
|
|
7434
|
-
/* @__PURE__ */ (0,
|
|
7491
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(DividerLine_default, {})
|
|
7435
7492
|
] }) : null,
|
|
7436
|
-
/* @__PURE__ */ (0,
|
|
7437
|
-
((_a = answer == null ? void 0 : answer.data[0]) == null ? void 0 : _a.isEmpty) ? /* @__PURE__ */ (0,
|
|
7438
|
-
selectedType ? /* @__PURE__ */ (0,
|
|
7493
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex flex-col my-2 w-full p-5", children: [
|
|
7494
|
+
((_a = answer == null ? void 0 : answer.data[0]) == null ? void 0 : _a.isEmpty) ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(ActivityEmptyContent_default, {}) : null,
|
|
7495
|
+
selectedType ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { children: RenderSelectedActivityContent() }, selectedType) : null
|
|
7439
7496
|
] }),
|
|
7440
|
-
selectedType && showSolution ? /* @__PURE__ */ (0,
|
|
7497
|
+
selectedType && showSolution ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7441
7498
|
ActivitySolutionContent_default,
|
|
7442
7499
|
{
|
|
7443
7500
|
activityTemplateType: selectedType,
|
|
7444
7501
|
data
|
|
7445
7502
|
}
|
|
7446
7503
|
) }) : null,
|
|
7447
|
-
selectedType && showEvaluationRubric ? /* @__PURE__ */ (0,
|
|
7504
|
+
selectedType && showEvaluationRubric ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7448
7505
|
ActivityEvaluationRubricContent_default,
|
|
7449
7506
|
{
|
|
7450
7507
|
activityTemplateType: selectedType,
|
|
@@ -7456,17 +7513,17 @@ var ActivityPreviewByAnswerData = ({
|
|
|
7456
7513
|
var ActivityPreviewByAnswerData_default = ActivityPreviewByAnswerData;
|
|
7457
7514
|
|
|
7458
7515
|
// src/components/errors/StatusError.tsx
|
|
7459
|
-
var
|
|
7516
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
7460
7517
|
var StatusError = ({
|
|
7461
7518
|
statusCode,
|
|
7462
7519
|
statusText,
|
|
7463
7520
|
textSize
|
|
7464
7521
|
}) => {
|
|
7465
|
-
return /* @__PURE__ */ (0,
|
|
7466
|
-
/* @__PURE__ */ (0,
|
|
7467
|
-
/* @__PURE__ */ (0,
|
|
7468
|
-
/* @__PURE__ */ (0,
|
|
7469
|
-
/* @__PURE__ */ (0,
|
|
7522
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex flex-col justify-center items-center", children: [
|
|
7523
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: "text-6xl text-catchup-red my-5", children: i18n_default.t("ooops_text") }),
|
|
7524
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "text-center my-5", children: [
|
|
7525
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: "italic", children: i18n_default.t("unexcepted_error_text") }),
|
|
7526
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("p", { className: `${textSize ? textSize : "text-lg"}`, children: [
|
|
7470
7527
|
"(",
|
|
7471
7528
|
statusCode ? `${statusCode} - ` : null,
|
|
7472
7529
|
statusText,
|
|
@@ -7478,9 +7535,9 @@ var StatusError = ({
|
|
|
7478
7535
|
var StatusError_default = StatusError;
|
|
7479
7536
|
|
|
7480
7537
|
// src/components/dividers/BlueVerticalDividerLine.tsx
|
|
7481
|
-
var
|
|
7538
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
7482
7539
|
var BlueVerticalDividerLine = ({ opacity }) => {
|
|
7483
|
-
return /* @__PURE__ */ (0,
|
|
7540
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
7484
7541
|
"div",
|
|
7485
7542
|
{
|
|
7486
7543
|
className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
|
|
@@ -7490,7 +7547,7 @@ var BlueVerticalDividerLine = ({ opacity }) => {
|
|
|
7490
7547
|
var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
|
|
7491
7548
|
|
|
7492
7549
|
// src/components/groups/LeftTextRightInputGroup.tsx
|
|
7493
|
-
var
|
|
7550
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
7494
7551
|
var LeftTextRightInputGroup = ({
|
|
7495
7552
|
type,
|
|
7496
7553
|
title,
|
|
@@ -7500,9 +7557,9 @@ var LeftTextRightInputGroup = ({
|
|
|
7500
7557
|
disabled,
|
|
7501
7558
|
errorText
|
|
7502
7559
|
}) => {
|
|
7503
|
-
return /* @__PURE__ */ (0,
|
|
7504
|
-
/* @__PURE__ */ (0,
|
|
7505
|
-
/* @__PURE__ */ (0,
|
|
7560
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "w-full flex flex-row mx-2", children: [
|
|
7561
|
+
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { children: title }) }),
|
|
7562
|
+
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
7506
7563
|
InputGroup_default,
|
|
7507
7564
|
{
|
|
7508
7565
|
type,
|
|
@@ -7518,8 +7575,8 @@ var LeftTextRightInputGroup = ({
|
|
|
7518
7575
|
var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
|
|
7519
7576
|
|
|
7520
7577
|
// src/components/groups/PageTravelGroup.tsx
|
|
7521
|
-
var
|
|
7522
|
-
var
|
|
7578
|
+
var import_react28 = require("react");
|
|
7579
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
7523
7580
|
var PageTravelGroup = ({
|
|
7524
7581
|
isImageProcessing,
|
|
7525
7582
|
handleImageProcessing,
|
|
@@ -7528,17 +7585,17 @@ var PageTravelGroup = ({
|
|
|
7528
7585
|
setPageNumber,
|
|
7529
7586
|
setImageReady
|
|
7530
7587
|
}) => {
|
|
7531
|
-
const [totalPageNumber, setTotalPageNumber] = (0,
|
|
7532
|
-
const [newPageNumber, setNewPageNumber] = (0,
|
|
7533
|
-
(0,
|
|
7588
|
+
const [totalPageNumber, setTotalPageNumber] = (0, import_react28.useState)(0);
|
|
7589
|
+
const [newPageNumber, setNewPageNumber] = (0, import_react28.useState)(0);
|
|
7590
|
+
(0, import_react28.useEffect)(() => {
|
|
7534
7591
|
if (!initialTotalPageNumber) return;
|
|
7535
7592
|
setTotalPageNumber(initialTotalPageNumber);
|
|
7536
7593
|
}, [initialTotalPageNumber]);
|
|
7537
|
-
(0,
|
|
7594
|
+
(0, import_react28.useEffect)(() => {
|
|
7538
7595
|
setNewPageNumber(pageNumber + 1);
|
|
7539
7596
|
}, [pageNumber]);
|
|
7540
|
-
return /* @__PURE__ */ (0,
|
|
7541
|
-
pageNumber === 0 ? null : /* @__PURE__ */ (0,
|
|
7597
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex-1 flex flex-row justify-center items-center flex-wrap", children: [
|
|
7598
|
+
pageNumber === 0 ? null : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "px-2 flex flex-col items-center", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
7542
7599
|
BaseImage_default,
|
|
7543
7600
|
{
|
|
7544
7601
|
size: "small",
|
|
@@ -7556,7 +7613,7 @@ var PageTravelGroup = ({
|
|
|
7556
7613
|
}
|
|
7557
7614
|
}
|
|
7558
7615
|
) }),
|
|
7559
|
-
Array.from(Array(totalPageNumber).keys()).filter((index) => index < pageNumber + 5).filter((index) => index > pageNumber - 5).map((index) => /* @__PURE__ */ (0,
|
|
7616
|
+
Array.from(Array(totalPageNumber).keys()).filter((index) => index < pageNumber + 5).filter((index) => index > pageNumber - 5).map((index) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "px-2", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
7560
7617
|
"p",
|
|
7561
7618
|
{
|
|
7562
7619
|
className: `${pageNumber === index ? "text-2xl" : "text-md"} cursor-pointer`,
|
|
@@ -7571,7 +7628,7 @@ var PageTravelGroup = ({
|
|
|
7571
7628
|
children: index + 1
|
|
7572
7629
|
}
|
|
7573
7630
|
) }, index)),
|
|
7574
|
-
totalPageNumber === 0 || pageNumber === totalPageNumber - 1 ? null : /* @__PURE__ */ (0,
|
|
7631
|
+
totalPageNumber === 0 || pageNumber === totalPageNumber - 1 ? null : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "px-2 flex flex-col items-center", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
7575
7632
|
BaseImage_default,
|
|
7576
7633
|
{
|
|
7577
7634
|
size: "small",
|
|
@@ -7589,7 +7646,7 @@ var PageTravelGroup = ({
|
|
|
7589
7646
|
}
|
|
7590
7647
|
}
|
|
7591
7648
|
) }),
|
|
7592
|
-
/* @__PURE__ */ (0,
|
|
7649
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
7593
7650
|
"input",
|
|
7594
7651
|
{
|
|
7595
7652
|
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`,
|
|
@@ -7613,14 +7670,14 @@ var PageTravelGroup = ({
|
|
|
7613
7670
|
var PageTravelGroup_default = PageTravelGroup;
|
|
7614
7671
|
|
|
7615
7672
|
// src/components/boxes/SelectionCheckbox.tsx
|
|
7616
|
-
var
|
|
7673
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
7617
7674
|
var SelectionCheckbox = ({
|
|
7618
7675
|
optionList,
|
|
7619
7676
|
selectedIdList,
|
|
7620
7677
|
handleSelectOnClick,
|
|
7621
7678
|
handleRemoveOnClick
|
|
7622
7679
|
}) => {
|
|
7623
|
-
return /* @__PURE__ */ (0,
|
|
7680
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
7624
7681
|
"div",
|
|
7625
7682
|
{
|
|
7626
7683
|
className: `${selectedIdList.findIndex(
|
|
@@ -7635,14 +7692,14 @@ var SelectionCheckbox = ({
|
|
|
7635
7692
|
handleRemoveOnClick(option.id);
|
|
7636
7693
|
}
|
|
7637
7694
|
},
|
|
7638
|
-
children: /* @__PURE__ */ (0,
|
|
7695
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(
|
|
7639
7696
|
"div",
|
|
7640
7697
|
{
|
|
7641
7698
|
className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
|
|
7642
7699
|
(selectedId) => selectedId === option.id
|
|
7643
7700
|
) > -1 ? "opacity-100" : "opacity-50"}`,
|
|
7644
7701
|
children: [
|
|
7645
|
-
/* @__PURE__ */ (0,
|
|
7702
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
7646
7703
|
BaseImage_default,
|
|
7647
7704
|
{
|
|
7648
7705
|
src: selectedIdList.findIndex(
|
|
@@ -7652,7 +7709,7 @@ var SelectionCheckbox = ({
|
|
|
7652
7709
|
size: "small"
|
|
7653
7710
|
}
|
|
7654
7711
|
),
|
|
7655
|
-
/* @__PURE__ */ (0,
|
|
7712
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("p", { children: option.text }) })
|
|
7656
7713
|
]
|
|
7657
7714
|
}
|
|
7658
7715
|
)
|
|
@@ -7663,7 +7720,7 @@ var SelectionCheckbox = ({
|
|
|
7663
7720
|
var SelectionCheckbox_default = SelectionCheckbox;
|
|
7664
7721
|
|
|
7665
7722
|
// src/components/tabs/SelectionTab.tsx
|
|
7666
|
-
var
|
|
7723
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
7667
7724
|
var SelectionTab = ({
|
|
7668
7725
|
optionList,
|
|
7669
7726
|
selectedId,
|
|
@@ -7673,7 +7730,7 @@ var SelectionTab = ({
|
|
|
7673
7730
|
textColor,
|
|
7674
7731
|
borderColor
|
|
7675
7732
|
}) => {
|
|
7676
|
-
return /* @__PURE__ */ (0,
|
|
7733
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap mb-2 text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
|
|
7677
7734
|
"div",
|
|
7678
7735
|
{
|
|
7679
7736
|
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`,
|
|
@@ -7681,8 +7738,8 @@ var SelectionTab = ({
|
|
|
7681
7738
|
handleSelectOnClick(option.id);
|
|
7682
7739
|
},
|
|
7683
7740
|
children: [
|
|
7684
|
-
/* @__PURE__ */ (0,
|
|
7685
|
-
option.subTitle ? /* @__PURE__ */ (0,
|
|
7741
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("p", { className: "text-lg", children: option.title }),
|
|
7742
|
+
option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("p", { className: "text-md", children: option.subTitle }) : null
|
|
7686
7743
|
]
|
|
7687
7744
|
},
|
|
7688
7745
|
index
|
|
@@ -7691,20 +7748,20 @@ var SelectionTab = ({
|
|
|
7691
7748
|
var SelectionTab_default = SelectionTab;
|
|
7692
7749
|
|
|
7693
7750
|
// src/components/tabs/SelectionTabFill.tsx
|
|
7694
|
-
var
|
|
7751
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
7695
7752
|
var SelectionTabFill = ({
|
|
7696
7753
|
optionList,
|
|
7697
7754
|
selectedId,
|
|
7698
7755
|
handleSelectOnClick
|
|
7699
7756
|
}) => {
|
|
7700
|
-
return /* @__PURE__ */ (0,
|
|
7757
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "w-full flex flex-row bg-catchup-gray-50 gap-x-2 rounded-catchup-medium px-4 py-2 justify-center text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
7701
7758
|
"div",
|
|
7702
7759
|
{
|
|
7703
7760
|
className: "cursor-pointer",
|
|
7704
7761
|
onClick: () => {
|
|
7705
7762
|
handleSelectOnClick(option.id);
|
|
7706
7763
|
},
|
|
7707
|
-
children: /* @__PURE__ */ (0,
|
|
7764
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
7708
7765
|
"p",
|
|
7709
7766
|
{
|
|
7710
7767
|
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`,
|
|
@@ -7718,34 +7775,34 @@ var SelectionTabFill = ({
|
|
|
7718
7775
|
var SelectionTabFill_default = SelectionTabFill;
|
|
7719
7776
|
|
|
7720
7777
|
// src/components/labels/ActivityTemplateLabel.tsx
|
|
7721
|
-
var
|
|
7778
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
7722
7779
|
var ActivityTemplateLabel = ({
|
|
7723
7780
|
title,
|
|
7724
7781
|
icon,
|
|
7725
7782
|
font
|
|
7726
7783
|
}) => {
|
|
7727
|
-
return /* @__PURE__ */ (0,
|
|
7728
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
7729
|
-
/* @__PURE__ */ (0,
|
|
7784
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7785
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
|
|
7786
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
7730
7787
|
] }) });
|
|
7731
7788
|
};
|
|
7732
7789
|
var ActivityTemplateLabel_default = ActivityTemplateLabel;
|
|
7733
7790
|
|
|
7734
7791
|
// src/components/labels/BrandLabel.tsx
|
|
7735
|
-
var
|
|
7792
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
7736
7793
|
var BrandLabel = ({ title, icon, font }) => {
|
|
7737
|
-
return /* @__PURE__ */ (0,
|
|
7738
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
7739
|
-
/* @__PURE__ */ (0,
|
|
7794
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7795
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
|
|
7796
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
7740
7797
|
] }) });
|
|
7741
7798
|
};
|
|
7742
7799
|
var BrandLabel_default = BrandLabel;
|
|
7743
7800
|
|
|
7744
7801
|
// src/components/labels/CategoryLabel.tsx
|
|
7745
|
-
var
|
|
7802
|
+
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
7746
7803
|
var CategoryLabel = ({ title, icon, font }) => {
|
|
7747
|
-
return /* @__PURE__ */ (0,
|
|
7748
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
7804
|
+
return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-category-label-border bg-category-label text-category-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7805
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
7749
7806
|
BaseImage_default,
|
|
7750
7807
|
{
|
|
7751
7808
|
src: "/icons/category-label.webp",
|
|
@@ -7753,40 +7810,40 @@ var CategoryLabel = ({ title, icon, font }) => {
|
|
|
7753
7810
|
size: "xsmall"
|
|
7754
7811
|
}
|
|
7755
7812
|
),
|
|
7756
|
-
/* @__PURE__ */ (0,
|
|
7813
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
7757
7814
|
] }) });
|
|
7758
7815
|
};
|
|
7759
7816
|
var CategoryLabel_default = CategoryLabel;
|
|
7760
7817
|
|
|
7761
7818
|
// src/components/labels/CoterieLabel.tsx
|
|
7762
|
-
var
|
|
7819
|
+
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
7763
7820
|
var CoterieLabel = ({ title, font }) => {
|
|
7764
|
-
return /* @__PURE__ */ (0,
|
|
7821
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("p", { className: font ? font : "text-sm", children: title }) });
|
|
7765
7822
|
};
|
|
7766
7823
|
var CoterieLabel_default = CoterieLabel;
|
|
7767
7824
|
|
|
7768
7825
|
// src/components/labels/GradeLabel.tsx
|
|
7769
|
-
var
|
|
7826
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
7770
7827
|
var GradeLabel = ({ title, font }) => {
|
|
7771
|
-
return /* @__PURE__ */ (0,
|
|
7828
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("p", { className: font ? font : "text-sm", children: title }) });
|
|
7772
7829
|
};
|
|
7773
7830
|
var GradeLabel_default = GradeLabel;
|
|
7774
7831
|
|
|
7775
7832
|
// src/components/labels/OutcomeLabel.tsx
|
|
7776
|
-
var
|
|
7833
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
7777
7834
|
var OutcomeLabel = ({ title, font }) => {
|
|
7778
|
-
return /* @__PURE__ */ (0,
|
|
7779
|
-
/* @__PURE__ */ (0,
|
|
7780
|
-
/* @__PURE__ */ (0,
|
|
7835
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7836
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
|
|
7837
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
7781
7838
|
] }) });
|
|
7782
7839
|
};
|
|
7783
7840
|
var OutcomeLabel_default = OutcomeLabel;
|
|
7784
7841
|
|
|
7785
7842
|
// src/components/labels/PersonalLabel.tsx
|
|
7786
|
-
var
|
|
7843
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
7787
7844
|
var PersonalLabel = ({ title, icon, font }) => {
|
|
7788
|
-
return /* @__PURE__ */ (0,
|
|
7789
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
7845
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-personal-label-border bg-personal-label text-personal-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7846
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
7790
7847
|
BaseImage_default,
|
|
7791
7848
|
{
|
|
7792
7849
|
src: "/icons/personal-label.webp",
|
|
@@ -7794,16 +7851,16 @@ var PersonalLabel = ({ title, icon, font }) => {
|
|
|
7794
7851
|
size: "xsmall"
|
|
7795
7852
|
}
|
|
7796
7853
|
),
|
|
7797
|
-
/* @__PURE__ */ (0,
|
|
7854
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
7798
7855
|
] }) });
|
|
7799
7856
|
};
|
|
7800
7857
|
var PersonalLabel_default = PersonalLabel;
|
|
7801
7858
|
|
|
7802
7859
|
// src/components/labels/PublishingHouseLabel.tsx
|
|
7803
|
-
var
|
|
7860
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
7804
7861
|
var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
7805
|
-
return /* @__PURE__ */ (0,
|
|
7806
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
7862
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
7863
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
7807
7864
|
BaseImage_default,
|
|
7808
7865
|
{
|
|
7809
7866
|
src: "/icons/publishing-house-label.webp",
|
|
@@ -7811,55 +7868,55 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
|
7811
7868
|
size: "xsmall"
|
|
7812
7869
|
}
|
|
7813
7870
|
),
|
|
7814
|
-
/* @__PURE__ */ (0,
|
|
7871
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
7815
7872
|
] }) });
|
|
7816
7873
|
};
|
|
7817
7874
|
var PublishingHouseLabel_default = PublishingHouseLabel;
|
|
7818
7875
|
|
|
7819
7876
|
// src/components/labels/ActivityLabel.tsx
|
|
7820
|
-
var
|
|
7877
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
7821
7878
|
var ActivityLabel = ({ title, font }) => {
|
|
7822
|
-
return /* @__PURE__ */ (0,
|
|
7879
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge text-center", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("p", { className: font ? font : "text-sm", children: title }) });
|
|
7823
7880
|
};
|
|
7824
7881
|
var ActivityLabel_default = ActivityLabel;
|
|
7825
7882
|
|
|
7826
7883
|
// src/components/infos/InfoWithText.tsx
|
|
7827
|
-
var
|
|
7884
|
+
var import_jsx_runtime67 = require("react/jsx-runtime");
|
|
7828
7885
|
var InfoWithText = (props) => {
|
|
7829
7886
|
const { value } = props;
|
|
7830
|
-
return /* @__PURE__ */ (0,
|
|
7831
|
-
/* @__PURE__ */ (0,
|
|
7832
|
-
/* @__PURE__ */ (0,
|
|
7887
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
|
|
7888
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
|
|
7889
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("p", { className: "", children: value }) })
|
|
7833
7890
|
] });
|
|
7834
7891
|
};
|
|
7835
7892
|
var InfoWithText_default = InfoWithText;
|
|
7836
7893
|
|
|
7837
7894
|
// src/components/titles/BaseTitle.tsx
|
|
7838
|
-
var
|
|
7895
|
+
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
7839
7896
|
var BaseTitle = ({
|
|
7840
7897
|
title,
|
|
7841
7898
|
totalItemCount,
|
|
7842
7899
|
itemName,
|
|
7843
7900
|
description
|
|
7844
7901
|
}) => {
|
|
7845
|
-
return /* @__PURE__ */ (0,
|
|
7846
|
-
/* @__PURE__ */ (0,
|
|
7902
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex flex-col gap-y-2", children: [
|
|
7903
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("p", { className: "text-2xl font-medium", children: [
|
|
7847
7904
|
title,
|
|
7848
|
-
totalItemCount && itemName ? /* @__PURE__ */ (0,
|
|
7905
|
+
totalItemCount && itemName ? /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("span", { className: "p-2 text-base text-catchup-blue-600 border border-catchup-blue-300 rounded-catchup-3xlarge mx-2 bg-catchup-blue-100", children: [
|
|
7849
7906
|
totalItemCount,
|
|
7850
7907
|
" ",
|
|
7851
7908
|
itemName
|
|
7852
7909
|
] }) : null
|
|
7853
7910
|
] }),
|
|
7854
|
-
description ? /* @__PURE__ */ (0,
|
|
7911
|
+
description ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("p", { className: "", children: description }) : null
|
|
7855
7912
|
] });
|
|
7856
7913
|
};
|
|
7857
7914
|
var BaseTitle_default = BaseTitle;
|
|
7858
7915
|
|
|
7859
7916
|
// src/components/titles/SubTitle.tsx
|
|
7860
|
-
var
|
|
7917
|
+
var import_jsx_runtime69 = require("react/jsx-runtime");
|
|
7861
7918
|
var SubTitle = ({ title }) => {
|
|
7862
|
-
return /* @__PURE__ */ (0,
|
|
7919
|
+
return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
|
|
7863
7920
|
};
|
|
7864
7921
|
var SubTitle_default = SubTitle;
|
|
7865
7922
|
|