@cuemath/leap 3.5.67-as1 → 3.5.67-as2

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.
@@ -1,31 +1,31 @@
1
- import { jsxs as a, jsx as o } from "react/jsx-runtime";
2
- import { memo as P, useMemo as v, useCallback as Q } from "react";
1
+ import { jsxs as c, jsx as o } from "react/jsx-runtime";
2
+ import { memo as P, useMemo as y, useCallback as Q } from "react";
3
3
  import z from "../../../assets/line-icons/icons/chevron-left.js";
4
4
  import J from "../../../assets/line-icons/icons/chevron-right.js";
5
5
  import { NODE_TYPE as U } from "../../sheets/constants/sheet.js";
6
- import u from "../../ui/layout/flex-view.js";
7
- import h from "../../ui/text/text.js";
6
+ import d from "../../ui/layout/flex-view.js";
7
+ import $ from "../../ui/text/text.js";
8
8
  import Z from "../homework-card.js";
9
- import { QueueWrapper as D, QueueText as ee, ContentWrapper as oe, ScrollButton as y, ScrollContainer as te } from "./hw-card-list-styled.js";
9
+ import { QueueWrapper as D, QueueText as ee, ContentWrapper as oe, ScrollButton as A, ScrollContainer as te } from "./hw-card-list-styled.js";
10
10
  import { getWaitForReviewSheetsCount as re } from "./hw-card-list-utils.js";
11
11
  import { useScrollButtons as ne } from "./hooks/use-scroll-buttons.js";
