@cuemath/leap 2.8.56-as1 → 2.8.56-hg1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/illustrations/illustrations.js +0 -9
- package/dist/assets/illustrations/illustrations.js.map +1 -1
- package/dist/assets/line-icons/icons/closed-eye.js +23 -0
- package/dist/assets/line-icons/icons/closed-eye.js.map +1 -0
- package/dist/features/analytics-events/whitelist-events.js +9 -7
- package/dist/features/analytics-events/whitelist-events.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js +33 -98
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js +47 -76
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapters-list-styled.js +5 -5
- package/dist/features/chapters/chapters-list/chapters-list-styled.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapters-list.js +70 -65
- package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
- package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js +92 -0
- package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js.map +1 -0
- package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js +25 -0
- package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js.map +1 -0
- package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js +53 -51
- package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/api/get-milestones.js +17 -9
- package/dist/features/milestone/milestone-list-container/api/get-milestones.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +91 -116
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js +13 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js.map +1 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js +38 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js.map +1 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js +121 -105
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +173 -145
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js +10 -24
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +81 -76
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js +22 -10
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js +53 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js.map +1 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js +37 -70
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js +174 -114
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js +25 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js.map +1 -0
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js +16 -29
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js +23 -19
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js +35 -23
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list-container.js +36 -34
- package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js +1 -1
- package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +78 -96
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js +71 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js +31 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js.map +1 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js +34 -6
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js +73 -73
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js +7 -8
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-list/tests-list.js +68 -77
- package/dist/features/milestone/milestone-tests/tests-list/tests-list.js.map +1 -1
- package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js +15 -0
- package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js.map +1 -0
- package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js +26 -0
- package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js.map +1 -0
- package/dist/features/sheets/resources-list/resource-item/resource-item.js +179 -65
- package/dist/features/sheets/resources-list/resource-item/resource-item.js.map +1 -1
- package/dist/features/sheets/resources-list/resource-item/styled.js +38 -0
- package/dist/features/sheets/resources-list/resource-item/styled.js.map +1 -0
- package/dist/features/sheets/resources-list/resource-item/utils.js +23 -0
- package/dist/features/sheets/resources-list/resource-item/utils.js.map +1 -0
- package/dist/features/sheets/resources-list/resources-list.js +5 -5
- package/dist/features/sheets/resources-list/resources-list.js.map +1 -1
- package/dist/features/sheets/resources-list/styled.js +13 -9
- package/dist/features/sheets/resources-list/styled.js.map +1 -1
- package/dist/features/sheets/sheets-analytics-events.js +11 -0
- package/dist/features/sheets/sheets-analytics-events.js.map +1 -0
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js +3 -4
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js.map +1 -1
- package/dist/features/sheets/utils/is-v3-worksheet.js.map +1 -1
- package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +29 -30
- package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
- package/dist/features/ui/constants/z-index.js +1 -1
- package/dist/features/ui/constants/z-index.js.map +1 -1
- package/dist/features/ui/context-menu/context-menu-styled.js +14 -28
- package/dist/features/ui/context-menu/context-menu-styled.js.map +1 -1
- package/dist/features/ui/context-menu/context-menu.js +15 -30
- package/dist/features/ui/context-menu/context-menu.js.map +1 -1
- package/dist/features/ui/theme/button.js +102 -17
- package/dist/features/ui/theme/button.js.map +1 -1
- package/dist/index.d.ts +12 -200
- package/dist/index.js +469 -487
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/assets/line-icons/icons/alarm.js +0 -41
- package/dist/assets/line-icons/icons/alarm.js.map +0 -1
- package/dist/assets/line-icons/icons/dart.js +0 -23
- package/dist/assets/line-icons/icons/dart.js.map +0 -1
- package/dist/assets/line-icons/icons/exclamation.js +0 -26
- package/dist/assets/line-icons/icons/exclamation.js.map +0 -1
- package/dist/assets/line-icons/icons/home2.js +0 -25
- package/dist/assets/line-icons/icons/home2.js.map +0 -1
- package/dist/assets/line-icons/icons/important.js +0 -23
- package/dist/assets/line-icons/icons/important.js.map +0 -1
- package/dist/assets/line-icons/icons/puzzle.js +0 -25
- package/dist/assets/line-icons/icons/puzzle.js.map +0 -1
- package/dist/assets/line-icons/icons/recap.js +0 -32
- package/dist/assets/line-icons/icons/recap.js.map +0 -1
- package/dist/assets/line-icons/icons/status.js +0 -41
- package/dist/assets/line-icons/icons/status.js.map +0 -1
- package/dist/assets/line-icons/icons/testtube.js +0 -33
- package/dist/assets/line-icons/icons/testtube.js.map +0 -1
- package/dist/features/chapters-v2/api/chapter.js +0 -10
- package/dist/features/chapters-v2/api/chapter.js.map +0 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +0 -112
- package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +0 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js +0 -26
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js.map +0 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js +0 -69
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +0 -1
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js +0 -90
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js.map +0 -1
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js +0 -97
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js.map +0 -1
- package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js +0 -52
- package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js.map +0 -1
- package/dist/features/chapters-v2/chapter-details/chapter-details.js +0 -103
- package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/border-path-animation.js +0 -13
- package/dist/features/chapters-v2/comps/node-card/border-path-animation.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/node-card-styled.js +0 -153
- package/dist/features/chapters-v2/comps/node-card/node-card-styled.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +0 -16
- package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/node-card.js +0 -12
- package/dist/features/chapters-v2/comps/node-card/node-card.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js +0 -32
- package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js +0 -31
- package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +0 -160
- package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +0 -1
- package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +0 -184
- package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +0 -1
- package/dist/features/chapters-v2/comps/tag/tag-styled.js +0 -13
- package/dist/features/chapters-v2/comps/tag/tag-styled.js.map +0 -1
- package/dist/features/chapters-v2/comps/tag/tag.js +0 -28
- package/dist/features/chapters-v2/comps/tag/tag.js.map +0 -1
- package/dist/features/chapters-v2/constants/block-constants.js +0 -20
- package/dist/features/chapters-v2/constants/block-constants.js.map +0 -1
- package/dist/features/chapters-v2/constants/node-constants.js +0 -15
- package/dist/features/chapters-v2/constants/node-constants.js.map +0 -1
- package/dist/features/chapters-v2/utils/index.js +0 -41
- package/dist/features/chapters-v2/utils/index.js.map +0 -1
- package/dist/features/chapters-v2/utils/node-card-utils.js +0 -106
- package/dist/features/chapters-v2/utils/node-card-utils.js.map +0 -1
- package/dist/features/homework/card-menu-options.js +0 -36
- package/dist/features/homework/card-menu-options.js.map +0 -1
- package/dist/features/homework/homework-card.js +0 -136
- package/dist/features/homework/homework-card.js.map +0 -1
- package/dist/features/homework/styles.js +0 -114
- package/dist/features/homework/styles.js.map +0 -1
- package/dist/features/homework/utils.js +0 -28
- package/dist/features/homework/utils.js.map +0 -1
- package/dist/features/recent-chapters/api/get-recent-chapters.js +0 -9
- package/dist/features/recent-chapters/api/get-recent-chapters.js.map +0 -1
- package/dist/features/recent-chapters/recent-chapters-styled.js +0 -23
- package/dist/features/recent-chapters/recent-chapters-styled.js.map +0 -1
- package/dist/features/recent-chapters/recent-chapters.js +0 -49
- package/dist/features/recent-chapters/recent-chapters.js.map +0 -1
- package/dist/static/chapter-header-bg-2.c8d96894.svg +0 -1
- package/dist/static/node-custom-test-bg.d3b757be.svg +0 -1
- package/dist/static/node-learn-bg.b61f815c.svg +0 -1
- package/dist/static/node-practice-bg.16cbaf2a.svg +0 -1
- package/dist/static/node-project-bg.e6a33e28.svg +0 -1
- package/dist/static/node-puzzle-bg.3422135c.svg +0 -1
- package/dist/static/node-recap-bg.546154e4.svg +0 -1
- package/dist/static/node-test-prep-bg.42c0b9c4.svg +0 -1
- package/dist/static/node-video-bg.3df3f73a.svg +0 -1
@@ -1,79 +1,84 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import { memo as
|
1
|
+
import { jsxs as i, jsx as r, Fragment as T } from "react/jsx-runtime";
|
2
|
+
import { memo as b, useCallback as y } from "react";
|
3
3
|
import { IMAGES as g } from "../../../assets/images/images.js";
|
4
|
-
import k from "
|
5
|
-
import x from "../../ui/
|
4
|
+
import k from "../../../assets/line-icons/icons/plus2.js";
|
5
|
+
import x from "../../ui/arrow-tooltip/arrow-tooltip.js";
|
6
|
+
import E from "../../ui/buttons/button/button.js";
|
7
|
+
import I from "../../ui/buttons/icon-button/icon-button.js";
|
6
8
|
import { useUIContext as $ } from "../../ui/context/context.js";
|
7
|
-
import
|
8
|
-
import
|
9
|
-
import
|
10
|
-
import { ChaptersListContainer as
|
11
|
-
const
|
12
|
-
({ milestoneId: t, canUpdatePlan:
|
13
|
-
const { isGoalCreation:
|
14
|
-
|
9
|
+
import d from "../../ui/separator/separator.js";
|
10
|
+
import L from "../../ui/text/text.js";
|
11
|
+
import X from "./chapter-item/chapter-item.js";
|
12
|
+
import { ChaptersListContainer as h, ChaptersWrapper as M, AddChapterIconWrapper as S } from "./chapters-list-styled.js";
|
13
|
+
const j = b(
|
14
|
+
({ milestoneId: t, canUpdatePlan: n, chapters: a, ...C }) => {
|
15
|
+
const { isGoalCreation: s, userType: o, onChapterClick: f, onAddChapter: e, isMilestoneActive: p } = C, A = o === "TEACHER" && e && n, { onClick: c } = $(), m = y(() => {
|
16
|
+
c({
|
15
17
|
label: "add_chapter_icon",
|
16
18
|
props: {
|
17
19
|
milestone_id: t
|
18
20
|
}
|
19
|
-
}), e == null || e({ milestoneId: t, isGoalCreation:
|
20
|
-
}, [t,
|
21
|
-
return
|
22
|
-
|
23
|
-
|
24
|
-
|
21
|
+
}), e == null || e({ milestoneId: t, isGoalCreation: s });
|
22
|
+
}, [t, s, e, c]);
|
23
|
+
return a.length ? /* @__PURE__ */ i(h, { children: [
|
24
|
+
/* @__PURE__ */ r(M, { children: a.map((l, u) => {
|
25
|
+
const { id: _ } = l;
|
26
|
+
return /* @__PURE__ */ r(
|
27
|
+
X,
|
28
|
+
{
|
29
|
+
milestoneId: t,
|
30
|
+
userType: o,
|
31
|
+
chapter: l,
|
32
|
+
onChapterClick: f,
|
33
|
+
itemIndex: u
|
34
|
+
},
|
35
|
+
_
|
36
|
+
);
|
37
|
+
}) }),
|
38
|
+
A && /* @__PURE__ */ r(S, { children: /* @__PURE__ */ r(
|
39
|
+
I,
|
25
40
|
{
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
}
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
{
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
k,
|
41
|
+
Icon: k,
|
42
|
+
renderAs: "secondary",
|
43
|
+
size: "small",
|
44
|
+
analyticsLabel: "add_chapter_icon",
|
45
|
+
onClick: m
|
46
|
+
}
|
47
|
+
) })
|
48
|
+
] }) : /* @__PURE__ */ i(h, { $gapX: 6.75, $alignItems: "center", $justifyContent: "center", children: [
|
49
|
+
/* @__PURE__ */ r("img", { src: g.EMPTY_MIX_TESTS, alt: "empty_mix_tests" }),
|
50
|
+
/* @__PURE__ */ r(d, { heightX: 2 }),
|
51
|
+
o === "TEACHER" ? /* @__PURE__ */ i(T, { children: [
|
52
|
+
/* @__PURE__ */ r(
|
53
|
+
x,
|
54
|
+
{
|
55
|
+
renderAs: "primary",
|
56
|
+
position: "bottom",
|
57
|
+
hidden: p,
|
58
|
+
tooltipItem: "Plan is completed",
|
59
|
+
children: /* @__PURE__ */ r(
|
60
|
+
E,
|
47
61
|
{
|
62
|
+
widthX: 10,
|
48
63
|
renderAs: "primary",
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
shape: "square",
|
58
|
-
size: "small",
|
59
|
-
label: "Add chapter",
|
60
|
-
onClick: f,
|
61
|
-
disabled: !n || !d,
|
62
|
-
analyticsProps: {
|
63
|
-
milestone_id: t
|
64
|
-
}
|
65
|
-
}
|
66
|
-
)
|
64
|
+
shape: "square",
|
65
|
+
size: "small",
|
66
|
+
label: "Add chapter",
|
67
|
+
onClick: m,
|
68
|
+
disabled: !p || !n,
|
69
|
+
analyticsProps: {
|
70
|
+
milestone_id: t
|
71
|
+
}
|
67
72
|
}
|
68
|
-
)
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
}
|
73
|
-
);
|
73
|
+
)
|
74
|
+
}
|
75
|
+
),
|
76
|
+
/* @__PURE__ */ r(d, { heightX: 2 })
|
77
|
+
] }) : /* @__PURE__ */ r(L, { $renderAs: "ab2-bold", $color: "BLACK_T_87", children: "Wait for the teacher to add a chapter" })
|
78
|
+
] });
|
74
79
|
}
|
75
|
-
),
|
80
|
+
), K = j;
|
76
81
|
export {
|
77
|
-
|
82
|
+
K as default
|
78
83
|
};
|
79
84
|
//# sourceMappingURL=chapters-list.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"chapters-list.js","sources":["../../../../src/features/chapters/chapters-list/chapters-list.tsx"],"sourcesContent":["import type { IChaptersListProps } from './chapters-list-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback } from 'react';\n\nimport { IMAGES } from '../../../assets/images/images';\nimport ArrowTooltip from '../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../ui/buttons/button/button';\nimport { useUIContext } from '../../ui/context/context';\nimport Separator from '../../ui/separator/separator';\nimport Text from '../../ui/text/text';\nimport ChapterItem from './chapter-item/chapter-item';\nimport * as Styled from './chapters-list-styled';\n\nconst ChaptersList: FC<IChaptersListProps> = memo(\n ({ milestoneId, canUpdatePlan, chapters, ...restChaptersList }) => {\n const { isGoalCreation, userType, onChapterClick, onAddChapter, isMilestoneActive } =\n restChaptersList;\n\n const { onClick: trackOnClick } = useUIContext();\n\n const handleOnAddChapter = useCallback(() => {\n trackOnClick({\n label: 'add_chapter_icon',\n props: {\n milestone_id: milestoneId,\n },\n });\n onAddChapter?.({ milestoneId, isGoalCreation });\n }, [milestoneId, isGoalCreation, onAddChapter, trackOnClick]);\n\n if (!chapters.length) {\n return (\n <Styled.ChaptersListContainer
|
1
|
+
{"version":3,"file":"chapters-list.js","sources":["../../../../src/features/chapters/chapters-list/chapters-list.tsx"],"sourcesContent":["import type { IChaptersListProps } from './chapters-list-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback } from 'react';\n\nimport { IMAGES } from '../../../assets/images/images';\nimport Plus2Icon from '../../../assets/line-icons/icons/plus2';\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 Separator from '../../ui/separator/separator';\nimport Text from '../../ui/text/text';\nimport ChapterItem from './chapter-item/chapter-item';\nimport * as Styled from './chapters-list-styled';\n\nconst ChaptersList: FC<IChaptersListProps> = memo(\n ({ milestoneId, canUpdatePlan, chapters, ...restChaptersList }) => {\n const { isGoalCreation, userType, onChapterClick, onAddChapter, isMilestoneActive } =\n restChaptersList;\n\n const canAddChapter = userType === 'TEACHER' && onAddChapter && canUpdatePlan;\n const { onClick: trackOnClick } = useUIContext();\n\n const handleOnAddChapter = useCallback(() => {\n trackOnClick({\n label: 'add_chapter_icon',\n props: {\n milestone_id: milestoneId,\n },\n });\n onAddChapter?.({ milestoneId, isGoalCreation });\n }, [milestoneId, isGoalCreation, onAddChapter, trackOnClick]);\n\n if (!chapters.length) {\n return (\n <Styled.ChaptersListContainer $gapX={6.75} $alignItems=\"center\" $justifyContent=\"center\">\n <img src={IMAGES.EMPTY_MIX_TESTS} alt=\"empty_mix_tests\" />\n <Separator heightX={2} />\n {userType === 'TEACHER' ? (\n <>\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n hidden={isMilestoneActive}\n tooltipItem=\"Plan is completed\"\n >\n <Button\n widthX={10}\n renderAs=\"primary\"\n shape=\"square\"\n size=\"small\"\n label=\"Add chapter\"\n onClick={handleOnAddChapter}\n disabled={!isMilestoneActive || !canUpdatePlan}\n analyticsProps={{\n milestone_id: milestoneId,\n }}\n />\n </ArrowTooltip>\n <Separator heightX={2} />\n </>\n ) : (\n <Text $renderAs=\"ab2-bold\" $color=\"BLACK_T_87\">\n Wait for the teacher to add a chapter\n </Text>\n )}\n </Styled.ChaptersListContainer>\n );\n }\n\n return (\n <Styled.ChaptersListContainer>\n <Styled.ChaptersWrapper>\n {chapters.map((chapter, idx) => {\n const { id } = chapter;\n\n return (\n <ChapterItem\n key={id}\n milestoneId={milestoneId}\n userType={userType}\n chapter={chapter}\n onChapterClick={onChapterClick}\n itemIndex={idx}\n />\n );\n })}\n </Styled.ChaptersWrapper>\n {canAddChapter && (\n <Styled.AddChapterIconWrapper>\n <IconButton\n Icon={Plus2Icon}\n renderAs=\"secondary\"\n size=\"small\"\n analyticsLabel=\"add_chapter_icon\"\n onClick={handleOnAddChapter}\n />\n </Styled.AddChapterIconWrapper>\n )}\n </Styled.ChaptersListContainer>\n );\n },\n);\n\nexport default ChaptersList;\n"],"names":["ChaptersList","memo","milestoneId","canUpdatePlan","chapters","restChaptersList","isGoalCreation","userType","onChapterClick","onAddChapter","isMilestoneActive","canAddChapter","trackOnClick","useUIContext","handleOnAddChapter","useCallback","jsxs","Styled.ChaptersListContainer","jsx","Styled.ChaptersWrapper","chapter","idx","id","ChapterItem","Styled.AddChapterIconWrapper","IconButton","Plus2Icon","IMAGES","Separator","Fragment","ArrowTooltip","Button","Text","ChaptersList$1"],"mappings":";;;;;;;;;;;;AAgBA,MAAMA,IAAuCC;AAAA,EAC3C,CAAC,EAAE,aAAAC,GAAa,eAAAC,GAAe,UAAAC,GAAU,GAAGC,QAAuB;AACjE,UAAM,EAAE,gBAAAC,GAAgB,UAAAC,GAAU,gBAAAC,GAAgB,cAAAC,GAAc,mBAAAC,EAC9D,IAAAL,GAEIM,IAAgBJ,MAAa,aAAaE,KAAgBN,GAC1D,EAAE,SAASS,EAAa,IAAIC,EAAa,GAEzCC,IAAqBC,EAAY,MAAM;AAC9B,MAAAH,EAAA;AAAA,QACX,OAAO;AAAA,QACP,OAAO;AAAA,UACL,cAAcV;AAAA,QAChB;AAAA,MAAA,CACD,GACcO,KAAA,QAAAA,EAAA,EAAE,aAAAP,GAAa,gBAAAI,EAAA;AAAA,OAC7B,CAACJ,GAAaI,GAAgBG,GAAcG,CAAY,CAAC;AAExD,WAACR,EAAS,SAsCZ,gBAAAY,EAACC,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAA,EACE,YAAS,IAAI,CAACC,GAASC,MAAQ;AACxB,cAAA,EAAE,IAAAC,EAAO,IAAAF;AAGb,eAAA,gBAAAF;AAAA,UAACK;AAAA,UAAA;AAAA,YAEC,aAAArB;AAAA,YACA,UAAAK;AAAA,YACA,SAAAa;AAAA,YACA,gBAAAZ;AAAA,YACA,WAAWa;AAAA,UAAA;AAAA,UALNC;AAAA,QAAA;AAAA,MAQV,CAAA,GACH;AAAA,MACCX,KACC,gBAAAO,EAACM,GAAA,EACC,UAAA,gBAAAN;AAAA,QAACO;AAAA,QAAA;AAAA,UACC,MAAMC;AAAA,UACN,UAAS;AAAA,UACT,MAAK;AAAA,UACL,gBAAe;AAAA,UACf,SAASZ;AAAA,QAAA;AAAA,MAAA,GAEb;AAAA,IAEJ,EAAA,CAAA,IAhEE,gBAAAE,EAACC,GAAA,EAA6B,OAAO,MAAM,aAAY,UAAS,iBAAgB,UAC9E,UAAA;AAAA,MAAA,gBAAAC,EAAC,OAAI,EAAA,KAAKS,EAAO,iBAAiB,KAAI,mBAAkB;AAAA,MACxD,gBAAAT,EAACU,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,MACtBrB,MAAa,YAEV,gBAAAS,EAAAa,GAAA,EAAA,UAAA;AAAA,QAAA,gBAAAX;AAAA,UAACY;AAAA,UAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,QAAQpB;AAAA,YACR,aAAY;AAAA,YAEZ,UAAA,gBAAAQ;AAAA,cAACa;AAAA,cAAA;AAAA,gBACC,QAAQ;AAAA,gBACR,UAAS;AAAA,gBACT,OAAM;AAAA,gBACN,MAAK;AAAA,gBACL,OAAM;AAAA,gBACN,SAASjB;AAAA,gBACT,UAAU,CAACJ,KAAqB,CAACP;AAAA,gBACjC,gBAAgB;AAAA,kBACd,cAAcD;AAAA,gBAChB;AAAA,cAAA;AAAA,YACF;AAAA,UAAA;AAAA,QACF;AAAA,QACA,gBAAAgB,EAACU,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,MAAA,EAAA,CACzB,IAEC,gBAAAV,EAAAc,GAAA,EAAK,WAAU,YAAW,QAAO,cAAa,UAE/C,yCAAA;AAAA,IAEJ,EAAA,CAAA;AAAA,EAmCN;AACF,GAEAC,IAAejC;"}
|
@@ -0,0 +1,92 @@
|
|
1
|
+
import { jsx as t, jsxs as c } from "react/jsx-runtime";
|
2
|
+
import { memo as C, Fragment as D } from "react";
|
3
|
+
import { ILLUSTRATIONS as R } from "../../../../../assets/illustrations/illustrations.js";
|
4
|
+
import L from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
|
5
|
+
import $ from "../../../../ui/image/image.js";
|
6
|
+
import a from "../../../../ui/layout/flex-view.js";
|
7
|
+
import x from "../../../../ui/text/text.js";
|
8
|
+
import { getSheetCompletionPercentage as G } from "../milestone-progress/milestone-progress-utils.js";
|
9
|
+
import { Progress as u } from "./styled.js";
|
10
|
+
const {
|
11
|
+
PRACTICED_SHIELD_GREY: T,
|
12
|
+
PRACTICED_SHIELD_GREEN: b,
|
13
|
+
LEARNED_SHIELD_GRAY: N,
|
14
|
+
LEARNED_SHIELD_GREEN: H,
|
15
|
+
MASTERED_SHIELD_GRAY: k,
|
16
|
+
MASTERED_SHIELD_GREEN: y
|
17
|
+
} = R, B = C(
|
18
|
+
({ milestoneId: d, showProgress: e, progressInfo: p }) => {
|
19
|
+
const {
|
20
|
+
familiar_sheets: n = 0,
|
21
|
+
proficient_sheets: m = 0,
|
22
|
+
mastered_sheets: s = 0,
|
23
|
+
total_core_sheets: o = 0
|
24
|
+
} = p || {}, i = o > 0, h = i && n === o, E = i && m === o, S = i && s === o, l = e ? 40 : 20, f = [
|
25
|
+
{
|
26
|
+
imageUrl: h ? H : N,
|
27
|
+
completedSheetsCount: n,
|
28
|
+
key: "milestone-widget-learned-badge-data"
|
29
|
+
},
|
30
|
+
{
|
31
|
+
imageUrl: E ? b : T,
|
32
|
+
completedSheetsCount: m,
|
33
|
+
key: "milestone-widget-practiced-badge-data"
|
34
|
+
},
|
35
|
+
{
|
36
|
+
imageUrl: S ? y : k,
|
37
|
+
completedSheetsCount: s,
|
38
|
+
key: "milestone-widget-mastered-badge-data"
|
39
|
+
}
|
40
|
+
];
|
41
|
+
return /* @__PURE__ */ t(a, { $flexGapX: 2, id: `milestone-progress-${d}`, children: /* @__PURE__ */ t(
|
42
|
+
a,
|
43
|
+
{
|
44
|
+
$flexDirection: "row",
|
45
|
+
$flexGapX: e ? 1.5 : 0.75,
|
46
|
+
$flexWrap: !e,
|
47
|
+
children: f.map((_) => {
|
48
|
+
const { key: g, imageUrl: I, completedSheetsCount: A } = _, r = G(
|
49
|
+
A,
|
50
|
+
o
|
51
|
+
);
|
52
|
+
return /* @__PURE__ */ t(D, { children: /* @__PURE__ */ t(
|
53
|
+
L,
|
54
|
+
{
|
55
|
+
position: "bottom",
|
56
|
+
renderAs: "secondary",
|
57
|
+
tooltipItem: `${r}%`,
|
58
|
+
hidden: !e,
|
59
|
+
children: /* @__PURE__ */ c(
|
60
|
+
a,
|
61
|
+
{
|
62
|
+
$flexDirection: e ? "column" : "row",
|
63
|
+
$flexGapX: e ? 0.5 : 0.25,
|
64
|
+
$alignItems: "center",
|
65
|
+
$width: "100%",
|
66
|
+
children: [
|
67
|
+
/* @__PURE__ */ t($, { withLoader: !0, src: I, width: l, height: l }),
|
68
|
+
e ? /* @__PURE__ */ t(u, { $progress: r }) : /* @__PURE__ */ c(
|
69
|
+
x,
|
70
|
+
{
|
71
|
+
$renderAs: "ac4-black",
|
72
|
+
$color: r === 100 ? "GREEN_5" : "BLACK_T_60",
|
73
|
+
children: [
|
74
|
+
r,
|
75
|
+
"%"
|
76
|
+
]
|
77
|
+
}
|
78
|
+
)
|
79
|
+
]
|
80
|
+
}
|
81
|
+
)
|
82
|
+
}
|
83
|
+
) }, g);
|
84
|
+
})
|
85
|
+
}
|
86
|
+
) });
|
87
|
+
}
|
88
|
+
);
|
89
|
+
export {
|
90
|
+
B as default
|
91
|
+
};
|
92
|
+
//# sourceMappingURL=milestone-progress-v2.js.map
|
package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"milestone-progress-v2.js","sources":["../../../../../../src/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.tsx"],"sourcesContent":["import type { IMileStoneProgressInfoV2Props } from './types';\nimport type { FC } from 'react';\n\nimport { Fragment, memo } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../../assets/illustrations/illustrations';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Image from '../../../../ui/image/image';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { getSheetCompletionPercentage } from '../milestone-progress/milestone-progress-utils';\nimport * as Styled from './styled';\n\nconst {\n PRACTICED_SHIELD_GREY,\n PRACTICED_SHIELD_GREEN,\n LEARNED_SHIELD_GRAY,\n LEARNED_SHIELD_GREEN,\n MASTERED_SHIELD_GRAY,\n MASTERED_SHIELD_GREEN,\n} = ILLUSTRATIONS;\n\nconst MilestoneProgressInfoV2: FC<IMileStoneProgressInfoV2Props> = memo(\n ({ milestoneId, showProgress, progressInfo }) => {\n const {\n familiar_sheets: familiarSheets = 0,\n proficient_sheets: proficientSheets = 0,\n mastered_sheets: masteredSheets = 0,\n total_core_sheets: totalCoreSheets = 0,\n } = progressInfo || {};\n\n const hasCoreSheets = totalCoreSheets > 0;\n\n const hasCompletedLearningSheets = hasCoreSheets && familiarSheets === totalCoreSheets;\n const hasCompletedPracticeSheets = hasCoreSheets && proficientSheets === totalCoreSheets;\n const hasMasteredAllSheets = hasCoreSheets && masteredSheets === totalCoreSheets;\n\n const badgeSize = showProgress ? 40 : 20;\n const badgesInfo = [\n {\n imageUrl: hasCompletedLearningSheets ? LEARNED_SHIELD_GREEN : LEARNED_SHIELD_GRAY,\n completedSheetsCount: familiarSheets,\n key: 'milestone-widget-learned-badge-data',\n },\n {\n imageUrl: hasCompletedPracticeSheets ? PRACTICED_SHIELD_GREEN : PRACTICED_SHIELD_GREY,\n completedSheetsCount: proficientSheets,\n key: 'milestone-widget-practiced-badge-data',\n },\n {\n imageUrl: hasMasteredAllSheets ? MASTERED_SHIELD_GREEN : MASTERED_SHIELD_GRAY,\n completedSheetsCount: masteredSheets,\n key: 'milestone-widget-mastered-badge-data',\n },\n ];\n\n return (\n <FlexView $flexGapX={2} id={`milestone-progress-${milestoneId}`}>\n <FlexView\n $flexDirection=\"row\"\n $flexGapX={showProgress ? 1.5 : 0.75}\n $flexWrap={!showProgress}\n >\n {badgesInfo.map(badgeData => {\n const { key, imageUrl, completedSheetsCount } = badgeData;\n\n const progressPercentage = getSheetCompletionPercentage(\n completedSheetsCount,\n totalCoreSheets,\n );\n\n return (\n <Fragment key={key}>\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"secondary\"\n tooltipItem={`${progressPercentage}%`}\n hidden={!showProgress}\n >\n <FlexView\n $flexDirection={showProgress ? 'column' : 'row'}\n $flexGapX={showProgress ? 0.5 : 0.25}\n $alignItems=\"center\"\n $width=\"100%\"\n >\n <Image withLoader src={imageUrl} width={badgeSize} height={badgeSize} />\n\n {showProgress ? (\n <Styled.Progress $progress={progressPercentage} />\n ) : (\n <Text\n $renderAs=\"ac4-black\"\n $color={progressPercentage === 100 ? 'GREEN_5' : 'BLACK_T_60'}\n >\n {progressPercentage}%\n </Text>\n )}\n </FlexView>\n </ArrowTooltip>\n </Fragment>\n );\n })}\n </FlexView>\n </FlexView>\n );\n },\n);\n\nexport default MilestoneProgressInfoV2;\n"],"names":["PRACTICED_SHIELD_GREY","PRACTICED_SHIELD_GREEN","LEARNED_SHIELD_GRAY","LEARNED_SHIELD_GREEN","MASTERED_SHIELD_GRAY","MASTERED_SHIELD_GREEN","ILLUSTRATIONS","MilestoneProgressInfoV2","memo","milestoneId","showProgress","progressInfo","familiarSheets","proficientSheets","masteredSheets","totalCoreSheets","hasCoreSheets","hasCompletedLearningSheets","hasCompletedPracticeSheets","hasMasteredAllSheets","badgeSize","badgesInfo","FlexView","jsx","badgeData","key","imageUrl","completedSheetsCount","progressPercentage","getSheetCompletionPercentage","Fragment","ArrowTooltip","jsxs","Image","Styled.Progress","Text"],"mappings":";;;;;;;;;AAaA,MAAM;AAAA,EACJ,uBAAAA;AAAA,EACA,wBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,uBAAAC;AACF,IAAIC,GAEEC,IAA6DC;AAAA,EACjE,CAAC,EAAE,aAAAC,GAAa,cAAAC,GAAc,cAAAC,QAAmB;AACzC,UAAA;AAAA,MACJ,iBAAiBC,IAAiB;AAAA,MAClC,mBAAmBC,IAAmB;AAAA,MACtC,iBAAiBC,IAAiB;AAAA,MAClC,mBAAmBC,IAAkB;AAAA,IAAA,IACnCJ,KAAgB,CAAA,GAEdK,IAAgBD,IAAkB,GAElCE,IAA6BD,KAAiBJ,MAAmBG,GACjEG,IAA6BF,KAAiBH,MAAqBE,GACnEI,IAAuBH,KAAiBF,MAAmBC,GAE3DK,IAAYV,IAAe,KAAK,IAChCW,IAAa;AAAA,MACjB;AAAA,QACE,UAAUJ,IAA6Bd,IAAuBD;AAAA,QAC9D,sBAAsBU;AAAA,QACtB,KAAK;AAAA,MACP;AAAA,MACA;AAAA,QACE,UAAUM,IAA6BjB,IAAyBD;AAAA,QAChE,sBAAsBa;AAAA,QACtB,KAAK;AAAA,MACP;AAAA,MACA;AAAA,QACE,UAAUM,IAAuBd,IAAwBD;AAAA,QACzD,sBAAsBU;AAAA,QACtB,KAAK;AAAA,MACP;AAAA,IAAA;AAGF,6BACGQ,GAAS,EAAA,WAAW,GAAG,IAAI,sBAAsBb,CAAW,IAC3D,UAAA,gBAAAc;AAAA,MAACD;AAAA,MAAA;AAAA,QACC,gBAAe;AAAA,QACf,WAAWZ,IAAe,MAAM;AAAA,QAChC,WAAW,CAACA;AAAA,QAEX,UAAAW,EAAW,IAAI,CAAaG,MAAA;AAC3B,gBAAM,EAAE,KAAAC,GAAK,UAAAC,GAAU,sBAAAC,EAAA,IAAyBH,GAE1CI,IAAqBC;AAAA,YACzBF;AAAA,YACAZ;AAAA,UAAA;AAGF,mCACGe,GACC,EAAA,UAAA,gBAAAP;AAAA,YAACQ;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,UAAS;AAAA,cACT,aAAa,GAAGH,CAAkB;AAAA,cAClC,QAAQ,CAAClB;AAAA,cAET,UAAA,gBAAAsB;AAAA,gBAACV;AAAA,gBAAA;AAAA,kBACC,gBAAgBZ,IAAe,WAAW;AAAA,kBAC1C,WAAWA,IAAe,MAAM;AAAA,kBAChC,aAAY;AAAA,kBACZ,QAAO;AAAA,kBAEP,UAAA;AAAA,oBAAC,gBAAAa,EAAAU,GAAA,EAAM,YAAU,IAAC,KAAKP,GAAU,OAAON,GAAW,QAAQA,EAAW,CAAA;AAAA,oBAErEV,IACE,gBAAAa,EAAAW,GAAA,EAAgB,WAAWN,EAAoB,CAAA,IAEhD,gBAAAI;AAAA,sBAACG;AAAA,sBAAA;AAAA,wBACC,WAAU;AAAA,wBACV,QAAQP,MAAuB,MAAM,YAAY;AAAA,wBAEhD,UAAA;AAAA,0BAAAA;AAAA,0BAAmB;AAAA,wBAAA;AAAA,sBAAA;AAAA,oBACtB;AAAA,kBAAA;AAAA,gBAAA;AAAA,cAEJ;AAAA,YAAA;AAAA,UAAA,KAzBWH,CA2Bf;AAAA,QAAA,CAEH;AAAA,MAAA;AAAA,IAEL,EAAA,CAAA;AAAA,EAEJ;AACF;"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import d from "styled-components";
|
2
|
+
const s = d.div(({ theme: r, $progress: o }) => {
|
3
|
+
const { BLACK_T_15: t, GREEN_5: i, BLACK_T_87: e } = r.colors;
|
4
|
+
return `
|
5
|
+
width: 100%;
|
6
|
+
height: 4px;
|
7
|
+
border-radius: 16px;
|
8
|
+
background-color: ${t};
|
9
|
+
position: relative;
|
10
|
+
|
11
|
+
&::after {
|
12
|
+
content: '';
|
13
|
+
position: absolute;
|
14
|
+
top: 0;
|
15
|
+
width: ${o}%;
|
16
|
+
height: 4px;
|
17
|
+
border-radius: 16px;
|
18
|
+
background-color: ${o === 100 ? i : e}
|
19
|
+
}
|
20
|
+
`;
|
21
|
+
});
|
22
|
+
export {
|
23
|
+
s as Progress
|
24
|
+
};
|
25
|
+
//# sourceMappingURL=styled.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"styled.js","sources":["../../../../../../src/features/milestone/create/comps/milestone-progress-v2/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\ntype TProgressProps = {\n $progress?: number;\n};\n\nconst Progress = styled.div<TProgressProps>(({ theme, $progress }) => {\n const { BLACK_T_15, GREEN_5, BLACK_T_87 } = theme.colors;\n\n return `\n width: 100%;\n height: 4px;\n border-radius: 16px;\n background-color: ${BLACK_T_15};\n position: relative;\n \n &::after {\n content: '';\n position: absolute;\n top: 0;\n width: ${$progress}%;\n height: 4px;\n border-radius: 16px;\n background-color: ${$progress === 100 ? GREEN_5 : BLACK_T_87}\n }\n `;\n});\n\nexport { Progress };\n"],"names":["Progress","styled","theme","$progress","BLACK_T_15","GREEN_5","BLACK_T_87"],"mappings":";AAMA,MAAMA,IAAWC,EAAO,IAAoB,CAAC,EAAE,OAAAC,GAAO,WAAAC,QAAgB;AACpE,QAAM,EAAE,YAAAC,GAAY,SAAAC,GAAS,YAAAC,EAAA,IAAeJ,EAAM;AAE3C,SAAA;AAAA;AAAA;AAAA;AAAA,0BAIiBE,CAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAOnBD,CAAS;AAAA;AAAA;AAAA,4BAGEA,MAAc,MAAME,IAAUC,CAAU;AAAA;AAAA;AAGpE,CAAC;"}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { jsxs as $, jsx as
|
2
|
-
import { memo as q, useState as s, useMemo as f, useCallback as
|
1
|
+
import { jsxs as $, jsx as P } from "react/jsx-runtime";
|
2
|
+
import { memo as q, useState as s, useMemo as f, useCallback as i } from "react";
|
3
3
|
import { EVENTS as z } from "../../../../communication/pub-sub/constants.js";
|
4
4
|
import { useInClassActionDispatcher as B } from "../../../../communication/pub-sub/hooks.js";
|
5
5
|
import G from "../../../../ui/context/context.js";
|
@@ -10,43 +10,45 @@ import X from "../delete-milestone/confirm-delete.js";
|
|
10
10
|
import { useMilestonePatch as Z } from "./api/patch-milestone.js";
|
11
11
|
import ee from "./edit-milestone.js";
|
12
12
|
import { parse as te } from "../../../../../node_modules/date-fns/parse.js";
|
13
|
-
const
|
13
|
+
const v = {
|
14
14
|
DELETE_CONFIRM: "delete_confirm",
|
15
15
|
EDIT: "edit"
|
16
16
|
}, oe = q(
|
17
17
|
({
|
18
|
-
milestoneName:
|
18
|
+
milestoneName: I,
|
19
19
|
milestoneId: e,
|
20
|
-
milestoneDueDate:
|
21
|
-
studentId:
|
22
|
-
isMilestoneChaptersListEditable:
|
20
|
+
milestoneDueDate: u,
|
21
|
+
studentId: E,
|
22
|
+
isMilestoneChaptersListEditable: g,
|
23
23
|
isMilestoneDateEditable: x,
|
24
|
-
isClassOngoing:
|
24
|
+
isClassOngoing: a,
|
25
25
|
onDelete: F,
|
26
|
-
analyticsProps:
|
27
|
-
canDelete:
|
28
|
-
milestoneState:
|
29
|
-
studentClassroomId:
|
30
|
-
courseStream:
|
26
|
+
analyticsProps: _,
|
27
|
+
canDelete: w,
|
28
|
+
milestoneState: A,
|
29
|
+
studentClassroomId: L,
|
30
|
+
courseStream: M
|
31
31
|
}) => {
|
32
|
-
const [D,
|
32
|
+
const [D, O] = s("edit"), [t, R] = s(u), [r, h] = s(!1), [c, C] = s(!1), [l, m] = s(""), o = f(
|
33
33
|
() => Math.floor((/* @__PURE__ */ new Date()).setHours(0, 0, 0, 0) / 1e3),
|
34
34
|
[]
|
35
|
-
),
|
35
|
+
), n = f(
|
36
36
|
() => o + K,
|
37
37
|
[o]
|
38
|
-
), { dispatchInClassAction: T } = B({ studentClassroomId:
|
39
|
-
|
40
|
-
}, [
|
41
|
-
(
|
42
|
-
if (
|
38
|
+
), { dispatchInClassAction: T } = B({ studentClassroomId: L }), V = t !== u, S = i(() => {
|
39
|
+
r && h(!1), c && C(!1);
|
40
|
+
}, [r, c]), k = i(
|
41
|
+
(d) => {
|
42
|
+
if (d) {
|
43
43
|
C(!0);
|
44
44
|
return;
|
45
45
|
}
|
46
46
|
Q({
|
47
47
|
milestone_state_group: "LIVE",
|
48
|
-
|
49
|
-
|
48
|
+
with_plan: !0,
|
49
|
+
course_stream: M,
|
50
|
+
student_id: E,
|
51
|
+
in_class: a
|
50
52
|
}), h(!0), T({
|
51
53
|
eventName: z.MILESTONE_EDITED,
|
52
54
|
eventPayload: {
|
@@ -54,59 +56,59 @@ const P = {
|
|
54
56
|
}
|
55
57
|
});
|
56
58
|
},
|
57
|
-
[T, e,
|
58
|
-
), { patch:
|
59
|
+
[T, a, e, E, M]
|
60
|
+
), { patch: y, isProcessing: b } = Z({
|
59
61
|
onComplete: k
|
60
|
-
}), j =
|
61
|
-
(
|
62
|
-
|
63
|
-
const
|
64
|
-
if (!
|
65
|
-
const
|
66
|
-
|
62
|
+
}), j = i(
|
63
|
+
(d) => {
|
64
|
+
S();
|
65
|
+
const N = d.target.value;
|
66
|
+
if (!N) return;
|
67
|
+
const p = te(N, "yyyy-MM-dd", /* @__PURE__ */ new Date()).getTime() / 1e3;
|
68
|
+
l && p >= o && p < n && m(""), R(p);
|
67
69
|
},
|
68
|
-
[
|
69
|
-
), U =
|
70
|
-
if (t < o || t >
|
71
|
-
t < o ?
|
70
|
+
[l, S, n, o]
|
71
|
+
), U = i(() => {
|
72
|
+
if (t < o || t > n) {
|
73
|
+
t < o ? m("Please enter a future date") : m("Please select a date within the next year");
|
72
74
|
return;
|
73
75
|
}
|
74
|
-
|
76
|
+
y(e, {
|
75
77
|
milestone_date_ts: t
|
76
78
|
});
|
77
79
|
}, [
|
78
80
|
e,
|
79
81
|
t,
|
80
|
-
|
82
|
+
n,
|
81
83
|
o,
|
82
|
-
|
84
|
+
y
|
83
85
|
]), Y = () => {
|
84
|
-
|
86
|
+
O(v.DELETE_CONFIRM);
|
85
87
|
}, H = f(() => ({
|
86
|
-
...
|
88
|
+
..._,
|
87
89
|
milestone_id: e,
|
88
90
|
temporary_milestone_id: e,
|
89
|
-
is_student_class_ongoing:
|
90
|
-
}), [
|
91
|
+
is_student_class_ongoing: a
|
92
|
+
}), [_, a, e]), W = J(H);
|
91
93
|
return /* @__PURE__ */ $(G.Provider, { value: W, children: [
|
92
|
-
D ===
|
93
|
-
D === "edit" && /* @__PURE__ */
|
94
|
+
D === v.DELETE_CONFIRM && /* @__PURE__ */ P(X, { milestoneId: e, onDelete: F }),
|
95
|
+
D === "edit" && /* @__PURE__ */ P(
|
94
96
|
ee,
|
95
97
|
{
|
96
|
-
inputMilestoneName:
|
98
|
+
inputMilestoneName: I,
|
97
99
|
areDateUpdatesDisabled: !x,
|
98
100
|
handleDateChange: j,
|
99
101
|
inputMilestoneDate: t,
|
100
102
|
anyFieldChanged: V,
|
101
103
|
isProcessing: b,
|
102
|
-
isDataPatched:
|
103
|
-
isMilestoneChaptersListEditable:
|
104
|
+
isDataPatched: r,
|
105
|
+
isMilestoneChaptersListEditable: g,
|
104
106
|
onSave: U,
|
105
|
-
isPatchingFailed:
|
107
|
+
isPatchingFailed: c,
|
106
108
|
onDeleteOptionClick: Y,
|
107
|
-
errorMessage:
|
108
|
-
canDelete:
|
109
|
-
milestoneState:
|
109
|
+
errorMessage: l,
|
110
|
+
canDelete: w,
|
111
|
+
milestoneState: A
|
110
112
|
}
|
111
113
|
)
|
112
114
|
] });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/features/milestone/edit/comps/edit-milestone-modal/index.tsx"],"sourcesContent":["import type { IEditMilestoneModalProps } from './edit-milestone-modal-types';\nimport type { ChangeEvent } from 'react';\n\nimport { parse } from 'date-fns';\nimport React, { memo, useCallback, useMemo, useState } from 'react';\n\nimport { EVENTS } from '../../../../communication/pub-sub/constants';\nimport { useInClassActionDispatcher } from '../../../../communication/pub-sub/hooks';\nimport UIContext from '../../../../ui/context/context';\nimport useTrackingContext from '../../../../ui/context/use-tracking-context';\nimport { ONE_YEAR_TIMESTAMP_IN_SECONDS } from '../../../constants';\nimport { invalidateMilestonesData } from '../../../milestone-list-container/api/get-milestones';\nimport ConfirmDelete from '../delete-milestone/confirm-delete';\nimport { useMilestonePatch } from './api/patch-milestone';\nimport EditMilestone from './edit-milestone';\n\nconst VIEWS = {\n DELETE_CONFIRM: 'delete_confirm',\n EDIT: 'edit',\n};\n\n// https://github.com/cuemath/package-leap/issues/409\nconst EditDeleteMilestone: React.FC<IEditMilestoneModalProps> = memo(\n ({\n milestoneName,\n milestoneId,\n milestoneDueDate,\n studentId,\n isMilestoneChaptersListEditable,\n isMilestoneDateEditable,\n isClassOngoing,\n onDelete,\n analyticsProps,\n canDelete,\n milestoneState,\n studentClassroomId,\n courseStream,\n }) => {\n const [view, setView] = useState<(typeof VIEWS)[keyof typeof VIEWS]>('edit');\n\n const [inputMilestoneDate, setMilestoneDate] = useState(milestoneDueDate);\n const [isDataPatched, setIsDataPatched] = useState(false);\n const [isPatchingFailed, setIsPatchingFailed] = useState(false);\n const [errorMessage, setErrorMessage] = useState('');\n const todayTimestampSeconds = useMemo(\n () => Math.floor(new Date().setHours(0, 0, 0, 0) / 1000),\n [],\n );\n const oneYearFutureTimestampSeconds = useMemo(\n () => todayTimestampSeconds + ONE_YEAR_TIMESTAMP_IN_SECONDS,\n [todayTimestampSeconds],\n );\n\n const { dispatchInClassAction } = useInClassActionDispatcher({ studentClassroomId });\n\n const anyFieldChanged = inputMilestoneDate !== milestoneDueDate;\n\n const handleClearState = useCallback(() => {\n if (isDataPatched) {\n setIsDataPatched(false);\n }\n\n if (isPatchingFailed) {\n setIsPatchingFailed(false);\n }\n }, [isDataPatched, isPatchingFailed]);\n\n const handleOnComplete = useCallback(\n (errorMsg: string | null) => {\n if (errorMsg) {\n setIsPatchingFailed(true);\n\n return;\n }\n\n invalidateMilestonesData({\n milestone_state_group: 'LIVE',\n course_stream: courseStream,\n student_id: studentId,\n });\n setIsDataPatched(true);\n dispatchInClassAction({\n eventName: EVENTS.MILESTONE_EDITED,\n eventPayload: {\n milestoneId,\n },\n });\n },\n [dispatchInClassAction, milestoneId, studentId, courseStream],\n );\n\n const { patch: updateMilestone, isProcessing } = useMilestonePatch({\n onComplete: handleOnComplete,\n });\n\n const handleDateChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n handleClearState();\n const value = e.target.value;\n\n if (!value) return;\n\n const timestampInSeconds = parse(value, 'yyyy-MM-dd', new Date()).getTime() / 1000;\n\n if (\n errorMessage &&\n timestampInSeconds >= todayTimestampSeconds &&\n timestampInSeconds < oneYearFutureTimestampSeconds\n ) {\n setErrorMessage('');\n }\n\n setMilestoneDate(timestampInSeconds);\n },\n [errorMessage, handleClearState, oneYearFutureTimestampSeconds, todayTimestampSeconds],\n );\n\n const onSave = useCallback(() => {\n if (\n inputMilestoneDate < todayTimestampSeconds ||\n inputMilestoneDate > oneYearFutureTimestampSeconds\n ) {\n if (inputMilestoneDate < todayTimestampSeconds) {\n setErrorMessage('Please enter a future date');\n } else {\n setErrorMessage('Please select a date within the next year');\n }\n\n return;\n }\n\n updateMilestone(milestoneId, {\n milestone_date_ts: inputMilestoneDate,\n });\n }, [\n milestoneId,\n inputMilestoneDate,\n oneYearFutureTimestampSeconds,\n todayTimestampSeconds,\n updateMilestone,\n ]);\n\n const onDeleteOptionClick = () => {\n setView(VIEWS.DELETE_CONFIRM);\n };\n\n const commonAnalytics = useMemo(() => {\n return {\n ...analyticsProps,\n milestone_id: milestoneId,\n temporary_milestone_id: milestoneId,\n is_student_class_ongoing: isClassOngoing,\n };\n }, [analyticsProps, isClassOngoing, milestoneId]);\n\n const analyticsContext = useTrackingContext(commonAnalytics);\n\n return (\n <UIContext.Provider value={analyticsContext}>\n {view === VIEWS.DELETE_CONFIRM && (\n <ConfirmDelete milestoneId={milestoneId} onDelete={onDelete} />\n )}\n\n {view === 'edit' && (\n <EditMilestone\n inputMilestoneName={milestoneName}\n areDateUpdatesDisabled={!isMilestoneDateEditable}\n handleDateChange={handleDateChange}\n inputMilestoneDate={inputMilestoneDate}\n anyFieldChanged={anyFieldChanged}\n isProcessing={isProcessing}\n isDataPatched={isDataPatched}\n isMilestoneChaptersListEditable={isMilestoneChaptersListEditable}\n onSave={onSave}\n isPatchingFailed={isPatchingFailed}\n onDeleteOptionClick={onDeleteOptionClick}\n errorMessage={errorMessage}\n canDelete={canDelete}\n milestoneState={milestoneState}\n />\n )}\n </UIContext.Provider>\n );\n },\n);\n\nexport default EditDeleteMilestone;\n"],"names":["VIEWS","EditDeleteMilestone","memo","milestoneName","milestoneId","milestoneDueDate","studentId","isMilestoneChaptersListEditable","isMilestoneDateEditable","isClassOngoing","onDelete","analyticsProps","canDelete","milestoneState","studentClassroomId","courseStream","view","setView","useState","inputMilestoneDate","setMilestoneDate","isDataPatched","setIsDataPatched","isPatchingFailed","setIsPatchingFailed","errorMessage","setErrorMessage","todayTimestampSeconds","useMemo","oneYearFutureTimestampSeconds","ONE_YEAR_TIMESTAMP_IN_SECONDS","dispatchInClassAction","useInClassActionDispatcher","anyFieldChanged","handleClearState","useCallback","handleOnComplete","errorMsg","invalidateMilestonesData","EVENTS","updateMilestone","isProcessing","useMilestonePatch","handleDateChange","e","value","timestampInSeconds","parse","onSave","onDeleteOptionClick","commonAnalytics","analyticsContext","useTrackingContext","jsxs","UIContext","jsx","ConfirmDelete","EditMilestone","EditDeleteMilestone$1"],"mappings":";;;;;;;;;;;;AAgBA,MAAMA,IAAQ;AAAA,EACZ,gBAAgB;AAAA,EAChB,MAAM;AACR,GAGMC,KAA0DC;AAAA,EAC9D,CAAC;AAAA,IACC,eAAAC;AAAA,IACA,aAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,iCAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,MACI;AACJ,UAAM,CAACC,GAAMC,CAAO,IAAIC,EAA6C,MAAM,GAErE,CAACC,GAAoBC,CAAgB,IAAIF,EAASb,CAAgB,GAClE,CAACgB,GAAeC,CAAgB,IAAIJ,EAAS,EAAK,GAClD,CAACK,GAAkBC,CAAmB,IAAIN,EAAS,EAAK,GACxD,CAACO,GAAcC,CAAe,IAAIR,EAAS,EAAE,GAC7CS,IAAwBC;AAAA,MAC5B,MAAM,KAAK,OAAM,oBAAI,KAAK,GAAE,SAAS,GAAG,GAAG,GAAG,CAAC,IAAI,GAAI;AAAA,MACvD,CAAC;AAAA,IAAA,GAEGC,IAAgCD;AAAA,MACpC,MAAMD,IAAwBG;AAAA,MAC9B,CAACH,CAAqB;AAAA,IAAA,GAGlB,EAAE,uBAAAI,EAAsB,IAAIC,EAA2B,EAAE,oBAAAlB,EAAoB,CAAA,GAE7EmB,IAAkBd,MAAuBd,GAEzC6B,IAAmBC,EAAY,MAAM;AACzC,MAAId,KACFC,EAAiB,EAAK,GAGpBC,KACFC,EAAoB,EAAK;AAAA,IAC3B,GACC,CAACH,GAAeE,CAAgB,CAAC,GAE9Ba,IAAmBD;AAAA,MACvB,CAACE,MAA4B;AAC3B,YAAIA,GAAU;AACZ,UAAAb,EAAoB,EAAI;AAExB;AAAA,QACF;AAEyB,QAAAc,EAAA;AAAA,UACvB,uBAAuB;AAAA,UACvB,eAAevB;AAAA,UACf,YAAYT;AAAA,QAAA,
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/features/milestone/edit/comps/edit-milestone-modal/index.tsx"],"sourcesContent":["import type { IEditMilestoneModalProps } from './edit-milestone-modal-types';\nimport type { ChangeEvent } from 'react';\n\nimport { parse } from 'date-fns';\nimport React, { memo, useCallback, useMemo, useState } from 'react';\n\nimport { EVENTS } from '../../../../communication/pub-sub/constants';\nimport { useInClassActionDispatcher } from '../../../../communication/pub-sub/hooks';\nimport UIContext from '../../../../ui/context/context';\nimport useTrackingContext from '../../../../ui/context/use-tracking-context';\nimport { ONE_YEAR_TIMESTAMP_IN_SECONDS } from '../../../constants';\nimport { invalidateMilestonesData } from '../../../milestone-list-container/api/get-milestones';\nimport ConfirmDelete from '../delete-milestone/confirm-delete';\nimport { useMilestonePatch } from './api/patch-milestone';\nimport EditMilestone from './edit-milestone';\n\nconst VIEWS = {\n DELETE_CONFIRM: 'delete_confirm',\n EDIT: 'edit',\n};\n\n// https://github.com/cuemath/package-leap/issues/409\nconst EditDeleteMilestone: React.FC<IEditMilestoneModalProps> = memo(\n ({\n milestoneName,\n milestoneId,\n milestoneDueDate,\n studentId,\n isMilestoneChaptersListEditable,\n isMilestoneDateEditable,\n isClassOngoing,\n onDelete,\n analyticsProps,\n canDelete,\n milestoneState,\n studentClassroomId,\n courseStream,\n }) => {\n const [view, setView] = useState<(typeof VIEWS)[keyof typeof VIEWS]>('edit');\n\n const [inputMilestoneDate, setMilestoneDate] = useState(milestoneDueDate);\n const [isDataPatched, setIsDataPatched] = useState(false);\n const [isPatchingFailed, setIsPatchingFailed] = useState(false);\n const [errorMessage, setErrorMessage] = useState('');\n const todayTimestampSeconds = useMemo(\n () => Math.floor(new Date().setHours(0, 0, 0, 0) / 1000),\n [],\n );\n const oneYearFutureTimestampSeconds = useMemo(\n () => todayTimestampSeconds + ONE_YEAR_TIMESTAMP_IN_SECONDS,\n [todayTimestampSeconds],\n );\n\n const { dispatchInClassAction } = useInClassActionDispatcher({ studentClassroomId });\n\n const anyFieldChanged = inputMilestoneDate !== milestoneDueDate;\n\n const handleClearState = useCallback(() => {\n if (isDataPatched) {\n setIsDataPatched(false);\n }\n\n if (isPatchingFailed) {\n setIsPatchingFailed(false);\n }\n }, [isDataPatched, isPatchingFailed]);\n\n const handleOnComplete = useCallback(\n (errorMsg: string | null) => {\n if (errorMsg) {\n setIsPatchingFailed(true);\n\n return;\n }\n\n invalidateMilestonesData({\n milestone_state_group: 'LIVE',\n with_plan: true,\n course_stream: courseStream,\n student_id: studentId,\n in_class: isClassOngoing,\n });\n setIsDataPatched(true);\n dispatchInClassAction({\n eventName: EVENTS.MILESTONE_EDITED,\n eventPayload: {\n milestoneId,\n },\n });\n },\n [dispatchInClassAction, isClassOngoing, milestoneId, studentId, courseStream],\n );\n\n const { patch: updateMilestone, isProcessing } = useMilestonePatch({\n onComplete: handleOnComplete,\n });\n\n const handleDateChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n handleClearState();\n const value = e.target.value;\n\n if (!value) return;\n\n const timestampInSeconds = parse(value, 'yyyy-MM-dd', new Date()).getTime() / 1000;\n\n if (\n errorMessage &&\n timestampInSeconds >= todayTimestampSeconds &&\n timestampInSeconds < oneYearFutureTimestampSeconds\n ) {\n setErrorMessage('');\n }\n\n setMilestoneDate(timestampInSeconds);\n },\n [errorMessage, handleClearState, oneYearFutureTimestampSeconds, todayTimestampSeconds],\n );\n\n const onSave = useCallback(() => {\n if (\n inputMilestoneDate < todayTimestampSeconds ||\n inputMilestoneDate > oneYearFutureTimestampSeconds\n ) {\n if (inputMilestoneDate < todayTimestampSeconds) {\n setErrorMessage('Please enter a future date');\n } else {\n setErrorMessage('Please select a date within the next year');\n }\n\n return;\n }\n\n updateMilestone(milestoneId, {\n milestone_date_ts: inputMilestoneDate,\n });\n }, [\n milestoneId,\n inputMilestoneDate,\n oneYearFutureTimestampSeconds,\n todayTimestampSeconds,\n updateMilestone,\n ]);\n\n const onDeleteOptionClick = () => {\n setView(VIEWS.DELETE_CONFIRM);\n };\n\n const commonAnalytics = useMemo(() => {\n return {\n ...analyticsProps,\n milestone_id: milestoneId,\n temporary_milestone_id: milestoneId,\n is_student_class_ongoing: isClassOngoing,\n };\n }, [analyticsProps, isClassOngoing, milestoneId]);\n\n const analyticsContext = useTrackingContext(commonAnalytics);\n\n return (\n <UIContext.Provider value={analyticsContext}>\n {view === VIEWS.DELETE_CONFIRM && (\n <ConfirmDelete milestoneId={milestoneId} onDelete={onDelete} />\n )}\n\n {view === 'edit' && (\n <EditMilestone\n inputMilestoneName={milestoneName}\n areDateUpdatesDisabled={!isMilestoneDateEditable}\n handleDateChange={handleDateChange}\n inputMilestoneDate={inputMilestoneDate}\n anyFieldChanged={anyFieldChanged}\n isProcessing={isProcessing}\n isDataPatched={isDataPatched}\n isMilestoneChaptersListEditable={isMilestoneChaptersListEditable}\n onSave={onSave}\n isPatchingFailed={isPatchingFailed}\n onDeleteOptionClick={onDeleteOptionClick}\n errorMessage={errorMessage}\n canDelete={canDelete}\n milestoneState={milestoneState}\n />\n )}\n </UIContext.Provider>\n );\n },\n);\n\nexport default EditDeleteMilestone;\n"],"names":["VIEWS","EditDeleteMilestone","memo","milestoneName","milestoneId","milestoneDueDate","studentId","isMilestoneChaptersListEditable","isMilestoneDateEditable","isClassOngoing","onDelete","analyticsProps","canDelete","milestoneState","studentClassroomId","courseStream","view","setView","useState","inputMilestoneDate","setMilestoneDate","isDataPatched","setIsDataPatched","isPatchingFailed","setIsPatchingFailed","errorMessage","setErrorMessage","todayTimestampSeconds","useMemo","oneYearFutureTimestampSeconds","ONE_YEAR_TIMESTAMP_IN_SECONDS","dispatchInClassAction","useInClassActionDispatcher","anyFieldChanged","handleClearState","useCallback","handleOnComplete","errorMsg","invalidateMilestonesData","EVENTS","updateMilestone","isProcessing","useMilestonePatch","handleDateChange","e","value","timestampInSeconds","parse","onSave","onDeleteOptionClick","commonAnalytics","analyticsContext","useTrackingContext","jsxs","UIContext","jsx","ConfirmDelete","EditMilestone","EditDeleteMilestone$1"],"mappings":"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"}
|
@@ -1,18 +1,26 @@
|
|
1
|
-
import { createGetAllAPI as
|
2
|
-
import {
|
3
|
-
import { stringify as
|
4
|
-
const { useGetAll:
|
1
|
+
import { createGetAllAPI as a } from "@cuemath/rest-api";
|
2
|
+
import { BASE_URL_V3 as l } from "../../../../constants/api.js";
|
3
|
+
import { stringify as n } from "../../../../helpers/query-string.js";
|
4
|
+
const { useGetAll: c, invalidate: p } = a({
|
5
5
|
getURL: (e) => {
|
6
|
-
const {
|
7
|
-
|
6
|
+
const {
|
7
|
+
student_id: t,
|
8
|
+
course_stream: s,
|
9
|
+
milestone_state_group: r,
|
10
|
+
with_plan: i,
|
11
|
+
in_class: o = !1
|
12
|
+
} = e;
|
13
|
+
return `${l}/user-milestones/users/${t}/course-streams/${s}/?${n(
|
8
14
|
{
|
9
|
-
milestone_state_group:
|
15
|
+
milestone_state_group: r,
|
16
|
+
with_plan: i,
|
17
|
+
in_class: o
|
10
18
|
}
|
11
19
|
)}`;
|
12
20
|
}
|
13
21
|
});
|
14
22
|
export {
|
15
|
-
|
16
|
-
|
23
|
+
p as invalidateMilestonesData,
|
24
|
+
c as useGetAllMilestonesdata
|
17
25
|
};
|
18
26
|
//# sourceMappingURL=get-milestones.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"get-milestones.js","sources":["../../../../../src/features/milestone/milestone-list-container/api/get-milestones.ts"],"sourcesContent":["import type { TCourseStream } from '../../create/milestone-create-types';\nimport type { IMilestoneData } from '../milestone-list/milestone-list-types';\n\nimport { createGetAllAPI } from '@cuemath/rest-api';\n\nimport {
|
1
|
+
{"version":3,"file":"get-milestones.js","sources":["../../../../../src/features/milestone/milestone-list-container/api/get-milestones.ts"],"sourcesContent":["import type { TCourseStream } from '../../create/milestone-create-types';\nimport type { IMilestoneData } from '../milestone-list/milestone-list-types';\n\nimport { createGetAllAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V3 } from '../../../../constants/api';\nimport { stringify } from '../../../../helpers/query-string';\n\ntype TQuery = {\n milestone_state_group: 'ALL' | 'DRAFT' | 'STUDENT_ALL' | 'LIVE' | 'STUDENT_LIVE' | 'INACTIVE';\n with_plan: boolean;\n course_stream: TCourseStream;\n student_id: string;\n in_class?: boolean;\n};\n\nconst { useGetAll: useGetAllMilestonesdata, invalidate: invalidateMilestonesData } =\n createGetAllAPI<IMilestoneData, TQuery>({\n getURL: query => {\n const {\n student_id,\n course_stream,\n milestone_state_group,\n with_plan,\n in_class = false,\n } = query;\n\n return `${BASE_URL_V3}/user-milestones/users/${student_id}/course-streams/${course_stream}/?${stringify(\n {\n milestone_state_group,\n with_plan,\n in_class,\n },\n )}`;\n },\n });\n\nexport { useGetAllMilestonesdata, invalidateMilestonesData };\n"],"names":["useGetAllMilestonesdata","invalidateMilestonesData","createGetAllAPI","query","student_id","course_stream","milestone_state_group","with_plan","in_class","BASE_URL_V3","stringify"],"mappings":";;;AAgBA,MAAM,EAAE,WAAWA,GAAyB,YAAYC,EAAA,IACtDC,EAAwC;AAAA,EACtC,QAAQ,CAASC,MAAA;AACT,UAAA;AAAA,MACJ,YAAAC;AAAA,MACA,eAAAC;AAAA,MACA,uBAAAC;AAAA,MACA,WAAAC;AAAA,MACA,UAAAC,IAAW;AAAA,IACT,IAAAL;AAEJ,WAAO,GAAGM,CAAW,0BAA0BL,CAAU,mBAAmBC,CAAa,KAAKK;AAAA,MAC5F;AAAA,QACE,uBAAAJ;AAAA,QACA,WAAAC;AAAA,QACA,UAAAC;AAAA,MACF;AAAA,IACD,CAAA;AAAA,EACH;AACF,CAAC;"}
|