catchup-library-web 1.11.1 → 1.11.2

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 CHANGED
@@ -173,6 +173,18 @@ interface IActivityPreviewByDataProps {
173
173
  showEvaluationRubric: boolean;
174
174
  isFullScreen: boolean;
175
175
  }
176
+ interface IActivityPreviewByAnswerDataProps {
177
+ data: any;
178
+ showType?: boolean;
179
+ showDescription?: boolean;
180
+ lockedType?: string | null;
181
+ typeOptionList?: any[];
182
+ showSolution?: boolean;
183
+ showEvaluationRubric?: boolean;
184
+ showTaxonomy?: boolean;
185
+ isFullScreen?: boolean;
186
+ showCorrectAnswer?: boolean;
187
+ }
176
188
 
177
189
  declare const ActivityBodyContent: ({ templateType, bodyMap, contentMap, answerMap, }: IActivityBodyContentProps) => react_jsx_runtime.JSX.Element | null;
178
190
 
@@ -200,6 +212,8 @@ declare const ActivityEvaluationRubricContent: ({ activityTemplateType, data, }:
200
212
 
201
213
  declare const ActivityPreviewByData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showEvaluationRubric, showTaxonomy, isFullScreen, }: IActivityPreviewByDataProps) => react_jsx_runtime.JSX.Element | undefined;
202
214
 
215
+ declare const ActivityPreviewByAnswerData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showEvaluationRubric, showTaxonomy, isFullScreen, showCorrectAnswer, }: IActivityPreviewByAnswerDataProps) => react_jsx_runtime.JSX.Element | null;
216
+
203
217
  interface IDividerLineProps {
204
218
  opacity: string;
205
219
  }
@@ -730,4 +744,4 @@ declare const retrieveActivityMethodologyOptionList: () => {
730
744
  text: string;
731
745
  }[];
732
746
 
