catchup-library-web 1.2.10 → 1.2.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -212,9 +212,20 @@ interface IInputGroupProps {
212
212
  disabled?: boolean;
213
213
  limit?: number;
214
214
  }
215
+ interface ILeftTextRightInputGroupProps {
216
+ type: string;
217
+ title?: string;
218
+ value: string;
219
+ optionList?: any;
220
+ onChange?: (e: any) => void;
221
+ disabled?: boolean;
222
+ errorText?: string;
223
+ }
215
224
 
216
225
  declare const InputGroup: ({ type, title, defaultValue, placeholder, value, onFocus, onChange, onClick, onKeyDown, optionList, errorText, multiple, accept, theme, useMinHeight, disabled, limit, }: IInputGroupProps) => react_jsx_runtime.JSX.Element | undefined;
217
226
 
227
+ declare const LeftTextRightInputGroup: ({ type, title, value, optionList, onChange, disabled, errorText, }: ILeftTextRightInputGroupProps) => react_jsx_runtime.JSX.Element;
228
+
218
229
  declare const useScreenSize: () => {
219
230
  screenSize: {
220
231
  width: number;
@@ -254,6 +265,8 @@ interface ISelectionTabProps {
254
265
 
255
266
  declare const SelectionTab: ({ optionList, selectedId, handleSelectOnClick, selectedTextColor, selectedBorderColor, textColor, borderColor, }: ISelectionTabProps) => react_jsx_runtime.JSX.Element;
256
267
 
268
+ declare const SelectionTabFill: ({ optionList, selectedId, handleSelectOnClick, }: ISelectionTabProps) => react_jsx_runtime.JSX.Element;
269
+
257
270
  interface IActivityTemplateLabelProps {
258
271
  title: string;
259
272
  font: string;
@@ -313,6 +326,20 @@ interface IInputWithSpecialExpressionProps {
313
326
 
314
327
  declare const InputWithSpecialExpression: ({ value, showSpecialOnly, }: IInputWithSpecialExpressionProps) => react_jsx_runtime.JSX.Element | null;
315
328
 
329
+ interface IBaseTitleProps {
330
+ title: string;
331
+ totalItemCount: number;
332
+ itemName: string;
333
+ description: string;
334
+ }
335
+ interface ISubTitleProps {
336
+ title: string;
337
+ }
338
+
339
+ declare const BaseTitle: ({ title, totalItemCount, itemName, description, }: IBaseTitleProps) => react_jsx_runtime.JSX.Element;
340
+
341
+ declare const SubTitle: ({ title }: ISubTitleProps) => react_jsx_runtime.JSX.Element;
342
+
316
343
  declare const shuffleArray: (array: any) => any;
317
344
  declare const getColorByIndex: (index: number) => string;
318
345
 
@@ -652,4 +679,4 @@ declare const retrieveTokenUsageSubTypeOptionList: () => {
652
679
  value: string;
653
680
  }[];
654
681
 
655
- export { ActivityPreviewByData, ActivitySolutionContent, ActivityTemplateLabel, ApproveButton, BaseImage, BaseLoading, BaseLoadingWithText, BaseModal, BlueVerticalDividerLine, BrandLabel, CancelButton, CoterieLabel, CreateButton, DeleteButton, DividerLine, DropdownActivityContent, FillInTheBlanksActivityContent, GradeLabel, GroupingActivityContent, InfoWithText, InputGroup, InputWithSpecialExpression, MCMAActivityContent, MCSAActivityContent, MatchingActivityContent, ONE_DAY, ONE_HOUR, ONE_MONTH, ONE_WEEK, OpenEndedActivityContent, OrderingActivityContent, OutcomeLabel, PersonalLabel, PrimaryButton, PublishingHouseLabel, SecondaryButton, SelectionBox, SelectionCheckbox, SelectionTab, THREE_MONTHS, TrueFalseActivityContent, VerticalDividerLine, base64ToFile, calculateLevenshteinDistance, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructInputWithSpecialExpressionList, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, 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, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
682
+ export { 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, base64ToFile, calculateLevenshteinDistance, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructInputWithSpecialExpressionList, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, 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, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
package/dist/index.d.ts CHANGED
@@ -212,9 +212,20 @@ interface IInputGroupProps {
212
212
  disabled?: boolean;
213
213
  limit?: number;
214
214
  }
215
+ interface ILeftTextRightInputGroupProps {
216
+ type: string;
217
+ title?: string;
218
+ value: string;
219
+ optionList?: any;
220
+ onChange?: (e: any) => void;
221
+ disabled?: boolean;
222
+ errorText?: string;
223
+ }
215
224
 
216
225
  declare const InputGroup: ({ type, title, defaultValue, placeholder, value, onFocus, onChange, onClick, onKeyDown, optionList, errorText, multiple, accept, theme, useMinHeight, disabled, limit, }: IInputGroupProps) => react_jsx_runtime.JSX.Element | undefined;
217
226
 
227
+ declare const LeftTextRightInputGroup: ({ type, title, value, optionList, onChange, disabled, errorText, }: ILeftTextRightInputGroupProps) => react_jsx_runtime.JSX.Element;
228
+
218
229
  declare const useScreenSize: () => {
219
230
  screenSize: {
220
231
  width: number;
@@ -254,6 +265,8 @@ interface ISelectionTabProps {
254
265
 
255
266
  declare const SelectionTab: ({ optionList, selectedId, handleSelectOnClick, selectedTextColor, selectedBorderColor, textColor, borderColor, }: ISelectionTabProps) => react_jsx_runtime.JSX.Element;
256
267
 
268
+ declare const SelectionTabFill: ({ optionList, selectedId, handleSelectOnClick, }: ISelectionTabProps) => react_jsx_runtime.JSX.Element;
269
+
257
270
  interface IActivityTemplateLabelProps {
258
271
  title: string;
259
272
  font: string;
@@ -313,6 +326,20 @@ interface IInputWithSpecialExpressionProps {
313
326
 
314
327
  declare const InputWithSpecialExpression: ({ value, showSpecialOnly, }: IInputWithSpecialExpressionProps) => react_jsx_runtime.JSX.Element | null;
315
328
 
329
+ interface IBaseTitleProps {
330
+ title: string;
331
+ totalItemCount: number;
332
+ itemName: string;
333
+ description: string;
334
+ }
335
+ interface ISubTitleProps {
336
+ title: string;
337
+ }
338
+
339
+ declare const BaseTitle: ({ title, totalItemCount, itemName, description, }: IBaseTitleProps) => react_jsx_runtime.JSX.Element;
340
+
341
+ declare const SubTitle: ({ title }: ISubTitleProps) => react_jsx_runtime.JSX.Element;
342
+
316
343
  declare const shuffleArray: (array: any) => any;
317
344
  declare const getColorByIndex: (index: number) => string;
318
345
 
@@ -652,4 +679,4 @@ declare const retrieveTokenUsageSubTypeOptionList: () => {
652
679
  value: string;
653
680
  }[];
654
681
 
655
- export { ActivityPreviewByData, ActivitySolutionContent, ActivityTemplateLabel, ApproveButton, BaseImage, BaseLoading, BaseLoadingWithText, BaseModal, BlueVerticalDividerLine, BrandLabel, CancelButton, CoterieLabel, CreateButton, DeleteButton, DividerLine, DropdownActivityContent, FillInTheBlanksActivityContent, GradeLabel, GroupingActivityContent, InfoWithText, InputGroup, InputWithSpecialExpression, MCMAActivityContent, MCSAActivityContent, MatchingActivityContent, ONE_DAY, ONE_HOUR, ONE_MONTH, ONE_WEEK, OpenEndedActivityContent, OrderingActivityContent, OutcomeLabel, PersonalLabel, PrimaryButton, PublishingHouseLabel, SecondaryButton, SelectionBox, SelectionCheckbox, SelectionTab, THREE_MONTHS, TrueFalseActivityContent, VerticalDividerLine, base64ToFile, calculateLevenshteinDistance, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructInputWithSpecialExpressionList, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, 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, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
682
+ export { 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, base64ToFile, calculateLevenshteinDistance, checkActivityAnswerState, checkIfAnswerIsEmpty, constructActivityAnswerMap, constructActivityAnswerStateList, constructActivityData, constructActivityItemListBodyOnly, constructActivityItemListMaterialOnly, constructActivityItemListSolutionOnly, constructActivityItemListWithAnswersForAI, constructActivityItemListWithSolutionForAI, constructAnswerBasedOnData, constructBaseNumericIndividualModel, constructBaseVerbalIndvidualModel, constructInputWithSpecialExpressionList, constructUserProfileQueryParams, constructWeekName, convertDataURLtoFile, convertToBase64, convertToBodyMapString, convertToEvaluationRubricMapString, convertToSolutionMapString, convertTurkishCharactersToEnglish, filterCategoryVersionCodeOptionList, filterCategoryVersionCodeOptionListByGradeDTO, filterCategoryVersionCodeOptionListByInstitutionDTO, filterCoterieTypeOptionList, filterGradeLevelOptionList, filterUserRoleOptionList, findAISettingsFromCurrentProfile, findBestFitActivity, getColorByIndex, ignoreMathematicalExpression, mergeObjects, parseBodyMapFromData, parseContentMapFromData, parseJwt, parseMaterialMapFromData, retrieveActivityAnswerFromAnswerList, 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, retrievePhoneNumberAreaCodeList, retrieveProvinceNameOptionList, retrieveReportTypeOptionList, retrieveSeasonDTOByUserProfileOptionList, retrieveSeasonDTOOptionList, retrieveStandardExamCoterieTypeOptionListByStandardExamType, retrieveStandardExamTypeIcon, retrieveStandardExamTypeOptionList, retrieveStatusOptionList, retrieveTaxonomyGroupName, retrieveTaxonomyName, retrieveTaxonomyType, retrieveTokenUsageSubTypeOptionList, retrieveTokenUsageTypeOptionList, retrieveTotalTimeSpentInMinutes, retrieveTotalTimeSpentInSeconds, retrieveUserAuthorityGeneralOptionList, retrieveUserRoleOptionList, retrieveValidationRequirementList, shuffleArray, useScreenSize };
package/dist/index.js CHANGED
@@ -75,6 +75,7 @@ __export(index_exports, {
75
75
  BaseLoading: () => BaseLoading_default,
76
76
  BaseLoadingWithText: () => BaseLoadingWithText_default,
77
77
  BaseModal: () => BaseModal_default,
78
+ BaseTitle: () => BaseTitle_default,
78
79
  BlueVerticalDividerLine: () => BlueVerticalDividerLine_default,
79
80
  BrandLabel: () => BrandLabel_default,
80
81
  CancelButton: () => CancelButton_default,
@@ -89,6 +90,7 @@ __export(index_exports, {
89
90
  InfoWithText: () => InfoWithText_default,
90
91
  InputGroup: () => InputGroup_default,
91
92
  InputWithSpecialExpression: () => InputWithSpecialExpression_default,
93
+ LeftTextRightInputGroup: () => LeftTextRightInputGroup_default,
92
94
  MCMAActivityContent: () => MCMAActivityContent_default,
93
95
  MCSAActivityContent: () => MCSAActivityContent_default,
94
96
  MatchingActivityContent: () => MatchingActivityContent_default,
@@ -106,6 +108,8 @@ __export(index_exports, {
106
108
  SelectionBox: () => SelectionBox_default,
107
109
  SelectionCheckbox: () => SelectionCheckbox_default,
108
110
  SelectionTab: () => SelectionTab_default,
111
+ SelectionTabFill: () => SelectionTabFill_default,
112
+ SubTitle: () => SubTitle_default,
109
113
  THREE_MONTHS: () => THREE_MONTHS,
110
114
  TrueFalseActivityContent: () => TrueFalseActivityContent_default,
111
115
  VerticalDividerLine: () => VerticalDividerLine_default,
@@ -327,6 +331,9 @@ var BaseImage = (props) => {
327
331
  } else if (size === "3xlarge") {
328
332
  currentWidthClassName = "w-16";
329
333
  currentHeightClassName = "h-16";
334
+ } else if (size === "4xlarge") {
335
+ currentWidthClassName = "w-20";
336
+ currentHeightClassName = "h-20";
330
337
  } else if (size === "custom") {
331
338
  currentClassName = className;
332
339
  currentWidthClassName = widthClassName;
@@ -6456,15 +6463,43 @@ var BlueVerticalDividerLine = ({ opacity }) => {
6456
6463
  };
6457
6464
  var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
6458
6465
 
6459
- // src/components/boxes/SelectionCheckbox.tsx
6466
+ // src/components/groups/LeftTextRightInputGroup.tsx
6460
6467
  var import_jsx_runtime44 = require("react/jsx-runtime");
6468
+ var LeftTextRightInputGroup = ({
6469
+ type,
6470
+ title,
6471
+ value,
6472
+ optionList,
6473
+ onChange,
6474
+ disabled,
6475
+ errorText
6476
+ }) => {
6477
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "w-full flex flex-row mx-2", children: [
6478
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { children: title }) }),
6479
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6480
+ InputGroup_default,
6481
+ {
6482
+ type,
6483
+ value,
6484
+ optionList,
6485
+ onChange,
6486
+ disabled,
6487
+ errorText
6488
+ }
6489
+ ) })
6490
+ ] });
6491
+ };
6492
+ var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
6493
+
6494
+ // src/components/boxes/SelectionCheckbox.tsx
6495
+ var import_jsx_runtime45 = require("react/jsx-runtime");
6461
6496
  var SelectionCheckbox = ({
6462
6497
  optionList,
6463
6498
  selectedIdList,
6464
6499
  handleSelectOnClick,
6465
6500
  handleRemoveOnClick
6466
6501
  }) => {
6467
- 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)(
6502
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
6468
6503
  "div",
6469
6504
  {
6470
6505
  className: `${selectedIdList.findIndex(
@@ -6479,14 +6514,14 @@ var SelectionCheckbox = ({
6479
6514
  handleRemoveOnClick(option.id);
6480
6515
  }
6481
6516
  },
6482
- children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
6517
+ children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
6483
6518
  "div",
6484
6519
  {
6485
6520
  className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
6486
6521
  (selectedId) => selectedId === option.id
6487
6522
  ) > -1 ? "opacity-100" : "opacity-50"}`,
6488
6523
  children: [
6489
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
6524
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
6490
6525
  BaseImage_default,
6491
6526
  {
6492
6527
  src: selectedIdList.findIndex(
@@ -6496,7 +6531,7 @@ var SelectionCheckbox = ({
6496
6531
  size: "small"
6497
6532
  }
6498
6533
  ) }),
6499
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { children: option.text }) })
6534
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { children: option.text }) })
6500
6535
  ]
6501
6536
  }
6502
6537
  )
@@ -6507,7 +6542,7 @@ var SelectionCheckbox = ({
6507
6542
  var SelectionCheckbox_default = SelectionCheckbox;
6508
6543
 
6509
6544
  // src/components/tabs/SelectionTab.tsx
6510
- var import_jsx_runtime45 = require("react/jsx-runtime");
6545
+ var import_jsx_runtime46 = require("react/jsx-runtime");
6511
6546
  var SelectionTab = ({
6512
6547
  optionList,
6513
6548
  selectedId,
@@ -6517,7 +6552,7 @@ var SelectionTab = ({
6517
6552
  textColor,
6518
6553
  borderColor
6519
6554
  }) => {
6520
- 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)(
6555
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap mb-2 text-center", children: optionList.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
6521
6556
  "div",
6522
6557
  {
6523
6558
  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`,
@@ -6525,8 +6560,8 @@ var SelectionTab = ({
6525
6560
  handleSelectOnClick(option.id);
6526
6561
  },
6527
6562
  children: [
6528
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { className: "text-lg", children: option.title }),
6529
- option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { className: "text-md", children: option.subTitle }) : null
6563
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: "text-lg", children: option.title }),
6564
+ option.subTitle ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: "text-md", children: option.subTitle }) : null
6530
6565
  ]
6531
6566
  },
6532
6567
  index
@@ -6534,58 +6569,84 @@ var SelectionTab = ({
6534
6569
  };
6535
6570
  var SelectionTab_default = SelectionTab;
6536
6571
 
6572
+ // src/components/tabs/SelectionTabFill.tsx
6573
+ var import_jsx_runtime47 = require("react/jsx-runtime");
6574
+ var SelectionTabFill = ({
6575
+ optionList,
6576
+ selectedId,
6577
+ handleSelectOnClick
6578
+ }) => {
6579
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "w-full flex flex-row bg-catchup-gray-50 gap-x-2 rounded-catchup-medium px-4 py-2 justify-center text-center", children: optionList.map((option) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6580
+ "div",
6581
+ {
6582
+ className: "cursor-pointer",
6583
+ onClick: () => {
6584
+ handleSelectOnClick(option.id);
6585
+ },
6586
+ children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6587
+ "p",
6588
+ {
6589
+ 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`,
6590
+ children: option.title
6591
+ }
6592
+ )
6593
+ }
6594
+ )) });
6595
+ };
6596
+ var SelectionTabFill_default = SelectionTabFill;
6597
+
6537
6598
  // src/components/labels/ActivityTemplateLabel.tsx
6538
- var import_jsx_runtime46 = require("react/jsx-runtime");
6599
+ var import_jsx_runtime48 = require("react/jsx-runtime");
6539
6600
  var ActivityTemplateLabel = ({
6540
6601
  title,
6541
6602
  font
6542
6603
  }) => {
6543
- 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: [
6544
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(BaseImage_default, { src: "/icons/activity.png", alt: "label", size: "xsmall" }),
6545
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: font ? font : "text-sm", children: title })
6604
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6605
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(BaseImage_default, { src: "/icons/activity.png", alt: "label", size: "xsmall" }),
6606
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: font ? font : "text-sm", children: title })
6546
6607
  ] }) });
