@cuemath/leap 2.8.60-gs1 → 2.8.61-as1

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 (76) hide show
  1. package/dist/constants/api.js +3 -2
  2. package/dist/constants/api.js.map +1 -1
  3. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js +1 -1
  4. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
  5. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +7 -7
  6. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +1 -1
  7. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js +15 -16
  8. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js.map +1 -1
  9. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +12 -8
  10. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +1 -1
  11. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +2 -2
  12. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +1 -1
  13. package/dist/features/chapters-v2/utils/index.js +5 -4
  14. package/dist/features/chapters-v2/utils/index.js.map +1 -1
  15. package/dist/features/chapters-v2/utils/node-card-utils.js +62 -35
  16. package/dist/features/chapters-v2/utils/node-card-utils.js.map +1 -1
  17. package/dist/features/homework/card-menu-options.js +23 -0
  18. package/dist/features/homework/card-menu-options.js.map +1 -0
  19. package/dist/features/homework/homework-card.js +209 -0
  20. package/dist/features/homework/homework-card.js.map +1 -0
  21. package/dist/features/homework/styles.js +114 -0
  22. package/dist/features/homework/styles.js.map +1 -0
  23. package/dist/features/milestone/create/api/goal-submit.js +1 -1
  24. package/dist/features/milestone/create/api/goal-submit.js.map +1 -1
  25. package/dist/features/milestone/edit/comps/edit-milestone-modal/api/patch-goal-plan.js +1 -1
  26. package/dist/features/milestone/edit/comps/edit-milestone-modal/api/patch-goal-plan.js.map +1 -1
  27. package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js +1 -1
  28. package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js.map +1 -1
  29. package/dist/features/milestone/milestone-list-container/api/get-tests-list.js +1 -1
  30. package/dist/features/milestone/milestone-list-container/api/get-tests-list.js.map +1 -1
  31. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +79 -81
  32. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  33. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +59 -61
  34. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  35. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js +83 -85
  36. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
  37. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +88 -90
  38. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  39. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +82 -98
  40. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
  41. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js +165 -0
  42. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +1 -0
  43. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view-styled.js +25 -0
  44. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view-styled.js.map +1 -0
  45. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js +82 -0
  46. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js.map +1 -0
  47. package/dist/features/recent-chapters/api/get-recent-chapters.js +9 -0
  48. package/dist/features/recent-chapters/api/get-recent-chapters.js.map +1 -0
  49. package/dist/features/recent-chapters/recent-chapters-styled.js +16 -0
  50. package/dist/features/recent-chapters/recent-chapters-styled.js.map +1 -0
  51. package/dist/features/recent-chapters/recent-chapters.js +40 -0
  52. package/dist/features/recent-chapters/recent-chapters.js.map +1 -0
  53. package/dist/features/sheet-v2/resource-list/resource-list.js +49 -0
  54. package/dist/features/sheet-v2/resource-list/resource-list.js.map +1 -0
  55. package/dist/features/sheets/resources-list/resource-item/styled.js +1 -1
  56. package/dist/features/sheets/resources-list/resource-item/styled.js.map +1 -1
  57. package/dist/index.d.ts +35 -16
  58. package/dist/index.js +31 -29
  59. package/dist/index.js.map +1 -1
  60. package/package.json +1 -1
  61. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js +0 -71
  62. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js.map +0 -1
  63. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js +0 -31
  64. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js.map +0 -1
  65. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js +0 -38
  66. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +0 -1
  67. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js +0 -79
  68. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js.map +0 -1
  69. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js +0 -18
  70. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js.map +0 -1
  71. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list.js +0 -51
  72. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list.js.map +0 -1
  73. package/dist/features/milestone/milestone-tests/tests-list/tests-list-styled.js +0 -11
  74. package/dist/features/milestone/milestone-tests/tests-list/tests-list-styled.js.map +0 -1
  75. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js +0 -144
  76. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js.map +0 -1
@@ -1,69 +1,68 @@
1
- import { jsxs as t, Fragment as te, jsx as o } from "react/jsx-runtime";
2
- import ne, { memo as oe, useState as ie, useCallback as A } from "react";
3
- import re from "../../../hooks/use-lazy-ref.js";
4
- import g from "../../../ui/buttons/text-button/text-button.js";
1
+ import { jsxs as t, Fragment as ee, jsx as o } from "react/jsx-runtime";
2
+ import te, { memo as ne, useState as oe, useCallback as g } from "react";
3
+ import ie from "../../../hooks/use-lazy-ref.js";
4
+ import u from "../../../ui/buttons/text-button/text-button.js";
5
5
  import c from "../../../ui/layout/flex-view.js";
6
6
  import C from "../../../ui/text/text.js";
7
7
  import se from "./milestone-widget/milestone-widget.js";