12
12
  const ie = ({
13
- userType: $,
14
- studentId: p,
15
- isHwProcessing: A,
13
+ userType: p,
14
+ studentId: f,
15
+ isHwProcessing: I,
16
16
  hwDetails: r,
17
- onTestStart: f,
18
- onNodeAttempt: C,
19
- onTestPreview: g,
17
+ onTestStart: C,
18
+ onNodeAttempt: g,
19
+ onTestPreview: _,
20
20
  onNodeView: k,
21
21
  onTestReview: w,
22
- onNodeReview: _,
23
- onNodeUnassign: x,
24
- onCardClick: H,
25
- puzzleHWCardRef: b,
26
- mathFitCardRef: L
22
+ onNodeReview: x,
23
+ onNodeUnassign: H,
24
+ onCardClick: b,
25
+ puzzleHWCardRef: L,
26
+ mathFitCardRef: v
27
27
  }) => {
28
- const t = v(() => {
28
+ const t = y(() => {
29
29
  const s = (r == null ? void 0 : r.assigned_homeworks) || [], i = (r == null ? void 0 : r.queued_homeworks) || [], e = s.length + i.length, n = re(r);
30
30
  return {
31
31
  assignedHomeworks: s,
@@ -34,30 +34,30 @@ const ie = ({
34
34
  waitForReviewCount: n
35
35
  };
36
36
  }, [r]), {
37
- scrollRef: I,
38
- showLeftButton: B,
39
- showRightButton: R,
40
- handleMouseEnter: M,
41
- handleMouseLeave: q,
42
- handleScrollLeft: T,
43
- handleScrollRight: E
37
+ scrollRef: B,
38
+ showLeftButton: R,
39
+ showRightButton: M,
40
+ handleMouseEnter: q,
41
+ handleMouseLeave: T,
42
+ handleScrollLeft: E,
43
+ handleScrollRight: K
44
44
  } = ne({
45
45
  totalCount: t.totalCount
46
- }), d = Q(
46
+ }), m = Q(
47
47
  (s, i, e = !1) => {
48
48
  const {
49
49
  entity_id: n,
50
- sheets: c,
51
- subtext: S,
52
- entity_type: j,
53
- image_url: F,
54
- user_milestone_id: G,
55
- state: W,
56
- score: X,
57
- id: O
58
- } = s, l = c[0], m = (l == null ? void 0 : l.node_type) === U.DYNAMIC, V = c == null ? void 0 : c.reduce((Y, N) => Y + (N.total_questions || 0), 0);
59
- return /* @__PURE__ */ a(
60
- u,
50
+ sheets: a,
51
+ subtext: j,
52
+ entity_type: F,
53
+ image_url: G,
54
+ user_milestone_id: W,
55
+ state: X,
56
+ score: O,
57
+ id: V
58
+ } = s, l = a.find((u) => u.permissions.can_resume || u.permissions.can_start) ?? a[0], h = (l == null ? void 0 : l.node_type) === U.DYNAMIC, Y = a == null ? void 0 : a.reduce((u, N) => u + (N.total_questions || 0), 0);
59
+ return /* @__PURE__ */ c(
60
+ d,
61
61
  {
62
62
  $flexDirection: "row",
63
63
  $flexGapX: 1,
@@ -76,28 +76,28 @@ const ie = ({
76
76
  Z,
77
77
  {
78
78
  isInQueue: e,
79
- userType: $,
79
+ userType: p,
80
80
  header: l.title,
81
- subHeader: S || "",
81
+ subHeader: j || "",
82
82
  nodeData: l,
83
83
  renderAs: "homework",
84
- studentId: p,
85
- onNodeAttempt: m ? f : C,
84
+ studentId: f,
85
+ onNodeAttempt: h ? C : g,
86
86
  shouldOpenOnRight: !0,
87
- onNodeView: m ? g : k,
88
- onNodeReview: m ? w : _,
89
- onNodeUnassign: x,
90
- puzzleHWCardRef: e ? void 0 : b,
91
- mathFitCardRef: e ? void 0 : L,
92
- onCardClick: H,
93
- entityType: j,
87
+ onNodeView: h ? _ : k,
88
+ onNodeReview: h ? w : x,
89
+ onNodeUnassign: H,
90
+ puzzleHWCardRef: e ? void 0 : L,
91
+ mathFitCardRef: e ? void 0 : v,
92
+ onCardClick: b,
93
+ entityType: F,
94
94
  entityId: n,
95
- state: W,
96
- score: X,
97
- imageUrl: F,
98
- homeworkId: O,
99
- totalQuestions: V,
100
- userMilestoneId: G ?? void 0
95
+ state: X,
96
+ score: O,
97
+ imageUrl: G,
98
+ homeworkId: V,
99
+ totalQuestions: Y,
100
+ userMilestoneId: W ?? void 0
101
101
  }
102
102
  )
103
103
  ]
@@ -106,69 +106,69 @@ const ie = ({
106
106
  );
107
107
  },
108
108
  [
109
- $,
110
109
  p,
111
110
  f,
112
111
  C,
113
112
  g,
113
+ _,
114
114
  k,
115
115
  w,
116
- _,
117
116
  x,
118
- b,
117
+ H,
119
118
  L,
120
- H
119
+ v,
120
+ b
121
121
  ]
122
- ), K = v(() => {
122
+ ), S = y(() => {
123
123
  if (t.totalCount === 0) return [];
124
124
  const s = t.assignedHomeworks.map(
125
- (e, n) => d(e, n, !1)
125
+ (e, n) => m(e, n, !1)
126
126
  ), i = t.queuedHomeworks.map(
127
- (e, n) => d(e, n, !0)
127
+ (e, n) => m(e, n, !0)
128
128
  );
129
129
  return [...s, ...i];
130
130
  }, [
131
131
  t.assignedHomeworks,
132
132
  t.queuedHomeworks,
133
- d,
133
+ m,
134
134
  t.totalCount
135
135
  ]);
136
- return t.totalCount === 0 ? /* @__PURE__ */ a(u, { $flexRowGapX: 1, children: [
137
- /* @__PURE__ */ o(h, { $renderAs: "ac4-black", $color: "BLACK_T_60", children: "Homework (0)" }),
138
- /* @__PURE__ */ o(h, { $renderAs: "ab2", $color: "BLACK_T_60", children: "No Homework assigned yet" })
139
- ] }) : /* @__PURE__ */ a(oe, { $flexRowGapX: 1, $disablePointerEvents: A, children: [
140
- /* @__PURE__ */ a(h, { $renderAs: "ac4-black", $color: "BLACK_T_60", children: [
136
+ return t.totalCount === 0 ? /* @__PURE__ */ c(d, { $flexRowGapX: 1, children: [
137
+ /* @__PURE__ */ o($, { $renderAs: "ac4-black", $color: "BLACK_T_60", children: "Homework (0)" }),
138
+ /* @__PURE__ */ o($, { $renderAs: "ab2", $color: "BLACK_T_60", children: "No Homework assigned yet" })
139
+ ] }) : /* @__PURE__ */ c(oe, { $flexRowGapX: 1, $disablePointerEvents: I, children: [
140
+ /* @__PURE__ */ c($, { $renderAs: "ac4-black", $color: "BLACK_T_60", children: [
141
141
  "Homework (",
142
142
  t.waitForReviewCount,
143
143
  "/",
144
144
  t.totalCount,
145
145
  ")"
146
146
  ] }),
147
- /* @__PURE__ */ a(
148
- u,
147
+ /* @__PURE__ */ c(
148
+ d,
149
149
  {
150
150
  $position: "relative",
151
- onMouseEnter: M,
152
- onMouseLeave: q,
151
+ onMouseEnter: q,
152
+ onMouseLeave: T,
153
153
  children: [
154
154
  /* @__PURE__ */ o(
155
- y,
155
+ A,
156
156
  {
157
157
  $position: "absolute",
158
158
  $background: "BLACK_T_60",
159
159
  $justifyContent: "center",
160
160
  $alignItems: "center",
161
161
  $height: "100%",
162
- onClick: T,
163
- $visible: B,
162
+ onClick: E,
163
+ $visible: R,
164
164
  left: "0px",
165
165
  right: "auto",
166
166
  children: /* @__PURE__ */ o(z, { width: 24, height: 24 })
167
167
  }
168
168
  ),
169
- /* @__PURE__ */ o(te, { ref: I, children: /* @__PURE__ */ o(u, { $flexDirection: "row", $flexGapX: 1, children: K }) }),
169
+ /* @__PURE__ */ o(te, { ref: B, children: /* @__PURE__ */ o(d, { $flexDirection: "row", $flexGapX: 1, children: S }) }),
170
170
  /* @__PURE__ */ o(
171
- y,
171
+ A,
172
172
  {
173
173
  $position: "absolute",
174
174
  $width: "60px",
@@ -176,8 +176,8 @@ const ie = ({
176
176
  $background: "BLACK_T_60",
177
177
  $justifyContent: "center",
178
178
  $alignItems: "center",
179
- onClick: E,
180
- $visible: R,
179
+ onClick: K,
180
+ $visible: M,
181
181
  left: "auto",
182
182
  right: "0px",
183
183
  children: /* @__PURE__ */ o(J, { width: 24, height: 24 })
@@ -1 +1 @@
1
- {"version":3,"file":"hw-card-list-view.js","sources":["../../../../src/features/homework/hw-card-list/hw-card-list-view.tsx"],"sourcesContent":["import { memo, useCallback, useMemo, type FC } from 'react';\n\nimport ChevronLeftIcon from '../../../assets/line-icons/icons/chevron-left';\nimport ChevronRightIcon from '../../../assets/line-icons/icons/chevron-right';\nimport { NODE_TYPE } from '../../sheets/constants/sheet';\nimport FlexView from '../../ui/layout/flex-view';\nimport Text from '../../ui/text/text';\nimport HomeworkCard from '../homework-card';\nimport type { IHomeworkItem } from './api/get-homeworks';\nimport * as Styled from './hw-card-list-styled';\nimport type { IHwCardListView } from './hw-card-list-types';\nimport { getWaitForReviewSheetsCount } from './hw-card-list-utils';\nimport { useScrollButtons } from './hooks/use-scroll-buttons';\n\nconst HwCardListView: FC<IHwCardListView> = ({\n userType,\n studentId,\n isHwProcessing,\n hwDetails,\n onTestStart,\n onNodeAttempt,\n onTestPreview,\n onNodeView,\n onTestReview,\n onNodeReview,\n onNodeUnassign,\n onCardClick,\n puzzleHWCardRef,\n mathFitCardRef,\n}) => {\n const homeworkData = useMemo(() => {\n const assignedHomeworks = hwDetails?.assigned_homeworks || [];\n const queuedHomeworks = hwDetails?.queued_homeworks || [];\n const totalCount = assignedHomeworks.length + queuedHomeworks.length;\n const waitForReviewCount = getWaitForReviewSheetsCount(hwDetails);\n\n return {\n assignedHomeworks,\n queuedHomeworks,\n totalCount,\n waitForReviewCount,\n };\n }, [hwDetails]);\n\n const {\n scrollRef,\n showLeftButton,\n showRightButton,\n handleMouseEnter,\n handleMouseLeave,\n handleScrollLeft,\n handleScrollRight,\n } = useScrollButtons({\n totalCount: homeworkData.totalCount,\n });\n\n const renderHomeworkCard = useCallback(\n (item: IHomeworkItem, idx: number, isQueued = false) => {\n const {\n entity_id: entityId,\n sheets,\n subtext,\n entity_type: entitYType,\n image_url: imageUrl,\n user_milestone_id: userMilestoneId,\n state,\n score,\n id,\n } = item;\n const sheet = sheets[0];\n const isDynamicSheet = sheet?.node_type === NODE_TYPE.DYNAMIC;\n const totalQuestions = sheets?.reduce((acc, curr) => acc + (curr.total_questions || 0), 0);\n\n return (\n <FlexView\n key={`${entityId}_${idx}_${isQueued ? 'queued' : 'assigned'}`}\n $flexDirection=\"row\"\n $flexGapX={1}\n >\n {isQueued && idx === 0 && (\n <Styled.QueueWrapper\n $background=\"BLACK_4\"\n $justifyContent=\"center\"\n $gutter={4}\n $gap={8}\n >\n <Styled.QueueText $renderAs=\"ac3\" $color=\"WHITE\">\n In Queue\n </Styled.QueueText>\n </Styled.QueueWrapper>\n )}\n\n {sheet && (\n <HomeworkCard\n isInQueue={isQueued}\n userType={userType}\n header={sheet.title}\n subHeader={subtext || ''}\n nodeData={sheet}\n renderAs=\"homework\"\n studentId={studentId}\n onNodeAttempt={isDynamicSheet ? onTestStart : onNodeAttempt}\n shouldOpenOnRight={true}\n onNodeView={isDynamicSheet ? onTestPreview : onNodeView}\n onNodeReview={isDynamicSheet ? onTestReview : onNodeReview}\n onNodeUnassign={onNodeUnassign}\n puzzleHWCardRef={isQueued ? undefined : puzzleHWCardRef}\n mathFitCardRef={isQueued ? undefined : mathFitCardRef}\n onCardClick={onCardClick}\n entityType={entitYType}\n entityId={entityId}\n state={state}\n score={score}\n imageUrl={imageUrl}\n homeworkId={id}\n totalQuestions={totalQuestions}\n userMilestoneId={userMilestoneId ?? undefined}\n />\n )}\n </FlexView>\n );\n },\n [\n userType,\n studentId,\n onTestStart,\n onNodeAttempt,\n onTestPreview,\n onNodeView,\n onTestReview,\n onNodeReview,\n onNodeUnassign,\n puzzleHWCardRef,\n mathFitCardRef,\n onCardClick,\n ],\n );\n\n const homeworkCards = useMemo(() => {\n if (homeworkData.totalCount === 0) return [];\n\n const assignedCards = homeworkData.assignedHomeworks.map((sheet, idx) =>\n renderHomeworkCard(sheet, idx, false),\n );\n\n const queuedCards = homeworkData.queuedHomeworks.map((sheet, idx) =>\n renderHomeworkCard(sheet, idx, true),\n );\n\n return [...assignedCards, ...queuedCards];\n }, [\n homeworkData.assignedHomeworks,\n homeworkData.queuedHomeworks,\n renderHomeworkCard,\n homeworkData.totalCount,\n ]);\n\n if (homeworkData.totalCount === 0) {\n return (\n <FlexView $flexRowGapX={1}>\n <Text $renderAs=\"ac4-black\" $color=\"BLACK_T_60\">\n Homework (0)\n </Text>\n <Text $renderAs=\"ab2\" $color=\"BLACK_T_60\">\n No Homework assigned yet\n </Text>\n </FlexView>\n );\n }\n\n return (\n <Styled.ContentWrapper $flexRowGapX={1} $disablePointerEvents={isHwProcessing}>\n <Text $renderAs=\"ac4-black\" $color=\"BLACK_T_60\">\n Homework ({homeworkData.waitForReviewCount}/{homeworkData.totalCount})\n </Text>\n <FlexView\n $position=\"relative\"\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n <Styled.ScrollButton\n $position=\"absolute\"\n $background=\"BLACK_T_60\"\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $height=\"100%\"\n onClick={handleScrollLeft}\n $visible={showLeftButton}\n left=\"0px\"\n right=\"auto\"\n >\n <ChevronLeftIcon width={24} height={24} />\n </Styled.ScrollButton>\n\n <Styled.ScrollContainer ref={scrollRef}>\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n {homeworkCards}\n </FlexView>\n </Styled.ScrollContainer>\n\n <Styled.ScrollButton\n $position=\"absolute\"\n $width=\"60px\"\n $height=\"100%\"\n $background=\"BLACK_T_60\"\n $justifyContent=\"center\"\n $alignItems=\"center\"\n onClick={handleScrollRight}\n $visible={showRightButton}\n left=\"auto\"\n right=\"0px\"\n >\n <ChevronRightIcon width={24} height={24} />\n </Styled.ScrollButton>\n </FlexView>\n </Styled.ContentWrapper>\n );\n};\n\nexport default memo(HwCardListView);\n"],"names":["HwCardListView","userType","studentId","isHwProcessing","hwDetails","onTestStart","onNodeAttempt","onTestPreview","onNodeView","onTestReview","onNodeReview","onNodeUnassign","onCardClick","puzzleHWCardRef","mathFitCardRef","homeworkData","useMemo","assignedHomeworks","queuedHomeworks","totalCount","waitForReviewCount","getWaitForReviewSheetsCount","scrollRef","showLeftButton","showRightButton","handleMouseEnter","handleMouseLeave","handleScrollLeft","handleScrollRight","useScrollButtons","renderHomeworkCard","useCallback","item","idx","isQueued","entityId","sheets","subtext","entitYType","imageUrl","userMilestoneId","state","score","id","sheet","isDynamicSheet","NODE_TYPE","totalQuestions","acc","curr","jsxs","FlexView","jsx","Styled.QueueWrapper","Styled.QueueText","HomeworkCard","homeworkCards","assignedCards","queuedCards","Text","Styled.ContentWrapper","Styled.ScrollButton","ChevronLeftIcon","Styled.ScrollContainer","ChevronRightIcon","HwCardListView$1","memo"],"mappings":"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"}
1
+ {"version":3,"file":"hw-card-list-view.js","sources":["../../../../src/features/homework/hw-card-list/hw-card-list-view.tsx"],"sourcesContent":["import { memo, useCallback, useMemo, type FC } from 'react';\n\nimport ChevronLeftIcon from '../../../assets/line-icons/icons/chevron-left';\nimport ChevronRightIcon from '../../../assets/line-icons/icons/chevron-right';\nimport { NODE_TYPE } from '../../sheets/constants/sheet';\nimport FlexView from '../../ui/layout/flex-view';\nimport Text from '../../ui/text/text';\nimport HomeworkCard from '../homework-card';\nimport type { IHomeworkItem } from './api/get-homeworks';\nimport * as Styled from './hw-card-list-styled';\nimport type { IHwCardListView } from './hw-card-list-types';\nimport { getWaitForReviewSheetsCount } from './hw-card-list-utils';\nimport { useScrollButtons } from './hooks/use-scroll-buttons';\n\nconst HwCardListView: FC<IHwCardListView> = ({\n userType,\n studentId,\n isHwProcessing,\n hwDetails,\n onTestStart,\n onNodeAttempt,\n onTestPreview,\n onNodeView,\n onTestReview,\n onNodeReview,\n onNodeUnassign,\n onCardClick,\n puzzleHWCardRef,\n mathFitCardRef,\n}) => {\n const homeworkData = useMemo(() => {\n const assignedHomeworks = hwDetails?.assigned_homeworks || [];\n const queuedHomeworks = hwDetails?.queued_homeworks || [];\n const totalCount = assignedHomeworks.length + queuedHomeworks.length;\n const waitForReviewCount = getWaitForReviewSheetsCount(hwDetails);\n\n return {\n assignedHomeworks,\n queuedHomeworks,\n totalCount,\n waitForReviewCount,\n };\n }, [hwDetails]);\n\n const {\n scrollRef,\n showLeftButton,\n showRightButton,\n handleMouseEnter,\n handleMouseLeave,\n handleScrollLeft,\n handleScrollRight,\n } = useScrollButtons({\n totalCount: homeworkData.totalCount,\n });\n\n const renderHomeworkCard = useCallback(\n (item: IHomeworkItem, idx: number, isQueued = false) => {\n const {\n entity_id: entityId,\n sheets,\n subtext,\n entity_type: entitYType,\n image_url: imageUrl,\n user_milestone_id: userMilestoneId,\n state,\n score,\n id,\n } = item;\n const sheet =\n sheets.find(st => st.permissions.can_resume || st.permissions.can_start) ?? sheets[0];\n const isDynamicSheet = sheet?.node_type === NODE_TYPE.DYNAMIC;\n const totalQuestions = sheets?.reduce((acc, curr) => acc + (curr.total_questions || 0), 0);\n\n return (\n <FlexView\n key={`${entityId}_${idx}_${isQueued ? 'queued' : 'assigned'}`}\n $flexDirection=\"row\"\n $flexGapX={1}\n >\n {isQueued && idx === 0 && (\n <Styled.QueueWrapper\n $background=\"BLACK_4\"\n $justifyContent=\"center\"\n $gutter={4}\n $gap={8}\n >\n <Styled.QueueText $renderAs=\"ac3\" $color=\"WHITE\">\n In Queue\n </Styled.QueueText>\n </Styled.QueueWrapper>\n )}\n\n {sheet && (\n <HomeworkCard\n isInQueue={isQueued}\n userType={userType}\n header={sheet.title}\n subHeader={subtext || ''}\n nodeData={sheet}\n renderAs=\"homework\"\n studentId={studentId}\n onNodeAttempt={isDynamicSheet ? onTestStart : onNodeAttempt}\n shouldOpenOnRight={true}\n onNodeView={isDynamicSheet ? onTestPreview : onNodeView}\n onNodeReview={isDynamicSheet ? onTestReview : onNodeReview}\n onNodeUnassign={onNodeUnassign}\n puzzleHWCardRef={isQueued ? undefined : puzzleHWCardRef}\n mathFitCardRef={isQueued ? undefined : mathFitCardRef}\n onCardClick={onCardClick}\n entityType={entitYType}\n entityId={entityId}\n state={state}\n score={score}\n imageUrl={imageUrl}\n homeworkId={id}\n totalQuestions={totalQuestions}\n userMilestoneId={userMilestoneId ?? undefined}\n />\n )}\n </FlexView>\n );\n },\n [\n userType,\n studentId,\n onTestStart,\n onNodeAttempt,\n onTestPreview,\n onNodeView,\n onTestReview,\n onNodeReview,\n onNodeUnassign,\n puzzleHWCardRef,\n mathFitCardRef,\n onCardClick,\n ],\n );\n\n const homeworkCards = useMemo(() => {\n if (homeworkData.totalCount === 0) return [];\n\n const assignedCards = homeworkData.assignedHomeworks.map((sheet, idx) =>\n renderHomeworkCard(sheet, idx, false),\n );\n\n const queuedCards = homeworkData.queuedHomeworks.map((sheet, idx) =>\n renderHomeworkCard(sheet, idx, true),\n );\n\n return [...assignedCards, ...queuedCards];\n }, [\n homeworkData.assignedHomeworks,\n homeworkData.queuedHomeworks,\n renderHomeworkCard,\n homeworkData.totalCount,\n ]);\n\n if (homeworkData.totalCount === 0) {\n return (\n <FlexView $flexRowGapX={1}>\n <Text $renderAs=\"ac4-black\" $color=\"BLACK_T_60\">\n Homework (0)\n </Text>\n <Text $renderAs=\"ab2\" $color=\"BLACK_T_60\">\n No Homework assigned yet\n </Text>\n </FlexView>\n );\n }\n\n return (\n <Styled.ContentWrapper $flexRowGapX={1} $disablePointerEvents={isHwProcessing}>\n <Text $renderAs=\"ac4-black\" $color=\"BLACK_T_60\">\n Homework ({homeworkData.waitForReviewCount}/{homeworkData.totalCount})\n </Text>\n <FlexView\n $position=\"relative\"\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n <Styled.ScrollButton\n $position=\"absolute\"\n $background=\"BLACK_T_60\"\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $height=\"100%\"\n onClick={handleScrollLeft}\n $visible={showLeftButton}\n left=\"0px\"\n right=\"auto\"\n >\n <ChevronLeftIcon width={24} height={24} />\n </Styled.ScrollButton>\n\n <Styled.ScrollContainer ref={scrollRef}>\n <FlexView $flexDirection=\"row\" $flexGapX={1}>\n {homeworkCards}\n </FlexView>\n </Styled.ScrollContainer>\n\n <Styled.ScrollButton\n $position=\"absolute\"\n $width=\"60px\"\n $height=\"100%\"\n $background=\"BLACK_T_60\"\n $justifyContent=\"center\"\n $alignItems=\"center\"\n onClick={handleScrollRight}\n $visible={showRightButton}\n left=\"auto\"\n right=\"0px\"\n >\n <ChevronRightIcon width={24} height={24} />\n </Styled.ScrollButton>\n </FlexView>\n </Styled.ContentWrapper>\n );\n};\n\nexport default memo(HwCardListView);\n"],"names":["HwCardListView","userType","studentId","isHwProcessing","hwDetails","onTestStart","onNodeAttempt","onTestPreview","onNodeView","onTestReview","onNodeReview","onNodeUnassign","onCardClick","puzzleHWCardRef","mathFitCardRef","homeworkData","useMemo","assignedHomeworks","queuedHomeworks","totalCount","waitForReviewCount","getWaitForReviewSheetsCount","scrollRef","showLeftButton","showRightButton","handleMouseEnter","handleMouseLeave","handleScrollLeft","handleScrollRight","useScrollButtons","renderHomeworkCard","useCallback","item","idx","isQueued","entityId","sheets","subtext","entitYType","imageUrl","userMilestoneId","state","score","id","sheet","st","isDynamicSheet","NODE_TYPE","totalQuestions","acc","curr","jsxs","FlexView","jsx","Styled.QueueWrapper","Styled.QueueText","HomeworkCard","homeworkCards","assignedCards","queuedCards","Text","Styled.ContentWrapper","Styled.ScrollButton","ChevronLeftIcon","Styled.ScrollContainer","ChevronRightIcon","HwCardListView$1","memo"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cuemath/leap",
3
- "version": "3.5.67-as1",
3
+ "version": "3.5.67-as2",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"