6547
6608
  };
6548
6609
  var ActivityTemplateLabel_default = ActivityTemplateLabel;
6549
6610
 
6550
6611
  // src/components/labels/BrandLabel.tsx
6551
- var import_jsx_runtime47 = require("react/jsx-runtime");
6612
+ var import_jsx_runtime49 = require("react/jsx-runtime");
6552
6613
  var BrandLabel = ({ title, icon, font }) => {
6553
- 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: [
6554
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(BaseImage_default, { src: "/icons/brand-label.png", alt: "label", size: "xsmall" }),
6555
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: font ? font : "text-sm", children: title })
6614
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6615
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(BaseImage_default, { src: "/icons/brand-label.png", alt: "label", size: "xsmall" }),
6616
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: font ? font : "text-sm", children: title })
6556
6617
  ] }) });
6557
6618
  };
6558
6619
  var BrandLabel_default = BrandLabel;
6559
6620
 
6560
6621
  // src/components/labels/CoterieLabel.tsx
6561
- var import_jsx_runtime48 = require("react/jsx-runtime");
6622
+ var import_jsx_runtime50 = require("react/jsx-runtime");
6562
6623
  var CoterieLabel = ({ title, font }) => {
6563
- 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 }) });
6624
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6564
6625
  };
6565
6626
  var CoterieLabel_default = CoterieLabel;
