@cuemath/leap 2.9.9-as3 → 2.9.9-as6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +28 -28
  2. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +1 -1
  3. package/dist/features/chapters-v2/chapter-details/chapter-details.js +92 -93
  4. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
  5. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-option.js +1 -2
  6. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-option.js.map +1 -1
  7. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js +5 -5
  8. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js.map +1 -1
  9. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +2 -2
  10. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +1 -1
  11. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +2 -2
  12. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +1 -1
  13. package/dist/features/circle-games/games/tutorial/constants.js +2 -2
  14. package/dist/features/circle-games/games/tutorial/constants.js.map +1 -1
  15. package/dist/features/circle-games/games/tutorial/tutorial-styled.js +6 -6
  16. package/dist/features/circle-games/games/tutorial/tutorial-styled.js.map +1 -1
  17. package/dist/features/circle-games/games/web-view/web-view.js +52 -45
  18. package/dist/features/circle-games/games/web-view/web-view.js.map +1 -1
  19. package/dist/features/circle-games/leaderboard/comps/banner/banner.js +6 -6
  20. package/dist/features/circle-games/leaderboard/comps/banner/banner.js.map +1 -1
  21. package/dist/features/circle-games/leaderboard/comps/navigation-button/navigation-button-styled.js +1 -1
  22. package/dist/features/circle-games/leaderboard/comps/navigation-button/navigation-button-styled.js.map +1 -1
  23. package/dist/features/circle-games/leaderboard/leaderboard-styled.js +1 -1
  24. package/dist/features/circle-games/leaderboard/leaderboard-styled.js.map +1 -1
  25. package/dist/features/circle-games/leaderboard/leaderboard.js +9 -9
  26. package/dist/features/circle-games/leaderboard/leaderboard.js.map +1 -1
  27. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps-styled.js +8 -8
  28. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps-styled.js.map +1 -1
  29. package/dist/features/circle-games/sign-up/constants.js +9 -9
  30. package/dist/features/circle-games/sign-up/constants.js.map +1 -1
  31. package/dist/features/homework/hw-card-list/hw-card-list-view.js +157 -0
  32. package/dist/features/homework/hw-card-list/hw-card-list-view.js.map +1 -0
  33. package/dist/features/homework/hw-card-list/hw-card-list.js +58 -182
  34. package/dist/features/homework/hw-card-list/hw-card-list.js.map +1 -1
  35. package/dist/features/journey/comps/coachmark/coachmark-styled.js +22 -11
  36. package/dist/features/journey/comps/coachmark/coachmark-styled.js.map +1 -1
  37. package/dist/features/journey/hooks/use-chapter-journey.js +93 -93
  38. package/dist/features/journey/hooks/use-chapter-journey.js.map +1 -1
  39. package/dist/features/journey/hooks/use-home-page-journey.js +197 -107
  40. package/dist/features/journey/hooks/use-home-page-journey.js.map +1 -1
  41. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js +587 -0
  42. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -0
  43. package/dist/features/journey/mocks/home-page-homwworks-mock.js +268 -0
  44. package/dist/features/journey/mocks/home-page-homwworks-mock.js.map +1 -0
  45. package/dist/features/journey/mocks/recent-chapters-mock.js +531 -0
  46. package/dist/features/journey/mocks/recent-chapters-mock.js.map +1 -0
  47. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  48. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-item/chapter-item.js.map +1 -1
  49. package/dist/features/trial-session/comps/learning-plan/index.js.map +1 -1
  50. package/dist/features/ui/arc-button/constants.js +4 -4
  51. package/dist/features/ui/arc-button/constants.js.map +1 -1
  52. package/dist/index.d.ts +7 -9
  53. package/package.json +1 -1
@@ -1,16 +1,16 @@
1
- import { jsx as t, jsxs as o } from "react/jsx-runtime";
2
- import L from "../../../../assets/line-icons/icons/more-vertical.js";
3
- import T from "../../../../assets/line-icons/icons/skip.js";
4
- import I from "../../../ui/context-menu/context-menu.js";
1
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
2
+ import S from "../../../../assets/line-icons/icons/more-vertical.js";
3
+ import I from "../../../../assets/line-icons/icons/skip.js";
4
+ import O from "../../../ui/context-menu/context-menu.js";
5
5
  import c from "../../../ui/layout/flex-view.js";
6
6
  import u from "../../../ui/text/text.js";
7
- import O from "../../comps/node-card/node-card.js";
7
+ import T from "../../comps/node-card/node-card.js";
8
8
  import j from "../../comps/node-card/node-menu-options/node-menu-options.js";
9
9
  import { BLOCK_NAME as k } from "../../constants/block-constants.js";