8
- import { StyledDownIcon as ae } from "./milestone-widget/milestone-widget-styled.js";
9
- import le from "./no-active-milestone/no-active-milestone.js";
10
- import ce from "../../../../node_modules/uuid/dist/esm-browser/v4.js";
11
- const xe = oe(
12
- ({ milestones: e, studentId: M, milestoneType: s, ...x }) => {
13
- const [a, T] = ie(!1), {
8
+ import { StyledDownIcon as re } from "./milestone-widget/milestone-widget-styled.js";
9
+ import ae from "./no-active-milestone/no-active-milestone.js";
10
+ import le from "../../../../node_modules/uuid/dist/esm-browser/v4.js";
11
+ const Me = ne(
12
+ ({ milestones: e, studentId: M, milestoneType: r, ...x }) => {
13
+ const [a, N] = oe(!1), {
14
14
  canCreatePlan: m,
15
- isClassOngoing: $,
16
- isFiltersAdded: v,
15
+ isClassOngoing: T,
16
+ isFiltersAdded: $,
17
17
  isStudentPresent: I,
18
- onAddChapter: R,
18
+ onAddChapter: v,
19
19
  onAddOutcome: i,
20
20
  onChapterClick: w,
21
- onCreatePlan: r,
21
+ onCreatePlan: s,
22
22
  onDelete: E,
23
- onDraftPublish: P,
24
- onEdit: S,
23
+ onDraftPublish: R,
24
+ onEdit: D,
25
25
  onExpandPastMilestones: f,
26
- onCreateMilestoneTest: D,
27
- onPreview: b,
28
- onReattempt: N,
29
- onReset: F,
30
- onResume: k,
31
- onReview: j,
32
- onStart: B,
33
- onAssignResources: G,
34
- onUnAssignSheet: L,
35
- onTestPreview: O,
36
- onTestReview: V,
37
- onTestStart: _,
38
- activeMilestoneId: y,
39
- activeTabId: z,
40
- onWidgetTabSelection: X,
26
+ onCreateMilestoneTest: P,
27
+ onNodeAttempt: b,
28
+ onNodeView: S,
29
+ onNodeReview: F,
30
+ onNodeReattempt: k,
31
+ onNodeReset: V,
32
+ onNodeUnassign: j,
33
+ onAssignResources: B,
34
+ onTestPreview: G,
35
+ onTestReview: L,
36
+ onTestStart: O,
37
+ activeMilestoneId: _,
38
+ activeTabId: y,
39
+ onWidgetTabSelection: z,
41
40
  studentName: p,
42
- teacherName: U,
43
- parentName: W,
41
+ teacherName: X,
42
+ parentName: U,
44
43
  userType: d,
45
- courseStream: H
46
- } = x, l = s === "ACTIVE", h = s === "DRAFT", u = re(ce), q = A(() => {
47
- r == null || r(u);
48
- }, [r, u]), J = () => {
49
- !a && f && f(), T(!a);
50
- }, K = A(() => {
44
+ courseStream: W
45
+ } = x, l = r === "ACTIVE", h = r === "DRAFT", A = ie(le), H = g(() => {
46
+ s == null || s(A);
47
+ }, [s, A]), q = () => {
48
+ !a && f && f(), N(!a);
49
+ }, J = g(() => {
51
50
  i == null || i();
52
51
  }, [i]);
53
52
  if (!e) return null;
54
- const Q = e.some(
53
+ const K = e.some(
55
54
  (n) => n.milestone_state === "ACTIVE"
56
- ), Y = e.some(
55
+ ), Q = e.some(
57
56
  (n) => n.milestone_state === "DRAFT"
58
57
  );
59
- return /* @__PURE__ */ t(te, { children: [
60
- l && !Q && /* @__PURE__ */ o(
61
- le,
58
+ return /* @__PURE__ */ t(ee, { children: [
59
+ l && !K && /* @__PURE__ */ o(
60
+ ae,
62
61
  {
63
62
  canCreatePlan: m,
64
- isDraftMilestonePresent: Y,
65
- isFiltersAdded: v,
66
- onCreatePlan: r,
63
+ isDraftMilestonePresent: Q,
64
+ isFiltersAdded: $,
65
+ onCreatePlan: s,
67
66
  studentName: p,
68
67
  userType: d
69
68
  }
@@ -76,18 +75,18 @@ const xe = oe(
76
75
  ] }),
77
76
  d === "TEACHER" && /* @__PURE__ */ t(c, { $flexDirection: "row", $flexGapX: 1, children: [
78
77
  /* @__PURE__ */ o(
79
- g,
78
+ u,
80
79
  {
81
80
  label: "Create Goal",
82
81
  size: "small",
83
- onClick: q,
82
+ onClick: H,
84
83
  disabled: !m
85
84
  }
86
85
  ),
87
- /* @__PURE__ */ o(g, { label: "Add Milestone", size: "small", onClick: K })
86
+ /* @__PURE__ */ o(u, { label: "Add Milestone", size: "small", onClick: J })
88
87
  ] })
89
88
  ] }),
90
- s === "INACTIVE" && !!e.length && /* @__PURE__ */ t(
89
+ r === "INACTIVE" && !!e.length && /* @__PURE__ */ t(
91
90
  c,
92
91
  {
93
92
  $flexDirection: "row",
@@ -100,57 +99,56 @@ const xe = oe(
100
99
  e.length,
101
100
  ")"
102
101
  ] }),
103
- /* @__PURE__ */ o(ae, { onClick: J, $expanded: a })
102
+ /* @__PURE__ */ o(re, { onClick: q, $expanded: a })
104
103
  ]
105
104
  }
106
105
  ),
107
- (h || l || a) && e.map((n, Z) => {
108
- const { id: ee } = n;
109
- return /* @__PURE__ */ t(ne.Fragment, { children: [
106
+ (h || l || a) && e.map((n, Y) => {
107
+ const { id: Z } = n;
108
+ return /* @__PURE__ */ t(te.Fragment, { children: [
110
109
  /* @__PURE__ */ o(
111
110
  se,
112
111
  {
113
112
  milestone: n,
114
113
  studentId: M,
115
114
  studentName: p,
116
- parentName: W,
117
- teacherName: U,
115
+ parentName: U,
116
+ teacherName: X,
118
117
  userType: d,
119
118
  onAddOutcome: i,
120
119
  onChapterClick: w,
121
120
  isMilestoneActive: l || h,
122
- milestoneType: s,
123
- onEdit: S,
124
- onCreateMilestoneTest: D,
125
- onPreview: b,
126
- onReattempt: N,
127
- onReset: F,
128
- onResume: k,
129
- onReview: j,
130
- onStart: B,
131
- onAddChapter: R,
121
+ milestoneType: r,
122
+ onEdit: D,
123
+ onCreateMilestoneTest: P,
124
+ onAddChapter: v,
132
125
  onDelete: E,
133
- onDraftPublish: P,
134
- isClassOngoing: $,
126
+ onDraftPublish: R,
127
+ isClassOngoing: T,
135
128
  isStudentPresent: I,
136
- onAssignResources: G,
137
- onUnAssignSheet: L,
138
- onTestPreview: O,
139
- onTestReview: V,
140
- onTestStart: _,
141
- courseStream: H,
142
- activeMilestoneId: y,
143
- activeTabId: z,
144
- onWidgetTabSelection: X
129
+ onAssignResources: B,
130
+ onNodeAttempt: b,
131
+ onNodeView: S,
132
+ onNodeReview: F,
133
+ onNodeReattempt: k,
134
+ onNodeReset: V,
135
+ onNodeUnassign: j,
136
+ onTestPreview: G,
137
+ onTestReview: L,
138
+ onTestStart: O,
139
+ courseStream: W,
140
+ activeMilestoneId: _,
141
+ activeTabId: y,
142
+ onWidgetTabSelection: z
145
143
  }
146
144
  ),
147
- Z !== e.length - 1 && /* @__PURE__ */ o(c, { $heightX: 2 })
148
- ] }, `milestone=${ee}`);
145
+ Y !== e.length - 1 && /* @__PURE__ */ o(c, { $heightX: 2 })
146
+ ] }, `milestone=${Z}`);
149
147
  })
150
148
  ] });
151
149
  }
152
150
  );
153
151
  export {
154
- xe as default
152
+ Me as default
155
153
  };
156
154
  //# 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 type { IMilestoneListProps } from './milestone-list-types';\n\nimport React, { memo, useCallback, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../../hooks/use-lazy-ref';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport MilestoneWidget from './milestone-widget/milestone-widget';\nimport { StyledDownIcon } from './milestone-widget/milestone-widget-styled';\nimport NoActiveMilestone from './no-active-milestone/no-active-milestone';\n\nconst MilestoneList: React.FC<IMilestoneListProps> = memo(\n ({ milestones, studentId, milestoneType, ...restMilestoneListProps }) => {\n const [expandInactiveMilestones, setExpandInactiveMilestones] = useState(false);\n const {\n canCreatePlan,\n isClassOngoing,\n isFiltersAdded,\n isStudentPresent,\n onAddChapter,\n onAddOutcome,\n onChapterClick,\n onCreatePlan,\n onDelete,\n onDraftPublish,\n onEdit,\n onExpandPastMilestones,\n onCreateMilestoneTest,\n onPreview,\n onReattempt,\n onReset,\n onResume,\n onReview,\n onStart,\n onAssignResources,\n onUnAssignSheet,\n onTestPreview,\n onTestReview,\n onTestStart,\n activeMilestoneId,\n activeTabId,\n onWidgetTabSelection,\n studentName,\n teacherName,\n parentName,\n userType,\n courseStream,\n } = restMilestoneListProps;\n\n const isMilestoneActive = milestoneType === 'ACTIVE';\n const isDraftMilestone = milestoneType === 'DRAFT';\n const temporaryMilestoneId = useLazyRef(uuidv4);\n\n const handleCreatePlan = useCallback(() => {\n onCreatePlan?.(temporaryMilestoneId);\n }, [onCreatePlan, temporaryMilestoneId]);\n\n const toggleExpand = () => {\n if (!expandInactiveMilestones && onExpandPastMilestones) {\n onExpandPastMilestones();\n }\n setExpandInactiveMilestones(!expandInactiveMilestones);\n };\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.();\n }, [onAddOutcome]);\n\n if (!milestones) return null;\n\n const activeMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'ACTIVE',\n );\n const draftMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'DRAFT',\n );\n\n return (\n <>\n {isMilestoneActive && !activeMilestonePresent && (\n <NoActiveMilestone\n canCreatePlan={canCreatePlan}\n isDraftMilestonePresent={draftMilestonePresent}\n isFiltersAdded={isFiltersAdded}\n onCreatePlan={onCreatePlan}\n studentName={studentName}\n userType={userType}\n />\n )}\n\n {isMilestoneActive && (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $marginBottom={10}>\n <Text $renderAs=\"ac4\">Goals ({milestones.length})</Text>\n\n {userType === 'TEACHER' && (\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n <TextButton\n label=\"Create Goal\"\n size=\"small\"\n onClick={handleCreatePlan}\n disabled={!canCreatePlan}\n />\n <TextButton label=\"Add Milestone\" size=\"small\" onClick={handleOnAddOutcome} />\n </FlexView>\n )}\n </FlexView>\n )}\n\n {milestoneType === 'INACTIVE' && Boolean(milestones.length) && (\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $marginBottomX={1}\n >\n <Text $renderAs=\"ac4\">PAST LEARNING PLANS & OUTCOMES ({milestones.length})</Text>\n <StyledDownIcon onClick={toggleExpand} $expanded={expandInactiveMilestones} />\n </FlexView>\n )}\n\n {(isDraftMilestone || isMilestoneActive || expandInactiveMilestones) &&\n milestones.map((milestone, idx) => {\n const { id: milestoneId } = milestone;\n\n return (\n <React.Fragment key={`milestone=${milestoneId}`}>\n <MilestoneWidget\n milestone={milestone}\n studentId={studentId}\n studentName={studentName}\n parentName={parentName}\n teacherName={teacherName}\n userType={userType}\n onAddOutcome={onAddOutcome}\n onChapterClick={onChapterClick}\n isMilestoneActive={isMilestoneActive || isDraftMilestone}\n milestoneType={milestoneType}\n onEdit={onEdit}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onPreview={onPreview}\n onReattempt={onReattempt}\n onReset={onReset}\n onResume={onResume}\n onReview={onReview}\n onStart={onStart}\n onAddChapter={onAddChapter}\n onDelete={onDelete}\n onDraftPublish={onDraftPublish}\n isClassOngoing={isClassOngoing}\n isStudentPresent={isStudentPresent}\n onAssignResources={onAssignResources}\n onUnAssignSheet={onUnAssignSheet}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n courseStream={courseStream}\n activeMilestoneId={activeMilestoneId}\n activeTabId={activeTabId}\n onWidgetTabSelection={onWidgetTabSelection}\n />\n {idx !== milestones.length - 1 && <FlexView $heightX={2} />}\n </React.Fragment>\n );\n })}\n </>\n );\n },\n);\n\nexport default MilestoneList;\n"],"names":["MilestoneList","memo","milestones","studentId","milestoneType","restMilestoneListProps","expandInactiveMilestones","setExpandInactiveMilestones","useState","canCreatePlan","isClassOngoing","isFiltersAdded","isStudentPresent","onAddChapter","onAddOutcome","onChapterClick","onCreatePlan","onDelete","onDraftPublish","onEdit","onExpandPastMilestones","onCreateMilestoneTest","onPreview","onReattempt","onReset","onResume","onReview","onStart","onAssignResources","onUnAssignSheet","onTestPreview","onTestReview","onTestStart","activeMilestoneId","activeTabId","onWidgetTabSelection","studentName","teacherName","parentName","userType","courseStream","isMilestoneActive","isDraftMilestone","temporaryMilestoneId","useLazyRef","uuidv4","handleCreatePlan","useCallback","toggleExpand","handleOnAddOutcome","activeMilestonePresent","milestone","draftMilestonePresent","jsxs","Fragment","jsx","NoActiveMilestone","FlexView","Text","TextButton","StyledDownIcon","idx","milestoneId","React","MilestoneWidget"],"mappings":"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"}
1
+ {"version":3,"file":"milestone-list.js","sources":["../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-list.tsx"],"sourcesContent":["import type { IMilestoneListProps } from './milestone-list-types';\n\nimport React, { memo, useCallback, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useLazyRef from '../../../hooks/use-lazy-ref';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport MilestoneWidget from './milestone-widget/milestone-widget';\nimport { StyledDownIcon } from './milestone-widget/milestone-widget-styled';\nimport NoActiveMilestone from './no-active-milestone/no-active-milestone';\n\nconst MilestoneList: React.FC<IMilestoneListProps> = memo(\n ({ milestones, studentId, milestoneType, ...restMilestoneListProps }) => {\n const [expandInactiveMilestones, setExpandInactiveMilestones] = useState(false);\n const {\n canCreatePlan,\n isClassOngoing,\n isFiltersAdded,\n isStudentPresent,\n onAddChapter,\n onAddOutcome,\n onChapterClick,\n onCreatePlan,\n onDelete,\n onDraftPublish,\n onEdit,\n onExpandPastMilestones,\n onCreateMilestoneTest,\n onNodeAttempt,\n onNodeView,\n onNodeReview,\n onNodeReattempt,\n onNodeReset,\n onNodeUnassign,\n onAssignResources,\n onTestPreview,\n onTestReview,\n onTestStart,\n activeMilestoneId,\n activeTabId,\n onWidgetTabSelection,\n studentName,\n teacherName,\n parentName,\n userType,\n courseStream,\n } = restMilestoneListProps;\n\n const isMilestoneActive = milestoneType === 'ACTIVE';\n const isDraftMilestone = milestoneType === 'DRAFT';\n const temporaryMilestoneId = useLazyRef(uuidv4);\n\n const handleCreatePlan = useCallback(() => {\n onCreatePlan?.(temporaryMilestoneId);\n }, [onCreatePlan, temporaryMilestoneId]);\n\n const toggleExpand = () => {\n if (!expandInactiveMilestones && onExpandPastMilestones) {\n onExpandPastMilestones();\n }\n setExpandInactiveMilestones(!expandInactiveMilestones);\n };\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.();\n }, [onAddOutcome]);\n\n if (!milestones) return null;\n\n const activeMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'ACTIVE',\n );\n const draftMilestonePresent = milestones.some(\n milestone => milestone.milestone_state === 'DRAFT',\n );\n\n return (\n <>\n {isMilestoneActive && !activeMilestonePresent && (\n <NoActiveMilestone\n canCreatePlan={canCreatePlan}\n isDraftMilestonePresent={draftMilestonePresent}\n isFiltersAdded={isFiltersAdded}\n onCreatePlan={onCreatePlan}\n studentName={studentName}\n userType={userType}\n />\n )}\n\n {isMilestoneActive && (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $marginBottom={10}>\n <Text $renderAs=\"ac4\">Goals ({milestones.length})</Text>\n\n {userType === 'TEACHER' && (\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n <TextButton\n label=\"Create Goal\"\n size=\"small\"\n onClick={handleCreatePlan}\n disabled={!canCreatePlan}\n />\n <TextButton label=\"Add Milestone\" size=\"small\" onClick={handleOnAddOutcome} />\n </FlexView>\n )}\n </FlexView>\n )}\n\n {milestoneType === 'INACTIVE' && Boolean(milestones.length) && (\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $marginBottomX={1}\n >\n <Text $renderAs=\"ac4\">PAST LEARNING PLANS & OUTCOMES ({milestones.length})</Text>\n <StyledDownIcon onClick={toggleExpand} $expanded={expandInactiveMilestones} />\n </FlexView>\n )}\n\n {(isDraftMilestone || isMilestoneActive || expandInactiveMilestones) &&\n milestones.map((milestone, idx) => {\n const { id: milestoneId } = milestone;\n\n return (\n <React.Fragment key={`milestone=${milestoneId}`}>\n <MilestoneWidget\n milestone={milestone}\n studentId={studentId}\n studentName={studentName}\n parentName={parentName}\n teacherName={teacherName}\n userType={userType}\n onAddOutcome={onAddOutcome}\n onChapterClick={onChapterClick}\n isMilestoneActive={isMilestoneActive || isDraftMilestone}\n milestoneType={milestoneType}\n onEdit={onEdit}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onAddChapter={onAddChapter}\n onDelete={onDelete}\n onDraftPublish={onDraftPublish}\n isClassOngoing={isClassOngoing}\n isStudentPresent={isStudentPresent}\n onAssignResources={onAssignResources}\n onNodeAttempt={onNodeAttempt}\n onNodeView={onNodeView}\n onNodeReview={onNodeReview}\n onNodeReattempt={onNodeReattempt}\n onNodeReset={onNodeReset}\n onNodeUnassign={onNodeUnassign}\n onTestPreview={onTestPreview}\n onTestReview={onTestReview}\n onTestStart={onTestStart}\n courseStream={courseStream}\n activeMilestoneId={activeMilestoneId}\n activeTabId={activeTabId}\n onWidgetTabSelection={onWidgetTabSelection}\n />\n {idx !== milestones.length - 1 && <FlexView $heightX={2} />}\n </React.Fragment>\n );\n })}\n </>\n );\n },\n);\n\nexport default MilestoneList;\n"],"names":["MilestoneList","memo","milestones","studentId","milestoneType","restMilestoneListProps","expandInactiveMilestones","setExpandInactiveMilestones","useState","canCreatePlan","isClassOngoing","isFiltersAdded","isStudentPresent","onAddChapter","onAddOutcome","onChapterClick","onCreatePlan","onDelete","onDraftPublish","onEdit","onExpandPastMilestones","onCreateMilestoneTest","onNodeAttempt","onNodeView","onNodeReview","onNodeReattempt","onNodeReset","onNodeUnassign","onAssignResources","onTestPreview","onTestReview","onTestStart","activeMilestoneId","activeTabId","onWidgetTabSelection","studentName","teacherName","parentName","userType","courseStream","isMilestoneActive","isDraftMilestone","temporaryMilestoneId","useLazyRef","uuidv4","handleCreatePlan","useCallback","toggleExpand","handleOnAddOutcome","activeMilestonePresent","milestone","draftMilestonePresent","jsxs","Fragment","jsx","NoActiveMilestone","FlexView","Text","TextButton","StyledDownIcon","idx","milestoneId","React","MilestoneWidget"],"mappings":";;;;;;;;;;AAaA,MAAMA,KAA+CC;AAAA,EACnD,CAAC,EAAE,YAAAC,GAAY,WAAAC,GAAW,eAAAC,GAAe,GAAGC,QAA6B;AACvE,UAAM,CAACC,GAA0BC,CAA2B,IAAIC,GAAS,EAAK,GACxE;AAAA,MACJ,eAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,cAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,QAAAC;AAAA,MACA,wBAAAC;AAAA,MACA,uBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,YAAAC;AAAA,MACA,cAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,aAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,cAAAC;AAAA,MACA,aAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,aAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,aAAAC;AAAA,MACA,aAAAC;AAAA,MACA,YAAAC;AAAA,MACA,UAAAC;AAAA,MACA,cAAAC;AAAA,IACE,IAAAlC,GAEEmC,IAAoBpC,MAAkB,UACtCqC,IAAmBrC,MAAkB,SACrCsC,IAAuBC,GAAWC,EAAM,GAExCC,IAAmBC,EAAY,MAAM;AACzC,MAAA9B,KAAA,QAAAA,EAAe0B;AAAA,IAAoB,GAClC,CAAC1B,GAAc0B,CAAoB,CAAC,GAEjCK,IAAe,MAAM;AACrB,MAAA,CAACzC,KAA4Bc,KACRA,KAEzBb,EAA4B,CAACD,CAAwB;AAAA,IAAA,GAGjD0C,IAAqBF,EAAY,MAAM;AAC5B,MAAAhC,KAAA,QAAAA;AAAA,IAAA,GACd,CAACA,CAAY,CAAC;AAEb,QAAA,CAACZ,EAAmB,QAAA;AAExB,UAAM+C,IAAyB/C,EAAW;AAAA,MACxC,CAAAgD,MAAaA,EAAU,oBAAoB;AAAA,IAAA,GAEvCC,IAAwBjD,EAAW;AAAA,MACvC,CAAAgD,MAAaA,EAAU,oBAAoB;AAAA,IAAA;AAG7C,WAEK,gBAAAE,EAAAC,IAAA,EAAA,UAAA;AAAA,MAAAb,KAAqB,CAACS,KACrB,gBAAAK;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,eAAA9C;AAAA,UACA,yBAAyB0C;AAAA,UACzB,gBAAAxC;AAAA,UACA,cAAAK;AAAA,UACA,aAAAmB;AAAA,UACA,UAAAG;AAAA,QAAA;AAAA,MACF;AAAA,MAGDE,uBACEgB,GAAS,EAAA,gBAAe,OAAM,iBAAgB,iBAAgB,eAAe,IAC5E,UAAA;AAAA,QAAC,gBAAAJ,EAAAK,GAAA,EAAK,WAAU,OAAM,UAAA;AAAA,UAAA;AAAA,UAAQvD,EAAW;AAAA,UAAO;AAAA,QAAA,GAAC;AAAA,QAEhDoC,MAAa,aACZ,gBAAAc,EAACI,KAAS,gBAAe,OAAM,WAAW,GACxC,UAAA;AAAA,UAAA,gBAAAF;AAAA,YAACI;AAAA,YAAA;AAAA,cACC,OAAM;AAAA,cACN,MAAK;AAAA,cACL,SAASb;AAAA,cACT,UAAU,CAACpC;AAAA,YAAA;AAAA,UACb;AAAA,4BACCiD,GAAW,EAAA,OAAM,iBAAgB,MAAK,SAAQ,SAASV,GAAoB;AAAA,QAAA,GAC9E;AAAA,MAAA,GAEJ;AAAA,MAGD5C,MAAkB,cAAc,EAAQF,EAAW,UAClD,gBAAAkD;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,gBAAe;AAAA,UACf,aAAY;AAAA,UACZ,iBAAgB;AAAA,UAChB,gBAAgB;AAAA,UAEhB,UAAA;AAAA,YAAC,gBAAAJ,EAAAK,GAAA,EAAK,WAAU,OAAM,UAAA;AAAA,cAAA;AAAA,cAAiCvD,EAAW;AAAA,cAAO;AAAA,YAAA,GAAC;AAAA,YACzE,gBAAAoD,EAAAK,IAAA,EAAe,SAASZ,GAAc,WAAWzC,GAA0B;AAAA,UAAA;AAAA,QAAA;AAAA,MAC9E;AAAA,OAGAmC,KAAoBD,KAAqBlC,MACzCJ,EAAW,IAAI,CAACgD,GAAWU,MAAQ;AAC3B,cAAA,EAAE,IAAIC,EAAgB,IAAAX;AAG1B,eAAA,gBAAAE,EAACU,GAAM,UAAN,EACC,UAAA;AAAA,UAAA,gBAAAR;AAAA,YAACS;AAAA,YAAA;AAAA,cACC,WAAAb;AAAA,cACA,WAAA/C;AAAA,cACA,aAAAgC;AAAA,cACA,YAAAE;AAAA,cACA,aAAAD;AAAA,cACA,UAAAE;AAAA,cACA,cAAAxB;AAAA,cACA,gBAAAC;AAAA,cACA,mBAAmByB,KAAqBC;AAAA,cACxC,eAAArC;AAAA,cACA,QAAAe;AAAA,cACA,uBAAAE;AAAA,cACA,cAAAR;AAAA,cACA,UAAAI;AAAA,cACA,gBAAAC;AAAA,cACA,gBAAAR;AAAA,cACA,kBAAAE;AAAA,cACA,mBAAAgB;AAAA,cACA,eAAAN;AAAA,cACA,YAAAC;AAAA,cACA,cAAAC;AAAA,cACA,iBAAAC;AAAA,cACA,aAAAC;AAAA,cACA,gBAAAC;AAAA,cACA,eAAAE;AAAA,cACA,cAAAC;AAAA,cACA,aAAAC;AAAA,cACA,cAAAQ;AAAA,cACA,mBAAAP;AAAA,cACA,aAAAC;AAAA,cACA,sBAAAC;AAAA,YAAA;AAAA,UACF;AAAA,UACC0B,MAAQ1D,EAAW,SAAS,KAAM,gBAAAoD,EAAAE,GAAA,EAAS,UAAU,GAAG;AAAA,QAlCtC,EAAA,GAAA,aAAaK,CAAW,EAmC7C;AAAA,MAAA,CAEH;AAAA,IACL,EAAA,CAAA;AAAA,EAEJ;AACF;"}
@@ -1,57 +1,56 @@
1
- import { jsx as t, jsxs as H, Fragment as X } from "react/jsx-runtime";
2
- import { memo as q, useState as z, useCallback as J } from "react";
3
- import K from "../../../../../chapters/chapters-list/chapters-list.js";
4
- import { useUIContext as Q } from "../../../../../ui/context/context.js";
5
- import V from "../../../../../ui/text/text.js";
6
- import Y from "../../../../milestone-resources/resources-list/resources-list.js";
7
- import Z from "../../../../milestone-tests/tests-list/tests-list.js";
8
- import { getGoalCategoryBasedColorTheme as ee } from "../milestone-utils.js";
9
- import { NoPlanCardWrapper as te, TabsWrapper as oe, TabsText as se, TabComponentWrapper as ne } from "./milestone-tabs-styled.js";
10
- const he = q((h) => {
1
+ import { jsx as t, jsxs as L, Fragment as H } from "react/jsx-runtime";
2
+ import { memo as V, useState as X, useCallback as q } from "react";
3
+ import z from "../../../../../chapters/chapters-list/chapters-list.js";
4
+ import { useUIContext as J } from "../../../../../ui/context/context.js";
5
+ import K from "../../../../../ui/text/text.js";
6
+ import Q from "../../../../milestone-resources/resources-list/resources-list.js";
7
+ import Y from "../../../../milestone-tests/test-list-v2/test-list-container.js";
8
+ import { getGoalCategoryBasedColorTheme as Z } from "../milestone-utils.js";
9
+ import { NoPlanCardWrapper as ee, TabsWrapper as te, TabsText as oe, TabComponentWrapper as se } from "./milestone-tabs-styled.js";
10
+ const be = V((h) => {
11
11
  var g;
12
12
  const {
13
- goalCategory: R,
13
+ goalCategory: N,
14
14
  isDraftMilestone: r,
15
15
  isGoalCreation: A,
16
16
  isMilestoneActive: l,
17
17
  userMilestoneId: e,
18
18
  chapters: c,
19
- userType: m,
20
- canUpdatePlan: p,
19
+ userType: d,
20
+ canUpdatePlan: m,
21
21
  studentId: u,
22
22
  milestoneState: I,
23
- milestonePermissions: $,
24
- activeMilestoneId: d,
25
- activeTabId: k
23
+ milestonePermissions: R,
24
+ activeMilestoneId: p,
25
+ activeTabId: $
26
26
  } = h, {
27
- onAddChapter: M,
28
- onAssignResources: x,
29
- onChapterClick: P,
30
- onCreateMilestoneTest: S,
31
- onPreview: U,
32
- onReattempt: j,
33
- onReset: w,
34
- onResume: E,
35
- onReview: N,
36
- onStart: W,
27
+ onAddChapter: k,
28
+ onAssignResources: M,
29
+ onChapterClick: x,
30
+ onCreateMilestoneTest: P,
31
+ onNodeAttempt: U,
32
+ onNodeView: j,
33
+ onNodeReview: w,
34
+ onNodeReattempt: E,
35
+ onNodeReset: S,
36
+ onNodeUnassign: W,
37
37
  onTestPreview: _,
38
38
  onTestReview: y,
39
39
  onTestStart: B,
40
- onUnAssignSheet: D,
41
40
  onWidgetTabSelection: a
42
- } = h, { visible_tabs: C } = $, { onEvent: T } = Q(), { backgroundColor: F } = ee(R, r), b = {
41
+ } = h, { visible_tabs: C } = R, { onEvent: T } = J(), { backgroundColor: D } = Z(N, r), b = {
43
42
  chapters: {
44
43
  label: "Chapters",
45
44
  component: /* @__PURE__ */ t(
46
- K,
45
+ z,
47
46
  {
48
47
  milestoneId: e,
49
48
  chapters: c,
50
- userType: m,
49
+ userType: d,
51
50
  isGoalCreation: A,
52
- onChapterClick: P,
53
- onAddChapter: M,
54
- canUpdatePlan: !!(I !== "DRAFT" && p),
51
+ onChapterClick: x,
52
+ onAddChapter: k,
53
+ canUpdatePlan: !!(I !== "DRAFT" && m),
55
54
  isMilestoneActive: l
56
55
  }
57
56
  )
@@ -59,16 +58,16 @@ const he = q((h) => {
59
58
  tests: {
60
59
  label: "Tests",
61
60
  component: /* @__PURE__ */ t(
62
- Z,
61
+ Y,
63
62
  {
64
63
  isDraftMilestone: r,
65
64
  isChaptersAvailable: c.length > 0,
66
65
  isMilestoneActive: l,
67
66
  studentId: u,
68
67
  userMilestoneId: e,
69
- userType: m,
70
- canUpdatePlan: p,
71
- onCreateMilestoneTest: S,
68
+ userType: d,
69
+ canUpdatePlan: m,
70
+ onCreateMilestoneTest: P,
72
71
  onTestPreview: _,
73
72
  onTestStart: B,
74
73
  onTestReview: y
@@ -78,58 +77,57 @@ const he = q((h) => {
78
77
  resources: {
79
78
  label: "Resources",
80
79
  component: /* @__PURE__ */ t(
81
- Y,
80
+ Q,
82
81
  {
83
82
  isDraftMilestone: r,
84
83
  isMilestoneActive: l,
85
84
  userMilestoneId: e,
86
- canUpdatePlan: p,
85
+ canUpdatePlan: m,
87
86
  studentId: u,
88
- userType: m,
89
- onAssignResources: x,
90
- onUnAssignSheet: D,
91
- onStart: W,
92
- onReset: w,
93
- onPreview: U,
94
- onReview: N,
95
- onResume: E,
96
- onReattempt: j
87
+ userType: d,
88
+ onAssignResources: M,
89
+ onNodeAttempt: U,
90
+ onNodeView: j,
91
+ onNodeReview: w,
92
+ onNodeReattempt: E,
93
+ onNodeReset: S,
94
+ onNodeUnassign: W
97
95
  }
98
96
  )
99
97
  }
100
98
  }, s = (C ?? []).length === 0 ? Object.entries(b) : Object.entries(b).filter(
101
99
  ([o]) => (C ?? []).includes(o.toUpperCase())
102
- ), [i, G] = z(
103
- e === d ? k : ((g = s == null ? void 0 : s[0]) == null ? void 0 : g[0]) || "chapters"
104
- ), O = J(
100
+ ), [i, F] = X(
101
+ e === p ? $ : ((g = s == null ? void 0 : s[0]) == null ? void 0 : g[0]) || "chapters"
102
+ ), G = q(
105
103
  (o, n) => {
106
- if (d === e && o === i) return null;
107
- G(o), a == null || a(e, o), T("clicked", {
104
+ if (p === e && o === i) return null;
105
+ F(o), a == null || a(e, o), T("clicked", {
108
106
  cta: n,
109
107
  milestone_id: e
110
108
  });
111
109
  },
112
- [d, e, i, a, T]
110
+ [p, e, i, a, T]
113
111
  );
114
- return r && c.length === 0 ? /* @__PURE__ */ t(te, { $gutterX: 2, $background: "WHITE_3", children: /* @__PURE__ */ t(V, { $renderAs: "ab2", $color: "RED", children: "No chapter has been assigned" }) }) : /* @__PURE__ */ H(X, { children: [
115
- /* @__PURE__ */ t(oe, { $backgroundColor: F, $frames: s.length, children: s.map((o) => {
116
- const [n, L] = o, { label: f } = L, v = n === i;
112
+ return r && c.length === 0 ? /* @__PURE__ */ t(ee, { $gutterX: 2, $background: "WHITE_3", children: /* @__PURE__ */ t(K, { $renderAs: "ab2", $color: "RED", children: "No chapter has been assigned" }) }) : /* @__PURE__ */ L(H, { children: [
113
+ /* @__PURE__ */ t(te, { $backgroundColor: D, $frames: s.length, children: s.map((o) => {
114
+ const [n, O] = o, { label: f } = O, v = n === i;
117
115
  return /* @__PURE__ */ t(
118
- se,
116
+ oe,
119
117
  {
120
118
  $renderAs: v ? "ub3-bold" : "ub3",
121
119
  $align: "center",
122
120
  $selected: v,
123
- onClick: () => O(n, f),
121
+ onClick: () => G(n, f),
124
122
  children: f
125
123
  },
126
124
  n
127
125
  );
128
126
  }) }),
129
- /* @__PURE__ */ t(ne, { children: b[i].component })
127
+ /* @__PURE__ */ t(se, { children: b[i].component })
130
128
  ] });
131
129
  });
132
130
  export {
133
- he as default
131
+ be as default
134
132
  };
135
133
  //# sourceMappingURL=milestone-tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"milestone-tabs.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.tsx"],"sourcesContent":["import type { IMilestoneTabConfig, IMilestoneTabsProps } from './milestone-tabs-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport ChaptersList from '../../../../../chapters/chapters-list/chapters-list';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport Text from '../../../../../ui/text/text';\nimport MilestoneWidgetResources from '../../../../milestone-resources/resources-list/resources-list';\nimport MilestoneTestsList from '../../../../milestone-tests/tests-list/tests-list';\nimport { getGoalCategoryBasedColorTheme } from '../milestone-utils';\nimport * as Styled from './milestone-tabs-styled';\n\nconst MilestoneTabs: FC<IMilestoneTabsProps> = memo(props => {\n const {\n goalCategory,\n isDraftMilestone,\n isGoalCreation,\n isMilestoneActive,\n userMilestoneId,\n chapters,\n userType,\n canUpdatePlan,\n studentId,\n milestoneState,\n milestonePermissions,\n activeMilestoneId,\n activeTabId,\n } = props;\n const {\n onAddChapter,\n onAssignResources,\n onChapterClick,\n onCreateMilestoneTest,\n onPreview,\n onReattempt,\n onReset,\n onResume,\n onReview,\n onStart,\n onTestPreview,\n onTestReview,\n onTestStart,\n onUnAssignSheet,\n onWidgetTabSelection,\n } = props;\n const { visible_tabs: visibleTabs } = milestonePermissions;\n const { onEvent: trackEvent } = useUIContext();\n\n const { backgroundColor } = getGoalCategoryBasedColorTheme(goalCategory, isDraftMilestone);\n\n const TAB_CONFIG: IMilestoneTabConfig = {\n chapters: {\n label: 'Chapters',\n component: (\n <ChaptersList\n milestoneId={userMilestoneId}\n chapters={chapters}\n userType={userType}\n isGoalCreation={isGoalCreation}\n onChapterClick={onChapterClick}\n onAddChapter={onAddChapter}\n canUpdatePlan={Boolean(milestoneState !== 'DRAFT' && canUpdatePlan)}\n isMilestoneActive={isMilestoneActive}\n />\n ),\n },\n tests: {\n label: 'Tests',\n component: (\n <MilestoneTestsList\n isDraftMilestone={isDraftMilestone}\n isChaptersAvailable={chapters.length > 0}\n isMilestoneActive={isMilestoneActive}\n studentId={studentId}\n userMilestoneId={userMilestoneId}\n userType={userType}\n canUpdatePlan={canUpdatePlan}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onTestPreview={onTestPreview}\n onTestStart={onTestStart}\n onTestReview={onTestReview}\n />\n ),\n },\n resources: {\n label: 'Resources',\n component: (\n <MilestoneWidgetResources\n isDraftMilestone={isDraftMilestone}\n isMilestoneActive={isMilestoneActive}\n userMilestoneId={userMilestoneId}\n canUpdatePlan={canUpdatePlan}\n studentId={studentId}\n userType={userType}\n onAssignResources={onAssignResources}\n onUnAssignSheet={onUnAssignSheet}\n onStart={onStart}\n onReset={onReset}\n onPreview={onPreview}\n onReview={onReview}\n onResume={onResume}\n onReattempt={onReattempt}\n />\n ),\n },\n };\n\n const filteredTabConfig =\n (visibleTabs ?? []).length === 0\n ? Object.entries(TAB_CONFIG)\n : Object.entries(TAB_CONFIG).filter(([tabName]) =>\n (visibleTabs ?? []).includes(tabName.toUpperCase()),\n );\n const [selectedTabName, setSelectedTabName] = useState(\n userMilestoneId === activeMilestoneId ? activeTabId : filteredTabConfig?.[0]?.[0] || 'chapters',\n );\n\n const handleTabChange = useCallback(\n (tabName: keyof IMilestoneTabConfig, ctaLabel: string) => {\n if (activeMilestoneId === userMilestoneId && tabName === selectedTabName) return null;\n\n setSelectedTabName(tabName);\n\n onWidgetTabSelection?.(userMilestoneId, tabName);\n\n trackEvent('clicked', {\n cta: ctaLabel,\n milestone_id: userMilestoneId,\n });\n },\n [activeMilestoneId, userMilestoneId, selectedTabName, onWidgetTabSelection, trackEvent],\n );\n\n if (isDraftMilestone && chapters.length === 0) {\n return (\n <Styled.NoPlanCardWrapper $gutterX={2} $background=\"WHITE_3\">\n <Text $renderAs=\"ab2\" $color=\"RED\">\n No chapter has been assigned\n </Text>\n </Styled.NoPlanCardWrapper>\n );\n }\n\n return (\n <>\n <Styled.TabsWrapper $backgroundColor={backgroundColor} $frames={filteredTabConfig.length}>\n {filteredTabConfig.map(tabConfig => {\n const [tabName, tabInfo] = tabConfig;\n const { label } = tabInfo;\n const isSelected = tabName === selectedTabName;\n\n return (\n <Styled.TabsText\n $renderAs={isSelected ? 'ub3-bold' : 'ub3'}\n $align=\"center\"\n key={tabName}\n $selected={isSelected}\n onClick={() => handleTabChange(tabName as keyof IMilestoneTabConfig, label)}\n >\n {label}\n </Styled.TabsText>\n );\n })}\n </Styled.TabsWrapper>\n\n <Styled.TabComponentWrapper>\n {TAB_CONFIG[selectedTabName as keyof typeof TAB_CONFIG].component}\n </Styled.TabComponentWrapper>\n </>\n );\n});\n\nexport default MilestoneTabs;\n"],"names":["MilestoneTabs","memo","props","goalCategory","isDraftMilestone","isGoalCreation","isMilestoneActive","userMilestoneId","chapters","userType","canUpdatePlan","studentId","milestoneState","milestonePermissions","activeMilestoneId","activeTabId","onAddChapter","onAssignResources","onChapterClick","onCreateMilestoneTest","onPreview","onReattempt","onReset","onResume","onReview","onStart","onTestPreview","onTestReview","onTestStart","onUnAssignSheet","onWidgetTabSelection","visibleTabs","trackEvent","useUIContext","backgroundColor","getGoalCategoryBasedColorTheme","TAB_CONFIG","jsx","ChaptersList","MilestoneTestsList","MilestoneWidgetResources","filteredTabConfig","tabName","selectedTabName","setSelectedTabName","useState","_a","handleTabChange","useCallback","ctaLabel","Styled.NoPlanCardWrapper","Text","jsxs","Fragment","Styled.TabsWrapper","tabConfig","tabInfo","label","isSelected","Styled.TabsText","Styled.TabComponentWrapper"],"mappings":"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"}
1
+ {"version":3,"file":"milestone-tabs.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.tsx"],"sourcesContent":["import type { IMilestoneTabConfig, IMilestoneTabsProps } from './milestone-tabs-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport ChaptersList from '../../../../../chapters/chapters-list/chapters-list';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport Text from '../../../../../ui/text/text';\nimport MilestoneWidgetResources from '../../../../milestone-resources/resources-list/resources-list';\nimport MilestoneTestsList from '../../../../milestone-tests/test-list-v2/test-list-container';\nimport { getGoalCategoryBasedColorTheme } from '../milestone-utils';\nimport * as Styled from './milestone-tabs-styled';\n\nconst MilestoneTabs: FC<IMilestoneTabsProps> = memo(props => {\n const {\n goalCategory,\n isDraftMilestone,\n isGoalCreation,\n isMilestoneActive,\n userMilestoneId,\n chapters,\n userType,\n canUpdatePlan,\n studentId,\n milestoneState,\n milestonePermissions,\n activeMilestoneId,\n activeTabId,\n } = props;\n const {\n onAddChapter,\n onAssignResources,\n onChapterClick,\n onCreateMilestoneTest,\n onNodeAttempt,\n onNodeView,\n onNodeReview,\n onNodeReattempt,\n onNodeReset,\n onNodeUnassign,\n onTestPreview,\n onTestReview,\n onTestStart,\n onWidgetTabSelection,\n } = props;\n const { visible_tabs: visibleTabs } = milestonePermissions;\n const { onEvent: trackEvent } = useUIContext();\n\n const { backgroundColor } = getGoalCategoryBasedColorTheme(goalCategory, isDraftMilestone);\n\n const TAB_CONFIG: IMilestoneTabConfig = {\n chapters: {\n label: 'Chapters',\n component: (\n <ChaptersList\n milestoneId={userMilestoneId}\n chapters={chapters}\n userType={userType}\n isGoalCreation={isGoalCreation}\n onChapterClick={onChapterClick}\n onAddChapter={onAddChapter}\n canUpdatePlan={Boolean(milestoneState !== 'DRAFT' && canUpdatePlan)}\n isMilestoneActive={isMilestoneActive}\n />\n ),\n },\n tests: {\n label: 'Tests',\n component: (\n <MilestoneTestsList\n isDraftMilestone={isDraftMilestone}\n isChaptersAvailable={chapters.length > 0}\n isMilestoneActive={isMilestoneActive}\n studentId={studentId}\n userMilestoneId={userMilestoneId}\n userType={userType}\n canUpdatePlan={canUpdatePlan}\n onCreateMilestoneTest={onCreateMilestoneTest}\n onTestPreview={onTestPreview}\n onTestStart={onTestStart}\n onTestReview={onTestReview}\n />\n ),\n },\n resources: {\n label: 'Resources',\n component: (\n <MilestoneWidgetResources\n isDraftMilestone={isDraftMilestone}\n isMilestoneActive={isMilestoneActive}\n userMilestoneId={userMilestoneId}\n canUpdatePlan={canUpdatePlan}\n studentId={studentId}\n userType={userType}\n onAssignResources={onAssignResources}\n onNodeAttempt={onNodeAttempt}\n onNodeView={onNodeView}\n onNodeReview={onNodeReview}\n onNodeReattempt={onNodeReattempt}\n onNodeReset={onNodeReset}\n onNodeUnassign={onNodeUnassign}\n />\n ),\n },\n };\n\n const filteredTabConfig =\n (visibleTabs ?? []).length === 0\n ? Object.entries(TAB_CONFIG)\n : Object.entries(TAB_CONFIG).filter(([tabName]) =>\n (visibleTabs ?? []).includes(tabName.toUpperCase()),\n );\n const [selectedTabName, setSelectedTabName] = useState(\n userMilestoneId === activeMilestoneId ? activeTabId : filteredTabConfig?.[0]?.[0] || 'chapters',\n );\n\n const handleTabChange = useCallback(\n (tabName: keyof IMilestoneTabConfig, ctaLabel: string) => {\n if (activeMilestoneId === userMilestoneId && tabName === selectedTabName) return null;\n\n setSelectedTabName(tabName);\n\n onWidgetTabSelection?.(userMilestoneId, tabName);\n\n trackEvent('clicked', {\n cta: ctaLabel,\n milestone_id: userMilestoneId,\n });\n },\n [activeMilestoneId, userMilestoneId, selectedTabName, onWidgetTabSelection, trackEvent],\n );\n\n if (isDraftMilestone && chapters.length === 0) {\n return (\n <Styled.NoPlanCardWrapper $gutterX={2} $background=\"WHITE_3\">\n <Text $renderAs=\"ab2\" $color=\"RED\">\n No chapter has been assigned\n </Text>\n </Styled.NoPlanCardWrapper>\n );\n }\n\n return (\n <>\n <Styled.TabsWrapper $backgroundColor={backgroundColor} $frames={filteredTabConfig.length}>\n {filteredTabConfig.map(tabConfig => {\n const [tabName, tabInfo] = tabConfig;\n const { label } = tabInfo;\n const isSelected = tabName === selectedTabName;\n\n return (\n <Styled.TabsText\n $renderAs={isSelected ? 'ub3-bold' : 'ub3'}\n $align=\"center\"\n key={tabName}\n $selected={isSelected}\n onClick={() => handleTabChange(tabName as keyof IMilestoneTabConfig, label)}\n >\n {label}\n </Styled.TabsText>\n );\n })}\n </Styled.TabsWrapper>\n\n <Styled.TabComponentWrapper>\n {TAB_CONFIG[selectedTabName as keyof typeof TAB_CONFIG].component}\n </Styled.TabComponentWrapper>\n </>\n );\n});\n\nexport default MilestoneTabs;\n"],"names":["MilestoneTabs","memo","props","goalCategory","isDraftMilestone","isGoalCreation","isMilestoneActive","userMilestoneId","chapters","userType","canUpdatePlan","studentId","milestoneState","milestonePermissions","activeMilestoneId","activeTabId","onAddChapter","onAssignResources","onChapterClick","onCreateMilestoneTest","onNodeAttempt","onNodeView","onNodeReview","onNodeReattempt","onNodeReset","onNodeUnassign","onTestPreview","onTestReview","onTestStart","onWidgetTabSelection","visibleTabs","trackEvent","useUIContext","backgroundColor","getGoalCategoryBasedColorTheme","TAB_CONFIG","jsx","ChaptersList","MilestoneTestsList","MilestoneWidgetResources","filteredTabConfig","tabName","selectedTabName","setSelectedTabName","useState","_a","handleTabChange","useCallback","ctaLabel","Styled.NoPlanCardWrapper","Text","jsxs","Fragment","Styled.TabsWrapper","tabConfig","tabInfo","label","isSelected","Styled.TabsText","Styled.TabComponentWrapper"],"mappings":"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"}