@cuemath/leap 2.8.61-as13 → 2.8.61-as16

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 (29) hide show
  1. package/dist/assets/line-icons/icons/closed-eye.js +23 -0
  2. package/dist/assets/line-icons/icons/closed-eye.js.map +1 -0
  3. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +39 -39
  4. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +1 -1
  5. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +83 -81
  6. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +1 -1
  7. package/dist/features/chapters-v2/constants/node-constants.js.map +1 -1
  8. package/dist/features/homework/card-title.js +21 -0
  9. package/dist/features/homework/card-title.js.map +1 -0
  10. package/dist/features/homework/homework-card-view.js +133 -0
  11. package/dist/features/homework/homework-card-view.js.map +1 -0
  12. package/dist/features/homework/homework-card.js +153 -243
  13. package/dist/features/homework/homework-card.js.map +1 -1
  14. package/dist/features/homework/hw-card-list/hw-card-list-styled.js +38 -20
  15. package/dist/features/homework/hw-card-list/hw-card-list-styled.js.map +1 -1
  16. package/dist/features/homework/hw-card-list/hw-card-list.js +105 -89
  17. package/dist/features/homework/hw-card-list/hw-card-list.js.map +1 -1
  18. package/dist/features/homework/styles.js +31 -18
  19. package/dist/features/homework/styles.js.map +1 -1
  20. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +51 -52
  21. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
  22. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +36 -35
  23. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  24. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js +33 -32
  25. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js.map +1 -1
  26. package/dist/features/sheet-v2/resource-list/resource-list.js +25 -37
  27. package/dist/features/sheet-v2/resource-list/resource-list.js.map +1 -1
  28. package/dist/index.d.ts +13 -0
  29. package/package.json +1 -1
@@ -0,0 +1,23 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ const M = (t) => /* @__PURE__ */ o(
3
+ "svg",
4
+ {
5
+ xmlns: "http://www.w3.org/2000/svg",
6
+ width: "24",
7
+ height: "24",
8
+ viewBox: "0 0 24 24",
9
+ fill: "none",
10
+ ...t,
11
+ children: /* @__PURE__ */ o(
12
+ "path",
13
+ {
14
+ d: "M18.9663 12C18.526 13.0841 17.84 14.0422 16.9773 14.8052M5.03383 12C5.47631 13.0895 6.16696 14.0517 7.03562 14.8165M12.0163 19L12.0163 16.6893M16.9773 14.8052L19.1699 16.071M16.9773 14.8052C15.6555 15.9743 13.9189 16.6853 12.0163 16.6893M14.5546 16.3373L15.6831 18.2919M9.51717 16.2696C10.2944 16.5415 11.13 16.6894 12 16.6894C12.0055 16.6894 12.0109 16.6894 12.0163 16.6893M9.51717 16.2696C8.59464 15.9468 7.75422 15.4492 7.03562 14.8165M9.51717 16.2696L8.34354 18.3024M7.03562 14.8165L4.84277 16.0826",
15
+ stroke: "currentColor"
16
+ }
17
+ )
18
+ }
19
+ );
20
+ export {
21
+ M as default
22
+ };
23
+ //# sourceMappingURL=closed-eye.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closed-eye.js","sources":["../../../../src/assets/line-icons/icons/closed-eye.tsx"],"sourcesContent":["const ClosedEyeIcon: React.FC<React.SVGProps<SVGSVGElement>> = props => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n {...props}\n >\n <path\n d=\"M18.9663 12C18.526 13.0841 17.84 14.0422 16.9773 14.8052M5.03383 12C5.47631 13.0895 6.16696 14.0517 7.03562 14.8165M12.0163 19L12.0163 16.6893M16.9773 14.8052L19.1699 16.071M16.9773 14.8052C15.6555 15.9743 13.9189 16.6853 12.0163 16.6893M14.5546 16.3373L15.6831 18.2919M9.51717 16.2696C10.2944 16.5415 11.13 16.6894 12 16.6894C12.0055 16.6894 12.0109 16.6894 12.0163 16.6893M9.51717 16.2696C8.59464 15.9468 7.75422 15.4492 7.03562 14.8165M9.51717 16.2696L8.34354 18.3024M7.03562 14.8165L4.84277 16.0826\"\n stroke=\"currentColor\"\n />\n </svg>\n);\n\nexport default ClosedEyeIcon;\n"],"names":["ClosedEyeIcon","props","jsx"],"mappings":";AAAA,MAAMA,IAAyD,CAC7DC,MAAA,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,OAAM;AAAA,IACN,QAAO;AAAA,IACP,SAAQ;AAAA,IACR,MAAK;AAAA,IACJ,GAAGD;AAAA,IAEJ,UAAA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,GAAE;AAAA,QACF,QAAO;AAAA,MAAA;AAAA,IACT;AAAA,EAAA;AACF;"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as e, jsxs as d, Fragment as F } from "react/jsx-runtime";
2
- import { memo as Y, useState as Z, useCallback as s } from "react";
2
+ import { memo as Y, useState as Z, useCallback as m } from "react";
3
3
  import q from "../../../../../assets/line-icons/icons/eye2.js";
4
4
  import J from "../../../../../assets/line-icons/icons/redo.js";
5
5
  import Q from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
@@ -7,11 +7,11 @@ import U from "../../../../ui/context-menu/context-menu.js";
7
7
  import V from "../../../../ui/lottie-animation/lottie-animation.js";
8
8
  import ee from "../../../../ui/text/text.js";
9
9
  import { BLOCK_TYPE as te } from "../../../constants/block-constants.js";
10
- import { NODE_CARD_STATES as u } from "../../../constants/node-constants.js";
10
+ import { NODE_CARD_STATES as f } from "../../../constants/node-constants.js";
11
11
  import { getNodeTypeBasedBgImage as oe } from "../../../utils/index.js";
12
- import { getNodeCardBasedIcon as ne } from "../../../utils/node-card-utils.js";
13
- import re from "../border-path-animation.js";
14
- import { NodeCardContainer as ae, NodeCardInfoWrapper as ie, IconWrapper as ce, StyledImportantIcon as de, NodeCardContentWrapper as se, NodeCardTitle as me } from "../node-card-styled.js";
12
+ import { getNodeCardBasedIcon as re } from "../../../utils/node-card-utils.js";
13
+ import ne from "../border-path-animation.js";
14
+ import { NodeCardContainer as ae, NodeCardInfoWrapper as ie, IconWrapper as ce, StyledImportantIcon as se, NodeCardContentWrapper as de, NodeCardTitle as me } from "../node-card-styled.js";
15
15
  import le from "../node-card-tags.js";