733
- export { ActivityBodyContent, ActivityEmptyContent, ActivityEvaluationRubricContent, ActivityLabel, ActivityPreviewByData, ActivitySolutionContent, ActivityTemplateLabel, ApproveButton, BaseImage, BaseLoading, BaseLoadingWithText, BaseModal, BaseTitle, BlueVerticalDividerLine, BrandLabel, CancelButton, CoterieLabel, CreateButton, DeleteButton, DividerLine, DropdownActivityContent, FillInTheBlanksActivityContent, GradeLabel, GroupingActivityContent, InfoWithText, InputGroup, InputWithSpecialExpression, LeftTextRightInputGroup, MCMAActivityContent, MCSAActivityContent, MatchingActivityContent, ONE_DAY, ONE_HOUR, ONE_MONTH, ONE_WEEK, OpenEndedActivityContent, OrderingActivityContent, OutcomeLabel, PersonalLabel, PrimaryButton, PublishingHouseLabel, SecondaryButton, SelectionBox, SelectionCheckbox, SelectionTab, SelectionTabFill, SubTitle, THREE_MONTHS, TrueFalseActivityContent, VerticalDividerLine, adjustForTimezone, base64ToFile, calculateEndDateOfWeek, calculateLevenshteinDistance, calculateStartDateOfWeek, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListForSolution, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructCategoryTreeFromParentCode, constructInputWithSpecialExpressionList, constructMonthName, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeByDistinctOptionList, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, formatPriceWithCommas, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, retrieveActivityMethodologyOptionList, retrieveActivityTemplateDTOOptionList, retrieveAllEarnedBadgeDTOListByCoterieType, retrieveAllEarnedBadgeDTOListByCoterieTypeList, retrieveAnnouncementAudienceOptionList, retrieveAnnouncementTypeOptionList, retrieveBadgeRuleListByParams, retrieveBadgeRuleTextByParams, retrieveBranchDTOByUserProfileOptionList, retrieveBranchDTOOptionList, retrieveBrandDTOByUserProfileOptionList, retrieveBrandDTOOptionList, retrieveCampusDTOByUserProfileOptionList, retrieveCampusDTOOptionList, retrieveCategoryVersionCodeOptionList, retrieveClockTimeLeft, retrieveColorByScore, retrieveContentTypeOptionList, retrieveContestTypeOptionList, retrieveCoterieTypeFromStandardExamCoterieType, retrieveCoterieTypeOptionList, retrieveCountryCodeOptionList, retrieveCountryNameOptionList, retrieveCurrentDefaultDataMap, retrieveDateIntervalOptionList, retrieveDefaultUserRoleOptionList, retrieveDistintCoterieTypeFromCatchtivityApplicationDTO, retrieveDocumentTypeFromAcceptedFormat, retrieveDocumentTypeFromExtension, retrieveDurationInMinutesOptionList, retrieveDurationInSecondsOptionList, retrieveDurationTypeOptionList, retrieveEachTimeSpentInSeconds, retrieveEnableOptionList, retrieveExternalRegistrationDTOOptionList, retrieveFrequencyTypeOptionList, retrieveGenderOptionList, retrieveGradeDTOByUserProfileOptionList, retrieveGradeDTOOptionList, retrieveGradeLevelOptionList, retrieveInstitutionDTOByUserProfileOptionList, retrieveInstitutionDTOOptionList, retrieveInstitutionTypeOptionList, retrieveMonthNameByIndex, retrieveOtherBadgeDTOList, retrieveOutcomePlanTypeOptionList, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTeachingMethodologyOptionList, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
747
+ export { ActivityBodyContent, ActivityEmptyContent, ActivityEvaluationRubricContent, ActivityLabel, ActivityPreviewByAnswerData, ActivityPreviewByData, ActivitySolutionContent, ActivityTemplateLabel, ApproveButton, BaseImage, BaseLoading, BaseLoadingWithText, BaseModal, BaseTitle, BlueVerticalDividerLine, BrandLabel, CancelButton, CoterieLabel, CreateButton, DeleteButton, DividerLine, DropdownActivityContent, FillInTheBlanksActivityContent, GradeLabel, GroupingActivityContent, InfoWithText, InputGroup, InputWithSpecialExpression, LeftTextRightInputGroup, MCMAActivityContent, MCSAActivityContent, MatchingActivityContent, ONE_DAY, ONE_HOUR, ONE_MONTH, ONE_WEEK, OpenEndedActivityContent, OrderingActivityContent, OutcomeLabel, PersonalLabel, PrimaryButton, PublishingHouseLabel, SecondaryButton, SelectionBox, SelectionCheckbox, SelectionTab, SelectionTabFill, SubTitle, THREE_MONTHS, TrueFalseActivityContent, VerticalDividerLine, adjustForTimezone, base64ToFile, calculateEndDateOfWeek, calculateLevenshteinDistance, calculateStartDateOfWeek, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListForSolution, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructCategoryTreeFromParentCode, constructInputWithSpecialExpressionList, constructMonthName, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeByDistinctOptionList, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, formatPriceWithCommas, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, retrieveActivityMethodologyOptionList, retrieveActivityTemplateDTOOptionList, retrieveAllEarnedBadgeDTOListByCoterieType, retrieveAllEarnedBadgeDTOListByCoterieTypeList, retrieveAnnouncementAudienceOptionList, retrieveAnnouncementTypeOptionList, retrieveBadgeRuleListByParams, retrieveBadgeRuleTextByParams, retrieveBranchDTOByUserProfileOptionList, retrieveBranchDTOOptionList, retrieveBrandDTOByUserProfileOptionList, retrieveBrandDTOOptionList, retrieveCampusDTOByUserProfileOptionList, retrieveCampusDTOOptionList, retrieveCategoryVersionCodeOptionList, retrieveClockTimeLeft, retrieveColorByScore, retrieveContentTypeOptionList, retrieveContestTypeOptionList, retrieveCoterieTypeFromStandardExamCoterieType, retrieveCoterieTypeOptionList, retrieveCountryCodeOptionList, retrieveCountryNameOptionList, retrieveCurrentDefaultDataMap, retrieveDateIntervalOptionList, retrieveDefaultUserRoleOptionList, retrieveDistintCoterieTypeFromCatchtivityApplicationDTO, retrieveDocumentTypeFromAcceptedFormat, retrieveDocumentTypeFromExtension, retrieveDurationInMinutesOptionList, retrieveDurationInSecondsOptionList, retrieveDurationTypeOptionList, retrieveEachTimeSpentInSeconds, retrieveEnableOptionList, retrieveExternalRegistrationDTOOptionList, retrieveFrequencyTypeOptionList, retrieveGenderOptionList, retrieveGradeDTOByUserProfileOptionList, retrieveGradeDTOOptionList, retrieveGradeLevelOptionList, retrieveInstitutionDTOByUserProfileOptionList, retrieveInstitutionDTOOptionList, retrieveInstitutionTypeOptionList, retrieveMonthNameByIndex, retrieveOtherBadgeDTOList, retrieveOutcomePlanTypeOptionList, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTeachingMethodologyOptionList, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
package/dist/index.d.ts CHANGED
@@ -173,6 +173,18 @@ interface IActivityPreviewByDataProps {
173
173
  showEvaluationRubric: boolean;
174
174
  isFullScreen: boolean;
175
175
  }
176
+ interface IActivityPreviewByAnswerDataProps {
177
+ data: any;
178
+ showType?: boolean;
179
+ showDescription?: boolean;
180
+ lockedType?: string | null;
181
+ typeOptionList?: any[];
182
+ showSolution?: boolean;
183
+ showEvaluationRubric?: boolean;
184
+ showTaxonomy?: boolean;
185
+ isFullScreen?: boolean;
186
+ showCorrectAnswer?: boolean;
187
+ }
176
188
 
177
189
  declare const ActivityBodyContent: ({ templateType, bodyMap, contentMap, answerMap, }: IActivityBodyContentProps) => react_jsx_runtime.JSX.Element | null;
178
190
 
@@ -200,6 +212,8 @@ declare const ActivityEvaluationRubricContent: ({ activityTemplateType, data, }:
200
212
 
201
213
  declare const ActivityPreviewByData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showEvaluationRubric, showTaxonomy, isFullScreen, }: IActivityPreviewByDataProps) => react_jsx_runtime.JSX.Element | undefined;
202
214
 
215
+ declare const ActivityPreviewByAnswerData: ({ data, showType, showDescription, lockedType, typeOptionList, showSolution, showEvaluationRubric, showTaxonomy, isFullScreen, showCorrectAnswer, }: IActivityPreviewByAnswerDataProps) => react_jsx_runtime.JSX.Element | null;
216
+
203
217
  interface IDividerLineProps {
204
218
  opacity: string;
205
219
  }
@@ -730,4 +744,4 @@ declare const retrieveActivityMethodologyOptionList: () => {
730
744
  text: string;
731
745
  }[];
732
746
 
733
- export { ActivityBodyContent, ActivityEmptyContent, ActivityEvaluationRubricContent, ActivityLabel, ActivityPreviewByData, ActivitySolutionContent, ActivityTemplateLabel, ApproveButton, BaseImage, BaseLoading, BaseLoadingWithText, BaseModal, BaseTitle, BlueVerticalDividerLine, BrandLabel, CancelButton, CoterieLabel, CreateButton, DeleteButton, DividerLine, DropdownActivityContent, FillInTheBlanksActivityContent, GradeLabel, GroupingActivityContent, InfoWithText, InputGroup, InputWithSpecialExpression, LeftTextRightInputGroup, MCMAActivityContent, MCSAActivityContent, MatchingActivityContent, ONE_DAY, ONE_HOUR, ONE_MONTH, ONE_WEEK, OpenEndedActivityContent, OrderingActivityContent, OutcomeLabel, PersonalLabel, PrimaryButton, PublishingHouseLabel, SecondaryButton, SelectionBox, SelectionCheckbox, SelectionTab, SelectionTabFill, SubTitle, THREE_MONTHS, TrueFalseActivityContent, VerticalDividerLine, adjustForTimezone, base64ToFile, calculateEndDateOfWeek, calculateLevenshteinDistance, calculateStartDateOfWeek, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListForSolution, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructCategoryTreeFromParentCode, constructInputWithSpecialExpressionList, constructMonthName, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeByDistinctOptionList, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, formatPriceWithCommas, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, retrieveActivityMethodologyOptionList, retrieveActivityTemplateDTOOptionList, retrieveAllEarnedBadgeDTOListByCoterieType, retrieveAllEarnedBadgeDTOListByCoterieTypeList, retrieveAnnouncementAudienceOptionList, retrieveAnnouncementTypeOptionList, retrieveBadgeRuleListByParams, retrieveBadgeRuleTextByParams, retrieveBranchDTOByUserProfileOptionList, retrieveBranchDTOOptionList, retrieveBrandDTOByUserProfileOptionList, retrieveBrandDTOOptionList, retrieveCampusDTOByUserProfileOptionList, retrieveCampusDTOOptionList, retrieveCategoryVersionCodeOptionList, retrieveClockTimeLeft, retrieveColorByScore, retrieveContentTypeOptionList, retrieveContestTypeOptionList, retrieveCoterieTypeFromStandardExamCoterieType, retrieveCoterieTypeOptionList, retrieveCountryCodeOptionList, retrieveCountryNameOptionList, retrieveCurrentDefaultDataMap, retrieveDateIntervalOptionList, retrieveDefaultUserRoleOptionList, retrieveDistintCoterieTypeFromCatchtivityApplicationDTO, retrieveDocumentTypeFromAcceptedFormat, retrieveDocumentTypeFromExtension, retrieveDurationInMinutesOptionList, retrieveDurationInSecondsOptionList, retrieveDurationTypeOptionList, retrieveEachTimeSpentInSeconds, retrieveEnableOptionList, retrieveExternalRegistrationDTOOptionList, retrieveFrequencyTypeOptionList, retrieveGenderOptionList, retrieveGradeDTOByUserProfileOptionList, retrieveGradeDTOOptionList, retrieveGradeLevelOptionList, retrieveInstitutionDTOByUserProfileOptionList, retrieveInstitutionDTOOptionList, retrieveInstitutionTypeOptionList, retrieveMonthNameByIndex, retrieveOtherBadgeDTOList, retrieveOutcomePlanTypeOptionList, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTeachingMethodologyOptionList, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
747
+ export { ActivityBodyContent, ActivityEmptyContent, ActivityEvaluationRubricContent, ActivityLabel, ActivityPreviewByAnswerData, ActivityPreviewByData, ActivitySolutionContent, ActivityTemplateLabel, ApproveButton, BaseImage, BaseLoading, BaseLoadingWithText, BaseModal, BaseTitle, BlueVerticalDividerLine, BrandLabel, CancelButton, CoterieLabel, CreateButton, DeleteButton, DividerLine, DropdownActivityContent, FillInTheBlanksActivityContent, GradeLabel, GroupingActivityContent, InfoWithText, InputGroup, InputWithSpecialExpression, LeftTextRightInputGroup, MCMAActivityContent, MCSAActivityContent, MatchingActivityContent, ONE_DAY, ONE_HOUR, ONE_MONTH, ONE_WEEK, OpenEndedActivityContent, OrderingActivityContent, OutcomeLabel, PersonalLabel, PrimaryButton, PublishingHouseLabel, SecondaryButton, SelectionBox, SelectionCheckbox, SelectionTab, SelectionTabFill, SubTitle, THREE_MONTHS, TrueFalseActivityContent, VerticalDividerLine, adjustForTimezone, base64ToFile, calculateEndDateOfWeek, calculateLevenshteinDistance, calculateStartDateOfWeek, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListForSolution, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructCategoryTreeFromParentCode, constructInputWithSpecialExpressionList, constructMonthName, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeByDistinctOptionList, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, formatPriceWithCommas, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, retrieveActivityMethodologyOptionList, retrieveActivityTemplateDTOOptionList, retrieveAllEarnedBadgeDTOListByCoterieType, retrieveAllEarnedBadgeDTOListByCoterieTypeList, retrieveAnnouncementAudienceOptionList, retrieveAnnouncementTypeOptionList, retrieveBadgeRuleListByParams, retrieveBadgeRuleTextByParams, retrieveBranchDTOByUserProfileOptionList, retrieveBranchDTOOptionList, retrieveBrandDTOByUserProfileOptionList, retrieveBrandDTOOptionList, retrieveCampusDTOByUserProfileOptionList, retrieveCampusDTOOptionList, retrieveCategoryVersionCodeOptionList, retrieveClockTimeLeft, retrieveColorByScore, retrieveContentTypeOptionList, retrieveContestTypeOptionList, retrieveCoterieTypeFromStandardExamCoterieType, retrieveCoterieTypeOptionList, retrieveCountryCodeOptionList, retrieveCountryNameOptionList, retrieveCurrentDefaultDataMap, retrieveDateIntervalOptionList, retrieveDefaultUserRoleOptionList, retrieveDistintCoterieTypeFromCatchtivityApplicationDTO, retrieveDocumentTypeFromAcceptedFormat, retrieveDocumentTypeFromExtension, retrieveDurationInMinutesOptionList, retrieveDurationInSecondsOptionList, retrieveDurationTypeOptionList, retrieveEachTimeSpentInSeconds, retrieveEnableOptionList, retrieveExternalRegistrationDTOOptionList, retrieveFrequencyTypeOptionList, retrieveGenderOptionList, retrieveGradeDTOByUserProfileOptionList, retrieveGradeDTOOptionList, retrieveGradeLevelOptionList, retrieveInstitutionDTOByUserProfileOptionList, retrieveInstitutionDTOOptionList, retrieveInstitutionTypeOptionList, retrieveMonthNameByIndex, retrieveOtherBadgeDTOList, retrieveOutcomePlanTypeOptionList, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTeachingMethodologyOptionList, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
package/dist/index.js CHANGED
@@ -71,6 +71,7 @@ __export(index_exports, {
71
71
  ActivityEmptyContent: () => ActivityEmptyContent_default,
72
72
  ActivityEvaluationRubricContent: () => ActivityEvaluationRubricContent_default,
73
73
  ActivityLabel: () => ActivityLabel_default,
74
+ ActivityPreviewByAnswerData: () => ActivityPreviewByAnswerData_default,
74
75
  ActivityPreviewByData: () => ActivityPreviewByData_default,
75
76
  ActivitySolutionContent: () => ActivitySolutionContent_default,
76
77
  ActivityTemplateLabel: () => ActivityTemplateLabel_default,
@@ -6711,10 +6712,203 @@ var ActivityPreviewByData = ({
6711
6712
  };
6712
6713
  var ActivityPreviewByData_default = ActivityPreviewByData;
6713
6714
 
6714
- // src/components/dividers/BlueVerticalDividerLine.tsx
6715
+ // src/components/activities/ActivityPreviewByAnswerData.tsx
6716
+ var import_react27 = require("react");
6715
6717
  var import_jsx_runtime44 = require("react/jsx-runtime");
6718
+ var ActivityPreviewByAnswerData = ({
6719
+ data,
6720
+ showType = true,
6721
+ showDescription = true,
6722
+ lockedType = null,
6723
+ typeOptionList = [],
6724
+ showSolution = false,
6725
+ showEvaluationRubric = false,
6726
+ showTaxonomy = true,
6727
+ isFullScreen = false,
6728
+ showCorrectAnswer = false
6729
+ }) => {
6730
+ var _a;
6731
+ const [key, setKey] = (0, import_react27.useState)((/* @__PURE__ */ new Date()).getTime());
6732
+ const [selectedType, setSelectedType] = (0, import_react27.useState)(null);
6733
+ const [optionList, setOptionList] = (0, import_react27.useState)([]);
6734
+ const [answer, setAnswer] = (0, import_react27.useState)({ data: [] });
6735
+ (0, import_react27.useEffect)(() => {
6736
+ if (!data) return;
6737
+ setKey((/* @__PURE__ */ new Date()).getTime());
6738
+ }, [data]);
6739
+ const checkAnswerMapExists = (type) => {
6740
+ if (data && data.answerMap && Array.isArray(data.answerMap)) {
6741
+ const foundAnswer = data.answerMap.find(
6742
+ (answer2) => answer2.type === type
6743
+ );
6744
+ return foundAnswer || null;
6745
+ }
6746
+ return null;
6747
+ };
6748
+ const retrieveTaxonomyNameFromActivityType = (type) => {
6749
+ if (!data) return "";
6750
+ let taxonomyMap = { name: "" };
6751
+ const taxonomyMapNames = {
6752
+ ORDERING: "orderingTaxonomyMap",
6753
+ DROPDOWN: "dropdownTaxonomyMap",
6754
+ MCSA: "MCSATaxonomyMap",
6755
+ MCMA: "MCMATaxonomyMap",
6756
+ MATCHING: "matchingTaxonomyMap",
6757
+ GROUPING: "groupingTaxonomyMap",
6758
+ FILL_IN_THE_BLANKS: "fillInTheBlanksTaxonomyMap",
6759
+ OPEN_ENDED: "openEndedTaxonomyMap",
6760
+ TRUE_FALSE: "trueFalseTaxonomyMap"
6761
+ };
6762
+ const mapName = taxonomyMapNames[type];
6763
+ if (mapName && data[mapName]) {
6764
+ try {
6765
+ taxonomyMap = JSON.parse(data[mapName]);
6766
+ } catch (error) {
6767
+ console.error(`Error parsing taxonomy map for ${type}:`, error);
6768
+ }
6769
+ }
6770
+ return taxonomyMap.name || "";
6771
+ };
6772
+ (0, import_react27.useEffect)(() => {
6773
+ if (!data) return;
6774
+ const constructAnswerBasedOnData2 = () => {
6775
+ const newAnswer = { data: [] };
6776
+ const activityTypes = [
6777
+ { type: "ORDERING", materialMap: "orderingMaterialMap" },
6778
+ { type: "DROPDOWN", materialMap: "dropdownMaterialMap" },
6779
+ { type: "MCSA", materialMap: "MCSAMaterialMap" },
6780
+ { type: "MCMA", materialMap: "MCMAMaterialMap" },
6781
+ { type: "MATCHING", materialMap: "matchingMaterialMap" },
6782
+ { type: "GROUPING", materialMap: "groupingMaterialMap" },
6783
+ {
6784
+ type: "FILL_IN_THE_BLANKS",
6785
+ materialMap: "fillInTheBlanksMaterialMap"
6786
+ },
6787
+ { type: "OPEN_ENDED", materialMap: "openEndedMaterialMap" },
6788
+ { type: "TRUE_FALSE", materialMap: "trueFalseMaterialMap" }
6789
+ ];
6790
+ activityTypes.forEach(({ type, materialMap }) => {
6791
+ if (data[materialMap]) {
6792
+ const foundAnswer = checkAnswerMapExists(type);
6793
+ const answerItem = foundAnswer || constructActivityAnswerMap(
6794
+ { type },
6795
+ JSON.parse(JSON.stringify(data))
6796
+ );
6797
+ newAnswer.data.push(answerItem);
6798
+ }
6799
+ });
6800
+ setAnswer(newAnswer);
6801
+ if (newAnswer.data.length > 0) {
6802
+ if (lockedType && newAnswer.data.find((item) => item.type === lockedType)) {
6803
+ setSelectedType(lockedType);
6804
+ } else {
6805
+ setSelectedType(newAnswer.data[0].type);
6806
+ }
6807
+ }
6808
+ };
6809
+ constructAnswerBasedOnData2();
6810
+ }, [data, lockedType]);
6811
+ (0, import_react27.useEffect)(() => {
6812
+ if (!data || !answer.data.length) return;
6813
+ let currentTypeOptionList = typeOptionList || answer.data.map((item) => ({
6814
+ id: item.type,
6815
+ text: i18n_default.t(item.type)
6816
+ }));
6817
+ if (lockedType) {
6818
+ currentTypeOptionList = currentTypeOptionList.filter(
6819
+ (typeOption) => typeOption.id === lockedType
6820
+ );
6821
+ }
6822
+ if (showTaxonomy) {
6823
+ setOptionList(
6824
+ currentTypeOptionList.map((typeOption) => __spreadProps(__spreadValues({}, typeOption), {
6825
+ subText: i18n_default.t(retrieveTaxonomyNameFromActivityType(typeOption.id))
6826
+ }))
6827
+ );
6828
+ } else {
6829
+ setOptionList(currentTypeOptionList);
6830
+ }
6831
+ }, [data, answer.data, lockedType, typeOptionList, showTaxonomy]);
6832
+ const RenderSelectedActivityContent = () => {
6833
+ const commonProps = {
6834
+ answer,
6835
+ data,
6836
+ canAnswerQuestion: () => true,
6837
+ changeAnswer: (newAnswer) => setAnswer(JSON.parse(JSON.stringify(newAnswer))),
6838
+ isPreview: true,
6839
+ showCorrectAnswer,
6840
+ isFullScreen
6841
+ };
6842
+ switch (selectedType) {
6843
+ case "ORDERING":
6844
+ return data.orderingBodyMap && data.orderingMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(OrderingActivityContent_default, __spreadValues({}, commonProps)) : null;
6845
+ case "DROPDOWN":
6846
+ return data.dropdownBodyMap && data.dropdownMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(DropdownActivityContent_default, __spreadValues({}, commonProps)) : null;
6847
+ case "MCSA":
6848
+ return data.MCSABodyMap && data.MCSAMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(MCSAActivityContent_default, __spreadValues({}, commonProps)) : null;
6849
+ case "MCMA":
6850
+ return data.MCMABodyMap && data.MCMAMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(MCMAActivityContent_default, __spreadValues({}, commonProps)) : null;
6851
+ case "MATCHING":
6852
+ return data.matchingBodyMap && data.matchingMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(MatchingActivityContent_default, __spreadValues({}, commonProps)) : null;
6853
+ case "GROUPING":
6854
+ return data.groupingBodyMap && data.groupingMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(GroupingActivityContent_default, __spreadValues({}, commonProps)) : null;
6855
+ case "FILL_IN_THE_BLANKS":
6856
+ return data.fillInTheBlanksBodyMap && data.fillInTheBlanksMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(FillInTheBlanksActivityContent_default, __spreadValues({}, commonProps)) : null;
6857
+ case "OPEN_ENDED":
6858
+ return data.openEndedBodyMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6859
+ OpenEndedActivityContent_default,
6860
+ __spreadProps(__spreadValues({}, commonProps), {
6861
+ showMaterialContent: true
6862
+ })
6863
+ ) : null;
6864
+ case "TRUE_FALSE":
6865
+ return data.trueFalseBodyMap && data.trueFalseMaterialMap ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(TrueFalseActivityContent_default, __spreadValues({}, commonProps)) : null;
6866
+ default:
6867
+ return null;
6868
+ }
6869
+ };
6870
+ if (!data) return null;
6871
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { children: [
6872
+ showType && optionList.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "mb-4", children: [
6873
+ showDescription ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "my-2", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
6874
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6875
+ SelectionBox_default,
6876
+ {
6877
+ optionList,
6878
+ selectedId: selectedType,
6879
+ handleSelectOnClick: (itemId) => {
6880
+ setSelectedType(itemId);
6881
+ }
6882
+ }
6883
+ )
6884
+ ] }) : null,
6885
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(DividerLine_default, {}),
6886
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-col my-2 w-full p-5", children: [
6887
+ ((_a = answer == null ? void 0 : answer.data[0]) == null ? void 0 : _a.isEmpty) ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(ActivityEmptyContent_default, {}) : null,
6888
+ selectedType ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { children: RenderSelectedActivityContent() }, selectedType) : null
6889
+ ] }),
6890
+ selectedType && showSolution ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6891
+ ActivitySolutionContent_default,
6892
+ {
6893
+ activityTemplateType: selectedType,
6894
+ data
6895
+ }
6896
+ ) }) : null,
6897
+ selectedType && showEvaluationRubric ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "my-4", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6898
+ ActivityEvaluationRubricContent_default,
6899
+ {
6900
+ activityTemplateType: selectedType,
6901
+ data
6902
+ }
6903
+ ) }) : null
6904
+ ] }, key);
6905
+ };
6906
+ var ActivityPreviewByAnswerData_default = ActivityPreviewByAnswerData;
6907
+
6908
+ // src/components/dividers/BlueVerticalDividerLine.tsx
6909
+ var import_jsx_runtime45 = require("react/jsx-runtime");
6716
6910
  var BlueVerticalDividerLine = ({ opacity }) => {
6717
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6911
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
6718
6912
  "div",
6719
6913
  {
6720
6914
  className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
@@ -6724,7 +6918,7 @@ var BlueVerticalDividerLine = ({ opacity }) => {
6724
6918
  var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
6725
6919
 
6726
6920
  // src/components/groups/LeftTextRightInputGroup.tsx
6727
- var import_jsx_runtime45 = require("react/jsx-runtime");
6921
+ var import_jsx_runtime46 = require("react/jsx-runtime");
6728
6922
  var LeftTextRightInputGroup = ({
6729
6923
  type,
6730
6924
  title,
@@ -6734,9 +6928,9 @@ var LeftTextRightInputGroup = ({
6734
6928
  disabled,
6735
6929
  errorText
6736
6930
  }) => {
6737
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: "w-full flex flex-row mx-2", children: [
6738
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { children: title }) }),
6739
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
6931
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "w-full flex flex-row mx-2", children: [
6932
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { children: title }) }),
6933
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
6740
6934
  InputGroup_default,
6741
6935
  {
6742
6936
  type,
@@ -6752,14 +6946,14 @@ var LeftTextRightInputGroup = ({
6752
6946
  var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
6753
6947
 
6754
6948
  // src/components/boxes/SelectionCheckbox.tsx
6755
- var import_jsx_runtime46 = require("react/jsx-runtime");
6949
+ var import_jsx_runtime47 = require("react/jsx-runtime");
6756
6950
  var SelectionCheckbox = ({
6757
6951
  optionList,
6758
6952
  selectedIdList,
6759
6953
  handleSelectOnClick,
6760
6954
  handleRemoveOnClick
6761
6955
  }) => {
6762
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
6956
+ return /* @__PURE__ */ (0, import_jsx_runtime47.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_runtime47.jsx)(
6763
6957
  "div",
6764
6958
  {
6765
6959
  className: `${selectedIdList.findIndex(
@@ -6774,14 +6968,14 @@ var SelectionCheckbox = ({
6774
6968
  handleRemoveOnClick(option.id);
6775
6969
  }
6776
6970
  },
6777
- children: /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
6971
+ children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
6778
6972
  "div",
6779
6973
  {
6780
6974
  className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
6781
6975
  (selectedId) => selectedId === option.id
6782
6976
  ) > -1 ? "opacity-100" : "opacity-50"}`,
6783
6977
  children: [
6784
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
6978
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6785
6979
  BaseImage_default,
6786
6980
  {
6787
6981
  src: selectedIdList.findIndex(
@@ -6791,7 +6985,7 @@ var SelectionCheckbox = ({
6791
6985
  size: "small"
6792
6986
  }
6793
6987
  ),
6794
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { children: option.text }) })
6988
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { children: option.text }) })
6795
6989
  ]
6796
6990
  }
6797
6991
  )
@@ -6802,7 +6996,7 @@ var SelectionCheckbox = ({
6802
6996
  var SelectionCheckbox_default = SelectionCheckbox;
6803
6997
 
6804
6998
  // src/components/tabs/SelectionTab.tsx
6805
- var import_jsx_runtime47 = require("react/jsx-runtime");
6999
+ var import_jsx_runtime48 = require("react/jsx-runtime");
6806
7000
  var SelectionTab = ({
6807
7001
  optionList,
6808
7002
  selectedId,
@@ -6812,7 +7006,7 @@ var SelectionTab = ({
6812
7006
  textColor,
6813
7007
  borderColor
6814
7008
  }) => {
6815
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap mb-2 text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
7009
+ return /* @__PURE__ */ (0, import_jsx_runtime48.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_runtime48.jsxs)(
6816
7010
  "div",
6817
7011
  {
6818
7012
  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`,
@@ -6820,8 +7014,8 @@ var SelectionTab = ({
6820
7014
  handleSelectOnClick(option.id);
6821
7015
  },
6822
7016
  children: [
6823
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: "text-lg", children: option.title }),
6824
- option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: "text-md", children: option.subTitle }) : null
7017
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: "text-lg", children: option.title }),
7018
+ option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: "text-md", children: option.subTitle }) : null
6825
7019
  ]
6826
7020
  },
6827
7021
  index
@@ -6830,20 +7024,20 @@ var SelectionTab = ({
6830
7024
  var SelectionTab_default = SelectionTab;
6831
7025
 
6832
7026
  // src/components/tabs/SelectionTabFill.tsx
6833
- var import_jsx_runtime48 = require("react/jsx-runtime");
7027
+ var import_jsx_runtime49 = require("react/jsx-runtime");
6834
7028
  var SelectionTabFill = ({
6835
7029
  optionList,
6836
7030
  selectedId,
6837
7031
  handleSelectOnClick
6838
7032
  }) => {
6839
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "w-full flex flex-row bg-catchup-gray-50 gap-x-2 rounded-catchup-medium px-4 py-2 justify-center text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7033
+ return /* @__PURE__ */ (0, import_jsx_runtime49.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_runtime49.jsx)(
6840
7034
  "div",
6841
7035
  {
6842
7036
  className: "cursor-pointer",
6843
7037
  onClick: () => {
6844
7038
  handleSelectOnClick(option.id);
6845
7039
  },
6846
- children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7040
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
6847
7041
  "p",
6848
7042
  {
6849
7043
  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`,
@@ -6857,57 +7051,57 @@ var SelectionTabFill = ({
6857
7051
  var SelectionTabFill_default = SelectionTabFill;
6858
7052
 
6859
7053
  // src/components/labels/ActivityTemplateLabel.tsx
6860
- var import_jsx_runtime49 = require("react/jsx-runtime");
7054
+ var import_jsx_runtime50 = require("react/jsx-runtime");
6861
7055
  var ActivityTemplateLabel = ({
6862
7056
  title,
6863
7057
  font
6864
7058
  }) => {
6865
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6866
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
6867
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: font ? font : "text-sm", children: title })
7059
+ return /* @__PURE__ */ (0, import_jsx_runtime50.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_runtime50.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
7060
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
7061
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: font ? font : "text-sm", children: title })
6868
7062
  ] }) });
6869
7063
  };
6870
7064
  var ActivityTemplateLabel_default = ActivityTemplateLabel;
6871
7065
 
6872
7066
  // src/components/labels/BrandLabel.tsx
6873
- var import_jsx_runtime50 = require("react/jsx-runtime");
7067
+ var import_jsx_runtime51 = require("react/jsx-runtime");
6874
7068
  var BrandLabel = ({ title, icon, font }) => {
6875
- 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: [
6876
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
6877
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: font ? font : "text-sm", children: title })
7069
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
7070
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
7071
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: font ? font : "text-sm", children: title })
6878
7072
  ] }) });
