@cuemath/leap 4.1.1-beta.5 → 4.1.1-link.0
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 +27 -25
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapters-list.js +53 -43
- package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/chapter-details.js +70 -68
- package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
- package/dist/features/journey/journey-id/journey-id-teacher.js +1 -1
- package/dist/features/journey/journey-id/journey-id-teacher.js.map +1 -1
- package/dist/features/journey/mocks/chapter-page-journey-mock-data.js +1 -1
- package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +105 -93
- 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/goals/goal-action-ctas.js +44 -43
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +36 -34
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +126 -107
- 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 +107 -95
- 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 +116 -104
- 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 +100 -93
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js +81 -76
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +1 -1
- package/dist/features/timeline/monthly-timeline/ptm-report/ptm-report-types.js.map +1 -1
- package/dist/features/timeline/monthly-timeline/ptm-report/ptm-report.js +97 -113
- package/dist/features/timeline/monthly-timeline/ptm-report/ptm-report.js.map +1 -1
- package/dist/features/trial-session/comps/learning-plan/goal-edit-sync.js +40 -0
- package/dist/features/trial-session/comps/learning-plan/goal-edit-sync.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-assign-resource-sync.js +55 -0
- package/dist/features/trial-session/comps/learning-plan/learning-assign-resource-sync.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-chapter-details.js +48 -0
- package/dist/features/trial-session/comps/learning-plan/learning-chapter-details.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-milestone-sync.js +145 -0
- package/dist/features/trial-session/comps/learning-plan/learning-milestone-sync.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-plan-helpers.js +30 -0
- package/dist/features/trial-session/comps/learning-plan/learning-plan-helpers.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-plan-view.js +17 -0
- package/dist/features/trial-session/comps/learning-plan/learning-plan-view.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-plan.js +93 -0
- package/dist/features/trial-session/comps/learning-plan/learning-plan.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-preview-worksheet.js +81 -0
- package/dist/features/trial-session/comps/learning-plan/learning-preview-worksheet.js.map +1 -0
- package/dist/features/trial-session/comps/learning-plan/learning-test-creation-sync.js +41 -0
- package/dist/features/trial-session/comps/learning-plan/learning-test-creation-sync.js.map +1 -0
- package/dist/features/trial-session/hooks/use-chapter-details-journey.js +97 -0
- package/dist/features/trial-session/hooks/use-chapter-details-journey.js.map +1 -0
- package/dist/features/trial-session/hooks/use-learning-plan-journey.js +105 -0
- package/dist/features/trial-session/hooks/use-learning-plan-journey.js.map +1 -0
- package/dist/features/trial-session/hooks/use-resource-assignment-journey.js +64 -0
- package/dist/features/trial-session/hooks/use-resource-assignment-journey.js.map +1 -0
- package/dist/features/trial-session/hooks/use-test-creation-journey.js +64 -0
- package/dist/features/trial-session/hooks/use-test-creation-journey.js.map +1 -0
- package/dist/features/trial-session/hooks/use-worksheet-preview-journey.js +65 -0
- package/dist/features/trial-session/hooks/use-worksheet-preview-journey.js.map +1 -0
- package/dist/features/trial-session/right-panel/slide-components-map.js +1 -1
- package/dist/features/trial-session/right-panel/slide-components-map.js.map +1 -1
- package/dist/features/trial-session/trial-session-types.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js +47 -34
- package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js +43 -42
- package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/worksheet-preview.js +28 -26
- package/dist/features/worksheet/worksheet-preview/worksheet-preview.js.map +1 -1
- package/dist/index.d.ts +42 -4
- package/package.json +1 -1
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback-styled.js +0 -16
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback-styled.js.map +0 -1
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback.js +0 -56
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback.js.map +0 -1
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer-styled.js +0 -22
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer-styled.js.map +0 -1
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer.js +0 -14
- package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer.js.map +0 -1
- package/dist/features/trial-session/comps/learning-plan/index.js +0 -355
- package/dist/features/trial-session/comps/learning-plan/index.js.map +0 -1
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { memo as
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
const
|
|
1
|
+
import { jsxs as s, Fragment as le, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { memo as de, useCallback as A, Fragment as ce } from "react";
|
|
3
|
+
import me from "../../../hooks/use-lazy-ref.js";
|
|
4
|
+
import fe from "../../../ui/arrow-tooltip/arrow-tooltip.js";
|
|
5
|
+
import C from "../../../ui/buttons/text-button/text-button.js";
|
|
6
|
+
import f from "../../../ui/layout/flex-view.js";
|
|
7
|
+
import ue from "../../../ui/separator/separator.js";
|
|
8
|
+
import pe from "../../../ui/text/text.js";
|
|
9
|
+
import he from "./milestone-widget/milestone-widget.js";
|
|
10
|
+
import Re from "./no-active-milestone/no-active-milestone.js";
|
|
11
|
+
import Ae from "../../../../node_modules/uuid/dist/esm-browser/v4.js";
|
|
12
|
+
const ye = de(function({
|
|
13
13
|
milestones: t,
|
|
14
|
-
studentId:
|
|
15
|
-
milestoneType:
|
|
16
|
-
widgetState:
|
|
14
|
+
studentId: v,
|
|
15
|
+
milestoneType: a,
|
|
16
|
+
widgetState: l,
|
|
17
17
|
onWidgetStateChange: M,
|
|
18
18
|
...T
|
|
19
19
|
}) {
|
|
20
20
|
const {
|
|
21
|
-
canCreatePlan:
|
|
22
|
-
isClassOngoing:
|
|
23
|
-
isFiltersAdded:
|
|
24
|
-
isStudentPresent:
|
|
25
|
-
onAddChapter:
|
|
26
|
-
onAddOutcome:
|
|
27
|
-
onChapterClick:
|
|
21
|
+
canCreatePlan: d,
|
|
22
|
+
isClassOngoing: g,
|
|
23
|
+
isFiltersAdded: b,
|
|
24
|
+
isStudentPresent: N,
|
|
25
|
+
onAddChapter: B,
|
|
26
|
+
onAddOutcome: r,
|
|
27
|
+
onChapterClick: D,
|
|
28
28
|
onCreatePlan: i,
|
|
29
|
-
onDelete:
|
|
30
|
-
onDraftPublish:
|
|
31
|
-
onEdit:
|
|
32
|
-
onCreateMilestoneTest:
|
|
29
|
+
onDelete: $,
|
|
30
|
+
onDraftPublish: w,
|
|
31
|
+
onEdit: x,
|
|
32
|
+
onCreateMilestoneTest: y,
|
|
33
33
|
onNodeAttempt: F,
|
|
34
34
|
onNodeView: I,
|
|
35
35
|
onNodeReview: P,
|
|
@@ -37,93 +37,105 @@ const Ne = oe(function({
|
|
|
37
37
|
onNodeReset: E,
|
|
38
38
|
onNodeUnassign: V,
|
|
39
39
|
onAssignResources: j,
|
|
40
|
-
onTestPreview:
|
|
41
|
-
onTestReview:
|
|
42
|
-
onTestStart:
|
|
43
|
-
activeMilestoneId:
|
|
40
|
+
onTestPreview: G,
|
|
41
|
+
onTestReview: J,
|
|
42
|
+
onTestStart: S,
|
|
43
|
+
activeMilestoneId: z,
|
|
44
44
|
activeTabId: L,
|
|
45
45
|
onWidgetTabSelection: H,
|
|
46
|
-
studentName:
|
|
46
|
+
studentName: u,
|
|
47
47
|
teacherName: O,
|
|
48
|
-
parentName:
|
|
49
|
-
userType:
|
|
50
|
-
courseStream:
|
|
51
|
-
isDraftModeEnabled:
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
48
|
+
parentName: W,
|
|
49
|
+
userType: c,
|
|
50
|
+
courseStream: X,
|
|
51
|
+
isDraftModeEnabled: _,
|
|
52
|
+
editButtonRef: U,
|
|
53
|
+
firstChapterRef: q,
|
|
54
|
+
createTestButtonRef: K,
|
|
55
|
+
assignResourceButtonRef: Q,
|
|
56
|
+
onNodeAssignAsHomework: Y,
|
|
57
|
+
onCardClick: Z,
|
|
58
|
+
defaultVisibleTab: ee,
|
|
59
|
+
canStartJourney: te,
|
|
60
|
+
startJourney: oe
|
|
61
|
+
} = T, m = a === "ACTIVE", ne = a === "DRAFT", p = me(Ae), re = A(() => {
|
|
56
62
|
i == null || i(p);
|
|
57
|
-
}, [i, p]),
|
|
58
|
-
|
|
59
|
-
}, [
|
|
63
|
+
}, [i, p]), ie = A(() => {
|
|
64
|
+
r == null || r();
|
|
65
|
+
}, [r]);
|
|
60
66
|
if (!t) return null;
|
|
61
|
-
const
|
|
67
|
+
const se = t.some(
|
|
62
68
|
(o) => o.milestone_state === "ACTIVE"
|
|
63
|
-
),
|
|
64
|
-
return /* @__PURE__ */
|
|
65
|
-
m && !
|
|
66
|
-
|
|
69
|
+
), ae = t.some((o) => o.milestone_state === "DRAFT");
|
|
70
|
+
return /* @__PURE__ */ s(le, { children: [
|
|
71
|
+
m && !se && /* @__PURE__ */ e(f, { $marginBottom: 40, children: /* @__PURE__ */ e(
|
|
72
|
+
Re,
|
|
67
73
|
{
|
|
68
|
-
canCreatePlan:
|
|
69
|
-
isDraftMilestonePresent:
|
|
70
|
-
isFiltersAdded:
|
|
74
|
+
canCreatePlan: d,
|
|
75
|
+
isDraftMilestonePresent: ae,
|
|
76
|
+
isFiltersAdded: b,
|
|
71
77
|
onCreatePlan: i,
|
|
72
|
-
studentName:
|
|
73
|
-
userType:
|
|
78
|
+
studentName: u,
|
|
79
|
+
userType: c
|
|
74
80
|
}
|
|
75
81
|
) }),
|
|
76
|
-
m && /* @__PURE__ */
|
|
77
|
-
/* @__PURE__ */
|
|
82
|
+
m && /* @__PURE__ */ s(f, { $flexDirection: "row", $justifyContent: "space-between", $marginBottom: 16, children: [
|
|
83
|
+
/* @__PURE__ */ s(pe, { $renderAs: "ac4", children: [
|
|
78
84
|
"Goals (",
|
|
79
85
|
t.length,
|
|
80
86
|
")"
|
|
81
87
|
] }),
|
|
82
|
-
|
|
88
|
+
c === "TEACHER" && /* @__PURE__ */ s(f, { $flexDirection: "row", $flexGapX: 1, children: [
|
|
83
89
|
/* @__PURE__ */ e(
|
|
84
|
-
|
|
90
|
+
fe,
|
|
85
91
|
{
|
|
86
92
|
renderAs: "primary",
|
|
87
93
|
tooltipItem: "Goals can only be added for students who have joined the class",
|
|
88
|
-
hidden:
|
|
94
|
+
hidden: d,
|
|
89
95
|
position: "bottom",
|
|
90
96
|
children: /* @__PURE__ */ e(
|
|
91
|
-
|
|
97
|
+
C,
|
|
92
98
|
{
|
|
93
99
|
label: "Create Goal",
|
|
94
100
|
size: "small",
|
|
95
|
-
onClick:
|
|
96
|
-
disabled: !
|
|
101
|
+
onClick: re,
|
|
102
|
+
disabled: !d
|
|
97
103
|
}
|
|
98
104
|
)
|
|
99
105
|
}
|
|
100
106
|
),
|
|
101
|
-
/* @__PURE__ */ e(
|
|
107
|
+
/* @__PURE__ */ e(C, { label: "Add Milestone", size: "small", onClick: ie })
|
|
102
108
|
] })
|
|
103
109
|
] }),
|
|
104
|
-
t.map((o,
|
|
105
|
-
const { id:
|
|
106
|
-
return /* @__PURE__ */
|
|
110
|
+
t.map((o, h) => {
|
|
111
|
+
const { id: R } = o, n = h === 0;
|
|
112
|
+
return /* @__PURE__ */ s(ce, { children: [
|
|
107
113
|
/* @__PURE__ */ e(
|
|
108
|
-
|
|
114
|
+
he,
|
|
109
115
|
{
|
|
110
116
|
milestone: o,
|
|
111
|
-
studentId:
|
|
112
|
-
studentName:
|
|
113
|
-
parentName:
|
|
117
|
+
studentId: v,
|
|
118
|
+
studentName: u,
|
|
119
|
+
parentName: W,
|
|
114
120
|
teacherName: O,
|
|
115
|
-
userType:
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
121
|
+
userType: c,
|
|
122
|
+
editButtonRef: n ? U : void 0,
|
|
123
|
+
firstChapterRef: n ? q : void 0,
|
|
124
|
+
createTestButtonRef: n ? K : void 0,
|
|
125
|
+
assignResourceButtonRef: n ? Q : void 0,
|
|
126
|
+
canStartJourney: n ? te : void 0,
|
|
127
|
+
startJourney: n ? oe : void 0,
|
|
128
|
+
onAddOutcome: r,
|
|
129
|
+
onChapterClick: D,
|
|
130
|
+
isMilestoneActive: m || ne,
|
|
131
|
+
milestoneType: a,
|
|
132
|
+
onEdit: x,
|
|
133
|
+
onCreateMilestoneTest: y,
|
|
134
|
+
onAddChapter: B,
|
|
135
|
+
onDelete: $,
|
|
136
|
+
onDraftPublish: w,
|
|
137
|
+
isClassOngoing: g,
|
|
138
|
+
isStudentPresent: N,
|
|
127
139
|
onAssignResources: j,
|
|
128
140
|
onNodeAttempt: F,
|
|
129
141
|
onNodeView: I,
|
|
@@ -131,27 +143,27 @@ const Ne = oe(function({
|
|
|
131
143
|
onNodeReattempt: k,
|
|
132
144
|
onNodeReset: E,
|
|
133
145
|
onNodeUnassign: V,
|
|
134
|
-
onNodeAssignAsHomework:
|
|
135
|
-
onTestPreview:
|
|
136
|
-
onTestReview:
|
|
137
|
-
onTestStart:
|
|
138
|
-
courseStream:
|
|
139
|
-
activeMilestoneId:
|
|
146
|
+
onNodeAssignAsHomework: Y,
|
|
147
|
+
onTestPreview: G,
|
|
148
|
+
onTestReview: J,
|
|
149
|
+
onTestStart: S,
|
|
150
|
+
courseStream: X,
|
|
151
|
+
activeMilestoneId: z,
|
|
140
152
|
activeTabId: L,
|
|
141
153
|
onWidgetTabSelection: H,
|
|
142
|
-
onCardClick:
|
|
143
|
-
isDraftModeEnabled:
|
|
144
|
-
widgetState:
|
|
154
|
+
onCardClick: Z,
|
|
155
|
+
isDraftModeEnabled: _,
|
|
156
|
+
widgetState: l == null ? void 0 : l[R],
|
|
145
157
|
onWidgetStateChange: M,
|
|
146
|
-
defaultVisibleTab:
|
|
158
|
+
defaultVisibleTab: ee
|
|
147
159
|
}
|
|
148
160
|
),
|
|
149
|
-
|
|
150
|
-
] }, `milestone=${
|
|
161
|
+
h !== t.length - 1 && /* @__PURE__ */ e(ue, { heightX: 2 })
|
|
162
|
+
] }, `milestone=${R}`);
|
|
151
163
|
})
|
|
152
164
|
] });
|
|
153
165
|
});
|
|
154
166
|
export {
|
|
155
|
-
|
|
167
|
+
ye as default
|
|
156
168
|
};
|
|
157
169
|
//# 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 { memo, useCallback, Fragment, type FC } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../../hooks/use-lazy-ref';\nimport ArrowTooltip from '../../../ui/arrow-tooltip/arrow-tooltip';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport type { IMilestoneListProps } from './milestone-list-types';\nimport MilestoneWidget from './milestone-widget/milestone-widget';\nimport NoActiveMilestone from './no-active-milestone/no-active-milestone';\n\nconst MilestoneList: FC<IMilestoneListProps> = memo(function MilestoneList({\n milestones,\n studentId,\n milestoneType,\n widgetState,\n onWidgetStateChange,\n ...restMilestoneListProps\n}) {\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 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 isDraftModeEnabled,\n onNodeAssignAsHomework,\n onCardClick,\n defaultVisibleTab,\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 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(milestone => milestone.milestone_state === 'DRAFT');\n\n return (\n <>\n {isMilestoneActive && !activeMilestonePresent && (\n <FlexView $marginBottom={40}>\n <NoActiveMilestone\n canCreatePlan={canCreatePlan}\n isDraftMilestonePresent={draftMilestonePresent}\n isFiltersAdded={isFiltersAdded}\n onCreatePlan={onCreatePlan}\n studentName={studentName}\n userType={userType}\n />\n </FlexView>\n )}\n\n {isMilestoneActive && (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $marginBottom={16}>\n <Text $renderAs=\"ac4\">Goals ({milestones.length})</Text>\n\n {userType === 'TEACHER' && (\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem=\"Goals can only be added for students who have joined the class\"\n hidden={canCreatePlan}\n position=\"bottom\"\n >\n <TextButton\n label=\"Create Goal\"\n size=\"small\"\n onClick={handleCreatePlan}\n disabled={!canCreatePlan}\n />\n </ArrowTooltip>\n <TextButton label=\"Add Milestone\" size=\"small\" onClick={handleOnAddOutcome} />\n </FlexView>\n )}\n </FlexView>\n )}\n\n {milestones.map((milestone, idx) => {\n const { id: milestoneId } = milestone;\n\n return (\n <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 onNodeAssignAsHomework={onNodeAssignAsHomework}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n courseStream={courseStream}\n activeMilestoneId={activeMilestoneId}\n activeTabId={activeTabId}\n onWidgetTabSelection={onWidgetTabSelection}\n onCardClick={onCardClick}\n isDraftModeEnabled={isDraftModeEnabled}\n widgetState={widgetState?.[milestoneId]}\n onWidgetStateChange={onWidgetStateChange}\n defaultVisibleTab={defaultVisibleTab}\n />\n {idx !== milestones.length - 1 && <Separator heightX={2} />}\n </Fragment>\n );\n })}\n </>\n );\n});\n\nexport default MilestoneList;\n"],"names":["MilestoneList","memo","milestones","studentId","milestoneType","widgetState","onWidgetStateChange","restMilestoneListProps","canCreatePlan","isClassOngoing","isFiltersAdded","isStudentPresent","onAddChapter","onAddOutcome","onChapterClick","onCreatePlan","onDelete","onDraftPublish","onEdit","onCreateMilestoneTest","onNodeAttempt","onNodeView","onNodeReview","onNodeReattempt","onNodeReset","onNodeUnassign","onAssignResources","onTestPreview","onTestReview","onTestStart","activeMilestoneId","activeTabId","onWidgetTabSelection","studentName","teacherName","parentName","userType","courseStream","isDraftModeEnabled","onNodeAssignAsHomework","onCardClick","defaultVisibleTab","isMilestoneActive","isDraftMilestone","temporaryMilestoneId","useLazyRef","uuidv4","handleCreatePlan","useCallback","handleOnAddOutcome","activeMilestonePresent","milestone","draftMilestonePresent","jsxs","Fragment","jsx","FlexView","NoActiveMilestone","Text","ArrowTooltip","TextButton","idx","milestoneId","MilestoneWidget","Separator"],"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 { memo, useCallback, Fragment, type FC } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../../hooks/use-lazy-ref';\nimport ArrowTooltip from '../../../ui/arrow-tooltip/arrow-tooltip';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport type { IMilestoneListProps } from './milestone-list-types';\nimport MilestoneWidget from './milestone-widget/milestone-widget';\nimport NoActiveMilestone from './no-active-milestone/no-active-milestone';\n\nconst MilestoneList: FC<IMilestoneListProps> = memo(function MilestoneList({\n milestones,\n studentId,\n milestoneType,\n widgetState,\n onWidgetStateChange,\n ...restMilestoneListProps\n}) {\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 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 isDraftModeEnabled,\n editButtonRef,\n firstChapterRef,\n createTestButtonRef,\n assignResourceButtonRef,\n onNodeAssignAsHomework,\n onCardClick,\n defaultVisibleTab,\n canStartJourney,\n startJourney,\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 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(milestone => milestone.milestone_state === 'DRAFT');\n\n return (\n <>\n {isMilestoneActive && !activeMilestonePresent && (\n <FlexView $marginBottom={40}>\n <NoActiveMilestone\n canCreatePlan={canCreatePlan}\n isDraftMilestonePresent={draftMilestonePresent}\n isFiltersAdded={isFiltersAdded}\n onCreatePlan={onCreatePlan}\n studentName={studentName}\n userType={userType}\n />\n </FlexView>\n )}\n\n {isMilestoneActive && (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $marginBottom={16}>\n <Text $renderAs=\"ac4\">Goals ({milestones.length})</Text>\n\n {userType === 'TEACHER' && (\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem=\"Goals can only be added for students who have joined the class\"\n hidden={canCreatePlan}\n position=\"bottom\"\n >\n <TextButton\n label=\"Create Goal\"\n size=\"small\"\n onClick={handleCreatePlan}\n disabled={!canCreatePlan}\n />\n </ArrowTooltip>\n <TextButton label=\"Add Milestone\" size=\"small\" onClick={handleOnAddOutcome} />\n </FlexView>\n )}\n </FlexView>\n )}\n\n {milestones.map((milestone, idx) => {\n const { id: milestoneId } = milestone;\n\n // Check if this is the first milestone (for firstChapterRef)\n const isFirstMilestone = idx === 0;\n\n return (\n <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 editButtonRef={isFirstMilestone ? editButtonRef : undefined}\n firstChapterRef={isFirstMilestone ? firstChapterRef : undefined}\n createTestButtonRef={isFirstMilestone ? createTestButtonRef : undefined}\n assignResourceButtonRef={isFirstMilestone ? assignResourceButtonRef : undefined}\n canStartJourney={isFirstMilestone ? canStartJourney : undefined}\n startJourney={isFirstMilestone ? startJourney : undefined}\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 onNodeAssignAsHomework={onNodeAssignAsHomework}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n courseStream={courseStream}\n activeMilestoneId={activeMilestoneId}\n activeTabId={activeTabId}\n onWidgetTabSelection={onWidgetTabSelection}\n onCardClick={onCardClick}\n isDraftModeEnabled={isDraftModeEnabled}\n widgetState={widgetState?.[milestoneId]}\n onWidgetStateChange={onWidgetStateChange}\n defaultVisibleTab={defaultVisibleTab}\n />\n {idx !== milestones.length - 1 && <Separator heightX={2} />}\n </Fragment>\n );\n })}\n </>\n );\n});\n\nexport default MilestoneList;\n"],"names":["MilestoneList","memo","milestones","studentId","milestoneType","widgetState","onWidgetStateChange","restMilestoneListProps","canCreatePlan","isClassOngoing","isFiltersAdded","isStudentPresent","onAddChapter","onAddOutcome","onChapterClick","onCreatePlan","onDelete","onDraftPublish","onEdit","onCreateMilestoneTest","onNodeAttempt","onNodeView","onNodeReview","onNodeReattempt","onNodeReset","onNodeUnassign","onAssignResources","onTestPreview","onTestReview","onTestStart","activeMilestoneId","activeTabId","onWidgetTabSelection","studentName","teacherName","parentName","userType","courseStream","isDraftModeEnabled","editButtonRef","firstChapterRef","createTestButtonRef","assignResourceButtonRef","onNodeAssignAsHomework","onCardClick","defaultVisibleTab","canStartJourney","startJourney","isMilestoneActive","isDraftMilestone","temporaryMilestoneId","useLazyRef","uuidv4","handleCreatePlan","useCallback","handleOnAddOutcome","activeMilestonePresent","milestone","draftMilestonePresent","jsxs","Fragment","jsx","FlexView","NoActiveMilestone","Text","ArrowTooltip","TextButton","idx","milestoneId","isFirstMilestone","MilestoneWidget","Separator"],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { jsxs as g, jsx as t } from "react/jsx-runtime";
|
|
2
|
-
import { memo as
|
|
2
|
+
import { memo as L, useState as V, useCallback as m } from "react";
|
|
3
3
|
import q from "../../../../../../assets/line-icons/icons/edit2.js";
|
|
4
4
|
import y from "../../../../../ui/arrow-tooltip/arrow-tooltip.js";
|
|
5
5
|
import I from "../../../../../ui/buttons/button/button.js";
|
|
6
|
-
import
|
|
7
|
-
import { useUIContext as
|
|
6
|
+
import H from "../../../../../ui/buttons/icon-button/icon-button.js";
|
|
7
|
+
import { useUIContext as J } from "../../../../../ui/context/context.js";
|
|
8
8
|
import G from "../../../../../ui/layout/flex-view.js";
|
|
9
|
-
import
|
|
10
|
-
import { EVENT_NAMES as
|
|
11
|
-
import { invalidateMilestonesData as
|
|
12
|
-
import { useDraftPublish as
|
|
13
|
-
const
|
|
9
|
+
import K from "../../../../../ui/text/text.js";
|
|
10
|
+
import { EVENT_NAMES as Q } from "../../../../create/milestone-create-constants.js";
|
|
11
|
+
import { invalidateMilestonesData as W } from "../../../api/get-milestones.js";
|
|
12
|
+
import { useDraftPublish as Y } from "./use-goal-draft-publish.js";
|
|
13
|
+
const pe = L(function(w) {
|
|
14
14
|
const {
|
|
15
15
|
milestone: c,
|
|
16
16
|
studentId: p,
|
|
@@ -19,36 +19,37 @@ const ce = R(function(w) {
|
|
|
19
19
|
studentName: $,
|
|
20
20
|
teacherName: N,
|
|
21
21
|
parentName: T,
|
|
22
|
-
onAddOutcome:
|
|
23
|
-
onDraftPublish:
|
|
24
|
-
onEdit:
|
|
22
|
+
onAddOutcome: n,
|
|
23
|
+
onDraftPublish: i,
|
|
24
|
+
onEdit: s,
|
|
25
25
|
courseStream: u,
|
|
26
|
-
isDraftModeEnabled: k
|
|
26
|
+
isDraftModeEnabled: k,
|
|
27
|
+
editButtonRef: M
|
|
27
28
|
} = w, {
|
|
28
29
|
id: e,
|
|
29
|
-
milestone_name:
|
|
30
|
-
milestone_date_ts:
|
|
30
|
+
milestone_name: f,
|
|
31
|
+
milestone_date_ts: h,
|
|
31
32
|
milestone_state: a,
|
|
32
|
-
permissions:
|
|
33
|
+
permissions: O,
|
|
33
34
|
goal_category: b,
|
|
34
|
-
goal_code:
|
|
35
|
+
goal_code: l
|
|
35
36
|
} = c, {
|
|
36
37
|
can_delete: _,
|
|
37
38
|
can_update_date: E,
|
|
38
39
|
can_update_plan: d
|
|
39
|
-
} =
|
|
40
|
-
(
|
|
41
|
-
const { id:
|
|
42
|
-
|
|
40
|
+
} = O, { onEvent: C } = J(), [D, A] = V(""), X = a === "OUTCOME_PENDING", v = l && a === "DRAFT", o = !x || P, S = m(
|
|
41
|
+
(r, B) => {
|
|
42
|
+
const { id: F } = B || {};
|
|
43
|
+
r ? A(r) : (e && W({
|
|
43
44
|
milestone_state_group: "LIVE",
|
|
44
45
|
course_stream: u,
|
|
45
46
|
student_id: p
|
|
46
|
-
}),
|
|
47
|
-
milestone_id: e ||
|
|
47
|
+
}), i == null || i(e, !0), C(Q.DRAFT_EDIT.completed, {
|
|
48
|
+
milestone_id: e || F
|
|
48
49
|
}));
|
|
49
50
|
},
|
|
50
|
-
[e, p,
|
|
51
|
-
), { onPublish: j, isProcessing:
|
|
51
|
+
[e, p, i, A, C, u]
|
|
52
|
+
), { onPublish: j, isProcessing: R } = Y({
|
|
52
53
|
handleGoalPublishComplete: S,
|
|
53
54
|
milestone: c,
|
|
54
55
|
milestoneId: e,
|
|
@@ -56,31 +57,31 @@ const ce = R(function(w) {
|
|
|
56
57
|
parentName: T,
|
|
57
58
|
teacherName: N
|
|
58
59
|
}), U = m(() => {
|
|
59
|
-
|
|
60
|
+
s == null || s({
|
|
60
61
|
milestoneId: e,
|
|
61
|
-
milestoneName:
|
|
62
|
-
milestoneDueDate:
|
|
62
|
+
milestoneName: f,
|
|
63
|
+
milestoneDueDate: h,
|
|
63
64
|
isMilestoneChaptersListEditable: d,
|
|
64
65
|
isMilestoneDateEditable: E,
|
|
65
66
|
milestoneState: a,
|
|
66
67
|
canDelete: _,
|
|
67
68
|
goalCategory: b,
|
|
68
|
-
goalCode:
|
|
69
|
+
goalCode: l
|
|
69
70
|
});
|
|
70
71
|
}, [
|
|
71
72
|
_,
|
|
72
73
|
E,
|
|
73
74
|
d,
|
|
74
|
-
|
|
75
|
+
h,
|
|
75
76
|
b,
|
|
76
|
-
|
|
77
|
+
l,
|
|
77
78
|
e,
|
|
78
|
-
|
|
79
|
+
f,
|
|
79
80
|
a,
|
|
80
|
-
|
|
81
|
+
s
|
|
81
82
|
]), z = m(() => {
|
|
82
|
-
|
|
83
|
-
}, [
|
|
83
|
+
n == null || n(e);
|
|
84
|
+
}, [n, e]);
|
|
84
85
|
return /* @__PURE__ */ g(G, { $justifyContent: "center", $flexGap: 8, children: [
|
|
85
86
|
/* @__PURE__ */ g(
|
|
86
87
|
G,
|
|
@@ -89,9 +90,9 @@ const ce = R(function(w) {
|
|
|
89
90
|
$flexGapX: 1.5,
|
|
90
91
|
$alignItems: "center",
|
|
91
92
|
$width: "fit-content",
|
|
92
|
-
onClick: (
|
|
93
|
+
onClick: (r) => r.stopPropagation(),
|
|
93
94
|
children: [
|
|
94
|
-
|
|
95
|
+
X && /* @__PURE__ */ t(
|
|
95
96
|
I,
|
|
96
97
|
{
|
|
97
98
|
renderAs: "primary",
|
|
@@ -102,7 +103,7 @@ const ce = R(function(w) {
|
|
|
102
103
|
onClick: z
|
|
103
104
|
}
|
|
104
105
|
),
|
|
105
|
-
|
|
106
|
+
v && !k && /* @__PURE__ */ t(
|
|
106
107
|
y,
|
|
107
108
|
{
|
|
108
109
|
position: "bottom",
|
|
@@ -119,13 +120,13 @@ const ce = R(function(w) {
|
|
|
119
120
|
label: "Publish",
|
|
120
121
|
size: "small",
|
|
121
122
|
onClick: j,
|
|
122
|
-
busy:
|
|
123
|
+
busy: R,
|
|
123
124
|
disabled: !o
|
|
124
125
|
}
|
|
125
126
|
)
|
|
126
127
|
}
|
|
127
128
|
),
|
|
128
|
-
d && /* @__PURE__ */ t(
|
|
129
|
+
d && /* @__PURE__ */ t("div", { ref: M, children: /* @__PURE__ */ t(
|
|
129
130
|
y,
|
|
130
131
|
{
|
|
131
132
|
position: "bottom",
|
|
@@ -133,7 +134,7 @@ const ce = R(function(w) {
|
|
|
133
134
|
widthX: o ? 5 : 15,
|
|
134
135
|
tooltipItem: o ? "Edit goal" : "Goals can only be edited for students in class.",
|
|
135
136
|
children: /* @__PURE__ */ t(
|
|
136
|
-
|
|
137
|
+
H,
|
|
137
138
|
{
|
|
138
139
|
renderAs: "secondary",
|
|
139
140
|
Icon: q,
|
|
@@ -144,14 +145,14 @@ const ce = R(function(w) {
|
|
|
144
145
|
}
|
|
145
146
|
)
|
|
146
147
|
}
|
|
147
|
-
)
|
|
148
|
+
) })
|
|
148
149
|
]
|
|
149
150
|
}
|
|
150
151
|
),
|
|
151
|
-
D && /* @__PURE__ */ t(
|
|
152
|
+
D && /* @__PURE__ */ t(K, { $widthX: 12.5, $renderAs: "ub4-bold", $color: "RED", $align: "center", children: D })
|
|
152
153
|
] });
|
|
153
154
|
});
|
|
154
155
|
export {
|
|
155
|
-
|
|
156
|
+
pe as default
|
|
156
157
|
};
|
|
157
158
|
//# sourceMappingURL=goal-action-ctas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goal-action-ctas.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.tsx"],"sourcesContent":["import { memo, useCallback, useState, type FC } from 'react';\n\nimport Edit2Icon from '../../../../../../assets/line-icons/icons/edit2';\nimport ArrowTooltip from '../../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../../../ui/buttons/button/button';\nimport IconButton from '../../../../../ui/buttons/icon-button/icon-button';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport FlexView from '../../../../../ui/layout/flex-view';\nimport Text from '../../../../../ui/text/text';\nimport { EVENT_NAMES } from '../../../../create/milestone-create-constants';\nimport { invalidateMilestonesData } from '../../../api/get-milestones';\nimport type { IGoalActionCtas } from './goal-action-ctas-types';\nimport { useDraftPublish } from './use-goal-draft-publish';\n\nconst GoalActionCtas: FC<IGoalActionCtas> = memo(function GoalActionCtas(props) {\n const {\n milestone,\n studentId,\n isClassOngoing,\n isStudentPresent,\n studentName,\n teacherName,\n parentName,\n onAddOutcome,\n onDraftPublish,\n onEdit,\n courseStream,\n isDraftModeEnabled,\n } = props;\n const {\n id: milestoneId,\n milestone_name: milestoneName,\n milestone_date_ts: dueDate,\n milestone_state: milestoneState,\n permissions: milestonePermissions,\n goal_category: goalCategory,\n goal_code: goalCode,\n } = milestone;\n\n const {\n can_delete: canDelete,\n can_update_date: canUpdateDate,\n can_update_plan: canUpdatePlan,\n } = milestonePermissions;\n\n const { onEvent: trackEvent } = useUIContext();\n const [error, setError] = useState('');\n\n const canAddOutcome = milestoneState === 'OUTCOME_PENDING';\n const isDraftMilestone = goalCode && milestoneState === 'DRAFT';\n const canPublishOrEditGoal = !isClassOngoing || isStudentPresent;\n\n const handleGoalPublishComplete = useCallback(\n (errorMessage: string | null, data?: { id: string }) => {\n const { id } = data || {};\n\n if (errorMessage) {\n setError(errorMessage);\n } else {\n if (milestoneId) {\n invalidateMilestonesData({\n milestone_state_group: 'LIVE',\n course_stream: courseStream,\n student_id: studentId,\n });\n }\n onDraftPublish?.(milestoneId, true);\n trackEvent(EVENT_NAMES.DRAFT_EDIT.completed, {\n milestone_id: milestoneId || id,\n });\n }\n },\n [milestoneId, studentId, onDraftPublish, setError, trackEvent, courseStream],\n );\n\n const { onPublish, isProcessing } = useDraftPublish({\n handleGoalPublishComplete,\n milestone,\n milestoneId,\n studentName,\n parentName,\n teacherName,\n });\n\n const handleGoalEdit = useCallback(() => {\n onEdit?.({\n milestoneId,\n milestoneName,\n milestoneDueDate: dueDate,\n isMilestoneChaptersListEditable: canUpdatePlan,\n isMilestoneDateEditable: canUpdateDate,\n milestoneState,\n canDelete,\n goalCategory,\n goalCode,\n });\n }, [\n canDelete,\n canUpdateDate,\n canUpdatePlan,\n dueDate,\n goalCategory,\n goalCode,\n milestoneId,\n milestoneName,\n milestoneState,\n onEdit,\n ]);\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.(milestoneId);\n }, [onAddOutcome, milestoneId]);\n\n return (\n <FlexView $justifyContent=\"center\" $flexGap={8}>\n <FlexView\n $flexDirection=\"row\"\n $flexGapX={1.5}\n $alignItems=\"center\"\n $width=\"fit-content\"\n onClick={e => e.stopPropagation()}\n >\n {canAddOutcome && (\n <Button\n renderAs=\"primary\"\n size=\"small\"\n label=\"Add outcome\"\n shape=\"square\"\n widthX={10}\n onClick={handleOnAddOutcome}\n />\n )}\n\n {isDraftMilestone && !isDraftModeEnabled && (\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n tooltipItem=\"Goals can only be added for students who have joined the class\"\n hidden={canPublishOrEditGoal}\n widthX={15}\n >\n <Button\n renderAs=\"primary\"\n shape=\"square\"\n widthX={10}\n label=\"Publish\"\n size=\"small\"\n onClick={onPublish}\n busy={isProcessing}\n disabled={!canPublishOrEditGoal}\n />\n </ArrowTooltip>\n )}\n\n {canUpdatePlan && (\n <ArrowTooltip\n
|
|
1
|
+
{"version":3,"file":"goal-action-ctas.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.tsx"],"sourcesContent":["import { memo, useCallback, useState, type FC } from 'react';\n\nimport Edit2Icon from '../../../../../../assets/line-icons/icons/edit2';\nimport ArrowTooltip from '../../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../../../ui/buttons/button/button';\nimport IconButton from '../../../../../ui/buttons/icon-button/icon-button';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport FlexView from '../../../../../ui/layout/flex-view';\nimport Text from '../../../../../ui/text/text';\nimport { EVENT_NAMES } from '../../../../create/milestone-create-constants';\nimport { invalidateMilestonesData } from '../../../api/get-milestones';\nimport type { IGoalActionCtas } from './goal-action-ctas-types';\nimport { useDraftPublish } from './use-goal-draft-publish';\n\nconst GoalActionCtas: FC<IGoalActionCtas> = memo(function GoalActionCtas(props) {\n const {\n milestone,\n studentId,\n isClassOngoing,\n isStudentPresent,\n studentName,\n teacherName,\n parentName,\n onAddOutcome,\n onDraftPublish,\n onEdit,\n courseStream,\n isDraftModeEnabled,\n editButtonRef,\n } = props;\n const {\n id: milestoneId,\n milestone_name: milestoneName,\n milestone_date_ts: dueDate,\n milestone_state: milestoneState,\n permissions: milestonePermissions,\n goal_category: goalCategory,\n goal_code: goalCode,\n } = milestone;\n\n const {\n can_delete: canDelete,\n can_update_date: canUpdateDate,\n can_update_plan: canUpdatePlan,\n } = milestonePermissions;\n\n const { onEvent: trackEvent } = useUIContext();\n const [error, setError] = useState('');\n\n const canAddOutcome = milestoneState === 'OUTCOME_PENDING';\n const isDraftMilestone = goalCode && milestoneState === 'DRAFT';\n const canPublishOrEditGoal = !isClassOngoing || isStudentPresent;\n\n const handleGoalPublishComplete = useCallback(\n (errorMessage: string | null, data?: { id: string }) => {\n const { id } = data || {};\n\n if (errorMessage) {\n setError(errorMessage);\n } else {\n if (milestoneId) {\n invalidateMilestonesData({\n milestone_state_group: 'LIVE',\n course_stream: courseStream,\n student_id: studentId,\n });\n }\n onDraftPublish?.(milestoneId, true);\n trackEvent(EVENT_NAMES.DRAFT_EDIT.completed, {\n milestone_id: milestoneId || id,\n });\n }\n },\n [milestoneId, studentId, onDraftPublish, setError, trackEvent, courseStream],\n );\n\n const { onPublish, isProcessing } = useDraftPublish({\n handleGoalPublishComplete,\n milestone,\n milestoneId,\n studentName,\n parentName,\n teacherName,\n });\n\n const handleGoalEdit = useCallback(() => {\n onEdit?.({\n milestoneId,\n milestoneName,\n milestoneDueDate: dueDate,\n isMilestoneChaptersListEditable: canUpdatePlan,\n isMilestoneDateEditable: canUpdateDate,\n milestoneState,\n canDelete,\n goalCategory,\n goalCode,\n });\n }, [\n canDelete,\n canUpdateDate,\n canUpdatePlan,\n dueDate,\n goalCategory,\n goalCode,\n milestoneId,\n milestoneName,\n milestoneState,\n onEdit,\n ]);\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.(milestoneId);\n }, [onAddOutcome, milestoneId]);\n\n return (\n <FlexView $justifyContent=\"center\" $flexGap={8}>\n <FlexView\n $flexDirection=\"row\"\n $flexGapX={1.5}\n $alignItems=\"center\"\n $width=\"fit-content\"\n onClick={e => e.stopPropagation()}\n >\n {canAddOutcome && (\n <Button\n renderAs=\"primary\"\n size=\"small\"\n label=\"Add outcome\"\n shape=\"square\"\n widthX={10}\n onClick={handleOnAddOutcome}\n />\n )}\n\n {isDraftMilestone && !isDraftModeEnabled && (\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n tooltipItem=\"Goals can only be added for students who have joined the class\"\n hidden={canPublishOrEditGoal}\n widthX={15}\n >\n <Button\n renderAs=\"primary\"\n shape=\"square\"\n widthX={10}\n label=\"Publish\"\n size=\"small\"\n onClick={onPublish}\n busy={isProcessing}\n disabled={!canPublishOrEditGoal}\n />\n </ArrowTooltip>\n )}\n\n {canUpdatePlan && (\n <div ref={editButtonRef}>\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n widthX={!canPublishOrEditGoal ? 15 : 5}\n tooltipItem={\n !canPublishOrEditGoal\n ? 'Goals can only be edited for students in class.'\n : 'Edit goal'\n }\n >\n <IconButton\n renderAs=\"secondary\"\n Icon={Edit2Icon}\n analyticsLabel=\"Edit Goal\"\n onClick={handleGoalEdit}\n size=\"xsmall\"\n disabled={!canPublishOrEditGoal}\n />\n </ArrowTooltip>\n </div>\n )}\n </FlexView>\n\n {error && (\n <Text $widthX={12.5} $renderAs=\"ub4-bold\" $color=\"RED\" $align=\"center\">\n {error}\n </Text>\n )}\n </FlexView>\n );\n});\n\nexport default GoalActionCtas;\n"],"names":["GoalActionCtas","memo","props","milestone","studentId","isClassOngoing","isStudentPresent","studentName","teacherName","parentName","onAddOutcome","onDraftPublish","onEdit","courseStream","isDraftModeEnabled","editButtonRef","milestoneId","milestoneName","dueDate","milestoneState","milestonePermissions","goalCategory","goalCode","canDelete","canUpdateDate","canUpdatePlan","trackEvent","useUIContext","error","setError","useState","canAddOutcome","isDraftMilestone","canPublishOrEditGoal","handleGoalPublishComplete","useCallback","errorMessage","data","id","invalidateMilestonesData","EVENT_NAMES","onPublish","isProcessing","useDraftPublish","handleGoalEdit","handleOnAddOutcome","jsxs","FlexView","e","jsx","Button","ArrowTooltip","IconButton","Edit2Icon","Text"],"mappings":";;;;;;;;;;;;AAcA,MAAMA,KAAsCC,EAAK,SAAwBC,GAAO;AACxE,QAAA;AAAA,IACJ,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,aAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,QAAAC;AAAA,IACA,cAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,eAAAC;AAAA,EACE,IAAAb,GACE;AAAA,IACJ,IAAIc;AAAA,IACJ,gBAAgBC;AAAA,IAChB,mBAAmBC;AAAA,IACnB,iBAAiBC;AAAA,IACjB,aAAaC;AAAA,IACb,eAAeC;AAAA,IACf,WAAWC;AAAA,EACT,IAAAnB,GAEE;AAAA,IACJ,YAAYoB;AAAA,IACZ,iBAAiBC;AAAA,IACjB,iBAAiBC;AAAA,EACf,IAAAL,GAEE,EAAE,SAASM,EAAW,IAAIC,EAAa,GACvC,CAACC,GAAOC,CAAQ,IAAIC,EAAS,EAAE,GAE/BC,IAAgBZ,MAAmB,mBACnCa,IAAmBV,KAAYH,MAAmB,SAClDc,IAAuB,CAAC5B,KAAkBC,GAE1C4B,IAA4BC;AAAA,IAChC,CAACC,GAA6BC,MAA0B;AACtD,YAAM,EAAE,IAAAC,EAAA,IAAOD,KAAQ;AAEvB,MAAID,IACFP,EAASO,CAAY,KAEjBpB,KACuBuB,EAAA;AAAA,QACvB,uBAAuB;AAAA,QACvB,eAAe1B;AAAA,QACf,YAAYT;AAAA,MAAA,CACb,GAEHO,KAAA,QAAAA,EAAiBK,GAAa,KACnBU,EAAAc,EAAY,WAAW,WAAW;AAAA,QAC3C,cAAcxB,KAAesB;AAAA,MAAA,CAC9B;AAAA,IAEL;AAAA,IACA,CAACtB,GAAaZ,GAAWO,GAAgBkB,GAAUH,GAAYb,CAAY;AAAA,EAAA,GAGvE,EAAE,WAAA4B,GAAW,cAAAC,EAAa,IAAIC,EAAgB;AAAA,IAClD,2BAAAT;AAAA,IACA,WAAA/B;AAAA,IACA,aAAAa;AAAA,IACA,aAAAT;AAAA,IACA,YAAAE;AAAA,IACA,aAAAD;AAAA,EAAA,CACD,GAEKoC,IAAiBT,EAAY,MAAM;AAC9B,IAAAvB,KAAA,QAAAA,EAAA;AAAA,MACP,aAAAI;AAAA,MACA,eAAAC;AAAA,MACA,kBAAkBC;AAAA,MAClB,iCAAiCO;AAAA,MACjC,yBAAyBD;AAAA,MACzB,gBAAAL;AAAA,MACA,WAAAI;AAAA,MACA,cAAAF;AAAA,MACA,UAAAC;AAAA,IAAA;AAAA,EACD,GACA;AAAA,IACDC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAP;AAAA,IACAG;AAAA,IACAC;AAAA,IACAN;AAAA,IACAC;AAAA,IACAE;AAAA,IACAP;AAAA,EAAA,CACD,GAEKiC,IAAqBV,EAAY,MAAM;AAC3C,IAAAzB,KAAA,QAAAA,EAAeM;AAAA,EAAW,GACzB,CAACN,GAAcM,CAAW,CAAC;AAE9B,SACG,gBAAA8B,EAAAC,GAAA,EAAS,iBAAgB,UAAS,UAAU,GAC3C,UAAA;AAAA,IAAA,gBAAAD;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,gBAAe;AAAA,QACf,WAAW;AAAA,QACX,aAAY;AAAA,QACZ,QAAO;AAAA,QACP,SAAS,CAAKC,MAAAA,EAAE,gBAAgB;AAAA,QAE/B,UAAA;AAAA,UACCjB,KAAA,gBAAAkB;AAAA,YAACC;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,MAAK;AAAA,cACL,OAAM;AAAA,cACN,OAAM;AAAA,cACN,QAAQ;AAAA,cACR,SAASL;AAAA,YAAA;AAAA,UACX;AAAA,UAGDb,KAAoB,CAAClB,KACpB,gBAAAmC;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,UAAS;AAAA,cACT,aAAY;AAAA,cACZ,QAAQlB;AAAA,cACR,QAAQ;AAAA,cAER,UAAA,gBAAAgB;AAAA,gBAACC;AAAA,gBAAA;AAAA,kBACC,UAAS;AAAA,kBACT,OAAM;AAAA,kBACN,QAAQ;AAAA,kBACR,OAAM;AAAA,kBACN,MAAK;AAAA,kBACL,SAAST;AAAA,kBACT,MAAMC;AAAA,kBACN,UAAU,CAACT;AAAA,gBAAA;AAAA,cACb;AAAA,YAAA;AAAA,UACF;AAAA,UAGDR,KACC,gBAAAwB,EAAC,OAAI,EAAA,KAAKlC,GACR,UAAA,gBAAAkC;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,UAAS;AAAA,cACT,QAASlB,IAA4B,IAAL;AAAA,cAChC,aACGA,IAEG,cADA;AAAA,cAIN,UAAA,gBAAAgB;AAAA,gBAACG;AAAA,gBAAA;AAAA,kBACC,UAAS;AAAA,kBACT,MAAMC;AAAA,kBACN,gBAAe;AAAA,kBACf,SAAST;AAAA,kBACT,MAAK;AAAA,kBACL,UAAU,CAACX;AAAA,gBAAA;AAAA,cACb;AAAA,YAAA;AAAA,UAAA,GAEJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAEJ;AAAA,IAECL,KACE,gBAAAqB,EAAAK,GAAA,EAAK,SAAS,MAAM,WAAU,YAAW,QAAO,OAAM,QAAO,UAC3D,UACH1B,EAAA,CAAA;AAAA,EAEJ,EAAA,CAAA;AAEJ,CAAC;"}
|