@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.
Files changed (78) hide show
  1. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js +27 -25
  2. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
  3. package/dist/features/chapters/chapters-list/chapters-list.js +53 -43
  4. package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
  5. package/dist/features/chapters-v2/chapter-details/chapter-details.js +70 -68
  6. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
  7. package/dist/features/journey/journey-id/journey-id-teacher.js +1 -1
  8. package/dist/features/journey/journey-id/journey-id-teacher.js.map +1 -1
  9. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js +1 -1
  10. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -1
  11. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +105 -93
  12. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  13. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js +44 -43
  14. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
  15. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +36 -34
  16. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
  17. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +126 -107
  18. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  19. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js +107 -95
  20. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
  21. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +116 -104
  22. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  23. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +100 -93
  24. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
  25. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js +81 -76
  26. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +1 -1
  27. package/dist/features/timeline/monthly-timeline/ptm-report/ptm-report-types.js.map +1 -1
  28. package/dist/features/timeline/monthly-timeline/ptm-report/ptm-report.js +97 -113
  29. package/dist/features/timeline/monthly-timeline/ptm-report/ptm-report.js.map +1 -1
  30. package/dist/features/trial-session/comps/learning-plan/goal-edit-sync.js +40 -0
  31. package/dist/features/trial-session/comps/learning-plan/goal-edit-sync.js.map +1 -0
  32. package/dist/features/trial-session/comps/learning-plan/learning-assign-resource-sync.js +55 -0
  33. package/dist/features/trial-session/comps/learning-plan/learning-assign-resource-sync.js.map +1 -0
  34. package/dist/features/trial-session/comps/learning-plan/learning-chapter-details.js +48 -0
  35. package/dist/features/trial-session/comps/learning-plan/learning-chapter-details.js.map +1 -0
  36. package/dist/features/trial-session/comps/learning-plan/learning-milestone-sync.js +145 -0
  37. package/dist/features/trial-session/comps/learning-plan/learning-milestone-sync.js.map +1 -0
  38. package/dist/features/trial-session/comps/learning-plan/learning-plan-helpers.js +30 -0
  39. package/dist/features/trial-session/comps/learning-plan/learning-plan-helpers.js.map +1 -0
  40. package/dist/features/trial-session/comps/learning-plan/learning-plan-view.js +17 -0
  41. package/dist/features/trial-session/comps/learning-plan/learning-plan-view.js.map +1 -0
  42. package/dist/features/trial-session/comps/learning-plan/learning-plan.js +93 -0
  43. package/dist/features/trial-session/comps/learning-plan/learning-plan.js.map +1 -0
  44. package/dist/features/trial-session/comps/learning-plan/learning-preview-worksheet.js +81 -0
  45. package/dist/features/trial-session/comps/learning-plan/learning-preview-worksheet.js.map +1 -0
  46. package/dist/features/trial-session/comps/learning-plan/learning-test-creation-sync.js +41 -0
  47. package/dist/features/trial-session/comps/learning-plan/learning-test-creation-sync.js.map +1 -0
  48. package/dist/features/trial-session/hooks/use-chapter-details-journey.js +97 -0
  49. package/dist/features/trial-session/hooks/use-chapter-details-journey.js.map +1 -0
  50. package/dist/features/trial-session/hooks/use-learning-plan-journey.js +105 -0
  51. package/dist/features/trial-session/hooks/use-learning-plan-journey.js.map +1 -0
  52. package/dist/features/trial-session/hooks/use-resource-assignment-journey.js +64 -0
  53. package/dist/features/trial-session/hooks/use-resource-assignment-journey.js.map +1 -0
  54. package/dist/features/trial-session/hooks/use-test-creation-journey.js +64 -0
  55. package/dist/features/trial-session/hooks/use-test-creation-journey.js.map +1 -0
  56. package/dist/features/trial-session/hooks/use-worksheet-preview-journey.js +65 -0
  57. package/dist/features/trial-session/hooks/use-worksheet-preview-journey.js.map +1 -0
  58. package/dist/features/trial-session/right-panel/slide-components-map.js +1 -1
  59. package/dist/features/trial-session/right-panel/slide-components-map.js.map +1 -1
  60. package/dist/features/trial-session/trial-session-types.js.map +1 -1
  61. package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js +47 -34
  62. package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js.map +1 -1
  63. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js +43 -42
  64. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
  65. package/dist/features/worksheet/worksheet-preview/worksheet-preview.js +28 -26
  66. package/dist/features/worksheet/worksheet-preview/worksheet-preview.js.map +1 -1
  67. package/dist/index.d.ts +42 -4
  68. package/package.json +1 -1
  69. package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback-styled.js +0 -16
  70. package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback-styled.js.map +0 -1
  71. package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback.js +0 -56
  72. package/dist/features/timeline/monthly-timeline/ptm-report/comps/ptm-feedback/ptm-feedback.js.map +0 -1
  73. package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer-styled.js +0 -22
  74. package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer-styled.js.map +0 -1
  75. package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer.js +0 -14
  76. package/dist/features/timeline/monthly-timeline/ptm-report/comps/sticky-footer/sticky-footer.js.map +0 -1
  77. package/dist/features/trial-session/comps/learning-plan/index.js +0 -355
  78. package/dist/features/trial-session/comps/learning-plan/index.js.map +0 -1