10
- import { getSheetNLessonCount as M } from "../../utils/index.js";
11
- import { BlockSectionWrapper as y, BlockOptionsWrapper as B, BlockSheetContainer as D } from "./block-sections-styled.js";
10
+ import { getSheetNLessonCount as y } from "../../utils/index.js";
11
+ import { BlockSectionWrapper as M, BlockOptionsWrapper as B, BlockSheetContainer as K } from "./block-sections-styled.js";
12
12
  const q = ({
13
- userType: n,
13
+ userType: o,
14
14
  imageHue: m,
15
15
  blockData: l,
16
16
  lessonIdx: s,
@@ -19,31 +19,31 @@ const q = ({
19
19
  onNodeAttempt: g,
20
20
  onNodeAttemptLocationChange: x,
21
21
  onNodeMarkAsDone: _,
22
- onNodeReattempt: E,
23
- onNodeReview: b,
22
+ onNodeReattempt: b,
23
+ onNodeReview: E,
24
24
  onNodeView: N,
25
25
  onBlockSkipUnskip: i
26
26
  }) => {
27
- const { block_type: p, name: a, sheets: d, permissions: S } = l, { can_skip: h, can_un_skip: e } = S, f = k[p], w = M(e, d.length, r, s), A = [
27
+ const { block_type: p, name: a, sheets: d, permissions: w } = l, { can_skip: h, can_un_skip: e } = w, f = k[p], A = y(e, d.length, r, s), L = [
28
28
  {
29
29
  id: "node-card-skip",
30
30
  label: e ? "Revert 'Skip'" : "Skip",
31
- icon: T,
31
+ icon: I,
32
32
  disabled: !1,
33
33
  onClick: () => i == null ? void 0 : i(l, h)
34
34
  }
35
35
  ];
36
- return n === "STUDENT" && e ? null : /* @__PURE__ */ t(
37
- y,
36
+ return o === "STUDENT" && e ? null : /* @__PURE__ */ t(
37
+ M,
38
38
  {
39
39
  $background: r ? `${m}_1` : "WHITE_1",
40
40
  $gutterX: 1,
41
41
  $lastBlock: C,
42
42
  $flexGap: 12,
43
- children: /* @__PURE__ */ o(c, { $flexGap: 12, children: [
44
- /* @__PURE__ */ o(c, { $flexDirection: "row", $alignItems: "center", $justifyContent: "space-between", children: [
45
- /* @__PURE__ */ o(c, { $opacity: e ? 0.5 : 1, children: [
46
- /* @__PURE__ */ o(
43
+ children: /* @__PURE__ */ n(c, { $flexGap: 12, children: [
44
+ /* @__PURE__ */ n(c, { $flexDirection: "row", $alignItems: "center", $justifyContent: "space-between", children: [
45
+ /* @__PURE__ */ n(c, { $opacity: e ? 0.5 : 1, children: [
46
+ /* @__PURE__ */ n(
47
47
  u,
48
48
  {
49
49
  $renderAs: "ac4",
@@ -52,7 +52,7 @@ const q = ({
52
52
  children: [
53
53
  f === "Puzzles" ? a : f,
54
54
  " ",
55
- n !== "STUDENT" && w
55
+ A
56
56
  ]
57
57
  }
58
58
  ),
@@ -66,8 +66,8 @@ const q = ({
66
66
  }
67
67
  )
68
68
  ] }),
69
- n === "TEACHER" && (h || e) && /* @__PURE__ */ t(
70
- I,
69
+ o === "TEACHER" && (h || e) && /* @__PURE__ */ t(
70
+ O,
71
71
  {
72
72
  targetElement: /* @__PURE__ */ t(
73
73
  B,
@@ -76,28 +76,28 @@ const q = ({
76
76
  $height: 20,
77
77
  $justifyContent: "center",
78
78
  $alignItems: "center",
79
- children: /* @__PURE__ */ t(L, { width: 16, height: 16 })
79
+ children: /* @__PURE__ */ t(S, { width: 16, height: 16 })
80
80
  }
81
81
  ),
82
- menuElement: /* @__PURE__ */ t(j, { options: A }),
82
+ menuElement: /* @__PURE__ */ t(j, { options: L }),
83
83
  menuOffset: 5,
84
84
  menuZIndex: 4
85
85
  }
86
86
  )
87
87
  ] }),
88
- /* @__PURE__ */ t(D, { $opacity: e ? 0.5 : 1, children: d.map(($) => /* @__PURE__ */ t(
89
- O,
88
+ /* @__PURE__ */ t(K, { $opacity: e ? 0.5 : 1, children: d.map(($) => /* @__PURE__ */ t(
89
+ T,
90
90
  {
91
91
  imageHue: m || "BLUE",
92
- userType: n,
92
+ userType: o,
93
93
  nodeData: $,
94
94
  blockType: p,
95
95
  isSkipped: e,
96
96
  onNodeAttempt: g,
97
97
  onNodeAttemptLocationChange: x,
98
98
  onNodeMarkAsDone: _,
99
- onNodeReattempt: E,
100
- onNodeReview: b,
99
+ onNodeReattempt: b,
100
+ onNodeReview: E,
101
101
  onNodeView: N
102
102
  },
103
103
  $.node_id
@@ -1 +1 @@
1
- {"version":3,"file":"block-section-view.js","sources":["../../../../../src/features/chapters-v2/chapter-details/block-sections/block-section-view.tsx"],"sourcesContent":["import type { INodeMenuOption } from '../../comps/node-card/node-menu-options/node-menu-options-types';\nimport type { IBlockSectionProps } from './block-sections-types';\nimport type { FC } from 'react';\n\nimport MoreVerticalIcon from '../../../../assets/line-icons/icons/more-vertical';\nimport SkipIcon from '../../../../assets/line-icons/icons/skip';\nimport ContextMenu from '../../../ui/context-menu/context-menu';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport NodeCard from '../../comps/node-card/node-card';\nimport NodeMenuOptions from '../../comps/node-card/node-menu-options/node-menu-options';\nimport { BLOCK_NAME } from '../../constants/block-constants';\nimport { getSheetNLessonCount } from '../../utils';\nimport * as Styled from './block-sections-styled';\n\nconst BlockSectionView: FC<IBlockSectionProps> = ({\n userType,\n imageHue,\n blockData,\n lessonIdx,\n isLastBlock,\n isGoalBlock,\n onNodeAttempt,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onBlockSkipUnskip,\n}) => {\n const { block_type: blockType, name, sheets, permissions } = blockData;\n\n const { can_skip: canSkip, can_un_skip: canUnskip } = permissions;\n const blockName = BLOCK_NAME[blockType];\n\n const sheetNLessonCount = getSheetNLessonCount(canUnskip, sheets.length, isGoalBlock, lessonIdx);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-skip',\n label: canUnskip ? `Revert 'Skip'` : 'Skip',\n icon: SkipIcon,\n disabled: false,\n onClick: () => onBlockSkipUnskip?.(blockData, canSkip),\n },\n ];\n\n if (userType === 'STUDENT' && canUnskip) return null;\n\n return (\n <Styled.BlockSectionWrapper\n $background={isGoalBlock ? `${imageHue}_1` : 'WHITE_1'}\n $gutterX={1}\n $lastBlock={isLastBlock}\n $flexGap={12}\n >\n <FlexView $flexGap={12}>\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $justifyContent=\"space-between\">\n <FlexView $opacity={canUnskip ? 0.5 : 1}>\n <Text\n $renderAs=\"ac4\"\n $color=\"BLACK_T_60\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {blockName === 'Puzzles' ? name : blockName}{' '}\n {userType !== 'STUDENT' && sheetNLessonCount}\n </Text>\n\n {!!isGoalBlock && !!lessonIdx && (\n <Text\n $renderAs=\"ab2-bold\"\n $color=\"BLACK_1\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {name}\n </Text>\n )}\n </FlexView>\n\n {userType === 'TEACHER' && (canSkip || canUnskip) && (\n <ContextMenu\n targetElement={\n <Styled.BlockOptionsWrapper\n $width={20}\n $height={20}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n <MoreVerticalIcon width={16} height={16} />\n </Styled.BlockOptionsWrapper>\n }\n menuElement={<NodeMenuOptions options={menuOptions} />}\n menuOffset={5}\n menuZIndex={4}\n />\n )}\n </FlexView>\n\n <Styled.BlockSheetContainer $opacity={canUnskip ? 0.5 : 1}>\n {sheets.map(nodeData => (\n <NodeCard\n key={nodeData.node_id}\n imageHue={imageHue || 'BLUE'}\n userType={userType}\n nodeData={nodeData}\n blockType={blockType}\n isSkipped={canUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAttemptLocationChange={onNodeAttemptLocationChange}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n />\n ))}\n </Styled.BlockSheetContainer>\n </FlexView>\n </Styled.BlockSectionWrapper>\n );\n};\n\nexport default BlockSectionView;\n"],"names":["BlockSectionView","userType","imageHue","blockData","lessonIdx","isLastBlock","isGoalBlock","onNodeAttempt","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onBlockSkipUnskip","blockType","name","sheets","permissions","canSkip","canUnskip","blockName","BLOCK_NAME","sheetNLessonCount","getSheetNLessonCount","menuOptions","SkipIcon","jsx","Styled.BlockSectionWrapper","jsxs","FlexView","Text","ContextMenu","Styled.BlockOptionsWrapper","MoreVerticalIcon","NodeMenuOptions","Styled.BlockSheetContainer","nodeData","NodeCard"],"mappings":";;;;;;;;;;;AAeA,MAAMA,IAA2C,CAAC;AAAA,EAChD,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,6BAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,YAAAC;AAAA,EACA,mBAAAC;AACF,MAAM;AACJ,QAAM,EAAE,YAAYC,GAAW,MAAAC,GAAM,QAAAC,GAAQ,aAAAC,EAAgB,IAAAd,GAEvD,EAAE,UAAUe,GAAS,aAAaC,MAAcF,GAChDG,IAAYC,EAAWP,CAAS,GAEhCQ,IAAoBC,EAAqBJ,GAAWH,EAAO,QAAQV,GAAaF,CAAS,GAEzFoB,IAAiC;AAAA,IACrC;AAAA,MACE,IAAI;AAAA,MACJ,OAAOL,IAAY,kBAAkB;AAAA,MACrC,MAAMM;AAAA,MACN,UAAU;AAAA,MACV,SAAS,MAAMZ,KAAA,gBAAAA,EAAoBV,GAAWe;AAAA,IAChD;AAAA,EAAA;AAGE,SAAAjB,MAAa,aAAakB,IAAkB,OAG9C,gBAAAO;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,aAAarB,IAAc,GAAGJ,CAAQ,OAAO;AAAA,MAC7C,UAAU;AAAA,MACV,YAAYG;AAAA,MACZ,UAAU;AAAA,MAEV,UAAA,gBAAAuB,EAACC,GAAS,EAAA,UAAU,IAClB,UAAA;AAAA,QAAA,gBAAAD,EAACC,KAAS,gBAAe,OAAM,aAAY,UAAS,iBAAgB,iBAClE,UAAA;AAAA,UAAA,gBAAAD,EAACC,GAAS,EAAA,UAAUV,IAAY,MAAM,GACpC,UAAA;AAAA,YAAA,gBAAAS;AAAA,cAACE;AAAA,cAAA;AAAA,gBACC,WAAU;AAAA,gBACV,QAAO;AAAA,gBACP,iBAAiBX,IAAY,iBAAiB;AAAA,gBAE7C,UAAA;AAAA,kBAAAC,MAAc,YAAYL,IAAOK;AAAA,kBAAW;AAAA,kBAC5CnB,MAAa,aAAaqB;AAAA,gBAAA;AAAA,cAAA;AAAA,YAC7B;AAAA,YAEC,CAAC,CAAChB,KAAe,CAAC,CAACF,KAClB,gBAAAsB;AAAA,cAACI;AAAA,cAAA;AAAA,gBACC,WAAU;AAAA,gBACV,QAAO;AAAA,gBACP,iBAAiBX,IAAY,iBAAiB;AAAA,gBAE7C,UAAAJ;AAAA,cAAA;AAAA,YACH;AAAA,UAAA,GAEJ;AAAA,UAECd,MAAa,cAAciB,KAAWC,MACrC,gBAAAO;AAAA,YAACK;AAAA,YAAA;AAAA,cACC,eACE,gBAAAL;AAAA,gBAACM;AAAAA,gBAAA;AAAA,kBACC,QAAQ;AAAA,kBACR,SAAS;AAAA,kBACT,iBAAgB;AAAA,kBAChB,aAAY;AAAA,kBAEZ,UAAC,gBAAAN,EAAAO,GAAA,EAAiB,OAAO,IAAI,QAAQ,IAAI;AAAA,gBAAA;AAAA,cAC3C;AAAA,cAEF,aAAa,gBAAAP,EAACQ,GAAgB,EAAA,SAASV,EAAa,CAAA;AAAA,cACpD,YAAY;AAAA,cACZ,YAAY;AAAA,YAAA;AAAA,UACd;AAAA,QAAA,GAEJ;AAAA,QAEA,gBAAAE,EAACS,GAAA,EAA2B,UAAUhB,IAAY,MAAM,GACrD,UAAOH,EAAA,IAAI,CACVoB,MAAA,gBAAAV;AAAA,UAACW;AAAA,UAAA;AAAA,YAEC,UAAUnC,KAAY;AAAA,YACtB,UAAAD;AAAA,YACA,UAAAmC;AAAA,YACA,WAAAtB;AAAA,YACA,WAAWK;AAAA,YACX,eAAAZ;AAAA,YACA,6BAAAC;AAAA,YACA,kBAAAC;AAAA,YACA,iBAAAC;AAAA,YACA,cAAAC;AAAA,YACA,YAAAC;AAAA,UAAA;AAAA,UAXKwB,EAAS;AAAA,QAajB,CAAA,GACH;AAAA,MAAA,GACF;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"block-section-view.js","sources":["../../../../../src/features/chapters-v2/chapter-details/block-sections/block-section-view.tsx"],"sourcesContent":["import type { INodeMenuOption } from '../../comps/node-card/node-menu-options/node-menu-options-types';\nimport type { IBlockSectionProps } from './block-sections-types';\nimport type { FC } from 'react';\n\nimport MoreVerticalIcon from '../../../../assets/line-icons/icons/more-vertical';\nimport SkipIcon from '../../../../assets/line-icons/icons/skip';\nimport ContextMenu from '../../../ui/context-menu/context-menu';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport NodeCard from '../../comps/node-card/node-card';\nimport NodeMenuOptions from '../../comps/node-card/node-menu-options/node-menu-options';\nimport { BLOCK_NAME } from '../../constants/block-constants';\nimport { getSheetNLessonCount } from '../../utils';\nimport * as Styled from './block-sections-styled';\n\nconst BlockSectionView: FC<IBlockSectionProps> = ({\n userType,\n imageHue,\n blockData,\n lessonIdx,\n isLastBlock,\n isGoalBlock,\n onNodeAttempt,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onBlockSkipUnskip,\n}) => {\n const { block_type: blockType, name, sheets, permissions } = blockData;\n\n const { can_skip: canSkip, can_un_skip: canUnskip } = permissions;\n const blockName = BLOCK_NAME[blockType];\n\n const sheetNLessonCount = getSheetNLessonCount(canUnskip, sheets.length, isGoalBlock, lessonIdx);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-skip',\n label: canUnskip ? `Revert 'Skip'` : 'Skip',\n icon: SkipIcon,\n disabled: false,\n onClick: () => onBlockSkipUnskip?.(blockData, canSkip),\n },\n ];\n\n if (userType === 'STUDENT' && canUnskip) return null;\n\n return (\n <Styled.BlockSectionWrapper\n $background={isGoalBlock ? `${imageHue}_1` : 'WHITE_1'}\n $gutterX={1}\n $lastBlock={isLastBlock}\n $flexGap={12}\n >\n <FlexView $flexGap={12}>\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $justifyContent=\"space-between\">\n <FlexView $opacity={canUnskip ? 0.5 : 1}>\n <Text\n $renderAs=\"ac4\"\n $color=\"BLACK_T_60\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {blockName === 'Puzzles' ? name : blockName} {sheetNLessonCount}\n </Text>\n\n {!!isGoalBlock && !!lessonIdx && (\n <Text\n $renderAs=\"ab2-bold\"\n $color=\"BLACK_1\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {name}\n </Text>\n )}\n </FlexView>\n\n {userType === 'TEACHER' && (canSkip || canUnskip) && (\n <ContextMenu\n targetElement={\n <Styled.BlockOptionsWrapper\n $width={20}\n $height={20}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n <MoreVerticalIcon width={16} height={16} />\n </Styled.BlockOptionsWrapper>\n }\n menuElement={<NodeMenuOptions options={menuOptions} />}\n menuOffset={5}\n menuZIndex={4}\n />\n )}\n </FlexView>\n\n <Styled.BlockSheetContainer $opacity={canUnskip ? 0.5 : 1}>\n {sheets.map(nodeData => (\n <NodeCard\n key={nodeData.node_id}\n imageHue={imageHue || 'BLUE'}\n userType={userType}\n nodeData={nodeData}\n blockType={blockType}\n isSkipped={canUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAttemptLocationChange={onNodeAttemptLocationChange}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n />\n ))}\n </Styled.BlockSheetContainer>\n </FlexView>\n </Styled.BlockSectionWrapper>\n );\n};\n\nexport default BlockSectionView;\n"],"names":["BlockSectionView","userType","imageHue","blockData","lessonIdx","isLastBlock","isGoalBlock","onNodeAttempt","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onBlockSkipUnskip","blockType","name","sheets","permissions","canSkip","canUnskip","blockName","BLOCK_NAME","sheetNLessonCount","getSheetNLessonCount","menuOptions","SkipIcon","jsx","Styled.BlockSectionWrapper","jsxs","FlexView","Text","ContextMenu","Styled.BlockOptionsWrapper","MoreVerticalIcon","NodeMenuOptions","Styled.BlockSheetContainer","nodeData","NodeCard"],"mappings":"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"}
@@ -1,70 +1,67 @@
1
- import { jsxs as f, jsx as t } from "react/jsx-runtime";
2
- import { memo as N, useCallback as v, useEffect as s } from "react";
3
- import { ILLUSTRATIONS as D } from "../../../assets/illustrations/illustrations.js";
4
- import E from "../../../assets/line-icons/icons/back2.js";
5
- import { useJourney as P } from "../../journey/use-journey/use-journey.js";
6
- import T from "../../ui/buttons/button/button.js";
7
- import j from "../../ui/buttons/icon-button/icon-button.js";
8
- import J from "../../ui/layout/flex-view.js";
9
- import H from "../../ui/loader/app-loader/app-loader.js";
10
- import O from "../../ui/text/text.js";
11
- import { useGetChapterDetails as U } from "../api/chapter.js";
12
- import W from "./block-sections/block-sections.js";
13
- import X from "./chapter-banner/chapter-banner.js";
14
- import { ContentWrapper as z, BackButtonContainer as F, BackButtonWrapper as G, LoaderWrapper as V } from "./chapter-details-styled.js";
15
- const q = N((g) => {
1
+ import { jsxs as m, jsx as t, Fragment as b } from "react/jsx-runtime";
2
+ import { memo as w, useCallback as L, useEffect as p } from "react";
3
+ import { ILLUSTRATIONS as N } from "../../../assets/illustrations/illustrations.js";
4
+ import _ from "../../../assets/line-icons/icons/back2.js";
5
+ import { useJourney as v } from "../../journey/use-journey/use-journey.js";
6
+ import D from "../../ui/buttons/button/button.js";
7
+ import E from "../../ui/buttons/icon-button/icon-button.js";
8
+ import P from "../../ui/layout/flex-view.js";
9
+ import T from "../../ui/loader/app-loader/app-loader.js";
10
+ import j from "../../ui/text/text.js";
11
+ import { useGetChapterDetails as J } from "../api/chapter.js";
12
+ import F from "./block-sections/block-sections.js";
13
+ import H from "./chapter-banner/chapter-banner.js";
14
+ import { ContentWrapper as O, BackButtonContainer as U, BackButtonWrapper as W, LoaderWrapper as X } from "./chapter-details-styled.js";
15
+ const z = w((f) => {
16
16
  const {
17
- userChapterId: c,
18
- studentId: n,
17
+ userChapterId: n,
18
+ studentId: i,
19
19
  userType: a,
20
- onBlockSkipUnskip: u,
21
- onNodeAttempt: C,
22
- onNodeAttemptLocationChange: k,
23
- onNodeMarkAsDone: y,
24
- onNodeReattempt: A,
25
- onNodeReview: B,
26
- onNodeView: $,
27
- onExit: x,
28
- startChapterPageJourney: i,
29
- chapterPageRef: I,
30
- bannerRef: S,
31
- coreBlocksRef: w,
32
- canStartJourney: m
33
- } = g, {
34
- get: p,
20
+ onBlockSkipUnskip: g,
21
+ onNodeAttempt: u,
22
+ onNodeAttemptLocationChange: C,
23
+ onNodeMarkAsDone: k,
24
+ onNodeReattempt: y,
25
+ onNodeReview: A,
26
+ onNodeView: B,
27
+ onExit: $,
28
+ startChapterPageJourney: s,
29
+ chapterPageRef: x,
30
+ bannerRef: I,
31
+ coreBlocksRef: R,
32
+ canStartJourney: c
33
+ } = f, { isJourneyActive: l } = v(), {
34
+ get: h,
35
35
  data: e,
36
36
  isProcessing: r,
37
- isProcessingFailed: R,
38
- isStale: l
39
- } = U(), o = v(() => {
40
- p(c, void 0, { studentId: n });
41
- }, [p, c, n]);
42
- s(() => {
37
+ isProcessingFailed: S,
38
+ isStale: d
39
+ } = J(), o = L(() => {
40
+ h(n, void 0, { studentId: i });
41
+ }, [h, n, i]);
42
+ return p(() => {
43
43
  o();
44
- }, [o]);
45
- const { isJourneyActive: h } = P();
46
- return s(() => {
47
- if (e) {
48
- const { progress_stat: _ } = e, { classwork: b } = _ || {}, { completed: d, total: L } = b || {};
49
- m && d !== 0 && L === d && !h && i && i({
50
- chapterDetails: e,
51
- studentId: n,
52
- userType: a
53
- });
54
- }
44
+ }, [o]), p(() => {
45
+ e && c && !l && s && s({
46
+ chapterDetails: e,
47
+ userChapterId: n,
48
+ studentId: i,
49
+ userType: a
50
+ });
55
51
  }, [
52
+ c,
56
53
  e,
54
+ l,
55
+ s,
57
56
  i,
58
- h,
59
57
  n,
60
- a,
61
- m
62
- ]), s(() => {
63
- !r && l && o();
64
- }, [o, r, l]), R ? /* @__PURE__ */ f(J, { $flexGapX: 1.5, $height: "100vh", $justifyContent: "center", $alignItems: "center", children: [
65
- /* @__PURE__ */ t(O, { $renderAs: "h6", children: "Oops! Something went wrong. Please try again later." }),
58
+ a
59
+ ]), p(() => {
60
+ !r && d && o();
61
+ }, [o, r, d]), S ? /* @__PURE__ */ m(P, { $flexGapX: 1.5, $height: "100vh", $justifyContent: "center", $alignItems: "center", children: [
62
+ /* @__PURE__ */ t(j, { $renderAs: "h6", children: "Oops! Something went wrong. Please try again later." }),
66
63
  /* @__PURE__ */ t(
67
- T,
64
+ D,
68
65
  {
69
66
  widthX: 14,
70
67
  size: "small",
@@ -74,57 +71,59 @@ const q = N((g) => {
74
71
  onClick: o
75
72
  }
76
73
  )
77
- ] }) : !e && r ? /* @__PURE__ */ t(H, { height: "80vh" }) : /* @__PURE__ */ f(
78
- z,
74
+ ] }) : !e && r ? /* @__PURE__ */ t(T, { height: "80vh" }) : /* @__PURE__ */ m(
75
+ O,
79
76
  {
80
- ref: I,
77
+ ref: x,
81
78
  $widthX: 50,
82
79
  $disablePointerEvents: r,
83
80
  $justifyContent: "center",
84
81
  $alignItems: "center",
85
82
  children: [
86
- a === "TEACHER" && /* @__PURE__ */ t(F, { $height: "100%", children: /* @__PURE__ */ t(G, { children: /* @__PURE__ */ t(
87
- j,
83
+ a === "TEACHER" && /* @__PURE__ */ t(U, { $height: "100%", children: /* @__PURE__ */ t(W, { children: /* @__PURE__ */ t(
84
+ E,
88
85
  {
89
- Icon: E,
86
+ Icon: _,
90
87
  renderAs: "secondary-gray",
91
88
  analyticsLabel: "chapter_page_exit",
92
89
  size: "xsmall",
93
- onClick: x
90
+ onClick: $
94
91
  }
95
92
  ) }) }),
96
- r && /* @__PURE__ */ t(V, { children: /* @__PURE__ */ t("img", { src: D.LOADER_1, alt: "loader" }) }),
97
- e && /* @__PURE__ */ t(
98
- X,
99
- {
100
- title: e.name,
101
- imageHue: e.image_hue,
102
- imageUrl: e.image_url,
103
- progressStats: e == null ? void 0 : e.progress_stat,
104
- bannerRef: S
105
- }
106
- ),
107
- e && /* @__PURE__ */ t(
108
- W,
109
- {
110
- imageHue: e.image_hue,
111
- userType: a,
112
- blocks: e.blocks,
113
- onBlockSkipUnskip: u,
114
- onNodeAttempt: C,
115
- onNodeAttemptLocationChange: k,
116
- onNodeMarkAsDone: y,
117
- onNodeReattempt: A,
118
- onNodeReview: B,
119
- onNodeView: $,
120
- coreBlocksRef: w
121
- }
122
- )
93
+ r && /* @__PURE__ */ t(X, { children: /* @__PURE__ */ t("img", { src: N.LOADER_1, alt: "loader" }) }),
94
+ e && /* @__PURE__ */ m(b, { children: [
95
+ /* @__PURE__ */ t(
96
+ H,
97
+ {
98
+ title: e.name,
99
+ imageHue: e.image_hue,
100
+ imageUrl: e.image_url,
101
+ progressStats: e == null ? void 0 : e.progress_stat,
102
+ bannerRef: I
103
+ }
104
+ ),
105
+ /* @__PURE__ */ t(
106
+ F,
107
+ {
108
+ imageHue: e.image_hue,
109
+ userType: a,
110
+ blocks: e.blocks,
111
+ onBlockSkipUnskip: g,
112
+ onNodeAttempt: u,
113
+ onNodeAttemptLocationChange: C,
114
+ onNodeMarkAsDone: k,
115
+ onNodeReattempt: y,
116
+ onNodeReview: A,
117
+ onNodeView: B,
118
+ coreBlocksRef: R
119
+ }
120
+ )
121
+ ] })
123
122
  ]
124
123
  }
125
124
  );
126
- }), me = q;
125
+ }), ae = z;
127
126
  export {
128
- me as default
127
+ ae as default
129
128
  };
130
129
  //# sourceMappingURL=chapter-details.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chapter-details.js","sources":["../../../../src/features/chapters-v2/chapter-details/chapter-details.tsx"],"sourcesContent":["import type { IChapterDetails } from './chapter-details-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport Back2Icon from '../../../assets/line-icons/icons/back2';\nimport { useJourney } from '../../journey/use-journey/use-journey';\nimport Button from '../../ui/buttons/button/button';\nimport IconButton from '../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../ui/layout/flex-view';\nimport AppLoader from '../../ui/loader/app-loader/app-loader';\nimport Text from '../../ui/text/text';\nimport { useGetChapterDetails } from '../api/chapter';\nimport BlockSections from './block-sections/block-sections';\nimport ChapterBanner from './chapter-banner/chapter-banner';\nimport * as Styled from './chapter-details-styled';\n\nconst ChapterDetails: FC<IChapterDetails> = memo(props => {\n const {\n userChapterId,\n studentId,\n userType,\n onBlockSkipUnskip,\n onNodeAttempt,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onExit,\n startChapterPageJourney,\n chapterPageRef,\n bannerRef,\n coreBlocksRef,\n canStartJourney,\n } = props;\n\n const {\n get: getChapterDetails,\n data: chapterDetails,\n isProcessing,\n isProcessingFailed,\n isStale,\n } = useGetChapterDetails();\n\n const fetchChapterDetails = useCallback(() => {\n getChapterDetails(userChapterId, undefined, { studentId });\n }, [getChapterDetails, userChapterId, studentId]);\n\n useEffect(() => {\n fetchChapterDetails();\n }, [fetchChapterDetails]);\n const { isJourneyActive } = useJourney();\n\n useEffect(() => {\n if (chapterDetails) {\n const { progress_stat: progressStat } = chapterDetails;\n const { classwork } = progressStat || {};\n const { completed, total } = classwork || {};\n\n if (\n canStartJourney &&\n completed !== 0 &&\n total === completed &&\n !isJourneyActive &&\n startChapterPageJourney\n ) {\n startChapterPageJourney({\n chapterDetails: chapterDetails,\n studentId,\n userType,\n });\n }\n }\n }, [\n chapterDetails,\n startChapterPageJourney,\n isJourneyActive,\n studentId,\n userType,\n canStartJourney,\n ]);\n\n useEffect(() => {\n if (!isProcessing && isStale) {\n fetchChapterDetails();\n }\n }, [fetchChapterDetails, isProcessing, isStale]);\n\n if (isProcessingFailed) {\n return (\n <FlexView $flexGapX={1.5} $height=\"100vh\" $justifyContent=\"center\" $alignItems=\"center\">\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={fetchChapterDetails}\n />\n </FlexView>\n );\n }\n\n if (!chapterDetails && isProcessing) {\n return <AppLoader height=\"80vh\" />;\n }\n\n return (\n <Styled.ContentWrapper\n ref={chapterPageRef}\n $widthX={50}\n $disablePointerEvents={isProcessing}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n {userType === 'TEACHER' && (\n <Styled.BackButtonContainer $height=\"100%\">\n <Styled.BackButtonWrapper>\n <IconButton\n Icon={Back2Icon}\n renderAs=\"secondary-gray\"\n analyticsLabel=\"chapter_page_exit\"\n size=\"xsmall\"\n onClick={onExit}\n />\n </Styled.BackButtonWrapper>\n </Styled.BackButtonContainer>\n )}\n\n {isProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loader\" />\n </Styled.LoaderWrapper>\n )}\n\n {chapterDetails && (\n <ChapterBanner\n title={chapterDetails.name}\n imageHue={chapterDetails.image_hue}\n imageUrl={chapterDetails.image_url}\n progressStats={chapterDetails?.progress_stat}\n bannerRef={bannerRef}\n />\n )}\n\n {chapterDetails && (\n <BlockSections\n imageHue={chapterDetails.image_hue}\n userType={userType}\n blocks={chapterDetails.blocks}\n onBlockSkipUnskip={onBlockSkipUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAttemptLocationChange={onNodeAttemptLocationChange}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n coreBlocksRef={coreBlocksRef}\n />\n )}\n </Styled.ContentWrapper>\n );\n});\n\nexport default ChapterDetails;\n"],"names":["ChapterDetails","memo","props","userChapterId","studentId","userType","onBlockSkipUnskip","onNodeAttempt","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onExit","startChapterPageJourney","chapterPageRef","bannerRef","coreBlocksRef","canStartJourney","getChapterDetails","chapterDetails","isProcessing","isProcessingFailed","isStale","useGetChapterDetails","fetchChapterDetails","useCallback","useEffect","isJourneyActive","useJourney","progressStat","classwork","completed","total","jsxs","FlexView","jsx","Text","Button","AppLoader","Styled.ContentWrapper","Styled.BackButtonContainer","Styled.BackButtonWrapper","IconButton","Back2Icon","Styled.LoaderWrapper","ILLUSTRATIONS","ChapterBanner","BlockSections","ChapterDetails$1"],"mappings":"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"}
1
+ {"version":3,"file":"chapter-details.js","sources":["../../../../src/features/chapters-v2/chapter-details/chapter-details.tsx"],"sourcesContent":["import type { IChapterDetails } from './chapter-details-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport Back2Icon from '../../../assets/line-icons/icons/back2';\nimport { useJourney } from '../../journey/use-journey/use-journey';\nimport Button from '../../ui/buttons/button/button';\nimport IconButton from '../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../ui/layout/flex-view';\nimport AppLoader from '../../ui/loader/app-loader/app-loader';\nimport Text from '../../ui/text/text';\nimport { useGetChapterDetails } from '../api/chapter';\nimport BlockSections from './block-sections/block-sections';\nimport ChapterBanner from './chapter-banner/chapter-banner';\nimport * as Styled from './chapter-details-styled';\n\nconst ChapterDetails: FC<IChapterDetails> = memo(props => {\n const {\n userChapterId,\n studentId,\n userType,\n onBlockSkipUnskip,\n onNodeAttempt,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onExit,\n startChapterPageJourney,\n chapterPageRef,\n bannerRef,\n coreBlocksRef,\n canStartJourney,\n } = props;\n const { isJourneyActive } = useJourney();\n const {\n get: getChapterDetails,\n data: chapterDetails,\n isProcessing,\n isProcessingFailed,\n isStale,\n } = useGetChapterDetails();\n\n const fetchChapterDetails = useCallback(() => {\n getChapterDetails(userChapterId, undefined, { studentId });\n }, [getChapterDetails, userChapterId, studentId]);\n\n useEffect(() => {\n fetchChapterDetails();\n }, [fetchChapterDetails]);\n\n useEffect(() => {\n if (chapterDetails && canStartJourney && !isJourneyActive && startChapterPageJourney) {\n startChapterPageJourney({\n chapterDetails: chapterDetails,\n userChapterId,\n studentId,\n userType,\n });\n }\n }, [\n canStartJourney,\n chapterDetails,\n isJourneyActive,\n startChapterPageJourney,\n studentId,\n userChapterId,\n userType,\n ]);\n\n useEffect(() => {\n if (!isProcessing && isStale) {\n fetchChapterDetails();\n }\n }, [fetchChapterDetails, isProcessing, isStale]);\n\n if (isProcessingFailed) {\n return (\n <FlexView $flexGapX={1.5} $height=\"100vh\" $justifyContent=\"center\" $alignItems=\"center\">\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={fetchChapterDetails}\n />\n </FlexView>\n );\n }\n\n if (!chapterDetails && isProcessing) {\n return <AppLoader height=\"80vh\" />;\n }\n\n return (\n <Styled.ContentWrapper\n ref={chapterPageRef}\n $widthX={50}\n $disablePointerEvents={isProcessing}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n {userType === 'TEACHER' && (\n <Styled.BackButtonContainer $height=\"100%\">\n <Styled.BackButtonWrapper>\n <IconButton\n Icon={Back2Icon}\n renderAs=\"secondary-gray\"\n analyticsLabel=\"chapter_page_exit\"\n size=\"xsmall\"\n onClick={onExit}\n />\n </Styled.BackButtonWrapper>\n </Styled.BackButtonContainer>\n )}\n\n {isProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loader\" />\n </Styled.LoaderWrapper>\n )}\n\n {chapterDetails && (\n <>\n <ChapterBanner\n title={chapterDetails.name}\n imageHue={chapterDetails.image_hue}\n imageUrl={chapterDetails.image_url}\n progressStats={chapterDetails?.progress_stat}\n bannerRef={bannerRef}\n />\n <BlockSections\n imageHue={chapterDetails.image_hue}\n userType={userType}\n blocks={chapterDetails.blocks}\n onBlockSkipUnskip={onBlockSkipUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAttemptLocationChange={onNodeAttemptLocationChange}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n coreBlocksRef={coreBlocksRef}\n />\n </>\n )}\n </Styled.ContentWrapper>\n );\n});\n\nexport default ChapterDetails;\n"],"names":["ChapterDetails","memo","props","userChapterId","studentId","userType","onBlockSkipUnskip","onNodeAttempt","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onExit","startChapterPageJourney","chapterPageRef","bannerRef","coreBlocksRef","canStartJourney","isJourneyActive","useJourney","getChapterDetails","chapterDetails","isProcessing","isProcessingFailed","isStale","useGetChapterDetails","fetchChapterDetails","useCallback","useEffect","jsxs","FlexView","jsx","Text","Button","AppLoader","Styled.ContentWrapper","Styled.BackButtonContainer","Styled.BackButtonWrapper","IconButton","Back2Icon","Styled.LoaderWrapper","ILLUSTRATIONS","Fragment","ChapterBanner","BlockSections","ChapterDetails$1"],"mappings":"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"}
@@ -21,8 +21,7 @@ const $ = ({ option: n }) => {
21
21
  /* @__PURE__ */ t(r, { width: 20, height: 20 }),
22
22
  /* @__PURE__ */ t(s, { $renderAs: "ub3", $color: "WHITE", children: l })
23
23
  ]
24
- },
25
- e
24
+ }
26
25
  );
27
26
  }, b = p($);
28
27
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"node-menu-option.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/node-menu-options/node-menu-option.tsx"],"sourcesContent":["import type { INodeMenuOption } from './node-menu-options-types';\n\nimport { memo, useCallback } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport * as Styled from './node-menu-options-styled';\n\nconst NodeMenuOption = ({ option }: { option: INodeMenuOption }) => {\n const { icon: OptionIcon, label, id, disabled, onClick } = option;\n\n const handleNodeOptionClick = useCallback(() => {\n if (!disabled) {\n onClick(id);\n }\n }, [disabled, id, onClick]);\n\n return (\n <Styled.NodeOptionWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $flexGap={8}\n $gapX={0.5}\n $gutterX={1}\n $opacity={disabled ? 0.5 : 1}\n $disabled={disabled}\n key={id}\n onClick={handleNodeOptionClick}\n >\n <OptionIcon width={20} height={20} />\n <Text $renderAs=\"ub3\" $color=\"WHITE\">\n {label}\n </Text>\n </Styled.NodeOptionWrapper>\n );\n};\n\nexport default memo(NodeMenuOption);\n"],"names":["NodeMenuOption","option","OptionIcon","label","id","disabled","onClick","handleNodeOptionClick","useCallback","jsxs","Styled.NodeOptionWrapper","jsx","Text","NodeMenuOption$1","memo"],"mappings":";;;;AAOA,MAAMA,IAAiB,CAAC,EAAE,QAAAC,QAA0C;AAClE,QAAM,EAAE,MAAMC,GAAY,OAAAC,GAAO,IAAAC,GAAI,UAAAC,GAAU,SAAAC,EAAY,IAAAL,GAErDM,IAAwBC,EAAY,MAAM;AAC9C,IAAKH,KACHC,EAAQF,CAAE;AAAA,EAEX,GAAA,CAACC,GAAUD,GAAIE,CAAO,CAAC;AAGxB,SAAA,gBAAAG;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,aAAY;AAAA,MACZ,UAAU;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,MACV,UAAUL,IAAW,MAAM;AAAA,MAC3B,WAAWA;AAAA,MAEX,SAASE;AAAA,MAET,UAAA;AAAA,QAAA,gBAAAI,EAACT,GAAW,EAAA,OAAO,IAAI,QAAQ,IAAI;AAAA,0BAClCU,GAAK,EAAA,WAAU,OAAM,QAAO,SAC1B,UACHT,GAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IANKC;AAAA,EAAA;AASX,GAEeS,IAAAC,EAAKd,CAAc;"}
1
+ {"version":3,"file":"node-menu-option.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/node-menu-options/node-menu-option.tsx"],"sourcesContent":["import type { INodeMenuOption } from './node-menu-options-types';\n\nimport { memo, useCallback } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport * as Styled from './node-menu-options-styled';\n\nconst NodeMenuOption = ({ option }: { option: INodeMenuOption }) => {\n const { icon: OptionIcon, label, id, disabled, onClick } = option;\n\n const handleNodeOptionClick = useCallback(() => {\n if (!disabled) {\n onClick(id);\n }\n }, [disabled, id, onClick]);\n\n return (\n <Styled.NodeOptionWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $flexGap={8}\n $gapX={0.5}\n $gutterX={1}\n $opacity={disabled ? 0.5 : 1}\n $disabled={disabled}\n onClick={handleNodeOptionClick}\n >\n <OptionIcon width={20} height={20} />\n <Text $renderAs=\"ub3\" $color=\"WHITE\">\n {label}\n </Text>\n </Styled.NodeOptionWrapper>\n );\n};\n\nexport default memo(NodeMenuOption);\n"],"names":["NodeMenuOption","option","OptionIcon","label","id","disabled","onClick","handleNodeOptionClick","useCallback","jsxs","Styled.NodeOptionWrapper","jsx","Text","NodeMenuOption$1","memo"],"mappings":";;;;AAOA,MAAMA,IAAiB,CAAC,EAAE,QAAAC,QAA0C;AAClE,QAAM,EAAE,MAAMC,GAAY,OAAAC,GAAO,IAAAC,GAAI,UAAAC,GAAU,SAAAC,EAAY,IAAAL,GAErDM,IAAwBC,EAAY,MAAM;AAC9C,IAAKH,KACHC,EAAQF,CAAE;AAAA,EAEX,GAAA,CAACC,GAAUD,GAAIE,CAAO,CAAC;AAGxB,SAAA,gBAAAG;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,aAAY;AAAA,MACZ,UAAU;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,MACV,UAAUL,IAAW,MAAM;AAAA,MAC3B,WAAWA;AAAA,MACX,SAASE;AAAA,MAET,UAAA;AAAA,QAAA,gBAAAI,EAACT,GAAW,EAAA,OAAO,IAAI,QAAQ,IAAI;AAAA,0BAClCU,GAAK,EAAA,WAAU,OAAM,QAAO,SAC1B,UACHT,GAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN,GAEeU,IAAAC,EAAKd,CAAc;"}
@@ -1,9 +1,9 @@
1
- import { jsx as r } from "react/jsx-runtime";
1
+ import { jsx as e } from "react/jsx-runtime";
2
2
  import { memo as t } from "react";
3
- import n from "./node-menu-option.js";
4
- import { NodeOptions as m } from "./node-menu-options-styled.js";
5
- const f = t(({ options: o }) => o.length === 0 ? null : /* @__PURE__ */ r(m, { $background: "BLACK_2", $borderColor: "WHITE_T_38", $gapX: 0.5, children: o.map((e) => /* @__PURE__ */ r(n, { option: e })) }));
3
+ import m from "./node-menu-option.js";
4
+ import { NodeOptions as n } from "./node-menu-options-styled.js";
5
+ const l = t(({ options: o }) => o.length === 0 ? null : /* @__PURE__ */ e(n, { $background: "BLACK_2", $borderColor: "WHITE_T_38", $gapX: 0.5, children: o.map((r) => /* @__PURE__ */ e(m, { option: r }, r.id)) }));
6
6
  export {
7
- f as default
7
+ l as default
8
8
  };
9
9
  //# sourceMappingURL=node-menu-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-menu-options.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.tsx"],"sourcesContent":["import type { INodeMenuOptions } from './node-menu-options-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport NodeMenuOption from './node-menu-option';\nimport * as Styled from './node-menu-options-styled';\n\nconst NodeMenuOptions: FC<INodeMenuOptions> = memo(({ options }) => {\n if (options.length === 0) return null;\n\n return (\n <Styled.NodeOptions $background=\"BLACK_2\" $borderColor=\"WHITE_T_38\" $gapX={0.5}>\n {options.map(optionInfo => (\n <NodeMenuOption option={optionInfo} />\n ))}\n </Styled.NodeOptions>\n );\n});\n\nexport default NodeMenuOptions;\n"],"names":["NodeMenuOptions","memo","options","Styled.NodeOptions","optionInfo","jsx","NodeMenuOption"],"mappings":";;;;AAQA,MAAMA,IAAwCC,EAAK,CAAC,EAAE,SAAAC,QAChDA,EAAQ,WAAW,IAAU,yBAG9BC,GAAA,EAAmB,aAAY,WAAU,cAAa,cAAa,OAAO,KACxE,UAAAD,EAAQ,IAAI,CACXE,MAAA,gBAAAC,EAACC,KAAe,QAAQF,EAAA,CAAY,CACrC,EACH,CAAA,CAEH;"}
1
+ {"version":3,"file":"node-menu-options.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.tsx"],"sourcesContent":["import type { INodeMenuOptions } from './node-menu-options-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport NodeMenuOption from './node-menu-option';\nimport * as Styled from './node-menu-options-styled';\n\nconst NodeMenuOptions: FC<INodeMenuOptions> = memo(({ options }) => {\n if (options.length === 0) return null;\n\n return (\n <Styled.NodeOptions $background=\"BLACK_2\" $borderColor=\"WHITE_T_38\" $gapX={0.5}>\n {options.map(optionInfo => (\n <NodeMenuOption option={optionInfo} key={optionInfo.id} />\n ))}\n </Styled.NodeOptions>\n );\n});\n\nexport default NodeMenuOptions;\n"],"names":["NodeMenuOptions","memo","options","jsx","Styled.NodeOptions","optionInfo","NodeMenuOption"],"mappings":";;;;AAQA,MAAMA,IAAwCC,EAAK,CAAC,EAAE,SAAAC,QAChDA,EAAQ,WAAW,IAAU,OAG/B,gBAAAC,EAACC,GAAA,EAAmB,aAAY,WAAU,cAAa,cAAa,OAAO,KACxE,YAAQ,IAAI,CAAAC,wBACVC,GAAe,EAAA,QAAQD,KAAiBA,EAAW,EAAI,CACzD,EACH,CAAA,CAEH;"}
@@ -97,8 +97,6 @@ const le = { renderer: "canvas", autoplay: !1 }, ye = z((b) => {
97
97
  $background: `${A}_2`,
98
98
  $disabled: n,
99
99
  onClick: H,
100
- onMouseEnter: K,
101
- onMouseLeave: P,
102
100
  children: /* @__PURE__ */ m(
103
101
  q,
104
102
  {
@@ -120,6 +118,8 @@ const le = { renderer: "canvas", autoplay: !1 }, ye = z((b) => {
120
118
  $gutterX: 0.78125,
121
119
  $flexGap: 8.5,
122
120
  $opacity: n ? 0.5 : 1,
121
+ onMouseEnter: K,
122
+ onMouseLeave: P,
123
123
  children: [
124
124
  /* @__PURE__ */ m(
125
125
  ae,
@@ -1 +1 @@
1
- {"version":3,"file":"student-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/student-actions/student-actions.tsx"],"sourcesContent":["import type { ILottieAnimationRef } from '../../../../ui/lottie-animation/types';\nimport type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\n\nimport { memo, useCallback, useRef, type FC } from 'react';\n\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport RedoIcon from '../../../../../assets/line-icons/icons/redo';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\nimport Text from '../../../../ui/text/text';\nimport { BLOCK_TYPE } from '../../../constants/block-constants';\nimport { NODE_CARD_STATES } from '../../../constants/node-constants';\nimport { getNodeTypeBasedBgImage } from '../../../utils';\nimport { getNodeCardBasedIcon } from '../../../utils/node-card-utils';\nimport BorderPathAnimation from '../border-path-animation';\nimport * as Styled from '../node-card-styled';\nimport NodeCardTags from '../node-card-tags';\nimport NodeMenuOptions from '../node-menu-options/node-menu-options';\n\nconst renderSettings = { renderer: 'canvas', autoplay: false };\n\nconst StudentActions: FC<Omit<INodeCardProps, 'userType'>> = memo(props => {\n const {\n nodeData,\n imageHue,\n blockType,\n onNodeAttempt,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n isStudent,\n } = props;\n const {\n accuracy,\n attempt_location: attemptLocation,\n node_type: nodeType,\n card_header: cardHeader,\n title,\n state,\n is_optional: isOptional,\n sheet_statement: sheetStatement,\n permissions,\n marked_as_completed: teacherMarkedAsCompleted,\n } = nodeData;\n const {\n can_review: canReview,\n can_start: canStart,\n can_resume: canResume,\n can_reset: canReset,\n } = permissions;\n\n const isGoalBlock = blockType === BLOCK_TYPE.GOAL;\n const sheetLocked = state === NODE_CARD_STATES.LOCKED;\n const sheetNotStarted = state === NODE_CARD_STATES.NOT_STARTED;\n const sheetInProgress = state === NODE_CARD_STATES.IN_PROGRESS;\n const inClassSheet = attemptLocation === 'INCLASS';\n const canStartOrResume = canStart || canResume;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n const renderOptions = !canStartOrResume && (canReset || canReview);\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-review':\n teacherMarkedAsCompleted ? onNodeView?.(nodeData) : onNodeReview?.(nodeData);\n\n return;\n\n case 'node-card-reattempt':\n onNodeReattempt?.(nodeData);\n\n return;\n\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [nodeData, onNodeReattempt, onNodeReview, onNodeView, teacherMarkedAsCompleted],\n );\n\n const handleOnNodeCardClick = useCallback(() => {\n if (renderOptions || sheetLocked) return;\n\n if (canStart || canResume) {\n onNodeAttempt?.(nodeData);\n } else if (teacherMarkedAsCompleted) {\n onNodeView?.(nodeData);\n }\n }, [\n canResume,\n canStart,\n nodeData,\n onNodeAttempt,\n onNodeView,\n renderOptions,\n sheetLocked,\n teacherMarkedAsCompleted,\n ]);\n\n const handleOnMouseEnter = useCallback(() => {\n if (sheetLocked) return;\n animationRef.current?.play();\n }, [sheetLocked]);\n\n const handleOnMouseLeave = useCallback(() => {\n animationRef.current?.stop();\n }, []);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-review',\n label: 'Review',\n icon: Eye2Icon,\n disabled: !canReview,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-reattempt',\n label: 'Reattempt',\n icon: RedoIcon,\n disabled: !canReset,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n return (\n <ContextMenu\n targetElement={\n <Styled.NodeCardContainer\n $showOutline={!showCardAnimation}\n $background={`${imageHue}_2`}\n $disabled={sheetLocked}\n onClick={handleOnNodeCardClick}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={!sheetStatement}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n $opacity={sheetLocked ? 0.5 : 1}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <LottieAnimation\n src={nodeCardLottie}\n ref={animationRef}\n settings={renderSettings}\n />\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\">\n {cardHeader} {inClassSheet && `• CW`}\n </Text>\n\n {showCardAnimation && <BorderPathAnimation />}\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n isStudent={isStudent}\n />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper $background=\"WHITE_1\" $heightX={4}>\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n </Styled.NodeCardContainer>\n }\n startLeft\n menuWidth=\"100%\"\n menuZIndex={6}\n menuOffset={2}\n menuElement={renderOptions ? <NodeMenuOptions options={menuOptions} /> : <></>}\n />\n );\n});\n\nexport default StudentActions;\n"],"names":["renderSettings","StudentActions","memo","props","nodeData","imageHue","blockType","onNodeAttempt","onNodeReattempt","onNodeReview","onNodeView","isStudent","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","teacherMarkedAsCompleted","canReview","canStart","canResume","canReset","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","canStartOrResume","showCardAnimation","renderOptions","animationRef","useRef","nodeBgImage","getNodeTypeBasedBgImage","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnNodeCardClick","handleOnMouseEnter","_a","handleOnMouseLeave","menuOptions","Eye2Icon","RedoIcon","jsx","ContextMenu","Styled.NodeCardContainer","jsxs","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","LottieAnimation","Styled.StyledImportantIcon","Text","BorderPathAnimation","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","NodeMenuOptions","Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"student-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/student-actions/student-actions.tsx"],"sourcesContent":["import type { ILottieAnimationRef } from '../../../../ui/lottie-animation/types';\nimport type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\n\nimport { memo, useCallback, useRef, type FC } from 'react';\n\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport RedoIcon from '../../../../../assets/line-icons/icons/redo';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\nimport Text from '../../../../ui/text/text';\nimport { BLOCK_TYPE } from '../../../constants/block-constants';\nimport { NODE_CARD_STATES } from '../../../constants/node-constants';\nimport { getNodeTypeBasedBgImage } from '../../../utils';\nimport { getNodeCardBasedIcon } from '../../../utils/node-card-utils';\nimport BorderPathAnimation from '../border-path-animation';\nimport * as Styled from '../node-card-styled';\nimport NodeCardTags from '../node-card-tags';\nimport NodeMenuOptions from '../node-menu-options/node-menu-options';\n\nconst renderSettings = { renderer: 'canvas', autoplay: false };\n\nconst StudentActions: FC<Omit<INodeCardProps, 'userType'>> = memo(props => {\n const {\n nodeData,\n imageHue,\n blockType,\n onNodeAttempt,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n isStudent,\n } = props;\n const {\n accuracy,\n attempt_location: attemptLocation,\n node_type: nodeType,\n card_header: cardHeader,\n title,\n state,\n is_optional: isOptional,\n sheet_statement: sheetStatement,\n permissions,\n marked_as_completed: teacherMarkedAsCompleted,\n } = nodeData;\n const {\n can_review: canReview,\n can_start: canStart,\n can_resume: canResume,\n can_reset: canReset,\n } = permissions;\n\n const isGoalBlock = blockType === BLOCK_TYPE.GOAL;\n const sheetLocked = state === NODE_CARD_STATES.LOCKED;\n const sheetNotStarted = state === NODE_CARD_STATES.NOT_STARTED;\n const sheetInProgress = state === NODE_CARD_STATES.IN_PROGRESS;\n const inClassSheet = attemptLocation === 'INCLASS';\n const canStartOrResume = canStart || canResume;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n const renderOptions = !canStartOrResume && (canReset || canReview);\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-review':\n teacherMarkedAsCompleted ? onNodeView?.(nodeData) : onNodeReview?.(nodeData);\n\n return;\n\n case 'node-card-reattempt':\n onNodeReattempt?.(nodeData);\n\n return;\n\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [nodeData, onNodeReattempt, onNodeReview, onNodeView, teacherMarkedAsCompleted],\n );\n\n const handleOnNodeCardClick = useCallback(() => {\n if (renderOptions || sheetLocked) return;\n\n if (canStart || canResume) {\n onNodeAttempt?.(nodeData);\n } else if (teacherMarkedAsCompleted) {\n onNodeView?.(nodeData);\n }\n }, [\n canResume,\n canStart,\n nodeData,\n onNodeAttempt,\n onNodeView,\n renderOptions,\n sheetLocked,\n teacherMarkedAsCompleted,\n ]);\n\n const handleOnMouseEnter = useCallback(() => {\n if (sheetLocked) return;\n animationRef.current?.play();\n }, [sheetLocked]);\n\n const handleOnMouseLeave = useCallback(() => {\n animationRef.current?.stop();\n }, []);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-review',\n label: 'Review',\n icon: Eye2Icon,\n disabled: !canReview,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-reattempt',\n label: 'Reattempt',\n icon: RedoIcon,\n disabled: !canReset,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n return (\n <ContextMenu\n targetElement={\n <Styled.NodeCardContainer\n $showOutline={!showCardAnimation}\n $background={`${imageHue}_2`}\n $disabled={sheetLocked}\n onClick={handleOnNodeCardClick}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={!sheetStatement}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n $opacity={sheetLocked ? 0.5 : 1}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <LottieAnimation\n src={nodeCardLottie}\n ref={animationRef}\n settings={renderSettings}\n />\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\">\n {cardHeader} {inClassSheet && `• CW`}\n </Text>\n\n {showCardAnimation && <BorderPathAnimation />}\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n isStudent={isStudent}\n />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper $background=\"WHITE_1\" $heightX={4}>\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n </Styled.NodeCardContainer>\n }\n startLeft\n menuWidth=\"100%\"\n menuZIndex={6}\n menuOffset={2}\n menuElement={renderOptions ? <NodeMenuOptions options={menuOptions} /> : <></>}\n />\n );\n});\n\nexport default StudentActions;\n"],"names":["renderSettings","StudentActions","memo","props","nodeData","imageHue","blockType","onNodeAttempt","onNodeReattempt","onNodeReview","onNodeView","isStudent","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","teacherMarkedAsCompleted","canReview","canStart","canResume","canReset","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","canStartOrResume","showCardAnimation","renderOptions","animationRef","useRef","nodeBgImage","getNodeTypeBasedBgImage","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnNodeCardClick","handleOnMouseEnter","_a","handleOnMouseLeave","menuOptions","Eye2Icon","RedoIcon","jsx","ContextMenu","Styled.NodeCardContainer","jsxs","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","LottieAnimation","Styled.StyledImportantIcon","Text","BorderPathAnimation","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","NodeMenuOptions","Fragment"],"mappings":"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"}
@@ -104,8 +104,6 @@ const fe = { renderer: "canvas", autoplay: !1 }, { ASSIGN_AS_HW: ue, REVIEW: $e,
104
104
  $isSheetLocked: n,
105
105
  $background: `${A}_2`,
106
106
  $disabled: !!_,
107
- onMouseEnter: X,
108
- onMouseLeave: F,
109
107
  children: [
110
108
  /* @__PURE__ */ o(
111
109
  N,
@@ -128,6 +126,8 @@ const fe = { renderer: "canvas", autoplay: !1 }, { ASSIGN_AS_HW: ue, REVIEW: $e,
128
126
  $bgImage: P,
129
127
  $gutterX: 0.78125,
130
128
  $flexGap: 8.5,
129
+ onMouseEnter: X,
130
+ onMouseLeave: F,
131
131
  children: [
132
132
  /* @__PURE__ */ o(
133
133
  ce,