@cuemath/leap 2.8.60-as4 → 2.8.60-gs1
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/chapters/chapters-list/chapter-item/chapter-item.js +1 -1
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/node-card-styled.js +16 -15
- package/dist/features/chapters-v2/comps/node-card/node-card-styled.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +8 -12
- package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +1 -1
- package/dist/features/chapters-v2/utils/index.js +4 -5
- package/dist/features/chapters-v2/utils/index.js.map +1 -1
- package/dist/features/chapters-v2/utils/node-card-utils.js +34 -62
- package/dist/features/chapters-v2/utils/node-card-utils.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/api/get-tests-list.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +81 -79
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +61 -59
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js +85 -83
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list-container.js +90 -88
- package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +98 -82
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js +71 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js +31 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js +38 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js +79 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js +18 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list.js +51 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/tests-list-styled.js +11 -0
- package/dist/features/milestone/milestone-tests/tests-list/tests-list-styled.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/tests-list.js +144 -0
- package/dist/features/milestone/milestone-tests/tests-list/tests-list.js.map +1 -0
- package/dist/features/sheets/resources-list/resource-item/styled.js +1 -1
- package/dist/features/sheets/resources-list/resource-item/styled.js.map +1 -1
- package/dist/index.d.ts +11 -33
- package/dist/index.js +29 -31
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/features/homework/card-menu-options.js +0 -25
- package/dist/features/homework/card-menu-options.js.map +0 -1
- package/dist/features/homework/homework-card.js +0 -210
- package/dist/features/homework/homework-card.js.map +0 -1
- package/dist/features/homework/styles.js +0 -114
- package/dist/features/homework/styles.js.map +0 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js +0 -165
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +0 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view-styled.js +0 -25
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view-styled.js.map +0 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js +0 -82
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js.map +0 -1
- package/dist/features/recent-chapters/api/get-recent-chapters.js +0 -9
- package/dist/features/recent-chapters/api/get-recent-chapters.js.map +0 -1
- package/dist/features/recent-chapters/recent-chapters-styled.js +0 -16
- package/dist/features/recent-chapters/recent-chapters-styled.js.map +0 -1
- package/dist/features/recent-chapters/recent-chapters.js +0 -43
- package/dist/features/recent-chapters/recent-chapters.js.map +0 -1
- package/dist/features/sheet-v2/resource-list/resource-list.js +0 -52
- package/dist/features/sheet-v2/resource-list/resource-list.js.map +0 -1
@@ -1,68 +1,69 @@
|
|
1
|
-
import { jsxs as t, Fragment as
|
2
|
-
import
|
3
|
-
import
|
4
|
-
import
|
1
|
+
import { jsxs as t, Fragment as te, jsx as o } from "react/jsx-runtime";
|
2
|
+
import ne, { memo as oe, useState as ie, useCallback as A } from "react";
|
3
|
+
import re from "../../../hooks/use-lazy-ref.js";
|
4
|
+
import g from "../../../ui/buttons/text-button/text-button.js";
|
5
5
|
import c from "../../../ui/layout/flex-view.js";
|
6
6
|
import C from "../../../ui/text/text.js";
|
7
7
|
import se from "./milestone-widget/milestone-widget.js";
|
8
|
-
import { StyledDownIcon as
|
9
|
-
import
|
10
|
-
import
|
11
|
-
const
|
12
|
-
({ milestones: e, studentId: M, milestoneType:
|
13
|
-
const [a,
|
8
|
+
import { StyledDownIcon as ae } from "./milestone-widget/milestone-widget-styled.js";
|
9
|
+
import le from "./no-active-milestone/no-active-milestone.js";
|
10
|
+
import ce from "../../../../node_modules/uuid/dist/esm-browser/v4.js";
|
11
|
+
const xe = oe(
|
12
|
+
({ milestones: e, studentId: M, milestoneType: s, ...x }) => {
|
13
|
+
const [a, T] = ie(!1), {
|
14
14
|
canCreatePlan: m,
|
15
|
-
isClassOngoing:
|
16
|
-
isFiltersAdded:
|
15
|
+
isClassOngoing: $,
|
16
|
+
isFiltersAdded: v,
|
17
17
|
isStudentPresent: I,
|
18
|
-
onAddChapter:
|
18
|
+
onAddChapter: R,
|
19
19
|
onAddOutcome: i,
|
20
20
|
onChapterClick: w,
|
21
|
-
onCreatePlan:
|
21
|
+
onCreatePlan: r,
|
22
22
|
onDelete: E,
|
23
|
-
onDraftPublish:
|
24
|
-
onEdit:
|
23
|
+
onDraftPublish: P,
|
24
|
+
onEdit: S,
|
25
25
|
onExpandPastMilestones: f,
|
26
|
-
onCreateMilestoneTest:
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
onAssignResources:
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
26
|
+
onCreateMilestoneTest: D,
|
27
|
+
onPreview: b,
|
28
|
+
onReattempt: N,
|
29
|
+
onReset: F,
|
30
|
+
onResume: k,
|
31
|
+
onReview: j,
|
32
|
+
onStart: B,
|
33
|
+
onAssignResources: G,
|
34
|
+
onUnAssignSheet: L,
|
35
|
+
onTestPreview: O,
|
36
|
+
onTestReview: V,
|
37
|
+
onTestStart: _,
|
38
|
+
activeMilestoneId: y,
|
39
|
+
activeTabId: z,
|
40
|
+
onWidgetTabSelection: X,
|
40
41
|
studentName: p,
|
41
|
-
teacherName:
|
42
|
-
parentName:
|
42
|
+
teacherName: U,
|
43
|
+
parentName: W,
|
43
44
|
userType: d,
|
44
|
-
courseStream:
|
45
|
-
} = x, l =
|
46
|
-
|
47
|
-
}, [
|
48
|
-
!a && f && f(),
|
49
|
-
},
|
45
|
+
courseStream: H
|
46
|
+
} = x, l = s === "ACTIVE", h = s === "DRAFT", u = re(ce), q = A(() => {
|
47
|
+
r == null || r(u);
|
48
|
+
}, [r, u]), J = () => {
|
49
|
+
!a && f && f(), T(!a);
|
50
|
+
}, K = A(() => {
|
50
51
|
i == null || i();
|
51
52
|
}, [i]);
|
52
53
|
if (!e) return null;
|
53
|
-
const
|
54
|
+
const Q = e.some(
|
54
55
|
(n) => n.milestone_state === "ACTIVE"
|
55
|
-
),
|
56
|
+
), Y = e.some(
|
56
57
|
(n) => n.milestone_state === "DRAFT"
|
57
58
|
);
|
58
|
-
return /* @__PURE__ */ t(
|
59
|
-
l && !
|
60
|
-
|
59
|
+
return /* @__PURE__ */ t(te, { children: [
|
60
|
+
l && !Q && /* @__PURE__ */ o(
|
61
|
+
le,
|
61
62
|
{
|
62
63
|
canCreatePlan: m,
|
63
|
-
isDraftMilestonePresent:
|
64
|
-
isFiltersAdded:
|
65
|
-
onCreatePlan:
|
64
|
+
isDraftMilestonePresent: Y,
|
65
|
+
isFiltersAdded: v,
|
66
|
+
onCreatePlan: r,
|
66
67
|
studentName: p,
|
67
68
|
userType: d
|
68
69
|
}
|
@@ -75,18 +76,18 @@ const Me = ne(
|
|
75
76
|
] }),
|
76
77
|
d === "TEACHER" && /* @__PURE__ */ t(c, { $flexDirection: "row", $flexGapX: 1, children: [
|
77
78
|
/* @__PURE__ */ o(
|
78
|
-
|
79
|
+
g,
|
79
80
|
{
|
80
81
|
label: "Create Goal",
|
81
82
|
size: "small",
|
82
|
-
onClick:
|
83
|
+
onClick: q,
|
83
84
|
disabled: !m
|
84
85
|
}
|
85
86
|
),
|
86
|
-
/* @__PURE__ */ o(
|
87
|
+
/* @__PURE__ */ o(g, { label: "Add Milestone", size: "small", onClick: K })
|
87
88
|
] })
|
88
89
|
] }),
|
89
|
-
|
90
|
+
s === "INACTIVE" && !!e.length && /* @__PURE__ */ t(
|
90
91
|
c,
|
91
92
|
{
|
92
93
|
$flexDirection: "row",
|
@@ -99,56 +100,57 @@ const Me = ne(
|
|
99
100
|
e.length,
|
100
101
|
")"
|
101
102
|
] }),
|
102
|
-
/* @__PURE__ */ o(
|
103
|
+
/* @__PURE__ */ o(ae, { onClick: J, $expanded: a })
|
103
104
|
]
|
104
105
|
}
|
105
106
|
),
|
106
|
-
(h || l || a) && e.map((n,
|
107
|
-
const { id:
|
108
|
-
return /* @__PURE__ */ t(
|
107
|
+
(h || l || a) && e.map((n, Z) => {
|
108
|
+
const { id: ee } = n;
|
109
|
+
return /* @__PURE__ */ t(ne.Fragment, { children: [
|
109
110
|
/* @__PURE__ */ o(
|
110
111
|
se,
|
111
112
|
{
|
112
113
|
milestone: n,
|
113
114
|
studentId: M,
|
114
115
|
studentName: p,
|
115
|
-
parentName:
|
116
|
-
teacherName:
|
116
|
+
parentName: W,
|
117
|
+
teacherName: U,
|
117
118
|
userType: d,
|
118
119
|
onAddOutcome: i,
|
119
120
|
onChapterClick: w,
|
120
121
|
isMilestoneActive: l || h,
|
121
|
-
milestoneType:
|
122
|
-
onEdit:
|
123
|
-
onCreateMilestoneTest:
|
124
|
-
|
122
|
+
milestoneType: s,
|
123
|
+
onEdit: S,
|
124
|
+
onCreateMilestoneTest: D,
|
125
|
+
onPreview: b,
|
126
|
+
onReattempt: N,
|
127
|
+
onReset: F,
|
128
|
+
onResume: k,
|
129
|
+
onReview: j,
|
130
|
+
onStart: B,
|
131
|
+
onAddChapter: R,
|
125
132
|
onDelete: E,
|
126
|
-
onDraftPublish:
|
127
|
-
isClassOngoing:
|
133
|
+
onDraftPublish: P,
|
134
|
+
isClassOngoing: $,
|
128
135
|
isStudentPresent: I,
|
129
|
-
onAssignResources:
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
onTestStart: O,
|
139
|
-
courseStream: W,
|
140
|
-
activeMilestoneId: _,
|
141
|
-
activeTabId: y,
|
142
|
-
onWidgetTabSelection: z
|
136
|
+
onAssignResources: G,
|
137
|
+
onUnAssignSheet: L,
|
138
|
+
onTestPreview: O,
|
139
|
+
onTestReview: V,
|
140
|
+
onTestStart: _,
|
141
|
+
courseStream: H,
|
142
|
+
activeMilestoneId: y,
|
143
|
+
activeTabId: z,
|
144
|
+
onWidgetTabSelection: X
|
143
145
|
}
|
144
146
|
),
|
145
|
-
|
146
|
-
] }, `milestone=${
|
147
|
+
Z !== e.length - 1 && /* @__PURE__ */ o(c, { $heightX: 2 })
|
148
|
+
] }, `milestone=${ee}`);
|
147
149
|
})
|
148
150
|
] });
|
149
151
|
}
|
150
152
|
);
|
151
153
|
export {
|
152
|
-
|
154
|
+
xe as default
|
153
155
|
};
|
154
156
|
//# sourceMappingURL=milestone-list.js.map
|
package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"milestone-list.js","sources":["../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-list.tsx"],"sourcesContent":["import type { IMilestoneListProps } from './milestone-list-types';\n\nimport React, { memo, useCallback, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../../hooks/use-lazy-ref';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport MilestoneWidget from './milestone-widget/milestone-widget';\nimport { StyledDownIcon } from './milestone-widget/milestone-widget-styled';\nimport NoActiveMilestone from './no-active-milestone/no-active-milestone';\n\nconst MilestoneList: React.FC<IMilestoneListProps> = memo(\n ({ milestones, studentId, milestoneType, ...restMilestoneListProps }) => {\n const [expandInactiveMilestones, setExpandInactiveMilestones] = useState(false);\n const {\n canCreatePlan,\n isClassOngoing,\n isFiltersAdded,\n isStudentPresent,\n onAddChapter,\n onAddOutcome,\n onChapterClick,\n onCreatePlan,\n onDelete,\n onDraftPublish,\n onEdit,\n onExpandPastMilestones,\n onCreateMilestoneTest,\n onNodeAttempt,\n onNodeView,\n onNodeReview,\n onNodeReattempt,\n onNodeReset,\n onNodeUnassign,\n onAssignResources,\n onTestPreview,\n onTestReview,\n onTestStart,\n activeMilestoneId,\n activeTabId,\n onWidgetTabSelection,\n studentName,\n teacherName,\n parentName,\n userType,\n courseStream,\n } = restMilestoneListProps;\n\n const isMilestoneActive = milestoneType === 'ACTIVE';\n const isDraftMilestone = milestoneType === 'DRAFT';\n const temporaryMilestoneId = useLazyRef(uuidv4);\n\n const handleCreatePlan = useCallback(() => {\n onCreatePlan?.(temporaryMilestoneId);\n }, [onCreatePlan, temporaryMilestoneId]);\n\n const toggleExpand = () => {\n if (!expandInactiveMilestones && onExpandPastMilestones) {\n onExpandPastMilestones();\n }\n setExpandInactiveMilestones(!expandInactiveMilestones);\n };\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.();\n }, [onAddOutcome]);\n\n if (!milestones) return null;\n\n const activeMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'ACTIVE',\n );\n const draftMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'DRAFT',\n );\n\n return (\n <>\n {isMilestoneActive && !activeMilestonePresent && (\n <NoActiveMilestone\n canCreatePlan={canCreatePlan}\n isDraftMilestonePresent={draftMilestonePresent}\n isFiltersAdded={isFiltersAdded}\n onCreatePlan={onCreatePlan}\n studentName={studentName}\n userType={userType}\n />\n )}\n\n {isMilestoneActive && (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $marginBottom={10}>\n <Text $renderAs=\"ac4\">Goals ({milestones.length})</Text>\n\n {userType === 'TEACHER' && (\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n <TextButton\n label=\"Create Goal\"\n size=\"small\"\n onClick={handleCreatePlan}\n disabled={!canCreatePlan}\n />\n <TextButton label=\"Add Milestone\" size=\"small\" onClick={handleOnAddOutcome} />\n </FlexView>\n )}\n </FlexView>\n )}\n\n {milestoneType === 'INACTIVE' && Boolean(milestones.length) && (\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $marginBottomX={1}\n >\n <Text $renderAs=\"ac4\">PAST LEARNING PLANS & OUTCOMES ({milestones.length})</Text>\n <StyledDownIcon onClick={toggleExpand} $expanded={expandInactiveMilestones} />\n </FlexView>\n )}\n\n {(isDraftMilestone || isMilestoneActive || expandInactiveMilestones) &&\n milestones.map((milestone, idx) => {\n const { id: milestoneId } = milestone;\n\n return (\n <React.Fragment key={`milestone=${milestoneId}`}>\n <MilestoneWidget\n milestone={milestone}\n studentId={studentId}\n studentName={studentName}\n parentName={parentName}\n teacherName={teacherName}\n userType={userType}\n onAddOutcome={onAddOutcome}\n onChapterClick={onChapterClick}\n isMilestoneActive={isMilestoneActive || isDraftMilestone}\n milestoneType={milestoneType}\n onEdit={onEdit}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onAddChapter={onAddChapter}\n onDelete={onDelete}\n onDraftPublish={onDraftPublish}\n isClassOngoing={isClassOngoing}\n isStudentPresent={isStudentPresent}\n onAssignResources={onAssignResources}\n onNodeAttempt={onNodeAttempt}\n onNodeView={onNodeView}\n onNodeReview={onNodeReview}\n onNodeReattempt={onNodeReattempt}\n onNodeReset={onNodeReset}\n onNodeUnassign={onNodeUnassign}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n courseStream={courseStream}\n activeMilestoneId={activeMilestoneId}\n activeTabId={activeTabId}\n onWidgetTabSelection={onWidgetTabSelection}\n />\n {idx !== milestones.length - 1 && <FlexView $heightX={2} />}\n </React.Fragment>\n );\n })}\n </>\n );\n },\n);\n\nexport default MilestoneList;\n"],"names":["MilestoneList","memo","milestones","studentId","milestoneType","restMilestoneListProps","expandInactiveMilestones","setExpandInactiveMilestones","useState","canCreatePlan","isClassOngoing","isFiltersAdded","isStudentPresent","onAddChapter","onAddOutcome","onChapterClick","onCreatePlan","onDelete","onDraftPublish","onEdit","onExpandPastMilestones","onCreateMilestoneTest","onNodeAttempt","onNodeView","onNodeReview","onNodeReattempt","onNodeReset","onNodeUnassign","onAssignResources","onTestPreview","onTestReview","onTestStart","activeMilestoneId","activeTabId","onWidgetTabSelection","studentName","teacherName","parentName","userType","courseStream","isMilestoneActive","isDraftMilestone","temporaryMilestoneId","useLazyRef","uuidv4","handleCreatePlan","useCallback","toggleExpand","handleOnAddOutcome","activeMilestonePresent","milestone","draftMilestonePresent","jsxs","Fragment","jsx","NoActiveMilestone","FlexView","Text","TextButton","StyledDownIcon","idx","milestoneId","React","MilestoneWidget"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"milestone-list.js","sources":["../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-list.tsx"],"sourcesContent":["import type { IMilestoneListProps } from './milestone-list-types';\n\nimport React, { memo, useCallback, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../../hooks/use-lazy-ref';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport MilestoneWidget from './milestone-widget/milestone-widget';\nimport { StyledDownIcon } from './milestone-widget/milestone-widget-styled';\nimport NoActiveMilestone from './no-active-milestone/no-active-milestone';\n\nconst MilestoneList: React.FC<IMilestoneListProps> = memo(\n ({ milestones, studentId, milestoneType, ...restMilestoneListProps }) => {\n const [expandInactiveMilestones, setExpandInactiveMilestones] = useState(false);\n const {\n canCreatePlan,\n isClassOngoing,\n isFiltersAdded,\n isStudentPresent,\n onAddChapter,\n onAddOutcome,\n onChapterClick,\n onCreatePlan,\n onDelete,\n onDraftPublish,\n onEdit,\n onExpandPastMilestones,\n onCreateMilestoneTest,\n onPreview,\n onReattempt,\n onReset,\n onResume,\n onReview,\n onStart,\n onAssignResources,\n onUnAssignSheet,\n onTestPreview,\n onTestReview,\n onTestStart,\n activeMilestoneId,\n activeTabId,\n onWidgetTabSelection,\n studentName,\n teacherName,\n parentName,\n userType,\n courseStream,\n } = restMilestoneListProps;\n\n const isMilestoneActive = milestoneType === 'ACTIVE';\n const isDraftMilestone = milestoneType === 'DRAFT';\n const temporaryMilestoneId = useLazyRef(uuidv4);\n\n const handleCreatePlan = useCallback(() => {\n onCreatePlan?.(temporaryMilestoneId);\n }, [onCreatePlan, temporaryMilestoneId]);\n\n const toggleExpand = () => {\n if (!expandInactiveMilestones && onExpandPastMilestones) {\n onExpandPastMilestones();\n }\n setExpandInactiveMilestones(!expandInactiveMilestones);\n };\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.();\n }, [onAddOutcome]);\n\n if (!milestones) return null;\n\n const activeMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'ACTIVE',\n );\n const draftMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'DRAFT',\n );\n\n return (\n <>\n {isMilestoneActive && !activeMilestonePresent && (\n <NoActiveMilestone\n canCreatePlan={canCreatePlan}\n isDraftMilestonePresent={draftMilestonePresent}\n isFiltersAdded={isFiltersAdded}\n onCreatePlan={onCreatePlan}\n studentName={studentName}\n userType={userType}\n />\n )}\n\n {isMilestoneActive && (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $marginBottom={10}>\n <Text $renderAs=\"ac4\">Goals ({milestones.length})</Text>\n\n {userType === 'TEACHER' && (\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n <TextButton\n label=\"Create Goal\"\n size=\"small\"\n onClick={handleCreatePlan}\n disabled={!canCreatePlan}\n />\n <TextButton label=\"Add Milestone\" size=\"small\" onClick={handleOnAddOutcome} />\n </FlexView>\n )}\n </FlexView>\n )}\n\n {milestoneType === 'INACTIVE' && Boolean(milestones.length) && (\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $marginBottomX={1}\n >\n <Text $renderAs=\"ac4\">PAST LEARNING PLANS & OUTCOMES ({milestones.length})</Text>\n <StyledDownIcon onClick={toggleExpand} $expanded={expandInactiveMilestones} />\n </FlexView>\n )}\n\n {(isDraftMilestone || isMilestoneActive || expandInactiveMilestones) &&\n milestones.map((milestone, idx) => {\n const { id: milestoneId } = milestone;\n\n return (\n <React.Fragment key={`milestone=${milestoneId}`}>\n <MilestoneWidget\n milestone={milestone}\n studentId={studentId}\n studentName={studentName}\n parentName={parentName}\n teacherName={teacherName}\n userType={userType}\n onAddOutcome={onAddOutcome}\n onChapterClick={onChapterClick}\n isMilestoneActive={isMilestoneActive || isDraftMilestone}\n milestoneType={milestoneType}\n onEdit={onEdit}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onPreview={onPreview}\n onReattempt={onReattempt}\n onReset={onReset}\n onResume={onResume}\n onReview={onReview}\n onStart={onStart}\n onAddChapter={onAddChapter}\n onDelete={onDelete}\n onDraftPublish={onDraftPublish}\n isClassOngoing={isClassOngoing}\n isStudentPresent={isStudentPresent}\n onAssignResources={onAssignResources}\n onUnAssignSheet={onUnAssignSheet}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n courseStream={courseStream}\n activeMilestoneId={activeMilestoneId}\n activeTabId={activeTabId}\n onWidgetTabSelection={onWidgetTabSelection}\n />\n {idx !== milestones.length - 1 && <FlexView $heightX={2} />}\n </React.Fragment>\n );\n })}\n </>\n );\n },\n);\n\nexport default MilestoneList;\n"],"names":["MilestoneList","memo","milestones","studentId","milestoneType","restMilestoneListProps","expandInactiveMilestones","setExpandInactiveMilestones","useState","canCreatePlan","isClassOngoing","isFiltersAdded","isStudentPresent","onAddChapter","onAddOutcome","onChapterClick","onCreatePlan","onDelete","onDraftPublish","onEdit","onExpandPastMilestones","onCreateMilestoneTest","onPreview","onReattempt","onReset","onResume","onReview","onStart","onAssignResources","onUnAssignSheet","onTestPreview","onTestReview","onTestStart","activeMilestoneId","activeTabId","onWidgetTabSelection","studentName","teacherName","parentName","userType","courseStream","isMilestoneActive","isDraftMilestone","temporaryMilestoneId","useLazyRef","uuidv4","handleCreatePlan","useCallback","toggleExpand","handleOnAddOutcome","activeMilestonePresent","milestone","draftMilestonePresent","jsxs","Fragment","jsx","NoActiveMilestone","FlexView","Text","TextButton","StyledDownIcon","idx","milestoneId","React","MilestoneWidget"],"mappings":"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"}
|
@@ -1,56 +1,57 @@
|
|
1
|
-
import { jsx as t, jsxs as
|
2
|
-
import { memo as
|
3
|
-
import
|
4
|
-
import { useUIContext as
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
import { getGoalCategoryBasedColorTheme as
|
9
|
-
import { NoPlanCardWrapper as
|
10
|
-
const
|
1
|
+
import { jsx as t, jsxs as H, Fragment as X } from "react/jsx-runtime";
|
2
|
+
import { memo as q, useState as z, useCallback as J } from "react";
|
3
|
+
import K from "../../../../../chapters/chapters-list/chapters-list.js";
|
4
|
+
import { useUIContext as Q } from "../../../../../ui/context/context.js";
|
5
|
+
import V from "../../../../../ui/text/text.js";
|
6
|
+
import Y from "../../../../milestone-resources/resources-list/resources-list.js";
|
7
|
+
import Z from "../../../../milestone-tests/tests-list/tests-list.js";
|
8
|
+
import { getGoalCategoryBasedColorTheme as ee } from "../milestone-utils.js";
|
9
|
+
import { NoPlanCardWrapper as te, TabsWrapper as oe, TabsText as se, TabComponentWrapper as ne } from "./milestone-tabs-styled.js";
|
10
|
+
const he = q((h) => {
|
11
11
|
var g;
|
12
12
|
const {
|
13
|
-
goalCategory:
|
13
|
+
goalCategory: R,
|
14
14
|
isDraftMilestone: r,
|
15
15
|
isGoalCreation: A,
|
16
16
|
isMilestoneActive: l,
|
17
17
|
userMilestoneId: e,
|
18
18
|
chapters: c,
|
19
|
-
userType:
|
20
|
-
canUpdatePlan:
|
19
|
+
userType: m,
|
20
|
+
canUpdatePlan: p,
|
21
21
|
studentId: u,
|
22
22
|
milestoneState: I,
|
23
|
-
milestonePermissions:
|
24
|
-
activeMilestoneId:
|
25
|
-
activeTabId:
|
23
|
+
milestonePermissions: $,
|
24
|
+
activeMilestoneId: d,
|
25
|
+
activeTabId: k
|
26
26
|
} = h, {
|
27
|
-
onAddChapter:
|
28
|
-
onAssignResources:
|
29
|
-
onChapterClick:
|
30
|
-
onCreateMilestoneTest:
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
27
|
+
onAddChapter: M,
|
28
|
+
onAssignResources: x,
|
29
|
+
onChapterClick: P,
|
30
|
+
onCreateMilestoneTest: S,
|
31
|
+
onPreview: U,
|
32
|
+
onReattempt: j,
|
33
|
+
onReset: w,
|
34
|
+
onResume: E,
|
35
|
+
onReview: N,
|
36
|
+
onStart: W,
|
37
37
|
onTestPreview: _,
|
38
38
|
onTestReview: y,
|
39
39
|
onTestStart: B,
|
40
|
+
onUnAssignSheet: D,
|
40
41
|
onWidgetTabSelection: a
|
41
|
-
} = h, { visible_tabs: C } =
|
42
|
+
} = h, { visible_tabs: C } = $, { onEvent: T } = Q(), { backgroundColor: F } = ee(R, r), b = {
|
42
43
|
chapters: {
|
43
44
|
label: "Chapters",
|
44
45
|
component: /* @__PURE__ */ t(
|
45
|
-
|
46
|
+
K,
|
46
47
|
{
|
47
48
|
milestoneId: e,
|
48
49
|
chapters: c,
|
49
|
-
userType:
|
50
|
+
userType: m,
|
50
51
|
isGoalCreation: A,
|
51
|
-
onChapterClick:
|
52
|
-
onAddChapter:
|
53
|
-
canUpdatePlan: !!(I !== "DRAFT" &&
|
52
|
+
onChapterClick: P,
|
53
|
+
onAddChapter: M,
|
54
|
+
canUpdatePlan: !!(I !== "DRAFT" && p),
|
54
55
|
isMilestoneActive: l
|
55
56
|
}
|
56
57
|
)
|
@@ -58,16 +59,16 @@ const be = V((h) => {
|
|
58
59
|
tests: {
|
59
60
|
label: "Tests",
|
60
61
|
component: /* @__PURE__ */ t(
|
61
|
-
|
62
|
+
Z,
|
62
63
|
{
|
63
64
|
isDraftMilestone: r,
|
64
65
|
isChaptersAvailable: c.length > 0,
|
65
66
|
isMilestoneActive: l,
|
66
67
|
studentId: u,
|
67
68
|
userMilestoneId: e,
|
68
|
-
userType:
|
69
|
-
canUpdatePlan:
|
70
|
-
onCreateMilestoneTest:
|
69
|
+
userType: m,
|
70
|
+
canUpdatePlan: p,
|
71
|
+
onCreateMilestoneTest: S,
|
71
72
|
onTestPreview: _,
|
72
73
|
onTestStart: B,
|
73
74
|
onTestReview: y
|
@@ -77,57 +78,58 @@ const be = V((h) => {
|
|
77
78
|
resources: {
|
78
79
|
label: "Resources",
|
79
80
|
component: /* @__PURE__ */ t(
|
80
|
-
|
81
|
+
Y,
|
81
82
|
{
|
82
83
|
isDraftMilestone: r,
|
83
84
|
isMilestoneActive: l,
|
84
85
|
userMilestoneId: e,
|
85
|
-
canUpdatePlan:
|
86
|
+
canUpdatePlan: p,
|
86
87
|
studentId: u,
|
87
|
-
userType:
|
88
|
-
onAssignResources:
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
88
|
+
userType: m,
|
89
|
+
onAssignResources: x,
|
90
|
+
onUnAssignSheet: D,
|
91
|
+
onStart: W,
|
92
|
+
onReset: w,
|
93
|
+
onPreview: U,
|
94
|
+
onReview: N,
|
95
|
+
onResume: E,
|
96
|
+
onReattempt: j
|
95
97
|
}
|
96
98
|
)
|
97
99
|
}
|
98
100
|
}, s = (C ?? []).length === 0 ? Object.entries(b) : Object.entries(b).filter(
|
99
101
|
([o]) => (C ?? []).includes(o.toUpperCase())
|
100
|
-
), [i,
|
101
|
-
e ===
|
102
|
-
),
|
102
|
+
), [i, G] = z(
|
103
|
+
e === d ? k : ((g = s == null ? void 0 : s[0]) == null ? void 0 : g[0]) || "chapters"
|
104
|
+
), O = J(
|
103
105
|
(o, n) => {
|
104
|
-
if (
|
105
|
-
|
106
|
+
if (d === e && o === i) return null;
|
107
|
+
G(o), a == null || a(e, o), T("clicked", {
|
106
108
|
cta: n,
|
107
109
|
milestone_id: e
|
108
110
|
});
|
109
111
|
},
|
110
|
-
[
|
112
|
+
[d, e, i, a, T]
|
111
113
|
);
|
112
|
-
return r && c.length === 0 ? /* @__PURE__ */ t(
|
113
|
-
/* @__PURE__ */ t(
|
114
|
-
const [n,
|
114
|
+
return r && c.length === 0 ? /* @__PURE__ */ t(te, { $gutterX: 2, $background: "WHITE_3", children: /* @__PURE__ */ t(V, { $renderAs: "ab2", $color: "RED", children: "No chapter has been assigned" }) }) : /* @__PURE__ */ H(X, { children: [
|
115
|
+
/* @__PURE__ */ t(oe, { $backgroundColor: F, $frames: s.length, children: s.map((o) => {
|
116
|
+
const [n, L] = o, { label: f } = L, v = n === i;
|
115
117
|
return /* @__PURE__ */ t(
|
116
|
-
|
118
|
+
se,
|
117
119
|
{
|
118
120
|
$renderAs: v ? "ub3-bold" : "ub3",
|
119
121
|
$align: "center",
|
120
122
|
$selected: v,
|
121
|
-
onClick: () =>
|
123
|
+
onClick: () => O(n, f),
|
122
124
|
children: f
|
123
125
|
},
|
124
126
|
n
|
125
127
|
);
|
126
128
|
}) }),
|
127
|
-
/* @__PURE__ */ t(
|
129
|
+
/* @__PURE__ */ t(ne, { children: b[i].component })
|
128
130
|
] });
|
129
131
|
});
|
130
132
|
export {
|
131
|
-
|
133
|
+
he as default
|
132
134
|
};
|
133
135
|
//# sourceMappingURL=milestone-tabs.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"milestone-tabs.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.tsx"],"sourcesContent":["import type { IMilestoneTabConfig, IMilestoneTabsProps } from './milestone-tabs-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport ChaptersList from '../../../../../chapters/chapters-list/chapters-list';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport Text from '../../../../../ui/text/text';\nimport MilestoneWidgetResources from '../../../../milestone-resources/resources-list/resources-list';\nimport MilestoneTestsList from '../../../../milestone-tests/
|
1
|
+
{"version":3,"file":"milestone-tabs.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.tsx"],"sourcesContent":["import type { IMilestoneTabConfig, IMilestoneTabsProps } from './milestone-tabs-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport ChaptersList from '../../../../../chapters/chapters-list/chapters-list';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport Text from '../../../../../ui/text/text';\nimport MilestoneWidgetResources from '../../../../milestone-resources/resources-list/resources-list';\nimport MilestoneTestsList from '../../../../milestone-tests/tests-list/tests-list';\nimport { getGoalCategoryBasedColorTheme } from '../milestone-utils';\nimport * as Styled from './milestone-tabs-styled';\n\nconst MilestoneTabs: FC<IMilestoneTabsProps> = memo(props => {\n const {\n goalCategory,\n isDraftMilestone,\n isGoalCreation,\n isMilestoneActive,\n userMilestoneId,\n chapters,\n userType,\n canUpdatePlan,\n studentId,\n milestoneState,\n milestonePermissions,\n activeMilestoneId,\n activeTabId,\n } = props;\n const {\n onAddChapter,\n onAssignResources,\n onChapterClick,\n onCreateMilestoneTest,\n onPreview,\n onReattempt,\n onReset,\n onResume,\n onReview,\n onStart,\n onTestPreview,\n onTestReview,\n onTestStart,\n onUnAssignSheet,\n onWidgetTabSelection,\n } = props;\n const { visible_tabs: visibleTabs } = milestonePermissions;\n const { onEvent: trackEvent } = useUIContext();\n\n const { backgroundColor } = getGoalCategoryBasedColorTheme(goalCategory, isDraftMilestone);\n\n const TAB_CONFIG: IMilestoneTabConfig = {\n chapters: {\n label: 'Chapters',\n component: (\n <ChaptersList\n milestoneId={userMilestoneId}\n chapters={chapters}\n userType={userType}\n isGoalCreation={isGoalCreation}\n onChapterClick={onChapterClick}\n onAddChapter={onAddChapter}\n canUpdatePlan={Boolean(milestoneState !== 'DRAFT' && canUpdatePlan)}\n isMilestoneActive={isMilestoneActive}\n />\n ),\n },\n tests: {\n label: 'Tests',\n component: (\n <MilestoneTestsList\n isDraftMilestone={isDraftMilestone}\n isChaptersAvailable={chapters.length > 0}\n isMilestoneActive={isMilestoneActive}\n studentId={studentId}\n userMilestoneId={userMilestoneId}\n userType={userType}\n canUpdatePlan={canUpdatePlan}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onTestPreview={onTestPreview}\n onTestStart={onTestStart}\n onTestReview={onTestReview}\n />\n ),\n },\n resources: {\n label: 'Resources',\n component: (\n <MilestoneWidgetResources\n isDraftMilestone={isDraftMilestone}\n isMilestoneActive={isMilestoneActive}\n userMilestoneId={userMilestoneId}\n canUpdatePlan={canUpdatePlan}\n studentId={studentId}\n userType={userType}\n onAssignResources={onAssignResources}\n onUnAssignSheet={onUnAssignSheet}\n onStart={onStart}\n onReset={onReset}\n onPreview={onPreview}\n onReview={onReview}\n onResume={onResume}\n onReattempt={onReattempt}\n />\n ),\n },\n };\n\n const filteredTabConfig =\n (visibleTabs ?? []).length === 0\n ? Object.entries(TAB_CONFIG)\n : Object.entries(TAB_CONFIG).filter(([tabName]) =>\n (visibleTabs ?? []).includes(tabName.toUpperCase()),\n );\n const [selectedTabName, setSelectedTabName] = useState(\n userMilestoneId === activeMilestoneId ? activeTabId : filteredTabConfig?.[0]?.[0] || 'chapters',\n );\n\n const handleTabChange = useCallback(\n (tabName: keyof IMilestoneTabConfig, ctaLabel: string) => {\n if (activeMilestoneId === userMilestoneId && tabName === selectedTabName) return null;\n\n setSelectedTabName(tabName);\n\n onWidgetTabSelection?.(userMilestoneId, tabName);\n\n trackEvent('clicked', {\n cta: ctaLabel,\n milestone_id: userMilestoneId,\n });\n },\n [activeMilestoneId, userMilestoneId, selectedTabName, onWidgetTabSelection, trackEvent],\n );\n\n if (isDraftMilestone && chapters.length === 0) {\n return (\n <Styled.NoPlanCardWrapper $gutterX={2} $background=\"WHITE_3\">\n <Text $renderAs=\"ab2\" $color=\"RED\">\n No chapter has been assigned\n </Text>\n </Styled.NoPlanCardWrapper>\n );\n }\n\n return (\n <>\n <Styled.TabsWrapper $backgroundColor={backgroundColor} $frames={filteredTabConfig.length}>\n {filteredTabConfig.map(tabConfig => {\n const [tabName, tabInfo] = tabConfig;\n const { label } = tabInfo;\n const isSelected = tabName === selectedTabName;\n\n return (\n <Styled.TabsText\n $renderAs={isSelected ? 'ub3-bold' : 'ub3'}\n $align=\"center\"\n key={tabName}\n $selected={isSelected}\n onClick={() => handleTabChange(tabName as keyof IMilestoneTabConfig, label)}\n >\n {label}\n </Styled.TabsText>\n );\n })}\n </Styled.TabsWrapper>\n\n <Styled.TabComponentWrapper>\n {TAB_CONFIG[selectedTabName as keyof typeof TAB_CONFIG].component}\n </Styled.TabComponentWrapper>\n </>\n );\n});\n\nexport default MilestoneTabs;\n"],"names":["MilestoneTabs","memo","props","goalCategory","isDraftMilestone","isGoalCreation","isMilestoneActive","userMilestoneId","chapters","userType","canUpdatePlan","studentId","milestoneState","milestonePermissions","activeMilestoneId","activeTabId","onAddChapter","onAssignResources","onChapterClick","onCreateMilestoneTest","onPreview","onReattempt","onReset","onResume","onReview","onStart","onTestPreview","onTestReview","onTestStart","onUnAssignSheet","onWidgetTabSelection","visibleTabs","trackEvent","useUIContext","backgroundColor","getGoalCategoryBasedColorTheme","TAB_CONFIG","jsx","ChaptersList","MilestoneTestsList","MilestoneWidgetResources","filteredTabConfig","tabName","selectedTabName","setSelectedTabName","useState","_a","handleTabChange","useCallback","ctaLabel","Styled.NoPlanCardWrapper","Text","jsxs","Fragment","Styled.TabsWrapper","tabConfig","tabInfo","label","isSelected","Styled.TabsText","Styled.TabComponentWrapper"],"mappings":"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"}
|