6566
6627
 
6567
6628
  // src/components/labels/GradeLabel.tsx
6568
- var import_jsx_runtime49 = require("react/jsx-runtime");
6629
+ var import_jsx_runtime51 = require("react/jsx-runtime");
6569
6630
  var GradeLabel = ({ title, font }) => {
6570
- 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 }) });
6631
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-grade-label-border bg-grade-label text-grade-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: font ? font : "text-sm", children: title }) });
6571
6632
  };
6572
6633
  var GradeLabel_default = GradeLabel;
6573
6634
 
6574
6635
  // src/components/labels/OutcomeLabel.tsx
6575
- var import_jsx_runtime50 = require("react/jsx-runtime");
6636
+ var import_jsx_runtime52 = require("react/jsx-runtime");
6576
6637
  var OutcomeLabel = ({ title, font }) => {
6577
- 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: [
6578
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(BaseImage_default, { src: "/icons/category.png", alt: "label", size: "xsmall" }),
6579
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: font ? font : "text-sm", children: title })
6638
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-brand-label-border bg-brand-label text-brand-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6639
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(BaseImage_default, { src: "/icons/category.png", alt: "label", size: "xsmall" }),
6640
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("p", { className: font ? font : "text-sm", children: title })
6580
6641
  ] }) });
6581
6642
  };
