catchup-library-web 1.1.9 → 1.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +126 -51
- package/dist/index.mjs +126 -51
- package/package.json +1 -1
- package/src/components/activities/ActivityPreviewByData.tsx +10 -0
- package/src/components/activities/OpenEndedActivityContent.tsx +4 -4
- package/src/components/activities/evaluation-rubric-content/ActivityEvaluationRubricContent.tsx +88 -0
- package/src/properties/ActivityProperties.ts +6 -0
package/dist/index.d.mts
CHANGED
|
@@ -157,6 +157,7 @@ interface IActivityPreviewByDataProps {
|
|
|
157
157
|
typeOptionList: any[];
|
|
158
158
|
showTaxonomy: boolean;
|
|
159
159
|
showSolution: boolean;
|
|
160
|
+
showEvaluationRubric: boolean;
|
|
160
161
|
isFullScreen: boolean;
|
|
161
162
|
}
|
|
162
163
|
|
|
@@ -180,7 +181,7 @@ declare const TrueFalseActivityContent: ({ answer, data, canAnswerQuestion, chan
|
|
|
180
181
|
|
|
181
182
|
declare const ActivitySolutionContent: ({ activityTemplateType, data, }: IActivitySolutionProps) => react_jsx_runtime.JSX.Element | undefined;
|
|
182
183
|
|
|
183
|
-
declare const ActivityPreviewByData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showTaxonomy, isFullScreen, }: IActivityPreviewByDataProps) => react_jsx_runtime.JSX.Element | undefined;
|
|
184
|
+
declare const ActivityPreviewByData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showEvaluationRubric, showTaxonomy, isFullScreen, }: IActivityPreviewByDataProps) => react_jsx_runtime.JSX.Element | undefined;
|
|
184
185
|
|
|
185
186
|
interface IDividerLineProps {
|
|
186
187
|
opacity: string;
|
package/dist/index.d.ts
CHANGED
|
@@ -157,6 +157,7 @@ interface IActivityPreviewByDataProps {
|
|
|
157
157
|
typeOptionList: any[];
|
|
158
158
|
showTaxonomy: boolean;
|
|
159
159
|
showSolution: boolean;
|
|
160
|
+
showEvaluationRubric: boolean;
|
|
160
161
|
isFullScreen: boolean;
|
|
161
162
|
}
|
|
162
163
|
|
|
@@ -180,7 +181,7 @@ declare const TrueFalseActivityContent: ({ answer, data, canAnswerQuestion, chan
|
|
|
180
181
|
|
|
181
182
|
declare const ActivitySolutionContent: ({ activityTemplateType, data, }: IActivitySolutionProps) => react_jsx_runtime.JSX.Element | undefined;
|
|
182
183
|
|
|
183
|
-
declare const ActivityPreviewByData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showTaxonomy, isFullScreen, }: IActivityPreviewByDataProps) => react_jsx_runtime.JSX.Element | undefined;
|
|
184
|
+
declare const ActivityPreviewByData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showEvaluationRubric, showTaxonomy, isFullScreen, }: IActivityPreviewByDataProps) => react_jsx_runtime.JSX.Element | undefined;
|
|
184
185
|
|
|
185
186
|
interface IDividerLineProps {
|
|
186
187
|
opacity: string;
|
package/dist/index.js
CHANGED
|
@@ -5313,7 +5313,7 @@ var OpenEndedActivityContent = ({
|
|
|
5313
5313
|
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
5314
5314
|
"div",
|
|
5315
5315
|
{
|
|
5316
|
-
className: `${showMaterialContent ?
|
|
5316
|
+
className: `${showMaterialContent ? isFullScreen ? "w-full" : "w-full md:w-[40%]" : "w-full"}`,
|
|
5317
5317
|
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
5318
5318
|
ActivityBodyContent_default,
|
|
5319
5319
|
{
|
|
@@ -5935,8 +5935,75 @@ var SelectionBox = ({
|
|
|
5935
5935
|
};
|
|
5936
5936
|
var SelectionBox_default = SelectionBox;
|
|
5937
5937
|
|
|
5938
|
-
// src/components/activities/
|
|
5938
|
+
// src/components/activities/evaluation-rubric-content/ActivityEvaluationRubricContent.tsx
|
|
5939
|
+
var import_react_katex11 = require("react-katex");
|
|
5939
5940
|
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
5941
|
+
var ActivityEvaluationRubricContent = ({
|
|
5942
|
+
activityTemplateType,
|
|
5943
|
+
data
|
|
5944
|
+
}) => {
|
|
5945
|
+
if (!activityTemplateType) return;
|
|
5946
|
+
let evaluationRubricMapString = "";
|
|
5947
|
+
if (activityTemplateType === "ORDERING") {
|
|
5948
|
+
if (data["orderingEvaluationRubricMap"])
|
|
5949
|
+
evaluationRubricMapString = data["orderingEvaluationRubricMap"];
|
|
5950
|
+
} else if (activityTemplateType === "DROPDOWN") {
|
|
5951
|
+
if (data["dropdownEvaluationRubricMap"])
|
|
5952
|
+
evaluationRubricMapString = data["dropdownEvaluationRubricMap"];
|
|
5953
|
+
} else if (activityTemplateType === "MCSA") {
|
|
5954
|
+
if (data["MCSAEvaluationRubricMap"])
|
|
5955
|
+
evaluationRubricMapString = data["MCSAEvaluationRubricMap"];
|
|
5956
|
+
} else if (activityTemplateType === "MCMA") {
|
|
5957
|
+
if (data["MCMAEvaluationRubricMap"])
|
|
5958
|
+
evaluationRubricMapString = data["MCMAEvaluationRubricMap"];
|
|
5959
|
+
} else if (activityTemplateType === "MATCHING") {
|
|
5960
|
+
if (data["matchingEvaluationRubricMap"])
|
|
5961
|
+
evaluationRubricMapString = data["matchingEvaluationRubricMap"];
|
|
5962
|
+
} else if (activityTemplateType === "GROUPING") {
|
|
5963
|
+
if (data["groupingEvaluationRubricMap"])
|
|
5964
|
+
evaluationRubricMapString = data["groupingEvaluationRubricMap"];
|
|
5965
|
+
} else if (activityTemplateType === "FILL_IN_THE_BLANKS") {
|
|
5966
|
+
if (data["fillInTheBlanksEvaluationRubricMap"])
|
|
5967
|
+
evaluationRubricMapString = data["fillInTheBlanksEvaluationRubricMap"];
|
|
5968
|
+
} else if (activityTemplateType === "OPEN_ENDED") {
|
|
5969
|
+
if (data["openEndedEvaluationRubricMap"])
|
|
5970
|
+
evaluationRubricMapString = data["openEndedEvaluationRubricMap"];
|
|
5971
|
+
} else if (activityTemplateType === "TRUE_FALSE") {
|
|
5972
|
+
if (data["trueFalseEvaluationRubricMap"])
|
|
5973
|
+
evaluationRubricMapString = data["trueFalseEvaluationRubricMap"];
|
|
5974
|
+
}
|
|
5975
|
+
const evaluationRubricMap = JSON.parse(evaluationRubricMapString);
|
|
5976
|
+
if (!evaluationRubricMap) return;
|
|
5977
|
+
if (Object.keys(evaluationRubricMap).length === 0) return;
|
|
5978
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "mx-2", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
|
|
5979
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
|
|
5980
|
+
Object.keys(evaluationRubricMap).map((key, index) => {
|
|
5981
|
+
const currentItem = JSON.parse(evaluationRubricMap[key]);
|
|
5982
|
+
const { value } = currentItem;
|
|
5983
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: "my-3", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
5984
|
+
"span",
|
|
5985
|
+
{
|
|
5986
|
+
className: "text-xl whitespace-pre-wrap",
|
|
5987
|
+
children: constructInputWithSpecialExpressionList(value).map(
|
|
5988
|
+
(inputPart, index2) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
5989
|
+
"span",
|
|
5990
|
+
{
|
|
5991
|
+
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5992
|
+
children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_react_katex11.InlineMath, { math: inputPart.value }) }) : inputPart.value
|
|
5993
|
+
},
|
|
5994
|
+
index2
|
|
5995
|
+
)
|
|
5996
|
+
)
|
|
5997
|
+
},
|
|
5998
|
+
`${key}_${index}`
|
|
5999
|
+
) });
|
|
6000
|
+
})
|
|
6001
|
+
] }) });
|
|
6002
|
+
};
|
|
6003
|
+
var ActivityEvaluationRubricContent_default = ActivityEvaluationRubricContent;
|
|
6004
|
+
|
|
6005
|
+
// src/components/activities/ActivityPreviewByData.tsx
|
|
6006
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
5940
6007
|
var ActivityPreviewByData = ({
|
|
5941
6008
|
data,
|
|
5942
6009
|
showType,
|
|
@@ -5944,6 +6011,7 @@ var ActivityPreviewByData = ({
|
|
|
5944
6011
|
lockedType,
|
|
5945
6012
|
typeOptionList,
|
|
5946
6013
|
showSolution,
|
|
6014
|
+
showEvaluationRubric,
|
|
5947
6015
|
showTaxonomy,
|
|
5948
6016
|
isFullScreen
|
|
5949
6017
|
}) => {
|
|
@@ -6018,10 +6086,10 @@ var ActivityPreviewByData = ({
|
|
|
6018
6086
|
}, [data, lockedType, typeOptionList, showTaxonomy]);
|
|
6019
6087
|
if (!data) return;
|
|
6020
6088
|
const answer = constructAnswerBasedOnData(data);
|
|
6021
|
-
return /* @__PURE__ */ (0,
|
|
6022
|
-
showType ? /* @__PURE__ */ (0,
|
|
6023
|
-
showDescription ? /* @__PURE__ */ (0,
|
|
6024
|
-
/* @__PURE__ */ (0,
|
|
6089
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { children: [
|
|
6090
|
+
showType ? /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "mb-4", children: [
|
|
6091
|
+
showDescription ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
|
|
6092
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6025
6093
|
SelectionBox_default,
|
|
6026
6094
|
{
|
|
6027
6095
|
optionList,
|
|
@@ -6032,7 +6100,7 @@ var ActivityPreviewByData = ({
|
|
|
6032
6100
|
}
|
|
6033
6101
|
)
|
|
6034
6102
|
] }) : null,
|
|
6035
|
-
selectedType ? /* @__PURE__ */ (0,
|
|
6103
|
+
selectedType ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "", children: selectedType === "ORDERING" && data["orderingBodyMap"] != null && data["orderingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6036
6104
|
OrderingActivityContent_default,
|
|
6037
6105
|
{
|
|
6038
6106
|
answer,
|
|
@@ -6046,7 +6114,7 @@ var ActivityPreviewByData = ({
|
|
|
6046
6114
|
showCorrectAnswer: true,
|
|
6047
6115
|
isFullScreen
|
|
6048
6116
|
}
|
|
6049
|
-
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
6117
|
+
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6050
6118
|
DropdownActivityContent_default,
|
|
6051
6119
|
{
|
|
6052
6120
|
answer,
|
|
@@ -6060,7 +6128,7 @@ var ActivityPreviewByData = ({
|
|
|
6060
6128
|
showCorrectAnswer: true,
|
|
6061
6129
|
isFullScreen
|
|
6062
6130
|
}
|
|
6063
|
-
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
6131
|
+
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6064
6132
|
MCSAActivityContent_default,
|
|
6065
6133
|
{
|
|
6066
6134
|
answer,
|
|
@@ -6074,7 +6142,7 @@ var ActivityPreviewByData = ({
|
|
|
6074
6142
|
showCorrectAnswer: true,
|
|
6075
6143
|
isFullScreen
|
|
6076
6144
|
}
|
|
6077
|
-
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
6145
|
+
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6078
6146
|
MCMAActivityContent_default,
|
|
6079
6147
|
{
|
|
6080
6148
|
answer,
|
|
@@ -6088,7 +6156,7 @@ var ActivityPreviewByData = ({
|
|
|
6088
6156
|
showCorrectAnswer: true,
|
|
6089
6157
|
isFullScreen
|
|
6090
6158
|
}
|
|
6091
|
-
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
6159
|
+
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6092
6160
|
MatchingActivityContent_default,
|
|
6093
6161
|
{
|
|
6094
6162
|
answer,
|
|
@@ -6102,7 +6170,7 @@ var ActivityPreviewByData = ({
|
|
|
6102
6170
|
showCorrectAnswer: true,
|
|
6103
6171
|
isFullScreen
|
|
6104
6172
|
}
|
|
6105
|
-
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
6173
|
+
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6106
6174
|
GroupingActivityContent_default,
|
|
6107
6175
|
{
|
|
6108
6176
|
answer,
|
|
@@ -6116,7 +6184,7 @@ var ActivityPreviewByData = ({
|
|
|
6116
6184
|
showCorrectAnswer: true,
|
|
6117
6185
|
isFullScreen
|
|
6118
6186
|
}
|
|
6119
|
-
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
6187
|
+
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6120
6188
|
FillInTheBlanksActivityContent_default,
|
|
6121
6189
|
{
|
|
6122
6190
|
answer,
|
|
@@ -6130,7 +6198,7 @@ var ActivityPreviewByData = ({
|
|
|
6130
6198
|
showCorrectAnswer: true,
|
|
6131
6199
|
isFullScreen
|
|
6132
6200
|
}
|
|
6133
|
-
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ (0,
|
|
6201
|
+
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6134
6202
|
OpenEndedActivityContent_default,
|
|
6135
6203
|
{
|
|
6136
6204
|
answer,
|
|
@@ -6140,7 +6208,7 @@ var ActivityPreviewByData = ({
|
|
|
6140
6208
|
data,
|
|
6141
6209
|
isFullScreen
|
|
6142
6210
|
}
|
|
6143
|
-
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ (0,
|
|
6211
|
+
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6144
6212
|
TrueFalseActivityContent_default,
|
|
6145
6213
|
{
|
|
6146
6214
|
answer,
|
|
@@ -6155,21 +6223,28 @@ var ActivityPreviewByData = ({
|
|
|
6155
6223
|
isFullScreen
|
|
6156
6224
|
}
|
|
6157
6225
|
) : null }, selectedType) : null,
|
|
6158
|
-
selectedType && showSolution ? /* @__PURE__ */ (0,
|
|
6226
|
+
selectedType && showSolution ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6159
6227
|
ActivitySolutionContent_default,
|
|
6160
6228
|
{
|
|
6161
6229
|
activityTemplateType: selectedType,
|
|
6162
6230
|
data
|
|
6163
6231
|
}
|
|
6232
|
+
) }) : null,
|
|
6233
|
+
selectedType && showEvaluationRubric ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
6234
|
+
ActivityEvaluationRubricContent_default,
|
|
6235
|
+
{
|
|
6236
|
+
activityTemplateType: selectedType,
|
|
6237
|
+
data
|
|
6238
|
+
}
|
|
6164
6239
|
) }) : null
|
|
6165
6240
|
] }, key);
|
|
6166
6241
|
};
|
|
6167
6242
|
var ActivityPreviewByData_default = ActivityPreviewByData;
|
|
6168
6243
|
|
|
6169
6244
|
// src/components/dividers/BlueVerticalDividerLine.tsx
|
|
6170
|
-
var
|
|
6245
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
6171
6246
|
var BlueVerticalDividerLine = ({ opacity }) => {
|
|
6172
|
-
return /* @__PURE__ */ (0,
|
|
6247
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
6173
6248
|
"div",
|
|
6174
6249
|
{
|
|
6175
6250
|
className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
|
|
@@ -6179,14 +6254,14 @@ var BlueVerticalDividerLine = ({ opacity }) => {
|
|
|
6179
6254
|
var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
|
|
6180
6255
|
|
|
6181
6256
|
// src/components/boxes/SelectionCheckbox.tsx
|
|
6182
|
-
var
|
|
6257
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
6183
6258
|
var SelectionCheckbox = ({
|
|
6184
6259
|
optionList,
|
|
6185
6260
|
selectedIdList,
|
|
6186
6261
|
handleSelectOnClick,
|
|
6187
6262
|
handleRemoveOnClick
|
|
6188
6263
|
}) => {
|
|
6189
|
-
return /* @__PURE__ */ (0,
|
|
6264
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.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_runtime44.jsx)(
|
|
6190
6265
|
"div",
|
|
6191
6266
|
{
|
|
6192
6267
|
className: `${selectedIdList.findIndex(
|
|
@@ -6201,14 +6276,14 @@ var SelectionCheckbox = ({
|
|
|
6201
6276
|
handleRemoveOnClick(option.id);
|
|
6202
6277
|
}
|
|
6203
6278
|
},
|
|
6204
|
-
children: /* @__PURE__ */ (0,
|
|
6279
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
|
|
6205
6280
|
"div",
|
|
6206
6281
|
{
|
|
6207
6282
|
className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
|
|
6208
6283
|
(selectedId) => selectedId === option.id
|
|
6209
6284
|
) > -1 ? "opacity-100" : "opacity-50"}`,
|
|
6210
6285
|
children: [
|
|
6211
|
-
/* @__PURE__ */ (0,
|
|
6286
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6212
6287
|
BaseImage_default,
|
|
6213
6288
|
{
|
|
6214
6289
|
src: selectedIdList.findIndex(
|
|
@@ -6218,7 +6293,7 @@ var SelectionCheckbox = ({
|
|
|
6218
6293
|
size: "small"
|
|
6219
6294
|
}
|
|
6220
6295
|
) }),
|
|
6221
|
-
/* @__PURE__ */ (0,
|
|
6296
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { children: option.text }) })
|
|
6222
6297
|
]
|
|
6223
6298
|
}
|
|
6224
6299
|
)
|
|
@@ -6229,7 +6304,7 @@ var SelectionCheckbox = ({
|
|
|
6229
6304
|
var SelectionCheckbox_default = SelectionCheckbox;
|
|
6230
6305
|
|
|
6231
6306
|
// src/components/tabs/SelectionTab.tsx
|
|
6232
|
-
var
|
|
6307
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
6233
6308
|
var SelectionTab = ({
|
|
6234
6309
|
optionList,
|
|
6235
6310
|
selectedId,
|
|
@@ -6239,7 +6314,7 @@ var SelectionTab = ({
|
|
|
6239
6314
|
textColor,
|
|
6240
6315
|
borderColor
|
|
6241
6316
|
}) => {
|
|
6242
|
-
return /* @__PURE__ */ (0,
|
|
6317
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.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_runtime45.jsxs)(
|
|
6243
6318
|
"div",
|
|
6244
6319
|
{
|
|
6245
6320
|
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`,
|
|
@@ -6247,8 +6322,8 @@ var SelectionTab = ({
|
|
|
6247
6322
|
handleSelectOnClick(option.id);
|
|
6248
6323
|
},
|
|
6249
6324
|
children: [
|
|
6250
|
-
/* @__PURE__ */ (0,
|
|
6251
|
-
option.subTitle ? /* @__PURE__ */ (0,
|
|
6325
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { className: "text-lg", children: option.title }),
|
|
6326
|
+
option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { className: "text-md", children: option.subTitle }) : null
|
|
6252
6327
|
]
|
|
6253
6328
|
},
|
|
6254
6329
|
index
|
|
@@ -6257,57 +6332,57 @@ var SelectionTab = ({
|
|
|
6257
6332
|
var SelectionTab_default = SelectionTab;
|
|
6258
6333
|
|
|
6259
6334
|
// src/components/labels/ActivityTemplateLabel.tsx
|
|
6260
|
-
var
|
|
6335
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
6261
6336
|
var ActivityTemplateLabel = ({
|
|
6262
6337
|
title,
|
|
6263
6338
|
font
|
|
6264
6339
|
}) => {
|
|
6265
|
-
return /* @__PURE__ */ (0,
|
|
6266
|
-
/* @__PURE__ */ (0,
|
|
6267
|
-
/* @__PURE__ */ (0,
|
|
6340
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6341
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(BaseImage_default, { src: "/icons/activity.png", alt: "label", size: "xsmall" }),
|
|
6342
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
6268
6343
|
] }) });
|
|
6269
6344
|
};
|
|
6270
6345
|
var ActivityTemplateLabel_default = ActivityTemplateLabel;
|
|
6271
6346
|
|
|
6272
6347
|
// src/components/labels/BrandLabel.tsx
|
|
6273
|
-
var
|
|
6348
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
6274
6349
|
var BrandLabel = ({ title, icon, font }) => {
|
|
6275
|
-
return /* @__PURE__ */ (0,
|
|
6276
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
6277
|
-
/* @__PURE__ */ (0,
|
|
6350
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6351
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(BaseImage_default, { src: "/icons/brand-label.png", alt: "label", size: "xsmall" }),
|
|
6352
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
6278
6353
|
] }) });
|
|
6279
6354
|
};
|
|
6280
6355
|
var BrandLabel_default = BrandLabel;
|
|
6281
6356
|
|
|
6282
6357
|
// src/components/labels/CoterieLabel.tsx
|
|
6283
|
-
var
|
|
6358
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
6284
6359
|
var CoterieLabel = ({ title, font }) => {
|
|
6285
|
-
return /* @__PURE__ */ (0,
|
|
6360
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: font ? font : "text-sm", children: title }) });
|
|
6286
6361
|
};
|
|
6287
6362
|
var CoterieLabel_default = CoterieLabel;
|
|
6288
6363
|
|
|
6289
6364
|
// src/components/labels/GradeLabel.tsx
|
|
6290
|
-
var
|
|
6365
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
6291
6366
|
var GradeLabel = ({ title, font }) => {
|
|
6292
|
-
return /* @__PURE__ */ (0,
|
|
6367
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: font ? font : "text-sm", children: title }) });
|
|
6293
6368
|
};
|
|
6294
6369
|
var GradeLabel_default = GradeLabel;
|
|
6295
6370
|
|
|
6296
6371
|
// src/components/labels/OutcomeLabel.tsx
|
|
6297
|
-
var
|
|
6372
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
6298
6373
|
var OutcomeLabel = ({ title, font }) => {
|
|
6299
|
-
return /* @__PURE__ */ (0,
|
|
6300
|
-
/* @__PURE__ */ (0,
|
|
6301
|
-
/* @__PURE__ */ (0,
|
|
6374
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6375
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(BaseImage_default, { src: "/icons/category.png", alt: "label", size: "xsmall" }),
|
|
6376
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
6302
6377
|
] }) });
|
|
6303
6378
|
};
|
|
6304
6379
|
var OutcomeLabel_default = OutcomeLabel;
|
|
6305
6380
|
|
|
6306
6381
|
// src/components/labels/PersonalLabel.tsx
|
|
6307
|
-
var
|
|
6382
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
6308
6383
|
var PersonalLabel = ({ title, icon, font }) => {
|
|
6309
|
-
return /* @__PURE__ */ (0,
|
|
6310
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
6384
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-personal-label-border bg-personal-label text-personal-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6385
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
6311
6386
|
BaseImage_default,
|
|
6312
6387
|
{
|
|
6313
6388
|
src: "/icons/personal-label.png",
|
|
@@ -6315,16 +6390,16 @@ var PersonalLabel = ({ title, icon, font }) => {
|
|
|
6315
6390
|
size: "xsmall"
|
|
6316
6391
|
}
|
|
6317
6392
|
),
|
|
6318
|
-
/* @__PURE__ */ (0,
|
|
6393
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
6319
6394
|
] }) });
|
|
6320
6395
|
};
|
|
6321
6396
|
var PersonalLabel_default = PersonalLabel;
|
|
6322
6397
|
|
|
6323
6398
|
// src/components/labels/PublishingHouseLabel.tsx
|
|
6324
|
-
var
|
|
6399
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
6325
6400
|
var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
6326
|
-
return /* @__PURE__ */ (0,
|
|
6327
|
-
icon ? icon : /* @__PURE__ */ (0,
|
|
6401
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6402
|
+
icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
6328
6403
|
BaseImage_default,
|
|
6329
6404
|
{
|
|
6330
6405
|
src: "/icons/publishing-house-label.png",
|
|
@@ -6332,7 +6407,7 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
|
6332
6407
|
size: "xsmall"
|
|
6333
6408
|
}
|
|
6334
6409
|
),
|
|
6335
|
-
/* @__PURE__ */ (0,
|
|
6410
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)("p", { className: font ? font : "text-sm", children: title })
|
|
6336
6411
|
] }) });
|
|
6337
6412
|
};
|
|
6338
6413
|
var PublishingHouseLabel_default = PublishingHouseLabel;
|
package/dist/index.mjs
CHANGED
|
@@ -5139,7 +5139,7 @@ var OpenEndedActivityContent = ({
|
|
|
5139
5139
|
/* @__PURE__ */ jsx33(
|
|
5140
5140
|
"div",
|
|
5141
5141
|
{
|
|
5142
|
-
className: `${showMaterialContent ?
|
|
5142
|
+
className: `${showMaterialContent ? isFullScreen ? "w-full" : "w-full md:w-[40%]" : "w-full"}`,
|
|
5143
5143
|
children: /* @__PURE__ */ jsx33(
|
|
5144
5144
|
ActivityBodyContent_default,
|
|
5145
5145
|
{
|
|
@@ -5761,8 +5761,75 @@ var SelectionBox = ({
|
|
|
5761
5761
|
};
|
|
5762
5762
|
var SelectionBox_default = SelectionBox;
|
|
5763
5763
|
|
|
5764
|
-
// src/components/activities/
|
|
5764
|
+
// src/components/activities/evaluation-rubric-content/ActivityEvaluationRubricContent.tsx
|
|
5765
|
+
import { InlineMath as InlineMath11 } from "react-katex";
|
|
5765
5766
|
import { jsx as jsx41, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
5767
|
+
var ActivityEvaluationRubricContent = ({
|
|
5768
|
+
activityTemplateType,
|
|
5769
|
+
data
|
|
5770
|
+
}) => {
|
|
5771
|
+
if (!activityTemplateType) return;
|
|
5772
|
+
let evaluationRubricMapString = "";
|
|
5773
|
+
if (activityTemplateType === "ORDERING") {
|
|
5774
|
+
if (data["orderingEvaluationRubricMap"])
|
|
5775
|
+
evaluationRubricMapString = data["orderingEvaluationRubricMap"];
|
|
5776
|
+
} else if (activityTemplateType === "DROPDOWN") {
|
|
5777
|
+
if (data["dropdownEvaluationRubricMap"])
|
|
5778
|
+
evaluationRubricMapString = data["dropdownEvaluationRubricMap"];
|
|
5779
|
+
} else if (activityTemplateType === "MCSA") {
|
|
5780
|
+
if (data["MCSAEvaluationRubricMap"])
|
|
5781
|
+
evaluationRubricMapString = data["MCSAEvaluationRubricMap"];
|
|
5782
|
+
} else if (activityTemplateType === "MCMA") {
|
|
5783
|
+
if (data["MCMAEvaluationRubricMap"])
|
|
5784
|
+
evaluationRubricMapString = data["MCMAEvaluationRubricMap"];
|
|
5785
|
+
} else if (activityTemplateType === "MATCHING") {
|
|
5786
|
+
if (data["matchingEvaluationRubricMap"])
|
|
5787
|
+
evaluationRubricMapString = data["matchingEvaluationRubricMap"];
|
|
5788
|
+
} else if (activityTemplateType === "GROUPING") {
|
|
5789
|
+
if (data["groupingEvaluationRubricMap"])
|
|
5790
|
+
evaluationRubricMapString = data["groupingEvaluationRubricMap"];
|
|
5791
|
+
} else if (activityTemplateType === "FILL_IN_THE_BLANKS") {
|
|
5792
|
+
if (data["fillInTheBlanksEvaluationRubricMap"])
|
|
5793
|
+
evaluationRubricMapString = data["fillInTheBlanksEvaluationRubricMap"];
|
|
5794
|
+
} else if (activityTemplateType === "OPEN_ENDED") {
|
|
5795
|
+
if (data["openEndedEvaluationRubricMap"])
|
|
5796
|
+
evaluationRubricMapString = data["openEndedEvaluationRubricMap"];
|
|
5797
|
+
} else if (activityTemplateType === "TRUE_FALSE") {
|
|
5798
|
+
if (data["trueFalseEvaluationRubricMap"])
|
|
5799
|
+
evaluationRubricMapString = data["trueFalseEvaluationRubricMap"];
|
|
5800
|
+
}
|
|
5801
|
+
const evaluationRubricMap = JSON.parse(evaluationRubricMapString);
|
|
5802
|
+
if (!evaluationRubricMap) return;
|
|
5803
|
+
if (Object.keys(evaluationRubricMap).length === 0) return;
|
|
5804
|
+
return /* @__PURE__ */ jsx41("div", { className: "mx-2", children: /* @__PURE__ */ jsxs32("div", { className: "p-4 border-catchup-blue border-2 rounded-catchup-xlarge", children: [
|
|
5805
|
+
/* @__PURE__ */ jsx41("p", { className: "text-xl font-bold text-center mb-3", children: i18n_default.t("evaluation_rubric") }),
|
|
5806
|
+
Object.keys(evaluationRubricMap).map((key, index) => {
|
|
5807
|
+
const currentItem = JSON.parse(evaluationRubricMap[key]);
|
|
5808
|
+
const { value } = currentItem;
|
|
5809
|
+
return /* @__PURE__ */ jsx41("p", { className: "my-3", children: /* @__PURE__ */ jsx41(
|
|
5810
|
+
"span",
|
|
5811
|
+
{
|
|
5812
|
+
className: "text-xl whitespace-pre-wrap",
|
|
5813
|
+
children: constructInputWithSpecialExpressionList(value).map(
|
|
5814
|
+
(inputPart, index2) => /* @__PURE__ */ jsx41(
|
|
5815
|
+
"span",
|
|
5816
|
+
{
|
|
5817
|
+
className: `${inputPart.isBold ? "font-bold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
|
|
5818
|
+
children: inputPart.isEquation ? /* @__PURE__ */ jsx41("span", { className: "text-2xl", children: /* @__PURE__ */ jsx41(InlineMath11, { math: inputPart.value }) }) : inputPart.value
|
|
5819
|
+
},
|
|
5820
|
+
index2
|
|
5821
|
+
)
|
|
5822
|
+
)
|
|
5823
|
+
},
|
|
5824
|
+
`${key}_${index}`
|
|
5825
|
+
) });
|
|
5826
|
+
})
|
|
5827
|
+
] }) });
|
|
5828
|
+
};
|
|
5829
|
+
var ActivityEvaluationRubricContent_default = ActivityEvaluationRubricContent;
|
|
5830
|
+
|
|
5831
|
+
// src/components/activities/ActivityPreviewByData.tsx
|
|
5832
|
+
import { jsx as jsx42, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
5766
5833
|
var ActivityPreviewByData = ({
|
|
5767
5834
|
data,
|
|
5768
5835
|
showType,
|
|
@@ -5770,6 +5837,7 @@ var ActivityPreviewByData = ({
|
|
|
5770
5837
|
lockedType,
|
|
5771
5838
|
typeOptionList,
|
|
5772
5839
|
showSolution,
|
|
5840
|
+
showEvaluationRubric,
|
|
5773
5841
|
showTaxonomy,
|
|
5774
5842
|
isFullScreen
|
|
5775
5843
|
}) => {
|
|
@@ -5844,10 +5912,10 @@ var ActivityPreviewByData = ({
|
|
|
5844
5912
|
}, [data, lockedType, typeOptionList, showTaxonomy]);
|
|
5845
5913
|
if (!data) return;
|
|
5846
5914
|
const answer = constructAnswerBasedOnData(data);
|
|
5847
|
-
return /* @__PURE__ */
|
|
5848
|
-
showType ? /* @__PURE__ */
|
|
5849
|
-
showDescription ? /* @__PURE__ */
|
|
5850
|
-
/* @__PURE__ */
|
|
5915
|
+
return /* @__PURE__ */ jsxs33("div", { children: [
|
|
5916
|
+
showType ? /* @__PURE__ */ jsxs33("div", { className: "mb-4", children: [
|
|
5917
|
+
showDescription ? /* @__PURE__ */ jsx42("div", { className: "my-2", children: /* @__PURE__ */ jsx42("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
|
|
5918
|
+
/* @__PURE__ */ jsx42(
|
|
5851
5919
|
SelectionBox_default,
|
|
5852
5920
|
{
|
|
5853
5921
|
optionList,
|
|
@@ -5858,7 +5926,7 @@ var ActivityPreviewByData = ({
|
|
|
5858
5926
|
}
|
|
5859
5927
|
)
|
|
5860
5928
|
] }) : null,
|
|
5861
|
-
selectedType ? /* @__PURE__ */
|
|
5929
|
+
selectedType ? /* @__PURE__ */ jsx42("div", { className: "", children: selectedType === "ORDERING" && data["orderingBodyMap"] != null && data["orderingMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5862
5930
|
OrderingActivityContent_default,
|
|
5863
5931
|
{
|
|
5864
5932
|
answer,
|
|
@@ -5872,7 +5940,7 @@ var ActivityPreviewByData = ({
|
|
|
5872
5940
|
showCorrectAnswer: true,
|
|
5873
5941
|
isFullScreen
|
|
5874
5942
|
}
|
|
5875
|
-
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */
|
|
5943
|
+
) : selectedType === "DROPDOWN" && data["dropdownBodyMap"] != null && data["dropdownMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5876
5944
|
DropdownActivityContent_default,
|
|
5877
5945
|
{
|
|
5878
5946
|
answer,
|
|
@@ -5886,7 +5954,7 @@ var ActivityPreviewByData = ({
|
|
|
5886
5954
|
showCorrectAnswer: true,
|
|
5887
5955
|
isFullScreen
|
|
5888
5956
|
}
|
|
5889
|
-
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */
|
|
5957
|
+
) : selectedType === "MCSA" && data["MCSABodyMap"] != null && data["MCSAMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5890
5958
|
MCSAActivityContent_default,
|
|
5891
5959
|
{
|
|
5892
5960
|
answer,
|
|
@@ -5900,7 +5968,7 @@ var ActivityPreviewByData = ({
|
|
|
5900
5968
|
showCorrectAnswer: true,
|
|
5901
5969
|
isFullScreen
|
|
5902
5970
|
}
|
|
5903
|
-
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */
|
|
5971
|
+
) : selectedType === "MCMA" && data["MCMABodyMap"] != null && data["MCMAMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5904
5972
|
MCMAActivityContent_default,
|
|
5905
5973
|
{
|
|
5906
5974
|
answer,
|
|
@@ -5914,7 +5982,7 @@ var ActivityPreviewByData = ({
|
|
|
5914
5982
|
showCorrectAnswer: true,
|
|
5915
5983
|
isFullScreen
|
|
5916
5984
|
}
|
|
5917
|
-
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */
|
|
5985
|
+
) : selectedType === "MATCHING" && data["matchingBodyMap"] != null && data["matchingMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5918
5986
|
MatchingActivityContent_default,
|
|
5919
5987
|
{
|
|
5920
5988
|
answer,
|
|
@@ -5928,7 +5996,7 @@ var ActivityPreviewByData = ({
|
|
|
5928
5996
|
showCorrectAnswer: true,
|
|
5929
5997
|
isFullScreen
|
|
5930
5998
|
}
|
|
5931
|
-
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */
|
|
5999
|
+
) : selectedType === "GROUPING" && data["groupingBodyMap"] != null && data["groupingMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5932
6000
|
GroupingActivityContent_default,
|
|
5933
6001
|
{
|
|
5934
6002
|
answer,
|
|
@@ -5942,7 +6010,7 @@ var ActivityPreviewByData = ({
|
|
|
5942
6010
|
showCorrectAnswer: true,
|
|
5943
6011
|
isFullScreen
|
|
5944
6012
|
}
|
|
5945
|
-
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */
|
|
6013
|
+
) : selectedType === "FILL_IN_THE_BLANKS" && data["fillInTheBlanksBodyMap"] != null && data["fillInTheBlanksMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5946
6014
|
FillInTheBlanksActivityContent_default,
|
|
5947
6015
|
{
|
|
5948
6016
|
answer,
|
|
@@ -5956,7 +6024,7 @@ var ActivityPreviewByData = ({
|
|
|
5956
6024
|
showCorrectAnswer: true,
|
|
5957
6025
|
isFullScreen
|
|
5958
6026
|
}
|
|
5959
|
-
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */
|
|
6027
|
+
) : selectedType === "OPEN_ENDED" && data["openEndedBodyMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5960
6028
|
OpenEndedActivityContent_default,
|
|
5961
6029
|
{
|
|
5962
6030
|
answer,
|
|
@@ -5966,7 +6034,7 @@ var ActivityPreviewByData = ({
|
|
|
5966
6034
|
data,
|
|
5967
6035
|
isFullScreen
|
|
5968
6036
|
}
|
|
5969
|
-
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */
|
|
6037
|
+
) : selectedType === "TRUE_FALSE" && data["trueFalseBodyMap"] != null && data["trueFalseMaterialMap"] != null ? /* @__PURE__ */ jsx42(
|
|
5970
6038
|
TrueFalseActivityContent_default,
|
|
5971
6039
|
{
|
|
5972
6040
|
answer,
|
|
@@ -5981,21 +6049,28 @@ var ActivityPreviewByData = ({
|
|
|
5981
6049
|
isFullScreen
|
|
5982
6050
|
}
|
|
5983
6051
|
) : null }, selectedType) : null,
|
|
5984
|
-
selectedType && showSolution ? /* @__PURE__ */
|
|
6052
|
+
selectedType && showSolution ? /* @__PURE__ */ jsx42("div", { className: "my-4", children: /* @__PURE__ */ jsx42(
|
|
5985
6053
|
ActivitySolutionContent_default,
|
|
5986
6054
|
{
|
|
5987
6055
|
activityTemplateType: selectedType,
|
|
5988
6056
|
data
|
|
5989
6057
|
}
|
|
6058
|
+
) }) : null,
|
|
6059
|
+
selectedType && showEvaluationRubric ? /* @__PURE__ */ jsx42("div", { children: /* @__PURE__ */ jsx42(
|
|
6060
|
+
ActivityEvaluationRubricContent_default,
|
|
6061
|
+
{
|
|
6062
|
+
activityTemplateType: selectedType,
|
|
6063
|
+
data
|
|
6064
|
+
}
|
|
5990
6065
|
) }) : null
|
|
5991
6066
|
] }, key);
|
|
5992
6067
|
};
|
|
5993
6068
|
var ActivityPreviewByData_default = ActivityPreviewByData;
|
|
5994
6069
|
|
|
5995
6070
|
// src/components/dividers/BlueVerticalDividerLine.tsx
|
|
5996
|
-
import { jsx as
|
|
6071
|
+
import { jsx as jsx43 } from "react/jsx-runtime";
|
|
5997
6072
|
var BlueVerticalDividerLine = ({ opacity }) => {
|
|
5998
|
-
return /* @__PURE__ */
|
|
6073
|
+
return /* @__PURE__ */ jsx43(
|
|
5999
6074
|
"div",
|
|
6000
6075
|
{
|
|
6001
6076
|
className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
|
|
@@ -6005,14 +6080,14 @@ var BlueVerticalDividerLine = ({ opacity }) => {
|
|
|
6005
6080
|
var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
|
|
6006
6081
|
|
|
6007
6082
|
// src/components/boxes/SelectionCheckbox.tsx
|
|
6008
|
-
import { jsx as
|
|
6083
|
+
import { jsx as jsx44, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
6009
6084
|
var SelectionCheckbox = ({
|
|
6010
6085
|
optionList,
|
|
6011
6086
|
selectedIdList,
|
|
6012
6087
|
handleSelectOnClick,
|
|
6013
6088
|
handleRemoveOnClick
|
|
6014
6089
|
}) => {
|
|
6015
|
-
return /* @__PURE__ */
|
|
6090
|
+
return /* @__PURE__ */ jsx44("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx44(
|
|
6016
6091
|
"div",
|
|
6017
6092
|
{
|
|
6018
6093
|
className: `${selectedIdList.findIndex(
|
|
@@ -6027,14 +6102,14 @@ var SelectionCheckbox = ({
|
|
|
6027
6102
|
handleRemoveOnClick(option.id);
|
|
6028
6103
|
}
|
|
6029
6104
|
},
|
|
6030
|
-
children: /* @__PURE__ */
|
|
6105
|
+
children: /* @__PURE__ */ jsxs34(
|
|
6031
6106
|
"div",
|
|
6032
6107
|
{
|
|
6033
6108
|
className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
|
|
6034
6109
|
(selectedId) => selectedId === option.id
|
|
6035
6110
|
) > -1 ? "opacity-100" : "opacity-50"}`,
|
|
6036
6111
|
children: [
|
|
6037
|
-
/* @__PURE__ */
|
|
6112
|
+
/* @__PURE__ */ jsx44("div", { children: /* @__PURE__ */ jsx44(
|
|
6038
6113
|
BaseImage_default,
|
|
6039
6114
|
{
|
|
6040
6115
|
src: selectedIdList.findIndex(
|
|
@@ -6044,7 +6119,7 @@ var SelectionCheckbox = ({
|
|
|
6044
6119
|
size: "small"
|
|
6045
6120
|
}
|
|
6046
6121
|
) }),
|
|
6047
|
-
/* @__PURE__ */
|
|
6122
|
+
/* @__PURE__ */ jsx44("div", { className: "flex-1", children: /* @__PURE__ */ jsx44("p", { children: option.text }) })
|
|
6048
6123
|
]
|
|
6049
6124
|
}
|
|
6050
6125
|
)
|
|
@@ -6055,7 +6130,7 @@ var SelectionCheckbox = ({
|
|
|
6055
6130
|
var SelectionCheckbox_default = SelectionCheckbox;
|
|
6056
6131
|
|
|
6057
6132
|
// src/components/tabs/SelectionTab.tsx
|
|
6058
|
-
import { jsx as
|
|
6133
|
+
import { jsx as jsx45, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
6059
6134
|
var SelectionTab = ({
|
|
6060
6135
|
optionList,
|
|
6061
6136
|
selectedId,
|
|
@@ -6065,7 +6140,7 @@ var SelectionTab = ({
|
|
|
6065
6140
|
textColor,
|
|
6066
6141
|
borderColor
|
|
6067
6142
|
}) => {
|
|
6068
|
-
return /* @__PURE__ */
|
|
6143
|
+
return /* @__PURE__ */ jsx45("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__ */ jsxs35(
|
|
6069
6144
|
"div",
|
|
6070
6145
|
{
|
|
6071
6146
|
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`,
|
|
@@ -6073,8 +6148,8 @@ var SelectionTab = ({
|
|
|
6073
6148
|
handleSelectOnClick(option.id);
|
|
6074
6149
|
},
|
|
6075
6150
|
children: [
|
|
6076
|
-
/* @__PURE__ */
|
|
6077
|
-
option.subTitle ? /* @__PURE__ */
|
|
6151
|
+
/* @__PURE__ */ jsx45("p", { className: "text-lg", children: option.title }),
|
|
6152
|
+
option.subTitle ? /* @__PURE__ */ jsx45("p", { className: "text-md", children: option.subTitle }) : null
|
|
6078
6153
|
]
|
|
6079
6154
|
},
|
|
6080
6155
|
index
|
|
@@ -6083,57 +6158,57 @@ var SelectionTab = ({
|
|
|
6083
6158
|
var SelectionTab_default = SelectionTab;
|
|
6084
6159
|
|
|
6085
6160
|
// src/components/labels/ActivityTemplateLabel.tsx
|
|
6086
|
-
import { jsx as
|
|
6161
|
+
import { jsx as jsx46, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
6087
6162
|
var ActivityTemplateLabel = ({
|
|
6088
6163
|
title,
|
|
6089
6164
|
font
|
|
6090
6165
|
}) => {
|
|
6091
|
-
return /* @__PURE__ */
|
|
6092
|
-
/* @__PURE__ */
|
|
6093
|
-
/* @__PURE__ */
|
|
6166
|
+
return /* @__PURE__ */ jsx46("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs36("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6167
|
+
/* @__PURE__ */ jsx46(BaseImage_default, { src: "/icons/activity.png", alt: "label", size: "xsmall" }),
|
|
6168
|
+
/* @__PURE__ */ jsx46("p", { className: font ? font : "text-sm", children: title })
|
|
6094
6169
|
] }) });
|
|
6095
6170
|
};
|
|
6096
6171
|
var ActivityTemplateLabel_default = ActivityTemplateLabel;
|
|
6097
6172
|
|
|
6098
6173
|
// src/components/labels/BrandLabel.tsx
|
|
6099
|
-
import { jsx as
|
|
6174
|
+
import { jsx as jsx47, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
6100
6175
|
var BrandLabel = ({ title, icon, font }) => {
|
|
6101
|
-
return /* @__PURE__ */
|
|
6102
|
-
icon ? icon : /* @__PURE__ */
|
|
6103
|
-
/* @__PURE__ */
|
|
6176
|
+
return /* @__PURE__ */ jsx47("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs37("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6177
|
+
icon ? icon : /* @__PURE__ */ jsx47(BaseImage_default, { src: "/icons/brand-label.png", alt: "label", size: "xsmall" }),
|
|
6178
|
+
/* @__PURE__ */ jsx47("p", { className: font ? font : "text-sm", children: title })
|
|
6104
6179
|
] }) });
|
|
6105
6180
|
};
|
|
6106
6181
|
var BrandLabel_default = BrandLabel;
|
|
6107
6182
|
|
|
6108
6183
|
// src/components/labels/CoterieLabel.tsx
|
|
6109
|
-
import { jsx as
|
|
6184
|
+
import { jsx as jsx48 } from "react/jsx-runtime";
|
|
6110
6185
|
var CoterieLabel = ({ title, font }) => {
|
|
6111
|
-
return /* @__PURE__ */
|
|
6186
|
+
return /* @__PURE__ */ jsx48("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsx48("p", { className: font ? font : "text-sm", children: title }) });
|
|
6112
6187
|
};
|
|
6113
6188
|
var CoterieLabel_default = CoterieLabel;
|
|
6114
6189
|
|
|
6115
6190
|
// src/components/labels/GradeLabel.tsx
|
|
6116
|
-
import { jsx as
|
|
6191
|
+
import { jsx as jsx49 } from "react/jsx-runtime";
|
|
6117
6192
|
var GradeLabel = ({ title, font }) => {
|
|
6118
|
-
return /* @__PURE__ */
|
|
6193
|
+
return /* @__PURE__ */ jsx49("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsx49("p", { className: font ? font : "text-sm", children: title }) });
|
|
6119
6194
|
};
|
|
6120
6195
|
var GradeLabel_default = GradeLabel;
|
|
6121
6196
|
|
|
6122
6197
|
// src/components/labels/OutcomeLabel.tsx
|
|
6123
|
-
import { jsx as
|
|
6198
|
+
import { jsx as jsx50, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
6124
6199
|
var OutcomeLabel = ({ title, font }) => {
|
|
6125
|
-
return /* @__PURE__ */
|
|
6126
|
-
/* @__PURE__ */
|
|
6127
|
-
/* @__PURE__ */
|
|
6200
|
+
return /* @__PURE__ */ jsx50("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs38("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6201
|
+
/* @__PURE__ */ jsx50(BaseImage_default, { src: "/icons/category.png", alt: "label", size: "xsmall" }),
|
|
6202
|
+
/* @__PURE__ */ jsx50("p", { className: font ? font : "text-sm", children: title })
|
|
6128
6203
|
] }) });
|
|
6129
6204
|
};
|
|
6130
6205
|
var OutcomeLabel_default = OutcomeLabel;
|
|
6131
6206
|
|
|
6132
6207
|
// src/components/labels/PersonalLabel.tsx
|
|
6133
|
-
import { jsx as
|
|
6208
|
+
import { jsx as jsx51, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
6134
6209
|
var PersonalLabel = ({ title, icon, font }) => {
|
|
6135
|
-
return /* @__PURE__ */
|
|
6136
|
-
icon ? icon : /* @__PURE__ */
|
|
6210
|
+
return /* @__PURE__ */ jsx51("div", { className: "px-3 py-1 gap-x-3 border border-personal-label-border bg-personal-label text-personal-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs39("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6211
|
+
icon ? icon : /* @__PURE__ */ jsx51(
|
|
6137
6212
|
BaseImage_default,
|
|
6138
6213
|
{
|
|
6139
6214
|
src: "/icons/personal-label.png",
|
|
@@ -6141,16 +6216,16 @@ var PersonalLabel = ({ title, icon, font }) => {
|
|
|
6141
6216
|
size: "xsmall"
|
|
6142
6217
|
}
|
|
6143
6218
|
),
|
|
6144
|
-
/* @__PURE__ */
|
|
6219
|
+
/* @__PURE__ */ jsx51("p", { className: font ? font : "text-sm", children: title })
|
|
6145
6220
|
] }) });
|
|
6146
6221
|
};
|
|
6147
6222
|
var PersonalLabel_default = PersonalLabel;
|
|
6148
6223
|
|
|
6149
6224
|
// src/components/labels/PublishingHouseLabel.tsx
|
|
6150
|
-
import { jsx as
|
|
6225
|
+
import { jsx as jsx52, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
6151
6226
|
var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
6152
|
-
return /* @__PURE__ */
|
|
6153
|
-
icon ? icon : /* @__PURE__ */
|
|
6227
|
+
return /* @__PURE__ */ jsx52("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ jsxs40("div", { className: "flex flex-row items-center gap-x-2", children: [
|
|
6228
|
+
icon ? icon : /* @__PURE__ */ jsx52(
|
|
6154
6229
|
BaseImage_default,
|
|
6155
6230
|
{
|
|
6156
6231
|
src: "/icons/publishing-house-label.png",
|
|
@@ -6158,7 +6233,7 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
|
|
|
6158
6233
|
size: "xsmall"
|
|
6159
6234
|
}
|
|
6160
6235
|
),
|
|
6161
|
-
/* @__PURE__ */
|
|
6236
|
+
/* @__PURE__ */ jsx52("p", { className: font ? font : "text-sm", children: title })
|
|
6162
6237
|
] }) });
|
|
6163
6238
|
};
|
|
6164
6239
|
var PublishingHouseLabel_default = PublishingHouseLabel;
|
package/package.json
CHANGED
|
@@ -13,6 +13,7 @@ import TrueFalseActivityContent from "./TrueFalseActivityContent";
|
|
|
13
13
|
import { IActivityPreviewByDataProps } from "../../properties/ActivityProperties";
|
|
14
14
|
import ActivitySolutionContent from "./solution-content/ActivitySolutionContent";
|
|
15
15
|
import i18n from "../../language/i18n";
|
|
16
|
+
import ActivityEvaluationRubricContent from "./evaluation-rubric-content/ActivityEvaluationRubricContent";
|
|
16
17
|
|
|
17
18
|
const ActivityPreviewByData = ({
|
|
18
19
|
data,
|
|
@@ -21,6 +22,7 @@ const ActivityPreviewByData = ({
|
|
|
21
22
|
lockedType,
|
|
22
23
|
typeOptionList,
|
|
23
24
|
showSolution,
|
|
25
|
+
showEvaluationRubric,
|
|
24
26
|
showTaxonomy,
|
|
25
27
|
isFullScreen,
|
|
26
28
|
}: IActivityPreviewByDataProps) => {
|
|
@@ -258,6 +260,14 @@ const ActivityPreviewByData = ({
|
|
|
258
260
|
/>
|
|
259
261
|
</div>
|
|
260
262
|
) : null}
|
|
263
|
+
{selectedType && showEvaluationRubric ? (
|
|
264
|
+
<div>
|
|
265
|
+
<ActivityEvaluationRubricContent
|
|
266
|
+
activityTemplateType={selectedType}
|
|
267
|
+
data={data}
|
|
268
|
+
/>
|
|
269
|
+
</div>
|
|
270
|
+
) : null}
|
|
261
271
|
</div>
|
|
262
272
|
);
|
|
263
273
|
};
|
|
@@ -48,10 +48,10 @@ const OpenEndedActivityContent = ({
|
|
|
48
48
|
<div
|
|
49
49
|
className={`${
|
|
50
50
|
showMaterialContent
|
|
51
|
-
?
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
: "w-full
|
|
51
|
+
? isFullScreen
|
|
52
|
+
? "w-full"
|
|
53
|
+
: "w-full md:w-[40%]"
|
|
54
|
+
: "w-full"
|
|
55
55
|
}`}
|
|
56
56
|
>
|
|
57
57
|
<ActivityBodyContent
|
package/src/components/activities/evaluation-rubric-content/ActivityEvaluationRubricContent.tsx
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { InlineMath } from "react-katex";
|
|
2
|
+
import i18n from "../../../language/i18n";
|
|
3
|
+
import { IActivityEvaluationRubricProps } from "../../../properties/ActivityProperties";
|
|
4
|
+
import { constructInputWithSpecialExpressionList } from "../../../utilization/CatchtivityUtilization";
|
|
5
|
+
|
|
6
|
+
const ActivityEvaluationRubricContent = ({
|
|
7
|
+
activityTemplateType,
|
|
8
|
+
data,
|
|
9
|
+
}: IActivityEvaluationRubricProps) => {
|
|
10
|
+
if (!activityTemplateType) return;
|
|
11
|
+
|
|
12
|
+
let evaluationRubricMapString = "";
|
|
13
|
+
if (activityTemplateType === "ORDERING") {
|
|
14
|
+
if (data["orderingEvaluationRubricMap"])
|
|
15
|
+
evaluationRubricMapString = data["orderingEvaluationRubricMap"];
|
|
16
|
+
} else if (activityTemplateType === "DROPDOWN") {
|
|
17
|
+
if (data["dropdownEvaluationRubricMap"])
|
|
18
|
+
evaluationRubricMapString = data["dropdownEvaluationRubricMap"];
|
|
19
|
+
} else if (activityTemplateType === "MCSA") {
|
|
20
|
+
if (data["MCSAEvaluationRubricMap"])
|
|
21
|
+
evaluationRubricMapString = data["MCSAEvaluationRubricMap"];
|
|
22
|
+
} else if (activityTemplateType === "MCMA") {
|
|
23
|
+
if (data["MCMAEvaluationRubricMap"])
|
|
24
|
+
evaluationRubricMapString = data["MCMAEvaluationRubricMap"];
|
|
25
|
+
} else if (activityTemplateType === "MATCHING") {
|
|
26
|
+
if (data["matchingEvaluationRubricMap"])
|
|
27
|
+
evaluationRubricMapString = data["matchingEvaluationRubricMap"];
|
|
28
|
+
} else if (activityTemplateType === "GROUPING") {
|
|
29
|
+
if (data["groupingEvaluationRubricMap"])
|
|
30
|
+
evaluationRubricMapString = data["groupingEvaluationRubricMap"];
|
|
31
|
+
} else if (activityTemplateType === "FILL_IN_THE_BLANKS") {
|
|
32
|
+
if (data["fillInTheBlanksEvaluationRubricMap"])
|
|
33
|
+
evaluationRubricMapString = data["fillInTheBlanksEvaluationRubricMap"];
|
|
34
|
+
} else if (activityTemplateType === "OPEN_ENDED") {
|
|
35
|
+
if (data["openEndedEvaluationRubricMap"])
|
|
36
|
+
evaluationRubricMapString = data["openEndedEvaluationRubricMap"];
|
|
37
|
+
} else if (activityTemplateType === "TRUE_FALSE") {
|
|
38
|
+
if (data["trueFalseEvaluationRubricMap"])
|
|
39
|
+
evaluationRubricMapString = data["trueFalseEvaluationRubricMap"];
|
|
40
|
+
}
|
|
41
|
+
const evaluationRubricMap = JSON.parse(evaluationRubricMapString);
|
|
42
|
+
if (!evaluationRubricMap) return;
|
|
43
|
+
|
|
44
|
+
if (Object.keys(evaluationRubricMap).length === 0) return;
|
|
45
|
+
|
|
46
|
+
return (
|
|
47
|
+
<div className="mx-2">
|
|
48
|
+
<div className="p-4 border-catchup-blue border-2 rounded-catchup-xlarge">
|
|
49
|
+
<p className="text-xl font-bold text-center mb-3">
|
|
50
|
+
{i18n.t("evaluation_rubric")}
|
|
51
|
+
</p>
|
|
52
|
+
{Object.keys(evaluationRubricMap).map((key, index) => {
|
|
53
|
+
const currentItem = JSON.parse(evaluationRubricMap[key]);
|
|
54
|
+
const { value } = currentItem;
|
|
55
|
+
return (
|
|
56
|
+
<p className="my-3">
|
|
57
|
+
<span
|
|
58
|
+
key={`${key}_${index}`}
|
|
59
|
+
className="text-xl whitespace-pre-wrap"
|
|
60
|
+
>
|
|
61
|
+
{constructInputWithSpecialExpressionList(value).map(
|
|
62
|
+
(inputPart, index) => (
|
|
63
|
+
<span
|
|
64
|
+
key={index}
|
|
65
|
+
className={`${inputPart.isBold ? "font-bold" : ""} ${
|
|
66
|
+
inputPart.isUnderline ? "underline" : ""
|
|
67
|
+
}`}
|
|
68
|
+
>
|
|
69
|
+
{inputPart.isEquation ? (
|
|
70
|
+
<span className="text-2xl">
|
|
71
|
+
<InlineMath math={inputPart.value} />
|
|
72
|
+
</span>
|
|
73
|
+
) : (
|
|
74
|
+
inputPart.value
|
|
75
|
+
)}
|
|
76
|
+
</span>
|
|
77
|
+
)
|
|
78
|
+
)}
|
|
79
|
+
</span>
|
|
80
|
+
</p>
|
|
81
|
+
);
|
|
82
|
+
})}
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
);
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
export default ActivityEvaluationRubricContent;
|
|
@@ -207,6 +207,11 @@ export interface IShowMaterialMediaByContentTypeProps {
|
|
|
207
207
|
canFullScreen: boolean;
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
+
export interface IActivityEvaluationRubricProps {
|
|
211
|
+
activityTemplateType: string;
|
|
212
|
+
data: any;
|
|
213
|
+
}
|
|
214
|
+
|
|
210
215
|
export interface IActivitySolutionProps {
|
|
211
216
|
activityTemplateType: string;
|
|
212
217
|
data: any;
|
|
@@ -220,5 +225,6 @@ export interface IActivityPreviewByDataProps {
|
|
|
220
225
|
typeOptionList: any[];
|
|
221
226
|
showTaxonomy: boolean;
|
|
222
227
|
showSolution: boolean;
|
|
228
|
+
showEvaluationRubric: boolean;
|
|
223
229
|
isFullScreen: boolean;
|
|
224
230
|
}
|