@@ -1,35 +1,35 @@
1
- import { jsxs as r, Fragment as te, jsx as e } from "react/jsx-runtime";
2
- import { memo as oe, useCallback as u, Fragment as ne } from "react";
3
- import ie from "../../../hooks/use-lazy-ref.js";
4
- import re from "../../../ui/arrow-tooltip/arrow-tooltip.js";
5
- import A from "../../../ui/buttons/text-button/text-button.js";
6
- import c from "../../../ui/layout/flex-view.js";
7
- import se from "../../../ui/separator/separator.js";
8
- import ae from "../../../ui/text/text.js";
9
- import le from "./milestone-widget/milestone-widget.js";
10
- import de from "./no-active-milestone/no-active-milestone.js";
11
- import me from "../../../../node_modules/uuid/dist/esm-browser/v4.js";
12
- const Ne = oe(function({
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: C,
15
- milestoneType: s,
16
- widgetState: a,
14
+ studentId: v,
15
+ milestoneType: a,
16
+ widgetState: l,
17
17
  onWidgetStateChange: M,
18
18
  ...T
19
19
  }) {
20
20
  const {
21
- canCreatePlan: l,
22
- isClassOngoing: b,
23
- isFiltersAdded: g,
24
- isStudentPresent: v,
25
- onAddChapter: N,
26
- onAddOutcome: n,
27
- onChapterClick: x,
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: D,
30
- onDraftPublish: R,
31
- onEdit: $,
32
- onCreateMilestoneTest: w,
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: y,
41
- onTestReview: G,
42
- onTestStart: z,
43
- activeMilestoneId: B,
40
+ onTestPreview: G,
41
+ onTestReview: J,
42
+ onTestStart: S,
43
+ activeMilestoneId: z,
44
44
  activeTabId: L,
45
45
  onWidgetTabSelection: H,
46
- studentName: f,
46
+ studentName: u,
47
47
  teacherName: O,
48
- parentName: S,
49
- userType: d,
50
- courseStream: W,
51
- isDraftModeEnabled: X,
52
- onNodeAssignAsHomework: _,
53
- onCardClick: U,
54
- defaultVisibleTab: q
55
- } = T, m = s === "ACTIVE", J = s === "DRAFT", p = ie(me), K = u(() => {
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]), Q = u(() => {
58
- n == null || n();
59
- }, [n]);
63
+ }, [i, p]), ie = A(() => {
64
+ r == null || r();
65
+ }, [r]);
60
66
  if (!t) return null;