6879
7073
  };
6880
7074
  var BrandLabel_default = BrandLabel;
6881
7075
 
6882
7076
  // src/components/labels/CoterieLabel.tsx
6883
- var import_jsx_runtime51 = require("react/jsx-runtime");
7077
+ var import_jsx_runtime52 = require("react/jsx-runtime");
6884
7078
  var CoterieLabel = ({ title, font }) => {
6885
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: font ? font : "text-sm", children: title }) });
7079
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6886
7080
  };
6887
7081
  var CoterieLabel_default = CoterieLabel;
6888
7082
 
6889
7083
  // src/components/labels/GradeLabel.tsx
6890
- var import_jsx_runtime52 = require("react/jsx-runtime");
7084
+ var import_jsx_runtime53 = require("react/jsx-runtime");
6891
7085
  var GradeLabel = ({ title, font }) => {
6892
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("p", { className: font ? font : "text-sm", children: title }) });
7086
+ return /* @__PURE__ */ (0, import_jsx_runtime53.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_runtime53.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6893
7087
  };
6894
7088
  var GradeLabel_default = GradeLabel;
6895
7089
 
6896
7090
  // src/components/labels/OutcomeLabel.tsx
6897
- var import_jsx_runtime53 = require("react/jsx-runtime");
7091
+ var import_jsx_runtime54 = require("react/jsx-runtime");
6898
7092
  var OutcomeLabel = ({ title, font }) => {
6899
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6900
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
6901
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { className: font ? font : "text-sm", children: title })
7093
+ return /* @__PURE__ */ (0, import_jsx_runtime54.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_runtime54.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
7094
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
7095
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("p", { className: font ? font : "text-sm", children: title })
6902
7096
  ] }) });