16
16
  import pe from "../node-menu-options/node-menu-options.js";
17
17
  const we = Y((L) => {
@@ -20,53 +20,53 @@ const we = Y((L) => {
20
20
  imageHue: S,
21
21
  blockType: T,
22
22
  onNodeAttempt: n,
23
- onNodeReattempt: r,
24
- onNodeReview: a,
25
- onNodeView: i
23
+ onNodeReattempt: a,
24
+ onNodeReview: i,
25
+ onNodeView: o
26
26
  } = L, {
27
27
  accuracy: E,
28
28
  attempt_location: w,
29
- node_type: m,
30
- card_header: N,
31
- title: y,
29
+ node_type: l,
30
+ card_header: y,
31
+ title: N,
32
32
  state: c,
33
- is_optional: f,
34
- sheet_statement: C,
33
+ is_optional: C,
34
+ sheet_statement: $,
35
35
  permissions: R,
36
- marked_as_completed: $
36
+ marked_as_completed: s
37
37
  } = t, {
38
38
  can_review: g,
39
- can_start: l,
40
- can_resume: p,
39
+ can_start: p,
40
+ can_resume: h,
41
41
  can_reset: I
42
- } = R, _ = T === te.GOAL, o = c === u.LOCKED, x = c === u.NOT_STARTED, B = c === u.IN_PROGRESS, v = w === "INCLASS", M = !C || !_, W = l || p, O = !f && (B || x), h = !W && (I || g), [D, k] = Z(!1), H = oe(m), { icon: G, lottie: K } = ne(m), b = s(
42
+ } = R, _ = T === te.GOAL, r = c === f.LOCKED, x = c === f.NOT_STARTED, B = c === f.IN_PROGRESS, v = w === "INCLASS", M = !$ || !_, W = p || h, O = !C && (B || x), u = !W && (I || g), [D, k] = Z(!1), H = oe(l), { icon: G, lottie: K } = re(l), b = m(
43
43
  (A) => {
44
44
  switch (A) {
45
45
  case "node-card-review":
46
- a == null || a(t);
46
+ s ? o == null || o(t) : i == null || i(t);
47
47
  return;
48
48
  case "node-card-reattempt":
49
- r == null || r(t);
49
+ a == null || a(t);
50
50
  return;
51
51
  default:
52
52
  throw new Error(`No callback function for ${A}`);
53
53
  }
54
54
  },
55
- [t, r, a]
56
- ), P = s(() => {
57
- h || o || (l || p ? n == null || n(t) : $ && (i == null || i(t)));
55
+ [t, a, i, o, s]
56
+ ), P = m(() => {
57
+ u || r || (p || h ? n == null || n(t) : s && (o == null || o(t)));
58
58
  }, [
59
+ h,
59
60
  p,
60
- l,
61
61
  t,
62
62
  n,
63
- i,
64
- h,
65
63
  o,
66
- $
67
- ]), X = s(() => {
64
+ u,
65
+ r,
66
+ s
67
+ ]), X = m(() => {
68
68
  k(!0);
69
- }, []), j = s(() => {
69
+ }, []), j = m(() => {
70
70
  k(!1);
71
71
  }, []), z = [
72
72
  {
@@ -92,7 +92,7 @@ const we = Y((L) => {
92
92
  {
93
93
  $showOutline: !O,
94
94
  $background: `${S}_2`,
95
- $disabled: o,
95
+ $disabled: r,
96
96
  onClick: P,
97
97
  onMouseEnter: X,
98
98
  onMouseLeave: j,
@@ -100,7 +100,7 @@ const we = Y((L) => {
100
100
  Q,
101
101
  {
102
102
  renderAs: "primary",
103
- tooltipItem: C,
103
+ tooltipItem: $,
104
104
  position: "bottom",
105
105
  zIndex: 5,
106
106
  hidden: M,
@@ -116,7 +116,7 @@ const we = Y((L) => {
116
116
  $bgImage: H,
117
117
  $gutterX: 0.78125,
118
118
  $flexGap: 8.5,
119
- $opacity: o ? 0.5 : 1,
119
+ $opacity: r ? 0.5 : 1,
120
120
  children: [
121
121
  /* @__PURE__ */ d(
122
122
  ce,
@@ -129,27 +129,27 @@ const we = Y((L) => {
129
129
  $justifyContent: "center",
130
130
  children: [
131
131
  D ? /* @__PURE__ */ e(V, { src: K }) : /* @__PURE__ */ e(G, { width: 20, height: 20 }),
132
- !f && /* @__PURE__ */ e(de, {})
132
+ !C && /* @__PURE__ */ e(se, {})
133
133
  ]
134
134
  }
135
135
  ),
136
136
  /* @__PURE__ */ d(ee, { $renderAs: "ac4-black", $color: "BLACK", children: [
137
- N,
137
+ y,
138
138
  " ",
139
139
  v && ". CW"
140
140
  ] }),
141
- O && /* @__PURE__ */ e(re, {})
141
+ O && /* @__PURE__ */ e(ne, {})
142
142
  ]
143
143
  }
144
144
  ),
145
- /* @__PURE__ */ e(le, { nodeType: m, state: c, accuracy: E }),
146
- !_ && /* @__PURE__ */ e(se, { $background: "WHITE_1", $heightX: 4, children: /* @__PURE__ */ e(
145
+ /* @__PURE__ */ e(le, { nodeType: l, state: c, accuracy: E }),
146
+ !_ && /* @__PURE__ */ e(de, { $background: "WHITE_1", $heightX: 4, children: /* @__PURE__ */ e(
147
147
  me,
148
148
  {
149
149
  $renderAs: "ab3",
150
150
  $color: "BLACK_1",
151
- $opacity: o ? 0.5 : 1,
152
- children: y
151
+ $opacity: r ? 0.5 : 1,
152
+ children: N
153
153
  }
154
154
  ) })
155
155
  ]
@@ -161,7 +161,7 @@ const we = Y((L) => {
161
161
  menuWidth: "100%",
162
162
  menuZIndex: 6,
163
163
  menuOffset: 2,
164
- menuElement: /* @__PURE__ */ e(F, { children: h ? /* @__PURE__ */ e(pe, { options: z }) : void 0 })
164
+ menuElement: /* @__PURE__ */ e(F, { children: u ? /* @__PURE__ */ e(pe, { options: z }) : void 0 })
165
165
  }
166
166
  );
167
167
  });
@@ -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 { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\n\nimport { memo, useCallback, useState, 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 StudentActions: FC<Omit<INodeCardProps, 'userType'>> = memo(props => {\n const {\n nodeData,\n imageHue,\n blockType,\n onNodeAttempt,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\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\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 tooltipHidden = !sheetStatement || !isGoalBlock;\n const canStartOrResume = canStart || canResume;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n const renderOptions = !canStartOrResume && (canReset || canReview);\n\n const [renderLottie, setRenderLottie] = useState(false);\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { icon: NodeCardIcon, lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-review':\n 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],\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 setRenderLottie(true);\n }, []);\n\n const handleOnMouseLeave = useCallback(() => {\n setRenderLottie(false);\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={tooltipHidden}\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 {renderLottie ? (\n <LottieAnimation src={nodeCardLottie} />\n ) : (\n <NodeCardIcon width={20} height={20} />\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 nodeType={nodeType} state={state} accuracy={accuracy} />\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} /> : undefined}</>}\n />\n );\n});\n\nexport default StudentActions;\n"],"names":["StudentActions","memo","props","nodeData","imageHue","blockType","onNodeAttempt","onNodeReattempt","onNodeReview","onNodeView","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","teacherMarkedAsCompleted","canReview","canStart","canResume","canReset","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","tooltipHidden","canStartOrResume","showCardAnimation","renderOptions","renderLottie","setRenderLottie","useState","nodeBgImage","getNodeTypeBasedBgImage","NodeCardIcon","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnNodeCardClick","handleOnMouseEnter","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"],"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 { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\n\nimport { memo, useCallback, useState, 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 StudentActions: FC<Omit<INodeCardProps, 'userType'>> = memo(props => {\n const {\n nodeData,\n imageHue,\n blockType,\n onNodeAttempt,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\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\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 tooltipHidden = !sheetStatement || !isGoalBlock;\n const canStartOrResume = canStart || canResume;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n const renderOptions = !canStartOrResume && (canReset || canReview);\n\n const [renderLottie, setRenderLottie] = useState(false);\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { icon: NodeCardIcon, 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 setRenderLottie(true);\n }, []);\n\n const handleOnMouseLeave = useCallback(() => {\n setRenderLottie(false);\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={tooltipHidden}\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 {renderLottie ? (\n <LottieAnimation src={nodeCardLottie} />\n ) : (\n <NodeCardIcon width={20} height={20} />\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 nodeType={nodeType} state={state} accuracy={accuracy} />\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} /> : undefined}</>}\n />\n );\n});\n\nexport default StudentActions;\n"],"names":["StudentActions","memo","props","nodeData","imageHue","blockType","onNodeAttempt","onNodeReattempt","onNodeReview","onNodeView","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","teacherMarkedAsCompleted","canReview","canStart","canResume","canReset","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","tooltipHidden","canStartOrResume","showCardAnimation","renderOptions","renderLottie","setRenderLottie","useState","nodeBgImage","getNodeTypeBasedBgImage","NodeCardIcon","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnNodeCardClick","handleOnMouseEnter","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"],"mappings":"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"}
@@ -1,52 +1,53 @@
1
1
  import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
- import { memo as U, useState as Y, useRef as q, useCallback as f } from "react";
3
- import J from "../../../../../assets/line-icons/icons/check2.js";
4
- import Q from "../../../../../assets/line-icons/icons/eye2.js";
5
- import V from "../../../../../assets/line-icons/icons/home2.js";
6
- import k from "../../../../../assets/line-icons/icons/more-vertical.js";
7
- import Z from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
8
- import D from "../../../../ui/hooks/use-context-menu-click-handler.js";
9
- import ee from "../../../../ui/layout/flex-view.js";
10
- import te from "../../../../ui/lottie-animation/lottie-animation.js";
11
- import re from "../../../../ui/text/text.js";
12
- import { BLOCK_TYPE as oe } from "../../../constants/block-constants.js";
13
- import { NODE_CARD_STATES as u, TEACHER_MENU_LABELS as ie } from "../../../constants/node-constants.js";
14
- import { getNodeTypeBasedBgImage as ne } from "../../../utils/index.js";
15
- import { getNodeCardBasedIcon as ce } from "../../../utils/node-card-utils.js";
16
- import ae from "../border-path-animation.js";
17
- import { NodeCardContainer as se, NodeCardInfoWrapper as le, IconWrapper as de, StyledImportantIcon as me, NodeKebabMenuWrapper as O, NodeCardContentWrapper as pe, NodeCardTitle as he, NodeMenuOptionsWrapper as fe } from "../node-card-styled.js";
18
- import ue from "../node-card-tags.js";
19
- import $e from "../node-menu-options/node-menu-options.js";
20
- const { ASSIGN_AS_HW: Ce, REVIEW: _e, VIEW: Ie, MARK_AS_DONE: ge } = ie, Pe = U(
2
+ import { memo as Y, useState as q, useRef as J, useCallback as u } from "react";
3
+ import Q from "../../../../../assets/line-icons/icons/check2.js";
4
+ import V from "../../../../../assets/line-icons/icons/eye2.js";
5
+ import Z from "../../../../../assets/line-icons/icons/home2.js";
6
+ import O from "../../../../../assets/line-icons/icons/more-vertical.js";
7
+ import D from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
8
+ import ee from "../../../../ui/hooks/use-context-menu-click-handler.js";
9
+ import te from "../../../../ui/layout/flex-view.js";
10
+ import re from "../../../../ui/lottie-animation/lottie-animation.js";
11
+ import oe from "../../../../ui/text/text.js";
12
+ import { BLOCK_TYPE as ie } from "../../../constants/block-constants.js";
13
+ import { NODE_CARD_STATES as $, TEACHER_MENU_LABELS as ne } from "../../../constants/node-constants.js";
14
+ import { getNodeTypeBasedBgImage as ce } from "../../../utils/index.js";
15
+ import { getNodeCardBasedIcon as ae } from "../../../utils/node-card-utils.js";
16
+ import se from "../border-path-animation.js";
17
+ import { NodeCardContainer as le, NodeCardInfoWrapper as de, IconWrapper as me, StyledImportantIcon as pe, NodeKebabMenuWrapper as T, NodeCardContentWrapper as he, NodeCardTitle as fe, NodeMenuOptionsWrapper as ue } from "../node-card-styled.js";
18
+ import $e from "../node-card-tags.js";
19
+ import Ce from "../node-menu-options/node-menu-options.js";
20
+ const { ASSIGN_AS_HW: _e, REVIEW: Ie, VIEW: ge, MARK_AS_DONE: be } = ne, Xe = Y(
21
21
  ({
22
22
  nodeData: t,
23
- imageHue: T,
23
+ imageHue: A,
24
24
  blockType: L,
25
- isSkipped: $,
25
+ isSkipped: C,
26
26
  onNodeAttemptLocationChange: o,
27
27
  onNodeMarkAsDone: i,
28
28
  onNodeView: n,
29
29
  onNodeReview: c
30
30
  }) => {
31
- const [w, C] = Y(!1), l = q(null), { menuVisible: x, onMenuClick: _ } = D(l), {
31
+ const [w, _] = q(!1), l = J(null), { menuVisible: x, onMenuClick: I } = ee(l), {
32
32
  accuracy: y,
33
- attempt_location: A,
33
+ attempt_location: W,
34
34
  node_type: d,
35
- card_header: W,
36
- title: B,
35
+ card_header: B,
36
+ title: M,
37
37
  state: a,
38
- is_optional: I,
39
- sheet_statement: g,
40
- permissions: M
38
+ is_optional: g,
39
+ sheet_statement: b,
40
+ permissions: H,
41
+ user_attempt_id: m
41
42
  } = t, {
42
- can_change_attempt_location: H,
43
- can_mark_familiar: G,
44
- can_review: m
45
- } = M, p = L === oe.GOAL, s = a === u.LOCKED, K = a === u.NOT_STARTED, R = a === u.IN_PROGRESS, b = A === "INCLASS", j = !g || !p, E = !I && (R || K), P = ne(d), { icon: X, lottie: v } = ce(d), h = f(
46
- (S) => {
47
- switch (S) {
43
+ can_change_attempt_location: G,
44
+ can_mark_familiar: K,
45
+ can_review: p
46
+ } = H, h = L === ie.GOAL, s = a === $.LOCKED, R = a === $.NOT_STARTED, j = a === $.IN_PROGRESS, E = W === "INCLASS", P = !b || !h, S = !g && (j || R), X = ce(d), { icon: v, lottie: F } = ae(d), f = u(
47
+ (k) => {
48
+ switch (k) {
48
49
  case "node-card-view":
49
- m ? c == null || c(t) : n == null || n(t);
50
+ p && m ? c == null || c(t) : n == null || n(t);
50
51
  return;
51
52
  case "node-card-assign-as-hw":
52
53
  o == null || o(t);
@@ -55,78 +56,79 @@ const { ASSIGN_AS_HW: Ce, REVIEW: _e, VIEW: Ie, MARK_AS_DONE: ge } = ie, Pe = U(
55
56
  i == null || i(t);
56
57
  return;
57
58
  default:
58
- throw new Error(`No callback function for ${S}`);
59
+ throw new Error(`No callback function for ${k}`);
59
60
  }
60
61
  },
61
62
  [
62
- m,
63
+ p,
63
64
  t,
64
65
  o,
65
66
  i,
66
67
  c,
67
- n
68
+ n,
69
+ m
68
70
  ]
69
- ), F = f(() => {
70
- C(!0);
71
- }, []), z = f(() => {
72
- C(!1);
73
- }, []), N = [
71
+ ), z = u(() => {
72
+ _(!0);
73
+ }, []), N = u(() => {
74
+ _(!1);
75
+ }, []), U = [
74
76
  {
75
77
  id: "node-card-view",
76
- label: m ? _e : Ie,
77
- icon: Q,
78
+ label: p && m ? Ie : ge,
79
+ icon: V,
78
80
  disabled: !1,
79
- onClick: h
81
+ onClick: f
80
82
  },
81
83
  {
82
84
  id: "node-card-assign-as-hw",
83
- label: Ce,
84
- icon: V,
85
- disabled: !H || !b,
86
- onClick: h
85
+ label: _e,
86
+ icon: Z,
87
+ disabled: !G || !E,
88
+ onClick: f
87
89
  },
88
90
  {
89
91
  id: "node-card-mark-as-done",
90
- label: ge,
91
- icon: J,
92
- disabled: !G,
93
- onClick: h
92
+ label: be,
93
+ icon: Q,
94
+ disabled: !K,
95
+ onClick: f
94
96
  }
95
97
  ];
96
98
  return /* @__PURE__ */ r(
97
- se,
99
+ le,
98
100
  {
99
- $showOutline: !E,
101
+ $showOutline: !S,
100
102
  $isSheetLocked: s,
101
- $background: `${T}_2`,
102
- $disabled: !!$,
103
- onMouseEnter: F,
104
- onMouseLeave: z,
103
+ $background: `${A}_2`,
104
+ $disabled: !!C,
105
+ onMouseEnter: z,
106
+ onMouseLeave: N,
105
107
  children: [
106
108
  /* @__PURE__ */ r(
107
- Z,
109
+ D,
108
110
  {
109
111
  renderAs: "primary",
110
- tooltipItem: g,
112
+ tooltipItem: b,
111
113
  position: "bottom",
112
114
  zIndex: 5,
113
- hidden: j,
115
+ hidden: P,
114
116
  parentWidth: "100%",
115
117
  widthX: 11.25,
116
118
  children: [
117
119
  /* @__PURE__ */ r(
118
- le,
120
+ de,
119
121
  {
120
122
  $flexDirection: "row",
121
123
  $alignItems: "center",
122
124
  $width: "100%",
123
125
  $heightX: 3.5,
124
- $bgImage: P,
126
+ $bgImage: X,
125
127
  $gutterX: 0.78125,
126
128
  $flexGap: 8.5,
127
129
  children: [
128
130
  /* @__PURE__ */ r(
129
- de,
131
+ me,
130
132
  {
131
133
  $width: 31,
132
134
  $height: 31,
@@ -136,24 +138,24 @@ const { ASSIGN_AS_HW: Ce, REVIEW: _e, VIEW: Ie, MARK_AS_DONE: ge } = ie, Pe = U(
136
138
  $justifyContent: "center",
137
139
  $opacity: s ? 0.5 : 1,
138
140
  children: [
139
- w ? /* @__PURE__ */ e(te, { src: v }) : /* @__PURE__ */ e(X, { width: 20, height: 20 }),
140
- !I && /* @__PURE__ */ e(me, {})
141
+ w ? /* @__PURE__ */ e(re, { src: F }) : /* @__PURE__ */ e(v, { width: 20, height: 20 }),
142
+ !g && /* @__PURE__ */ e(pe, {})
141
143
  ]
142
144
  }
143
145
  ),
144
- /* @__PURE__ */ r(re, { $renderAs: "ac4-black", $color: "BLACK", $opacity: s ? 0.5 : 1, children: [
145
- W,
146
+ /* @__PURE__ */ r(oe, { $renderAs: "ac4-black", $color: "BLACK", $opacity: s ? 0.5 : 1, children: [
147
+ B,
146
148
  " ",
147
- b && ". CW"
149
+ E && ". CW"
148
150
  ] }),
149
- /* @__PURE__ */ e(ee, { className: "context-menu", children: p && /* @__PURE__ */ e(O, { ref: l, onClick: _, children: /* @__PURE__ */ e(k, { width: 16, height: 16 }) }) }),
150
- E && !$ && /* @__PURE__ */ e(ae, {})
151
+ /* @__PURE__ */ e(te, { className: "context-menu", children: h && /* @__PURE__ */ e(T, { ref: l, onClick: I, children: /* @__PURE__ */ e(O, { width: 16, height: 16 }) }) }),
152
+ S && !C && /* @__PURE__ */ e(se, {})
151
153
  ]
152
154
  }
153
155
  ),
154
- /* @__PURE__ */ e(ue, { nodeType: d, state: a, accuracy: y }),
155
- !p && /* @__PURE__ */ r(
156
- pe,
156
+ /* @__PURE__ */ e($e, { nodeType: d, state: a, accuracy: y }),
157
+ !h && /* @__PURE__ */ r(
158
+ he,
157
159
  {
158
160
  $flexDirection: "row",
159
161
  $alignItems: "center",
@@ -163,28 +165,28 @@ const { ASSIGN_AS_HW: Ce, REVIEW: _e, VIEW: Ie, MARK_AS_DONE: ge } = ie, Pe = U(
163
165
  $justifyContent: "space-between",
164
166
  children: [
165
167
  /* @__PURE__ */ e(
166
- he,
168
+ fe,
167
169
  {
168
170
  $renderAs: "ab3",
169
171
  $color: "BLACK_1",
170
172
  $opacity: s ? 0.5 : 1,
171
- children: B
173
+ children: M
172
174
  }
173
175
  ),
174
- /* @__PURE__ */ e(O, { ref: l, onClick: _, children: /* @__PURE__ */ e(k, { width: 16, height: 16 }) })
176
+ /* @__PURE__ */ e(T, { ref: l, onClick: I, children: /* @__PURE__ */ e(O, { width: 16, height: 16 }) })
175
177
  ]
176
178
  }
177
179
  )
178
180
  ]
179
181
  }
180
182
  ),
181
- /* @__PURE__ */ e(fe, { $visible: x, children: /* @__PURE__ */ e($e, { options: N }) })
183
+ /* @__PURE__ */ e(ue, { $visible: x, children: /* @__PURE__ */ e(Ce, { options: U }) })
182
184
  ]
183
185
  }
184
186
  );
185
187
  }
186
188
  );
187
189
  export {
188
- Pe as default
190
+ Xe as default
189
191
  };
190
192
  //# sourceMappingURL=teacher-actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"teacher-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.tsx"],"sourcesContent":["import type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useRef, useState } from 'react';\n\nimport Check2Icon from '../../../../../assets/line-icons/icons/check2';\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport Home2Icon from '../../../../../assets/line-icons/icons/home2';\nimport MoreVerticalIcon from '../../../../../assets/line-icons/icons/more-vertical';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport useContextMenuClickHandler from '../../../../ui/hooks/use-context-menu-click-handler';\nimport FlexView from '../../../../ui/layout/flex-view';\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, TEACHER_MENU_LABELS } 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 { ASSIGN_AS_HW, REVIEW, VIEW, MARK_AS_DONE } = TEACHER_MENU_LABELS;\n\nconst TeacherActions: FC<Omit<INodeCardProps, 'userType'>> = memo(\n ({\n nodeData,\n imageHue,\n blockType,\n isSkipped,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeView,\n onNodeReview,\n }) => {\n const [renderLottie, setRenderLottie] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const { menuVisible, onMenuClick } = useContextMenuClickHandler(containerRef);\n\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 } = nodeData;\n\n const {\n can_change_attempt_location: canChangeAttemptLocation,\n can_mark_familiar: canMarkFamiliar,\n can_review: canReview,\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 tooltipHidden = !sheetStatement || !isGoalBlock;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { icon: NodeCardIcon, lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-view':\n if (canReview) {\n onNodeReview?.(nodeData);\n } else {\n onNodeView?.(nodeData);\n }\n\n return;\n\n case 'node-card-assign-as-hw':\n onNodeAttemptLocationChange?.(nodeData);\n\n return;\n\n case 'node-card-mark-as-done':\n onNodeMarkAsDone?.(nodeData);\n\n return;\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [\n canReview,\n nodeData,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeReview,\n onNodeView,\n ],\n );\n\n const handleOnMouseEnter = useCallback(() => {\n setRenderLottie(true);\n }, []);\n\n const handleOnMouseLeave = useCallback(() => {\n setRenderLottie(false);\n }, []);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-view',\n label: canReview ? REVIEW : VIEW,\n icon: Eye2Icon,\n disabled: false,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-assign-as-hw',\n label: ASSIGN_AS_HW,\n icon: Home2Icon,\n disabled: !canChangeAttemptLocation || !inClassSheet,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-mark-as-done',\n label: MARK_AS_DONE,\n icon: Check2Icon,\n disabled: !canMarkFamiliar,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n return (\n <Styled.NodeCardContainer\n $showOutline={!showCardAnimation}\n $isSheetLocked={sheetLocked}\n $background={`${imageHue}_2`}\n $disabled={Boolean(isSkipped)}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={tooltipHidden}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $width=\"100%\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {renderLottie ? (\n <LottieAnimation src={nodeCardLottie} />\n ) : (\n <NodeCardIcon width={20} height={20} />\n )}\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\" $opacity={sheetLocked ? 0.5 : 1}>\n {cardHeader} {inClassSheet && `. CW`}\n </Text>\n\n <FlexView className=\"context-menu\">\n {isGoalBlock && (\n <Styled.NodeKebabMenuWrapper ref={containerRef} onClick={onMenuClick}>\n <MoreVerticalIcon width={16} height={16} />\n </Styled.NodeKebabMenuWrapper>\n )}\n </FlexView>\n\n {showCardAnimation && !isSkipped && <BorderPathAnimation />}\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags nodeType={nodeType} state={state} accuracy={accuracy} />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $background=\"WHITE_1\"\n $flexGap={8}\n $heightX={4}\n $justifyContent=\"space-between\"\n >\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n\n <Styled.NodeKebabMenuWrapper ref={containerRef} onClick={onMenuClick}>\n <MoreVerticalIcon width={16} height={16} />\n </Styled.NodeKebabMenuWrapper>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n\n <Styled.NodeMenuOptionsWrapper $visible={menuVisible}>\n <NodeMenuOptions options={menuOptions} />\n </Styled.NodeMenuOptionsWrapper>\n </Styled.NodeCardContainer>\n );\n },\n);\n\nexport default TeacherActions;\n"],"names":["ASSIGN_AS_HW","REVIEW","VIEW","MARK_AS_DONE","TEACHER_MENU_LABELS","TeacherActions","memo","nodeData","imageHue","blockType","isSkipped","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeView","onNodeReview","renderLottie","setRenderLottie","useState","containerRef","useRef","menuVisible","onMenuClick","useContextMenuClickHandler","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","canChangeAttemptLocation","canMarkFamiliar","canReview","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","tooltipHidden","showCardAnimation","nodeBgImage","getNodeTypeBasedBgImage","NodeCardIcon","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnMouseEnter","handleOnMouseLeave","menuOptions","Eye2Icon","Home2Icon","Check2Icon","jsxs","Styled.NodeCardContainer","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","jsx","LottieAnimation","Styled.StyledImportantIcon","Text","FlexView","Styled.NodeKebabMenuWrapper","MoreVerticalIcon","BorderPathAnimation","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","Styled.NodeMenuOptionsWrapper","NodeMenuOptions"],"mappings":";;;;;;;;;;;;;;;;;;;AAwBA,MAAM,EAAE,cAAAA,IAAc,QAAAC,IAAQ,MAAAC,IAAM,cAAAC,OAAiBC,IAE/CC,KAAuDC;AAAA,EAC3D,CAAC;AAAA,IACC,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,6BAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,MACI;AACJ,UAAM,CAACC,GAAcC,CAAe,IAAIC,EAAS,EAAK,GAChDC,IAAeC,EAAuB,IAAI,GAE1C,EAAE,aAAAC,GAAa,aAAAC,EAAY,IAAIC,EAA2BJ,CAAY,GAEtE;AAAA,MACJ,UAAAK;AAAA,MACA,kBAAkBC;AAAA,MAClB,WAAWC;AAAA,MACX,aAAaC;AAAA,MACb,OAAAC;AAAA,MACA,OAAAC;AAAA,MACA,aAAaC;AAAA,MACb,iBAAiBC;AAAA,MACjB,aAAAC;AAAA,IACE,IAAAxB,GAEE;AAAA,MACJ,6BAA6ByB;AAAA,MAC7B,mBAAmBC;AAAA,MACnB,YAAYC;AAAA,IACV,IAAAH,GAEEI,IAAc1B,MAAc2B,GAAW,MACvCC,IAAcT,MAAUU,EAAiB,QACzCC,IAAkBX,MAAUU,EAAiB,aAC7CE,IAAkBZ,MAAUU,EAAiB,aAC7CG,IAAejB,MAAoB,WACnCkB,IAAgB,CAACZ,KAAkB,CAACK,GAEpCQ,IAAoB,CAACd,MAAeW,KAAmBD,IAEvDK,IAAcC,GAAwBpB,CAAQ,GAC9C,EAAE,MAAMqB,GAAc,QAAQC,MAAmBC,GAAqBvB,CAAQ,GAE9EwB,IAA0BC;AAAA,MAC9B,CAACC,MAAqB;AACpB,gBAAQA,GAAU;AAAA,UAChB,KAAK;AACH,YAAIjB,IACFpB,KAAA,QAAAA,EAAeP,KAEfM,KAAA,QAAAA,EAAaN;AAGf;AAAA,UAEF,KAAK;AACH,YAAAI,KAAA,QAAAA,EAA8BJ;AAE9B;AAAA,UAEF,KAAK;AACH,YAAAK,KAAA,QAAAA,EAAmBL;AAEnB;AAAA,UACF;AACE,kBAAM,IAAI,MAAM,4BAA4B4C,CAAQ,EAAE;AAAA,QAC1D;AAAA,MACF;AAAA,MACA;AAAA,QACEjB;AAAA,QACA3B;AAAA,QACAI;AAAA,QACAC;AAAA,QACAE;AAAA,QACAD;AAAA,MACF;AAAA,IAAA,GAGIuC,IAAqBF,EAAY,MAAM;AAC3C,MAAAlC,EAAgB,EAAI;AAAA,IACtB,GAAG,CAAE,CAAA,GAECqC,IAAqBH,EAAY,MAAM;AAC3C,MAAAlC,EAAgB,EAAK;AAAA,IACvB,GAAG,CAAE,CAAA,GAECsC,IAAiC;AAAA,MACrC;AAAA,QACE,IAAI;AAAA,QACJ,OAAOpB,IAAYjC,KAASC;AAAA,QAC5B,MAAMqD;AAAA,QACN,UAAU;AAAA,QACV,SAASN;AAAA,MACX;AAAA,MACA;AAAA,QACE,IAAI;AAAA,QACJ,OAAOjD;AAAA,QACP,MAAMwD;AAAA,QACN,UAAU,CAACxB,KAA4B,CAACS;AAAA,QACxC,SAASQ;AAAA,MACX;AAAA,MACA;AAAA,QACE,IAAI;AAAA,QACJ,OAAO9C;AAAA,QACP,MAAMsD;AAAA,QACN,UAAU,CAACxB;AAAA,QACX,SAASgB;AAAA,MACX;AAAA,IAAA;AAIA,WAAA,gBAAAS;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,cAAc,CAAChB;AAAA,QACf,gBAAgBN;AAAA,QAChB,aAAa,GAAG7B,CAAQ;AAAA,QACxB,WAAW,EAAQE;AAAA,QACnB,cAAc0C;AAAA,QACd,cAAcC;AAAA,QAEd,UAAA;AAAA,UAAA,gBAAAK;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,aAAa9B;AAAA,cACb,UAAS;AAAA,cACT,QAAQ;AAAA,cACR,QAAQY;AAAA,cACR,aAAY;AAAA,cACZ,QAAQ;AAAA,cAER,UAAA;AAAA,gBAAA,gBAAAgB;AAAA,kBAACG;AAAAA,kBAAA;AAAA,oBACC,gBAAe;AAAA,oBACf,aAAY;AAAA,oBACZ,QAAO;AAAA,oBACP,UAAU;AAAA,oBACV,UAAUjB;AAAA,oBACV,UAAU;AAAA,oBACV,UAAU;AAAA,oBAEV,UAAA;AAAA,sBAAA,gBAAAc;AAAA,wBAACI;AAAAA,wBAAA;AAAA,0BACC,QAAQ;AAAA,0BACR,SAAS;AAAA,0BACT,aAAY;AAAA,0BACZ,WAAU;AAAA,0BACV,aAAY;AAAA,0BACZ,iBAAgB;AAAA,0BAChB,UAAUzB,IAAc,MAAM;AAAA,0BAE7B,UAAA;AAAA,4BACCtB,IAAA,gBAAAgD,EAACC,IAAgB,EAAA,KAAKjB,EAAgB,CAAA,sBAErCD,GAAa,EAAA,OAAO,IAAI,QAAQ,GAAI,CAAA;AAAA,4BAEtC,CAACjB,KAAe,gBAAAkC,EAAAE,IAAA,EAA2B;AAAA,0BAAA;AAAA,wBAAA;AAAA,sBAC9C;AAAA,sBAEA,gBAAAP,EAACQ,MAAK,WAAU,aAAY,QAAO,SAAQ,UAAU7B,IAAc,MAAM,GACtE,UAAA;AAAA,wBAAAX;AAAA,wBAAW;AAAA,wBAAEe,KAAgB;AAAA,sBAAA,GAChC;AAAA,sBAEA,gBAAAsB,EAACI,MAAS,WAAU,gBACjB,eACE,gBAAAJ,EAAAK,GAAA,EAA4B,KAAKlD,GAAc,SAASG,GACvD,4BAACgD,GAAiB,EAAA,OAAO,IAAI,QAAQ,IAAI,GAC3C,EAEJ,CAAA;AAAA,sBAEC1B,KAAqB,CAACjC,KAAa,gBAAAqD,EAACO,IAAoB,CAAA,CAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBAC3D;AAAA,gBAEC,gBAAAP,EAAAQ,IAAA,EAAa,UAAA9C,GAAoB,OAAAG,GAAc,UAAAL,EAAoB,CAAA;AAAA,gBAEnE,CAACY,KACA,gBAAAuB;AAAA,kBAACc;AAAAA,kBAAA;AAAA,oBACC,gBAAe;AAAA,oBACf,aAAY;AAAA,oBACZ,aAAY;AAAA,oBACZ,UAAU;AAAA,oBACV,UAAU;AAAA,oBACV,iBAAgB;AAAA,oBAEhB,UAAA;AAAA,sBAAA,gBAAAT;AAAA,wBAACU;AAAAA,wBAAA;AAAA,0BACC,WAAU;AAAA,0BACV,QAAO;AAAA,0BACP,UAAUpC,IAAc,MAAM;AAAA,0BAE7B,UAAAV;AAAA,wBAAA;AAAA,sBACH;AAAA,sBAEC,gBAAAoC,EAAAK,GAAA,EAA4B,KAAKlD,GAAc,SAASG,GACvD,UAAA,gBAAA0C,EAACM,GAAiB,EAAA,OAAO,IAAI,QAAQ,GAAI,CAAA,GAC3C;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACF;AAAA,cAAA;AAAA,YAAA;AAAA,UAEJ;AAAA,UAEA,gBAAAN,EAACW,IAAA,EAA8B,UAAUtD,GACvC,UAAC,gBAAA2C,EAAAY,IAAA,EAAgB,SAASrB,EAAA,CAAa,EACzC,CAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;"}
1
+ {"version":3,"file":"teacher-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.tsx"],"sourcesContent":["import type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useRef, useState } from 'react';\n\nimport Check2Icon from '../../../../../assets/line-icons/icons/check2';\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport Home2Icon from '../../../../../assets/line-icons/icons/home2';\nimport MoreVerticalIcon from '../../../../../assets/line-icons/icons/more-vertical';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport useContextMenuClickHandler from '../../../../ui/hooks/use-context-menu-click-handler';\nimport FlexView from '../../../../ui/layout/flex-view';\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, TEACHER_MENU_LABELS } 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 { ASSIGN_AS_HW, REVIEW, VIEW, MARK_AS_DONE } = TEACHER_MENU_LABELS;\n\nconst TeacherActions: FC<Omit<INodeCardProps, 'userType'>> = memo(\n ({\n nodeData,\n imageHue,\n blockType,\n isSkipped,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeView,\n onNodeReview,\n }) => {\n const [renderLottie, setRenderLottie] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const { menuVisible, onMenuClick } = useContextMenuClickHandler(containerRef);\n\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 user_attempt_id: userAttemptId,\n } = nodeData;\n\n const {\n can_change_attempt_location: canChangeAttemptLocation,\n can_mark_familiar: canMarkFamiliar,\n can_review: canReview,\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 tooltipHidden = !sheetStatement || !isGoalBlock;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { icon: NodeCardIcon, lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-view':\n if (canReview && userAttemptId) {\n onNodeReview?.(nodeData);\n } else {\n onNodeView?.(nodeData);\n }\n\n return;\n\n case 'node-card-assign-as-hw':\n onNodeAttemptLocationChange?.(nodeData);\n\n return;\n\n case 'node-card-mark-as-done':\n onNodeMarkAsDone?.(nodeData);\n\n return;\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [\n canReview,\n nodeData,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeReview,\n onNodeView,\n userAttemptId,\n ],\n );\n\n const handleOnMouseEnter = useCallback(() => {\n setRenderLottie(true);\n }, []);\n\n const handleOnMouseLeave = useCallback(() => {\n setRenderLottie(false);\n }, []);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-view',\n label: canReview && userAttemptId ? REVIEW : VIEW,\n icon: Eye2Icon,\n disabled: false,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-assign-as-hw',\n label: ASSIGN_AS_HW,\n icon: Home2Icon,\n disabled: !canChangeAttemptLocation || !inClassSheet,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-mark-as-done',\n label: MARK_AS_DONE,\n icon: Check2Icon,\n disabled: !canMarkFamiliar,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n return (\n <Styled.NodeCardContainer\n $showOutline={!showCardAnimation}\n $isSheetLocked={sheetLocked}\n $background={`${imageHue}_2`}\n $disabled={Boolean(isSkipped)}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={tooltipHidden}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $width=\"100%\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {renderLottie ? (\n <LottieAnimation src={nodeCardLottie} />\n ) : (\n <NodeCardIcon width={20} height={20} />\n )}\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\" $opacity={sheetLocked ? 0.5 : 1}>\n {cardHeader} {inClassSheet && `. CW`}\n </Text>\n\n <FlexView className=\"context-menu\">\n {isGoalBlock && (\n <Styled.NodeKebabMenuWrapper ref={containerRef} onClick={onMenuClick}>\n <MoreVerticalIcon width={16} height={16} />\n </Styled.NodeKebabMenuWrapper>\n )}\n </FlexView>\n\n {showCardAnimation && !isSkipped && <BorderPathAnimation />}\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags nodeType={nodeType} state={state} accuracy={accuracy} />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $background=\"WHITE_1\"\n $flexGap={8}\n $heightX={4}\n $justifyContent=\"space-between\"\n >\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n\n <Styled.NodeKebabMenuWrapper ref={containerRef} onClick={onMenuClick}>\n <MoreVerticalIcon width={16} height={16} />\n </Styled.NodeKebabMenuWrapper>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n\n <Styled.NodeMenuOptionsWrapper $visible={menuVisible}>\n <NodeMenuOptions options={menuOptions} />\n </Styled.NodeMenuOptionsWrapper>\n </Styled.NodeCardContainer>\n );\n },\n);\n\nexport default TeacherActions;\n"],"names":["ASSIGN_AS_HW","REVIEW","VIEW","MARK_AS_DONE","TEACHER_MENU_LABELS","TeacherActions","memo","nodeData","imageHue","blockType","isSkipped","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeView","onNodeReview","renderLottie","setRenderLottie","useState","containerRef","useRef","menuVisible","onMenuClick","useContextMenuClickHandler","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","userAttemptId","canChangeAttemptLocation","canMarkFamiliar","canReview","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","tooltipHidden","showCardAnimation","nodeBgImage","getNodeTypeBasedBgImage","NodeCardIcon","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnMouseEnter","handleOnMouseLeave","menuOptions","Eye2Icon","Home2Icon","Check2Icon","jsxs","Styled.NodeCardContainer","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","jsx","LottieAnimation","Styled.StyledImportantIcon","Text","FlexView","Styled.NodeKebabMenuWrapper","MoreVerticalIcon","BorderPathAnimation","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","Styled.NodeMenuOptionsWrapper","NodeMenuOptions"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"node-constants.js","sources":["../../../../src/features/chapters-v2/constants/node-constants.ts"],"sourcesContent":["export const TEACHER_MENU_LABELS = {\n ASSIGN_AS_HW: 'Assign as HW',\n MARK_AS_DONE: 'Mark as Done',\n SKIP: 'Skip',\n REVERT_SKIP: 'Revert Skip',\n REVIEW: 'Review',\n VIEW: 'View',\n};\n\nexport enum NODE_CARD_STATES {\n LOCKED = 'LOCKED',\n NOT_STARTED = 'NOT_STARTED',\n WAIT_FOR_REVIEW = 'WAIT_FOR_REVIEW',\n IN_PROGRESS = 'IN_PROGRESS',\n COMPLETED = 'COMPLETED',\n}\n"],"names":["TEACHER_MENU_LABELS","NODE_CARD_STATES"],"mappings":"AAAO,MAAMA,IAAsB;AAAA,EACjC,cAAc;AAAA,EACd,cAAc;AAAA,EACd,MAAM;AAAA,EACN,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,MAAM;AACR;AAEY,IAAAC,sBAAAA,OACVA,EAAA,SAAS,UACTA,EAAA,cAAc,eACdA,EAAA,kBAAkB,mBAClBA,EAAA,cAAc,eACdA,EAAA,YAAY,aALFA,IAAAA,KAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"node-constants.js","sources":["../../../../src/features/chapters-v2/constants/node-constants.ts"],"sourcesContent":["export const TEACHER_MENU_LABELS = {\n ASSIGN_AS_HW: 'Assign as HW',\n MARK_AS_DONE: 'Mark as Done',\n SKIP: 'Skip',\n REVERT_SKIP: 'Revert Skip',\n REVIEW: 'Review',\n VIEW: 'View',\n};\n\nexport enum NODE_CARD_STATES {\n LOCKED = 'LOCKED',\n NOT_STARTED = 'NOT_STARTED',\n WAIT_FOR_REVIEW = 'WAIT_FOR_REVIEW',\n IN_PROGRESS = 'IN_PROGRESS',\n COMPLETED = 'COMPLETED',\n}\n\nexport enum NODE_CARD_COURSE_TYPES {\n PROGRAM = 'PROGRAM',\n REMEDIAL = 'REMEDIAL',\n TEST_SERIES = 'TEST_SERIES',\n EXAM = 'EXAM',\n}\n"],"names":["TEACHER_MENU_LABELS","NODE_CARD_STATES"],"mappings":"AAAO,MAAMA,IAAsB;AAAA,EACjC,cAAc;AAAA,EACd,cAAc;AAAA,EACd,MAAM;AAAA,EACN,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,MAAM;AACR;AAEY,IAAAC,sBAAAA,OACVA,EAAA,SAAS,UACTA,EAAA,cAAc,eACdA,EAAA,kBAAkB,mBAClBA,EAAA,cAAc,eACdA,EAAA,YAAY,aALFA,IAAAA,KAAA,CAAA,CAAA;"}