6582
6643
  var OutcomeLabel_default = OutcomeLabel;
6583
6644
 
6584
6645
  // src/components/labels/PersonalLabel.tsx
6585
- var import_jsx_runtime51 = require("react/jsx-runtime");
6646
+ var import_jsx_runtime53 = require("react/jsx-runtime");
6586
6647
  var PersonalLabel = ({ title, icon, font }) => {
6587
- 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: [
6588
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
6648
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-personal-label-border bg-personal-label text-personal-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6649
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
6589
6650
  BaseImage_default,
6590
6651
  {
6591
6652
  src: "/icons/personal-label.png",
@@ -6593,16 +6654,16 @@ var PersonalLabel = ({ title, icon, font }) => {
6593
6654
  size: "xsmall"
6594
6655
  }
6595
6656
  ),
6596
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: font ? font : "text-sm", children: title })
6657
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { className: font ? font : "text-sm", children: title })
6597
6658
  ] }) });
6598
6659
  };
6599
6660
  var PersonalLabel_default = PersonalLabel;
6600
6661
 
6601
6662
  // src/components/labels/PublishingHouseLabel.tsx
6602
- var import_jsx_runtime52 = require("react/jsx-runtime");
6663
+ var import_jsx_runtime54 = require("react/jsx-runtime");
6603
6664
  var PublishingHouseLabel = ({ title, icon, font }) => {
6604
- 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: [
6605
- icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
6665
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "px-3 py-1 gap-x-3 border border-publishing-house-label-border bg-publishing-house-label text-publishing-house-label-text rounded-catchup-3xlarge", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex flex-row items-center gap-x-2", children: [
6666
+ icon ? icon : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
6606
6667
  BaseImage_default,
6607
6668
  {
6608
6669
  src: "/icons/publishing-house-label.png",
@@ -6610,46 +6671,75 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
6610
6671
  size: "xsmall"
6611
6672
  }
6612
6673
  ),
6613
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("p", { className: font ? font : "text-sm", children: title })
6674
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("p", { className: font ? font : "text-sm", children: title })
6614
6675
  ] }) });
6615
6676
  };
6616
6677
  var PublishingHouseLabel_default = PublishingHouseLabel;
6617
6678
 
6618
6679
  // src/components/infos/InfoWithText.tsx
6619
- var import_jsx_runtime53 = require("react/jsx-runtime");
6680
+ var import_jsx_runtime55 = require("react/jsx-runtime");
6620
6681
  var InfoWithText = (props) => {
6621
6682
  const { value } = props;
6622
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6623
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(BaseImage_default, { src: "/icons/info.png", alt: "info", size: "small" }),
6624
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { className: "", children: value }) })
6683
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6684
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(BaseImage_default, { src: "/icons/info.png", alt: "info", size: "small" }),
6685
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("p", { className: "", children: value }) })
6625
6686
  ] });
6626
6687
  };
6627
6688
  var InfoWithText_default = InfoWithText;
6628
6689
 
6629
6690
  // src/components/texts/InputWithSpecialExpression.tsx
6630
6691
  var import_react_katex12 = require("react-katex");
6631
- var import_jsx_runtime54 = require("react/jsx-runtime");
6692
+ var import_jsx_runtime56 = require("react/jsx-runtime");
6632
6693
  var InputWithSpecialExpression = ({
6633
6694
  value,
6634
6695
  showSpecialOnly
6635
6696
  }) => {
6636
6697
  const inputWithSpecialExpressionList = constructInputWithSpecialExpressionList(value);
6637
- return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
6698
+ return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
6638
6699
  "span",
6639
6700
  {
6640
6701
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6641
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6702
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6642
6703
  }
6643
- )) }) }) : null : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
6704
+ )) }) }) : null : /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "m-2", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
6644
6705
  "span",
6645
6706
  {
6646
6707
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6647
- children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6708
+ children: inputPart.isEquation ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-lg", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_react_katex12.InlineMath, { math: inputPart.value }, index) }) : inputPart.value
6648
6709
  }
6649
6710
  )) }) });
6650
6711
  };
6651
6712
  var InputWithSpecialExpression_default = InputWithSpecialExpression;
6652
6713
 
6714
+ // src/components/titles/BaseTitle.tsx
6715
+ var import_jsx_runtime57 = require("react/jsx-runtime");
6716
+ var BaseTitle = ({
6717
+ title,
6718
+ totalItemCount,
6719
+ itemName,
6720
+ description
6721
+ }) => {
6722
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "flex flex-col gap-y-2", children: [
6723
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("p", { className: "text-2xl font-medium", children: [
6724
+ title,
6725
+ totalItemCount && itemName ? /* @__PURE__ */ (0, import_jsx_runtime57.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: [
6726
+ totalItemCount,
6727
+ " ",
6728
+ itemName
6729
+ ] }) : null
6730
+ ] }),
6731
+ description ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("p", { className: "", children: description }) : null
6732
+ ] });
6733
+ };
6734
+ var BaseTitle_default = BaseTitle;
6735
+
6736
+ // src/components/titles/SubTitle.tsx
6737
+ var import_jsx_runtime58 = require("react/jsx-runtime");
6738
+ var SubTitle = ({ title }) => {
6739
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
6740
+ };
6741
+ var SubTitle_default = SubTitle;
6742
+
6653
6743
  // src/utilization/AuthorizationUtilization.ts