61
- const Y = t.some(
67
+ const se = t.some(
62
68
  (o) => o.milestone_state === "ACTIVE"
63
- ), Z = t.some((o) => o.milestone_state === "DRAFT");
64
- return /* @__PURE__ */ r(te, { children: [
65
- m && !Y && /* @__PURE__ */ e(c, { $marginBottom: 40, children: /* @__PURE__ */ e(
66
- de,
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: l,
69
- isDraftMilestonePresent: Z,
70
- isFiltersAdded: g,
74
+ canCreatePlan: d,
75
+ isDraftMilestonePresent: ae,
76
+ isFiltersAdded: b,
71
77
  onCreatePlan: i,
72
- studentName: f,
73
- userType: d
78
+ studentName: u,
79
+ userType: c
74
80
  }
75
81
  ) }),
76
- m && /* @__PURE__ */ r(c, { $flexDirection: "row", $justifyContent: "space-between", $marginBottom: 16, children: [
77
- /* @__PURE__ */ r(ae, { $renderAs: "ac4", children: [
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
- d === "TEACHER" && /* @__PURE__ */ r(c, { $flexDirection: "row", $flexGapX: 1, children: [
88
+ c === "TEACHER" && /* @__PURE__ */ s(f, { $flexDirection: "row", $flexGapX: 1, children: [
83
89
  /* @__PURE__ */ e(
84
- re,
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: l,
94
+ hidden: d,
89
95
  position: "bottom",
90
96
  children: /* @__PURE__ */ e(
91
- A,
97
+ C,
92
98
  {
93
99
  label: "Create Goal",
94
100
  size: "small",
95
- onClick: K,
96
- disabled: !l
101
+ onClick: re,
102
+ disabled: !d
97
103
  }
98
104
  )
99
105
  }
100
106
  ),
101
- /* @__PURE__ */ e(A, { label: "Add Milestone", size: "small", onClick: Q })
107
+ /* @__PURE__ */ e(C, { label: "Add Milestone", size: "small", onClick: ie })
102
108
  ] })
103
109
  ] }),
104
- t.map((o, ee) => {
105
- const { id: h } = o;
106
- return /* @__PURE__ */ r(ne, { children: [
110
+ t.map((o, h) => {
111
+ const { id: R } = o, n = h === 0;
112
+ return /* @__PURE__ */ s(ce, { children: [
107
113
  /* @__PURE__ */ e(
108
- le,
114
+ he,
109
115
  {
110
116
  milestone: o,
111
- studentId: C,
112
- studentName: f,
113
- parentName: S,
117
+ studentId: v,
118
+ studentName: u,
119
+ parentName: W,
114
120
  teacherName: O,
115
- userType: d,
116
- onAddOutcome: n,
117
- onChapterClick: x,
118
- isMilestoneActive: m || J,
119
- milestoneType: s,
120
- onEdit: $,
121
- onCreateMilestoneTest: w,
122
- onAddChapter: N,
123
- onDelete: D,
124
- onDraftPublish: R,
125
- isClassOngoing: b,
126
- isStudentPresent: v,
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: y,
136
- onTestReview: G,
137
- onTestStart: z,
138
- courseStream: W,
139
- activeMilestoneId: B,
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: U,
143
- isDraftModeEnabled: X,
144
- widgetState: a == null ? void 0 : a[h],
154
+ onCardClick: Z,
155
+ isDraftModeEnabled: _,
156
+ widgetState: l == null ? void 0 : l[R],
145
157
  onWidgetStateChange: M,
146
- defaultVisibleTab: q
158
+ defaultVisibleTab: ee
147
159
  }
148
160
  ),
149
- ee !== t.length - 1 && /* @__PURE__ */ e(se, { heightX: 2 })
150
- ] }, `milestone=${h}`);
161
+ h !== t.length - 1 && /* @__PURE__ */ e(ue, { heightX: 2 })
162
+ ] }, `milestone=${R}`);
151
163
  })
152
164
  ] });
153
165
  });
154
166
  export {
155
- Ne as default
167
+ ye as default
156
168
  };
157
169
  //# sourceMappingURL=milestone-list.js.map
@@ -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 R, useState as V, useCallback as m } from "react";
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 B from "../../../../../ui/buttons/icon-button/icon-button.js";
7
- import { useUIContext as H } from "../../../../../ui/context/context.js";
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 J from "../../../../../ui/text/text.js";
10
- import { EVENT_NAMES as K } from "../../../../create/milestone-create-constants.js";
11
- import { invalidateMilestonesData as Q } from "../../../api/get-milestones.js";
12
- import { useDraftPublish as W } from "./use-goal-draft-publish.js";
13
- const ce = R(function(w) {
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: s,
23
- onDraftPublish: n,
24
- onEdit: i,
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: h,
30
- milestone_date_ts: f,
30
+ milestone_name: f,
31
+ milestone_date_ts: h,
31
32
  milestone_state: a,
32
- permissions: M,
33
+ permissions: O,
33
34
  goal_category: b,
34
- goal_code: r
35
+ goal_code: l
35
36
  } = c, {
36
37
  can_delete: _,
37
38
  can_update_date: E,
38
39
  can_update_plan: d
39
- } = M, { onEvent: C } = H(), [D, A] = V(""), O = a === "OUTCOME_PENDING", X = r && a === "DRAFT", o = !x || P, S = m(
40
- (l, F) => {
41
- const { id: L } = F || {};
42
- l ? A(l) : (e && Q({
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
- }), n == null || n(e, !0), C(K.DRAFT_EDIT.completed, {
47
- milestone_id: e || L
47
+ }), i == null || i(e, !0), C(Q.DRAFT_EDIT.completed, {
48
+ milestone_id: e || F
48
49
  }));
49
50
  },
50
- [e, p, n, A, C, u]
51
- ), { onPublish: j, isProcessing: v } = W({
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
- i == null || i({
60
+ s == null || s({
60
61
  milestoneId: e,
61
- milestoneName: h,
62
- milestoneDueDate: f,
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: r
69
+ goalCode: l
69
70
  });
70
71
  }, [
71
72
  _,
72
73
  E,
73
74
  d,
74
- f,
75
+ h,
75
76
  b,
76
- r,
77
+ l,
77
78
  e,
78
- h,
79
+ f,
79
80
  a,
80
- i
81
+ s
81
82
  ]), z = m(() => {
82
- s == null || s(e);
83
- }, [s, e]);
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: (l) => l.stopPropagation(),
93
+ onClick: (r) => r.stopPropagation(),
93
94
  children: [
94
- O && /* @__PURE__ */ t(
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
- X && !k && /* @__PURE__ */ t(
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: v,
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
- B,
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(J, { $widthX: 12.5, $renderAs: "ub4-bold", $color: "RED", $align: "center", children: D })
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
- ce as default
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 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 )}\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","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":"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"}
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":"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"}