6903
7097
  };
6904
7098
  var OutcomeLabel_default = OutcomeLabel;
6905
7099
 
6906
7100
  // src/components/labels/PersonalLabel.tsx
6907
- var import_jsx_runtime54 = require("react/jsx-runtime");
7101
+ var import_jsx_runtime55 = require("react/jsx-runtime");
6908
7102
  var PersonalLabel = ({ title, icon, font }) => {
6909
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-personal-label-border bg-personal-label text-personal-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6910
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
7103
+ return /* @__PURE__ */ (0, import_jsx_runtime55.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_runtime55.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
7104
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6911
7105
  BaseImage_default,
6912
7106
  {
6913
7107
  src: "/icons/personal-label.webp",
@@ -6915,16 +7109,16 @@ var PersonalLabel = ({ title, icon, font }) => {
6915
7109
  size: "xsmall"
6916
7110
  }
6917
7111
  ),
6918
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("p", { className: font ? font : "text-sm", children: title })
7112
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("p", { className: font ? font : "text-sm", children: title })
6919
7113
  ] }) });
6920
7114
  };
6921
7115
  var PersonalLabel_default = PersonalLabel;
6922
7116
 
6923
7117
  // src/components/labels/PublishingHouseLabel.tsx
6924
- var import_jsx_runtime55 = require("react/jsx-runtime");
7118
+ var import_jsx_runtime56 = require("react/jsx-runtime");
6925
7119
  var PublishingHouseLabel = ({ title, icon, font }) => {
6926
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6927
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
7120
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
7121
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
6928
7122
  BaseImage_default,
6929
7123
  {
6930
7124
  src: "/icons/publishing-house-label.webp",
@@ -6932,79 +7126,79 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
6932
7126
  size: "xsmall"
6933
7127
  }
6934
7128
  ),
