@cuemath/leap 2.8.62-aa1 → 2.8.62-rj-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js +46 -45
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js +26 -25
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/carousel/carousel.js +51 -49
- package/dist/features/circle-games/game-launcher/comps/carousel/carousel.js.map +1 -1
- package/dist/features/circle-games/game-launcher/game-launcher.js +87 -90
- package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js +83 -82
- package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js +117 -116
- package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/games/web-view/web-view-types.js.map +1 -1
- package/dist/features/circle-games/games/web-view/web-view.js +53 -47
- package/dist/features/circle-games/games/web-view/web-view.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-provider.js +8 -9
- package/dist/features/cue-canvas/cue-canvas-provider.js.map +1 -1
- package/dist/features/journey/hooks/use-get-eligible-journeys-via-route.js +7 -4
- package/dist/features/journey/hooks/use-get-eligible-journeys-via-route.js.map +1 -1
- package/dist/features/journey/use-journey/journey-context-provider.js +73 -69
- package/dist/features/journey/use-journey/journey-context-provider.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item-cta-info.js +60 -59
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item-cta-info.js.map +1 -1
- package/dist/features/sheets/resources-list/resource-item/resource-item.js +90 -89
- package/dist/features/sheets/resources-list/resource-item/resource-item.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.js +61 -60
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.js +64 -63
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/sheets/utils/is-v3-worksheet.js +14 -4
- package/dist/features/sheets/utils/is-v3-worksheet.js.map +1 -1
- package/dist/features/ui/section-list/section-list.js +12 -12
- package/dist/features/ui/section-list/section-list.js.map +1 -1
- package/dist/index.d.ts +14 -13
- package/dist/index.js +75 -74
- package/package.json +2 -4
- package/dist/library/polypad.js +0 -24965
- package/dist/library/polypad.js.map +0 -1
@@ -1,110 +1,111 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import { useMemo as
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import { useUIContext as
|
6
|
-
import { NODE_TYPE as
|
7
|
-
import
|
8
|
-
import Y from "../context-menu-helper/
|
9
|
-
import
|
10
|
-
|
11
|
-
|
1
|
+
import { jsxs as A, Fragment as g, jsx as s } from "react/jsx-runtime";
|
2
|
+
import { useMemo as I, useCallback as C } from "react";
|
3
|
+
import V from "../../../../../ui/buttons/button/button.js";
|
4
|
+
import W from "../../../../../ui/context-menu/context-menu.js";
|
5
|
+
import { useUIContext as j } from "../../../../../ui/context/context.js";
|
6
|
+
import { NODE_TYPE as U } from "../../../../constants/sheet.js";
|
7
|
+
import { isV3Worksheet as m } from "../../../../utils/is-v3-worksheet.js";
|
8
|
+
import Y from "../context-menu-helper/menu-element/menu-element.js";
|
9
|
+
import z from "../context-menu-helper/target-element/target-element.js";
|
10
|
+
import { MENU_OPTIONS as R } from "./student-actions-constant.js";
|
11
|
+
const $ = ({
|
12
|
+
sheet: t,
|
12
13
|
isDefocused: o,
|
13
|
-
isLastSheet:
|
14
|
-
...
|
14
|
+
isLastSheet: N,
|
15
|
+
...x
|
15
16
|
}) => {
|
16
|
-
const { teacherId:
|
17
|
-
can_start:
|
18
|
-
can_resume:
|
17
|
+
const { teacherId: b, milestoneId: d, section: c, onStart: u, onResume: p, onReattempt: l, onReview: f } = x, { permissions: M, node_id: w, user_node_id: e, node_type: T } = t, {
|
18
|
+
can_start: i,
|
19
|
+
can_resume: E,
|
19
20
|
can_review: h,
|
20
|
-
can_reattempt:
|
21
|
-
is_review_disabled:
|
22
|
-
} =
|
23
|
-
const
|
24
|
-
teacher_id:
|
25
|
-
node_id:
|
21
|
+
can_reattempt: _,
|
22
|
+
is_review_disabled: y
|
23
|
+
} = M, n = T === U.DYNAMIC ? e : w, { onEvent: v } = j(), a = I(() => {
|
24
|
+
const r = {
|
25
|
+
teacher_id: b,
|
26
|
+
node_id: w,
|
26
27
|
user_node_id: e
|
27
28
|
};
|
28
|
-
return
|
29
|
-
}, [
|
30
|
-
if (!
|
29
|
+
return d && (r.milestone_id = d), c && (r.section = c), r;
|
30
|
+
}, [d, w, c, b, e]), k = C(() => {
|
31
|
+
if (!n)
|
31
32
|
throw new Error("No required id is present to open the sheet.");
|
32
|
-
if (
|
33
|
-
|
33
|
+
if (i && typeof u == "function") {
|
34
|
+
u(n, m(t), e);
|
34
35
|
return;
|
35
36
|
}
|
36
|
-
if (
|
37
|
-
|
37
|
+
if (E && typeof p == "function") {
|
38
|
+
p(n, m(t), e);
|
38
39
|
return;
|
39
40
|
}
|
40
41
|
throw new Error("No callback provided. If provided it must be a function");
|
41
|
-
}, [
|
42
|
-
(
|
43
|
-
if (
|
44
|
-
...
|
45
|
-
cta:
|
46
|
-
}),
|
42
|
+
}, [E, i, n, p, u, t, e]), S = C(
|
43
|
+
(r) => {
|
44
|
+
if (v("clicked", {
|
45
|
+
...a,
|
46
|
+
cta: r
|
47
|
+
}), r === R.REVIEW) {
|
47
48
|
if (!e)
|
48
49
|
throw new Error("No required id is present to open the sheet.");
|
49
|
-
if (typeof
|
50
|
+
if (typeof f != "function")
|
50
51
|
throw new Error("onReview must be a function");
|
51
|
-
|
52
|
+
f(e, m(t, "review"));
|
52
53
|
return;
|
53
54
|
}
|
54
|
-
if (!
|
55
|
+
if (!n)
|
55
56
|
throw new Error("No required id is present to open the sheet.");
|
56
|
-
if (typeof
|
57
|
+
if (typeof l != "function")
|
57
58
|
throw new Error("onReattempt must be a function");
|
58
|
-
|
59
|
+
l(n, m(t), e);
|
59
60
|
},
|
60
|
-
[
|
61
|
-
),
|
61
|
+
[a, n, l, f, t, v, e]
|
62
|
+
), O = i || E, P = !o && _ || h, q = I(
|
62
63
|
() => [
|
63
64
|
{
|
64
65
|
show: h,
|
65
|
-
label:
|
66
|
-
disable:
|
66
|
+
label: R.REVIEW,
|
67
|
+
disable: y
|
67
68
|
},
|
68
69
|
{
|
69
|
-
show: !o &&
|
70
|
-
label:
|
70
|
+
show: !o && _,
|
71
|
+
label: R.REATTEMPT
|
71
72
|
}
|
72
73
|
],
|
73
|
-
[
|
74
|
+
[_, h, o, y]
|
74
75
|
);
|
75
|
-
return /* @__PURE__ */
|
76
|
-
|
77
|
-
|
76
|
+
return /* @__PURE__ */ A(g, { children: [
|
77
|
+
O && /* @__PURE__ */ s(
|
78
|
+
V,
|
78
79
|
{
|
79
|
-
label:
|
80
|
+
label: i ? "Start" : "Resume",
|
80
81
|
widthX: 7,
|
81
82
|
renderAs: "primary",
|
82
83
|
size: "xsmall",
|
83
|
-
onClick:
|
84
|
+
onClick: k,
|
84
85
|
disabled: o,
|
85
|
-
analyticsProps:
|
86
|
+
analyticsProps: a,
|
86
87
|
shape: "square"
|
87
88
|
}
|
88
89
|
),
|
89
|
-
|
90
|
-
|
90
|
+
P && /* @__PURE__ */ s(
|
91
|
+
W,
|
91
92
|
{
|
92
|
-
targetElement: /* @__PURE__ */ s(
|
93
|
+
targetElement: /* @__PURE__ */ s(z, { analyticsLabel: "Sheet menu", analyticsProps: a }),
|
93
94
|
menuElement: /* @__PURE__ */ s(
|
94
|
-
|
95
|
+
Y,
|
95
96
|
{
|
96
|
-
options:
|
97
|
+
options: q,
|
97
98
|
handleOnMenuOptionSelection: S
|
98
99
|
}
|
99
100
|
),
|
100
101
|
menuOffset: 10,
|
101
102
|
menuZIndex: 1,
|
102
|
-
placeTop:
|
103
|
+
placeTop: N
|
103
104
|
}
|
104
105
|
)
|
105
106
|
] });
|
106
107
|
};
|
107
108
|
export {
|
108
|
-
|
109
|
+
$ as default
|
109
110
|
};
|
110
111
|
//# sourceMappingURL=student-actions.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"student-actions.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.tsx"],"sourcesContent":["import type { IRewardNActionsProps, TTrackEventPayloadProps } from '../reward-n-actions-types';\nimport type { FC } from 'react';\n\nimport { useCallback, useMemo } from 'react';\n\nimport Button from '../../../../../ui/buttons/button/button';\nimport ContextMenu from '../../../../../ui/context-menu/context-menu';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport { NODE_TYPE } from '../../../../constants/sheet';\nimport MenuElement from '../context-menu-helper/menu-element/menu-element';\nimport TargetElement from '../context-menu-helper/target-element/target-element';\nimport { MENU_OPTIONS } from './student-actions-constant';\n\nconst StudentActions: FC<IRewardNActionsProps> = ({\n sheet,\n isDefocused,\n isLastSheet,\n ...restStudentActionProps\n}) => {\n const { teacherId, milestoneId, section, onStart, onResume, onReattempt, onReview } =\n restStudentActionProps;\n const { permissions, node_id: nodeId, user_node_id: userNodeId, node_type: nodeType } = sheet;\n\n const {\n can_start: canStart,\n can_resume: canResume,\n can_review: canReview,\n can_reattempt: canReattempt,\n is_review_disabled: isReviewHidden,\n } = permissions;\n\n const id = nodeType === NODE_TYPE.DYNAMIC ? userNodeId : nodeId;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const analyticsProps = useMemo(() => {\n const payload: TTrackEventPayloadProps = {\n teacher_id: teacherId,\n node_id: nodeId,\n user_node_id: userNodeId,\n };\n\n if (milestoneId) {\n payload.milestone_id = milestoneId;\n }\n\n if (section) {\n payload.section = section;\n }\n\n return payload;\n }, [milestoneId, nodeId, section, teacherId, userNodeId]);\n\n const handleOnPrimaryCtaClick = useCallback(() => {\n if (!id) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n if (canStart && typeof onStart === 'function') {\n onStart(id, userNodeId);\n\n return;\n }\n\n if (canResume && typeof onResume === 'function') {\n onResume(id, userNodeId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n }, [canResume, canStart, id, onResume, onStart, userNodeId]);\n\n const handleOnMenuOptionSelection = useCallback(\n (selectedOption: string) => {\n trackEvent('clicked', {\n ...analyticsProps,\n cta: selectedOption,\n });\n if (selectedOption === MENU_OPTIONS.REVIEW) {\n if (!userNodeId) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n if (typeof onReview !== 'function') {\n throw new Error('onReview must be a function');\n }\n\n onReview(userNodeId);\n\n return;\n }\n\n if (!id) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n if (typeof onReattempt !== 'function') {\n throw new Error('onReattempt must be a function');\n }\n\n onReattempt(id, userNodeId);\n\n return;\n },\n [analyticsProps, id, onReattempt, onReview, trackEvent, userNodeId],\n );\n\n const renderPrimaryCta = canStart || canResume;\n const renderContextMenu = (!isDefocused && canReattempt) || canReview;\n\n const options = useMemo(\n () => [\n {\n show: canReview,\n label: MENU_OPTIONS.REVIEW,\n disable: isReviewHidden,\n },\n {\n show: !isDefocused && canReattempt,\n label: MENU_OPTIONS.REATTEMPT,\n },\n ],\n [canReattempt, canReview, isDefocused, isReviewHidden],\n );\n\n return (\n <>\n {renderPrimaryCta && (\n <Button\n label={canStart ? 'Start' : 'Resume'}\n widthX={7}\n renderAs=\"primary\"\n size=\"xsmall\"\n onClick={handleOnPrimaryCtaClick}\n disabled={isDefocused}\n analyticsProps={analyticsProps}\n shape=\"square\"\n />\n )}\n\n {renderContextMenu && (\n <ContextMenu\n targetElement={\n <TargetElement analyticsLabel=\"Sheet menu\" analyticsProps={analyticsProps} />\n }\n menuElement={\n <MenuElement\n options={options}\n handleOnMenuOptionSelection={handleOnMenuOptionSelection}\n />\n }\n menuOffset={10}\n menuZIndex={1}\n placeTop={isLastSheet}\n />\n )}\n </>\n );\n};\n\nexport default StudentActions;\n"],"names":["StudentActions","sheet","isDefocused","isLastSheet","restStudentActionProps","teacherId","milestoneId","section","onStart","onResume","onReattempt","onReview","permissions","nodeId","userNodeId","nodeType","canStart","canResume","canReview","canReattempt","isReviewHidden","id","NODE_TYPE","trackEvent","useUIContext","analyticsProps","useMemo","payload","handleOnPrimaryCtaClick","useCallback","handleOnMenuOptionSelection","selectedOption","MENU_OPTIONS","renderPrimaryCta","renderContextMenu","options","jsxs","Fragment","jsx","Button","ContextMenu","TargetElement","MenuElement"],"mappings":"
|
1
|
+
{"version":3,"file":"student-actions.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.tsx"],"sourcesContent":["import type { IRewardNActionsProps, TTrackEventPayloadProps } from '../reward-n-actions-types';\nimport type { FC } from 'react';\n\nimport { useCallback, useMemo } from 'react';\n\nimport Button from '../../../../../ui/buttons/button/button';\nimport ContextMenu from '../../../../../ui/context-menu/context-menu';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport { NODE_TYPE } from '../../../../constants/sheet';\nimport { isV3Worksheet } from '../../../../utils/is-v3-worksheet';\nimport MenuElement from '../context-menu-helper/menu-element/menu-element';\nimport TargetElement from '../context-menu-helper/target-element/target-element';\nimport { MENU_OPTIONS } from './student-actions-constant';\n\nconst StudentActions: FC<IRewardNActionsProps> = ({\n sheet,\n isDefocused,\n isLastSheet,\n ...restStudentActionProps\n}) => {\n const { teacherId, milestoneId, section, onStart, onResume, onReattempt, onReview } =\n restStudentActionProps;\n const { permissions, node_id: nodeId, user_node_id: userNodeId, node_type: nodeType } = sheet;\n\n const {\n can_start: canStart,\n can_resume: canResume,\n can_review: canReview,\n can_reattempt: canReattempt,\n is_review_disabled: isReviewHidden,\n } = permissions;\n\n const id = nodeType === NODE_TYPE.DYNAMIC ? userNodeId : nodeId;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const analyticsProps = useMemo(() => {\n const payload: TTrackEventPayloadProps = {\n teacher_id: teacherId,\n node_id: nodeId,\n user_node_id: userNodeId,\n };\n\n if (milestoneId) {\n payload.milestone_id = milestoneId;\n }\n\n if (section) {\n payload.section = section;\n }\n\n return payload;\n }, [milestoneId, nodeId, section, teacherId, userNodeId]);\n\n const handleOnPrimaryCtaClick = useCallback(() => {\n if (!id) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n if (canStart && typeof onStart === 'function') {\n onStart(id, isV3Worksheet(sheet), userNodeId);\n\n return;\n }\n\n if (canResume && typeof onResume === 'function') {\n onResume(id, isV3Worksheet(sheet), userNodeId);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n }, [canResume, canStart, id, onResume, onStart, sheet, userNodeId]);\n\n const handleOnMenuOptionSelection = useCallback(\n (selectedOption: string) => {\n trackEvent('clicked', {\n ...analyticsProps,\n cta: selectedOption,\n });\n if (selectedOption === MENU_OPTIONS.REVIEW) {\n if (!userNodeId) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n if (typeof onReview !== 'function') {\n throw new Error('onReview must be a function');\n }\n\n onReview(userNodeId, isV3Worksheet(sheet, 'review'));\n\n return;\n }\n\n if (!id) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n if (typeof onReattempt !== 'function') {\n throw new Error('onReattempt must be a function');\n }\n\n onReattempt(id, isV3Worksheet(sheet), userNodeId);\n\n return;\n },\n [analyticsProps, id, onReattempt, onReview, sheet, trackEvent, userNodeId],\n );\n\n const renderPrimaryCta = canStart || canResume;\n const renderContextMenu = (!isDefocused && canReattempt) || canReview;\n\n const options = useMemo(\n () => [\n {\n show: canReview,\n label: MENU_OPTIONS.REVIEW,\n disable: isReviewHidden,\n },\n {\n show: !isDefocused && canReattempt,\n label: MENU_OPTIONS.REATTEMPT,\n },\n ],\n [canReattempt, canReview, isDefocused, isReviewHidden],\n );\n\n return (\n <>\n {renderPrimaryCta && (\n <Button\n label={canStart ? 'Start' : 'Resume'}\n widthX={7}\n renderAs=\"primary\"\n size=\"xsmall\"\n onClick={handleOnPrimaryCtaClick}\n disabled={isDefocused}\n analyticsProps={analyticsProps}\n shape=\"square\"\n />\n )}\n\n {renderContextMenu && (\n <ContextMenu\n targetElement={\n <TargetElement analyticsLabel=\"Sheet menu\" analyticsProps={analyticsProps} />\n }\n menuElement={\n <MenuElement\n options={options}\n handleOnMenuOptionSelection={handleOnMenuOptionSelection}\n />\n }\n menuOffset={10}\n menuZIndex={1}\n placeTop={isLastSheet}\n />\n )}\n </>\n );\n};\n\nexport default StudentActions;\n"],"names":["StudentActions","sheet","isDefocused","isLastSheet","restStudentActionProps","teacherId","milestoneId","section","onStart","onResume","onReattempt","onReview","permissions","nodeId","userNodeId","nodeType","canStart","canResume","canReview","canReattempt","isReviewHidden","id","NODE_TYPE","trackEvent","useUIContext","analyticsProps","useMemo","payload","handleOnPrimaryCtaClick","useCallback","isV3Worksheet","handleOnMenuOptionSelection","selectedOption","MENU_OPTIONS","renderPrimaryCta","renderContextMenu","options","jsxs","Fragment","jsx","Button","ContextMenu","TargetElement","MenuElement"],"mappings":"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"}
|
@@ -1,156 +1,157 @@
|
|
1
|
-
import { jsxs as
|
1
|
+
import { jsxs as G, Fragment as H, jsx as r } from "react/jsx-runtime";
|
2
2
|
import { useMemo as S, useCallback as C } from "react";
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import { useUIContext as
|
3
|
+
import j from "../../../../../../assets/line-icons/icons/eye2.js";
|
4
|
+
import q from "../../../../../ui/buttons/button/button.js";
|
5
|
+
import B from "../../../../../ui/buttons/icon-button/icon-button.js";
|
6
|
+
import K from "../../../../../ui/context-menu/context-menu.js";
|
7
|
+
import { useUIContext as V } from "../../../../../ui/context/context.js";
|
8
|
+
import { isV3Worksheet as N } from "../../../../utils/is-v3-worksheet.js";
|
8
9
|
import z from "../context-menu-helper/menu-element/menu-element.js";
|
9
|
-
import
|
10
|
-
import { TEACHER_MENU_OPTIONS as
|
11
|
-
const
|
12
|
-
sheet:
|
10
|
+
import W from "../context-menu-helper/target-element/target-element.js";
|
11
|
+
import { TEACHER_MENU_OPTIONS as o } from "./teacher-actions-constant.js";
|
12
|
+
const rn = ({
|
13
|
+
sheet: n,
|
13
14
|
isDefocused: c,
|
14
|
-
isLastSheet:
|
15
|
-
...
|
15
|
+
isLastSheet: R,
|
16
|
+
...g
|
16
17
|
}) => {
|
17
18
|
const {
|
18
19
|
teacherId: w,
|
19
20
|
milestoneId: s,
|
20
21
|
section: l,
|
21
|
-
onReview:
|
22
|
-
onPreview:
|
22
|
+
onReview: m,
|
23
|
+
onPreview: u,
|
23
24
|
onReset: _,
|
24
25
|
onChangeLocation: A,
|
25
26
|
onMarkAsFamiliar: E,
|
26
27
|
onUnlock: I,
|
27
28
|
onUnAssignSheet: k
|
28
|
-
} =
|
29
|
+
} = g, { permissions: M, user_node_id: t, node_id: i } = n, {
|
29
30
|
can_teacher_review: y,
|
30
31
|
can_reset: f,
|
31
32
|
can_change_attempt_location: d,
|
32
33
|
can_mark_familiar: p,
|
33
|
-
can_unlock:
|
34
|
+
can_unlock: v,
|
34
35
|
can_unassign: h
|
35
|
-
} =
|
36
|
-
const
|
36
|
+
} = M, { onEvent: b } = V(), a = S(() => {
|
37
|
+
const e = {
|
37
38
|
teacher_id: w,
|
38
|
-
node_id:
|
39
|
+
node_id: i,
|
39
40
|
user_node_id: t
|
40
41
|
};
|
41
|
-
return l && (
|
42
|
-
}, [s,
|
43
|
-
(
|
44
|
-
const
|
45
|
-
...
|
46
|
-
cta:
|
42
|
+
return l && (e.section = l), s && (e.milestone_id = s), e;
|
43
|
+
}, [s, i, l, w, t]), O = C(
|
44
|
+
(e) => {
|
45
|
+
const P = {
|
46
|
+
...a,
|
47
|
+
cta: e
|
47
48
|
};
|
48
|
-
b("clicked",
|
49
|
+
b("clicked", P);
|
49
50
|
},
|
50
|
-
[b,
|
51
|
-
),
|
52
|
-
if (y && typeof
|
51
|
+
[b, a]
|
52
|
+
), U = C(() => {
|
53
|
+
if (y && typeof m == "function") {
|
53
54
|
if (!t)
|
54
55
|
throw new Error("No required id is present to open the sheet.");
|
55
|
-
|
56
|
+
m(t, N(n, "review"));
|
56
57
|
return;
|
57
58
|
}
|
58
|
-
if (typeof
|
59
|
-
|
59
|
+
if (typeof u == "function") {
|
60
|
+
u(n, N(n));
|
60
61
|
return;
|
61
62
|
}
|
62
63
|
throw new Error("No callback provided. If provided it must be a function");
|
63
|
-
}, [y,
|
64
|
-
switch (
|
65
|
-
case
|
64
|
+
}, [y, u, m, n, t]), T = (e) => {
|
65
|
+
switch (O(e), e) {
|
66
|
+
case o.CHANGE_LOCATION:
|
66
67
|
if (typeof A != "function")
|
67
68
|
throw new Error("onChangeLocation must be a function");
|
68
|
-
A(
|
69
|
+
A(n);
|
69
70
|
return;
|
70
|
-
case
|
71
|
+
case o.UNASSIGN:
|
71
72
|
if (typeof k != "function")
|
72
73
|
throw new Error("onUnAssignSheet must be a function");
|
73
74
|
if (!t)
|
74
75
|
throw new Error("No user node id is present to unassign the sheet.");
|
75
|
-
k(
|
76
|
+
k(n);
|
76
77
|
return;
|
77
|
-
case
|
78
|
+
case o.MARK_AS_FAMILIAR:
|
78
79
|
if (typeof E != "function")
|
79
80
|
throw new Error("onMarkAsFamiliar must be a function");
|
80
|
-
E(
|
81
|
+
E(i);
|
81
82
|
return;
|
82
83
|
default:
|
83
84
|
if (typeof _ != "function")
|
84
85
|
throw new Error("onReset must be a function");
|
85
|
-
_(
|
86
|
+
_(n);
|
86
87
|
return;
|
87
88
|
}
|
88
|
-
},
|
89
|
+
}, L = () => {
|
89
90
|
if (typeof I != "function")
|
90
91
|
throw new Error("onUnlock must be a function");
|
91
|
-
I(
|
92
|
-
},
|
92
|
+
I(i);
|
93
|
+
}, x = f || !c && d || p || h, F = S(
|
93
94
|
() => [
|
94
95
|
{
|
95
96
|
show: !c && d,
|
96
|
-
label:
|
97
|
+
label: o.CHANGE_LOCATION
|
97
98
|
},
|
98
99
|
{
|
99
100
|
show: f,
|
100
|
-
label:
|
101
|
+
label: o.RESET_PROGRESS
|
101
102
|
},
|
102
103
|
{
|
103
104
|
show: p,
|
104
|
-
label:
|
105
|
+
label: o.MARK_AS_FAMILIAR
|
105
106
|
},
|
106
107
|
{
|
107
108
|
show: h,
|
108
|
-
label:
|
109
|
+
label: o.UNASSIGN
|
109
110
|
}
|
110
111
|
],
|
111
112
|
[c, d, f, p, h]
|
112
113
|
);
|
113
|
-
return /* @__PURE__ */
|
114
|
-
|
115
|
-
|
114
|
+
return /* @__PURE__ */ G(H, { children: [
|
115
|
+
v && /* @__PURE__ */ r(
|
116
|
+
q,
|
116
117
|
{
|
117
118
|
renderAs: "primary",
|
118
119
|
label: "Assign",
|
119
120
|
size: "xsmall",
|
120
121
|
widthX: 7,
|
121
|
-
onClick:
|
122
|
-
analyticsProps:
|
122
|
+
onClick: L,
|
123
|
+
analyticsProps: a,
|
123
124
|
shape: "square"
|
124
125
|
}
|
125
126
|
),
|
126
127
|
/* @__PURE__ */ r(
|
127
|
-
|
128
|
+
B,
|
128
129
|
{
|
129
|
-
Icon:
|
130
|
+
Icon: j,
|
130
131
|
renderAs: "secondary",
|
131
132
|
analyticsLabel: "Review",
|
132
|
-
onClick:
|
133
|
+
onClick: U
|
133
134
|
}
|
134
135
|
),
|
135
|
-
|
136
|
-
|
136
|
+
x && /* @__PURE__ */ r(
|
137
|
+
K,
|
137
138
|
{
|
138
|
-
targetElement: /* @__PURE__ */ r(
|
139
|
+
targetElement: /* @__PURE__ */ r(W, { analyticsLabel: "Sheet menu", analyticsProps: a }),
|
139
140
|
menuElement: /* @__PURE__ */ r(
|
140
141
|
z,
|
141
142
|
{
|
142
|
-
options:
|
143
|
-
handleOnMenuOptionSelection:
|
143
|
+
options: F,
|
144
|
+
handleOnMenuOptionSelection: T
|
144
145
|
}
|
145
146
|
),
|
146
147
|
menuOffset: 10,
|
147
148
|
menuZIndex: 1,
|
148
|
-
placeTop:
|
149
|
+
placeTop: R
|
149
150
|
}
|
150
151
|
)
|
151
152
|
] });
|
152
153
|
};
|
153
154
|
export {
|
154
|
-
|
155
|
+
rn as default
|
155
156
|
};
|
156
157
|
//# sourceMappingURL=teacher-actions.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"teacher-actions.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.tsx"],"sourcesContent":["import type { IRewardNActionsProps, TTrackEventPayloadProps } from '../reward-n-actions-types';\nimport type { FC } from 'react';\n\nimport { useCallback, useMemo } from 'react';\n\nimport Eye2Icon from '../../../../../../assets/line-icons/icons/eye2';\nimport Button from '../../../../../ui/buttons/button/button';\nimport IconButton from '../../../../../ui/buttons/icon-button/icon-button';\nimport ContextMenu from '../../../../../ui/context-menu/context-menu';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport MenuElement from '../context-menu-helper/menu-element/menu-element';\nimport TargetElement from '../context-menu-helper/target-element/target-element';\nimport { TEACHER_MENU_OPTIONS } from './teacher-actions-constant';\n\nconst TeacherActions: FC<IRewardNActionsProps> = ({\n sheet,\n isDefocused,\n isLastSheet,\n ...restTeacherActions\n}) => {\n const {\n teacherId,\n milestoneId,\n section,\n onReview,\n onPreview,\n onReset,\n onChangeLocation,\n onMarkAsFamiliar,\n onUnlock,\n onUnAssignSheet,\n } = restTeacherActions;\n const { permissions, user_node_id: userNodeId, node_id: nodeId } = sheet;\n const {\n can_teacher_review: canTeacherReview,\n can_reset: canReset,\n can_change_attempt_location: canChangeAttemptLocation,\n can_mark_familiar: canMarkFamiliar,\n can_unlock: canUnlock,\n can_unassign: canUnAssign,\n } = permissions;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const trackEventPayload = useMemo(() => {\n const payload: TTrackEventPayloadProps = {\n teacher_id: teacherId,\n node_id: nodeId,\n user_node_id: userNodeId,\n };\n\n if (section) {\n payload.section = section;\n }\n\n if (milestoneId) {\n payload.milestone_id = milestoneId;\n }\n\n return payload;\n }, [milestoneId, nodeId, section, teacherId, userNodeId]);\n\n const handleTrackEvent = useCallback(\n (cta: string) => {\n const payload: TTrackEventPayloadProps = {\n ...trackEventPayload,\n cta,\n };\n\n trackEvent('clicked', payload);\n },\n [trackEvent, trackEventPayload],\n );\n\n const handleOnSheetView = useCallback(() => {\n if (canTeacherReview && typeof onReview === 'function') {\n if (!userNodeId) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n onReview(userNodeId);\n\n return;\n }\n\n if (typeof onPreview === 'function') {\n onPreview(sheet);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n }, [canTeacherReview, onPreview, onReview, sheet, userNodeId]);\n\n const handleOnMenuOptionSelection = (selectedOption: string) => {\n handleTrackEvent(selectedOption);\n switch (selectedOption) {\n case TEACHER_MENU_OPTIONS.CHANGE_LOCATION:\n if (typeof onChangeLocation !== 'function') {\n throw new Error('onChangeLocation must be a function');\n }\n\n onChangeLocation(sheet);\n\n return;\n\n case TEACHER_MENU_OPTIONS.UNASSIGN:\n if (typeof onUnAssignSheet !== 'function') {\n throw new Error('onUnAssignSheet must be a function');\n }\n\n if (!userNodeId) {\n throw new Error('No user node id is present to unassign the sheet.');\n }\n onUnAssignSheet(sheet);\n\n return;\n\n case TEACHER_MENU_OPTIONS.MARK_AS_FAMILIAR:\n if (typeof onMarkAsFamiliar !== 'function') {\n throw new Error('onMarkAsFamiliar must be a function');\n }\n\n onMarkAsFamiliar(nodeId);\n\n return;\n\n default:\n if (typeof onReset !== 'function') {\n throw new Error('onReset must be a function');\n }\n\n onReset(sheet);\n\n return;\n }\n };\n\n const handleOnUnlock = () => {\n if (typeof onUnlock !== 'function') {\n throw new Error('onUnlock must be a function');\n }\n\n onUnlock(nodeId);\n };\n\n const renderContextMenu =\n canReset || (!isDefocused && canChangeAttemptLocation) || canMarkFamiliar || canUnAssign;\n\n const options = useMemo(\n () => [\n {\n show: !isDefocused && canChangeAttemptLocation,\n label: TEACHER_MENU_OPTIONS.CHANGE_LOCATION,\n },\n {\n show: canReset,\n label: TEACHER_MENU_OPTIONS.RESET_PROGRESS,\n },\n {\n show: canMarkFamiliar,\n label: TEACHER_MENU_OPTIONS.MARK_AS_FAMILIAR,\n },\n {\n show: canUnAssign,\n label: TEACHER_MENU_OPTIONS.UNASSIGN,\n },\n ],\n [isDefocused, canChangeAttemptLocation, canReset, canMarkFamiliar, canUnAssign],\n );\n\n return (\n <>\n {canUnlock && (\n <Button\n renderAs=\"primary\"\n label=\"Assign\"\n size=\"xsmall\"\n widthX={7}\n onClick={handleOnUnlock}\n analyticsProps={trackEventPayload}\n shape=\"square\"\n />\n )}\n\n <IconButton\n Icon={Eye2Icon}\n renderAs=\"secondary\"\n analyticsLabel={'Review'}\n onClick={handleOnSheetView}\n />\n\n {renderContextMenu && (\n <ContextMenu\n targetElement={\n <TargetElement analyticsLabel=\"Sheet menu\" analyticsProps={trackEventPayload} />\n }\n menuElement={\n <MenuElement\n options={options}\n handleOnMenuOptionSelection={handleOnMenuOptionSelection}\n />\n }\n menuOffset={10}\n menuZIndex={1}\n placeTop={isLastSheet}\n />\n )}\n </>\n );\n};\n\nexport default TeacherActions;\n"],"names":["TeacherActions","sheet","isDefocused","isLastSheet","restTeacherActions","teacherId","milestoneId","section","onReview","onPreview","onReset","onChangeLocation","onMarkAsFamiliar","onUnlock","onUnAssignSheet","permissions","userNodeId","nodeId","canTeacherReview","canReset","canChangeAttemptLocation","canMarkFamiliar","canUnlock","canUnAssign","trackEvent","useUIContext","trackEventPayload","useMemo","payload","handleTrackEvent","useCallback","cta","handleOnSheetView","handleOnMenuOptionSelection","selectedOption","TEACHER_MENU_OPTIONS","handleOnUnlock","renderContextMenu","options","jsxs","Fragment","jsx","Button","IconButton","Eye2Icon","ContextMenu","TargetElement","MenuElement"],"mappings":"
|
1
|
+
{"version":3,"file":"teacher-actions.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.tsx"],"sourcesContent":["import type { IRewardNActionsProps, TTrackEventPayloadProps } from '../reward-n-actions-types';\nimport type { FC } from 'react';\n\nimport { useCallback, useMemo } from 'react';\n\nimport Eye2Icon from '../../../../../../assets/line-icons/icons/eye2';\nimport Button from '../../../../../ui/buttons/button/button';\nimport IconButton from '../../../../../ui/buttons/icon-button/icon-button';\nimport ContextMenu from '../../../../../ui/context-menu/context-menu';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport { isV3Worksheet } from '../../../../utils/is-v3-worksheet';\nimport MenuElement from '../context-menu-helper/menu-element/menu-element';\nimport TargetElement from '../context-menu-helper/target-element/target-element';\nimport { TEACHER_MENU_OPTIONS } from './teacher-actions-constant';\n\nconst TeacherActions: FC<IRewardNActionsProps> = ({\n sheet,\n isDefocused,\n isLastSheet,\n ...restTeacherActions\n}) => {\n const {\n teacherId,\n milestoneId,\n section,\n onReview,\n onPreview,\n onReset,\n onChangeLocation,\n onMarkAsFamiliar,\n onUnlock,\n onUnAssignSheet,\n } = restTeacherActions;\n const { permissions, user_node_id: userNodeId, node_id: nodeId } = sheet;\n const {\n can_teacher_review: canTeacherReview,\n can_reset: canReset,\n can_change_attempt_location: canChangeAttemptLocation,\n can_mark_familiar: canMarkFamiliar,\n can_unlock: canUnlock,\n can_unassign: canUnAssign,\n } = permissions;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const trackEventPayload = useMemo(() => {\n const payload: TTrackEventPayloadProps = {\n teacher_id: teacherId,\n node_id: nodeId,\n user_node_id: userNodeId,\n };\n\n if (section) {\n payload.section = section;\n }\n\n if (milestoneId) {\n payload.milestone_id = milestoneId;\n }\n\n return payload;\n }, [milestoneId, nodeId, section, teacherId, userNodeId]);\n\n const handleTrackEvent = useCallback(\n (cta: string) => {\n const payload: TTrackEventPayloadProps = {\n ...trackEventPayload,\n cta,\n };\n\n trackEvent('clicked', payload);\n },\n [trackEvent, trackEventPayload],\n );\n\n const handleOnSheetView = useCallback(() => {\n if (canTeacherReview && typeof onReview === 'function') {\n if (!userNodeId) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n onReview(userNodeId, isV3Worksheet(sheet, 'review'));\n\n return;\n }\n\n if (typeof onPreview === 'function') {\n onPreview(sheet, isV3Worksheet(sheet));\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n }, [canTeacherReview, onPreview, onReview, sheet, userNodeId]);\n\n const handleOnMenuOptionSelection = (selectedOption: string) => {\n handleTrackEvent(selectedOption);\n switch (selectedOption) {\n case TEACHER_MENU_OPTIONS.CHANGE_LOCATION:\n if (typeof onChangeLocation !== 'function') {\n throw new Error('onChangeLocation must be a function');\n }\n\n onChangeLocation(sheet);\n\n return;\n\n case TEACHER_MENU_OPTIONS.UNASSIGN:\n if (typeof onUnAssignSheet !== 'function') {\n throw new Error('onUnAssignSheet must be a function');\n }\n\n if (!userNodeId) {\n throw new Error('No user node id is present to unassign the sheet.');\n }\n onUnAssignSheet(sheet);\n\n return;\n\n case TEACHER_MENU_OPTIONS.MARK_AS_FAMILIAR:\n if (typeof onMarkAsFamiliar !== 'function') {\n throw new Error('onMarkAsFamiliar must be a function');\n }\n\n onMarkAsFamiliar(nodeId);\n\n return;\n\n default:\n if (typeof onReset !== 'function') {\n throw new Error('onReset must be a function');\n }\n\n onReset(sheet);\n\n return;\n }\n };\n\n const handleOnUnlock = () => {\n if (typeof onUnlock !== 'function') {\n throw new Error('onUnlock must be a function');\n }\n\n onUnlock(nodeId);\n };\n\n const renderContextMenu =\n canReset || (!isDefocused && canChangeAttemptLocation) || canMarkFamiliar || canUnAssign;\n\n const options = useMemo(\n () => [\n {\n show: !isDefocused && canChangeAttemptLocation,\n label: TEACHER_MENU_OPTIONS.CHANGE_LOCATION,\n },\n {\n show: canReset,\n label: TEACHER_MENU_OPTIONS.RESET_PROGRESS,\n },\n {\n show: canMarkFamiliar,\n label: TEACHER_MENU_OPTIONS.MARK_AS_FAMILIAR,\n },\n {\n show: canUnAssign,\n label: TEACHER_MENU_OPTIONS.UNASSIGN,\n },\n ],\n [isDefocused, canChangeAttemptLocation, canReset, canMarkFamiliar, canUnAssign],\n );\n\n return (\n <>\n {canUnlock && (\n <Button\n renderAs=\"primary\"\n label=\"Assign\"\n size=\"xsmall\"\n widthX={7}\n onClick={handleOnUnlock}\n analyticsProps={trackEventPayload}\n shape=\"square\"\n />\n )}\n\n <IconButton\n Icon={Eye2Icon}\n renderAs=\"secondary\"\n analyticsLabel={'Review'}\n onClick={handleOnSheetView}\n />\n\n {renderContextMenu && (\n <ContextMenu\n targetElement={\n <TargetElement analyticsLabel=\"Sheet menu\" analyticsProps={trackEventPayload} />\n }\n menuElement={\n <MenuElement\n options={options}\n handleOnMenuOptionSelection={handleOnMenuOptionSelection}\n />\n }\n menuOffset={10}\n menuZIndex={1}\n placeTop={isLastSheet}\n />\n )}\n </>\n );\n};\n\nexport default TeacherActions;\n"],"names":["TeacherActions","sheet","isDefocused","isLastSheet","restTeacherActions","teacherId","milestoneId","section","onReview","onPreview","onReset","onChangeLocation","onMarkAsFamiliar","onUnlock","onUnAssignSheet","permissions","userNodeId","nodeId","canTeacherReview","canReset","canChangeAttemptLocation","canMarkFamiliar","canUnlock","canUnAssign","trackEvent","useUIContext","trackEventPayload","useMemo","payload","handleTrackEvent","useCallback","cta","handleOnSheetView","isV3Worksheet","handleOnMenuOptionSelection","selectedOption","TEACHER_MENU_OPTIONS","handleOnUnlock","renderContextMenu","options","jsxs","Fragment","jsx","Button","IconButton","Eye2Icon","ContextMenu","TargetElement","MenuElement"],"mappings":"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"}
|
@@ -1,12 +1,12 @@
|
|
1
1
|
import { NODE_TYPE as E } from "../constants/sheet.js";
|
2
|
-
const
|
2
|
+
const A = [
|
3
3
|
"SAT_MATH_ASSESSMENT",
|
4
4
|
"SAT_ENGLISH_ASSESSMENT",
|
5
5
|
"SAT_MATH_RECAP",
|
6
6
|
"SAT_MATH_LEARNING",
|
7
7
|
"SAT_ENGLISH_LEARNING"
|
8
8
|
], T = [
|
9
|
-
...
|
9
|
+
...A,
|
10
10
|
E.REMEDIAL,
|
11
11
|
E.LEGACY,
|
12
12
|
E.RECAP,
|
@@ -31,8 +31,18 @@ const S = [
|
|
31
31
|
E.DIAGNOSTIC,
|
32
32
|
E.SUBJECTIVE,
|
33
33
|
E.TURING_SUBJECTIVE
|
34
|
-
]
|
34
|
+
], I = (_, t) => {
|
35
|
+
const { node_type: n, is_worksheet_v3: S, is_lesson_v3_enabled: e } = _;
|
36
|
+
if (t === "review")
|
37
|
+
return T.includes(n);
|
38
|
+
const r = "can_start" in _ ? _.can_start : _.permissions.can_start, s = "can_reattempt" in _ ? _.can_reattempt : _.permissions.can_reattempt, o = "can_redo" in _ ? _.can_redo : !1;
|
39
|
+
return S || e ? !0 : r || s || o ? T.includes(n) : !!A.includes(n);
|
40
|
+
}, N = (_) => {
|
41
|
+
const { node_type: t, is_worksheet_v3: n, is_lesson_v3_enabled: S } = _;
|
42
|
+
return n || S || A.includes(t);
|
43
|
+
};
|
35
44
|
export {
|
36
|
-
|
45
|
+
I as isV3Worksheet,
|
46
|
+
N as isV3WorksheetAttempt
|
37
47
|
};
|
38
48
|
//# sourceMappingURL=is-v3-worksheet.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"is-v3-worksheet.js","sources":["../../../../src/features/sheets/utils/is-v3-worksheet.ts"],"sourcesContent":["import type { TNodeTypeProps } from '../sheets-list/sheet-item/sheet-item-types';\n\nimport { NODE_TYPE } from '../constants/sheet';\n\nconst SAT_V3_NODE_TYPES: TNodeTypeProps[] = [\n 'SAT_MATH_ASSESSMENT',\n 'SAT_ENGLISH_ASSESSMENT',\n 'SAT_MATH_RECAP',\n 'SAT_MATH_LEARNING',\n 'SAT_ENGLISH_LEARNING',\n];\nconst WORKSHEET_V3_NODE_TYPES: TNodeTypeProps[] = [\n ...SAT_V3_NODE_TYPES,\n NODE_TYPE.REMEDIAL,\n NODE_TYPE.LEGACY,\n NODE_TYPE.RECAP,\n NODE_TYPE.GENERAL,\n NODE_TYPE.LEVEL3,\n NODE_TYPE.LEVEL2,\n NODE_TYPE.REVISION,\n NODE_TYPE.TARGET_PRACTICE,\n NODE_TYPE.EXTRA_PRACTICE,\n NODE_TYPE.PRACTICE,\n NODE_TYPE.LEARNING,\n NODE_TYPE.PUZZLE_EASY,\n NODE_TYPE.PUZZLE_MEDIUM,\n NODE_TYPE.PUZZLE_HARD,\n NODE_TYPE.CHAPTER_ASSESSMENT,\n NODE_TYPE.ASSESSMENT,\n NODE_TYPE.MASTERY,\n NODE_TYPE.TRIAL_DIAGNOSTIC,\n NODE_TYPE.DYNAMIC,\n NODE_TYPE.TURING_ASSESSMENT,\n NODE_TYPE.TURING_PRACTICE,\n NODE_TYPE.DIAGNOSTIC,\n NODE_TYPE.SUBJECTIVE,\n NODE_TYPE.TURING_SUBJECTIVE,\n];\n\
|
1
|
+
{"version":3,"file":"is-v3-worksheet.js","sources":["../../../../src/features/sheets/utils/is-v3-worksheet.ts"],"sourcesContent":["import type { IWorksheetAttemptModel } from '../../../types/models/worksheet';\nimport type { TLPARSheetData } from '../../chapters/lpar-chapter/block-section/sheet-item/sheet-item-type';\nimport type { ISheetDataProps, TNodeTypeProps } from '../sheets-list/sheet-item/sheet-item-types';\n\nimport { NODE_TYPE } from '../constants/sheet';\n\nconst SAT_V3_NODE_TYPES: TNodeTypeProps[] = [\n 'SAT_MATH_ASSESSMENT',\n 'SAT_ENGLISH_ASSESSMENT',\n 'SAT_MATH_RECAP',\n 'SAT_MATH_LEARNING',\n 'SAT_ENGLISH_LEARNING',\n];\nconst WORKSHEET_V3_NODE_TYPES: TNodeTypeProps[] = [\n ...SAT_V3_NODE_TYPES,\n NODE_TYPE.REMEDIAL,\n NODE_TYPE.LEGACY,\n NODE_TYPE.RECAP,\n NODE_TYPE.GENERAL,\n NODE_TYPE.LEVEL3,\n NODE_TYPE.LEVEL2,\n NODE_TYPE.REVISION,\n NODE_TYPE.TARGET_PRACTICE,\n NODE_TYPE.EXTRA_PRACTICE,\n NODE_TYPE.PRACTICE,\n NODE_TYPE.LEARNING,\n NODE_TYPE.PUZZLE_EASY,\n NODE_TYPE.PUZZLE_MEDIUM,\n NODE_TYPE.PUZZLE_HARD,\n NODE_TYPE.CHAPTER_ASSESSMENT,\n NODE_TYPE.ASSESSMENT,\n NODE_TYPE.MASTERY,\n NODE_TYPE.TRIAL_DIAGNOSTIC,\n NODE_TYPE.DYNAMIC,\n NODE_TYPE.TURING_ASSESSMENT,\n NODE_TYPE.TURING_PRACTICE,\n NODE_TYPE.DIAGNOSTIC,\n NODE_TYPE.SUBJECTIVE,\n NODE_TYPE.TURING_SUBJECTIVE,\n];\n\nconst isV3Worksheet = (\n sheet: ISheetDataProps | TLPARSheetData,\n mode?: 'resume' | 'review',\n): boolean => {\n const { node_type, is_worksheet_v3, is_lesson_v3_enabled } = sheet;\n\n if (mode === 'review') {\n return WORKSHEET_V3_NODE_TYPES.includes(node_type);\n }\n\n const canStart = 'can_start' in sheet ? sheet.can_start : sheet.permissions.can_start;\n const canReattempt =\n 'can_reattempt' in sheet ? sheet.can_reattempt : sheet.permissions.can_reattempt;\n const canRedo = 'can_redo' in sheet ? sheet.can_redo : false;\n\n if (is_worksheet_v3 || is_lesson_v3_enabled) {\n return true;\n }\n\n // For new and reattemptable worksheets start the worksheet in v3 mode\n if (canStart || canReattempt || canRedo) {\n return WORKSHEET_V3_NODE_TYPES.includes(node_type);\n }\n\n // For SAT assessments start the worksheet in v3 mode\n if (SAT_V3_NODE_TYPES.includes(node_type)) {\n return true;\n }\n\n return false;\n};\n\nconst isV3WorksheetAttempt = (attempt: IWorksheetAttemptModel): boolean => {\n const { node_type, is_worksheet_v3, is_lesson_v3_enabled } = attempt;\n\n return (\n is_worksheet_v3 ||\n is_lesson_v3_enabled ||\n SAT_V3_NODE_TYPES.includes(node_type as TNodeTypeProps)\n );\n};\n\nexport { isV3Worksheet, isV3WorksheetAttempt };\n"],"names":["SAT_V3_NODE_TYPES","WORKSHEET_V3_NODE_TYPES","NODE_TYPE","isV3Worksheet","sheet","mode","node_type","is_worksheet_v3","is_lesson_v3_enabled","canStart","canReattempt","canRedo","isV3WorksheetAttempt","attempt"],"mappings":";AAMA,MAAMA,IAAsC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACMC,IAA4C;AAAA,EAChD,GAAGD;AAAA,EACHE,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAEMC,IAAgB,CACpBC,GACAC,MACY;AACZ,QAAM,EAAE,WAAAC,GAAW,iBAAAC,GAAiB,sBAAAC,EAAA,IAAyBJ;AAE7D,MAAIC,MAAS;AACJ,WAAAJ,EAAwB,SAASK,CAAS;AAGnD,QAAMG,IAAW,eAAeL,IAAQA,EAAM,YAAYA,EAAM,YAAY,WACtEM,IACJ,mBAAmBN,IAAQA,EAAM,gBAAgBA,EAAM,YAAY,eAC/DO,IAAU,cAAcP,IAAQA,EAAM,WAAW;AAEvD,SAAIG,KAAmBC,IACd,KAILC,KAAYC,KAAgBC,IACvBV,EAAwB,SAASK,CAAS,IAI/C,EAAAN,EAAkB,SAASM,CAAS;AAK1C,GAEMM,IAAuB,CAACC,MAA6C;AACzE,QAAM,EAAE,WAAAP,GAAW,iBAAAC,GAAiB,sBAAAC,EAAA,IAAyBK;AAE7D,SACEN,KACAC,KACAR,EAAkB,SAASM,CAA2B;AAE1D;"}
|
@@ -1,16 +1,16 @@
|
|
1
|
-
import { jsx as t, Fragment as p, jsxs as
|
2
|
-
import { memo as
|
3
|
-
import
|
4
|
-
const
|
5
|
-
const { data:
|
6
|
-
return /* @__PURE__ */ t(p, { children:
|
7
|
-
n
|
8
|
-
/* @__PURE__ */ t(
|
9
|
-
const l =
|
10
|
-
return /* @__PURE__ */ t(
|
1
|
+
import { jsx as t, Fragment as p, jsxs as $ } from "react/jsx-runtime";
|
2
|
+
import { memo as f, Fragment as c } from "react";
|
3
|
+
import h from "../layout/flex-view.js";
|
4
|
+
const u = (m) => {
|
5
|
+
const { data: i, renderSectionHeader: n, renderItem: s, keyExtractor: o } = m;
|
6
|
+
return /* @__PURE__ */ t(p, { children: i.map((r, d) => /* @__PURE__ */ $(h, { children: [
|
7
|
+
n && n(r),
|
8
|
+
/* @__PURE__ */ t(c, { children: r.data.map((e, a) => {
|
9
|
+
const l = o ? o(e, a) : `${e}_${a}`;
|
10
|
+
return /* @__PURE__ */ t(c, { children: s(e) }, l);
|
11
11
|
}) })
|
12
|
-
] }, `${
|
13
|
-
},
|
12
|
+
] }, `${r.title}_${d}`)) });
|
13
|
+
}, x = f(u), L = x;
|
14
14
|
export {
|
15
15
|
L as default
|
16
16
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"section-list.js","sources":["../../../../src/features/ui/section-list/section-list.tsx"],"sourcesContent":["import type { ISectionList, TDefaultSection } from './section-list-types';\n\nimport { Fragment, memo } from 'react';\n\nimport FlexView from '../layout/flex-view';\n\nconst SectionListComponent = <Section extends string | number | TDefaultSection>(\n props: ISectionList<Section>,\n): JSX.Element => {\n const { data, renderSectionHeader, renderItem, keyExtractor } = props;\n\n return (\n <>\n {data.map((section, idx) => {\n return (\n <FlexView key={`${section.title}_${idx}`}>\n {
|
1
|
+
{"version":3,"file":"section-list.js","sources":["../../../../src/features/ui/section-list/section-list.tsx"],"sourcesContent":["import type { ISectionList, TDefaultSection } from './section-list-types';\n\nimport { Fragment, memo } from 'react';\n\nimport FlexView from '../layout/flex-view';\n\nconst SectionListComponent = <Section extends string | number | TDefaultSection>(\n props: ISectionList<Section>,\n): JSX.Element => {\n const { data, renderSectionHeader, renderItem, keyExtractor } = props;\n\n return (\n <>\n {data.map((section, idx) => {\n return (\n <FlexView key={`${section.title}_${idx}`}>\n {renderSectionHeader && renderSectionHeader(section)}\n\n <Fragment>\n {section.data.map((item, itemIdx) => {\n const key = keyExtractor ? keyExtractor(item, itemIdx) : `${item}_${itemIdx}`;\n\n return <Fragment key={key}>{renderItem(item)}</Fragment>;\n })}\n </Fragment>\n </FlexView>\n );\n })}\n </>\n );\n};\n\nconst SelectionList = memo(SectionListComponent) as <\n Section extends string | number | TDefaultSection,\n>(\n props: ISectionList<Section>,\n) => JSX.Element;\n\nexport default SelectionList;\n"],"names":["SectionListComponent","props","data","renderSectionHeader","renderItem","keyExtractor","jsx","Fragment","section","idx","FlexView","item","itemIdx","key","SelectionList","memo","SectionList"],"mappings":";;;AAMA,MAAMA,IAAuB,CAC3BC,MACgB;AAChB,QAAM,EAAE,MAAAC,GAAM,qBAAAC,GAAqB,YAAAC,GAAY,cAAAC,MAAiBJ;AAEhE,SAEK,gBAAAK,EAAAC,GAAA,EAAA,UAAAL,EAAK,IAAI,CAACM,GAASC,wBAEfC,GACE,EAAA,UAAA;AAAA,IAAAP,KAAuBA,EAAoBK,CAAO;AAAA,IAEnD,gBAAAF,EAACC,GAAA,EACE,UAAAC,EAAQ,KAAK,IAAI,CAACG,GAAMC,MAAY;AAC7B,YAAAC,IAAMR,IAAeA,EAAaM,GAAMC,CAAO,IAAI,GAAGD,CAAI,IAAIC,CAAO;AAE3E,+BAAQL,GAAA,EAAoB,UAAWH,EAAAO,CAAI,KAArBE,CAAuB;AAAA,IAC9C,CAAA,GACH;AAAA,EAAA,EAAA,GATa,GAAGL,EAAQ,KAAK,IAAIC,CAAG,EAUtC,CAEH,EACH,CAAA;AAEJ,GAEMK,IAAgBC,EAAKf,CAAoB,GAM/CgB,IAAeF;"}
|