6654
6744
  var parseJwt = (token) => {
6655
6745
  var base64Url = token.split(".")[1];
@@ -8762,6 +8852,7 @@ var retrieveTokenUsageSubTypeOptionList = () => {
8762
8852
  BaseLoading,
8763
8853
  BaseLoadingWithText,
8764
8854
  BaseModal,
8855
+ BaseTitle,
8765
8856
  BlueVerticalDividerLine,
8766
8857
  BrandLabel,
8767
8858
  CancelButton,
@@ -8776,6 +8867,7 @@ var retrieveTokenUsageSubTypeOptionList = () => {
8776
8867
  InfoWithText,
8777
8868
  InputGroup,
8778
8869
  InputWithSpecialExpression,
8870
+ LeftTextRightInputGroup,
8779
8871
  MCMAActivityContent,
8780
8872
  MCSAActivityContent,
8781
8873
  MatchingActivityContent,
@@ -8793,6 +8885,8 @@ var retrieveTokenUsageSubTypeOptionList = () => {
8793
8885
  SelectionBox,
8794
8886
  SelectionCheckbox,
8795
8887
  SelectionTab,
8888
+ SelectionTabFill,
8889
+ SubTitle,
8796
8890
  THREE_MONTHS,
8797
8891
  TrueFalseActivityContent,
8798
8892
  VerticalDividerLine,
package/dist/index.mjs CHANGED
@@ -147,6 +147,9 @@ var BaseImage = (props) => {
147
147
  } else if (size === "3xlarge") {
148
148
  currentWidthClassName = "w-16";
149
149
  currentHeightClassName = "h-16";
150
+ } else if (size === "4xlarge") {
151
+ currentWidthClassName = "w-20";
152
+ currentHeightClassName = "h-20";
150
153
  } else if (size === "custom") {
151
154
  currentClassName = className;
152
155
  currentWidthClassName = widthClassName;
@@ -6276,15 +6279,43 @@ var BlueVerticalDividerLine = ({ opacity }) => {
6276
6279
  };
6277
6280
  var BlueVerticalDividerLine_default = BlueVerticalDividerLine;
6278
6281
 
6279
- // src/components/boxes/SelectionCheckbox.tsx
6282
+ // src/components/groups/LeftTextRightInputGroup.tsx
6280
6283
  import { jsx as jsx44, jsxs as jsxs34 } from "react/jsx-runtime";
6284
+ var LeftTextRightInputGroup = ({
6285
+ type,
6286
+ title,
6287
+ value,
6288
+ optionList,
6289
+ onChange,
6290
+ disabled,
6291
+ errorText
6292
+ }) => {
6293
+ return /* @__PURE__ */ jsxs34("div", { className: "w-full flex flex-row mx-2", children: [
6294
+ /* @__PURE__ */ jsx44("div", { className: "w-catchup-input-group-title py-5", children: /* @__PURE__ */ jsx44("p", { children: title }) }),
6295
+ /* @__PURE__ */ jsx44("div", { className: "flex-1", children: /* @__PURE__ */ jsx44(
6296
+ InputGroup_default,
6297
+ {
6298
+ type,
6299
+ value,
6300
+ optionList,
6301
+ onChange,
6302
+ disabled,
6303
+ errorText
6304
+ }
6305
+ ) })
6306
+ ] });
6307
+ };
6308
+ var LeftTextRightInputGroup_default = LeftTextRightInputGroup;
6309
+
6310
+ // src/components/boxes/SelectionCheckbox.tsx
6311
+ import { jsx as jsx45, jsxs as jsxs35 } from "react/jsx-runtime";
6281
6312
  var SelectionCheckbox = ({
6282
6313
  optionList,
6283
6314
  selectedIdList,
6284
6315
  handleSelectOnClick,
6285
6316
  handleRemoveOnClick
6286
6317
  }) => {
6287
- 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(
6318
+ return /* @__PURE__ */ jsx45("div", { className: "flex flex-row items-center gap-x-4 gap-y-2 flex-wrap text-center", children: optionList.map((option, index) => /* @__PURE__ */ jsx45(
6288
6319
  "div",
6289
6320
  {
6290
6321
  className: `${selectedIdList.findIndex(
@@ -6299,14 +6330,14 @@ var SelectionCheckbox = ({
6299
6330
  handleRemoveOnClick(option.id);
6300
6331
  }
6301
6332
  },
6302
- children: /* @__PURE__ */ jsxs34(
6333
+ children: /* @__PURE__ */ jsxs35(
6303
6334
  "div",
6304
6335
  {
6305
6336
  className: `flex flex-row items-center gap-x-1 ${selectedIdList.findIndex(
6306
6337
  (selectedId) => selectedId === option.id
6307
6338
  ) > -1 ? "opacity-100" : "opacity-50"}`,
6308
6339
  children: [
6309
- /* @__PURE__ */ jsx44("div", { children: /* @__PURE__ */ jsx44(
6340
+ /* @__PURE__ */ jsx45("div", { children: /* @__PURE__ */ jsx45(
6310
6341
  BaseImage_default,
6311
6342
  {
6312
6343
  src: selectedIdList.findIndex(
@@ -6316,7 +6347,7 @@ var SelectionCheckbox = ({
6316
6347
  size: "small"
6317
6348
  }
6318
6349
  ) }),
6319
- /* @__PURE__ */ jsx44("div", { className: "flex-1", children: /* @__PURE__ */ jsx44("p", { children: option.text }) })
6350
+ /* @__PURE__ */ jsx45("div", { className: "flex-1", children: /* @__PURE__ */ jsx45("p", { children: option.text }) })
6320
6351
  ]
6321
6352
  }
6322
6353
  )
@@ -6327,7 +6358,7 @@ var SelectionCheckbox = ({
6327
6358
  var SelectionCheckbox_default = SelectionCheckbox;
6328
6359
 
6329
6360
  // src/components/tabs/SelectionTab.tsx
6330
- import { jsx as jsx45, jsxs as jsxs35 } from "react/jsx-runtime";
6361
+ import { jsx as jsx46, jsxs as jsxs36 } from "react/jsx-runtime";
6331
6362
  var SelectionTab = ({
6332
6363
  optionList,
6333
6364
  selectedId,
@@ -6337,7 +6368,7 @@ var SelectionTab = ({
6337
6368
  textColor,
6338
6369
  borderColor
6339
6370
  }) => {
6340
- 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(
6371
+ return /* @__PURE__ */ jsx46("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(
6341
6372
  "div",
6342
6373
  {
6343
6374
  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`,
@@ -6345,8 +6376,8 @@ var SelectionTab = ({
6345
6376
  handleSelectOnClick(option.id);
6346
6377
  },
6347
6378
  children: [
6348
- /* @__PURE__ */ jsx45("p", { className: "text-lg", children: option.title }),
6349
- option.subTitle ? /* @__PURE__ */ jsx45("p", { className: "text-md", children: option.subTitle }) : null
6379
+ /* @__PURE__ */ jsx46("p", { className: "text-lg", children: option.title }),
6380
+ option.subTitle ? /* @__PURE__ */ jsx46("p", { className: "text-md", children: option.subTitle }) : null
6350
6381
  ]
6351
6382
  },
6352
6383
  index
@@ -6354,58 +6385,84 @@ var SelectionTab = ({
6354
6385
  };
6355
6386
  var SelectionTab_default = SelectionTab;
6356
6387
 
6388
+ // src/components/tabs/SelectionTabFill.tsx
6389
+ import { jsx as jsx47 } from "react/jsx-runtime";
6390
+ var SelectionTabFill = ({
6391
+ optionList,
6392
+ selectedId,
6393
+ handleSelectOnClick
6394
+ }) => {
6395
+ return /* @__PURE__ */ jsx47("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) => /* @__PURE__ */ jsx47(
6396
+ "div",
6397
+ {
6398
+ className: "cursor-pointer",
6399
+ onClick: () => {
6400
+ handleSelectOnClick(option.id);
6401
+ },
6402
+ children: /* @__PURE__ */ jsx47(
6403
+ "p",
6404
+ {
6405
+ 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`,
6406
+ children: option.title
6407
+ }
6408
+ )
6409
+ }
6410
+ )) });
6411
+ };
6412
+ var SelectionTabFill_default = SelectionTabFill;
6413
+
6357
6414
  // src/components/labels/ActivityTemplateLabel.tsx
6358
- import { jsx as jsx46, jsxs as jsxs36 } from "react/jsx-runtime";
6415
+ import { jsx as jsx48, jsxs as jsxs37 } from "react/jsx-runtime";
6359
6416
  var ActivityTemplateLabel = ({
6360
6417
  title,
6361
6418
  font
6362
6419
  }) => {
6363
- 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: [
6364
- /* @__PURE__ */ jsx46(BaseImage_default, { src: "/icons/activity.png", alt: "label", size: "xsmall" }),
6365
- /* @__PURE__ */ jsx46("p", { className: font ? font : "text-sm", children: title })
6420
+ return /* @__PURE__ */ jsx48("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: [
6421
+ /* @__PURE__ */ jsx48(BaseImage_default, { src: "/icons/activity.png", alt: "label", size: "xsmall" }),
6422
+ /* @__PURE__ */ jsx48("p", { className: font ? font : "text-sm", children: title })
6366
6423
  ] }) });
6367
6424
  };
6368
6425
  var ActivityTemplateLabel_default = ActivityTemplateLabel;
6369
6426
 
6370
6427
  // src/components/labels/BrandLabel.tsx
6371
- import { jsx as jsx47, jsxs as jsxs37 } from "react/jsx-runtime";
6428
+ import { jsx as jsx49, jsxs as jsxs38 } from "react/jsx-runtime";
6372
6429
  var BrandLabel = ({ title, icon, font }) => {
6373
- 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: [
6374
- icon ? icon : /* @__PURE__ */ jsx47(BaseImage_default, { src: "/icons/brand-label.png", alt: "label", size: "xsmall" }),
6375
- /* @__PURE__ */ jsx47("p", { className: font ? font : "text-sm", children: title })
6430
+ return /* @__PURE__ */ jsx49("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: [
6431
+ icon ? icon : /* @__PURE__ */ jsx49(BaseImage_default, { src: "/icons/brand-label.png", alt: "label", size: "xsmall" }),
6432
+ /* @__PURE__ */ jsx49("p", { className: font ? font : "text-sm", children: title })
6376
6433
  ] }) });
6377
6434
  };
6378
6435
  var BrandLabel_default = BrandLabel;
6379
6436
 
6380
6437
  // src/components/labels/CoterieLabel.tsx
6381
- import { jsx as jsx48 } from "react/jsx-runtime";
6438
+ import { jsx as jsx50 } from "react/jsx-runtime";
6382
6439
  var CoterieLabel = ({ title, font }) => {
6383
- 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 }) });
6440
+ 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__ */ jsx50("p", { className: font ? font : "text-sm", children: title }) });
6384
6441
  };
6385
6442
  var CoterieLabel_default = CoterieLabel;
6386
6443
 
6387
6444
  // src/components/labels/GradeLabel.tsx
6388
- import { jsx as jsx49 } from "react/jsx-runtime";
6445
+ import { jsx as jsx51 } from "react/jsx-runtime";
6389
6446
  var GradeLabel = ({ title, font }) => {
6390
- 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 }) });
6447
+ return /* @__PURE__ */ jsx51("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__ */ jsx51("p", { className: font ? font : "text-sm", children: title }) });
6391
6448
  };
6392
6449
  var GradeLabel_default = GradeLabel;
6393
6450
 
6394
6451
  // src/components/labels/OutcomeLabel.tsx
6395
- import { jsx as jsx50, jsxs as jsxs38 } from "react/jsx-runtime";
6452
+ import { jsx as jsx52, jsxs as jsxs39 } from "react/jsx-runtime";
6396
6453
  var OutcomeLabel = ({ title, font }) => {
6397
- 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: [
6398
- /* @__PURE__ */ jsx50(BaseImage_default, { src: "/icons/category.png", alt: "label", size: "xsmall" }),
6399
- /* @__PURE__ */ jsx50("p", { className: font ? font : "text-sm", children: title })
6454
+ 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__ */ jsxs39("div", { className: "flex flex-row items-center gap-x-2", children: [
6455
+ /* @__PURE__ */ jsx52(BaseImage_default, { src: "/icons/category.png", alt: "label", size: "xsmall" }),
6456
+ /* @__PURE__ */ jsx52("p", { className: font ? font : "text-sm", children: title })
6400
6457
  ] }) });
6401
6458
  };
6402
6459
  var OutcomeLabel_default = OutcomeLabel;
6403
6460
 
6404
6461
  // src/components/labels/PersonalLabel.tsx
6405
- import { jsx as jsx51, jsxs as jsxs39 } from "react/jsx-runtime";
6462
+ import { jsx as jsx53, jsxs as jsxs40 } from "react/jsx-runtime";
6406
6463
  var PersonalLabel = ({ title, icon, font }) => {
6407
- 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: [
6408
- icon ? icon : /* @__PURE__ */ jsx51(
6464
+ return /* @__PURE__ */ jsx53("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: [
6465
+ icon ? icon : /* @__PURE__ */ jsx53(
6409
6466
  BaseImage_default,
6410
6467
  {
6411
6468
  src: "/icons/personal-label.png",
@@ -6413,16 +6470,16 @@ var PersonalLabel = ({ title, icon, font }) => {
6413
6470
  size: "xsmall"
6414
6471
  }
6415
6472
  ),
6416
- /* @__PURE__ */ jsx51("p", { className: font ? font : "text-sm", children: title })
6473
+ /* @__PURE__ */ jsx53("p", { className: font ? font : "text-sm", children: title })
6417
6474
  ] }) });
6418
6475
  };
6419
6476
  var PersonalLabel_default = PersonalLabel;
6420
6477
 
6421
6478
  // src/components/labels/PublishingHouseLabel.tsx
6422
- import { jsx as jsx52, jsxs as jsxs40 } from "react/jsx-runtime";
6479
+ import { jsx as jsx54, jsxs as jsxs41 } from "react/jsx-runtime";
6423
6480
  var PublishingHouseLabel = ({ title, icon, font }) => {
6424
- 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: [
6425
- icon ? icon : /* @__PURE__ */ jsx52(
6481
+ return /* @__PURE__ */ jsx54("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: [
6482
+ icon ? icon : /* @__PURE__ */ jsx54(
6426
6483
  BaseImage_default,
6427
6484
  {
6428
6485
  src: "/icons/publishing-house-label.png",
@@ -6430,46 +6487,75 @@ var PublishingHouseLabel = ({ title, icon, font }) => {
6430
6487
  size: "xsmall"
6431
6488
  }
6432
6489
  ),
6433
- /* @__PURE__ */ jsx52("p", { className: font ? font : "text-sm", children: title })
6490
+ /* @__PURE__ */ jsx54("p", { className: font ? font : "text-sm", children: title })
6434
6491
  ] }) });
6435
6492
  };
6436
6493
  var PublishingHouseLabel_default = PublishingHouseLabel;
6437
6494
 
6438
6495
  // src/components/infos/InfoWithText.tsx
6439
- import { jsx as jsx53, jsxs as jsxs41 } from "react/jsx-runtime";
6496
+ import { jsx as jsx55, jsxs as jsxs42 } from "react/jsx-runtime";
6440
6497
  var InfoWithText = (props) => {
6441
6498
  const { value } = props;
6442
- return /* @__PURE__ */ jsxs41("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6443
- /* @__PURE__ */ jsx53(BaseImage_default, { src: "/icons/info.png", alt: "info", size: "small" }),
6444
- /* @__PURE__ */ jsx53("div", { className: "flex-1", children: /* @__PURE__ */ jsx53("p", { className: "", children: value }) })
6499
+ return /* @__PURE__ */ jsxs42("div", { className: "w-full flex flex-row items-center gap-x-2 my-2", children: [
6500
+ /* @__PURE__ */ jsx55(BaseImage_default, { src: "/icons/info.png", alt: "info", size: "small" }),
6501
+ /* @__PURE__ */ jsx55("div", { className: "flex-1", children: /* @__PURE__ */ jsx55("p", { className: "", children: value }) })
6445
6502
  ] });
6446
6503
  };
6447
6504
  var InfoWithText_default = InfoWithText;
6448
6505
 
6449
6506
  // src/components/texts/InputWithSpecialExpression.tsx
6450
6507
  import { InlineMath as InlineMath12 } from "react-katex";
6451
- import { jsx as jsx54 } from "react/jsx-runtime";
6508
+ import { jsx as jsx56 } from "react/jsx-runtime";
6452
6509
  var InputWithSpecialExpression = ({
6453
6510
  value,
6454
6511
  showSpecialOnly
6455
6512
  }) => {
6456
6513
  const inputWithSpecialExpressionList = constructInputWithSpecialExpressionList(value);
6457
- return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ jsx54("div", { className: "m-2", children: /* @__PURE__ */ jsx54("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx54(
6514
+ return showSpecialOnly ? inputWithSpecialExpressionList.length > 1 ? /* @__PURE__ */ jsx56("div", { className: "m-2", children: /* @__PURE__ */ jsx56("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx56(
6458
6515
  "span",
6459
6516
  {
6460
6517
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6461
- children: inputPart.isEquation ? /* @__PURE__ */ jsx54("span", { className: "text-lg", children: /* @__PURE__ */ jsx54(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6518
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx56("span", { className: "text-lg", children: /* @__PURE__ */ jsx56(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6462
6519
  }
6463
- )) }) }) : null : /* @__PURE__ */ jsx54("div", { className: "m-2", children: /* @__PURE__ */ jsx54("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx54(
6520
+ )) }) }) : null : /* @__PURE__ */ jsx56("div", { className: "m-2", children: /* @__PURE__ */ jsx56("span", { className: "whitespace-pre-wrap", children: inputWithSpecialExpressionList.map((inputPart, index) => /* @__PURE__ */ jsx56(
6464
6521
  "span",
6465
6522
  {
6466
6523
  className: `${inputPart.isBold ? "font-semibold" : ""} ${inputPart.isUnderline ? "underline" : ""}`,
6467
- children: inputPart.isEquation ? /* @__PURE__ */ jsx54("span", { className: "text-lg", children: /* @__PURE__ */ jsx54(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6524
+ children: inputPart.isEquation ? /* @__PURE__ */ jsx56("span", { className: "text-lg", children: /* @__PURE__ */ jsx56(InlineMath12, { math: inputPart.value }, index) }) : inputPart.value
6468
6525
  }
6469
6526
  )) }) });
6470
6527
  };
6471
6528
  var InputWithSpecialExpression_default = InputWithSpecialExpression;
6472
6529
 
6530
+ // src/components/titles/BaseTitle.tsx
6531
+ import { jsx as jsx57, jsxs as jsxs43 } from "react/jsx-runtime";
6532
+ var BaseTitle = ({
6533
+ title,
6534
+ totalItemCount,
6535
+ itemName,
6536
+ description
6537
+ }) => {
6538
+ return /* @__PURE__ */ jsxs43("div", { className: "flex flex-col gap-y-2", children: [
6539
+ /* @__PURE__ */ jsxs43("p", { className: "text-2xl font-medium", children: [
6540
+ title,
6541
+ 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: [
6542
+ totalItemCount,
6543
+ " ",
6544
+ itemName
6545
+ ] }) : null
6546
+ ] }),
6547
+ description ? /* @__PURE__ */ jsx57("p", { className: "", children: description }) : null
6548
+ ] });
6549
+ };
6550
+ var BaseTitle_default = BaseTitle;
6551
+
6552
+ // src/components/titles/SubTitle.tsx
6553
+ import { jsx as jsx58 } from "react/jsx-runtime";
6554
+ var SubTitle = ({ title }) => {
6555
+ return /* @__PURE__ */ jsx58("p", { className: "text-xl font-medium text-catchup-darker-blue", children: title });
6556
+ };
6557
+ var SubTitle_default = SubTitle;
6558
+
6473
6559
  // src/utilization/AuthorizationUtilization.ts
6474
6560
  var parseJwt = (token) => {
6475
6561
  var base64Url = token.split(".")[1];
@@ -8581,6 +8667,7 @@ export {
8581
8667
  BaseLoading_default as BaseLoading,
8582
8668
  BaseLoadingWithText_default as BaseLoadingWithText,
8583
8669
  BaseModal_default as BaseModal,
8670
+ BaseTitle_default as BaseTitle,
8584
8671
  BlueVerticalDividerLine_default as BlueVerticalDividerLine,
8585
8672
  BrandLabel_default as BrandLabel,
8586
8673
  CancelButton_default as CancelButton,
@@ -8595,6 +8682,7 @@ export {
8595
8682
  InfoWithText_default as InfoWithText,
8596
8683
  InputGroup_default as InputGroup,
8597
8684
  InputWithSpecialExpression_default as InputWithSpecialExpression,
8685
+ LeftTextRightInputGroup_default as LeftTextRightInputGroup,
8598
8686
  MCMAActivityContent_default as MCMAActivityContent,
8599
8687
  MCSAActivityContent_default as MCSAActivityContent,
8600
8688
  MatchingActivityContent_default as MatchingActivityContent,
@@ -8612,6 +8700,8 @@ export {
8612
8700
  SelectionBox_default as SelectionBox,
8613
8701
  SelectionCheckbox_default as SelectionCheckbox,
8614
8702
  SelectionTab_default as SelectionTab,
8703
+ SelectionTabFill_default as SelectionTabFill,
8704
+ SubTitle_default as SubTitle,
8615
8705
  THREE_MONTHS,
8616
8706
  TrueFalseActivityContent_default as TrueFalseActivityContent,
8617
8707
  VerticalDividerLine_default as VerticalDividerLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "catchup-library-web",
3
- "version": "1.2.10",
3
+ "version": "1.2.12",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -60,6 +60,9 @@ const BaseImage = (props: IBaseImageProps) => {
60
60
  } else if (size === "3xlarge") {
61
61
  currentWidthClassName = "w-16";
62
62
  currentHeightClassName = "h-16";
63
+ } else if (size === "4xlarge") {
64
+ currentWidthClassName = "w-20";
65
+ currentHeightClassName = "h-20";
63
66
  } else if (size === "custom") {
64
67
  currentClassName = className;
65
68
  currentWidthClassName = widthClassName;
@@ -0,0 +1,32 @@
1
+ import { ISelectionTabProps } from "../../properties/TabProperties";
2
+
3
+ const SelectionTabFill = ({
4
+ optionList,
5
+ selectedId,
6
+ handleSelectOnClick,
7
+ }: ISelectionTabProps) => {
8
+ return (
9
+ <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">
10
+ {optionList.map((option: any) => (
11
+ <div
12
+ className="cursor-pointer"
13
+ onClick={() => {
14
+ handleSelectOnClick(option.id);
15
+ }}
16
+ >
17
+ <p
18
+ className={`${
19
+ selectedId === option.id
20
+ ? "text-catchup-white bg-catchup-blue-500"
21
+ : "text-catchup-gray-300"
22
+ } transition-all duration-300 rounded-catchup-medium px-2 py-1`}
23
+ >
24
+ {option.title}
25
+ </p>
26
+ </div>
27
+ ))}
28
+ </div>
29
+ );
30
+ };
31
+
32
+ export default SelectionTabFill;
@@ -0,0 +1,24 @@
1
+ import { IBaseTitleProps } from "../../properties/TitleProperties";
2
+
3
+ const BaseTitle = ({
4
+ title,
5
+ totalItemCount,
6
+ itemName,
7
+ description,
8
+ }: IBaseTitleProps) => {
9
+ return (
10
+ <div className="flex flex-col gap-y-2">
11
+ <p className="text-2xl font-medium">
12
+ {title}
13
+ {totalItemCount && itemName ? (
14
+ <span className="p-2 text-base text-catchup-blue-600 border border-catchup-blue-300 rounded-catchup-3xlarge mx-2 bg-catchup-blue-100">
15
+ {totalItemCount} {itemName}
16
+ </span>
17
+ ) : null}
18
+ </p>
19
+ {description ? <p className="">{description}</p> : null}
20
+ </div>
21
+ );
22
+ };
23
+
24
+ export default BaseTitle;
@@ -0,0 +1,9 @@
1
+ import { ISubTitleProps } from "../../properties/TitleProperties";
2
+
3
+ const SubTitle = ({ title }: ISubTitleProps) => {
4
+ return (
5
+ <p className="text-xl font-medium text-catchup-darker-blue">{title}</p>
6
+ );
7
+ };
8
+
9
+ export default SubTitle;
package/src/index.ts CHANGED
@@ -29,6 +29,7 @@ export { default as DividerLine } from "./components/dividers/DividerLine";
29
29
  export { default as VerticalDividerLine } from "./components/dividers/VerticalDividerLine";
30
30
 
31
31
  export { default as InputGroup } from "./components/groups/InputGroup";
32
+ export { default as LeftTextRightInputGroup } from "./components/groups/LeftTextRightInputGroup";
32
33
 
33
34
  export { default as useScreenSize } from "./hooks/useScreenSize";
34
35
 
@@ -36,6 +37,7 @@ export { default as SelectionBox } from "./components/boxes/SelectionBox";
36
37
  export { default as SelectionCheckbox } from "./components/boxes/SelectionCheckbox";
37
38
 
38
39
  export { default as SelectionTab } from "./components/tabs/SelectionTab";
40
+ export { default as SelectionTabFill } from "./components/tabs/SelectionTabFill";
39
41
 
40
42
  export { default as ActivityTemplateLabel } from "./components/labels/ActivityTemplateLabel";
41
43
  export { default as BrandLabel } from "./components/labels/BrandLabel";
@@ -49,6 +51,9 @@ export { default as InfoWithText } from "./components/infos/InfoWithText";
49
51
 
50
52
  export { default as InputWithSpecialExpression } from "./components/texts/InputWithSpecialExpression";
51
53
 
54
+ export { default as BaseTitle } from "./components/titles/BaseTitle";
55
+ export { default as SubTitle } from "./components/titles/SubTitle";
56
+
52
57
  export { default as i18n } from "./language/i18n";
53
58
 
54
59
  export * from "./utilization/AppUtilization";
@@ -7,3 +7,9 @@ export interface ISelectionTabProps {
7
7
  borderColor: string;
8
8
  selectedBorderColor: string;
9
9
  }
10
+
11
+ export interface ISelectedTabFillProps {
12
+ optionList: any;
13
+ selectedId: any;
14
+ handleSelectOnClick: (e: any) => void;
15
+ }
@@ -0,0 +1,10 @@
1
+ export interface IBaseTitleProps {
2
+ title: string;
3
+ totalItemCount: number;
4
+ itemName: string;
5
+ description: string;
6
+ }
7
+
8
+ export interface ISubTitleProps {
9
+ title: string;
10
+ }