6935
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("p", { className: font ? font : "text-sm", children: title })
7129
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("p", { className: font ? font : "text-sm", children: title })
6936
7130
  ] }) });
6937
7131
  };
6938
7132
  var PublishingHouseLabel_default = PublishingHouseLabel;
6939
7133
 
6940
7134
  // src/components/labels/ActivityLabel.tsx
6941
- var import_jsx_runtime56 = require("react/jsx-runtime");
7135
+ var import_jsx_runtime57 = require("react/jsx-runtime");
6942
7136
  var ActivityLabel = ({ title, font }) => {
6943
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("p", { className: font ? font : "text-sm", children: title }) });
7137
+ return /* @__PURE__ */ (0, import_jsx_runtime57.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_runtime57.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6944
7138
  };
6945
7139
  var ActivityLabel_default = ActivityLabel;
6946
7140
 
6947
7141
  // src/components/infos/InfoWithText.tsx
6948
- var import_jsx_runtime57 = require("react/jsx-runtime");
7142
+ var import_jsx_runtime58 = require("react/jsx-runtime");
6949
7143
  var InfoWithText = (props) => {
6950
7144
  const { value } = props;
6951
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6952
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
6953
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("p", { className: "", children: value }) })
7145
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
7146
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
7147
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: "", children: value }) })
6954
7148
  ] });
6955
7149
  };
6956
7150
  var InfoWithText_default = InfoWithText;
6957
7151
 
6958
7152
  // src/components/texts/InputWithSpecialExpression.tsx
6959
7153
  var import_react_katex12 = require("react-katex");
6960
- var import_jsx_runtime58 = require("react/jsx-runtime");
7154
+ var import_jsx_runtime59 = require("react/jsx-runtime");
6961
7155
  var InputWithSpecialExpression = ({
6962
7156
  value,
6963
7157
  showSpecialOnly
6964
7158
  }) => {
6965
7159
  const inputWithSpecialExpressionList = constructInputWithSpecialExpressionList(value);
6966
- return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
7160
+ return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6967
7161
  "span",
6968
7162
  {
6969
7163
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6970
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
7164
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6971
7165
  }
6972
- )) }) }) : null : /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
7166
+ )) }) }) : null : /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6973
7167
  "span",
6974
7168
  {
6975
7169
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6976
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
7170
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6977
7171
  }
6978
7172
  )) }) });
6979
7173
  };
6980
7174
  var InputWithSpecialExpression_default = InputWithSpecialExpression;
6981
7175
 
6982
7176
  // src/components/titles/BaseTitle.tsx
