@cuemath/leap 2.8.61-as1 → 2.8.61-as11
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/line-icons/icons/chevron-left.js.map +1 -1
- package/dist/assets/line-icons/icons/chevron-right.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js +23 -22
- 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 +88 -74
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapters-list.js +17 -18
- package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +39 -39
- package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js +32 -28
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js +22 -22
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +6 -6
- package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +70 -71
- package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/chapters-v2/constants/node-constants.js +0 -1
- package/dist/features/chapters-v2/constants/node-constants.js.map +1 -1
- package/dist/features/chapters-v2/utils/index.js +4 -4
- package/dist/features/chapters-v2/utils/index.js.map +1 -1
- package/dist/features/chapters-v2/utils/node-card-utils.js +59 -42
- package/dist/features/chapters-v2/utils/node-card-utils.js.map +1 -1
- package/dist/features/communication/pub-sub/constants.js +5 -2
- package/dist/features/communication/pub-sub/constants.js.map +1 -1
- package/dist/features/homework/card-menu-options.js +35 -20
- package/dist/features/homework/card-menu-options.js.map +1 -1
- package/dist/features/homework/homework-card.js +241 -161
- package/dist/features/homework/homework-card.js.map +1 -1
- package/dist/features/homework/hw-card-list/api/get-homeworks.js +10 -0
- package/dist/features/homework/hw-card-list/api/get-homeworks.js.map +1 -0
- package/dist/features/homework/hw-card-list/hw-card-list-styled.js +53 -0
- package/dist/features/homework/hw-card-list/hw-card-list-styled.js.map +1 -0
- package/dist/features/homework/hw-card-list/hw-card-list.js +164 -0
- package/dist/features/homework/hw-card-list/hw-card-list.js.map +1 -0
- package/dist/features/homework/node-progress.js +29 -0
- package/dist/features/homework/node-progress.js.map +1 -0
- package/dist/features/homework/styles.js +41 -38
- package/dist/features/homework/styles.js.map +1 -1
- package/dist/features/milestone/create/comps/chapter-item/chapter-item.js +42 -49
- package/dist/features/milestone/create/comps/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js +14 -20
- package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js.map +1 -1
- package/dist/features/milestone/create/comps/sheets-list/sheets-list.js +26 -50
- package/dist/features/milestone/create/comps/sheets-list/sheets-list.js.map +1 -1
- package/dist/features/milestone/create/utils/index.js +33 -38
- package/dist/features/milestone/create/utils/index.js.map +1 -1
- package/dist/features/milestone/edit/goal-edit-helpers.js +50 -53
- package/dist/features/milestone/edit/goal-edit-helpers.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +10 -10
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js +17 -15
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js +10 -0
- package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +1 -0
- package/dist/features/recent-chapters/recent-chapters.js +17 -23
- package/dist/features/recent-chapters/recent-chapters.js.map +1 -1
- package/dist/features/sheet-v2/resource-list/resource-list.js +12 -10
- package/dist/features/sheet-v2/resource-list/resource-list.js.map +1 -1
- package/dist/index.d.ts +54 -24
- package/dist/index.js +41 -37
- package/dist/index.js.map +1 -1
- package/dist/node_modules/date-fns/differenceInDays.js +17 -0
- package/dist/node_modules/date-fns/differenceInDays.js.map +1 -0
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"chapter-item.js","sources":["../../../../../../src/features/milestone/create/comps/chapter-item/chapter-item.tsx"],"sourcesContent":["import type { IChapterItem, ISheetsListPosition } from './chapter-item-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useRef, useState } from 'react';\n\nimport { SHEET_STATE } from '../../../../sheets/constants/sheet';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport useContextMenuClickHandler from '../../../../ui/hooks/use-context-menu-click-handler';\nimport Image from '../../../../ui/image/image';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport SheetsList from '../sheets-list/sheets-list';\nimport * as Styled from './chapter-item-styled';\n\nconst progressVisibleStates = [\n 'STARTED',\n SHEET_STATE.FAMILIAR,\n SHEET_STATE.PROFICIENT,\n SHEET_STATE.MASTERED,\n];\n\nconst ChapterItemV2: FC<IChapterItem> = memo(props => {\n const { chapterData, onChapterItemClick, isThisPrimaryChapter, showChapterTags, canAddChapter } =\n props;\n const {\n name,\n image_url: imageUrl,\n added,\n learning_sheet_data: learningSheetData,\n
|
1
|
+
{"version":3,"file":"chapter-item.js","sources":["../../../../../../src/features/milestone/create/comps/chapter-item/chapter-item.tsx"],"sourcesContent":["import type { IChapterItem, ISheetsListPosition } from './chapter-item-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useRef, useState } from 'react';\n\nimport { SHEET_STATE } from '../../../../sheets/constants/sheet';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport useContextMenuClickHandler from '../../../../ui/hooks/use-context-menu-click-handler';\nimport Image from '../../../../ui/image/image';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport SheetsList from '../sheets-list/sheets-list';\nimport * as Styled from './chapter-item-styled';\n\nconst progressVisibleStates = [\n 'STARTED',\n SHEET_STATE.FAMILIAR,\n SHEET_STATE.PROFICIENT,\n SHEET_STATE.MASTERED,\n];\n\nconst ChapterItemV2: FC<IChapterItem> = memo(props => {\n const { chapterData, onChapterItemClick, isThisPrimaryChapter, showChapterTags, canAddChapter } =\n props;\n const {\n name,\n image_url: imageUrl,\n added,\n learning_sheet_data: learningSheetData,\n id: chapterId,\n chapter_tags: chapterTags,\n state,\n } = chapterData;\n\n const showProgress =\n state && progressVisibleStates.includes(state) && learningSheetData.length > 0;\n const isMastered = state === 'MASTERED';\n\n const [sheetsListPositionCoordinates, setSheetsListPositionCoordinates] =\n useState<ISheetsListPosition | null>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const handleSetCoordinates = useCallback(() => {\n const { current } = containerRef;\n\n if (current) {\n const boundingClientRect = current.children[0]?.getBoundingClientRect();\n\n if (boundingClientRect) {\n const viewportWidth = window.innerWidth;\n const viewportHeight = window.innerHeight;\n\n const positions: ISheetsListPosition = {};\n\n //* 288 (Width of card) + 8 (left position) = 296\n if (boundingClientRect.left + 296 < viewportWidth) {\n positions.left = boundingClientRect.left;\n } else {\n positions.left = boundingClientRect.left + 20 - 296;\n }\n\n //* 252 (Max height of card)\n if (boundingClientRect.top + 252 < viewportHeight) {\n positions.top = boundingClientRect.top + 20;\n } else {\n positions.bottom = viewportHeight - boundingClientRect.top + 8;\n }\n\n if (Object.keys(positions).length) {\n setSheetsListPositionCoordinates({ ...positions });\n }\n }\n }\n }, [setSheetsListPositionCoordinates, containerRef]);\n\n const {\n menuVisible,\n onMenuClick: onMenuClick,\n hideMenu,\n } = useContextMenuClickHandler(containerRef, handleSetCoordinates);\n\n const handleOnSheetsView = useCallback(() => {\n if (!menuVisible) {\n onMenuClick();\n } else {\n hideMenu();\n }\n }, [onMenuClick, hideMenu, menuVisible]);\n\n const handleOnChapterItemClick = useCallback(() => {\n if (!canAddChapter) return null;\n\n onChapterItemClick(chapterId);\n }, [canAddChapter, chapterId, onChapterItemClick]);\n\n return (\n <FlexView $flexGap={4} $position=\"relative\">\n <Styled.ChapterInfoWrapper ref={containerRef} onClick={handleOnSheetsView}>\n <Styled.ChapterInfoIcon className=\"goal-chapter-info-icon\" />\n {menuVisible && (\n <Styled.SheetsListWrapper\n $top={sheetsListPositionCoordinates?.top}\n $left={sheetsListPositionCoordinates?.left}\n $bottom={sheetsListPositionCoordinates?.bottom}\n >\n <SheetsList learningSheetData={learningSheetData} />\n </Styled.SheetsListWrapper>\n )}\n </Styled.ChapterInfoWrapper>\n\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n tooltipItem=\"Duplicates can’t be added\"\n hidden={!isThisPrimaryChapter}\n >\n <Styled.ChapterListWrapper\n $widthX={9.5}\n $heightX={8.875}\n $gapX={1}\n $gutterX={1}\n $flexGap={12}\n $position=\"relative\"\n $alignItems=\"center\"\n $selectable={canAddChapter}\n $borderColor={added ? 'BLACK_T_87' : 'WHITE_5'}\n $background={added ? 'WHITE_3' : 'WHITE_1'}\n onClick={handleOnChapterItemClick}\n >\n <FlexView $position=\"relative\">\n {showProgress && (\n <Styled.ChapterProgressSVG width=\"62px\" height=\"62px\">\n <Styled.ChapterProgressSVGCircle $progress={0} r=\"30\" cx=\"31\" cy=\"31\" />\n <Styled.ChapterProgressSVGCircle\n $progressCircle\n $progressBackground={isMastered ? 'GREEN_5' : 'BLACK'}\n $progress={isMastered ? 360 : 95}\n r=\"30\"\n cx=\"31\"\n cy=\"31\"\n />\n </Styled.ChapterProgressSVG>\n )}\n <Image\n src={imageUrl || ''}\n alt={name}\n withLoader\n width={56}\n height={56}\n borderRadius={50}\n />\n </FlexView>\n\n <Styled.StyledText $renderAs=\"ab3\" $align=\"center\">\n {name}\n </Styled.StyledText>\n </Styled.ChapterListWrapper>\n </ArrowTooltip>\n\n {showChapterTags && (\n <Styled.StyledText $renderAs=\"ab3\" $lineClampNo={1} $color=\"BLACK_T_60\">\n {chapterTags}\n </Styled.StyledText>\n )}\n </FlexView>\n );\n});\n\nexport default ChapterItemV2;\n"],"names":["progressVisibleStates","SHEET_STATE","ChapterItemV2","memo","props","chapterData","onChapterItemClick","isThisPrimaryChapter","showChapterTags","canAddChapter","name","imageUrl","added","learningSheetData","chapterId","chapterTags","state","showProgress","isMastered","sheetsListPositionCoordinates","setSheetsListPositionCoordinates","useState","containerRef","useRef","handleSetCoordinates","useCallback","current","boundingClientRect","_a","viewportWidth","viewportHeight","positions","menuVisible","onMenuClick","hideMenu","useContextMenuClickHandler","handleOnSheetsView","handleOnChapterItemClick","jsxs","FlexView","Styled.ChapterInfoWrapper","jsx","Styled.ChapterInfoIcon","Styled.SheetsListWrapper","SheetsList","ArrowTooltip","Styled.ChapterListWrapper","Styled.ChapterProgressSVG","Styled.ChapterProgressSVGCircle","Image","Styled.StyledText"],"mappings":"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"}
|
@@ -1,27 +1,23 @@
|
|
1
|
-
import
|
2
|
-
import
|
3
|
-
import
|
4
|
-
import
|
5
|
-
const
|
6
|
-
const { layout:
|
1
|
+
import t from "styled-components";
|
2
|
+
import p from "../../../../../assets/line-icons/icons/chevron-right.js";
|
3
|
+
import l from "../../../../ui/layout/flex-view.js";
|
4
|
+
import x from "../../../../ui/text/text.js";
|
5
|
+
const a = t(l)(({ theme: o }) => {
|
6
|
+
const { layout: r, colors: e } = o, { BLACK_T_38: i } = e;
|
7
7
|
return `
|
8
|
-
max-height: ${
|
9
|
-
box-shadow: 0px 6px 12px 0px ${
|
8
|
+
max-height: ${r.gutter * 15.75}px;
|
9
|
+
box-shadow: 0px 6px 12px 0px ${i};
|
10
10
|
overflow-y: auto;
|
11
11
|
`;
|
12
|
-
})
|
13
|
-
|
14
|
-
|
15
|
-
&:hover {
|
16
|
-
background: ${o.colors.BLACK_4};
|
17
|
-
}
|
18
|
-
`), u = r(n)(({ theme: o }) => `
|
12
|
+
});
|
13
|
+
t(p)(({ theme: o }) => `
|
19
14
|
cursor: pointer;
|
20
15
|
|
21
16
|
path {
|
22
17
|
stroke: ${o.colors.WHITE_T_87};
|
23
18
|
}
|
24
|
-
`)
|
19
|
+
`);
|
20
|
+
const w = t(x)(() => `
|
25
21
|
display: -webkit-box;
|
26
22
|
-webkit-box-orient: vertical;
|
27
23
|
-webkit-line-clamp: 2;
|
@@ -29,9 +25,7 @@ const h = r(t)(({ theme: o }) => {
|
|
29
25
|
overflow: hidden;
|
30
26
|
`);
|
31
27
|
export {
|
32
|
-
|
33
|
-
|
34
|
-
d as StyledText,
|
35
|
-
h as Wrapper
|
28
|
+
w as StyledText,
|
29
|
+
a as Wrapper
|
36
30
|
};
|
37
31
|
//# sourceMappingURL=sheets-list-styled.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sheets-list-styled.js","sources":["../../../../../../src/features/milestone/create/comps/sheets-list/sheets-list-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport ChevronRight from '../../../../../assets/line-icons/icons/chevron-right';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\n\nconst Wrapper = styled(FlexView)(({ theme }) => {\n const { layout, colors } = theme;\n const { BLACK_T_38 } = colors;\n\n return `\n max-height: ${layout.gutter * 15.75}px;\n box-shadow: 0px 6px 12px 0px ${BLACK_T_38};\n overflow-y: auto;\n `;\n});\n\nconst
|
1
|
+
{"version":3,"file":"sheets-list-styled.js","sources":["../../../../../../src/features/milestone/create/comps/sheets-list/sheets-list-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport ChevronRight from '../../../../../assets/line-icons/icons/chevron-right';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\n\nconst Wrapper = styled(FlexView)(({ theme }) => {\n const { layout, colors } = theme;\n const { BLACK_T_38 } = colors;\n\n return `\n max-height: ${layout.gutter * 15.75}px;\n box-shadow: 0px 6px 12px 0px ${BLACK_T_38};\n overflow-y: auto;\n `;\n});\n\nconst StyledChevronRight = styled(ChevronRight)(({ theme }) => {\n return `\n cursor: pointer;\n\n path {\n stroke: ${theme.colors.WHITE_T_87};\n }\n `;\n});\n\nconst StyledText = styled(Text)(() => {\n return `\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n text-overflow: ellipsis;\n overflow: hidden;\n `;\n});\n\nexport { Wrapper, StyledChevronRight, StyledText };\n"],"names":["Wrapper","styled","FlexView","theme","layout","colors","BLACK_T_38","ChevronRight","StyledText","Text"],"mappings":";;;;AAMA,MAAMA,IAAUC,EAAOC,CAAQ,EAAE,CAAC,EAAE,OAAAC,QAAY;AACxC,QAAA,EAAE,QAAAC,GAAQ,QAAAC,EAAW,IAAAF,GACrB,EAAE,YAAAG,EAAe,IAAAD;AAEhB,SAAA;AAAA,kBACSD,EAAO,SAAS,KAAK;AAAA,mCACJE,CAAU;AAAA;AAAA;AAG7C,CAAC;AAE0BL,EAAOM,CAAY,EAAE,CAAC,EAAE,OAAAJ,QAC1C;AAAA;AAAA;AAAA;AAAA,gBAIOA,EAAM,OAAO,UAAU;AAAA;AAAA,GAGtC;AAED,MAAMK,IAAaP,EAAOQ,CAAI,EAAE,MACvB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAOR;"}
|
@@ -1,55 +1,31 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import
|
4
|
-
import
|
5
|
-
|
6
|
-
const
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
1
|
+
import { jsx as e, jsxs as o } from "react/jsx-runtime";
|
2
|
+
import { memo as c } from "react";
|
3
|
+
import n from "../../../../ui/layout/flex-view.js";
|
4
|
+
import { Wrapper as m, StyledText as $ } from "./sheets-list-styled.js";
|
5
|
+
const f = c(({ learningSheetData: i }) => /* @__PURE__ */ e(m, { $widthX: 18, $background: "BLACK_2", $borderColor: "WHITE_T_38", $gapX: 0.5, children: i.map((l, r) => {
|
6
|
+
const { name: t } = l;
|
7
|
+
return /* @__PURE__ */ e(
|
8
|
+
n,
|
9
|
+
{
|
10
|
+
$flexDirection: "row",
|
11
|
+
$alignItems: "center",
|
12
|
+
$gutterX: 1,
|
13
|
+
$gapX: 0.5,
|
14
|
+
$flexGap: 8,
|
15
|
+
$width: "100%",
|
16
|
+
$justifyContent: "space-between",
|
17
|
+
children: /* @__PURE__ */ o(n, { $flexDirection: "row", $flexColumnGap: 4, $widthX: 14.25, children: [
|
18
|
+
/* @__PURE__ */ o($, { $renderAs: "ub3", $color: "WHITE_T_87", children: [
|
19
|
+
r + 1,
|
20
|
+
"."
|
21
|
+
] }),
|
22
|
+
/* @__PURE__ */ e($, { $renderAs: "ub3", $color: "WHITE_T_87", children: t })
|
23
|
+
] })
|
12
24
|
},
|
13
|
-
|
25
|
+
`${t}_${r}`
|
14
26
|
);
|
15
|
-
|
16
|
-
s.map((l, o) => {
|
17
|
-
const { title: e, learnosityRef: t } = l;
|
18
|
-
return /* @__PURE__ */ r(
|
19
|
-
f,
|
20
|
-
{
|
21
|
-
$flexDirection: "row",
|
22
|
-
$alignItems: "center",
|
23
|
-
$gutterX: 1,
|
24
|
-
$gapX: 0.5,
|
25
|
-
$flexGap: 8,
|
26
|
-
$width: "100%",
|
27
|
-
$justifyContent: "space-between",
|
28
|
-
onClick: (n) => d(n, t, e),
|
29
|
-
children: [
|
30
|
-
/* @__PURE__ */ r(c, { $flexDirection: "row", $flexColumnGap: 4, $widthX: 14.25, children: [
|
31
|
-
/* @__PURE__ */ r(a, { $renderAs: "ub3", $color: "WHITE_T_87", children: [
|
32
|
-
o + 1,
|
33
|
-
"."
|
34
|
-
] }),
|
35
|
-
/* @__PURE__ */ $(a, { $renderAs: "ub3", $color: "WHITE_T_87", children: e })
|
36
|
-
] }),
|
37
|
-
t && /* @__PURE__ */ $(_, { width: 20, height: 20 })
|
38
|
-
]
|
39
|
-
},
|
40
|
-
`${e}_${o}`
|
41
|
-
);
|
42
|
-
}),
|
43
|
-
i > 0 && /* @__PURE__ */ $(c, { $flexDirection: "row", $gutterX: 1, $gapX: 0.5, $widthX: 14.25, children: /* @__PURE__ */ r(a, { $renderAs: "ub3", $color: "WHITE_T_60", children: [
|
44
|
-
"+",
|
45
|
-
i,
|
46
|
-
" supplementary",
|
47
|
-
" ",
|
48
|
-
p.pluralize(i, "resource")
|
49
|
-
] }) })
|
50
|
-
] });
|
51
|
-
});
|
27
|
+
}) }));
|
52
28
|
export {
|
53
|
-
|
29
|
+
f as default
|
54
30
|
};
|
55
31
|
//# sourceMappingURL=sheets-list.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sheets-list.js","sources":["../../../../../../src/features/milestone/create/comps/sheets-list/sheets-list.tsx"],"sourcesContent":["import type { ISheetsListProps } from './sheets-list-type';\nimport type { FC } from 'react';\n\nimport {
|
1
|
+
{"version":3,"file":"sheets-list.js","sources":["../../../../../../src/features/milestone/create/comps/sheets-list/sheets-list.tsx"],"sourcesContent":["import type { ISheetsListProps } from './sheets-list-type';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport FlexView from '../../../../ui/layout/flex-view';\nimport * as Styled from './sheets-list-styled';\n\nconst SheetsList: FC<ISheetsListProps> = memo(({ learningSheetData }) => {\n return (\n <Styled.Wrapper $widthX={18} $background=\"BLACK_2\" $borderColor=\"WHITE_T_38\" $gapX={0.5}>\n {learningSheetData.map((sheetData, idx) => {\n const { name } = sheetData;\n\n return (\n <FlexView\n key={`${name}_${idx}`}\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $gutterX={1}\n $gapX={0.5}\n $flexGap={8}\n $width=\"100%\"\n $justifyContent=\"space-between\"\n >\n <FlexView $flexDirection=\"row\" $flexColumnGap={4} $widthX={14.25}>\n <Styled.StyledText $renderAs=\"ub3\" $color=\"WHITE_T_87\">\n {idx + 1}.\n </Styled.StyledText>\n <Styled.StyledText $renderAs=\"ub3\" $color=\"WHITE_T_87\">\n {name}\n </Styled.StyledText>\n </FlexView>\n </FlexView>\n );\n })}\n </Styled.Wrapper>\n );\n});\n\nexport default SheetsList;\n"],"names":["SheetsList","memo","learningSheetData","Styled.Wrapper","sheetData","idx","name","jsx","FlexView","jsxs","Styled.StyledText"],"mappings":";;;;AAQA,MAAMA,IAAmCC,EAAK,CAAC,EAAE,mBAAAC,0BAE5CC,GAAA,EAAe,SAAS,IAAI,aAAY,WAAU,cAAa,cAAa,OAAO,KACjF,UAAAD,EAAkB,IAAI,CAACE,GAAWC,MAAQ;AACnC,QAAA,EAAE,MAAAC,EAAS,IAAAF;AAGf,SAAA,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MAEC,gBAAe;AAAA,MACf,aAAY;AAAA,MACZ,UAAU;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,MACV,QAAO;AAAA,MACP,iBAAgB;AAAA,MAEhB,4BAACA,GAAS,EAAA,gBAAe,OAAM,gBAAgB,GAAG,SAAS,OACzD,UAAA;AAAA,QAAA,gBAAAC,EAACC,GAAA,EAAkB,WAAU,OAAM,QAAO,cACvC,UAAA;AAAA,UAAML,IAAA;AAAA,UAAE;AAAA,QAAA,GACX;AAAA,QACA,gBAAAE,EAACG,GAAA,EAAkB,WAAU,OAAM,QAAO,cACvC,UACHJ,GAAA;AAAA,MAAA,GACF;AAAA,IAAA;AAAA,IAhBK,GAAGA,CAAI,IAAID,CAAG;AAAA,EAAA;AAmBxB,CAAA,EACH,CAAA,CAEH;"}
|
@@ -1,57 +1,52 @@
|
|
1
|
-
const h = (
|
2
|
-
|
3
|
-
|
4
|
-
})), f = (t, a = !1) => t.map((e) => {
|
1
|
+
const h = (r) => r.map(({ name: t }) => ({
|
2
|
+
name: t
|
3
|
+
})), f = (r, t = !1) => r.map((a) => {
|
5
4
|
const {
|
6
5
|
id: n,
|
7
6
|
code: o,
|
8
|
-
chapter_code:
|
7
|
+
chapter_code: e,
|
9
8
|
image_url: s,
|
10
9
|
name: i,
|
11
10
|
chapter_tags: d,
|
12
|
-
state:
|
13
|
-
recommended:
|
14
|
-
is_puzzle_chapter:
|
15
|
-
|
16
|
-
|
17
|
-
} =
|
11
|
+
state: l,
|
12
|
+
recommended: p,
|
13
|
+
is_puzzle_chapter: c,
|
14
|
+
program_id: g,
|
15
|
+
blocks: u
|
16
|
+
} = a;
|
18
17
|
return {
|
19
18
|
id: n,
|
20
|
-
code: o ||
|
21
|
-
chapter_code:
|
19
|
+
code: o || e,
|
20
|
+
chapter_code: e,
|
22
21
|
image_url: s,
|
23
22
|
name: i,
|
24
23
|
chapter_tags: d,
|
25
|
-
state:
|
26
|
-
recommended:
|
27
|
-
added: !
|
28
|
-
program_id:
|
29
|
-
is_puzzle_chapter:
|
30
|
-
learning_sheet_data:
|
31
|
-
total_supplementary_sheets: h(
|
32
|
-
l.supplementary_sheets_grouped
|
33
|
-
)
|
24
|
+
state: l,
|
25
|
+
recommended: p,
|
26
|
+
added: !t,
|
27
|
+
program_id: g,
|
28
|
+
is_puzzle_chapter: c,
|
29
|
+
learning_sheet_data: h(u)
|
34
30
|
};
|
35
|
-
}),
|
36
|
-
const
|
37
|
-
|
38
|
-
|
31
|
+
}), _ = (r) => {
|
32
|
+
const t = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Set();
|
33
|
+
r && r.forEach(({ board: e, grade: s }) => {
|
34
|
+
t.add(e), a.add(s);
|
39
35
|
});
|
40
|
-
const n = Array.from(
|
41
|
-
id:
|
42
|
-
label:
|
43
|
-
})), o = Array.from(
|
44
|
-
id:
|
45
|
-
label:
|
36
|
+
const n = Array.from(t, (e) => ({
|
37
|
+
id: e,
|
38
|
+
label: e
|
39
|
+
})), o = Array.from(a, (e) => ({
|
40
|
+
id: e,
|
41
|
+
label: e
|
46
42
|
}));
|
47
43
|
return { boardOptions: n, gradeOptions: o };
|
48
|
-
},
|
49
|
-
to create your personalized learning plan!` :
|
44
|
+
}, b = (r, t, a, n) => r ? "No results. Please clear the filters" : n === "STUDENT" ? `Waiting for your teacher
|
45
|
+
to create your personalized learning plan!` : t ? `Publish ${a}'s draft goals or set new ones to build their learning plan.` : `Create ${a}'s learning plan by adding a goal`;
|
50
46
|
export {
|
51
|
-
|
47
|
+
_ as getFilterOptions,
|
52
48
|
f as getFormChapters,
|
53
|
-
|
54
|
-
|
55
|
-
h as getTotalSupplementarySheetCount
|
49
|
+
h as getLearningSheetData,
|
50
|
+
b as getNoMilestoneTitle
|
56
51
|
};
|
57
52
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/features/milestone/create/utils/index.ts"],"sourcesContent":["import type { IMilestoneData } from '../../milestone-list-container/milestone-list/milestone-list-types';\nimport type { IChapter, IChapterModel } from '../comps/chapter-item/chapter-item-types';\nimport type { IMilestoneFormData } from '../milestone-create-types';\nimport type { TRecommendedChaptersQuery } from '../types';\n\n//TODO: refactor conditions when all are clear\nconst createChaptersListQueryParams = (formData: IMilestoneFormData): TRecommendedChaptersQuery => {\n const { chapterGoalCategory } = formData;\n const { program_code: programCode } = chapterGoalCategory?.primaryGoalCategory || {};\n\n const queryParams: TRecommendedChaptersQuery = {\n filter_type: 'PROGRAM_CODE',\n program_code: programCode,\n };\n\n return queryParams;\n};\n\nconst
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/features/milestone/create/utils/index.ts"],"sourcesContent":["import type { IMilestoneData } from '../../milestone-list-container/milestone-list/milestone-list-types';\nimport type { IChapter, IChapterModel } from '../comps/chapter-item/chapter-item-types';\nimport type { IMilestoneFormData } from '../milestone-create-types';\nimport type { TRecommendedChaptersQuery } from '../types';\n\n//TODO: refactor conditions when all are clear\nconst createChaptersListQueryParams = (formData: IMilestoneFormData): TRecommendedChaptersQuery => {\n const { chapterGoalCategory } = formData;\n const { program_code: programCode } = chapterGoalCategory?.primaryGoalCategory || {};\n\n const queryParams: TRecommendedChaptersQuery = {\n filter_type: 'PROGRAM_CODE',\n program_code: programCode,\n };\n\n return queryParams;\n};\n\nconst getLearningSheetData = (blocks: IChapterModel['blocks']) => {\n return blocks.map(({ name }) => ({\n name,\n }));\n};\n\nconst getFormChapters = (chapters: IChapterModel[], editMode = false): IChapter[] => {\n return chapters.map(chapter => {\n const {\n id,\n code,\n chapter_code,\n image_url,\n name,\n chapter_tags,\n state,\n recommended,\n is_puzzle_chapter: isPuzzleChapter,\n program_id: programId,\n blocks,\n } = chapter;\n\n return {\n id,\n code: code || chapter_code,\n chapter_code,\n image_url,\n name,\n chapter_tags,\n state,\n recommended,\n added: !editMode,\n program_id: programId,\n is_puzzle_chapter: isPuzzleChapter,\n learning_sheet_data: getLearningSheetData(blocks),\n };\n });\n};\n\nconst getFilterOptions = (milestones: IMilestoneData[] | undefined) => {\n const boardSet = new Set<string>();\n const gradeSet = new Set<string>();\n\n if (milestones) {\n milestones.forEach(({ board, grade }) => {\n boardSet.add(board);\n gradeSet.add(grade);\n });\n }\n\n const bdOptions: { id: string; label: string }[] = Array.from(boardSet, item => ({\n id: item,\n label: item,\n }));\n\n const grOptions: { id: string; label: string }[] = Array.from(gradeSet, item => ({\n id: item,\n label: item,\n }));\n\n return { boardOptions: bdOptions, gradeOptions: grOptions };\n};\n\nconst getNoMilestoneTitle = (\n isFiltersAdded: boolean,\n isDraftMilestonePresent: boolean,\n studentName: string,\n userType: string,\n) => {\n if (isFiltersAdded) {\n return 'No results. Please clear the filters';\n }\n\n if (userType === 'STUDENT') {\n return `Waiting for your teacher \\n to create your personalized learning plan!`;\n }\n\n if (isDraftMilestonePresent) {\n return `Publish ${studentName}'s draft goals or set new ones to build their learning plan.`;\n }\n\n return `Create ${studentName}'s learning plan by adding a goal`;\n};\n\nexport {\n createChaptersListQueryParams,\n getFormChapters,\n getFilterOptions,\n getNoMilestoneTitle,\n getLearningSheetData,\n};\n"],"names":["getLearningSheetData","blocks","name","getFormChapters","chapters","editMode","chapter","id","code","chapter_code","image_url","chapter_tags","state","recommended","isPuzzleChapter","programId","getFilterOptions","milestones","boardSet","gradeSet","board","grade","bdOptions","item","grOptions","getNoMilestoneTitle","isFiltersAdded","isDraftMilestonePresent","studentName","userType"],"mappings":"AAkBM,MAAAA,IAAuB,CAACC,MACrBA,EAAO,IAAI,CAAC,EAAE,MAAAC,SAAY;AAAA,EAC/B,MAAAA;AACA,EAAA,GAGEC,IAAkB,CAACC,GAA2BC,IAAW,OACtDD,EAAS,IAAI,CAAWE,MAAA;AACvB,QAAA;AAAA,IACJ,IAAAC;AAAA,IACA,MAAAC;AAAA,IACA,cAAAC;AAAA,IACA,WAAAC;AAAA,IACA,MAAAR;AAAA,IACA,cAAAS;AAAA,IACA,OAAAC;AAAA,IACA,aAAAC;AAAA,IACA,mBAAmBC;AAAA,IACnB,YAAYC;AAAA,IACZ,QAAAd;AAAA,EACE,IAAAK;AAEG,SAAA;AAAA,IACL,IAAAC;AAAA,IACA,MAAMC,KAAQC;AAAA,IACd,cAAAA;AAAA,IACA,WAAAC;AAAA,IACA,MAAAR;AAAA,IACA,cAAAS;AAAA,IACA,OAAAC;AAAA,IACA,aAAAC;AAAA,IACA,OAAO,CAACR;AAAA,IACR,YAAYU;AAAA,IACZ,mBAAmBD;AAAA,IACnB,qBAAqBd,EAAqBC,CAAM;AAAA,EAAA;AAClD,CACD,GAGGe,IAAmB,CAACC,MAA6C;AAC/D,QAAAC,wBAAe,OACfC,wBAAe;AAErB,EAAIF,KACFA,EAAW,QAAQ,CAAC,EAAE,OAAAG,GAAO,OAAAC,QAAY;AACvC,IAAAH,EAAS,IAAIE,CAAK,GAClBD,EAAS,IAAIE,CAAK;AAAA,EAAA,CACnB;AAGH,QAAMC,IAA6C,MAAM,KAAKJ,GAAU,CAASK,OAAA;AAAA,IAC/E,IAAIA;AAAA,IACJ,OAAOA;AAAA,EACP,EAAA,GAEIC,IAA6C,MAAM,KAAKL,GAAU,CAASI,OAAA;AAAA,IAC/E,IAAIA;AAAA,IACJ,OAAOA;AAAA,EACP,EAAA;AAEF,SAAO,EAAE,cAAcD,GAAW,cAAcE,EAAU;AAC5D,GAEMC,IAAsB,CAC1BC,GACAC,GACAC,GACAC,MAEIH,IACK,yCAGLG,MAAa,YACR;AAAA,+CAGLF,IACK,WAAWC,CAAW,iEAGxB,UAAUA,CAAW;"}
|
@@ -1,50 +1,47 @@
|
|
1
|
-
import { GOAL_CATEGORY as
|
2
|
-
import { checkEnrollmentAvailable as
|
3
|
-
import { getRegionCodeBasedOnCountryCode as
|
4
|
-
import { getLearningSheetData as
|
5
|
-
import { transformRecommendedChaptersFromMilestonePlan as
|
6
|
-
import { formatDate as
|
7
|
-
const { SCHOOL_SUCCESS:
|
8
|
-
const
|
9
|
-
|
10
|
-
const o =
|
11
|
-
|
12
|
-
},
|
1
|
+
import { GOAL_CATEGORY as f } from "../constants.js";
|
2
|
+
import { checkEnrollmentAvailable as g } from "../create/comps/test-type-step/test-type-utils.js";
|
3
|
+
import { getRegionCodeBasedOnCountryCode as u } from "../create/milestone-create-helpers.js";
|
4
|
+
import { getLearningSheetData as _ } from "../create/utils/index.js";
|
5
|
+
import { transformRecommendedChaptersFromMilestonePlan as h } from "./goal-drafts/goal-draft-edit-helpers.js";
|
6
|
+
import { formatDate as y } from "../../../node_modules/date-fns/format.js";
|
7
|
+
const { SCHOOL_SUCCESS: C, TEST_PREP: E, ENRICHMENT: T } = f, p = (r, t, s) => {
|
8
|
+
const d = r.committed;
|
9
|
+
d[t] = !0;
|
10
|
+
const o = t;
|
11
|
+
r[o] = s;
|
12
|
+
}, I = (r, t = !1) => r.map((s) => {
|
13
13
|
const {
|
14
|
-
id:
|
14
|
+
id: d,
|
15
15
|
code: o = "",
|
16
|
-
chapter_code:
|
16
|
+
chapter_code: m,
|
17
17
|
image_url: e,
|
18
18
|
name: a,
|
19
|
-
chapter_tags:
|
19
|
+
chapter_tags: i,
|
20
20
|
state: l,
|
21
|
-
|
22
|
-
|
21
|
+
program_id: c,
|
22
|
+
blocks: n
|
23
23
|
} = s;
|
24
24
|
return {
|
25
|
-
id:
|
26
|
-
code: o ||
|
27
|
-
chapter_code:
|
25
|
+
id: d,
|
26
|
+
code: o || m,
|
27
|
+
chapter_code: m,
|
28
28
|
image_url: e,
|
29
29
|
name: a,
|
30
|
-
chapter_tags:
|
30
|
+
chapter_tags: i,
|
31
31
|
state: l,
|
32
|
-
added: !
|
33
|
-
program_id:
|
34
|
-
learning_sheet_data:
|
35
|
-
total_supplementary_sheets: h(
|
36
|
-
i.supplementary_sheets_grouped
|
37
|
-
)
|
32
|
+
added: !t,
|
33
|
+
program_id: c,
|
34
|
+
learning_sheet_data: _(n)
|
38
35
|
};
|
39
|
-
}),
|
40
|
-
currentMilestoneData:
|
41
|
-
config:
|
36
|
+
}), S = ({
|
37
|
+
currentMilestoneData: r,
|
38
|
+
config: t,
|
42
39
|
courseStream: s,
|
43
|
-
enrollmentType:
|
40
|
+
enrollmentType: d,
|
44
41
|
currentCountryCode: o
|
45
42
|
}) => {
|
46
|
-
var
|
47
|
-
const
|
43
|
+
var c;
|
44
|
+
const m = o ? u(o) : void 0, e = {
|
48
45
|
testType: void 0,
|
49
46
|
committed: {
|
50
47
|
testType: !0,
|
@@ -58,20 +55,20 @@ const { SCHOOL_SUCCESS: T, TEST_PREP: E, ENRICHMENT: I } = u, c = (t, r, s) => {
|
|
58
55
|
milestoneEndDateIsTentative: !0
|
59
56
|
},
|
60
57
|
reviewed: {}
|
61
|
-
}, { goal_category: a } =
|
62
|
-
a && (a ===
|
63
|
-
primaryGoalCategory:
|
64
|
-
}, e.grade =
|
65
|
-
new Date(
|
58
|
+
}, { goal_category: a } = r || {};
|
59
|
+
a && (a === C ? p(e, "testType", "no-test") : a === E ? p(e, "testType", "non-standardized") : a === T && p(e, "testType", "standardized")), e.chapterGoalCategory = {
|
60
|
+
primaryGoalCategory: t.goal_curriculum_map.find((n) => n.goal_code !== r.goal_code || n.course_stream !== s ? !1 : g(n, d))
|
61
|
+
}, e.grade = r.grade, e.board = r.board, e.milestoneEndDate = y(
|
62
|
+
new Date(r.milestone_date_ts * 1e3),
|
66
63
|
"yyyy-MM-dd"
|
67
|
-
),
|
68
|
-
const
|
69
|
-
|
64
|
+
), p(e, "region", m ?? "DUMMY"), e.major = r.selected_major ?? "DUMMY_MAJOR";
|
65
|
+
const i = (c = r.user_milestone_plan) == null ? void 0 : c.user_chapters;
|
66
|
+
i ? e.primaryChaptersList = I(i).map((n) => ({
|
70
67
|
...n,
|
71
68
|
added: !0
|
72
69
|
})) : e.primaryChaptersList = [];
|
73
|
-
const l =
|
74
|
-
|
70
|
+
const l = h(
|
71
|
+
r.recommended_chapters
|
75
72
|
);
|
76
73
|
return e.primaryChaptersList = [
|
77
74
|
...e.primaryChaptersList ?? [],
|
@@ -79,25 +76,25 @@ const { SCHOOL_SUCCESS: T, TEST_PREP: E, ENRICHMENT: I } = u, c = (t, r, s) => {
|
|
79
76
|
], {
|
80
77
|
...e
|
81
78
|
};
|
82
|
-
},
|
83
|
-
field:
|
84
|
-
isFieldCommited:
|
79
|
+
}, v = ({
|
80
|
+
field: r,
|
81
|
+
isFieldCommited: t,
|
85
82
|
prevFormData: s,
|
86
|
-
newValueOfField:
|
83
|
+
newValueOfField: d,
|
87
84
|
formDataStateRef: o
|
88
85
|
}) => {
|
89
|
-
var
|
90
|
-
if (
|
91
|
-
if (
|
86
|
+
var m, e, a;
|
87
|
+
if (t && ((m = s.committed) == null ? void 0 : m[r]) !== t) {
|
88
|
+
if (r === "schoolInfo") {
|
92
89
|
if (((e = o.schoolInfo) == null ? void 0 : e.countryCode) !== ((a = s.schoolInfo) == null ? void 0 : a.countryCode))
|
93
90
|
return !0;
|
94
|
-
} else if (o[
|
91
|
+
} else if (o[r] !== d)
|
95
92
|
return !0;
|
96
93
|
}
|
97
94
|
return !1;
|
98
95
|
};
|
99
96
|
export {
|
100
|
-
|
101
|
-
|
97
|
+
v as checkIfCommittedFieldIsUpdated,
|
98
|
+
S as transformGoalData
|
102
99
|
};
|
103
100
|
//# sourceMappingURL=goal-edit-helpers.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"goal-edit-helpers.js","sources":["../../../../src/features/milestone/edit/goal-edit-helpers.ts"],"sourcesContent":["import type { IChapterDataProps } from '../../chapters/chapter/chapter-types';\nimport type { IChapter } from '../create/comps/chapter-item/chapter-item-types';\nimport type {\n IMileStoneFormFields,\n IMilestoneConfig,\n IMilestoneFormData,\n TCourseStream,\n TEnrollmentTypes,\n TMilestoneFormStateField,\n} from '../create/milestone-create-types';\nimport type { IMilestoneData } from '../milestone-list-container/milestone-list/milestone-list-types';\n\nimport { format } from 'date-fns';\n\nimport { GOAL_CATEGORY } from '../constants';\nimport { checkEnrollmentAvailable } from '../create/comps/test-type-step/test-type-utils';\nimport { getRegionCodeBasedOnCountryCode } from '../create/milestone-create-helpers';\nimport { getLearningSheetData
|
1
|
+
{"version":3,"file":"goal-edit-helpers.js","sources":["../../../../src/features/milestone/edit/goal-edit-helpers.ts"],"sourcesContent":["import type { IChapterDataProps } from '../../chapters/chapter/chapter-types';\nimport type { IChapter } from '../create/comps/chapter-item/chapter-item-types';\nimport type {\n IMileStoneFormFields,\n IMilestoneConfig,\n IMilestoneFormData,\n TCourseStream,\n TEnrollmentTypes,\n TMilestoneFormStateField,\n} from '../create/milestone-create-types';\nimport type { IMilestoneData } from '../milestone-list-container/milestone-list/milestone-list-types';\n\nimport { format } from 'date-fns';\n\nimport { GOAL_CATEGORY } from '../constants';\nimport { checkEnrollmentAvailable } from '../create/comps/test-type-step/test-type-utils';\nimport { getRegionCodeBasedOnCountryCode } from '../create/milestone-create-helpers';\nimport { getLearningSheetData } from '../create/utils';\nimport { transformRecommendedChaptersFromMilestonePlan } from './goal-drafts/goal-draft-edit-helpers';\n\nconst { SCHOOL_SUCCESS, TEST_PREP, ENRICHMENT } = GOAL_CATEGORY;\n\ntype TTransformDataProps = {\n currentMilestoneData: IMilestoneData;\n config: IMilestoneConfig;\n courseStream: TCourseStream;\n enrollmentType?: TEnrollmentTypes;\n currentCountryCode?: string;\n};\n\ninterface ITransformData {\n (props: TTransformDataProps): IMilestoneFormData;\n}\n\ntype TFormValues = IMilestoneFormData[keyof IMileStoneFormFields];\ntype TFormFields = keyof IMileStoneFormFields | 'committed';\ntype TFormData = Record<TFormFields, TFormValues> | IMilestoneFormData;\n\nconst commitAndAdd = (formData: TFormData, field: TFormFields, value: TFormValues) => {\n const committedFormData = formData.committed as Record<TFormFields, boolean>;\n\n committedFormData[field] = true;\n\n const formDataFiledValue = field as keyof IMileStoneFormFields;\n\n formData[formDataFiledValue] = value;\n};\n\nconst getFormChapters = (chapters: IChapterDataProps[], editMode = false): IChapter[] => {\n return chapters.map(chapter => {\n const {\n id,\n code = '',\n chapter_code,\n image_url,\n name,\n chapter_tags,\n state,\n program_id: programId,\n blocks,\n } = chapter;\n\n return {\n id,\n code: code || chapter_code,\n chapter_code,\n image_url,\n name,\n chapter_tags,\n state,\n added: !editMode,\n program_id: programId,\n learning_sheet_data: getLearningSheetData(blocks),\n };\n });\n};\n\nconst transformGoalData: ITransformData = ({\n currentMilestoneData,\n config,\n courseStream,\n enrollmentType,\n currentCountryCode,\n}) => {\n //TODO: We need country code from currentMilestoneData\n const regionCode = currentCountryCode\n ? getRegionCodeBasedOnCountryCode(currentCountryCode)\n : undefined;\n\n const transformedData: IMilestoneFormData = {\n testType: undefined,\n committed: {\n testType: true,\n grade: true,\n schoolInfo: true,\n board: true,\n major: false,\n milestoneEndDate: true,\n region: true,\n chapterGoalCategory: true,\n\n milestoneEndDateIsTentative: true,\n },\n reviewed: {},\n };\n\n const { goal_category: goalCategory } = currentMilestoneData || {};\n\n if (goalCategory) {\n if (goalCategory === SCHOOL_SUCCESS) {\n commitAndAdd(transformedData, 'testType', 'no-test');\n } else if (goalCategory === TEST_PREP) {\n commitAndAdd(transformedData, 'testType', 'non-standardized');\n } else if (goalCategory === ENRICHMENT) {\n commitAndAdd(transformedData, 'testType', 'standardized');\n }\n }\n\n transformedData.chapterGoalCategory = {\n primaryGoalCategory: config.goal_curriculum_map.find(goalData => {\n if (goalData.goal_code !== currentMilestoneData.goal_code) return false;\n\n if (goalData.course_stream !== courseStream) return false;\n\n return checkEnrollmentAvailable(goalData, enrollmentType);\n }),\n };\n\n transformedData.grade = currentMilestoneData.grade;\n transformedData.board = currentMilestoneData.board;\n transformedData.milestoneEndDate = format(\n new Date(currentMilestoneData.milestone_date_ts * 1000),\n 'yyyy-MM-dd',\n );\n commitAndAdd(transformedData, 'region', regionCode ?? 'DUMMY');\n transformedData.major = currentMilestoneData.selected_major ?? 'DUMMY_MAJOR';\n\n const userChapters = currentMilestoneData.user_milestone_plan?.user_chapters;\n\n if (userChapters) {\n transformedData.primaryChaptersList = getFormChapters(userChapters).map(chapter => {\n return {\n ...chapter,\n added: true,\n };\n });\n } else {\n transformedData.primaryChaptersList = [];\n }\n\n const recommendedChapters = transformRecommendedChaptersFromMilestonePlan(\n currentMilestoneData.recommended_chapters,\n );\n\n transformedData.primaryChaptersList = [\n ...(transformedData.primaryChaptersList ?? []),\n ...recommendedChapters,\n ];\n\n return {\n ...transformedData,\n };\n};\n\ninterface ICheckIfCommittedFieldIsUpdated {\n (params: {\n field: TMilestoneFormStateField;\n isFieldCommited: boolean;\n prevFormData: IMilestoneFormData;\n newValueOfField: unknown;\n formDataStateRef: IMilestoneFormData;\n }): boolean;\n}\n\n/**\n * This method accepts commited changes in the form tree and checks if the committed fields are actually updated from the original value.\n *\n * @param field - The field to be checked for updates.\n * @param isFieldCommited - Is field committed\n * @param prevFormData - The previous form data.\n * @param newValueOfField - The value of the field in updated form data.\n * @param formDataStateRef - The reference to the current form data state.\n *\n * @returns The updated field if any, or null if no updates were made.\n */\n\nconst checkIfCommittedFieldIsUpdated: ICheckIfCommittedFieldIsUpdated = ({\n field,\n isFieldCommited,\n prevFormData,\n newValueOfField,\n formDataStateRef,\n}) => {\n if (isFieldCommited && prevFormData.committed?.[field] !== isFieldCommited) {\n if (field === 'schoolInfo') {\n if (formDataStateRef.schoolInfo?.countryCode !== prevFormData.schoolInfo?.countryCode)\n return true;\n } else if (formDataStateRef[field] !== newValueOfField) {\n return true;\n }\n }\n\n return false;\n};\n\nexport { checkIfCommittedFieldIsUpdated, transformGoalData };\n"],"names":["SCHOOL_SUCCESS","TEST_PREP","ENRICHMENT","GOAL_CATEGORY","commitAndAdd","formData","field","value","committedFormData","formDataFiledValue","getFormChapters","chapters","editMode","chapter","id","code","chapter_code","image_url","name","chapter_tags","state","programId","blocks","getLearningSheetData","transformGoalData","currentMilestoneData","config","courseStream","enrollmentType","currentCountryCode","regionCode","getRegionCodeBasedOnCountryCode","transformedData","goalCategory","goalData","checkEnrollmentAvailable","format","userChapters","_a","recommendedChapters","transformRecommendedChaptersFromMilestonePlan","checkIfCommittedFieldIsUpdated","isFieldCommited","prevFormData","newValueOfField","formDataStateRef","_b","_c"],"mappings":"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"}
|