@cuemath/leap 3.5.13 → 3.5.14
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,59 +1,59 @@
|
|
|
1
|
-
import { jsxs as i, jsx as
|
|
2
|
-
import { memo as
|
|
3
|
-
import
|
|
1
|
+
import { jsxs as i, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { memo as L, useMemo as R, useCallback as E } from "react";
|
|
3
|
+
import $ from "../../../ui/buttons/text-button/text-button.js";
|
|
4
4
|
import l from "../../../ui/layout/flex-view.js";
|
|
5
|
-
import
|
|
6
|
-
import { getStateConf as
|
|
7
|
-
import { BLOCK_TYPE as
|
|
5
|
+
import d from "../../../ui/text/text.js";
|
|
6
|
+
import { getStateConf as g } from "../utils.js";
|
|
7
|
+
import { BLOCK_TYPE as k } from "../../../chapters-v2/constants/block-constants.js";
|
|
8
8
|
import { CODING_ACTIVITY_NODE_TYPES as z } from "../constants.js";
|
|
9
|
-
import { NODE_STATE as
|
|
9
|
+
import { NODE_STATE as K, CARD_TYPE as N, USER_TYPE as s } from "../../daily-timeline-types.js";
|
|
10
10
|
import { NODE_TYPES as P } from "../../../../types/models/worksheet.js";
|
|
11
|
-
const
|
|
12
|
-
({ type:
|
|
11
|
+
const O = L(
|
|
12
|
+
({ type: T, userType: r, card: h, onPuzzleClick: m, onReviewClick: a }) => {
|
|
13
13
|
const {
|
|
14
|
-
label:
|
|
14
|
+
label: A,
|
|
15
15
|
title: b,
|
|
16
|
-
state:
|
|
16
|
+
state: n,
|
|
17
17
|
subtext: _,
|
|
18
|
-
user_node_id:
|
|
19
|
-
block_type:
|
|
18
|
+
user_node_id: o,
|
|
19
|
+
block_type: p,
|
|
20
20
|
user_block_id: u,
|
|
21
|
-
node_type:
|
|
22
|
-
} =
|
|
23
|
-
|
|
24
|
-
) : !1, [r,
|
|
25
|
-
|
|
26
|
-
}, [
|
|
27
|
-
|
|
28
|
-
}, [
|
|
21
|
+
node_type: f
|
|
22
|
+
} = h, c = p === k.SAT_MOCK_TEST, x = f === P.PUZZLE_CARD, [C, w] = g(n), t = n === K.COMPLETED, D = R(() => T === N.CIRCLE ? !1 : r === s.TEACHER ? !c || t : r === s.STUDENT ? t && !z.includes(
|
|
23
|
+
f
|
|
24
|
+
) : !1, [r, T, c, t, f]), I = t && r === s.STUDENT || r === s.TEACHER, S = E(() => {
|
|
25
|
+
o && m && m(o, n);
|
|
26
|
+
}, [m, o, n]), B = E(() => {
|
|
27
|
+
a && o && a(o, c, u);
|
|
28
|
+
}, [c, a, u, o]);
|
|
29
29
|
return /* @__PURE__ */ i(l, { $flexDirection: "row", $flexGapX: 1.5, children: [
|
|
30
|
-
/* @__PURE__ */
|
|
30
|
+
/* @__PURE__ */ e(l, { $justifyContent: "flex-end", $height: 18, $background: "WHITE", children: /* @__PURE__ */ e(l, { $background: w, $borderRadiusX: 0.5, $width: 16, $height: 16, children: C && /* @__PURE__ */ e(C, { width: 16, height: 16 }) }) }),
|
|
31
31
|
/* @__PURE__ */ i(l, { $flexRowGapX: 0.25, children: [
|
|
32
|
-
/* @__PURE__ */ i(
|
|
33
|
-
/* @__PURE__ */ i(
|
|
34
|
-
|
|
32
|
+
/* @__PURE__ */ i(d, { $renderAs: "ub2", $color: "BLACK_1", children: [
|
|
33
|
+
/* @__PURE__ */ i(d, { $renderAs: "ub2-bold", $inline: !0, $color: "BLACK_1", children: [
|
|
34
|
+
A,
|
|
35
35
|
":"
|
|
36
36
|
] }),
|
|
37
37
|
" ",
|
|
38
38
|
b
|
|
39
39
|
] }),
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
x ? I ? /* @__PURE__ */ e(
|
|
41
|
+
$,
|
|
42
42
|
{
|
|
43
|
-
label:
|
|
43
|
+
label: t ? "View reviewed puzzle" : "View assigned puzzle",
|
|
44
44
|
size: "small",
|
|
45
45
|
color: "BLACK_T_60",
|
|
46
|
-
onClick:
|
|
46
|
+
onClick: S
|
|
47
47
|
}
|
|
48
|
-
) : /* @__PURE__ */ i(l, { $flexDirection: "row", $flexGapX: 0.75, $alignItems: "center", children: [
|
|
49
|
-
_ && /* @__PURE__ */
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
) : /* @__PURE__ */ e(d, { $renderAs: "ub3", $color: "BLACK_T_60", children: _ }) : /* @__PURE__ */ i(l, { $flexDirection: "row", $flexGapX: 0.75, $alignItems: "center", children: [
|
|
49
|
+
_ && /* @__PURE__ */ e(d, { $renderAs: "ub3", $color: "BLACK_T_60", children: _ }),
|
|
50
|
+
D && /* @__PURE__ */ e(
|
|
51
|
+
$,
|
|
52
52
|
{
|
|
53
53
|
label: "Review",
|
|
54
54
|
size: "small",
|
|
55
55
|
color: "BLACK_T_60",
|
|
56
|
-
onClick:
|
|
56
|
+
onClick: B
|
|
57
57
|
}
|
|
58
58
|
)
|
|
59
59
|
] })
|
|
@@ -61,8 +61,8 @@ const K = k(
|
|
|
61
61
|
] });
|
|
62
62
|
}
|
|
63
63
|
);
|
|
64
|
-
|
|
64
|
+
O.displayName = "AccordionItem";
|
|
65
65
|
export {
|
|
66
|
-
|
|
66
|
+
O as default
|
|
67
67
|
};
|
|
68
68
|
//# sourceMappingURL=accordion-item.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accordion-item.js","sources":["../../../../../src/features/timeline/comps/accordion-item/accordion-item.tsx"],"sourcesContent":["import { memo, useCallback, useMemo, type FC } from 'react';\n\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport type { IAccordionItemProps } from './accordion-item-types';\nimport { getStateConf } from '../utils';\nimport { BLOCK_TYPE } from '../../../chapters-v2/constants/block-constants';\nimport { type TColorNames } from '../../../ui/types';\nimport { CODING_ACTIVITY_NODE_TYPES } from '../constants';\nimport { CARD_TYPE, NODE_STATE, USER_TYPE } from '../../daily-timeline-types';\nimport { NODE_TYPES } from '../../../../types/models/worksheet';\n\nconst AccordionItem: FC<IAccordionItemProps> = memo(\n ({ type, userType, card, onPuzzleClick, onReviewClick }) => {\n const {\n label,\n title,\n state,\n subtext,\n user_node_id: userNodeId,\n block_type: blockType,\n user_block_id: userBlockId,\n node_type: nodeType,\n } = card;\n const isSatMockTestBlock = blockType === BLOCK_TYPE.SAT_MOCK_TEST;\n const isPuzzleCard = nodeType === NODE_TYPES.PUZZLE_CARD;\n const [Icon, bgColor] = getStateConf(state) as [FC<React.SVGProps<SVGSVGElement>>, TColorNames];\n const isCompleted = state === NODE_STATE.COMPLETED;\n const shouldShowReview = useMemo(() => {\n if (type === CARD_TYPE.CIRCLE) return false;\n\n if (userType === USER_TYPE.TEACHER) return !isSatMockTestBlock || isCompleted;\n\n if (userType === USER_TYPE.STUDENT)\n return (\n isCompleted &&\n !CODING_ACTIVITY_NODE_TYPES.includes(\n nodeType as (typeof CODING_ACTIVITY_NODE_TYPES)[number],\n )\n );\n\n return false;\n }, [userType, type, isSatMockTestBlock, isCompleted, nodeType]);\n\n const canReviewPuzzle =\n (
|
|
1
|
+
{"version":3,"file":"accordion-item.js","sources":["../../../../../src/features/timeline/comps/accordion-item/accordion-item.tsx"],"sourcesContent":["import { memo, useCallback, useMemo, type FC } from 'react';\n\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport type { IAccordionItemProps } from './accordion-item-types';\nimport { getStateConf } from '../utils';\nimport { BLOCK_TYPE } from '../../../chapters-v2/constants/block-constants';\nimport { type TColorNames } from '../../../ui/types';\nimport { CODING_ACTIVITY_NODE_TYPES } from '../constants';\nimport { CARD_TYPE, NODE_STATE, USER_TYPE } from '../../daily-timeline-types';\nimport { NODE_TYPES } from '../../../../types/models/worksheet';\n\nconst AccordionItem: FC<IAccordionItemProps> = memo(\n ({ type, userType, card, onPuzzleClick, onReviewClick }) => {\n const {\n label,\n title,\n state,\n subtext,\n user_node_id: userNodeId,\n block_type: blockType,\n user_block_id: userBlockId,\n node_type: nodeType,\n } = card;\n const isSatMockTestBlock = blockType === BLOCK_TYPE.SAT_MOCK_TEST;\n const isPuzzleCard = nodeType === NODE_TYPES.PUZZLE_CARD;\n const [Icon, bgColor] = getStateConf(state) as [FC<React.SVGProps<SVGSVGElement>>, TColorNames];\n const isCompleted = state === NODE_STATE.COMPLETED;\n const shouldShowReview = useMemo(() => {\n if (type === CARD_TYPE.CIRCLE) return false;\n\n if (userType === USER_TYPE.TEACHER) return !isSatMockTestBlock || isCompleted;\n\n if (userType === USER_TYPE.STUDENT)\n return (\n isCompleted &&\n !CODING_ACTIVITY_NODE_TYPES.includes(\n nodeType as (typeof CODING_ACTIVITY_NODE_TYPES)[number],\n )\n );\n\n return false;\n }, [userType, type, isSatMockTestBlock, isCompleted, nodeType]);\n\n const canReviewPuzzle =\n (isCompleted && userType === USER_TYPE.STUDENT) || userType === USER_TYPE.TEACHER;\n\n const handlePuzzleClick = useCallback(() => {\n if (userNodeId && onPuzzleClick) {\n onPuzzleClick(userNodeId, state);\n }\n }, [onPuzzleClick, userNodeId, state]);\n\n const handleReviewClick = useCallback(() => {\n if (onReviewClick && userNodeId) {\n onReviewClick(userNodeId, isSatMockTestBlock, userBlockId);\n }\n }, [isSatMockTestBlock, onReviewClick, userBlockId, userNodeId]);\n\n return (\n <FlexView $flexDirection=\"row\" $flexGapX={1.5}>\n <FlexView $justifyContent=\"flex-end\" $height={18} $background=\"WHITE\">\n <FlexView $background={bgColor} $borderRadiusX={0.5} $width={16} $height={16}>\n {Icon && <Icon width={16} height={16} />}\n </FlexView>\n </FlexView>\n <FlexView $flexRowGapX={0.25}>\n <Text $renderAs=\"ub2\" $color=\"BLACK_1\">\n <Text $renderAs=\"ub2-bold\" $inline $color=\"BLACK_1\">\n {label}:\n </Text>{' '}\n {title}\n </Text>\n {isPuzzleCard ? (\n canReviewPuzzle ? (\n <TextButton\n label={isCompleted ? 'View reviewed puzzle' : 'View assigned puzzle'}\n size=\"small\"\n color=\"BLACK_T_60\"\n onClick={handlePuzzleClick}\n />\n ) : (\n <Text $renderAs=\"ub3\" $color=\"BLACK_T_60\">\n {subtext}\n </Text>\n )\n ) : (\n <FlexView $flexDirection=\"row\" $flexGapX={0.75} $alignItems=\"center\">\n {subtext && (\n <Text $renderAs=\"ub3\" $color=\"BLACK_T_60\">\n {subtext}\n </Text>\n )}\n {shouldShowReview && (\n <TextButton\n label=\"Review\"\n size=\"small\"\n color=\"BLACK_T_60\"\n onClick={handleReviewClick}\n />\n )}\n </FlexView>\n )}\n </FlexView>\n </FlexView>\n );\n },\n);\n\nAccordionItem.displayName = 'AccordionItem';\n\nexport default AccordionItem;\n"],"names":["AccordionItem","memo","type","userType","card","onPuzzleClick","onReviewClick","label","title","state","subtext","userNodeId","blockType","userBlockId","nodeType","isSatMockTestBlock","BLOCK_TYPE","isPuzzleCard","NODE_TYPES","Icon","bgColor","getStateConf","isCompleted","NODE_STATE","shouldShowReview","useMemo","CARD_TYPE","USER_TYPE","CODING_ACTIVITY_NODE_TYPES","canReviewPuzzle","handlePuzzleClick","useCallback","handleReviewClick","jsxs","FlexView","jsx","Text","TextButton"],"mappings":";;;;;;;;;;AAaA,MAAMA,IAAyCC;AAAA,EAC7C,CAAC,EAAE,MAAAC,GAAM,UAAAC,GAAU,MAAAC,GAAM,eAAAC,GAAe,eAAAC,QAAoB;AACpD,UAAA;AAAA,MACJ,OAAAC;AAAA,MACA,OAAAC;AAAA,MACA,OAAAC;AAAA,MACA,SAAAC;AAAA,MACA,cAAcC;AAAA,MACd,YAAYC;AAAA,MACZ,eAAeC;AAAA,MACf,WAAWC;AAAA,IACT,IAAAV,GACEW,IAAqBH,MAAcI,EAAW,eAC9CC,IAAeH,MAAaI,EAAW,aACvC,CAACC,GAAMC,CAAO,IAAIC,EAAaZ,CAAK,GACpCa,IAAcb,MAAUc,EAAW,WACnCC,IAAmBC,EAAQ,MAC3BvB,MAASwB,EAAU,SAAe,KAElCvB,MAAawB,EAAU,UAAgB,CAACZ,KAAsBO,IAE9DnB,MAAawB,EAAU,UAEvBL,KACA,CAACM,EAA2B;AAAA,MAC1Bd;AAAA,IAAA,IAIC,IACN,CAACX,GAAUD,GAAMa,GAAoBO,GAAaR,CAAQ,CAAC,GAExDe,IACHP,KAAenB,MAAawB,EAAU,WAAYxB,MAAawB,EAAU,SAEtEG,IAAoBC,EAAY,MAAM;AAC1C,MAAIpB,KAAcN,KAChBA,EAAcM,GAAYF,CAAK;AAAA,IAEhC,GAAA,CAACJ,GAAeM,GAAYF,CAAK,CAAC,GAE/BuB,IAAoBD,EAAY,MAAM;AAC1C,MAAIzB,KAAiBK,KACLL,EAAAK,GAAYI,GAAoBF,CAAW;AAAA,OAE1D,CAACE,GAAoBT,GAAeO,GAAaF,CAAU,CAAC;AAE/D,WACG,gBAAAsB,EAAAC,GAAA,EAAS,gBAAe,OAAM,WAAW,KACxC,UAAA;AAAA,MAAC,gBAAAC,EAAAD,GAAA,EAAS,iBAAgB,YAAW,SAAS,IAAI,aAAY,SAC5D,UAAA,gBAAAC,EAACD,GAAS,EAAA,aAAad,GAAS,gBAAgB,KAAK,QAAQ,IAAI,SAAS,IACvE,UAAQD,KAAA,gBAAAgB,EAAChB,GAAK,EAAA,OAAO,IAAI,QAAQ,GAAI,CAAA,EACxC,CAAA,GACF;AAAA,MACA,gBAAAc,EAACC,GAAS,EAAA,cAAc,MACtB,UAAA;AAAA,QAAA,gBAAAD,EAACG,GAAK,EAAA,WAAU,OAAM,QAAO,WAC3B,UAAA;AAAA,UAAA,gBAAAH,EAACG,KAAK,WAAU,YAAW,SAAO,IAAC,QAAO,WACvC,UAAA;AAAA,YAAA7B;AAAA,YAAM;AAAA,UAAA,GACT;AAAA,UAAQ;AAAA,UACPC;AAAA,QAAA,GACH;AAAA,QACCS,IACCY,IACE,gBAAAM;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,OAAOf,IAAc,yBAAyB;AAAA,YAC9C,MAAK;AAAA,YACL,OAAM;AAAA,YACN,SAASQ;AAAA,UAAA;AAAA,QAAA,IAGV,gBAAAK,EAAAC,GAAA,EAAK,WAAU,OAAM,QAAO,cAC1B,UAAA1B,EACH,CAAA,IAGF,gBAAAuB,EAACC,KAAS,gBAAe,OAAM,WAAW,MAAM,aAAY,UACzD,UAAA;AAAA,UAAAxB,uBACE0B,GAAK,EAAA,WAAU,OAAM,QAAO,cAC1B,UACH1B,GAAA;AAAA,UAEDc,KACC,gBAAAW;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,OAAM;AAAA,cACN,MAAK;AAAA,cACL,OAAM;AAAA,cACN,SAASL;AAAA,YAAA;AAAA,UACX;AAAA,QAAA,GAEJ;AAAA,MAAA,GAEJ;AAAA,IACF,EAAA,CAAA;AAAA,EAEJ;AACF;AAEAhC,EAAc,cAAc;"}
|