@cuemath/leap 2.8.38-hg4 → 2.8.39
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/assets/line-icons/icons/sheet.js +54 -0
- package/dist/assets/line-icons/icons/sheet.js.map +1 -0
- package/dist/assets/lottie/lottie.js +0 -6
- package/dist/assets/lottie/lottie.js.map +1 -1
- package/dist/features/analytics-events/whitelist-events.js +15 -13
- package/dist/features/analytics-events/whitelist-events.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode/table-mode-styled.js +3 -3
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode/table-mode-styled.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode/table-mode.js +35 -29
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode/table-mode.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-star/table-star-styled.js +11 -0
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-star/table-star-styled.js.map +1 -0
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-star/table-star.js +16 -0
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-star/table-star.js.map +1 -0
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js +42 -35
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js +212 -223
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js.map +1 -1
- package/dist/features/circle-games/game-launcher/game-launcher-analytics-events.js +7 -8
- package/dist/features/circle-games/game-launcher/game-launcher-analytics-events.js.map +1 -1
- package/dist/features/circle-games/game-launcher/game-launcher.js +24 -25
- package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
- package/dist/features/circle-games/games/web-view/web-view-types.js.map +1 -1
- package/dist/features/circle-games/hooks/use-circle-sounds/constants.js +3 -8
- package/dist/features/circle-games/hooks/use-circle-sounds/constants.js.map +1 -1
- package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds-enums.js +2 -2
- package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds-enums.js.map +1 -1
- package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js +17 -22
- package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js.map +1 -1
- package/dist/features/communication/pub-sub/constants.js +2 -1
- package/dist/features/communication/pub-sub/constants.js.map +1 -1
- package/dist/features/milestone/create/milestone-create-styled.js +11 -9
- package/dist/features/milestone/create/milestone-create-styled.js.map +1 -1
- package/dist/features/milestone/edit/comps/milestone-edit-loader/milestone-edit-loader-styled.js +6 -8
- package/dist/features/milestone/edit/comps/milestone-edit-loader/milestone-edit-loader-styled.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list-container.js +130 -117
- package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/added-resource-and-filters.js +205 -0
- package/dist/features/milestone/milestone-resources/resources-assign/added-resource-and-filters.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/api/get-resource.js +11 -0
- package/dist/features/milestone/milestone-resources/resources-assign/api/get-resource.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/api/goal-resource-assign.js +9 -0
- package/dist/features/milestone/milestone-resources/resources-assign/api/goal-resource-assign.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/api/lpar-resource-assign.js +9 -0
- package/dist/features/milestone/milestone-resources/resources-assign/api/lpar-resource-assign.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item-styled.js +19 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item-styled.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item.js +47 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/resource-item-styled.js +22 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/resource-item-styled.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/resource-item.js +60 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/resource-item.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/utils.js +6 -0
- package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/utils.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/constant.js +6 -0
- package/dist/features/milestone/milestone-resources/resources-assign/constant.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-assign-analytics-events.js +19 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-assign-analytics-events.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-items/no-resource-screen.js +32 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-items/no-resource-screen.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-items/resource-items-styled.js +19 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-items/resource-items-styled.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-items/resource-items.js +85 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resource-items/resource-items.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resources-assign-styled.js +65 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resources-assign-styled.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js +233 -0
- package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js.map +1 -0
- package/dist/features/milestone/milestone-resources/resources-assign/utils.js +12 -0
- package/dist/features/milestone/milestone-resources/resources-assign/utils.js.map +1 -0
- package/dist/features/post-game-stats/enums/post-game-stats-enum.js +1 -1
- package/dist/features/post-game-stats/enums/post-game-stats-enum.js.map +1 -1
- package/dist/features/post-game-stats/points/points.js +10 -15
- package/dist/features/post-game-stats/points/points.js.map +1 -1
- package/dist/features/post-game-stats/post-game-stats.js +61 -83
- package/dist/features/post-game-stats/post-game-stats.js.map +1 -1
- package/dist/features/trial-session/comps/about-cuemath/about-cuemath-constants.js +1 -1
- package/dist/features/trial-session/comps/about-cuemath/about-cuemath-constants.js.map +1 -1
- package/dist/features/trial-session/comps/class-preference/class-preference.js +10 -10
- package/dist/features/trial-session/comps/class-preference/class-preference.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js +7 -7
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/session-report.js +23 -21
- package/dist/features/trial-session/comps/session-report/session-report.js.map +1 -1
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js +5 -5
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
- package/dist/features/trial-session/comps/student-profile/student-profile.js +37 -39
- package/dist/features/trial-session/comps/student-profile/student-profile.js.map +1 -1
- package/dist/features/trial-session/comps/test-prep/test-prep.js +11 -11
- package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
- package/dist/features/trial-session/left-panel/index.js +1 -1
- package/dist/features/trial-session/left-panel/index.js.map +1 -1
- package/dist/features/ui/grade-selector/grade-tab.js +15 -15
- package/dist/features/ui/grade-selector/grade-tab.js.map +1 -1
- package/dist/features/ui/inputs/searchable-input/searchable-input-styled.js +28 -0
- package/dist/features/ui/inputs/searchable-input/searchable-input-styled.js.map +1 -0
- package/dist/features/ui/inputs/searchable-input/searchable-input.js +101 -0
- package/dist/features/ui/inputs/searchable-input/searchable-input.js.map +1 -0
- package/dist/features/ui/tab/tab-styled.js +7 -8
- package/dist/features/ui/tab/tab-styled.js.map +1 -1
- package/dist/features/ui/tab/tab.js +36 -31
- package/dist/features/ui/tab/tab.js.map +1 -1
- package/dist/features/ui/theme/tab.js +3 -3
- package/dist/features/ui/theme/tab.js.map +1 -1
- package/dist/index.d.ts +46 -53
- package/dist/index.js +345 -343
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star-styled.js +0 -25
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star-styled.js.map +0 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star.js +0 -57
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star.js.map +0 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-segment-star/table-segment-star-styled.js +0 -27
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-segment-star/table-segment-star-styled.js.map +0 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-segment-star/table-segment-star.js +0 -37
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-segment-star/table-segment-star.js.map +0 -1
- package/dist/features/post-game-stats/digital-meter/comp/animated-arc/animated-arc-styled.js +0 -17
- package/dist/features/post-game-stats/digital-meter/comp/animated-arc/animated-arc-styled.js.map +0 -1
- package/dist/features/post-game-stats/digital-meter/comp/animated-arc/animated-arc.js +0 -47
- package/dist/features/post-game-stats/digital-meter/comp/animated-arc/animated-arc.js.map +0 -1
- package/dist/features/post-game-stats/digital-meter/comp/animated-arc/constants.js +0 -6
- package/dist/features/post-game-stats/digital-meter/comp/animated-arc/constants.js.map +0 -1
- package/dist/features/post-game-stats/digital-meter/constants.js +0 -16
- package/dist/features/post-game-stats/digital-meter/constants.js.map +0 -1
- package/dist/features/post-game-stats/digital-meter/digital-meter-styled.js +0 -87
- package/dist/features/post-game-stats/digital-meter/digital-meter-styled.js.map +0 -1
- package/dist/features/post-game-stats/digital-meter/digital-meter.js +0 -188
- package/dist/features/post-game-stats/digital-meter/digital-meter.js.map +0 -1
- package/dist/features/post-game-stats/digital-meter/helper.js +0 -33
- package/dist/features/post-game-stats/digital-meter/helper.js.map +0 -1
- package/dist/features/post-game-stats/number-count-animation/number-count-animation.js +0 -27
- package/dist/features/post-game-stats/number-count-animation/number-count-animation.js.map +0 -1
- package/dist/static/point2.7cec6e24.json +0 -1
- package/dist/static/point3.f96fe7aa.json +0 -1
- package/dist/static/point4.fe04fb83.json +0 -1
- package/dist/static/table-mode-star.b8a1d762.json +0 -1
- package/dist/static/table-segment-star.78e851d6.json +0 -1
- package/dist/static/target-achieved-text.053bd142.json +0 -2830
- package/dist/static/target-achieved-text.10db8475.json +0 -1
@@ -1,80 +1,81 @@
|
|
1
|
-
import { jsx as
|
1
|
+
import { jsx as E, jsxs as R, Fragment as ne } from "react/jsx-runtime";
|
2
2
|
import { h as re } from "../../../node_modules/humanize-plus/dist/humanize.js";
|
3
|
-
import { memo as ie, useMemo as ae, useState as
|
3
|
+
import { memo as ie, useMemo as ae, useState as p, useCallback as Ee, useEffect as f } from "react";
|
4
4
|
import { ILLUSTRATIONS as le } from "../../../assets/illustrations/illustrations.js";
|
5
5
|
import { EVENTS as e } from "../../communication/pub-sub/constants.js";
|
6
6
|
import { useInClassActionListener as Se } from "../../communication/pub-sub/hooks.js";
|
7
7
|
import me from "../../ui/separator/separator.js";
|
8
8
|
import { invalidateMilestoneResources as ce } from "./api/get-milestone-resources.js";
|
9
|
-
import { useGetAllMilestonesdata as Te, invalidateMilestonesData as
|
10
|
-
import _e from "./
|
11
|
-
import
|
12
|
-
import De from "./milestone-list/milestone-
|
13
|
-
import
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
9
|
+
import { useGetAllMilestonesdata as Te, invalidateMilestonesData as de } from "./api/get-milestones.js";
|
10
|
+
import { invalidateTestHelpData as _e } from "./api/get-tests-list.js";
|
11
|
+
import Ae from "./filter-milestones.js";
|
12
|
+
import De from "./milestone-list/milestone-list.js";
|
13
|
+
import Ne from "./milestone-list/milestone-loader/milestone-loader.js";
|
14
|
+
import { ContentWrapper as Ie, LoaderWrapper as Me } from "./styled.js";
|
15
|
+
const ue = (T) => {
|
16
|
+
de(T);
|
17
|
+
}, Le = ie(
|
18
|
+
({ studentName: T, studentId: d, studentClassroomId: h, ...P }) => {
|
18
19
|
const {
|
19
|
-
milestoneType:
|
20
|
-
isStudentPresent:
|
21
|
-
isClassOngoing:
|
22
|
-
userType:
|
23
|
-
canCreatePlan:
|
24
|
-
teacherName:
|
25
|
-
parentName:
|
26
|
-
courseStream:
|
20
|
+
milestoneType: o,
|
21
|
+
isStudentPresent: N,
|
22
|
+
isClassOngoing: _,
|
23
|
+
userType: A,
|
24
|
+
canCreatePlan: G,
|
25
|
+
teacherName: U,
|
26
|
+
parentName: v,
|
27
|
+
courseStream: D,
|
27
28
|
onExpandPastMilestones: g,
|
28
|
-
onAddOutcome:
|
29
|
-
onChapterClick:
|
30
|
-
onEdit:
|
31
|
-
onCreateMilestoneTest:
|
32
|
-
onPreview:
|
33
|
-
onReattempt:
|
34
|
-
onReset:
|
35
|
-
onResume:
|
36
|
-
onReview:
|
37
|
-
onStart:
|
38
|
-
onDraftPublish:
|
39
|
-
onAddChapter:
|
40
|
-
onCreatePlan:
|
41
|
-
onDelete:
|
42
|
-
onAssignResources:
|
43
|
-
onUnAssignSheet:
|
44
|
-
onTestPreview:
|
45
|
-
onTestReview:
|
46
|
-
onTestStart:
|
47
|
-
} =
|
29
|
+
onAddOutcome: F,
|
30
|
+
onChapterClick: w,
|
31
|
+
onEdit: x,
|
32
|
+
onCreateMilestoneTest: V,
|
33
|
+
onPreview: y,
|
34
|
+
onReattempt: b,
|
35
|
+
onReset: H,
|
36
|
+
onResume: k,
|
37
|
+
onReview: K,
|
38
|
+
onStart: j,
|
39
|
+
onDraftPublish: W,
|
40
|
+
onAddChapter: X,
|
41
|
+
onCreatePlan: $,
|
42
|
+
onDelete: q,
|
43
|
+
onAssignResources: z,
|
44
|
+
onUnAssignSheet: B,
|
45
|
+
onTestPreview: J,
|
46
|
+
onTestReview: Q,
|
47
|
+
onTestStart: Y
|
48
|
+
} = P, n = ae(
|
48
49
|
() => ({
|
49
|
-
milestone_state_group:
|
50
|
+
milestone_state_group: o === "ACTIVE" ? A === "TEACHER" ? "LIVE" : "STUDENT_LIVE" : o,
|
50
51
|
with_plan: !0,
|
51
|
-
course_stream:
|
52
|
-
student_id:
|
53
|
-
in_class:
|
52
|
+
course_stream: D,
|
53
|
+
student_id: d,
|
54
|
+
in_class: _
|
54
55
|
}),
|
55
|
-
[
|
56
|
+
[_, o, D, d, A]
|
56
57
|
), {
|
57
58
|
data: t,
|
58
|
-
getAll:
|
59
|
-
isStale:
|
60
|
-
isProcessing:
|
61
|
-
} = Te(n), [
|
62
|
-
(
|
63
|
-
const { searchText:
|
64
|
-
(
|
65
|
-
const
|
66
|
-
const { milestone_name: te, board: se, grade: oe } =
|
67
|
-
return (
|
59
|
+
getAll: S,
|
60
|
+
isStale: I,
|
61
|
+
isProcessing: l
|
62
|
+
} = Te(n), [M, u] = p(), [L, C] = p(!1), Z = Ee(
|
63
|
+
(m) => {
|
64
|
+
const { searchText: r, selectedBoard: i, selectedGrade: a } = m || {};
|
65
|
+
(r || i || a) && C(!0);
|
66
|
+
const c = t == null ? void 0 : t.filter((s) => {
|
67
|
+
const { milestone_name: te, board: se, grade: oe } = s || {};
|
68
|
+
return (r ? te.toLowerCase().includes(r.toLowerCase()) : !0) && (i ? se === i : !0) && (a ? oe === a : !0);
|
68
69
|
});
|
69
|
-
|
70
|
+
u(c);
|
70
71
|
},
|
71
72
|
[t]
|
72
|
-
),
|
73
|
-
C(!1),
|
73
|
+
), ee = () => {
|
74
|
+
C(!1), u(void 0);
|
74
75
|
};
|
75
76
|
if (Se(
|
76
77
|
{
|
77
|
-
studentClassroomId:
|
78
|
+
studentClassroomId: h,
|
78
79
|
actions: [
|
79
80
|
[e.CHAPTER_UPDATED],
|
80
81
|
[e.LESSONS_MARKED_AS_FAMILIAR],
|
@@ -94,79 +95,91 @@ const ue = (S) => {
|
|
94
95
|
[e.GOAL_EDITED],
|
95
96
|
[e.GOAL_DELETED],
|
96
97
|
[e.GOAL_OUTCOME_ADDED],
|
97
|
-
[e.PAST_MILESTONE_OUTCOME_ADDED]
|
98
|
+
[e.PAST_MILESTONE_OUTCOME_ADDED],
|
99
|
+
[e.MILESTONE_TEST_ASSIGNED]
|
98
100
|
],
|
99
|
-
callback: (
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
101
|
+
callback: (m) => {
|
102
|
+
var a, c;
|
103
|
+
const r = (a = m.find(
|
104
|
+
(s) => s.eventName === e.MILESTONE_RESOURCE_ASSIGNED || e.MILESTONE_RESOURCE_UNASSIGNED
|
105
|
+
)) == null ? void 0 : a.eventPayload, i = (c = m.find(
|
106
|
+
(s) => s.eventName === e.MILESTONE_TEST_ASSIGNED
|
107
|
+
)) == null ? void 0 : c.eventPayload;
|
108
|
+
if (r) {
|
109
|
+
const { milestoneId: s } = r || {};
|
110
|
+
ce(s);
|
111
|
+
}
|
112
|
+
if (i) {
|
113
|
+
const { milestoneId: s } = i;
|
114
|
+
_e(s);
|
115
|
+
}
|
116
|
+
ue(n);
|
104
117
|
}
|
105
118
|
},
|
106
|
-
(
|
107
|
-
),
|
108
|
-
|
109
|
-
}, [
|
110
|
-
!
|
111
|
-
}, [
|
112
|
-
return /* @__PURE__ */
|
113
|
-
const
|
114
|
-
return /* @__PURE__ */
|
115
|
-
|
116
|
-
|
117
|
-
/* @__PURE__ */
|
118
|
-
|
119
|
+
(o === "ACTIVE" || o === "INACTIVE") && N
|
120
|
+
), f(() => {
|
121
|
+
S(n);
|
122
|
+
}, [S, n]), f(() => {
|
123
|
+
!l && I && S(n);
|
124
|
+
}, [S, n, I, l]), l && !t)
|
125
|
+
return /* @__PURE__ */ E(Ne, { numMilestones: 2 });
|
126
|
+
const O = o === "ACTIVE" && t && t.length > 6;
|
127
|
+
return /* @__PURE__ */ R(Ie, { $disablePointerEvents: l, children: [
|
128
|
+
l && /* @__PURE__ */ E(Me, { children: /* @__PURE__ */ E("img", { src: le.LOADER_1, alt: "loading" }) }),
|
129
|
+
O && /* @__PURE__ */ R(ne, { children: [
|
130
|
+
/* @__PURE__ */ E(
|
131
|
+
Ae,
|
119
132
|
{
|
120
|
-
filteredMilestones:
|
133
|
+
filteredMilestones: M,
|
121
134
|
milestones: t,
|
122
|
-
handleFilterMilestones:
|
123
|
-
handleClearFilter:
|
135
|
+
handleFilterMilestones: Z,
|
136
|
+
handleClearFilter: ee
|
124
137
|
}
|
125
138
|
),
|
126
|
-
/* @__PURE__ */
|
139
|
+
/* @__PURE__ */ E(me, { heightX: 1.5 })
|
127
140
|
] }),
|
128
|
-
/* @__PURE__ */
|
129
|
-
|
141
|
+
/* @__PURE__ */ E(
|
142
|
+
De,
|
130
143
|
{
|
131
|
-
showFilters: !!
|
132
|
-
canCreatePlan:
|
133
|
-
isClassOngoing:
|
134
|
-
isFiltersAdded:
|
135
|
-
isStudentPresent:
|
136
|
-
milestoneType:
|
137
|
-
milestones:
|
138
|
-
onAddChapter:
|
139
|
-
onAddOutcome:
|
140
|
-
onChapterClick:
|
141
|
-
onCreatePlan:
|
142
|
-
onDelete:
|
143
|
-
onDraftPublish:
|
144
|
-
onEdit:
|
144
|
+
showFilters: !!O,
|
145
|
+
canCreatePlan: G,
|
146
|
+
isClassOngoing: _,
|
147
|
+
isFiltersAdded: L,
|
148
|
+
isStudentPresent: N,
|
149
|
+
milestoneType: o,
|
150
|
+
milestones: L ? M : t,
|
151
|
+
onAddChapter: X,
|
152
|
+
onAddOutcome: F,
|
153
|
+
onChapterClick: w,
|
154
|
+
onCreatePlan: $,
|
155
|
+
onDelete: q,
|
156
|
+
onDraftPublish: W,
|
157
|
+
onEdit: x,
|
145
158
|
onExpandPastMilestones: g,
|
146
|
-
onCreateMilestoneTest:
|
147
|
-
onPreview:
|
148
|
-
onReattempt:
|
149
|
-
onReset:
|
150
|
-
onResume:
|
151
|
-
onReview:
|
152
|
-
onStart:
|
153
|
-
onAssignResources:
|
154
|
-
onUnAssignSheet:
|
155
|
-
onTestPreview:
|
156
|
-
onTestReview:
|
157
|
-
onTestStart:
|
158
|
-
studentId:
|
159
|
-
studentName: re.titleCase(
|
160
|
-
teacherName:
|
161
|
-
parentName:
|
162
|
-
userType:
|
163
|
-
courseStream:
|
159
|
+
onCreateMilestoneTest: V,
|
160
|
+
onPreview: y,
|
161
|
+
onReattempt: b,
|
162
|
+
onReset: H,
|
163
|
+
onResume: k,
|
164
|
+
onReview: K,
|
165
|
+
onStart: j,
|
166
|
+
onAssignResources: z,
|
167
|
+
onUnAssignSheet: B,
|
168
|
+
onTestPreview: J,
|
169
|
+
onTestReview: Q,
|
170
|
+
onTestStart: Y,
|
171
|
+
studentId: d,
|
172
|
+
studentName: re.titleCase(T),
|
173
|
+
teacherName: U,
|
174
|
+
parentName: v,
|
175
|
+
userType: A,
|
176
|
+
courseStream: D
|
164
177
|
}
|
165
178
|
)
|
166
179
|
] });
|
167
180
|
}
|
168
|
-
),
|
181
|
+
), He = Le;
|
169
182
|
export {
|
170
|
-
|
183
|
+
He as default
|
171
184
|
};
|
172
185
|
//# sourceMappingURL=milestone-list-container.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"milestone-list-container.js","sources":["../../../../src/features/milestone/milestone-list-container/milestone-list-container.tsx"],"sourcesContent":["import type {\n IMilestoneContainerProps,\n IMilestoneListQueryParams,\n} from './milestone-list-container-types';\nimport type { IMilestoneData } from './milestone-list/milestone-list-types';\n\nimport { titleCase } from 'humanize-plus';\nimport React, { memo, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport { EVENTS } from '../../communication/pub-sub/constants';\nimport { useInClassActionListener } from '../../communication/pub-sub/hooks';\nimport Separator from '../../ui/separator/separator';\nimport { invalidateMilestoneResources } from './api/get-milestone-resources';\nimport { useGetAllMilestonesdata, invalidateMilestonesData } from './api/get-milestones';\nimport FilterMilestones from './filter-milestones';\nimport MilestoneList from './milestone-list/milestone-list';\nimport MilestoneLoader from './milestone-list/milestone-loader/milestone-loader';\nimport * as Styled from './styled';\n\nconst invalidateAllMilestones = (queryParams: IMilestoneListQueryParams) => {\n invalidateMilestonesData(queryParams);\n};\n\nconst MilestoneListContainer: React.FC<IMilestoneContainerProps> = memo(\n ({ studentName, studentId, studentClassroomId, ...restMilestoneListContainerProps }) => {\n const {\n milestoneType,\n isStudentPresent,\n isClassOngoing,\n userType,\n canCreatePlan,\n teacherName,\n parentName,\n courseStream,\n onExpandPastMilestones,\n onAddOutcome,\n onChapterClick,\n onEdit,\n onCreateMilestoneTest,\n onPreview,\n onReattempt,\n onReset,\n onResume,\n onReview,\n onStart,\n onDraftPublish,\n onAddChapter,\n onCreatePlan,\n onDelete,\n onAssignResources,\n onUnAssignSheet,\n onTestPreview,\n onTestReview,\n onTestStart,\n } = restMilestoneListContainerProps;\n\n const queryParams: IMilestoneListQueryParams = useMemo(\n () =>\n ({\n milestone_state_group:\n milestoneType === 'ACTIVE'\n ? userType === 'TEACHER'\n ? 'LIVE'\n : 'STUDENT_LIVE'\n : milestoneType,\n with_plan: true,\n course_stream: courseStream,\n student_id: studentId,\n in_class: isClassOngoing,\n }) as const,\n [isClassOngoing, milestoneType, courseStream, studentId, userType],\n );\n\n const {\n data: milestoneData,\n getAll: getMilestoneData,\n isStale: isMilestoneDataStale,\n isProcessing: isMilestoneProcessing,\n } = useGetAllMilestonesdata(queryParams);\n\n const [filteredMilestones, setFilteredMilestones] = useState<IMilestoneData[] | undefined>();\n const [isFiltersAdded, setIsFiltersAdded] = useState<boolean>(false);\n\n const handleFilterMilestones = useCallback(\n (data: { searchText?: string; selectedBoard?: string; selectedGrade?: string }) => {\n const { searchText, selectedBoard, selectedGrade } = data || {};\n\n if (searchText || selectedBoard || selectedGrade) {\n setIsFiltersAdded(true);\n }\n\n const filteredData = milestoneData?.filter(item => {\n const { milestone_name: milestoneName, board, grade } = item || {};\n const matchesSearchText = searchText\n ? milestoneName.toLowerCase().includes(searchText.toLowerCase())\n : true;\n const matchesCurriculum = selectedBoard ? board === selectedBoard : true;\n const matchesGrade = selectedGrade ? grade === selectedGrade : true;\n\n return matchesSearchText && matchesCurriculum && matchesGrade;\n });\n\n setFilteredMilestones(filteredData);\n },\n [milestoneData],\n );\n\n const handleClearFilter = () => {\n setIsFiltersAdded(false);\n setFilteredMilestones(undefined);\n };\n\n useInClassActionListener(\n {\n studentClassroomId,\n actions: [\n [EVENTS.CHAPTER_UPDATED],\n [EVENTS.LESSONS_MARKED_AS_FAMILIAR],\n [EVENTS.LESSONS_MARKED_AS_IRRELEVANT],\n [EVENTS.LESSONS_PROGRESS_RESET],\n [EVENTS.UNLOCK_SHEETS],\n [EVENTS.EXTRA_PRACTICE_ASSIGNED],\n [EVENTS.MILESTONE_DATE_UPDATED],\n [EVENTS.MILESTONE_DELETED],\n [EVENTS.MILESTONE_NAME_UPDATED],\n [EVENTS.MILESTONE_EDITED],\n [EVENTS.MILESTONE_RESOURCE_ASSIGNED],\n [EVENTS.MILESTONE_RESOURCE_UNASSIGNED],\n [EVENTS.MILESTONE_RESOURCE_RESET],\n [EVENTS.SHEET_UNASSIGNED],\n [EVENTS.GOAL_CREATED],\n [EVENTS.GOAL_EDITED],\n [EVENTS.GOAL_DELETED],\n [EVENTS.GOAL_OUTCOME_ADDED],\n [EVENTS.PAST_MILESTONE_OUTCOME_ADDED],\n ],\n callback: messages => {\n const milestoneResourceEvent = messages.find(\n message =>\n message.eventName === EVENTS.MILESTONE_RESOURCE_ASSIGNED ||\n EVENTS.MILESTONE_RESOURCE_UNASSIGNED,\n );\n const { milestoneId } =\n (milestoneResourceEvent?.eventPayload as { milestoneId: string }) || {};\n\n if (milestoneId) {\n invalidateMilestoneResources(milestoneId);\n }\n\n invalidateAllMilestones(queryParams);\n },\n },\n (milestoneType === 'ACTIVE' || milestoneType === 'INACTIVE') && isStudentPresent,\n );\n\n useEffect(() => {\n getMilestoneData(queryParams);\n }, [getMilestoneData, queryParams]);\n\n useEffect(() => {\n if (!isMilestoneProcessing && isMilestoneDataStale) {\n getMilestoneData(queryParams);\n }\n }, [getMilestoneData, queryParams, isMilestoneDataStale, isMilestoneProcessing]);\n\n if (isMilestoneProcessing && !milestoneData) {\n return <MilestoneLoader numMilestones={2} />;\n }\n\n const showFilters = milestoneType === 'ACTIVE' && milestoneData && milestoneData.length > 6;\n\n return (\n <Styled.ContentWrapper $disablePointerEvents={isMilestoneProcessing}>\n {isMilestoneProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loading\" />\n </Styled.LoaderWrapper>\n )}\n {showFilters && (\n <>\n <FilterMilestones\n filteredMilestones={filteredMilestones}\n milestones={milestoneData}\n handleFilterMilestones={handleFilterMilestones}\n handleClearFilter={handleClearFilter}\n />\n <Separator heightX={1.5} />\n </>\n )}\n\n <MilestoneList\n showFilters={!!showFilters}\n canCreatePlan={canCreatePlan}\n isClassOngoing={isClassOngoing}\n isFiltersAdded={isFiltersAdded}\n isStudentPresent={isStudentPresent}\n milestoneType={milestoneType}\n milestones={isFiltersAdded ? filteredMilestones : milestoneData}\n onAddChapter={onAddChapter}\n onAddOutcome={onAddOutcome}\n onChapterClick={onChapterClick}\n onCreatePlan={onCreatePlan}\n onDelete={onDelete}\n onDraftPublish={onDraftPublish}\n onEdit={onEdit}\n onExpandPastMilestones={onExpandPastMilestones}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onPreview={onPreview}\n onReattempt={onReattempt}\n onReset={onReset}\n onResume={onResume}\n onReview={onReview}\n onStart={onStart}\n onAssignResources={onAssignResources}\n onUnAssignSheet={onUnAssignSheet}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n studentId={studentId}\n studentName={titleCase(studentName)}\n teacherName={teacherName}\n parentName={parentName}\n userType={userType}\n courseStream={courseStream}\n />\n </Styled.ContentWrapper>\n );\n },\n);\n\nexport default MilestoneListContainer;\n"],"names":["invalidateAllMilestones","queryParams","invalidateMilestonesData","MilestoneListContainer","memo","studentName","studentId","studentClassroomId","restMilestoneListContainerProps","milestoneType","isStudentPresent","isClassOngoing","userType","canCreatePlan","teacherName","parentName","courseStream","onExpandPastMilestones","onAddOutcome","onChapterClick","onEdit","onCreateMilestoneTest","onPreview","onReattempt","onReset","onResume","onReview","onStart","onDraftPublish","onAddChapter","onCreatePlan","onDelete","onAssignResources","onUnAssignSheet","onTestPreview","onTestReview","onTestStart","useMemo","milestoneData","getMilestoneData","isMilestoneDataStale","isMilestoneProcessing","useGetAllMilestonesdata","filteredMilestones","setFilteredMilestones","useState","isFiltersAdded","setIsFiltersAdded","handleFilterMilestones","useCallback","data","searchText","selectedBoard","selectedGrade","filteredData","item","milestoneName","board","grade","handleClearFilter","useInClassActionListener","EVENTS","messages","milestoneResourceEvent","message","milestoneId","invalidateMilestoneResources","useEffect","jsx","MilestoneLoader","showFilters","jsxs","Styled.ContentWrapper","Styled.LoaderWrapper","ILLUSTRATIONS","Fragment","FilterMilestones","Separator","MilestoneList","titleCase"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"milestone-list-container.js","sources":["../../../../src/features/milestone/milestone-list-container/milestone-list-container.tsx"],"sourcesContent":["import type {\n IMilestoneContainerProps,\n IMilestoneListQueryParams,\n} from './milestone-list-container-types';\nimport type { IMilestoneData } from './milestone-list/milestone-list-types';\n\nimport { titleCase } from 'humanize-plus';\nimport React, { memo, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport { EVENTS } from '../../communication/pub-sub/constants';\nimport { useInClassActionListener } from '../../communication/pub-sub/hooks';\nimport Separator from '../../ui/separator/separator';\nimport { invalidateMilestoneResources } from './api/get-milestone-resources';\nimport { useGetAllMilestonesdata, invalidateMilestonesData } from './api/get-milestones';\nimport { invalidateTestHelpData } from './api/get-tests-list';\nimport FilterMilestones from './filter-milestones';\nimport MilestoneList from './milestone-list/milestone-list';\nimport MilestoneLoader from './milestone-list/milestone-loader/milestone-loader';\nimport * as Styled from './styled';\n\nconst invalidateAllMilestones = (queryParams: IMilestoneListQueryParams) => {\n invalidateMilestonesData(queryParams);\n};\n\nconst MilestoneListContainer: React.FC<IMilestoneContainerProps> = memo(\n ({ studentName, studentId, studentClassroomId, ...restMilestoneListContainerProps }) => {\n const {\n milestoneType,\n isStudentPresent,\n isClassOngoing,\n userType,\n canCreatePlan,\n teacherName,\n parentName,\n courseStream,\n onExpandPastMilestones,\n onAddOutcome,\n onChapterClick,\n onEdit,\n onCreateMilestoneTest,\n onPreview,\n onReattempt,\n onReset,\n onResume,\n onReview,\n onStart,\n onDraftPublish,\n onAddChapter,\n onCreatePlan,\n onDelete,\n onAssignResources,\n onUnAssignSheet,\n onTestPreview,\n onTestReview,\n onTestStart,\n } = restMilestoneListContainerProps;\n\n const queryParams: IMilestoneListQueryParams = useMemo(\n () =>\n ({\n milestone_state_group:\n milestoneType === 'ACTIVE'\n ? userType === 'TEACHER'\n ? 'LIVE'\n : 'STUDENT_LIVE'\n : milestoneType,\n with_plan: true,\n course_stream: courseStream,\n student_id: studentId,\n in_class: isClassOngoing,\n }) as const,\n [isClassOngoing, milestoneType, courseStream, studentId, userType],\n );\n\n const {\n data: milestoneData,\n getAll: getMilestoneData,\n isStale: isMilestoneDataStale,\n isProcessing: isMilestoneProcessing,\n } = useGetAllMilestonesdata(queryParams);\n\n const [filteredMilestones, setFilteredMilestones] = useState<IMilestoneData[] | undefined>();\n const [isFiltersAdded, setIsFiltersAdded] = useState<boolean>(false);\n\n const handleFilterMilestones = useCallback(\n (data: { searchText?: string; selectedBoard?: string; selectedGrade?: string }) => {\n const { searchText, selectedBoard, selectedGrade } = data || {};\n\n if (searchText || selectedBoard || selectedGrade) {\n setIsFiltersAdded(true);\n }\n\n const filteredData = milestoneData?.filter(item => {\n const { milestone_name: milestoneName, board, grade } = item || {};\n const matchesSearchText = searchText\n ? milestoneName.toLowerCase().includes(searchText.toLowerCase())\n : true;\n const matchesCurriculum = selectedBoard ? board === selectedBoard : true;\n const matchesGrade = selectedGrade ? grade === selectedGrade : true;\n\n return matchesSearchText && matchesCurriculum && matchesGrade;\n });\n\n setFilteredMilestones(filteredData);\n },\n [milestoneData],\n );\n\n const handleClearFilter = () => {\n setIsFiltersAdded(false);\n setFilteredMilestones(undefined);\n };\n\n useInClassActionListener(\n {\n studentClassroomId,\n actions: [\n [EVENTS.CHAPTER_UPDATED],\n [EVENTS.LESSONS_MARKED_AS_FAMILIAR],\n [EVENTS.LESSONS_MARKED_AS_IRRELEVANT],\n [EVENTS.LESSONS_PROGRESS_RESET],\n [EVENTS.UNLOCK_SHEETS],\n [EVENTS.EXTRA_PRACTICE_ASSIGNED],\n [EVENTS.MILESTONE_DATE_UPDATED],\n [EVENTS.MILESTONE_DELETED],\n [EVENTS.MILESTONE_NAME_UPDATED],\n [EVENTS.MILESTONE_EDITED],\n [EVENTS.MILESTONE_RESOURCE_ASSIGNED],\n [EVENTS.MILESTONE_RESOURCE_UNASSIGNED],\n [EVENTS.MILESTONE_RESOURCE_RESET],\n [EVENTS.SHEET_UNASSIGNED],\n [EVENTS.GOAL_CREATED],\n [EVENTS.GOAL_EDITED],\n [EVENTS.GOAL_DELETED],\n [EVENTS.GOAL_OUTCOME_ADDED],\n [EVENTS.PAST_MILESTONE_OUTCOME_ADDED],\n [EVENTS.MILESTONE_TEST_ASSIGNED],\n ],\n callback: messages => {\n const milestoneResourceEventPayload = messages.find(\n message =>\n message.eventName === EVENTS.MILESTONE_RESOURCE_ASSIGNED ||\n EVENTS.MILESTONE_RESOURCE_UNASSIGNED,\n )?.eventPayload;\n const milestoneTestEventPayload = messages.find(\n message => message.eventName === EVENTS.MILESTONE_TEST_ASSIGNED,\n )?.eventPayload;\n\n if (milestoneResourceEventPayload) {\n const { milestoneId: resourceMilestoneId } =\n (milestoneResourceEventPayload as { milestoneId: string }) || {};\n\n invalidateMilestoneResources(resourceMilestoneId);\n }\n\n if (milestoneTestEventPayload) {\n const { milestoneId } = milestoneTestEventPayload as { milestoneId: string };\n\n invalidateTestHelpData(milestoneId);\n }\n\n invalidateAllMilestones(queryParams);\n },\n },\n (milestoneType === 'ACTIVE' || milestoneType === 'INACTIVE') && isStudentPresent,\n );\n\n useEffect(() => {\n getMilestoneData(queryParams);\n }, [getMilestoneData, queryParams]);\n\n useEffect(() => {\n if (!isMilestoneProcessing && isMilestoneDataStale) {\n getMilestoneData(queryParams);\n }\n }, [getMilestoneData, queryParams, isMilestoneDataStale, isMilestoneProcessing]);\n\n if (isMilestoneProcessing && !milestoneData) {\n return <MilestoneLoader numMilestones={2} />;\n }\n\n const showFilters = milestoneType === 'ACTIVE' && milestoneData && milestoneData.length > 6;\n\n return (\n <Styled.ContentWrapper $disablePointerEvents={isMilestoneProcessing}>\n {isMilestoneProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loading\" />\n </Styled.LoaderWrapper>\n )}\n {showFilters && (\n <>\n <FilterMilestones\n filteredMilestones={filteredMilestones}\n milestones={milestoneData}\n handleFilterMilestones={handleFilterMilestones}\n handleClearFilter={handleClearFilter}\n />\n <Separator heightX={1.5} />\n </>\n )}\n\n <MilestoneList\n showFilters={!!showFilters}\n canCreatePlan={canCreatePlan}\n isClassOngoing={isClassOngoing}\n isFiltersAdded={isFiltersAdded}\n isStudentPresent={isStudentPresent}\n milestoneType={milestoneType}\n milestones={isFiltersAdded ? filteredMilestones : milestoneData}\n onAddChapter={onAddChapter}\n onAddOutcome={onAddOutcome}\n onChapterClick={onChapterClick}\n onCreatePlan={onCreatePlan}\n onDelete={onDelete}\n onDraftPublish={onDraftPublish}\n onEdit={onEdit}\n onExpandPastMilestones={onExpandPastMilestones}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onPreview={onPreview}\n onReattempt={onReattempt}\n onReset={onReset}\n onResume={onResume}\n onReview={onReview}\n onStart={onStart}\n onAssignResources={onAssignResources}\n onUnAssignSheet={onUnAssignSheet}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n studentId={studentId}\n studentName={titleCase(studentName)}\n teacherName={teacherName}\n parentName={parentName}\n userType={userType}\n courseStream={courseStream}\n />\n </Styled.ContentWrapper>\n );\n },\n);\n\nexport default MilestoneListContainer;\n"],"names":["invalidateAllMilestones","queryParams","invalidateMilestonesData","MilestoneListContainer","memo","studentName","studentId","studentClassroomId","restMilestoneListContainerProps","milestoneType","isStudentPresent","isClassOngoing","userType","canCreatePlan","teacherName","parentName","courseStream","onExpandPastMilestones","onAddOutcome","onChapterClick","onEdit","onCreateMilestoneTest","onPreview","onReattempt","onReset","onResume","onReview","onStart","onDraftPublish","onAddChapter","onCreatePlan","onDelete","onAssignResources","onUnAssignSheet","onTestPreview","onTestReview","onTestStart","useMemo","milestoneData","getMilestoneData","isMilestoneDataStale","isMilestoneProcessing","useGetAllMilestonesdata","filteredMilestones","setFilteredMilestones","useState","isFiltersAdded","setIsFiltersAdded","handleFilterMilestones","useCallback","data","searchText","selectedBoard","selectedGrade","filteredData","item","milestoneName","board","grade","handleClearFilter","useInClassActionListener","EVENTS","messages","milestoneResourceEventPayload","_a","message","milestoneTestEventPayload","_b","resourceMilestoneId","invalidateMilestoneResources","milestoneId","invalidateTestHelpData","useEffect","jsx","MilestoneLoader","showFilters","jsxs","Styled.ContentWrapper","Styled.LoaderWrapper","ILLUSTRATIONS","Fragment","FilterMilestones","Separator","MilestoneList","titleCase"],"mappings":"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"}
|
package/dist/features/milestone/milestone-resources/resources-assign/added-resource-and-filters.js
ADDED
@@ -0,0 +1,205 @@
|
|
1
|
+
import { jsxs as c, Fragment as h, jsx as t } from "react/jsx-runtime";
|
2
|
+
import { memo as x, useState as y, useMemo as $, useCallback as S, Fragment as U } from "react";
|
3
|
+
import B from "../../../../assets/line-icons/icons/sheet.js";
|
4
|
+
import { useUIContext as N } from "../../../ui/context/context.js";
|
5
|
+
import _ from "../../../ui/layout/flex-view.js";
|
6
|
+
import X from "../../../ui/separator/separator.js";
|
7
|
+
import g from "../../../ui/text/text.js";
|
8
|
+
import G from "./comps/filter-item/filter-item.js";
|
9
|
+
import W from "./comps/resource-item/resource-item.js";
|
10
|
+
import { RESOURCE_ASSIGN_ANALYTICS_EVENTS as i } from "./resource-assign-analytics-events.js";
|
11
|
+
import { HeaderWrapper as j, FilterTabWrapper as w, ResourceCountWrapper as P, FilterListWrapper as V } from "./resources-assign-styled.js";
|
12
|
+
const Y = [
|
13
|
+
{
|
14
|
+
id: "resource-filters",
|
15
|
+
label: "Filters"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
id: "resource-added",
|
19
|
+
label: "Added"
|
20
|
+
}
|
21
|
+
], H = {
|
22
|
+
LEARNING: "Learning",
|
23
|
+
PRACTICE: "Practice",
|
24
|
+
ASSESSMENT: "Assessment",
|
25
|
+
LEVEL2: "Advanced",
|
26
|
+
LEVEL3: "Advanced",
|
27
|
+
SUBJECTIVE: "Subjective"
|
28
|
+
}, oe = x((T) => {
|
29
|
+
const {
|
30
|
+
resourceFilters: f,
|
31
|
+
selectedResources: R,
|
32
|
+
onResourceDeSelection: b,
|
33
|
+
onFilterUpdate: n,
|
34
|
+
onViewResource: L
|
35
|
+
} = T, { boards: s, grades: a, node_types: d } = f, { onEvent: o } = N(), [A, D] = y("resource-filters"), E = R.length, p = $(() => {
|
36
|
+
var e;
|
37
|
+
return (e = s.find((r) => r.applied)) == null ? void 0 : e.name;
|
38
|
+
}, [s]), u = $(() => {
|
39
|
+
var e;
|
40
|
+
return (e = a.find((r) => r.applied)) == null ? void 0 : e.name;
|
41
|
+
}, [a]), m = $(() => {
|
42
|
+
var e;
|
43
|
+
return (e = d.find((r) => r.applied)) == null ? void 0 : e.name;
|
44
|
+
}, [d]), I = S(
|
45
|
+
(e) => {
|
46
|
+
const r = p === e;
|
47
|
+
o(
|
48
|
+
r ? i.RESOURCE_BOARD_DESELECTED : i.RESOURCE_BOARD_SELECTED,
|
49
|
+
{
|
50
|
+
board: e
|
51
|
+
}
|
52
|
+
), n({ board: r ? "" : e });
|
53
|
+
},
|
54
|
+
[o, n, p]
|
55
|
+
), O = S(
|
56
|
+
(e) => {
|
57
|
+
const r = u === e;
|
58
|
+
o(
|
59
|
+
r ? i.RESOURCE_GRADE_DESELECTED : i.RESOURCE_GRADE_SELECTED,
|
60
|
+
{
|
61
|
+
grade: e
|
62
|
+
}
|
63
|
+
), n({ grade: r ? "" : e });
|
64
|
+
},
|
65
|
+
[o, n, u]
|
66
|
+
), v = S(
|
67
|
+
(e) => {
|
68
|
+
const r = m === e;
|
69
|
+
o(
|
70
|
+
r ? i.RESOURCE_NODE_TYPE_DESELECTED : i.RESOURCE_NODE_TYPE_SELECTED,
|
71
|
+
{
|
72
|
+
node_type: e
|
73
|
+
}
|
74
|
+
), n({ node_type: r ? "" : e });
|
75
|
+
},
|
76
|
+
[o, n, m]
|
77
|
+
), k = [
|
78
|
+
{
|
79
|
+
title: "Curriculum",
|
80
|
+
options: s.map(({ code: e, name: r }) => ({
|
81
|
+
id: e,
|
82
|
+
label: r,
|
83
|
+
value: r
|
84
|
+
})),
|
85
|
+
value: p,
|
86
|
+
onClick: I
|
87
|
+
},
|
88
|
+
{
|
89
|
+
title: "Grade",
|
90
|
+
options: a.map(({ code: e, name: r }) => ({
|
91
|
+
id: e,
|
92
|
+
label: e,
|
93
|
+
value: r
|
94
|
+
})),
|
95
|
+
value: u,
|
96
|
+
onClick: O
|
97
|
+
},
|
98
|
+
{
|
99
|
+
title: "Type",
|
100
|
+
options: d.map(({ code: e, name: r }) => ({
|
101
|
+
id: e,
|
102
|
+
label: H[r] || "",
|
103
|
+
value: r || ""
|
104
|
+
})),
|
105
|
+
value: m,
|
106
|
+
onClick: v
|
107
|
+
}
|
108
|
+
];
|
109
|
+
return /* @__PURE__ */ c(h, { children: [
|
110
|
+
/* @__PURE__ */ t(
|
111
|
+
j,
|
112
|
+
{
|
113
|
+
$heightX: 4,
|
114
|
+
$background: "WHITE_3",
|
115
|
+
$flexDirection: "row",
|
116
|
+
$alignItems: "end",
|
117
|
+
$noBorder: !0,
|
118
|
+
children: Y.map((e) => {
|
119
|
+
const { id: r, label: C } = e, l = r === A;
|
120
|
+
return /* @__PURE__ */ c(
|
121
|
+
w,
|
122
|
+
{
|
123
|
+
$flexDirection: "row",
|
124
|
+
$width: "100%",
|
125
|
+
$alignItems: "center",
|
126
|
+
$justifyContent: "center",
|
127
|
+
$gapX: 0.5,
|
128
|
+
$selected: l,
|
129
|
+
onClick: () => D(r),
|
130
|
+
$flexGap: 4,
|
131
|
+
$heightX: 2.5,
|
132
|
+
children: [
|
133
|
+
/* @__PURE__ */ t(
|
134
|
+
g,
|
135
|
+
{
|
136
|
+
$renderAs: l ? "ub3-bold" : "ub3",
|
137
|
+
$align: "center",
|
138
|
+
$color: l ? "BLACK_T_87" : "BLACK_T_38",
|
139
|
+
children: C
|
140
|
+
}
|
141
|
+
),
|
142
|
+
E > 0 && r === "resource-added" && /* @__PURE__ */ t(
|
143
|
+
P,
|
144
|
+
{
|
145
|
+
$borderRadius: 50,
|
146
|
+
$background: "YELLOW_4",
|
147
|
+
$gutter: 4,
|
148
|
+
$justifyContent: "center",
|
149
|
+
$alignItems: "center",
|
150
|
+
$heightX: 1.25,
|
151
|
+
children: /* @__PURE__ */ t(g, { $renderAs: "ac4-black", children: E })
|
152
|
+
}
|
153
|
+
)
|
154
|
+
]
|
155
|
+
},
|
156
|
+
r
|
157
|
+
);
|
158
|
+
})
|
159
|
+
}
|
160
|
+
),
|
161
|
+
/* @__PURE__ */ t(V, { children: A === "resource-filters" ? /* @__PURE__ */ t(h, { children: k.map((e) => {
|
162
|
+
const { title: r, value: C, options: l, onClick: F } = e;
|
163
|
+
return /* @__PURE__ */ c(U, { children: [
|
164
|
+
/* @__PURE__ */ t(
|
165
|
+
G,
|
166
|
+
{
|
167
|
+
title: r,
|
168
|
+
value: C ?? "",
|
169
|
+
options: l,
|
170
|
+
onClick: F
|
171
|
+
}
|
172
|
+
),
|
173
|
+
/* @__PURE__ */ t(X, { height: 1, background: "WHITE_5" })
|
174
|
+
] }, r);
|
175
|
+
}) }) : /* @__PURE__ */ c(h, { children: [
|
176
|
+
R.map((e) => /* @__PURE__ */ t(_, { $gapX: 1, $gutterX: 1, children: /* @__PURE__ */ t(
|
177
|
+
W,
|
178
|
+
{
|
179
|
+
resource: e,
|
180
|
+
onViewResource: L,
|
181
|
+
onResourceAdditionOrDeletion: b,
|
182
|
+
selected: !0
|
183
|
+
}
|
184
|
+
) }, e.id)),
|
185
|
+
E === 0 && /* @__PURE__ */ c(
|
186
|
+
_,
|
187
|
+
{
|
188
|
+
$alignItems: "center",
|
189
|
+
$justifyContent: "center",
|
190
|
+
$gapX: 2,
|
191
|
+
$height: "100%",
|
192
|
+
$flexGap: 8,
|
193
|
+
children: [
|
194
|
+
/* @__PURE__ */ t(B, { opacity: 0.38 }),
|
195
|
+
/* @__PURE__ */ t(_, { $widthX: 15, children: /* @__PURE__ */ t(g, { $renderAs: "ub1-bold", $color: "BLACK_T_38", $align: "center", children: "No sheets added" }) })
|
196
|
+
]
|
197
|
+
}
|
198
|
+
)
|
199
|
+
] }) })
|
200
|
+
] });
|
201
|
+
});
|
202
|
+
export {
|
203
|
+
oe as default
|
204
|
+
};
|
205
|
+
//# sourceMappingURL=added-resource-and-filters.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"added-resource-and-filters.js","sources":["../../../../../src/features/milestone/milestone-resources/resources-assign/added-resource-and-filters.tsx"],"sourcesContent":["import type { IAddedResourceAndFilters } from './resources-assign-type';\nimport type { FC } from 'react';\n\nimport { Fragment, memo, useCallback, useMemo, useState } from 'react';\n\nimport SheetIcon from '../../../../assets/line-icons/icons/sheet';\nimport { useUIContext } from '../../../ui/context/context';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport FilterItem from './comps/filter-item/filter-item';\nimport ResourceItem from './comps/resource-item/resource-item';\nimport { RESOURCE_ASSIGN_ANALYTICS_EVENTS } from './resource-assign-analytics-events';\nimport * as Styled from './resources-assign-styled';\n\nconst TABS = [\n {\n id: 'resource-filters',\n label: 'Filters',\n },\n {\n id: 'resource-added',\n label: 'Added',\n },\n];\n\nconst EXTRA_PRACTICE_LABEL_MAP: Record<string, string> = {\n LEARNING: 'Learning',\n PRACTICE: 'Practice',\n ASSESSMENT: 'Assessment',\n LEVEL2: 'Advanced',\n LEVEL3: 'Advanced',\n SUBJECTIVE: 'Subjective',\n};\n\nconst AddedResourceAndFilters: FC<IAddedResourceAndFilters> = memo(props => {\n const {\n resourceFilters,\n selectedResources,\n onResourceDeSelection,\n onFilterUpdate,\n onViewResource,\n } = props;\n\n const { boards, grades, node_types: nodeTypes } = resourceFilters;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const [selectedTab, setSelectedTab] = useState('resource-filters');\n\n const addedResourceCount = selectedResources.length;\n const appliedBoard = useMemo(() => boards.find(board => board.applied)?.name, [boards]);\n const appliedGrade = useMemo(() => grades.find(grade => grade.applied)?.name, [grades]);\n const appliedNodeType = useMemo(() => nodeTypes.find(grade => grade.applied)?.name, [nodeTypes]);\n\n const handleOnBoardChange = useCallback(\n (updatedBoard: string) => {\n const boardSelection = appliedBoard === updatedBoard;\n\n trackEvent(\n boardSelection\n ? RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_BOARD_DESELECTED\n : RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_BOARD_SELECTED,\n {\n board: updatedBoard,\n },\n );\n onFilterUpdate({ board: boardSelection ? '' : updatedBoard });\n },\n [trackEvent, onFilterUpdate, appliedBoard],\n );\n\n const handleOnGradeChange = useCallback(\n (updatedGrade: string) => {\n const gradeSelection = appliedGrade === updatedGrade;\n\n trackEvent(\n gradeSelection\n ? RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_GRADE_DESELECTED\n : RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_GRADE_SELECTED,\n {\n grade: updatedGrade,\n },\n );\n onFilterUpdate({ grade: gradeSelection ? '' : updatedGrade });\n },\n [trackEvent, onFilterUpdate, appliedGrade],\n );\n\n const handleOnNodeTypeChange = useCallback(\n (updatedNodeType: string) => {\n const nodeTypeSelection = appliedNodeType === updatedNodeType;\n\n trackEvent(\n nodeTypeSelection\n ? RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_NODE_TYPE_DESELECTED\n : RESOURCE_ASSIGN_ANALYTICS_EVENTS.RESOURCE_NODE_TYPE_SELECTED,\n {\n node_type: updatedNodeType,\n },\n );\n onFilterUpdate({ node_type: nodeTypeSelection ? '' : updatedNodeType });\n },\n [trackEvent, onFilterUpdate, appliedNodeType],\n );\n\n const filterItemList = [\n {\n title: 'Curriculum',\n options: boards.map(({ code, name }) => ({\n id: code,\n label: name,\n value: name,\n })),\n value: appliedBoard,\n onClick: handleOnBoardChange,\n },\n {\n title: 'Grade',\n options: grades.map(({ code, name }) => ({\n id: code,\n label: code,\n value: name,\n })),\n value: appliedGrade,\n onClick: handleOnGradeChange,\n },\n {\n title: 'Type',\n options: nodeTypes.map(({ code, name }) => ({\n id: code,\n label: EXTRA_PRACTICE_LABEL_MAP[name] || '',\n value: name || '',\n })),\n value: appliedNodeType,\n onClick: handleOnNodeTypeChange,\n },\n ];\n\n return (\n <>\n <Styled.HeaderWrapper\n $heightX={4}\n $background=\"WHITE_3\"\n $flexDirection=\"row\"\n $alignItems=\"end\"\n $noBorder\n >\n {TABS.map(tab => {\n const { id, label } = tab;\n const selected = id === selectedTab;\n\n return (\n <Styled.FilterTabWrapper\n key={id}\n $flexDirection=\"row\"\n $width=\"100%\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $gapX={0.5}\n $selected={selected}\n onClick={() => setSelectedTab(id)}\n $flexGap={4}\n $heightX={2.5}\n >\n <Text\n $renderAs={selected ? 'ub3-bold' : 'ub3'}\n $align=\"center\"\n $color={selected ? 'BLACK_T_87' : 'BLACK_T_38'}\n >\n {label}\n </Text>\n {addedResourceCount > 0 && id === 'resource-added' && (\n <Styled.ResourceCountWrapper\n $borderRadius={50}\n $background=\"YELLOW_4\"\n $gutter={4}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $heightX={1.25}\n >\n <Text $renderAs=\"ac4-black\">{addedResourceCount}</Text>\n </Styled.ResourceCountWrapper>\n )}\n </Styled.FilterTabWrapper>\n );\n })}\n </Styled.HeaderWrapper>\n\n <Styled.FilterListWrapper>\n {selectedTab === 'resource-filters' ? (\n <>\n {filterItemList.map(item => {\n const { title, value, options, onClick } = item;\n\n return (\n <Fragment key={title}>\n <FilterItem\n title={title}\n value={value ?? ''}\n options={options}\n onClick={onClick}\n />\n\n <Separator height={1} background=\"WHITE_5\" />\n </Fragment>\n );\n })}\n </>\n ) : (\n <>\n {selectedResources.map(item => (\n <FlexView $gapX={1} $gutterX={1} key={item.id}>\n <ResourceItem\n resource={item}\n onViewResource={onViewResource}\n onResourceAdditionOrDeletion={onResourceDeSelection}\n selected={true}\n />\n </FlexView>\n ))}\n\n {addedResourceCount === 0 && (\n <FlexView\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $gapX={2}\n $height=\"100%\"\n $flexGap={8}\n >\n <SheetIcon opacity={0.38} />\n <FlexView $widthX={15}>\n <Text $renderAs=\"ub1-bold\" $color=\"BLACK_T_38\" $align=\"center\">\n No sheets added\n </Text>\n </FlexView>\n </FlexView>\n )}\n </>\n )}\n </Styled.FilterListWrapper>\n </>\n );\n});\n\nexport default AddedResourceAndFilters;\n"],"names":["TABS","EXTRA_PRACTICE_LABEL_MAP","AddedResourceAndFilters","memo","props","resourceFilters","selectedResources","onResourceDeSelection","onFilterUpdate","onViewResource","boards","grades","nodeTypes","trackEvent","useUIContext","selectedTab","setSelectedTab","useState","addedResourceCount","appliedBoard","useMemo","_a","board","appliedGrade","grade","appliedNodeType","handleOnBoardChange","useCallback","updatedBoard","boardSelection","RESOURCE_ASSIGN_ANALYTICS_EVENTS","handleOnGradeChange","updatedGrade","gradeSelection","handleOnNodeTypeChange","updatedNodeType","nodeTypeSelection","filterItemList","code","name","jsxs","Fragment","jsx","Styled.HeaderWrapper","tab","id","label","selected","Styled.FilterTabWrapper","Text","Styled.ResourceCountWrapper","Styled.FilterListWrapper","item","title","value","options","onClick","FilterItem","Separator","FlexView","ResourceItem","SheetIcon"],"mappings":"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"}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { createGetAPI as r } from "@cuemath/rest-api";
|
2
|
+
import { BASE_URL_V3 as t } from "../../../../../constants/api.js";
|
3
|
+
import { stringify as o } from "../../../../../helpers/query-string.js";
|
4
|
+
const { get: i, useGet: a } = r({
|
5
|
+
getURL: (c, e) => `${t}/curriculum/extra-resources/?${o(e)}`
|
6
|
+
});
|
7
|
+
export {
|
8
|
+
i as getResourceSearchAPI,
|
9
|
+
a as useGetSearchResource
|
10
|
+
};
|
11
|
+
//# sourceMappingURL=get-resource.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-resource.js","sources":["../../../../../../src/features/milestone/milestone-resources/resources-assign/api/get-resource.ts"],"sourcesContent":["import type { TCourseStream } from '../../../create/milestone-create-types';\nimport type { IResourceData } from '../resources-assign-type';\nimport type { ResourceModel } from '@cuemath/rest-api';\n\nimport { createGetAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V3 } from '../../../../../constants/api';\nimport { stringify } from '../../../../../helpers/query-string';\n\ninterface IExtraPracticeQuery {\n board?: string;\n grade?: string;\n stream: TCourseStream;\n search_term?: string;\n node_type?: string;\n page?: number;\n per_page?: number;\n user_milestone_id?: string;\n program_id?: string;\n user_id?: string;\n}\n\nexport type IExtendedResourceModel = ResourceModel<IResourceData> & {\n __ERROR__: Record<string, string>;\n};\n\nconst { get: getResourceSearchAPI, useGet: useGetSearchResource } = createGetAPI<\n IResourceData,\n IExtraPracticeQuery,\n null\n>({\n getURL: (_, query) => `${BASE_URL_V3}/curriculum/extra-resources/?${stringify(query)}`,\n});\n\nexport { getResourceSearchAPI, useGetSearchResource, type IExtraPracticeQuery };\n"],"names":["getResourceSearchAPI","useGetSearchResource","createGetAPI","_","query","BASE_URL_V3","stringify"],"mappings":";;;AA0BA,MAAM,EAAE,KAAKA,GAAsB,QAAQC,EAAA,IAAyBC,EAIlE;AAAA,EACA,QAAQ,CAACC,GAAGC,MAAU,GAAGC,CAAW,gCAAgCC,EAAUF,CAAK,CAAC;AACtF,CAAC;"}
|
package/dist/features/milestone/milestone-resources/resources-assign/api/goal-resource-assign.js
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
import { createPostAPI as o } from "@cuemath/rest-api";
|
2
|
+
import { BASE_URL_V3 as s } from "../../../../../constants/api.js";
|
3
|
+
const { usePost: u } = o({
|
4
|
+
getURL: (t, { userMilestoneId: e }) => `${s}/user-milestone/${e}/resources`
|
5
|
+
});
|
6
|
+
export {
|
7
|
+
u as usePostMilestoneResource
|
8
|
+
};
|
9
|
+
//# sourceMappingURL=goal-resource-assign.js.map
|
package/dist/features/milestone/milestone-resources/resources-assign/api/goal-resource-assign.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"goal-resource-assign.js","sources":["../../../../../../src/features/milestone/milestone-resources/resources-assign/api/goal-resource-assign.ts"],"sourcesContent":["import { createPostAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V3 } from '../../../../../constants/api';\n\nconst { usePost: usePostMilestoneResource } = createPostAPI<\n void,\n {\n node_ids: string[];\n },\n { userMilestoneId: string }\n>({\n getURL: (_, { userMilestoneId }) => `${BASE_URL_V3}/user-milestone/${userMilestoneId}/resources`,\n});\n\nexport { usePostMilestoneResource };\n"],"names":["usePostMilestoneResource","createPostAPI","_","userMilestoneId","BASE_URL_V3"],"mappings":";;AAIA,MAAM,EAAE,SAASA,EAAyB,IAAIC,EAM5C;AAAA,EACA,QAAQ,CAACC,GAAG,EAAE,iBAAAC,EAAsB,MAAA,GAAGC,CAAW,mBAAmBD,CAAe;AACtF,CAAC;"}
|
package/dist/features/milestone/milestone-resources/resources-assign/api/lpar-resource-assign.js
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
import { createPostAPI as e } from "@cuemath/rest-api";
|
2
|
+
import { BASE_URL_V2 as s } from "../../../../../constants/api.js";
|
3
|
+
const { usePost: P } = e({
|
4
|
+
getURL: (o, { studentId: t }) => `${s}/students/${t}/practice-sheets/`
|
5
|
+
});
|
6
|
+
export {
|
7
|
+
P as usePostLPARResource
|
8
|
+
};
|
9
|
+
//# sourceMappingURL=lpar-resource-assign.js.map
|