@cuemath/leap 3.5.73 → 3.5.74
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/features/blockers/multi-tab-blocker/multi-tab-blocker.js +10 -10
- package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker.js.map +1 -1
- package/dist/features/chapters/chapter/comps/supplementary-resources/supplementary-resources.js +15 -15
- package/dist/features/chapters/chapter/comps/supplementary-resources/supplementary-resources.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/block-section.js +22 -22
- package/dist/features/chapters/lpar-chapter/block-section/block-section.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-action.js +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-action.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-header.js +11 -11
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-header.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js +20 -20
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/question-overview.js +10 -10
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/question-overview.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/student-actions/student-actions.js +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/student-actions/student-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/context-menu-helper/menu-element.js +5 -5
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/context-menu-helper/menu-element.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js +12 -12
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js +6 -6
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item.js +15 -15
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/comps/chapter-progress.js +5 -5
- package/dist/features/chapters/lpar-chapter/comps/chapter-progress.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/comps/tab-section.js +9 -9
- package/dist/features/chapters/lpar-chapter/comps/tab-section.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/chapter-banner.js +24 -24
- package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/chapter-banner.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/cue-coins.js +6 -6
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/cue-coins.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card.js +23 -23
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section.js +11 -11
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/block-section.js +21 -21
- package/dist/features/chapters/lpar-milestone-chapter/block-section/block-section.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/rewards-n-actions.js +12 -12
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/rewards-n-actions.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-info.js +13 -13
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-info.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/extra-practice-section/extra-practice-section.js +13 -13
- package/dist/features/chapters/lpar-milestone-chapter/extra-practice-section/extra-practice-section.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card.js +22 -22
- package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-section.js +12 -12
- package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-section.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/chapter-details.js +10 -10
- package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
- package/dist/features/cue-canvas/bottombar/homework-controls.js +1 -1
- package/dist/features/cue-canvas/bottombar/homework-controls.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/homework/homework-menu.js +10 -10
- package/dist/features/cue-canvas/sidebar/homework/homework-menu.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/homework/homework-request.js +12 -12
- package/dist/features/cue-canvas/sidebar/homework/homework-request.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js +11 -11
- package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/filters.js +31 -31
- package/dist/features/cue-canvas/sidebar/puzzles/filters.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js +18 -18
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js.map +1 -1
- package/dist/features/extra-practice/extra-practice.js +16 -16
- package/dist/features/extra-practice/extra-practice.js.map +1 -1
- package/dist/features/extra-practice/list/list.js +16 -16
- package/dist/features/extra-practice/list/list.js.map +1 -1
- package/dist/features/milestone/create/comps/info-points/info-points.js +5 -5
- package/dist/features/milestone/create/comps/info-points/info-points.js.map +1 -1
- package/dist/features/milestone/create/comps/milestone-progress/milestone-progress.js +11 -11
- package/dist/features/milestone/create/comps/milestone-progress/milestone-progress.js.map +1 -1
- package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal.js +32 -32
- package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal.js.map +1 -1
- package/dist/features/milestone/edit/comps/delete-milestone/confirm-delete.js +3 -3
- package/dist/features/milestone/edit/comps/delete-milestone/confirm-delete.js.map +1 -1
- package/dist/features/milestone/edit/comps/edit-milestone-modal/edit-milestone.js +19 -19
- package/dist/features/milestone/edit/comps/edit-milestone-modal/edit-milestone.js.map +1 -1
- package/dist/features/milestone/milestone-action-widget/milestone-action-widget.js +21 -21
- package/dist/features/milestone/milestone-action-widget/milestone-action-widget.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +16 -16
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js +1 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js +14 -14
- package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js.map +1 -1
- package/dist/features/milestone/outcome/comps/achievement/achievement-constants.js +6 -6
- package/dist/features/milestone/outcome/comps/achievement/achievement-constants.js.map +1 -1
- package/dist/features/milestone/outcome/comps/achievement/achievement-container.js +20 -20
- package/dist/features/milestone/outcome/comps/achievement/achievement-container.js.map +1 -1
- package/dist/features/milestone/outcome/comps/achievement/reason-submit-modal.js +8 -8
- package/dist/features/milestone/outcome/comps/achievement/reason-submit-modal.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/input-descriptor.js +4 -4
- package/dist/features/milestone/outcome/comps/outcome-collection/input-descriptor.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/milestone-outcome-collection-container.js +5 -5
- package/dist/features/milestone/outcome/comps/outcome-collection/milestone-outcome-collection-container.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/rank-inputs/index.js +12 -12
- package/dist/features/milestone/outcome/comps/outcome-collection/rank-inputs/index.js.map +1 -1
- package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-container.js +5 -5
- package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-container.js.map +1 -1
- package/dist/features/milestone/outcome/comps/past-milestone/question.js +3 -3
- package/dist/features/milestone/outcome/comps/past-milestone/question.js.map +1 -1
- package/dist/features/milestone/outcome/milestone-outcome-container.js +8 -8
- package/dist/features/milestone/outcome/milestone-outcome-container.js.map +1 -1
- package/dist/features/milestone/start/milestone-start.js +8 -8
- package/dist/features/milestone/start/milestone-start.js.map +1 -1
- package/dist/features/puzzles/puzzle-container/puzzle-container-view.js +1 -1
- package/dist/features/puzzles/puzzle-container/puzzle-container-view.js.map +1 -1
- package/dist/features/puzzles/puzzle-dashboard/puzzle-dashboard.js +1 -1
- package/dist/features/puzzles/puzzle-dashboard/puzzle-dashboard.js.map +1 -1
- package/dist/features/sheet-tools/tool-header/tool-header.js +19 -19
- package/dist/features/sheet-tools/tool-header/tool-header.js.map +1 -1
- package/dist/features/sheets/reference-sheet/reference-sheet.js +1 -1
- package/dist/features/sheets/reference-sheet/reference-sheet.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/menu-element/menu-element.js +9 -9
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/menu-element/menu-element.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions.js +6 -6
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item-tag.js +15 -15
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item-tag.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item.js +16 -16
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheets-list.js +18 -18
- package/dist/features/sheets/sheets-list/sheets-list.js.map +1 -1
- package/dist/features/student-details/student-details.js +6 -6
- package/dist/features/student-details/student-details.js.map +1 -1
- package/dist/features/student-details/wins-preview/wins-preview.js +8 -8
- package/dist/features/student-details/wins-preview/wins-preview.js.map +1 -1
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/support-card/support-card.js +3 -3
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/support-card/support-card.js.map +1 -1
- package/dist/features/trial-session/comps/clock/clock.js +6 -6
- package/dist/features/trial-session/comps/clock/clock.js.map +1 -1
- package/dist/features/trial-session/comps/cue-tips/cues/index.js +5 -5
- package/dist/features/trial-session/comps/cue-tips/cues/index.js.map +1 -1
- package/dist/features/trial-session/comps/cue-tips/tips/index.js +6 -6
- package/dist/features/trial-session/comps/cue-tips/tips/index.js.map +1 -1
- package/dist/features/trial-session/comps/solutions/index.js +9 -9
- package/dist/features/trial-session/comps/solutions/index.js.map +1 -1
- package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +16 -16
- package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js +7 -7
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js.map +1 -1
- package/dist/features/ui/callout/callout.js +5 -5
- package/dist/features/ui/callout/callout.js.map +1 -1
- package/dist/features/ui/error/error.js +14 -14
- package/dist/features/ui/error/error.js.map +1 -1
- package/dist/features/ui/inputs/base-input/base-input.js +4 -4
- package/dist/features/ui/inputs/base-input/base-input.js.map +1 -1
- package/dist/features/ui/inputs/base-select-input/select-option/select-option.js +8 -8
- package/dist/features/ui/inputs/base-select-input/select-option/select-option.js.map +1 -1
- package/dist/features/ui/inputs/base-select-input/select-section/select-section.js +12 -12
- package/dist/features/ui/inputs/base-select-input/select-section/select-section.js.map +1 -1
- package/dist/features/ui/inputs/num-range-input/num-range-input.js +6 -6
- package/dist/features/ui/inputs/num-range-input/num-range-input.js.map +1 -1
- package/dist/features/ui/inputs/radio-input/radio-option/radio-option.js +3 -3
- package/dist/features/ui/inputs/radio-input/radio-option/radio-option.js.map +1 -1
- package/dist/features/ui/perfect-hits/perfect-hits.js +3 -3
- package/dist/features/ui/perfect-hits/perfect-hits.js.map +1 -1
- package/dist/features/ui/radio-cards/radio-card-option/radio-card-option.js +9 -9
- package/dist/features/ui/radio-cards/radio-card-option/radio-card-option.js.map +1 -1
- package/dist/features/ui/stepper/stepper.js +7 -7
- package/dist/features/ui/stepper/stepper.js.map +1 -1
- package/dist/features/ui/tag/tag.js +1 -1
- package/dist/features/ui/tag/tag.js.map +1 -1
- package/dist/features/ui/theme/input.js +13 -13
- package/dist/features/ui/theme/input.js.map +1 -1
- package/dist/features/ui/theme/tab.js +4 -4
- package/dist/features/ui/theme/tab.js.map +1 -1
- package/dist/features/ui/theme/text-button.js +3 -3
- package/dist/features/ui/theme/text-button.js.map +1 -1
- package/dist/features/ui/timers/countdown-timer/countdown-timer.js +14 -14
- package/dist/features/ui/timers/countdown-timer/countdown-timer.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/belts.js +27 -27
- package/dist/features/wins-dashboard/belts-elements-stickers/belts.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/elements.js +15 -23
- package/dist/features/wins-dashboard/belts-elements-stickers/elements.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/reward-elements.js +12 -12
- package/dist/features/wins-dashboard/belts-elements-stickers/reward-elements.js.map +1 -1
- package/dist/features/wins-dashboard/header/wins-header.js +10 -10
- package/dist/features/wins-dashboard/header/wins-header.js.map +1 -1
- package/dist/features/wins-dashboard/student-badges/animated-tabbar.js +13 -13
- package/dist/features/wins-dashboard/student-badges/animated-tabbar.js.map +1 -1
- package/dist/features/wins-dashboard/student-badges/student-badge.js +18 -18
- package/dist/features/wins-dashboard/student-badges/student-badge.js.map +1 -1
- package/dist/features/wins-dashboard/student-badges/student-badges-lists.js +10 -10
- package/dist/features/wins-dashboard/student-badges/student-badges-lists.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-intervention.js +2 -2
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-intervention.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review-available.js +4 -4
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review-available.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review.js +7 -7
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-student-submission.js +2 -2
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-student-submission.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-assignment.js +5 -5
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-assignment.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-skip.js +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-skip.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.js +20 -20
- package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-permissions/error.js +11 -11
- package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-permissions/sheet-locked.js +12 -12
- package/dist/features/worksheet/worksheet/worksheet-permissions/sheet-locked.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/header/header-tags.js +7 -7
- package/dist/features/worksheet/worksheet/worksheet-question/header/header-tags.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/header/header.js +21 -21
- package/dist/features/worksheet/worksheet/worksheet-question/header/header.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/advanced-practice-intro.js +6 -6
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/advanced-practice-intro.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/basic-practice-intro.js +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/basic-practice-intro.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/exit-ticket-intro.js +4 -4
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/exit-ticket-intro.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/regular-practice-intro.js +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/intros/system-intros/regular-practice-intro.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/subjective-feedback.js +41 -41
- package/dist/features/worksheet/worksheet/worksheet-question/subjective-feedback.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/subjective-review.js +23 -23
- package/dist/features/worksheet/worksheet/worksheet-question/subjective-review.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary.js +6 -6
- package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-summary/worksheet-summary.js +1 -1
- package/dist/features/worksheet/worksheet/worksheet-summary/worksheet-summary.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools.js +18 -18
- package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js +11 -11
- package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js +14 -14
- package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/regex.js +5 -0
- package/dist/node_modules/uuid/dist/esm-browser/regex.js.map +1 -0
- package/dist/node_modules/uuid/dist/esm-browser/rng.js +2 -3
- package/dist/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js +10 -6
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/v4.js +9 -12
- package/dist/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/validate.js +8 -0
- package/dist/node_modules/uuid/dist/esm-browser/validate.js.map +1 -0
- package/package.json +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/native.js +0 -7
- package/dist/node_modules/uuid/dist/esm-browser/native.js.map +0 -1
|
@@ -4,17 +4,17 @@ import E from "../../hooks/use-lazy-ref.js";
|
|
|
4
4
|
import W from "../../ui/arrow-tooltip/arrow-tooltip.js";
|
|
5
5
|
import X from "../../ui/buttons/button/button.js";
|
|
6
6
|
import o from "../../ui/layout/flex-view.js";
|
|
7
|
-
import
|
|
7
|
+
import k from "../../ui/separator/separator.js";
|
|
8
8
|
import t from "../../ui/text/text.js";
|
|
9
|
-
import { MainWrapper as
|
|
9
|
+
import { MainWrapper as I, StyledFlexView as R, Icon as G, Wrapper as M, VerticalLine as T } from "./milestone-action-widget-styled.js";
|
|
10
10
|
import O from "../../../node_modules/uuid/dist/esm-browser/v4.js";
|
|
11
11
|
const j = _(function({
|
|
12
|
-
onCreatePlan:
|
|
12
|
+
onCreatePlan: d,
|
|
13
13
|
onAddOutcome: l,
|
|
14
14
|
canCreatePlan: s
|
|
15
15
|
}) {
|
|
16
16
|
const n = E(O), c = () => {
|
|
17
|
-
|
|
17
|
+
d(n);
|
|
18
18
|
}, m = {
|
|
19
19
|
temporary_milestone_id: n
|
|
20
20
|
}, i = [
|
|
@@ -46,20 +46,20 @@ const j = _(function({
|
|
|
46
46
|
borderTopColor: "GREEN_4"
|
|
47
47
|
}
|
|
48
48
|
];
|
|
49
|
-
return /* @__PURE__ */ e(o, { children: /* @__PURE__ */ e(
|
|
49
|
+
return /* @__PURE__ */ e(o, { children: /* @__PURE__ */ e(I, { $flexDirection: "row", $gapX: 1.5, $gutterX: 2, $justifyContent: "space-around", children: i.map(
|
|
50
50
|
({
|
|
51
51
|
id: p,
|
|
52
52
|
heading: h,
|
|
53
53
|
subHeading: b,
|
|
54
54
|
ctaLabel: g,
|
|
55
|
-
icon:
|
|
56
|
-
onClick:
|
|
57
|
-
isDisabled:
|
|
55
|
+
icon: u,
|
|
56
|
+
onClick: $,
|
|
57
|
+
isDisabled: a,
|
|
58
58
|
analyticsLabel: f,
|
|
59
59
|
borderColor: C,
|
|
60
60
|
backgroundColor: A,
|
|
61
|
-
borderTopColor:
|
|
62
|
-
disableReason:
|
|
61
|
+
borderTopColor: w,
|
|
62
|
+
disableReason: y
|
|
63
63
|
}, L) => /* @__PURE__ */ r(x, { children: [
|
|
64
64
|
/* @__PURE__ */ r(
|
|
65
65
|
R,
|
|
@@ -69,30 +69,30 @@ const j = _(function({
|
|
|
69
69
|
$gutter: 12,
|
|
70
70
|
$flexDirection: "row",
|
|
71
71
|
$borderRadius: 8,
|
|
72
|
-
$borderColor:
|
|
72
|
+
$borderColor: w,
|
|
73
73
|
children: [
|
|
74
|
-
/* @__PURE__ */ e(o, { $gapX: 0.375, children: /* @__PURE__ */ e(
|
|
74
|
+
/* @__PURE__ */ e(o, { $gapX: 0.375, children: /* @__PURE__ */ e(G, { $borderColor: C, children: u }) }),
|
|
75
75
|
/* @__PURE__ */ e(o, { $flexDirection: "row", $alignItems: "flex-start", children: /* @__PURE__ */ r(o, { children: [
|
|
76
|
-
/* @__PURE__ */ e(t, { $renderAs: "
|
|
77
|
-
/* @__PURE__ */ e(t, { $renderAs: "
|
|
78
|
-
/* @__PURE__ */ e(
|
|
76
|
+
/* @__PURE__ */ e(t, { $renderAs: "ub1-bold", children: h }),
|
|
77
|
+
/* @__PURE__ */ e(t, { $renderAs: "ub2", $widthX: 12.15, children: b }),
|
|
78
|
+
/* @__PURE__ */ e(k, { heightX: 1 }),
|
|
79
79
|
/* @__PURE__ */ e(
|
|
80
80
|
W,
|
|
81
81
|
{
|
|
82
82
|
renderAs: "primary",
|
|
83
83
|
position: "bottom",
|
|
84
84
|
widthX: 15.3125,
|
|
85
|
-
tooltipItem:
|
|
86
|
-
hidden: !
|
|
85
|
+
tooltipItem: y,
|
|
86
|
+
hidden: !a,
|
|
87
87
|
children: /* @__PURE__ */ e(
|
|
88
88
|
X,
|
|
89
89
|
{
|
|
90
90
|
renderAs: "secondary",
|
|
91
91
|
label: g,
|
|
92
|
-
onClick:
|
|
92
|
+
onClick: $,
|
|
93
93
|
widthX: 10,
|
|
94
94
|
size: "small",
|
|
95
|
-
disabled:
|
|
95
|
+
disabled: a,
|
|
96
96
|
analyticsLabel: f,
|
|
97
97
|
analyticsProps: m
|
|
98
98
|
}
|
|
@@ -103,9 +103,9 @@ const j = _(function({
|
|
|
103
103
|
]
|
|
104
104
|
}
|
|
105
105
|
),
|
|
106
|
-
L !== i.length - 1 && /* @__PURE__ */ r(
|
|
106
|
+
L !== i.length - 1 && /* @__PURE__ */ r(M, { $alignItems: "center", $justifyContent: "center", $gutterX: 2, children: [
|
|
107
107
|
/* @__PURE__ */ e(T, { $width: 1, $background: "GREY_2" }),
|
|
108
|
-
/* @__PURE__ */ e(o, { $background: "WHITE", $gapX: 0.375, children: /* @__PURE__ */ e(t, { $renderAs: "
|
|
108
|
+
/* @__PURE__ */ e(o, { $background: "WHITE", $gapX: 0.375, children: /* @__PURE__ */ e(t, { $renderAs: "ac4-black", children: "OR" }) })
|
|
109
109
|
] })
|
|
110
110
|
] }, p)
|
|
111
111
|
) }) });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"milestone-action-widget.js","sources":["../../../../src/features/milestone/milestone-action-widget/milestone-action-widget.tsx"],"sourcesContent":["import { Fragment, memo, type FC } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../hooks/use-lazy-ref';\nimport ArrowTooltip from '../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../ui/buttons/button/button';\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport Text from '../../ui/text/text';\nimport {\n VerticalLine,\n Wrapper,\n MainWrapper,\n Icon,\n StyledFlexView,\n} from './milestone-action-widget-styled';\nimport type {\n IMilestoneActionWidgetProps,\n TActionCtaConfigItem,\n} from './milstone-action-widget-types';\n\nconst MilestoneActionWidget: FC<IMilestoneActionWidgetProps> = memo(function MilestoneActionWidget({\n onCreatePlan,\n onAddOutcome,\n canCreatePlan,\n}) {\n const temporaryMilestoneId = useLazyRef(uuidv4);\n\n const handleCreatePlan = () => {\n onCreatePlan(temporaryMilestoneId);\n };\n\n const buttonAnalyticsProps = {\n temporary_milestone_id: temporaryMilestoneId,\n };\n\n const ACTION_CTA_CONFIG: TActionCtaConfigItem[] = [\n {\n id: 1,\n heading: 'Create a Goal',\n subHeading: `Add a new goal to the student's learning plan`,\n ctaLabel: 'Create Goal',\n icon: '⛳️',\n onClick: handleCreatePlan,\n isDisabled: !canCreatePlan,\n disableReason: 'Goals can only be added for students who have joined the class',\n borderColor: 'YELLOW_5',\n backgroundColor: 'YELLOW_1',\n borderTopColor: 'YELLOW_4',\n },\n {\n id: 2,\n heading: 'Add a Milestone',\n subHeading: 'Add a previous test score or a student achievement',\n ctaLabel: 'Add Milestone',\n icon: '💯',\n onClick: onAddOutcome,\n isDisabled: false,\n disableReason: '',\n analyticsLabel: 'add-a-milestone',\n borderColor: 'BLUE_5',\n backgroundColor: 'GREEN_1',\n borderTopColor: 'GREEN_4',\n },\n ];\n\n return (\n <FlexView>\n <MainWrapper $flexDirection=\"row\" $gapX={1.5} $gutterX={2} $justifyContent=\"space-around\">\n {ACTION_CTA_CONFIG.map(\n (\n {\n id,\n heading,\n subHeading,\n ctaLabel,\n icon,\n onClick,\n isDisabled,\n analyticsLabel,\n borderColor,\n backgroundColor,\n borderTopColor,\n disableReason,\n },\n idx,\n ) => (\n <Fragment key={id}>\n <StyledFlexView\n $background={backgroundColor}\n $gap={20}\n $gutter={12}\n $flexDirection=\"row\"\n $borderRadius={8}\n $borderColor={borderTopColor}\n >\n <FlexView $gapX={0.375}>\n <Icon $borderColor={borderColor}>{icon}</Icon>\n </FlexView>\n <FlexView $flexDirection=\"row\" $alignItems=\"flex-start\">\n <FlexView>\n <Text $renderAs=\"
|
|
1
|
+
{"version":3,"file":"milestone-action-widget.js","sources":["../../../../src/features/milestone/milestone-action-widget/milestone-action-widget.tsx"],"sourcesContent":["import { Fragment, memo, type FC } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../hooks/use-lazy-ref';\nimport ArrowTooltip from '../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../ui/buttons/button/button';\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport Text from '../../ui/text/text';\nimport {\n VerticalLine,\n Wrapper,\n MainWrapper,\n Icon,\n StyledFlexView,\n} from './milestone-action-widget-styled';\nimport type {\n IMilestoneActionWidgetProps,\n TActionCtaConfigItem,\n} from './milstone-action-widget-types';\n\nconst MilestoneActionWidget: FC<IMilestoneActionWidgetProps> = memo(function MilestoneActionWidget({\n onCreatePlan,\n onAddOutcome,\n canCreatePlan,\n}) {\n const temporaryMilestoneId = useLazyRef(uuidv4);\n\n const handleCreatePlan = () => {\n onCreatePlan(temporaryMilestoneId);\n };\n\n const buttonAnalyticsProps = {\n temporary_milestone_id: temporaryMilestoneId,\n };\n\n const ACTION_CTA_CONFIG: TActionCtaConfigItem[] = [\n {\n id: 1,\n heading: 'Create a Goal',\n subHeading: `Add a new goal to the student's learning plan`,\n ctaLabel: 'Create Goal',\n icon: '⛳️',\n onClick: handleCreatePlan,\n isDisabled: !canCreatePlan,\n disableReason: 'Goals can only be added for students who have joined the class',\n borderColor: 'YELLOW_5',\n backgroundColor: 'YELLOW_1',\n borderTopColor: 'YELLOW_4',\n },\n {\n id: 2,\n heading: 'Add a Milestone',\n subHeading: 'Add a previous test score or a student achievement',\n ctaLabel: 'Add Milestone',\n icon: '💯',\n onClick: onAddOutcome,\n isDisabled: false,\n disableReason: '',\n analyticsLabel: 'add-a-milestone',\n borderColor: 'BLUE_5',\n backgroundColor: 'GREEN_1',\n borderTopColor: 'GREEN_4',\n },\n ];\n\n return (\n <FlexView>\n <MainWrapper $flexDirection=\"row\" $gapX={1.5} $gutterX={2} $justifyContent=\"space-around\">\n {ACTION_CTA_CONFIG.map(\n (\n {\n id,\n heading,\n subHeading,\n ctaLabel,\n icon,\n onClick,\n isDisabled,\n analyticsLabel,\n borderColor,\n backgroundColor,\n borderTopColor,\n disableReason,\n },\n idx,\n ) => (\n <Fragment key={id}>\n <StyledFlexView\n $background={backgroundColor}\n $gap={20}\n $gutter={12}\n $flexDirection=\"row\"\n $borderRadius={8}\n $borderColor={borderTopColor}\n >\n <FlexView $gapX={0.375}>\n <Icon $borderColor={borderColor}>{icon}</Icon>\n </FlexView>\n <FlexView $flexDirection=\"row\" $alignItems=\"flex-start\">\n <FlexView>\n <Text $renderAs=\"ub1-bold\">{heading}</Text>\n <Text $renderAs=\"ub2\" $widthX={12.15}>\n {subHeading}\n </Text>\n <Separator heightX={1} />\n\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n widthX={15.3125}\n tooltipItem={disableReason}\n hidden={!isDisabled}\n >\n <Button\n renderAs=\"secondary\"\n label={ctaLabel}\n onClick={onClick}\n widthX={10}\n size=\"small\"\n disabled={isDisabled}\n analyticsLabel={analyticsLabel}\n analyticsProps={buttonAnalyticsProps}\n />\n </ArrowTooltip>\n </FlexView>\n </FlexView>\n </StyledFlexView>\n {idx !== ACTION_CTA_CONFIG.length - 1 && (\n <Wrapper $alignItems=\"center\" $justifyContent=\"center\" $gutterX={2}>\n <VerticalLine $width={1} $background=\"GREY_2\" />\n <FlexView $background=\"WHITE\" $gapX={0.375}>\n <Text $renderAs=\"ac4-black\">OR</Text>\n </FlexView>\n </Wrapper>\n )}\n </Fragment>\n ),\n )}\n </MainWrapper>\n </FlexView>\n );\n});\n\nexport default MilestoneActionWidget;\n"],"names":["MilestoneActionWidget","memo","onCreatePlan","onAddOutcome","canCreatePlan","temporaryMilestoneId","useLazyRef","uuidv4","handleCreatePlan","buttonAnalyticsProps","ACTION_CTA_CONFIG","jsx","FlexView","MainWrapper","id","heading","subHeading","ctaLabel","icon","onClick","isDisabled","analyticsLabel","borderColor","backgroundColor","borderTopColor","disableReason","idx","jsxs","Fragment","StyledFlexView","Icon","Text","Separator","ArrowTooltip","Button","Wrapper","VerticalLine","MilestoneActionWidget$1"],"mappings":"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"}
|
|
@@ -220,7 +220,7 @@ const Ce = te(function(M) {
|
|
|
220
220
|
() => ye(A, D),
|
|
221
221
|
[A, D]
|
|
222
222
|
) ? /* @__PURE__ */ s(ue, { height: "100vh" }) : B ? /* @__PURE__ */ s(h, { $height: "100vh", $alignItems: "center", $justifyContent: "center", children: /* @__PURE__ */ _(h, { $flexGapX: 1.5, $alignItems: "center", $justifyContent: "center", children: [
|
|
223
|
-
/* @__PURE__ */ s(me, { $renderAs: "
|
|
223
|
+
/* @__PURE__ */ s(me, { $renderAs: "ab1-bold", children: q || "Oops! Something went wrong. Please try again later." }),
|
|
224
224
|
/* @__PURE__ */ s(
|
|
225
225
|
ae,
|
|
226
226
|
{
|
package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources-assign.js","sources":["../../../../../src/features/milestone/milestone-resources/resources-assign/resources-assign.tsx"],"sourcesContent":["import { pluralize } from 'humanize-plus';\nimport { memo, useCallback, useEffect, useMemo, useRef, type FC } from 'react';\n\nimport Back2Icon from '../../../../assets/line-icons/icons/back2';\nimport Button from '../../../ui/buttons/button/button';\nimport { useUIContext } from '../../../ui/context/context';\nimport SearchableInput from '../../../ui/inputs/searchable-input/searchable-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport Text from '../../../ui/text/text';\nimport AddedResourceAndFilters from './added-resource-and-filters';\nimport { getResourceSearchAPI, type IExtendedResourceModel } from './api/get-resource';\nimport { usePostMilestoneResource } from './api/goal-resource-assign';\nimport { usePostLPARResource } from './api/lpar-resource-assign';\nimport { HEADER_HEIGHT } from './constant';\nimport { useResourceAssignStore } from './hooks/use-resource-assign-store';\nimport { RESOURCE_ASSIGN_ANALYTICS_EVENTS } from './resource-assign-analytics-events';\nimport ResourceItems from './resource-items/resource-items';\nimport * as Styled from './resources-assign-styled';\nimport type { IEPResourceAssign } from './resources-assign-type';\nimport { checkIfFiltersAreAdded, getCanShowDefaultLoadingScreen } from './utils';\n\nconst EPResourceAssignComp: FC<IEPResourceAssign> = memo(function EPResourceAssign(props) {\n const {\n studentId,\n stream,\n onResourceAssign,\n onError,\n onExitResourceAssign,\n onViewResource,\n userMilestoneId,\n programId,\n userType,\n } = props;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const {\n initialize,\n setPageNumber,\n setSearchValue,\n updateSearchQuery,\n setResourceItems,\n appendResourceItems,\n setResourceFilters,\n setError,\n setTotalPages,\n setIsResourceSearchProcessing,\n setIsResourceSearchFailed,\n resetState,\n reset,\n selectedResourceItems,\n searchValue,\n searchQuery,\n resourceFilters,\n pageNumber,\n error,\n isResourceSearchProcessing,\n isResourceSearchFailed,\n } = useResourceAssignStore(state => ({\n initialize: state.initialize,\n setPageNumber: state.setPageNumber,\n setSearchValue: state.setSearchValue,\n updateSearchQuery: state.updateSearchQuery,\n setResourceItems: state.setResourceItems,\n appendResourceItems: state.appendResourceItems,\n setResourceFilters: state.setResourceFilters,\n setError: state.setError,\n setTotalPages: state.setTotalPages,\n setIsResourceSearchProcessing: state.setIsResourceSearchProcessing,\n setIsResourceSearchFailed: state.setIsResourceSearchFailed,\n resetState: state.resetState,\n reset: state.reset,\n selectedResourceItems: state.selectedResourceItems,\n searchValue: state.searchValue,\n searchQuery: state.searchQuery,\n resourceFilters: state.resourceFilters,\n pageNumber: state.pageNumber,\n error: state.error,\n isResourceSearchProcessing: state.isResourceSearchProcessing,\n isResourceSearchFailed: state.isResourceSearchFailed,\n }));\n\n const memoizedSearchQuery = useMemo(\n () => searchQuery,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n searchQuery.board,\n searchQuery.grade,\n searchQuery.stream,\n searchQuery.search_term,\n searchQuery.node_type,\n searchQuery.page,\n searchQuery.per_page,\n searchQuery.user_milestone_id,\n searchQuery.program_id,\n searchQuery.user_id,\n ],\n );\n\n const abortControllerRef = useRef<AbortController | null>(null);\n\n useEffect(() => {\n initialize({\n stream,\n studentId,\n userMilestoneId,\n programId,\n });\n }, [programId, stream, studentId, userMilestoneId, initialize]);\n\n const handleOnResourceAssignComplete = useCallback(\n (errorMessage: string | null) => {\n if (errorMessage) {\n onError(errorMessage);\n } else {\n const toastMessage = `${pluralize(selectedResourceItems.length, 'Resource')} ${\n selectedResourceItems.length > 1 ? 'have' : 'has'\n } been assigned and added as homework.`;\n\n onResourceAssign(toastMessage);\n }\n },\n [onError, onResourceAssign, selectedResourceItems],\n );\n\n const { post: postAssignGoalResource, isProcessing: goalResourceAssignInProgress } =\n usePostMilestoneResource({\n onComplete: handleOnResourceAssignComplete,\n });\n const { post: postAssignLPARResource, isProcessing: lparResourceAssignInProgress } =\n usePostLPARResource({\n onComplete: handleOnResourceAssignComplete,\n });\n const handleSearch = useCallback(\n (searchOnClear?: boolean) => {\n trackEvent(RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_SEARCH_INPUT_VALUE, {\n search_term: searchValue,\n });\n\n updateSearchQuery({ search_term: searchOnClear ? '' : searchValue });\n },\n [searchValue, trackEvent, updateSearchQuery],\n );\n\n const fetchResource = useCallback(\n async (updatedPageNumber?: number) => {\n //* Reset page number only when filter is updated not on scroll\n if (!updatedPageNumber) {\n setPageNumber(1);\n }\n setIsResourceSearchProcessing(true);\n\n if (checkIfFiltersAreAdded(memoizedSearchQuery) || memoizedSearchQuery.stream) {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n }\n\n const controller = new AbortController();\n\n abortControllerRef.current = controller;\n\n await getResourceSearchAPI({\n id: studentId,\n query: updatedPageNumber\n ? { ...memoizedSearchQuery, page: updatedPageNumber }\n : memoizedSearchQuery,\n meta: null,\n abortSignal: abortControllerRef.current.signal,\n })\n .then(res => {\n if (res) {\n const { __CODE__, __ERROR__, isProcessingFailed } = res as IExtendedResourceModel;\n\n if (__CODE__ >= 400 && __CODE__ < 500) {\n onError(__ERROR__?.message ?? 'Error while fetching the resource');\n } else if (__CODE__ === 500) {\n setIsResourceSearchFailed(isProcessingFailed);\n setError('Internal server error, Please try again');\n } else {\n const { data } = res || {};\n\n if (data) {\n setResourceFilters({\n boards: data.filters.boards,\n grades: data.filters.grades,\n node_types: data.filters.node_types,\n });\n setTotalPages(data.total_pages);\n\n if (updatedPageNumber && updatedPageNumber !== 1) {\n appendResourceItems(data.results);\n } else {\n setResourceItems(data.results);\n }\n\n setIsResourceSearchProcessing(false);\n }\n }\n }\n })\n .catch(() => {\n setIsResourceSearchProcessing(false);\n setIsResourceSearchFailed(true);\n });\n }\n },\n [\n onError,\n memoizedSearchQuery,\n studentId,\n setPageNumber,\n setResourceFilters,\n setTotalPages,\n setResourceItems,\n appendResourceItems,\n setIsResourceSearchProcessing,\n setIsResourceSearchFailed,\n setError,\n ],\n );\n\n const handleScrollPagination = useCallback(\n (newPageNumber: number) => {\n setPageNumber(newPageNumber);\n fetchResource(newPageNumber);\n },\n [setPageNumber, fetchResource],\n );\n\n const handleFailureReset = useCallback(() => {\n setIsResourceSearchFailed(false);\n setError('');\n resetState({\n searchValue: '',\n searchQuery: {\n stream: stream,\n page: pageNumber,\n per_page: 50,\n user_id: studentId,\n user_milestone_id: userMilestoneId,\n program_id: programId,\n },\n });\n }, [\n stream,\n pageNumber,\n studentId,\n userMilestoneId,\n programId,\n resetState,\n setIsResourceSearchFailed,\n setError,\n ]);\n\n const handleOnResourceAssign = useCallback(() => {\n if (userMilestoneId) {\n postAssignGoalResource(\n {\n node_ids: selectedResourceItems.map(resource => resource.node_id),\n },\n { userMilestoneId },\n );\n } else if (programId) {\n postAssignLPARResource(\n {\n nodes: selectedResourceItems.map(({ node_id: nodeId }) => ({\n id: nodeId,\n attempt_location: 'ANY' as const,\n })),\n program_id: programId,\n },\n { studentId },\n );\n }\n }, [\n postAssignGoalResource,\n userMilestoneId,\n selectedResourceItems,\n postAssignLPARResource,\n programId,\n studentId,\n ]);\n\n useEffect(() => {\n fetchResource();\n\n return () => {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n }\n };\n }, [fetchResource]);\n\n useEffect(() => {\n return () => {\n reset();\n };\n }, [reset]);\n\n const canShowDefaultLoader = useMemo(\n () => getCanShowDefaultLoadingScreen(isResourceSearchProcessing, resourceFilters),\n [isResourceSearchProcessing, resourceFilters],\n );\n\n if (canShowDefaultLoader) return <AppLoader height=\"100vh\" />;\n\n if (isResourceSearchFailed) {\n return (\n <FlexView $height=\"100vh\" $alignItems=\"center\" $justifyContent=\"center\">\n <FlexView $flexGapX={1.5} $alignItems=\"center\" $justifyContent=\"center\">\n <Text $renderAs=\"h6\">\n {error || 'Oops! Something went wrong. Please try again later.'}\n </Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n analyticsLabel=\"resource_get_api_failed\"\n onClick={handleFailureReset}\n />\n </FlexView>\n </FlexView>\n );\n }\n\n return (\n <FlexView $flexDirection=\"row\" $height=\"100vh\">\n <Styled.SearchContainer $width=\"60%\">\n <Styled.HeaderWrapper\n $heightX={4}\n $background=\"WHITE_3\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <SearchableInput\n value={searchValue}\n onSearchTextChange={setSearchValue}\n renderAs=\"primary\"\n width=\"99%\"\n size=\"regular\"\n label=\"Type topic name...\"\n onEnter={handleSearch}\n searchOnClear\n onPrefixElementClick={onExitResourceAssign}\n prefixElement={<Back2Icon />}\n />\n </Styled.HeaderWrapper>\n\n <FlexView $height={`calc(100vh - ${HEADER_HEIGHT}px)`} $position=\"relative\">\n {isResourceSearchProcessing && <Styled.LoaderWrapper />}\n\n <ResourceItems\n assigningInProgress={goalResourceAssignInProgress || lparResourceAssignInProgress}\n onResourceAssign={handleOnResourceAssign}\n onViewResource={onViewResource}\n onPageNumberUpdate={handleScrollPagination}\n userType={userType}\n />\n </FlexView>\n </Styled.SearchContainer>\n\n <FlexView $width=\"40%\">\n <AddedResourceAndFilters onViewResource={onViewResource} userType={userType} />\n </FlexView>\n </FlexView>\n );\n});\n\nexport default EPResourceAssignComp;\n"],"names":["EPResourceAssignComp","memo","props","studentId","stream","onResourceAssign","onError","onExitResourceAssign","onViewResource","userMilestoneId","programId","userType","trackEvent","useUIContext","initialize","setPageNumber","setSearchValue","updateSearchQuery","setResourceItems","appendResourceItems","setResourceFilters","setError","setTotalPages","setIsResourceSearchProcessing","setIsResourceSearchFailed","resetState","reset","selectedResourceItems","searchValue","searchQuery","resourceFilters","pageNumber","error","isResourceSearchProcessing","isResourceSearchFailed","useResourceAssignStore","state","memoizedSearchQuery","useMemo","abortControllerRef","useRef","useEffect","handleOnResourceAssignComplete","useCallback","errorMessage","toastMessage","pluralize","postAssignGoalResource","goalResourceAssignInProgress","usePostMilestoneResource","postAssignLPARResource","lparResourceAssignInProgress","usePostLPARResource","handleSearch","searchOnClear","RESOURCE_ASSIGN_ANALYTICS_EVENTS","fetchResource","updatedPageNumber","checkIfFiltersAreAdded","controller","getResourceSearchAPI","res","__CODE__","__ERROR__","isProcessingFailed","data","handleScrollPagination","newPageNumber","handleFailureReset","handleOnResourceAssign","resource","nodeId","getCanShowDefaultLoadingScreen","jsx","AppLoader","FlexView","jsxs","Text","Button","Styled.SearchContainer","Styled.HeaderWrapper","SearchableInput","Back2Icon","HEADER_HEIGHT","Styled.LoaderWrapper","ResourceItems","AddedResourceAndFilters","EPResourceAssign"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resources-assign.js","sources":["../../../../../src/features/milestone/milestone-resources/resources-assign/resources-assign.tsx"],"sourcesContent":["import { pluralize } from 'humanize-plus';\nimport { memo, useCallback, useEffect, useMemo, useRef, type FC } from 'react';\n\nimport Back2Icon from '../../../../assets/line-icons/icons/back2';\nimport Button from '../../../ui/buttons/button/button';\nimport { useUIContext } from '../../../ui/context/context';\nimport SearchableInput from '../../../ui/inputs/searchable-input/searchable-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport Text from '../../../ui/text/text';\nimport AddedResourceAndFilters from './added-resource-and-filters';\nimport { getResourceSearchAPI, type IExtendedResourceModel } from './api/get-resource';\nimport { usePostMilestoneResource } from './api/goal-resource-assign';\nimport { usePostLPARResource } from './api/lpar-resource-assign';\nimport { HEADER_HEIGHT } from './constant';\nimport { useResourceAssignStore } from './hooks/use-resource-assign-store';\nimport { RESOURCE_ASSIGN_ANALYTICS_EVENTS } from './resource-assign-analytics-events';\nimport ResourceItems from './resource-items/resource-items';\nimport * as Styled from './resources-assign-styled';\nimport type { IEPResourceAssign } from './resources-assign-type';\nimport { checkIfFiltersAreAdded, getCanShowDefaultLoadingScreen } from './utils';\n\nconst EPResourceAssignComp: FC<IEPResourceAssign> = memo(function EPResourceAssign(props) {\n const {\n studentId,\n stream,\n onResourceAssign,\n onError,\n onExitResourceAssign,\n onViewResource,\n userMilestoneId,\n programId,\n userType,\n } = props;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const {\n initialize,\n setPageNumber,\n setSearchValue,\n updateSearchQuery,\n setResourceItems,\n appendResourceItems,\n setResourceFilters,\n setError,\n setTotalPages,\n setIsResourceSearchProcessing,\n setIsResourceSearchFailed,\n resetState,\n reset,\n selectedResourceItems,\n searchValue,\n searchQuery,\n resourceFilters,\n pageNumber,\n error,\n isResourceSearchProcessing,\n isResourceSearchFailed,\n } = useResourceAssignStore(state => ({\n initialize: state.initialize,\n setPageNumber: state.setPageNumber,\n setSearchValue: state.setSearchValue,\n updateSearchQuery: state.updateSearchQuery,\n setResourceItems: state.setResourceItems,\n appendResourceItems: state.appendResourceItems,\n setResourceFilters: state.setResourceFilters,\n setError: state.setError,\n setTotalPages: state.setTotalPages,\n setIsResourceSearchProcessing: state.setIsResourceSearchProcessing,\n setIsResourceSearchFailed: state.setIsResourceSearchFailed,\n resetState: state.resetState,\n reset: state.reset,\n selectedResourceItems: state.selectedResourceItems,\n searchValue: state.searchValue,\n searchQuery: state.searchQuery,\n resourceFilters: state.resourceFilters,\n pageNumber: state.pageNumber,\n error: state.error,\n isResourceSearchProcessing: state.isResourceSearchProcessing,\n isResourceSearchFailed: state.isResourceSearchFailed,\n }));\n\n const memoizedSearchQuery = useMemo(\n () => searchQuery,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n searchQuery.board,\n searchQuery.grade,\n searchQuery.stream,\n searchQuery.search_term,\n searchQuery.node_type,\n searchQuery.page,\n searchQuery.per_page,\n searchQuery.user_milestone_id,\n searchQuery.program_id,\n searchQuery.user_id,\n ],\n );\n\n const abortControllerRef = useRef<AbortController | null>(null);\n\n useEffect(() => {\n initialize({\n stream,\n studentId,\n userMilestoneId,\n programId,\n });\n }, [programId, stream, studentId, userMilestoneId, initialize]);\n\n const handleOnResourceAssignComplete = useCallback(\n (errorMessage: string | null) => {\n if (errorMessage) {\n onError(errorMessage);\n } else {\n const toastMessage = `${pluralize(selectedResourceItems.length, 'Resource')} ${\n selectedResourceItems.length > 1 ? 'have' : 'has'\n } been assigned and added as homework.`;\n\n onResourceAssign(toastMessage);\n }\n },\n [onError, onResourceAssign, selectedResourceItems],\n );\n\n const { post: postAssignGoalResource, isProcessing: goalResourceAssignInProgress } =\n usePostMilestoneResource({\n onComplete: handleOnResourceAssignComplete,\n });\n const { post: postAssignLPARResource, isProcessing: lparResourceAssignInProgress } =\n usePostLPARResource({\n onComplete: handleOnResourceAssignComplete,\n });\n const handleSearch = useCallback(\n (searchOnClear?: boolean) => {\n trackEvent(RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_SEARCH_INPUT_VALUE, {\n search_term: searchValue,\n });\n\n updateSearchQuery({ search_term: searchOnClear ? '' : searchValue });\n },\n [searchValue, trackEvent, updateSearchQuery],\n );\n\n const fetchResource = useCallback(\n async (updatedPageNumber?: number) => {\n //* Reset page number only when filter is updated not on scroll\n if (!updatedPageNumber) {\n setPageNumber(1);\n }\n setIsResourceSearchProcessing(true);\n\n if (checkIfFiltersAreAdded(memoizedSearchQuery) || memoizedSearchQuery.stream) {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n }\n\n const controller = new AbortController();\n\n abortControllerRef.current = controller;\n\n await getResourceSearchAPI({\n id: studentId,\n query: updatedPageNumber\n ? { ...memoizedSearchQuery, page: updatedPageNumber }\n : memoizedSearchQuery,\n meta: null,\n abortSignal: abortControllerRef.current.signal,\n })\n .then(res => {\n if (res) {\n const { __CODE__, __ERROR__, isProcessingFailed } = res as IExtendedResourceModel;\n\n if (__CODE__ >= 400 && __CODE__ < 500) {\n onError(__ERROR__?.message ?? 'Error while fetching the resource');\n } else if (__CODE__ === 500) {\n setIsResourceSearchFailed(isProcessingFailed);\n setError('Internal server error, Please try again');\n } else {\n const { data } = res || {};\n\n if (data) {\n setResourceFilters({\n boards: data.filters.boards,\n grades: data.filters.grades,\n node_types: data.filters.node_types,\n });\n setTotalPages(data.total_pages);\n\n if (updatedPageNumber && updatedPageNumber !== 1) {\n appendResourceItems(data.results);\n } else {\n setResourceItems(data.results);\n }\n\n setIsResourceSearchProcessing(false);\n }\n }\n }\n })\n .catch(() => {\n setIsResourceSearchProcessing(false);\n setIsResourceSearchFailed(true);\n });\n }\n },\n [\n onError,\n memoizedSearchQuery,\n studentId,\n setPageNumber,\n setResourceFilters,\n setTotalPages,\n setResourceItems,\n appendResourceItems,\n setIsResourceSearchProcessing,\n setIsResourceSearchFailed,\n setError,\n ],\n );\n\n const handleScrollPagination = useCallback(\n (newPageNumber: number) => {\n setPageNumber(newPageNumber);\n fetchResource(newPageNumber);\n },\n [setPageNumber, fetchResource],\n );\n\n const handleFailureReset = useCallback(() => {\n setIsResourceSearchFailed(false);\n setError('');\n resetState({\n searchValue: '',\n searchQuery: {\n stream: stream,\n page: pageNumber,\n per_page: 50,\n user_id: studentId,\n user_milestone_id: userMilestoneId,\n program_id: programId,\n },\n });\n }, [\n stream,\n pageNumber,\n studentId,\n userMilestoneId,\n programId,\n resetState,\n setIsResourceSearchFailed,\n setError,\n ]);\n\n const handleOnResourceAssign = useCallback(() => {\n if (userMilestoneId) {\n postAssignGoalResource(\n {\n node_ids: selectedResourceItems.map(resource => resource.node_id),\n },\n { userMilestoneId },\n );\n } else if (programId) {\n postAssignLPARResource(\n {\n nodes: selectedResourceItems.map(({ node_id: nodeId }) => ({\n id: nodeId,\n attempt_location: 'ANY' as const,\n })),\n program_id: programId,\n },\n { studentId },\n );\n }\n }, [\n postAssignGoalResource,\n userMilestoneId,\n selectedResourceItems,\n postAssignLPARResource,\n programId,\n studentId,\n ]);\n\n useEffect(() => {\n fetchResource();\n\n return () => {\n if (abortControllerRef.current) {\n abortControllerRef.current.abort();\n }\n };\n }, [fetchResource]);\n\n useEffect(() => {\n return () => {\n reset();\n };\n }, [reset]);\n\n const canShowDefaultLoader = useMemo(\n () => getCanShowDefaultLoadingScreen(isResourceSearchProcessing, resourceFilters),\n [isResourceSearchProcessing, resourceFilters],\n );\n\n if (canShowDefaultLoader) return <AppLoader height=\"100vh\" />;\n\n if (isResourceSearchFailed) {\n return (\n <FlexView $height=\"100vh\" $alignItems=\"center\" $justifyContent=\"center\">\n <FlexView $flexGapX={1.5} $alignItems=\"center\" $justifyContent=\"center\">\n <Text $renderAs=\"ab1-bold\">\n {error || 'Oops! Something went wrong. Please try again later.'}\n </Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n analyticsLabel=\"resource_get_api_failed\"\n onClick={handleFailureReset}\n />\n </FlexView>\n </FlexView>\n );\n }\n\n return (\n <FlexView $flexDirection=\"row\" $height=\"100vh\">\n <Styled.SearchContainer $width=\"60%\">\n <Styled.HeaderWrapper\n $heightX={4}\n $background=\"WHITE_3\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <SearchableInput\n value={searchValue}\n onSearchTextChange={setSearchValue}\n renderAs=\"primary\"\n width=\"99%\"\n size=\"regular\"\n label=\"Type topic name...\"\n onEnter={handleSearch}\n searchOnClear\n onPrefixElementClick={onExitResourceAssign}\n prefixElement={<Back2Icon />}\n />\n </Styled.HeaderWrapper>\n\n <FlexView $height={`calc(100vh - ${HEADER_HEIGHT}px)`} $position=\"relative\">\n {isResourceSearchProcessing && <Styled.LoaderWrapper />}\n\n <ResourceItems\n assigningInProgress={goalResourceAssignInProgress || lparResourceAssignInProgress}\n onResourceAssign={handleOnResourceAssign}\n onViewResource={onViewResource}\n onPageNumberUpdate={handleScrollPagination}\n userType={userType}\n />\n </FlexView>\n </Styled.SearchContainer>\n\n <FlexView $width=\"40%\">\n <AddedResourceAndFilters onViewResource={onViewResource} userType={userType} />\n </FlexView>\n </FlexView>\n );\n});\n\nexport default EPResourceAssignComp;\n"],"names":["EPResourceAssignComp","memo","props","studentId","stream","onResourceAssign","onError","onExitResourceAssign","onViewResource","userMilestoneId","programId","userType","trackEvent","useUIContext","initialize","setPageNumber","setSearchValue","updateSearchQuery","setResourceItems","appendResourceItems","setResourceFilters","setError","setTotalPages","setIsResourceSearchProcessing","setIsResourceSearchFailed","resetState","reset","selectedResourceItems","searchValue","searchQuery","resourceFilters","pageNumber","error","isResourceSearchProcessing","isResourceSearchFailed","useResourceAssignStore","state","memoizedSearchQuery","useMemo","abortControllerRef","useRef","useEffect","handleOnResourceAssignComplete","useCallback","errorMessage","toastMessage","pluralize","postAssignGoalResource","goalResourceAssignInProgress","usePostMilestoneResource","postAssignLPARResource","lparResourceAssignInProgress","usePostLPARResource","handleSearch","searchOnClear","RESOURCE_ASSIGN_ANALYTICS_EVENTS","fetchResource","updatedPageNumber","checkIfFiltersAreAdded","controller","getResourceSearchAPI","res","__CODE__","__ERROR__","isProcessingFailed","data","handleScrollPagination","newPageNumber","handleFailureReset","handleOnResourceAssign","resource","nodeId","getCanShowDefaultLoadingScreen","jsx","AppLoader","FlexView","jsxs","Text","Button","Styled.SearchContainer","Styled.HeaderWrapper","SearchableInput","Back2Icon","HEADER_HEIGHT","Styled.LoaderWrapper","ResourceItems","AddedResourceAndFilters","EPResourceAssign"],"mappings":"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"}
|
|
@@ -20,8 +20,8 @@ const de = H(
|
|
|
20
20
|
userType: p,
|
|
21
21
|
studentId: o,
|
|
22
22
|
userMilestoneId: r,
|
|
23
|
-
canUpdatePlan:
|
|
24
|
-
allowResourceAssignInDraft:
|
|
23
|
+
canUpdatePlan: f,
|
|
24
|
+
allowResourceAssignInDraft: h,
|
|
25
25
|
onAssignResources: s,
|
|
26
26
|
onNodeAttempt: P,
|
|
27
27
|
onNodeView: S,
|
|
@@ -30,24 +30,24 @@ const de = H(
|
|
|
30
30
|
onNodeUnassign: j,
|
|
31
31
|
onNodeReattempt: k,
|
|
32
32
|
onNodeAssignAsHomework: N
|
|
33
|
-
} = T, g = p === "TEACHER", A = !
|
|
33
|
+
} = T, g = p === "TEACHER", A = !f || !t || t && m && !h, {
|
|
34
34
|
get: $,
|
|
35
35
|
isProcessed: n,
|
|
36
|
-
isProcessing:
|
|
36
|
+
isProcessing: b,
|
|
37
37
|
isProcessingFailed: i,
|
|
38
|
-
isStale:
|
|
38
|
+
isStale: R,
|
|
39
39
|
data: a
|
|
40
|
-
} = U(),
|
|
40
|
+
} = U(), w = d(() => {
|
|
41
41
|
r && $(r, void 0, {
|
|
42
42
|
studentId: o
|
|
43
43
|
});
|
|
44
44
|
}, [o, r, $]), c = d(() => {
|
|
45
|
-
|
|
46
|
-
}, [
|
|
45
|
+
w();
|
|
46
|
+
}, [w]);
|
|
47
47
|
v(() => {
|
|
48
|
-
!
|
|
49
|
-
}, [c, n,
|
|
50
|
-
const
|
|
48
|
+
!b && (!n && !i || R) && c();
|
|
49
|
+
}, [c, n, b, i, R]);
|
|
50
|
+
const I = d(() => {
|
|
51
51
|
if (typeof s != "function")
|
|
52
52
|
throw new Error("onAssignResources must be a function");
|
|
53
53
|
if (!r) throw new Error("userMilestoneId is required");
|
|
@@ -60,7 +60,7 @@ const de = H(
|
|
|
60
60
|
$justifyContent: "center",
|
|
61
61
|
$background: "WHITE",
|
|
62
62
|
children: /* @__PURE__ */ l(C, { $flexGapX: 1.5, $alignItems: "center", $justifyContent: "center", children: [
|
|
63
|
-
/* @__PURE__ */ e(E, { $renderAs: "
|
|
63
|
+
/* @__PURE__ */ e(E, { $renderAs: "ab1-bold", children: "Oops! Something went wrong. Please try again later." }),
|
|
64
64
|
/* @__PURE__ */ e(
|
|
65
65
|
y,
|
|
66
66
|
{
|
|
@@ -89,10 +89,10 @@ const de = H(
|
|
|
89
89
|
onNodeAssignAsHomework: N,
|
|
90
90
|
studentId: o,
|
|
91
91
|
userMilestoneId: r,
|
|
92
|
-
disableMenuActions:
|
|
92
|
+
disableMenuActions: h
|
|
93
93
|
}
|
|
94
94
|
),
|
|
95
|
-
g &&
|
|
95
|
+
g && f && /* @__PURE__ */ e(
|
|
96
96
|
V,
|
|
97
97
|
{
|
|
98
98
|
$flexDirection: "row",
|
|
@@ -106,7 +106,7 @@ const de = H(
|
|
|
106
106
|
renderAs: "secondary",
|
|
107
107
|
size: "small",
|
|
108
108
|
analyticsLabel: "Milestone Resource Search",
|
|
109
|
-
onClick:
|
|
109
|
+
onClick: I,
|
|
110
110
|
disabled: !t
|
|
111
111
|
}
|
|
112
112
|
) })
|
|
@@ -145,7 +145,7 @@ const de = H(
|
|
|
145
145
|
Icon: O,
|
|
146
146
|
shape: "square",
|
|
147
147
|
size: "small",
|
|
148
|
-
onClick:
|
|
148
|
+
onClick: I,
|
|
149
149
|
disabled: A
|
|
150
150
|
}
|
|
151
151
|
)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources-list.js","sources":["../../../../../src/features/milestone/milestone-resources/resources-list/resources-list.tsx"],"sourcesContent":["import { type FC, memo, useCallback, useEffect } from 'react';\n\nimport { IMAGES } from '../../../../assets/images/images';\nimport PlusIcon from '../../../../assets/line-icons/icons/plus';\nimport SearchIcon from '../../../../assets/line-icons/icons/search';\nimport ResourcesList from '../../../sheet-v2/resource-list/resource-list';\nimport ArrowTooltip from '../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../ui/buttons/button/button';\nimport IconButton from '../../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport Text from '../../../ui/text/text';\nimport { useGetMilestoneResources } from '../../milestone-list-container/api/get-milestone-resources';\nimport * as Styled from './resources-list-styled';\nimport type { IMilestoneWidgetResourcesProps } from './resources-list-types';\n\nconst MilestoneWidgetResources: FC<IMilestoneWidgetResourcesProps> = memo(\n function MilestoneWidgetResources(props) {\n const {\n isDraftMilestone,\n isMilestoneActive,\n userType,\n studentId,\n userMilestoneId,\n canUpdatePlan,\n allowResourceAssignInDraft,\n onAssignResources,\n onNodeAttempt,\n onNodeView,\n onNodeReview,\n onNodeReset,\n onNodeUnassign,\n onNodeReattempt,\n onNodeAssignAsHomework,\n } = props;\n\n const isTeacher = userType === 'TEACHER';\n const isEPSheetCreationDisabled =\n !canUpdatePlan ||\n !isMilestoneActive ||\n (isMilestoneActive && isDraftMilestone && !allowResourceAssignInDraft);\n\n const {\n get: getMilestoneResources,\n isProcessed,\n isProcessing,\n isProcessingFailed,\n isStale,\n data: sheets,\n } = useGetMilestoneResources();\n\n const fetchMilestoneResources = useCallback(() => {\n if (userMilestoneId) {\n getMilestoneResources(userMilestoneId, undefined, {\n studentId,\n });\n }\n }, [studentId, userMilestoneId, getMilestoneResources]);\n\n const handleOnTryAgain = useCallback(() => {\n fetchMilestoneResources();\n }, [fetchMilestoneResources]);\n\n useEffect(() => {\n if (!isProcessing && ((!isProcessed && !isProcessingFailed) || isStale)) {\n handleOnTryAgain();\n }\n }, [handleOnTryAgain, isProcessed, isProcessing, isProcessingFailed, isStale]);\n\n const handleOnAssignResources = useCallback(() => {\n if (typeof onAssignResources !== 'function')\n throw new Error('onAssignResources must be a function');\n\n if (!userMilestoneId) throw new Error('userMilestoneId is required');\n\n onAssignResources(userMilestoneId);\n }, [onAssignResources, userMilestoneId]);\n\n const sheetsDataPresent = sheets && sheets.length > 0;\n\n if (isProcessingFailed) {\n return (\n <Styled.MilestoneResourcesWrapper\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"WHITE\"\n >\n <FlexView $flexGapX={1.5} $alignItems=\"center\" $justifyContent=\"center\">\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={handleOnTryAgain}\n />\n </FlexView>\n </Styled.MilestoneResourcesWrapper>\n );\n }\n\n if (isProcessed) {\n return (\n <Styled.MilestoneResourcesWrapper $justifyContent=\"space-between\">\n {sheetsDataPresent ? (\n <>\n <ResourcesList\n sheets={sheets}\n userType={userType}\n onNodeAttempt={onNodeAttempt}\n onNodeView={onNodeView}\n onNodeReview={onNodeReview}\n onNodeReattempt={onNodeReattempt}\n onNodeReset={onNodeReset}\n onNodeUnassign={onNodeUnassign}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n studentId={studentId}\n userMilestoneId={userMilestoneId}\n disableMenuActions={allowResourceAssignInDraft} //allowResourceAssignInDraft will be true for Trial V3 Sessions\n />\n {isTeacher && canUpdatePlan && (\n <Styled.SearchButtonWrapper\n $flexDirection=\"row\"\n $justifyContent=\"flex-end\"\n $gapX={1}\n $gutterX={1}\n >\n <Styled.SearchButtonCover>\n <IconButton\n Icon={SearchIcon}\n renderAs=\"secondary\"\n size=\"small\"\n analyticsLabel=\"Milestone Resource Search\"\n onClick={handleOnAssignResources}\n disabled={!isMilestoneActive}\n />\n </Styled.SearchButtonCover>\n </Styled.SearchButtonWrapper>\n )}\n </>\n ) : (\n <FlexView\n $width=\"100%\"\n $height=\"100%\"\n $alignItems=\"center\"\n $justifyContent=\"flex-start\"\n $background=\"WHITE\"\n >\n <Styled.DefaultWrapper $isImageWrapper>\n <img\n src={IMAGES.BG_EMPTY_RESOURCES}\n alt=\"Empty resources\"\n width={420}\n height={420}\n />\n </Styled.DefaultWrapper>\n\n <Styled.DefaultWrapper>\n {isTeacher ? (\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n hidden={!isEPSheetCreationDisabled}\n tooltipItem={\n isDraftMilestone ? 'Allowed after plan is published' : 'Plan is completed'\n }\n >\n <Button\n renderAs=\"primary\"\n label=\"Assign Resource\"\n Icon={PlusIcon}\n shape=\"square\"\n size=\"small\"\n onClick={handleOnAssignResources}\n disabled={isEPSheetCreationDisabled}\n />\n </ArrowTooltip>\n ) : (\n <Text $renderAs=\"ab2-bold\">Wait for the teacher to assign a resource</Text>\n )}\n </Styled.DefaultWrapper>\n </FlexView>\n )}\n </Styled.MilestoneResourcesWrapper>\n );\n }\n\n return (\n <Styled.MilestoneResourcesWrapper $justifyContent=\"center\" $background=\"WHITE\">\n <AppLoader height=\"100%\" />\n </Styled.MilestoneResourcesWrapper>\n );\n },\n);\n\nexport default MilestoneWidgetResources;\n"],"names":["MilestoneWidgetResources","memo","props","isDraftMilestone","isMilestoneActive","userType","studentId","userMilestoneId","canUpdatePlan","allowResourceAssignInDraft","onAssignResources","onNodeAttempt","onNodeView","onNodeReview","onNodeReset","onNodeUnassign","onNodeReattempt","onNodeAssignAsHomework","isTeacher","isEPSheetCreationDisabled","getMilestoneResources","isProcessed","isProcessing","isProcessingFailed","isStale","sheets","useGetMilestoneResources","fetchMilestoneResources","useCallback","handleOnTryAgain","useEffect","handleOnAssignResources","sheetsDataPresent","jsx","Styled.MilestoneResourcesWrapper","FlexView","Text","Button","jsxs","Fragment","ResourcesList","Styled.SearchButtonWrapper","Styled.SearchButtonCover","IconButton","SearchIcon","Styled.DefaultWrapper","IMAGES","ArrowTooltip","PlusIcon","AppLoader"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resources-list.js","sources":["../../../../../src/features/milestone/milestone-resources/resources-list/resources-list.tsx"],"sourcesContent":["import { type FC, memo, useCallback, useEffect } from 'react';\n\nimport { IMAGES } from '../../../../assets/images/images';\nimport PlusIcon from '../../../../assets/line-icons/icons/plus';\nimport SearchIcon from '../../../../assets/line-icons/icons/search';\nimport ResourcesList from '../../../sheet-v2/resource-list/resource-list';\nimport ArrowTooltip from '../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../ui/buttons/button/button';\nimport IconButton from '../../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport Text from '../../../ui/text/text';\nimport { useGetMilestoneResources } from '../../milestone-list-container/api/get-milestone-resources';\nimport * as Styled from './resources-list-styled';\nimport type { IMilestoneWidgetResourcesProps } from './resources-list-types';\n\nconst MilestoneWidgetResources: FC<IMilestoneWidgetResourcesProps> = memo(\n function MilestoneWidgetResources(props) {\n const {\n isDraftMilestone,\n isMilestoneActive,\n userType,\n studentId,\n userMilestoneId,\n canUpdatePlan,\n allowResourceAssignInDraft,\n onAssignResources,\n onNodeAttempt,\n onNodeView,\n onNodeReview,\n onNodeReset,\n onNodeUnassign,\n onNodeReattempt,\n onNodeAssignAsHomework,\n } = props;\n\n const isTeacher = userType === 'TEACHER';\n const isEPSheetCreationDisabled =\n !canUpdatePlan ||\n !isMilestoneActive ||\n (isMilestoneActive && isDraftMilestone && !allowResourceAssignInDraft);\n\n const {\n get: getMilestoneResources,\n isProcessed,\n isProcessing,\n isProcessingFailed,\n isStale,\n data: sheets,\n } = useGetMilestoneResources();\n\n const fetchMilestoneResources = useCallback(() => {\n if (userMilestoneId) {\n getMilestoneResources(userMilestoneId, undefined, {\n studentId,\n });\n }\n }, [studentId, userMilestoneId, getMilestoneResources]);\n\n const handleOnTryAgain = useCallback(() => {\n fetchMilestoneResources();\n }, [fetchMilestoneResources]);\n\n useEffect(() => {\n if (!isProcessing && ((!isProcessed && !isProcessingFailed) || isStale)) {\n handleOnTryAgain();\n }\n }, [handleOnTryAgain, isProcessed, isProcessing, isProcessingFailed, isStale]);\n\n const handleOnAssignResources = useCallback(() => {\n if (typeof onAssignResources !== 'function')\n throw new Error('onAssignResources must be a function');\n\n if (!userMilestoneId) throw new Error('userMilestoneId is required');\n\n onAssignResources(userMilestoneId);\n }, [onAssignResources, userMilestoneId]);\n\n const sheetsDataPresent = sheets && sheets.length > 0;\n\n if (isProcessingFailed) {\n return (\n <Styled.MilestoneResourcesWrapper\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"WHITE\"\n >\n <FlexView $flexGapX={1.5} $alignItems=\"center\" $justifyContent=\"center\">\n <Text $renderAs=\"ab1-bold\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={handleOnTryAgain}\n />\n </FlexView>\n </Styled.MilestoneResourcesWrapper>\n );\n }\n\n if (isProcessed) {\n return (\n <Styled.MilestoneResourcesWrapper $justifyContent=\"space-between\">\n {sheetsDataPresent ? (\n <>\n <ResourcesList\n sheets={sheets}\n userType={userType}\n onNodeAttempt={onNodeAttempt}\n onNodeView={onNodeView}\n onNodeReview={onNodeReview}\n onNodeReattempt={onNodeReattempt}\n onNodeReset={onNodeReset}\n onNodeUnassign={onNodeUnassign}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n studentId={studentId}\n userMilestoneId={userMilestoneId}\n disableMenuActions={allowResourceAssignInDraft} //allowResourceAssignInDraft will be true for Trial V3 Sessions\n />\n {isTeacher && canUpdatePlan && (\n <Styled.SearchButtonWrapper\n $flexDirection=\"row\"\n $justifyContent=\"flex-end\"\n $gapX={1}\n $gutterX={1}\n >\n <Styled.SearchButtonCover>\n <IconButton\n Icon={SearchIcon}\n renderAs=\"secondary\"\n size=\"small\"\n analyticsLabel=\"Milestone Resource Search\"\n onClick={handleOnAssignResources}\n disabled={!isMilestoneActive}\n />\n </Styled.SearchButtonCover>\n </Styled.SearchButtonWrapper>\n )}\n </>\n ) : (\n <FlexView\n $width=\"100%\"\n $height=\"100%\"\n $alignItems=\"center\"\n $justifyContent=\"flex-start\"\n $background=\"WHITE\"\n >\n <Styled.DefaultWrapper $isImageWrapper>\n <img\n src={IMAGES.BG_EMPTY_RESOURCES}\n alt=\"Empty resources\"\n width={420}\n height={420}\n />\n </Styled.DefaultWrapper>\n\n <Styled.DefaultWrapper>\n {isTeacher ? (\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n hidden={!isEPSheetCreationDisabled}\n tooltipItem={\n isDraftMilestone ? 'Allowed after plan is published' : 'Plan is completed'\n }\n >\n <Button\n renderAs=\"primary\"\n label=\"Assign Resource\"\n Icon={PlusIcon}\n shape=\"square\"\n size=\"small\"\n onClick={handleOnAssignResources}\n disabled={isEPSheetCreationDisabled}\n />\n </ArrowTooltip>\n ) : (\n <Text $renderAs=\"ab2-bold\">Wait for the teacher to assign a resource</Text>\n )}\n </Styled.DefaultWrapper>\n </FlexView>\n )}\n </Styled.MilestoneResourcesWrapper>\n );\n }\n\n return (\n <Styled.MilestoneResourcesWrapper $justifyContent=\"center\" $background=\"WHITE\">\n <AppLoader height=\"100%\" />\n </Styled.MilestoneResourcesWrapper>\n );\n },\n);\n\nexport default MilestoneWidgetResources;\n"],"names":["MilestoneWidgetResources","memo","props","isDraftMilestone","isMilestoneActive","userType","studentId","userMilestoneId","canUpdatePlan","allowResourceAssignInDraft","onAssignResources","onNodeAttempt","onNodeView","onNodeReview","onNodeReset","onNodeUnassign","onNodeReattempt","onNodeAssignAsHomework","isTeacher","isEPSheetCreationDisabled","getMilestoneResources","isProcessed","isProcessing","isProcessingFailed","isStale","sheets","useGetMilestoneResources","fetchMilestoneResources","useCallback","handleOnTryAgain","useEffect","handleOnAssignResources","sheetsDataPresent","jsx","Styled.MilestoneResourcesWrapper","FlexView","Text","Button","jsxs","Fragment","ResourcesList","Styled.SearchButtonWrapper","Styled.SearchButtonCover","IconButton","SearchIcon","Styled.DefaultWrapper","IMAGES","ArrowTooltip","PlusIcon","AppLoader"],"mappings":"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"}
|
|
@@ -86,7 +86,7 @@ const le = G(function(c) {
|
|
|
86
86
|
$height: "100%",
|
|
87
87
|
$background: "WHITE",
|
|
88
88
|
children: [
|
|
89
|
-
/* @__PURE__ */ e(k, { $renderAs: "
|
|
89
|
+
/* @__PURE__ */ e(k, { $renderAs: "ab1-bold", children: "Oops! Something went wrong. Please try again later." }),
|
|
90
90
|
/* @__PURE__ */ e(
|
|
91
91
|
_,
|
|
92
92
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-list-container.js","sources":["../../../../../src/features/milestone/milestone-tests/test-list-v2/test-list-container.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, type FC } from 'react';\n\nimport { IMAGES } from '../../../../assets/images/images';\nimport type { INodeDataProps } from '../../../chapters-v2/comps/node-card/node-card-types';\nimport ArrowTooltip from '../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport { MILESTONE_WIDGET_MIN_HEIGHT } from '../../constants';\nimport { useGetTestHelpData } from '../../milestone-list-container/api/get-tests-list';\nimport { TESTS_CREATION_ANALYTICS_EVENTS } from '../tests-creation/tests-creation-analytics-events';\nimport TestSheetsList from './test-list-view';\nimport type { ITestsListProps } from './types';\n\nconst MilestoneTestsList: FC<ITestsListProps> = memo(function MilestoneTestsList(props) {\n const {\n isChaptersAvailable,\n isDraftMilestone,\n isMilestoneActive,\n userType,\n studentId,\n userMilestoneId,\n canUpdatePlan,\n allowTestCreationInDraft,\n } = props;\n const {\n onCreateMilestoneTest,\n onTestPreview,\n onTestStart,\n onTestReview,\n onNodeAssignAsHomework,\n onCardClick,\n } = props;\n\n const {\n get: getTestHelpData,\n data,\n isProcessingFailed,\n isProcessed,\n isStale,\n isProcessing,\n } = useGetTestHelpData();\n\n const isTestSheetCreationDisabled =\n !canUpdatePlan ||\n !isChaptersAvailable ||\n !isMilestoneActive ||\n (isMilestoneActive && isDraftMilestone && !allowTestCreationInDraft);\n const testCreationCtaTooltipText =\n isMilestoneActive && !isChaptersAvailable\n ? 'Chapters need to be assigned'\n : isDraftMilestone\n ? 'Allowed after plan is published'\n : 'Plan is completed';\n\n const handleOnTryAgain = useCallback(() => {\n getTestHelpData(userMilestoneId, undefined, {\n studentId,\n });\n }, [getTestHelpData, studentId, userMilestoneId]);\n\n useEffect(() => {\n if (!isProcessing && ((!isProcessed && !isProcessingFailed) || isStale)) {\n handleOnTryAgain();\n }\n }, [handleOnTryAgain, isProcessed, isProcessing, isProcessingFailed, isStale]);\n\n const handleOnCreateMilestoneTest = useCallback(() => {\n if (typeof onCreateMilestoneTest === 'function') {\n onCreateMilestoneTest?.(userMilestoneId, (data?.length || 0) + 1);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n }, [onCreateMilestoneTest, userMilestoneId, data]);\n\n const handleOnTestPreview = useCallback(\n (sheetData: INodeDataProps) => {\n if (typeof onTestPreview === 'function') {\n onTestPreview?.(sheetData, userMilestoneId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n },\n [onTestPreview, userMilestoneId],\n );\n\n const handleOnTestStart = useCallback(\n (sheetData: INodeDataProps, milestoneId?: string, hwId?: string) => {\n if (typeof onTestStart === 'function') {\n onTestStart?.(sheetData, milestoneId, hwId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n },\n [onTestStart],\n );\n\n const handleOnTestReview = useCallback(\n (sheetData: INodeDataProps) => {\n if (typeof onTestReview === 'function') {\n onTestReview?.(sheetData, userMilestoneId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n },\n [onTestReview, userMilestoneId],\n );\n\n if (isProcessingFailed) {\n return (\n <FlexView\n $flexGapX={1.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $height=\"100%\"\n $background=\"WHITE\"\n >\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={handleOnTryAgain}\n />\n </FlexView>\n );\n }\n\n if (isProcessed) {\n if (data?.length) {\n return (\n <TestSheetsList\n {...props}\n onNodeAttempt={handleOnTestStart}\n onNodeView={handleOnTestPreview}\n onNodeReview={handleOnTestReview}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onCardClick={onCardClick}\n milestoneId={userMilestoneId}\n tests={data}\n userType={userType}\n studentId={studentId}\n onCreateNewTest={handleOnCreateMilestoneTest}\n canUpdatedPlan={canUpdatePlan}\n isMilestoneActive={isMilestoneActive}\n disableMenuActions={allowTestCreationInDraft} //allowTestCreationInDraft will be true for Trial V3 Sessions\n />\n );\n }\n\n return (\n <FlexView\n $gapX={6.75}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"WHITE\"\n $height={MILESTONE_WIDGET_MIN_HEIGHT}\n >\n <img src={IMAGES.EMPTY_MIX_TESTS} alt=\"empty_mix_tests\" />\n <Separator heightX={2} />\n {userType === 'TEACHER' ? (\n <>\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n hidden={!isTestSheetCreationDisabled}\n tooltipItem={testCreationCtaTooltipText}\n >\n <Button\n widthX={10}\n renderAs=\"primary\"\n shape=\"square\"\n size=\"small\"\n label=\"Create a Test\"\n onClick={handleOnCreateMilestoneTest}\n disabled={isTestSheetCreationDisabled}\n analyticsLabel={TESTS_CREATION_ANALYTICS_EVENTS.CUSTOM_TEST_CREATION_STARTED}\n analyticsProps={{\n milestone_id: userMilestoneId,\n }}\n />\n </ArrowTooltip>\n <Separator heightX={2} />\n </>\n ) : (\n <Text $renderAs=\"ab2-bold\" $color=\"BLACK_T_87\">\n Wait for the teacher to create a test\n </Text>\n )}\n </FlexView>\n );\n }\n\n return (\n <FlexView\n $height={MILESTONE_WIDGET_MIN_HEIGHT}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"WHITE\"\n >\n <AppLoader height=\"100%\" />\n </FlexView>\n );\n});\n\nexport default MilestoneTestsList;\n"],"names":["MilestoneTestsList","memo","props","isChaptersAvailable","isDraftMilestone","isMilestoneActive","userType","studentId","userMilestoneId","canUpdatePlan","allowTestCreationInDraft","onCreateMilestoneTest","onTestPreview","onTestStart","onTestReview","onNodeAssignAsHomework","onCardClick","getTestHelpData","data","isProcessingFailed","isProcessed","isStale","isProcessing","useGetTestHelpData","isTestSheetCreationDisabled","testCreationCtaTooltipText","handleOnTryAgain","useCallback","useEffect","handleOnCreateMilestoneTest","handleOnTestPreview","sheetData","handleOnTestStart","milestoneId","hwId","handleOnTestReview","jsxs","FlexView","jsx","Text","Button","TestSheetsList","MILESTONE_WIDGET_MIN_HEIGHT","IMAGES","Separator","Fragment","ArrowTooltip","TESTS_CREATION_ANALYTICS_EVENTS","AppLoader"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"test-list-container.js","sources":["../../../../../src/features/milestone/milestone-tests/test-list-v2/test-list-container.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, type FC } from 'react';\n\nimport { IMAGES } from '../../../../assets/images/images';\nimport type { INodeDataProps } from '../../../chapters-v2/comps/node-card/node-card-types';\nimport ArrowTooltip from '../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport { MILESTONE_WIDGET_MIN_HEIGHT } from '../../constants';\nimport { useGetTestHelpData } from '../../milestone-list-container/api/get-tests-list';\nimport { TESTS_CREATION_ANALYTICS_EVENTS } from '../tests-creation/tests-creation-analytics-events';\nimport TestSheetsList from './test-list-view';\nimport type { ITestsListProps } from './types';\n\nconst MilestoneTestsList: FC<ITestsListProps> = memo(function MilestoneTestsList(props) {\n const {\n isChaptersAvailable,\n isDraftMilestone,\n isMilestoneActive,\n userType,\n studentId,\n userMilestoneId,\n canUpdatePlan,\n allowTestCreationInDraft,\n } = props;\n const {\n onCreateMilestoneTest,\n onTestPreview,\n onTestStart,\n onTestReview,\n onNodeAssignAsHomework,\n onCardClick,\n } = props;\n\n const {\n get: getTestHelpData,\n data,\n isProcessingFailed,\n isProcessed,\n isStale,\n isProcessing,\n } = useGetTestHelpData();\n\n const isTestSheetCreationDisabled =\n !canUpdatePlan ||\n !isChaptersAvailable ||\n !isMilestoneActive ||\n (isMilestoneActive && isDraftMilestone && !allowTestCreationInDraft);\n const testCreationCtaTooltipText =\n isMilestoneActive && !isChaptersAvailable\n ? 'Chapters need to be assigned'\n : isDraftMilestone\n ? 'Allowed after plan is published'\n : 'Plan is completed';\n\n const handleOnTryAgain = useCallback(() => {\n getTestHelpData(userMilestoneId, undefined, {\n studentId,\n });\n }, [getTestHelpData, studentId, userMilestoneId]);\n\n useEffect(() => {\n if (!isProcessing && ((!isProcessed && !isProcessingFailed) || isStale)) {\n handleOnTryAgain();\n }\n }, [handleOnTryAgain, isProcessed, isProcessing, isProcessingFailed, isStale]);\n\n const handleOnCreateMilestoneTest = useCallback(() => {\n if (typeof onCreateMilestoneTest === 'function') {\n onCreateMilestoneTest?.(userMilestoneId, (data?.length || 0) + 1);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n }, [onCreateMilestoneTest, userMilestoneId, data]);\n\n const handleOnTestPreview = useCallback(\n (sheetData: INodeDataProps) => {\n if (typeof onTestPreview === 'function') {\n onTestPreview?.(sheetData, userMilestoneId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n },\n [onTestPreview, userMilestoneId],\n );\n\n const handleOnTestStart = useCallback(\n (sheetData: INodeDataProps, milestoneId?: string, hwId?: string) => {\n if (typeof onTestStart === 'function') {\n onTestStart?.(sheetData, milestoneId, hwId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n },\n [onTestStart],\n );\n\n const handleOnTestReview = useCallback(\n (sheetData: INodeDataProps) => {\n if (typeof onTestReview === 'function') {\n onTestReview?.(sheetData, userMilestoneId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n },\n [onTestReview, userMilestoneId],\n );\n\n if (isProcessingFailed) {\n return (\n <FlexView\n $flexGapX={1.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $height=\"100%\"\n $background=\"WHITE\"\n >\n <Text $renderAs=\"ab1-bold\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={handleOnTryAgain}\n />\n </FlexView>\n );\n }\n\n if (isProcessed) {\n if (data?.length) {\n return (\n <TestSheetsList\n {...props}\n onNodeAttempt={handleOnTestStart}\n onNodeView={handleOnTestPreview}\n onNodeReview={handleOnTestReview}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onCardClick={onCardClick}\n milestoneId={userMilestoneId}\n tests={data}\n userType={userType}\n studentId={studentId}\n onCreateNewTest={handleOnCreateMilestoneTest}\n canUpdatedPlan={canUpdatePlan}\n isMilestoneActive={isMilestoneActive}\n disableMenuActions={allowTestCreationInDraft} //allowTestCreationInDraft will be true for Trial V3 Sessions\n />\n );\n }\n\n return (\n <FlexView\n $gapX={6.75}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"WHITE\"\n $height={MILESTONE_WIDGET_MIN_HEIGHT}\n >\n <img src={IMAGES.EMPTY_MIX_TESTS} alt=\"empty_mix_tests\" />\n <Separator heightX={2} />\n {userType === 'TEACHER' ? (\n <>\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n hidden={!isTestSheetCreationDisabled}\n tooltipItem={testCreationCtaTooltipText}\n >\n <Button\n widthX={10}\n renderAs=\"primary\"\n shape=\"square\"\n size=\"small\"\n label=\"Create a Test\"\n onClick={handleOnCreateMilestoneTest}\n disabled={isTestSheetCreationDisabled}\n analyticsLabel={TESTS_CREATION_ANALYTICS_EVENTS.CUSTOM_TEST_CREATION_STARTED}\n analyticsProps={{\n milestone_id: userMilestoneId,\n }}\n />\n </ArrowTooltip>\n <Separator heightX={2} />\n </>\n ) : (\n <Text $renderAs=\"ab2-bold\" $color=\"BLACK_T_87\">\n Wait for the teacher to create a test\n </Text>\n )}\n </FlexView>\n );\n }\n\n return (\n <FlexView\n $height={MILESTONE_WIDGET_MIN_HEIGHT}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"WHITE\"\n >\n <AppLoader height=\"100%\" />\n </FlexView>\n );\n});\n\nexport default MilestoneTestsList;\n"],"names":["MilestoneTestsList","memo","props","isChaptersAvailable","isDraftMilestone","isMilestoneActive","userType","studentId","userMilestoneId","canUpdatePlan","allowTestCreationInDraft","onCreateMilestoneTest","onTestPreview","onTestStart","onTestReview","onNodeAssignAsHomework","onCardClick","getTestHelpData","data","isProcessingFailed","isProcessed","isStale","isProcessing","useGetTestHelpData","isTestSheetCreationDisabled","testCreationCtaTooltipText","handleOnTryAgain","useCallback","useEffect","handleOnCreateMilestoneTest","handleOnTestPreview","sheetData","handleOnTestStart","milestoneId","hwId","handleOnTestReview","jsxs","FlexView","jsx","Text","Button","TestSheetsList","MILESTONE_WIDGET_MIN_HEIGHT","IMAGES","Separator","Fragment","ArrowTooltip","TESTS_CREATION_ANALYTICS_EVENTS","AppLoader"],"mappings":"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"}
|
|
@@ -12,20 +12,20 @@ import se from "./test-stages/chapter-selection/chapter-selection.js";
|
|
|
12
12
|
import ne from "./test-stages/difficulty-and-duration-selection/difficulty-and-duration-selection.js";
|
|
13
13
|
import ie from "./test-stages/test-preview/test-preview.js";
|
|
14
14
|
import { ETestsStage as f } from "./tests-creation-types.js";
|
|
15
|
-
const re = z(function(
|
|
15
|
+
const re = z(function(L) {
|
|
16
16
|
const {
|
|
17
17
|
milestoneId: n,
|
|
18
18
|
studentId: x,
|
|
19
19
|
testNumber: $,
|
|
20
20
|
userType: h,
|
|
21
|
-
useAbsoluteFooter:
|
|
21
|
+
useAbsoluteFooter: d,
|
|
22
22
|
onTestAssign: S,
|
|
23
23
|
onExit: H,
|
|
24
24
|
onError: m
|
|
25
|
-
} =
|
|
25
|
+
} = L, {
|
|
26
26
|
setTestStage: o,
|
|
27
27
|
setTestFormData: u,
|
|
28
|
-
setTestPreviewItems:
|
|
28
|
+
setTestPreviewItems: T,
|
|
29
29
|
reset: _,
|
|
30
30
|
updateTestFormData: D,
|
|
31
31
|
testStage: A,
|
|
@@ -62,13 +62,13 @@ const re = z(function(b) {
|
|
|
62
62
|
difficultyLevel: null,
|
|
63
63
|
duration: null
|
|
64
64
|
};
|
|
65
|
-
u(X), o(f.CHAPTER_SELECTION),
|
|
65
|
+
u(X), o(f.CHAPTER_SELECTION), T([]), m(
|
|
66
66
|
"We're experiencing a temporary limitation with the chapters you've selected. Please select alternative chapters and proceed."
|
|
67
67
|
);
|
|
68
68
|
}
|
|
69
|
-
e ? m(e) : t &&
|
|
69
|
+
e ? m(e) : t && T(t);
|
|
70
70
|
},
|
|
71
|
-
[m, i, u, o,
|
|
71
|
+
[m, i, u, o, T]
|
|
72
72
|
), N = r(
|
|
73
73
|
(e) => {
|
|
74
74
|
e ? m(e) : S();
|
|
@@ -86,7 +86,7 @@ const re = z(function(b) {
|
|
|
86
86
|
onComplete: M
|
|
87
87
|
}), { post: O, isProcessing: W } = ee({
|
|
88
88
|
onComplete: N
|
|
89
|
-
}), { user_milestone_plan: G } = R || {}, { user_chapters: c } = G || {},
|
|
89
|
+
}), { user_milestone_plan: G } = R || {}, { user_chapters: c } = G || {}, b = r(
|
|
90
90
|
(e) => {
|
|
91
91
|
E(e);
|
|
92
92
|
},
|
|
@@ -114,7 +114,7 @@ const re = z(function(b) {
|
|
|
114
114
|
(e, t) => {
|
|
115
115
|
if (t) {
|
|
116
116
|
const { difficultyLevel: s, duration: l } = t, p = { ...i, ...t };
|
|
117
|
-
u(p), o(e), e === f.PREVIEW && s && l &&
|
|
117
|
+
u(p), o(e), e === f.PREVIEW && s && l && b({
|
|
118
118
|
difficulty_level: s,
|
|
119
119
|
duration: l,
|
|
120
120
|
user_chapter_ids: p.selectedChapters || []
|
|
@@ -124,7 +124,7 @@ const re = z(function(b) {
|
|
|
124
124
|
},
|
|
125
125
|
[
|
|
126
126
|
F,
|
|
127
|
-
|
|
127
|
+
b,
|
|
128
128
|
i,
|
|
129
129
|
u,
|
|
130
130
|
o
|
|
@@ -135,7 +135,7 @@ const re = z(function(b) {
|
|
|
135
135
|
}, [n, C]), I(() => {
|
|
136
136
|
c && c.length > 0 && D({ chapters: c });
|
|
137
137
|
}, [c, D]), j || V ? /* @__PURE__ */ a(J, { height: "100vh" }) : k ? /* @__PURE__ */ q(Y, { $height: "100vh", $flexGapX: 1.5, $alignItems: "center", $justifyContent: "center", children: [
|
|
138
|
-
/* @__PURE__ */ a(K, { $renderAs: "
|
|
138
|
+
/* @__PURE__ */ a(K, { $renderAs: "ab1-bold", children: (P == null ? void 0 : P.message) || "Oops! Something went wrong." }),
|
|
139
139
|
/* @__PURE__ */ a(
|
|
140
140
|
B,
|
|
141
141
|
{
|
|
@@ -157,14 +157,14 @@ const re = z(function(b) {
|
|
|
157
157
|
onTestStageChange: v,
|
|
158
158
|
onTestSheetAssign: U,
|
|
159
159
|
userType: h,
|
|
160
|
-
useAbsoluteFooter:
|
|
160
|
+
useAbsoluteFooter: d
|
|
161
161
|
}
|
|
162
162
|
) : A === f.DIFFICULTY_AND_DURATION_SELECTION ? /* @__PURE__ */ a(
|
|
163
163
|
ne,
|
|
164
164
|
{
|
|
165
165
|
userType: h,
|
|
166
166
|
onTestStageChange: v,
|
|
167
|
-
useAbsoluteFooter:
|
|
167
|
+
useAbsoluteFooter: d
|
|
168
168
|
}
|
|
169
169
|
) : /* @__PURE__ */ a(
|
|
170
170
|
se,
|
|
@@ -172,7 +172,7 @@ const re = z(function(b) {
|
|
|
172
172
|
userType: h,
|
|
173
173
|
onProceed: v,
|
|
174
174
|
onExit: H,
|
|
175
|
-
useAbsoluteFooter:
|
|
175
|
+
useAbsoluteFooter: d
|
|
176
176
|
}
|
|
177
177
|
) : null;
|
|
178
178
|
}), we = re;
|