6983
- var import_jsx_runtime59 = require("react/jsx-runtime");
7177
+ var import_jsx_runtime60 = require("react/jsx-runtime");
6984
7178
  var BaseTitle = ({
6985
7179
  title,
6986
7180
  totalItemCount,
6987
7181
  itemName,
6988
7182
  description
6989
7183
  }) => {
6990
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex flex-col gap-y-2", children: [
6991
- /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("p", { className: "text-2xl font-medium", children: [
7184
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "flex flex-col gap-y-2", children: [
7185
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("p", { className: "text-2xl font-medium", children: [
6992
7186
  title,
6993
- totalItemCount && itemName ? /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("span", { className: "p-2 text-base text-catchup-blue-600 border border-catchup-blue-300 rounded-catchup-3xlarge mx-2 bg-catchup-blue-100", children: [
7187
+ totalItemCount && itemName ? /* @__PURE__ */ (0, import_jsx_runtime60.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: [
6994
7188
  totalItemCount,
6995
7189
  " ",
6996
7190
  itemName
6997
7191
  ] }) : null
6998
7192
  ] }),
6999
- description ? /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "", children: description }) : null
7193
+ description ? /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("p", { className: "", children: description }) : null
7000
7194
  ] });
7001
7195
  };
7002
7196
  var BaseTitle_default = BaseTitle;
7003
7197
 
7004
7198
  // src/components/titles/SubTitle.tsx
7005
- var import_jsx_runtime60 = require("react/jsx-runtime");
7199
+ var import_jsx_runtime61 = require("react/jsx-runtime");
7006
7200
  var SubTitle = ({ title }) => {
7007
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
7201
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
7008
7202
  };
7009
7203
  var SubTitle_default = SubTitle;
7010
7204
 
@@ -9455,6 +9649,7 @@ var retrieveActivityMethodologyOptionList = () => {
9455
9649
  ActivityEmptyContent,
9456
9650
  ActivityEvaluationRubricContent,
9457
9651
  ActivityLabel,
9652
+ ActivityPreviewByAnswerData,
9458
9653
  ActivityPreviewByData,
9459
9654
  ActivitySolutionContent,
9460
9655
  ActivityTemplateLabel,
package/dist/index.mjs CHANGED
@@ -6512,10 +6512,203 @@ var ActivityPreviewByData = ({
6512
6512
  };
6513
6513
  var ActivityPreviewByData_default = ActivityPreviewByData;
6514
6514
 
6515
+ // src/components/activities/ActivityPreviewByAnswerData.tsx
6516
+ import { useEffect as useEffect14, useState as useState22 } from "react";
6517
+ import { jsx as jsx44, jsxs as jsxs34 } from "react/jsx-runtime";
6518
+ var ActivityPreviewByAnswerData = ({
6519
+ data,
6520
+ showType = true,
6521
+ showDescription = true,
6522
+ lockedType = null,
6523
+ typeOptionList = [],
6524
+ showSolution = false,
6525
+ showEvaluationRubric = false,
6526
+ showTaxonomy = true,
6527
+ isFullScreen = false,
6528
+ showCorrectAnswer = false
6529
+ }) => {
6530
+ var _a;
6531
+ const [key, setKey] = useState22((/* @__PURE__ */ new Date()).getTime());
6532
+ const [selectedType, setSelectedType] = useState22(null);
6533
+ const [optionList, setOptionList] = useState22([]);
6534
+ const [answer, setAnswer] = useState22({ data: [] });
6535
+ useEffect14(() => {
6536
+ if (!data) return;
6537
+ setKey((/* @__PURE__ */ new Date()).getTime());
6538
+ }, [data]);
6539
+ const checkAnswerMapExists = (type) => {
6540
+ if (data && data.answerMap && Array.isArray(data.answerMap)) {
6541
+ const foundAnswer = data.answerMap.find(
6542
+ (answer2) => answer2.type === type
6543
+ );
6544
+ return foundAnswer || null;
6545
+ }
6546
+ return null;
6547
+ };
6548
+ const retrieveTaxonomyNameFromActivityType = (type) => {
6549
+ if (!data) return "";
6550
+ let taxonomyMap = { name: "" };
6551
+ const taxonomyMapNames = {
6552
+ ORDERING: "orderingTaxonomyMap",
6553
+ DROPDOWN: "dropdownTaxonomyMap",
6554
+ MCSA: "MCSATaxonomyMap",
6555
+ MCMA: "MCMATaxonomyMap",
6556
+ MATCHING: "matchingTaxonomyMap",
6557
+ GROUPING: "groupingTaxonomyMap",
6558
+ FILL_IN_THE_BLANKS: "fillInTheBlanksTaxonomyMap",
6559
+ OPEN_ENDED: "openEndedTaxonomyMap",
6560
+ TRUE_FALSE: "trueFalseTaxonomyMap"
6561
+ };
6562
+ const mapName = taxonomyMapNames[type];
6563
+ if (mapName && data[mapName]) {
6564
+ try {
6565
+ taxonomyMap = JSON.parse(data[mapName]);
6566
+ } catch (error) {
6567
+ console.error(`Error parsing taxonomy map for ${type}:`, error);
6568
+ }
6569
+ }
6570
+ return taxonomyMap.name || "";
6571
+ };
6572
+ useEffect14(() => {
6573
+ if (!data) return;
6574
+ const constructAnswerBasedOnData2 = () => {
6575
+ const newAnswer = { data: [] };
6576
+ const activityTypes = [
6577
+ { type: "ORDERING", materialMap: "orderingMaterialMap" },
6578
+ { type: "DROPDOWN", materialMap: "dropdownMaterialMap" },
6579
+ { type: "MCSA", materialMap: "MCSAMaterialMap" },
6580
+ { type: "MCMA", materialMap: "MCMAMaterialMap" },
6581
+ { type: "MATCHING", materialMap: "matchingMaterialMap" },
6582
+ { type: "GROUPING", materialMap: "groupingMaterialMap" },
6583
+ {
6584
+ type: "FILL_IN_THE_BLANKS",
6585
+ materialMap: "fillInTheBlanksMaterialMap"
6586
+ },
6587
+ { type: "OPEN_ENDED", materialMap: "openEndedMaterialMap" },
6588
+ { type: "TRUE_FALSE", materialMap: "trueFalseMaterialMap" }
6589
+ ];
6590
+ activityTypes.forEach(({ type, materialMap }) => {
6591
+ if (data[materialMap]) {
6592
+ const foundAnswer = checkAnswerMapExists(type);
6593
+ const answerItem = foundAnswer || constructActivityAnswerMap(
6594
+ { type },
6595
+ JSON.parse(JSON.stringify(data))
6596
+ );
6597
+ newAnswer.data.push(answerItem);
6598
+ }
6599
+ });
6600
+ setAnswer(newAnswer);
6601
+ if (newAnswer.data.length > 0) {
6602
+ if (lockedType && newAnswer.data.find((item) => item.type === lockedType)) {
6603
+ setSelectedType(lockedType);
6604
+ } else {
6605
+ setSelectedType(newAnswer.data[0].type);
6606
+ }
6607
+ }
6608
+ };
6609
+ constructAnswerBasedOnData2();
6610
+ }, [data, lockedType]);
6611
+ useEffect14(() => {
6612
+ if (!data || !answer.data.length) return;
6613
+ let currentTypeOptionList = typeOptionList || answer.data.map((item) => ({
6614
+ id: item.type,
6615
+ text: i18n_default.t(item.type)
6616
+ }));
6617
+ if (lockedType) {
6618
+ currentTypeOptionList = currentTypeOptionList.filter(
6619
+ (typeOption) => typeOption.id === lockedType
6620
+ );
6621
+ }
6622
+ if (showTaxonomy) {
6623
+ setOptionList(
6624
+ currentTypeOptionList.map((typeOption) => __spreadProps(__spreadValues({}, typeOption), {
6625
+ subText: i18n_default.t(retrieveTaxonomyNameFromActivityType(typeOption.id))
6626
+ }))
6627
+ );
6628
+ } else {
6629
+ setOptionList(currentTypeOptionList);
6630
+ }
6631
+ }, [data, answer.data, lockedType, typeOptionList, showTaxonomy]);
6632
+ const RenderSelectedActivityContent = () => {
6633
+ const commonProps = {
6634
+ answer,
6635
+ data,
6636
+ canAnswerQuestion: () => true,
6637
+ changeAnswer: (newAnswer) => setAnswer(JSON.parse(JSON.stringify(newAnswer))),
6638
+ isPreview: true,
6639
+ showCorrectAnswer,
6640
+ isFullScreen
6641
+ };
6642
+ switch (selectedType) {
6643
+ case "ORDERING":
6644
+ return data.orderingBodyMap && data.orderingMaterialMap ? /* @__PURE__ */ jsx44(OrderingActivityContent_default, __spreadValues({}, commonProps)) : null;
6645
+ case "DROPDOWN":
6646
+ return data.dropdownBodyMap && data.dropdownMaterialMap ? /* @__PURE__ */ jsx44(DropdownActivityContent_default, __spreadValues({}, commonProps)) : null;
6647
+ case "MCSA":
6648
+ return data.MCSABodyMap && data.MCSAMaterialMap ? /* @__PURE__ */ jsx44(MCSAActivityContent_default, __spreadValues({}, commonProps)) : null;
6649
+ case "MCMA":
6650
+ return data.MCMABodyMap && data.MCMAMaterialMap ? /* @__PURE__ */ jsx44(MCMAActivityContent_default, __spreadValues({}, commonProps)) : null;
6651
+ case "MATCHING":
6652
+ return data.matchingBodyMap && data.matchingMaterialMap ? /* @__PURE__ */ jsx44(MatchingActivityContent_default, __spreadValues({}, commonProps)) : null;
6653
+ case "GROUPING":
6654
+ return data.groupingBodyMap && data.groupingMaterialMap ? /* @__PURE__ */ jsx44(GroupingActivityContent_default, __spreadValues({}, commonProps)) : null;
6655
+ case "FILL_IN_THE_BLANKS":
6656
+ return data.fillInTheBlanksBodyMap && data.fillInTheBlanksMaterialMap ? /* @__PURE__ */ jsx44(FillInTheBlanksActivityContent_default, __spreadValues({}, commonProps)) : null;
6657
+ case "OPEN_ENDED":
6658
+ return data.openEndedBodyMap ? /* @__PURE__ */ jsx44(
6659
+ OpenEndedActivityContent_default,
6660
+ __spreadProps(__spreadValues({}, commonProps), {
6661
+ showMaterialContent: true
6662
+ })
6663
+ ) : null;
6664
+ case "TRUE_FALSE":
6665
+ return data.trueFalseBodyMap && data.trueFalseMaterialMap ? /* @__PURE__ */ jsx44(TrueFalseActivityContent_default, __spreadValues({}, commonProps)) : null;
6666
+ default:
6667
+ return null;
6668
+ }
6669
+ };
6670
+ if (!data) return null;
6671
+ return /* @__PURE__ */ jsxs34("div", { children: [
6672
+ showType && optionList.length > 0 ? /* @__PURE__ */ jsxs34("div", { className: "mb-4", children: [
6673
+ showDescription ? /* @__PURE__ */ jsx44("div", { className: "my-2", children: /* @__PURE__ */ jsx44("p", { className: "font-semibold text-lg", children: i18n_default.t("activity_template") }) }) : null,
6674
+ /* @__PURE__ */ jsx44(
6675
+ SelectionBox_default,
6676
+ {
6677
+ optionList,
6678
+ selectedId: selectedType,
6679
+ handleSelectOnClick: (itemId) => {
6680
+ setSelectedType(itemId);
6681
+ }
6682
+ }
6683
+ )
6684
+ ] }) : null,
6685
+ /* @__PURE__ */ jsx44(DividerLine_default, {}),
6686
+ /* @__PURE__ */ jsxs34("div", { className: "flex flex-col my-2 w-full p-5", children: [
6687
+ ((_a = answer == null ? void 0 : answer.data[0]) == null ? void 0 : _a.isEmpty) ? /* @__PURE__ */ jsx44(ActivityEmptyContent_default, {}) : null,
6688
+ selectedType ? /* @__PURE__ */ jsx44("div", { children: RenderSelectedActivityContent() }, selectedType) : null
6689
+ ] }),
6690
+ selectedType && showSolution ? /* @__PURE__ */ jsx44("div", { className: "my-4", children: /* @__PURE__ */ jsx44(
6691
+ ActivitySolutionContent_default,
6692
+ {
6693
+ activityTemplateType: selectedType,
6694
+ data
6695
+ }
6696
+ ) }) : null,
6697
+ selectedType && showEvaluationRubric ? /* @__PURE__ */ jsx44("div", { className: "my-4", children: /* @__PURE__ */ jsx44(
6698
+ ActivityEvaluationRubricContent_default,
6699
+ {
6700
+ activityTemplateType: selectedType,
6701
+ data
6702
+ }
6703
+ ) }) : null
6704
+ ] }, key);
6705
+ };
6706
+ var ActivityPreviewByAnswerData_default = ActivityPreviewByAnswerData;
6707
+
6515
6708
  // src/components/dividers/BlueVerticalDividerLine.tsx
6516
- import { jsx as jsx44 } from "react/jsx-runtime";
6709
+ import { jsx as jsx45 } from "react/jsx-runtime";
6517
6710
  var BlueVerticalDividerLine = ({ opacity }) => {
6518
- return /* @__PURE__ */ jsx44(
6711
+ return /* @__PURE__ */ jsx45(
6519
6712
  "div",
6520
6713
  {
6521
6714
  className: `w-[2px] h-[40px] my-4 bg-catchup-blue ${opacity === "medium" ? "opacity-50" : ""}`
@@ -6525,7 +6718,7 @@ var BlueVerticalDividerLine = ({ opacity }) => {
6525
6718
  var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
6526
6719
 
6527
6720
  // src/components/groups/LeftTextRightInputGroup.tsx
6528
- import { jsx as jsx45, jsxs as jsxs34 } from "react/jsx-runtime";
6721
+ import { jsx as jsx46, jsxs as jsxs35 } from "react/jsx-runtime";
6529
6722
  var LeftTextRightInputGroup = ({
6530
6723
  type,
6531
6724
  title,
@@ -6535,9 +6728,9 @@ var LeftTextRightInputGroup = ({
6535
6728
  disabled,
6536
6729
  errorText
6537
6730
  }) => {
6538
- return /* @__PURE__ */ jsxs34("div", { className: "w-full flex flex-row mx-2", children: [
6539
- /* @__PURE__ */ jsx45("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ jsx45("p", { children: title }) }),
6540
- /* @__PURE__ */ jsx45("div", { className: "flex-1", children: /* @__PURE__ */ jsx45(
6731
+ return /* @__PURE__ */ jsxs35("div", { className: "w-full flex flex-row mx-2", children: [
6732
+ /* @__PURE__ */ jsx46("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ jsx46("p", { children: title }) }),
6733
+ /* @__PURE__ */ jsx46("div", { className: "flex-1", children: /* @__PURE__ */ jsx46(
6541
6734
  InputGroup_default,
6542
6735
  {
6543
6736
  type,
@@ -6553,14 +6746,14 @@ var LeftTextRightInputGroup = ({
6553
6746
  var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
6554
6747
 
6555
6748
  // src/components/boxes/SelectionCheckbox.tsx
6556
- import { jsx as jsx46, jsxs as jsxs35 } from "react/jsx-runtime";
6749
+ import { jsx as jsx47, jsxs as jsxs36 } from "react/jsx-runtime";
6557
6750
  var SelectionCheckbox = ({
6558
6751
  optionList,
6559
6752
  selectedIdList,
6560
6753
  handleSelectOnClick,
6561
6754
  handleRemoveOnClick
6562
6755
  }) => {
6563
- return /* @__PURE__ */ jsx46("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx46(
6756
+ return /* @__PURE__ */ jsx47("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx47(
6564
6757
  "div",
6565
6758
  {
6566
6759
  className: `${selectedIdList.findIndex(
@@ -6575,14 +6768,14 @@ var SelectionCheckbox = ({
6575
6768
  handleRemoveOnClick(option.id);
6576
6769
  }
6577
6770
  },
6578
- children: /* @__PURE__ */ jsxs35(
6771
+ children: /* @__PURE__ */ jsxs36(
6579
6772
  "div",
6580
6773
  {
6581
6774
  className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
6582
6775
  (selectedId) => selectedId === option.id
6583
6776
  ) > -1 ? "opacity-100" : "opacity-50"}`,
6584
6777
  children: [
6585
- /* @__PURE__ */ jsx46(
6778
+ /* @__PURE__ */ jsx47(
6586
6779
  BaseImage_default,
6587
6780
  {
6588
6781
  src: selectedIdList.findIndex(
@@ -6592,7 +6785,7 @@ var SelectionCheckbox = ({
6592
6785
  size: "small"
6593
6786
  }
6594
6787
  ),
6595
- /* @__PURE__ */ jsx46("div", { className: "flex-1", children: /* @__PURE__ */ jsx46("p", { children: option.text }) })
6788
+ /* @__PURE__ */ jsx47("div", { className: "flex-1", children: /* @__PURE__ */ jsx47("p", { children: option.text }) })
6596
6789
  ]
6597
6790
  }
6598
6791
  )
@@ -6603,7 +6796,7 @@ var SelectionCheckbox = ({
6603
6796
  var SelectionCheckbox_default = SelectionCheckbox;
6604
6797
 
6605
6798
  // src/components/tabs/SelectionTab.tsx
6606
- import { jsx as jsx47, jsxs as jsxs36 } from "react/jsx-runtime";
6799
+ import { jsx as jsx48, jsxs as jsxs37 } from "react/jsx-runtime";
6607
6800
  var SelectionTab = ({
6608
6801
  optionList,
6609
6802
  selectedId,
@@ -6613,7 +6806,7 @@ var SelectionTab = ({
6613
6806
  textColor,
6614
6807
  borderColor
6615
6808
  }) => {
6616
- return /* @__PURE__ */ jsx47("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__ */ jsxs36(
6809
+ return /* @__PURE__ */ jsx48("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__ */ jsxs37(
6617
6810
  "div",
6618
6811
  {
6619
6812
  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`,
@@ -6621,8 +6814,8 @@ var SelectionTab = ({
6621
6814
  handleSelectOnClick(option.id);
6622
6815
  },
6623
6816
  children: [
6624
- /* @__PURE__ */ jsx47("p", { className: "text-lg", children: option.title }),
6625
- option.subTitle ? /* @__PURE__ */ jsx47("p", { className: "text-md", children: option.subTitle }) : null
6817
+ /* @__PURE__ */ jsx48("p", { className: "text-lg", children: option.title }),
6818
+ option.subTitle ? /* @__PURE__ */ jsx48("p", { className: "text-md", children: option.subTitle }) : null
6626
6819
  ]
6627
6820
  },
6628
6821
  index
@@ -6631,20 +6824,20 @@ var SelectionTab = ({
6631
6824
  var SelectionTab_default = SelectionTab;
6632
6825
 
6633
6826
  // src/components/tabs/SelectionTabFill.tsx
6634
- import { jsx as jsx48 } from "react/jsx-runtime";
6827
+ import { jsx as jsx49 } from "react/jsx-runtime";
6635
6828
  var SelectionTabFill = ({
6636
6829
  optionList,
6637
6830
  selectedId,
6638
6831
  handleSelectOnClick
6639
6832
  }) => {
6640
- return /* @__PURE__ */ jsx48("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__ */ jsx48(
6833
+ return /* @__PURE__ */ jsx49("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__ */ jsx49(
6641
6834
  "div",
6642
6835
  {
6643
6836
  className: "cursor-pointer",
6644
6837
  onClick: () => {
6645
6838
  handleSelectOnClick(option.id);
6646
6839
  },
6647
- children: /* @__PURE__ */ jsx48(
6840
+ children: /* @__PURE__ */ jsx49(
6648
6841
  "p",
6649
6842
  {
6650
6843
  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`,
@@ -6658,57 +6851,57 @@ var SelectionTabFill = ({
6658
6851
  var SelectionTabFill_default = SelectionTabFill;
6659
6852
 
6660
6853
  // src/components/labels/ActivityTemplateLabel.tsx
6661
- import { jsx as jsx49, jsxs as jsxs37 } from "react/jsx-runtime";
6854
+ import { jsx as jsx50, jsxs as jsxs38 } from "react/jsx-runtime";
6662
6855
  var ActivityTemplateLabel = ({
6663
6856
  title,
6664
6857
  font
6665
6858
  }) => {
6666
- 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__ */ jsxs37("div", { className: "flex flex-row items-center gap-x-2", children: [
6667
- /* @__PURE__ */ jsx49(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
6668
- /* @__PURE__ */ jsx49("p", { className: font ? font : "text-sm", children: title })
6859
+ return /* @__PURE__ */ jsx50("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__ */ jsxs38("div", { className: "flex flex-row items-center gap-x-2", children: [
6860
+ /* @__PURE__ */ jsx50(BaseImage_default, { src: "/icons/activity.webp", alt: "label", size: "xsmall" }),
6861
+ /* @__PURE__ */ jsx50("p", { className: font ? font : "text-sm", children: title })
6669
6862
  ] }) });
6670
6863
  };
6671
6864
  var ActivityTemplateLabel_default = ActivityTemplateLabel;
6672
6865
 
6673
6866
  // src/components/labels/BrandLabel.tsx
6674
- import { jsx as jsx50, jsxs as jsxs38 } from "react/jsx-runtime";
6867
+ import { jsx as jsx51, jsxs as jsxs39 } from "react/jsx-runtime";
6675
6868
  var BrandLabel = ({ title, icon, font }) => {
6676
- 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: [
6677
- icon ? icon : /* @__PURE__ */ jsx50(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
6678
- /* @__PURE__ */ jsx50("p", { className: font ? font : "text-sm", children: title })
6869
+ return /* @__PURE__ */ jsx51("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__ */ jsxs39("div", { className: "flex flex-row items-center gap-x-2", children: [
6870
+ icon ? icon : /* @__PURE__ */ jsx51(BaseImage_default, { src: "/icons/brand-label.webp", alt: "label", size: "xsmall" }),
6871
+ /* @__PURE__ */ jsx51("p", { className: font ? font : "text-sm", children: title })
6679
6872
  ] }) });
6680
6873
  };
6681
6874
  var BrandLabel_default = BrandLabel;
6682
6875
 
6683
6876
  // src/components/labels/CoterieLabel.tsx
6684
- import { jsx as jsx51 } from "react/jsx-runtime";
6877
+ import { jsx as jsx52 } from "react/jsx-runtime";
6685
6878
  var CoterieLabel = ({ title, font }) => {
6686
- return /* @__PURE__ */ jsx51("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__ */ jsx51("p", { className: font ? font : "text-sm", children: title }) });
6879
+ return /* @__PURE__ */ jsx52("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__ */ jsx52("p", { className: font ? font : "text-sm", children: title }) });
6687
6880
  };
6688
6881
  var CoterieLabel_default = CoterieLabel;
6689
6882
 
6690
6883
  // src/components/labels/GradeLabel.tsx
6691
- import { jsx as jsx52 } from "react/jsx-runtime";
6884
+ import { jsx as jsx53 } from "react/jsx-runtime";
6692
6885
  var GradeLabel = ({ title, font }) => {
6693
- return /* @__PURE__ */ jsx52("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__ */ jsx52("p", { className: font ? font : "text-sm", children: title }) });
6886
+ return /* @__PURE__ */ jsx53("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__ */ jsx53("p", { className: font ? font : "text-sm", children: title }) });
6694
6887
  };
6695
6888
  var GradeLabel_default = GradeLabel;
6696
6889
 
6697
6890
  // src/components/labels/OutcomeLabel.tsx
6698
- import { jsx as jsx53, jsxs as jsxs39 } from "react/jsx-runtime";
6891
+ import { jsx as jsx54, jsxs as jsxs40 } from "react/jsx-runtime";
6699
6892
  var OutcomeLabel = ({ title, font }) => {
6700
- return /* @__PURE__ */ jsx53("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__ */ jsxs39("div", { className: "flex flex-row items-center gap-x-2", children: [
6701
- /* @__PURE__ */ jsx53(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
6702
- /* @__PURE__ */ jsx53("p", { className: font ? font : "text-sm", children: title })
6893
+ return /* @__PURE__ */ jsx54("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__ */ jsxs40("div", { className: "flex flex-row items-center gap-x-2", children: [
6894
+ /* @__PURE__ */ jsx54(BaseImage_default, { src: "/icons/category.webp", alt: "label", size: "xsmall" }),
6895
+ /* @__PURE__ */ jsx54("p", { className: font ? font : "text-sm", children: title })
6703
6896
  ] }) });
6704
6897
  };
6705
6898
  var OutcomeLabel_default = OutcomeLabel;
6706
6899
 
6707
6900
  // src/components/labels/PersonalLabel.tsx
6708
- import { jsx as jsx54, jsxs as jsxs40 } from "react/jsx-runtime";
6901
+ import { jsx as jsx55, jsxs as jsxs41 } from "react/jsx-runtime";
6709
6902
  var PersonalLabel = ({ title, icon, font }) => {
6710
- return /* @__PURE__ */ jsx54("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__ */ jsxs40("div", { className: "flex flex-row items-center gap-x-2", children: [
6711
- icon ? icon : /* @__PURE__ */ jsx54(
6903
+ return /* @__PURE__ */ jsx55("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__ */ jsxs41("div", { className: "flex flex-row items-center gap-x-2", children: [
6904
+ icon ? icon : /* @__PURE__ */ jsx55(
6712
6905
  BaseImage_default,
6713
6906
  {
6714
6907
  src: "/icons/personal-label.webp",
@@ -6716,16 +6909,16 @@ var PersonalLabel = ({ title, icon, font }) => {
6716
6909
  size: "xsmall"
6717
6910
  }
6718
6911
  ),
6719
- /* @__PURE__ */ jsx54("p", { className: font ? font : "text-sm", children: title })
6912
+ /* @__PURE__ */ jsx55("p", { className: font ? font : "text-sm", children: title })
6720
6913
  ] }) });
6721
6914
  };
6722
6915
  var PersonalLabel_default = PersonalLabel;
6723
6916
 
6724
6917
  // src/components/labels/PublishingHouseLabel.tsx
6725
- import { jsx as jsx55, jsxs as jsxs41 } from "react/jsx-runtime";
6918
+ import { jsx as jsx56, jsxs as jsxs42 } from "react/jsx-runtime";
6726
6919
  var PublishingHouseLabel = ({ title, icon, font }) => {
6727
- return /* @__PURE__ */ jsx55("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__ */ jsxs41("div", { className: "flex flex-row items-center gap-x-2", children: [
6728
- icon ? icon : /* @__PURE__ */ jsx55(
6920
+ return /* @__PURE__ */ jsx56("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__ */ jsxs42("div", { className: "flex flex-row items-center gap-x-2", children: [
6921
+ icon ? icon : /* @__PURE__ */ jsx56(
6729
6922
  BaseImage_default,
6730
6923
  {
6731
6924
  src: "/icons/publishing-house-label.webp",
@@ -6733,79 +6926,79 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
6733
6926
  size: "xsmall"
6734
6927
  }
6735
6928
  ),
6736
- /* @__PURE__ */ jsx55("p", { className: font ? font : "text-sm", children: title })
6929
+ /* @__PURE__ */ jsx56("p", { className: font ? font : "text-sm", children: title })
6737
6930
  ] }) });
6738
6931
  };
6739
6932
  var PublishingHouseLabel_default = PublishingHouseLabel;
6740
6933
 
6741
6934
  // src/components/labels/ActivityLabel.tsx
6742
- import { jsx as jsx56 } from "react/jsx-runtime";
6935
+ import { jsx as jsx57 } from "react/jsx-runtime";
6743
6936
  var ActivityLabel = ({ title, font }) => {
6744
- return /* @__PURE__ */ jsx56("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__ */ jsx56("p", { className: font ? font : "text-sm", children: title }) });
6937
+ return /* @__PURE__ */ jsx57("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__ */ jsx57("p", { className: font ? font : "text-sm", children: title }) });
6745
6938
  };
6746
6939
  var ActivityLabel_default = ActivityLabel;
6747
6940
 
6748
6941
  // src/components/infos/InfoWithText.tsx
6749
- import { jsx as jsx57, jsxs as jsxs42 } from "react/jsx-runtime";
6942
+ import { jsx as jsx58, jsxs as jsxs43 } from "react/jsx-runtime";
6750
6943
  var InfoWithText = (props) => {
6751
6944
  const { value } = props;
6752
- return /* @__PURE__ */ jsxs42("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6753
- /* @__PURE__ */ jsx57(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
6754
- /* @__PURE__ */ jsx57("div", { className: "flex-1", children: /* @__PURE__ */ jsx57("p", { className: "", children: value }) })
6945
+ return /* @__PURE__ */ jsxs43("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6946
+ /* @__PURE__ */ jsx58(BaseImage_default, { src: "/icons/info.webp", alt: "info", size: "small" }),
6947
+ /* @__PURE__ */ jsx58("div", { className: "flex-1", children: /* @__PURE__ */ jsx58("p", { className: "", children: value }) })
6755
6948
  ] });
6756
6949
  };
6757
6950
  var InfoWithText_default = InfoWithText;
6758
6951
 
6759
6952
  // src/components/texts/InputWithSpecialExpression.tsx
6760
6953
  import { InlineMath as InlineMath12 } from "react-katex";
6761
- import { jsx as jsx58 } from "react/jsx-runtime";
6954
+ import { jsx as jsx59 } from "react/jsx-runtime";
6762
6955
  var InputWithSpecialExpression = ({
6763
6956
  value,
6764
6957
  showSpecialOnly
6765
6958
  }) => {
6766
6959
  const inputWithSpecialExpressionList = constructInputWithSpecialExpressionList(value);
6767
- return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ jsx58("div", { className: "m-2", children: /* @__PURE__ */ jsx58("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx58(
6960
+ return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ jsx59("div", { className: "m-2", children: /* @__PURE__ */ jsx59("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx59(
6768
6961
  "span",
6769
6962
  {
6770
6963
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6771
- children: inputPart.isEquation ? /* @__PURE__ */ jsx58("span", { className: "text-lg", children: /* @__PURE__ */ jsx58(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6964
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx59("span", { className: "text-lg", children: /* @__PURE__ */ jsx59(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6772
6965
  }
6773
- )) }) }) : null : /* @__PURE__ */ jsx58("div", { className: "m-2", children: /* @__PURE__ */ jsx58("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx58(
6966
+ )) }) }) : null : /* @__PURE__ */ jsx59("div", { className: "m-2", children: /* @__PURE__ */ jsx59("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx59(
6774
6967
  "span",
6775
6968
  {
6776
6969
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6777
- children: inputPart.isEquation ? /* @__PURE__ */ jsx58("span", { className: "text-lg", children: /* @__PURE__ */ jsx58(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6970
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx59("span", { className: "text-lg", children: /* @__PURE__ */ jsx59(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6778
6971
  }
6779
6972
  )) }) });
6780
6973
  };
6781
6974
  var InputWithSpecialExpression_default = InputWithSpecialExpression;
6782
6975
 
6783
6976
  // src/components/titles/BaseTitle.tsx
6784
- import { jsx as jsx59, jsxs as jsxs43 } from "react/jsx-runtime";
6977
+ import { jsx as jsx60, jsxs as jsxs44 } from "react/jsx-runtime";
6785
6978
  var BaseTitle = ({
6786
6979
  title,
6787
6980
  totalItemCount,
6788
6981
  itemName,
6789
6982
  description
6790
6983
  }) => {
6791
- return /* @__PURE__ */ jsxs43("div", { className: "flex flex-col gap-y-2", children: [
6792
- /* @__PURE__ */ jsxs43("p", { className: "text-2xl font-medium", children: [
6984
+ return /* @__PURE__ */ jsxs44("div", { className: "flex flex-col gap-y-2", children: [
6985
+ /* @__PURE__ */ jsxs44("p", { className: "text-2xl font-medium", children: [
6793
6986
  title,
6794
- totalItemCount && itemName ? /* @__PURE__ */ jsxs43("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: [
6987
+ totalItemCount && itemName ? /* @__PURE__ */ jsxs44("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: [
6795
6988
  totalItemCount,
6796
6989
  " ",
6797
6990
  itemName
6798
6991
  ] }) : null
6799
6992
  ] }),
6800
- description ? /* @__PURE__ */ jsx59("p", { className: "", children: description }) : null
6993
+ description ? /* @__PURE__ */ jsx60("p", { className: "", children: description }) : null
6801
6994
  ] });
6802
6995
  };
6803
6996
  var BaseTitle_default = BaseTitle;
6804
6997
 
6805
6998
  // src/components/titles/SubTitle.tsx
6806
- import { jsx as jsx60 } from "react/jsx-runtime";
6999
+ import { jsx as jsx61 } from "react/jsx-runtime";
6807
7000
  var SubTitle = ({ title }) => {
6808
- return /* @__PURE__ */ jsx60("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
7001
+ return /* @__PURE__ */ jsx61("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
6809
7002
  };
6810
7003
  var SubTitle_default = SubTitle;
6811
7004
 
@@ -9255,6 +9448,7 @@ export {
9255
9448
  ActivityEmptyContent_default as ActivityEmptyContent,
9256
9449
  ActivityEvaluationRubricContent_default as ActivityEvaluationRubricContent,
9257
9450
  ActivityLabel_default as ActivityLabel,
9451
+ ActivityPreviewByAnswerData_default as ActivityPreviewByAnswerData,
9258
9452
  ActivityPreviewByData_default as ActivityPreviewByData,
9259
9453
  ActivitySolutionContent_default as ActivitySolutionContent,
9260
9454
  ActivityTemplateLabel_default as ActivityTemplateLabel,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "catchup-library-web",
3
- "version": "1.11.1",
3
+ "version": "1.11.2",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
package/src/index.ts CHANGED
@@ -26,6 +26,7 @@ export { default as TrueFalseActivityContent } from "./components/activities/Tru
26
26
  export { default as ActivitySolutionContent } from "./components/activities/solution-content/ActivitySolutionContent";
27
27
  export { default as ActivityEvaluationRubricContent } from "./components/activities/evaluation-rubric-content/ActivityEvaluationRubricContent";
28
28
  export { default as ActivityPreviewByData } from "./components/activities/ActivityPreviewByData";
29
+ export { default as ActivityPreviewByAnswerData } from "./components/activities/ActivityPreviewByAnswerData";
29
30
 
30
31
  export { default as BlueVerticalDividerLine } from "./components/dividers/BlueVerticalDividerLine";
31
32
  export { default as DividerLine } from "./components/dividers/DividerLine";