@cuemath/leap 2.8.52-link.3 → 2.8.53-aa0
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 +18 -18
- 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 +10 -10
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-context.js +8 -5
- package/dist/features/cue-canvas/cue-canvas-context.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-core.js +55 -22
- package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-helpers.js +56 -40
- package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-provider.js +16 -14
- package/dist/features/cue-canvas/cue-canvas-provider.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas.js +24 -24
- package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
- package/dist/features/cue-canvas/cue-cavas-styled.js +86 -78
- package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
- package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js +14 -10
- package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/icon-map.js +34 -32
- package/dist/features/cue-canvas/toolbar/icon-map.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/toolbar.js +9 -9
- package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item-cta-info.js +41 -41
- 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 +20 -20
- 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 +33 -33
- 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 +30 -30
- 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 +10 -14
- package/dist/features/sheets/utils/is-v3-worksheet.js.map +1 -1
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js +86 -76
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
- package/dist/features/ui/constants/z-index.js +2 -0
- package/dist/features/ui/constants/z-index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/package.json +3 -2
@@ -8,9 +8,9 @@ import { useUIContext as V } from "../../../../../ui/context/context.js";
|
|
8
8
|
import { isV3Worksheet as N } from "../../../../utils/is-v3-worksheet.js";
|
9
9
|
import z from "../context-menu-helper/menu-element/menu-element.js";
|
10
10
|
import W from "../context-menu-helper/target-element/target-element.js";
|
11
|
-
import { TEACHER_MENU_OPTIONS as
|
11
|
+
import { TEACHER_MENU_OPTIONS as e } from "./teacher-actions-constant.js";
|
12
12
|
const rn = ({
|
13
|
-
sheet:
|
13
|
+
sheet: o,
|
14
14
|
isDefocused: c,
|
15
15
|
isLastSheet: R,
|
16
16
|
...g
|
@@ -26,87 +26,87 @@ const rn = ({
|
|
26
26
|
onMarkAsFamiliar: E,
|
27
27
|
onUnlock: I,
|
28
28
|
onUnAssignSheet: k
|
29
|
-
} = g, { permissions: M, user_node_id: t, node_id:
|
29
|
+
} = g, { permissions: M, user_node_id: t, node_id: a } = o, {
|
30
30
|
can_teacher_review: y,
|
31
31
|
can_reset: f,
|
32
32
|
can_change_attempt_location: d,
|
33
33
|
can_mark_familiar: p,
|
34
34
|
can_unlock: v,
|
35
35
|
can_unassign: h
|
36
|
-
} = M, { onEvent: b } = V(),
|
37
|
-
const
|
36
|
+
} = M, { onEvent: b } = V(), i = S(() => {
|
37
|
+
const n = {
|
38
38
|
teacher_id: w,
|
39
|
-
node_id:
|
39
|
+
node_id: a,
|
40
40
|
user_node_id: t
|
41
41
|
};
|
42
|
-
return l && (
|
43
|
-
}, [s,
|
44
|
-
(
|
42
|
+
return l && (n.section = l), s && (n.milestone_id = s), n;
|
43
|
+
}, [s, a, l, w, t]), O = C(
|
44
|
+
(n) => {
|
45
45
|
const P = {
|
46
|
-
...
|
47
|
-
cta:
|
46
|
+
...i,
|
47
|
+
cta: n
|
48
48
|
};
|
49
49
|
b("clicked", P);
|
50
50
|
},
|
51
|
-
[b,
|
51
|
+
[b, i]
|
52
52
|
), U = C(() => {
|
53
53
|
if (y && typeof m == "function") {
|
54
54
|
if (!t)
|
55
55
|
throw new Error("No required id is present to open the sheet.");
|
56
|
-
m(t, N(
|
56
|
+
m(t, N());
|
57
57
|
return;
|
58
58
|
}
|
59
59
|
if (typeof u == "function") {
|
60
|
-
u(
|
60
|
+
u(o, N());
|
61
61
|
return;
|
62
62
|
}
|
63
63
|
throw new Error("No callback provided. If provided it must be a function");
|
64
|
-
}, [y, u, m,
|
65
|
-
switch (O(
|
66
|
-
case
|
64
|
+
}, [y, u, m, o, t]), T = (n) => {
|
65
|
+
switch (O(n), n) {
|
66
|
+
case e.CHANGE_LOCATION:
|
67
67
|
if (typeof A != "function")
|
68
68
|
throw new Error("onChangeLocation must be a function");
|
69
|
-
A(
|
69
|
+
A(o);
|
70
70
|
return;
|
71
|
-
case
|
71
|
+
case e.UNASSIGN:
|
72
72
|
if (typeof k != "function")
|
73
73
|
throw new Error("onUnAssignSheet must be a function");
|
74
74
|
if (!t)
|
75
75
|
throw new Error("No user node id is present to unassign the sheet.");
|
76
|
-
k(
|
76
|
+
k(o);
|
77
77
|
return;
|
78
|
-
case
|
78
|
+
case e.MARK_AS_FAMILIAR:
|
79
79
|
if (typeof E != "function")
|
80
80
|
throw new Error("onMarkAsFamiliar must be a function");
|
81
|
-
E(
|
81
|
+
E(a);
|
82
82
|
return;
|
83
83
|
default:
|
84
84
|
if (typeof _ != "function")
|
85
85
|
throw new Error("onReset must be a function");
|
86
|
-
_(
|
86
|
+
_(o);
|
87
87
|
return;
|
88
88
|
}
|
89
89
|
}, L = () => {
|
90
90
|
if (typeof I != "function")
|
91
91
|
throw new Error("onUnlock must be a function");
|
92
|
-
I(
|
92
|
+
I(a);
|
93
93
|
}, x = f || !c && d || p || h, F = S(
|
94
94
|
() => [
|
95
95
|
{
|
96
96
|
show: !c && d,
|
97
|
-
label:
|
97
|
+
label: e.CHANGE_LOCATION
|
98
98
|
},
|
99
99
|
{
|
100
100
|
show: f,
|
101
|
-
label:
|
101
|
+
label: e.RESET_PROGRESS
|
102
102
|
},
|
103
103
|
{
|
104
104
|
show: p,
|
105
|
-
label:
|
105
|
+
label: e.MARK_AS_FAMILIAR
|
106
106
|
},
|
107
107
|
{
|
108
108
|
show: h,
|
109
|
-
label:
|
109
|
+
label: e.UNASSIGN
|
110
110
|
}
|
111
111
|
],
|
112
112
|
[c, d, f, p, h]
|
@@ -120,7 +120,7 @@ const rn = ({
|
|
120
120
|
size: "xsmall",
|
121
121
|
widthX: 7,
|
122
122
|
onClick: L,
|
123
|
-
analyticsProps:
|
123
|
+
analyticsProps: i,
|
124
124
|
shape: "square"
|
125
125
|
}
|
126
126
|
),
|
@@ -136,7 +136,7 @@ const rn = ({
|
|
136
136
|
x && /* @__PURE__ */ r(
|
137
137
|
K,
|
138
138
|
{
|
139
|
-
targetElement: /* @__PURE__ */ r(W, { analyticsLabel: "Sheet menu", analyticsProps:
|
139
|
+
targetElement: /* @__PURE__ */ r(W, { analyticsLabel: "Sheet menu", analyticsProps: i }),
|
140
140
|
menuElement: /* @__PURE__ */ r(
|
141
141
|
z,
|
142
142
|
{
|
@@ -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 { 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":";;;;;;;;;;;AAeA,MAAMA,KAA2C,CAAC;AAAA,EAChD,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAA;AAAA,IACJ,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,SAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,iBAAAC;AAAA,EACE,IAAAV,GACE,EAAE,aAAAW,GAAa,cAAcC,GAAY,SAASC,EAAW,IAAAhB,GAC7D;AAAA,IACJ,oBAAoBiB;AAAA,IACpB,WAAWC;AAAA,IACX,6BAA6BC;AAAA,IAC7B,mBAAmBC;AAAA,IACnB,YAAYC;AAAA,IACZ,cAAcC;AAAA,EACZ,IAAAR,GAEE,EAAE,SAASS,EAAW,IAAIC,EAAa,GAEvCC,IAAoBC,EAAQ,MAAM;AACtC,UAAMC,IAAmC;AAAA,MACvC,YAAYvB;AAAA,MACZ,SAASY;AAAA,MACT,cAAcD;AAAA,IAAA;AAGhB,WAAIT,MACFqB,EAAQ,UAAUrB,IAGhBD,MACFsB,EAAQ,eAAetB,IAGlBsB;AAAA,EAAA,GACN,CAACtB,GAAaW,GAAQV,GAASF,GAAWW,CAAU,CAAC,GAElDa,IAAmBC;AAAA,IACvB,CAACC,MAAgB;AACf,YAAMH,IAAmC;AAAA,QACvC,GAAGF;AAAA,QACH,KAAAK;AAAA,MAAA;AAGF,MAAAP,EAAW,WAAWI,CAAO;AAAA,IAC/B;AAAA,IACA,CAACJ,GAAYE,CAAiB;AAAA,EAAA,GAG1BM,IAAoBF,EAAY,MAAM;AACtC,QAAAZ,KAAoB,OAAOV,KAAa,YAAY;AACtD,UAAI,CAACQ;AACG,cAAA,IAAI,MAAM,8CAA8C;AAGhE,MAAAR,EAASQ,GAAYiB,
|
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,13 @@
|
|
1
1
|
import { NODE_TYPE as E } from "../constants/sheet.js";
|
2
|
-
const
|
2
|
+
const T = [
|
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
|
-
]
|
9
|
-
|
8
|
+
];
|
9
|
+
[
|
10
|
+
...T,
|
10
11
|
E.REMEDIAL,
|
11
12
|
E.LEGACY,
|
12
13
|
E.RECAP,
|
@@ -31,18 +32,13 @@ const A = [
|
|
31
32
|
E.DIAGNOSTIC,
|
32
33
|
E.SUBJECTIVE,
|
33
34
|
E.TURING_SUBJECTIVE
|
34
|
-
]
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
const e = "can_start" in _ ? _.can_start : _.permissions.can_start, r = "can_reattempt" in _ ? _.can_reattempt : _.permissions.can_reattempt, s = "can_redo" in _ ? _.can_redo : !1;
|
39
|
-
return t || T ? !0 : e || r || s ? o.includes(n) : !!A.includes(n);
|
40
|
-
}, N = (_) => {
|
41
|
-
const { node_type: S, is_worksheet_v3: n, is_lesson_v3_enabled: t } = _;
|
42
|
-
return n || t || A.includes(S);
|
35
|
+
];
|
36
|
+
const R = (A, S) => !0, e = (A) => {
|
37
|
+
const { node_type: S, is_worksheet_v3: _, is_lesson_v3_enabled: I } = A;
|
38
|
+
return _ || I || T.includes(S);
|
43
39
|
};
|
44
40
|
export {
|
45
|
-
|
46
|
-
|
41
|
+
R as isV3Worksheet,
|
42
|
+
e as isV3WorksheetAttempt
|
47
43
|
};
|
48
44
|
//# 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 { 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 (is_worksheet_v3 || is_lesson_v3_enabled) ?? false;\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","
|
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 return true;\n\n const { node_type, is_worksheet_v3, is_lesson_v3_enabled } = sheet;\n\n if (mode === 'review') {\n return (is_worksheet_v3 || is_lesson_v3_enabled) ?? false;\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","NODE_TYPE","isV3Worksheet","sheet","mode","isV3WorksheetAttempt","attempt","node_type","is_worksheet_v3","is_lesson_v3_enabled"],"mappings":";AAMA,MAAMA,IAAsC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACkD;AAAA,EAChD,GAAGA;AAAA,EACHC,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;AAEM,MAAAC,IAAgB,CACpBC,GACAC,MAEO,IA8BHC,IAAuB,CAACC,MAA6C;AACzE,QAAM,EAAE,WAAAC,GAAW,iBAAAC,GAAiB,sBAAAC,EAAA,IAAyBH;AAE7D,SACEE,KACAC,KACAT,EAAkB,SAASO,CAA2B;AAE1D;"}
|
@@ -1,174 +1,184 @@
|
|
1
|
-
import { useCallback as
|
2
|
-
import { COURSE_STREAMS as
|
3
|
-
import { useMilestoneBulkPost as
|
4
|
-
import { usePostStudentPreferences as
|
5
|
-
import { usePatchStudentInformation as
|
6
|
-
import { usePatchTrialHome as
|
7
|
-
import { useTrialSessionContext as
|
8
|
-
import { getFormattedPreferences as
|
9
|
-
import { DEFAULT_BUTTON_STATE as
|
1
|
+
import { useCallback as d, useEffect as j } from "react";
|
2
|
+
import { COURSE_STREAMS as q } from "../../milestone/constants.js";
|
3
|
+
import { useMilestoneBulkPost as J } from "../../milestone/create/api/milestone-bulk.js";
|
4
|
+
import { usePostStudentPreferences as Q } from "../api/course-stream.js";
|
5
|
+
import { usePatchStudentInformation as X } from "../api/student-information.js";
|
6
|
+
import { usePatchTrialHome as Y } from "../api/trial-home.js";
|
7
|
+
import { useTrialSessionContext as $ } from "../context/use-trial-session-context.js";
|
8
|
+
import { getFormattedPreferences as ee, getFormattedStudentPersonalizedPreference as te } from "../helper.js";
|
9
|
+
import { DEFAULT_BUTTON_STATE as S, TrialPageId as e } from "../trial-session-constants.js";
|
10
10
|
import z from "../../../node_modules/uuid/dist/esm-browser/v4.js";
|
11
|
-
const
|
11
|
+
const ue = () => {
|
12
12
|
const {
|
13
13
|
updateSlideConfig: s,
|
14
14
|
slideConfig: B,
|
15
15
|
formData: H,
|
16
16
|
updateButtonState: a,
|
17
|
-
teacherId:
|
17
|
+
teacherId: l,
|
18
18
|
studentId: n,
|
19
19
|
milestoneConfig: P,
|
20
20
|
onTrialInformationUpdate: h,
|
21
21
|
trialHomeData: x,
|
22
22
|
worksheetNavigationPanel: I
|
23
|
-
} =
|
24
|
-
name:
|
23
|
+
} = $(), { nextPage: w, id: r } = B || {}, { demo_info: Z } = x, { stream: N, region_data: K } = Z, { opportunity_country: C = "US" } = K || {}, { pageId: i } = w || {}, {
|
24
|
+
name: f,
|
25
25
|
grade: p,
|
26
|
-
goals:
|
27
|
-
curriculum:
|
28
|
-
studentTimezone:
|
29
|
-
preferences:
|
30
|
-
personalizedLevel:
|
31
|
-
personalizedFocus:
|
32
|
-
personalizedBehaviors:
|
33
|
-
} = H || {}, c =
|
26
|
+
goals: g,
|
27
|
+
curriculum: _,
|
28
|
+
studentTimezone: T,
|
29
|
+
preferences: A = [],
|
30
|
+
personalizedLevel: R = [],
|
31
|
+
personalizedFocus: O = [],
|
32
|
+
personalizedBehaviors: b = []
|
33
|
+
} = H || {}, c = d(() => {
|
34
34
|
a("both", {
|
35
35
|
left: { isDisabled: !0, isLoading: !1 },
|
36
36
|
right: { isDisabled: !0, isLoading: !0 }
|
37
37
|
});
|
38
|
-
}, [a]),
|
38
|
+
}, [a]), E = (o) => {
|
39
39
|
if (!o) {
|
40
40
|
const t = {};
|
41
41
|
(i === e.CIRCLE_GAME || i === e.CIRCLE_PUZZLE || i === e.CIRCLE_SKILL) && (t.matchmakingId = z(), t.showCircleGameScreen = !0), s({ id: i, ...t });
|
42
42
|
}
|
43
|
-
a("both",
|
44
|
-
}, { patch:
|
45
|
-
onComplete:
|
46
|
-
}), { post:
|
47
|
-
onComplete:
|
48
|
-
}), { post:
|
49
|
-
onComplete:
|
50
|
-
}),
|
51
|
-
const [o, t] = (
|
43
|
+
a("both", S), (r === e.STUDENT_INFORMATION || r === e.SCHOOL_GOALS) && (h == null || h());
|
44
|
+
}, { patch: v } = Y({ onComplete: E }), { patch: k } = X({
|
45
|
+
onComplete: E
|
46
|
+
}), { post: D } = J({
|
47
|
+
onComplete: E
|
48
|
+
}), { post: G } = Q({
|
49
|
+
onComplete: E
|
50
|
+
}), M = d(() => {
|
51
|
+
const [o, t] = (f == null ? void 0 : f.split(" ")) || [], m = {
|
52
52
|
first_name: o,
|
53
53
|
last_name: t,
|
54
54
|
grade: p,
|
55
|
-
board:
|
55
|
+
board: _,
|
56
56
|
demo_type: "TRIAL_V3",
|
57
|
-
teacher_id:
|
57
|
+
teacher_id: l,
|
58
|
+
country_alpha_2: C
|
58
59
|
};
|
59
|
-
c(),
|
60
|
-
}, [
|
61
|
-
|
60
|
+
c(), k(n, m);
|
61
|
+
}, [
|
62
|
+
f,
|
63
|
+
p,
|
64
|
+
_,
|
65
|
+
l,
|
66
|
+
C,
|
67
|
+
c,
|
68
|
+
k,
|
69
|
+
n
|
70
|
+
]), U = d(() => {
|
71
|
+
const o = ee(A, T);
|
62
72
|
if (o.length > 0) {
|
63
73
|
const t = {
|
64
74
|
trial_details: {
|
65
75
|
selected_regular_slots: o
|
66
76
|
}
|
67
77
|
};
|
68
|
-
c(),
|
78
|
+
c(), v("trial-v3-patch", {
|
69
79
|
action: "UPDATE_DEMO",
|
70
80
|
action_data: t,
|
71
|
-
teacher_id:
|
81
|
+
teacher_id: l,
|
72
82
|
student_id: n
|
73
83
|
});
|
74
84
|
} else
|
75
|
-
s({ id: i }), a("both",
|
85
|
+
s({ id: i }), a("both", S);
|
76
86
|
}, [
|
87
|
+
A,
|
77
88
|
T,
|
78
|
-
g,
|
79
89
|
c,
|
80
|
-
|
81
|
-
|
90
|
+
v,
|
91
|
+
l,
|
82
92
|
n,
|
83
93
|
s,
|
84
94
|
i,
|
85
95
|
a
|
86
|
-
]),
|
96
|
+
]), y = d(() => {
|
87
97
|
const o = {
|
88
98
|
course_stream: N,
|
89
99
|
grade: p,
|
90
|
-
teacher_id:
|
91
|
-
board:
|
92
|
-
goals:
|
100
|
+
teacher_id: l,
|
101
|
+
board: _,
|
102
|
+
goals: g
|
93
103
|
};
|
94
|
-
c(),
|
104
|
+
c(), D(o, {
|
95
105
|
studentId: n
|
96
106
|
});
|
97
107
|
}, [
|
98
|
-
|
108
|
+
_,
|
99
109
|
c,
|
100
|
-
|
110
|
+
g,
|
101
111
|
p,
|
102
|
-
|
112
|
+
D,
|
103
113
|
N,
|
104
114
|
n,
|
105
|
-
|
106
|
-
]), F =
|
107
|
-
const t = { preferences:
|
108
|
-
...A,
|
115
|
+
l
|
116
|
+
]), F = d(() => {
|
117
|
+
const t = { preferences: te(P, [
|
109
118
|
...R,
|
110
|
-
...O
|
111
|
-
|
112
|
-
|
119
|
+
...O,
|
120
|
+
...b
|
121
|
+
]) }, m = { stream: q.MATH, studentId: n };
|
122
|
+
c(), G(t, m);
|
113
123
|
}, [
|
114
124
|
c,
|
115
125
|
P,
|
126
|
+
b,
|
116
127
|
O,
|
117
128
|
R,
|
118
|
-
|
119
|
-
D,
|
129
|
+
G,
|
120
130
|
n
|
121
|
-
]), L =
|
131
|
+
]), L = d(
|
122
132
|
(o, t) => {
|
123
133
|
if (!s) return;
|
124
|
-
const m = r === e.STUDENT_PROFILE,
|
125
|
-
if ((t === e.CIRCLE_GAME || t === e.CIRCLE_PUZZLE || t === e.CIRCLE_SKILL) && (
|
134
|
+
const m = r === e.STUDENT_PROFILE, V = r === e.LEARNING_PLAN, u = {};
|
135
|
+
if ((t === e.CIRCLE_GAME || t === e.CIRCLE_PUZZLE || t === e.CIRCLE_SKILL) && (u.matchmakingId = z(), u.showCircleGameScreen = !0), o === "prev" && (s({
|
126
136
|
id: t,
|
127
137
|
...m && { studentProfile: void 0 },
|
128
|
-
...
|
138
|
+
...V && {
|
129
139
|
chapterId: void 0
|
130
140
|
},
|
131
|
-
...
|
132
|
-
}), a("both",
|
141
|
+
...u
|
142
|
+
}), a("both", S)), o === "next")
|
133
143
|
switch (r) {
|
134
144
|
case e.STUDENT_INFORMATION:
|
135
145
|
case e.SCHOOL_GOALS:
|
136
|
-
|
146
|
+
M();
|
137
147
|
break;
|
138
148
|
case e.LEARNING_WORKSHEET:
|
139
|
-
|
149
|
+
y();
|
140
150
|
break;
|
141
151
|
case e.CLASS_PREFERENCE:
|
142
|
-
|
152
|
+
U();
|
143
153
|
break;
|
144
154
|
case e.LEARNING_LEVEL:
|
145
155
|
case e.STUDENT_PERSONALIZATION:
|
146
156
|
F();
|
147
157
|
break;
|
148
158
|
case e.LEARNING_PLAN:
|
149
|
-
s({ id: t, chapterId: void 0, ...
|
159
|
+
s({ id: t, chapterId: void 0, ...u });
|
150
160
|
break;
|
151
161
|
default:
|
152
|
-
s({ id: t, ...
|
162
|
+
s({ id: t, ...u }), a("both", S);
|
153
163
|
}
|
154
164
|
},
|
155
165
|
[
|
156
166
|
s,
|
157
167
|
r,
|
158
168
|
a,
|
159
|
-
G,
|
160
|
-
U,
|
161
169
|
M,
|
170
|
+
y,
|
171
|
+
U,
|
162
172
|
F
|
163
173
|
]
|
164
|
-
),
|
174
|
+
), W = d(() => {
|
165
175
|
!I && r === e.LEARNING_WORKSHEET && L("next", i);
|
166
176
|
}, [r, L, i, I]);
|
167
|
-
return
|
168
|
-
|
177
|
+
return j(() => {
|
178
|
+
W();
|
169
179
|
}, [I]), { handleNavigation: L };
|
170
180
|
};
|
171
181
|
export {
|
172
|
-
|
182
|
+
ue as useTrialSessionNavigation
|
173
183
|
};
|
174
184
|
//# sourceMappingURL=use-trial-session-navigation.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-trial-session-navigation.js","sources":["../../../../src/features/trial-session/hooks/use-trial-session-navigation.ts"],"sourcesContent":["import type { ITrialSessionFormFields } from '../trial-session-types';\n\nimport { useCallback, useEffect } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport { COURSE_STREAMS } from '../../milestone/constants';\nimport { useMilestoneBulkPost } from '../../milestone/create/api/milestone-bulk';\nimport { usePostStudentPreferences } from '../api/course-stream';\nimport { usePatchStudentInformation } from '../api/student-information';\nimport { usePatchTrialHome } from '../api/trial-home';\nimport { useTrialSessionContext } from '../context/use-trial-session-context';\nimport { getFormattedPreferences, getFormattedStudentPersonalizedPreference } from '../helper';\nimport { DEFAULT_BUTTON_STATE, TrialPageId } from '../trial-session-constants';\n\nconst useTrialSessionNavigation = () => {\n const {\n updateSlideConfig,\n slideConfig,\n formData,\n updateButtonState,\n teacherId,\n studentId,\n milestoneConfig,\n onTrialInformationUpdate,\n trialHomeData,\n worksheetNavigationPanel,\n } = useTrialSessionContext();\n const { nextPage, id: currentPageId } = slideConfig || {};\n const { demo_info: demoInfo } = trialHomeData;\n const { stream } = demoInfo;\n const { pageId: nextPageId } = nextPage || {};\n const {\n name,\n grade,\n goals,\n curriculum,\n studentTimezone,\n preferences = [],\n personalizedLevel = [],\n personalizedFocus = [],\n personalizedBehaviors = [],\n } = formData || {};\n\n const disableNavButtons = useCallback(() => {\n updateButtonState('both', {\n left: { isDisabled: true, isLoading: false },\n right: { isDisabled: true, isLoading: true },\n });\n }, [updateButtonState]);\n\n const onAcknowledge = (errorMessage: string | null) => {\n if (!errorMessage) {\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n nextPageId === TrialPageId.CIRCLE_GAME ||\n nextPageId === TrialPageId.CIRCLE_PUZZLE ||\n nextPageId === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n updateSlideConfig({ id: nextPageId, ...overrides });\n }\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n\n if (\n currentPageId === TrialPageId.STUDENT_INFORMATION ||\n currentPageId === TrialPageId.SCHOOL_GOALS\n ) {\n //TODO: remove TrialPageId.STUDENT_INFORMATION\n onTrialInformationUpdate?.();\n }\n };\n\n // API specifications\n const { patch: patchTrialSession } = usePatchTrialHome({ onComplete: onAcknowledge });\n const { patch: patchStudentInformation } = usePatchStudentInformation({\n onComplete: onAcknowledge,\n });\n const { post: postMilestoneBulk } = useMilestoneBulkPost({\n onComplete: onAcknowledge,\n });\n const { post: postStudentPreferences } = usePostStudentPreferences({\n onComplete: onAcknowledge,\n });\n\n // Function to call API and updates states\n const handleStudentInformation = useCallback(() => {\n const [firstName, lastName] = name?.split(' ') || [];\n const payload = {\n first_name: firstName,\n last_name: lastName,\n grade,\n board: curriculum,\n demo_type: 'TRIAL_V3',\n teacher_id: teacherId,\n };\n\n disableNavButtons();\n patchStudentInformation(studentId, payload);\n }, [curriculum, grade, name, patchStudentInformation, studentId, teacherId, disableNavButtons]);\n\n const handleClassPreferences = useCallback(() => {\n const selectedRegularSlots = getFormattedPreferences(preferences, studentTimezone);\n\n if (selectedRegularSlots.length > 0) {\n const actionData = {\n trial_details: {\n selected_regular_slots: selectedRegularSlots,\n },\n };\n\n disableNavButtons();\n patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: actionData,\n teacher_id: teacherId,\n student_id: studentId,\n });\n } else {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }, [\n preferences,\n studentTimezone,\n disableNavButtons,\n patchTrialSession,\n teacherId,\n studentId,\n updateSlideConfig,\n nextPageId,\n updateButtonState,\n ]);\n\n const handleMileStoneBulkPost = useCallback(() => {\n const payload = {\n course_stream: stream,\n grade,\n teacher_id: teacherId,\n board: curriculum,\n goals,\n };\n\n disableNavButtons();\n postMilestoneBulk(payload, {\n studentId,\n });\n }, [\n curriculum,\n disableNavButtons,\n goals,\n grade,\n postMilestoneBulk,\n stream,\n studentId,\n teacherId,\n ]);\n\n const handleStudentPreferencesPatch = useCallback(() => {\n const personalizedPreferences = getFormattedStudentPersonalizedPreference(milestoneConfig, [\n ...personalizedLevel,\n ...personalizedFocus,\n ...personalizedBehaviors,\n ]);\n\n const payload = { preferences: personalizedPreferences };\n const meta = { stream: COURSE_STREAMS.MATH, studentId };\n\n disableNavButtons();\n postStudentPreferences(payload, meta);\n }, [\n disableNavButtons,\n milestoneConfig,\n personalizedBehaviors,\n personalizedFocus,\n personalizedLevel,\n postStudentPreferences,\n studentId,\n ]);\n\n // Navigation logic\n const handleNavigation = useCallback(\n (dir: string, id?: string) => {\n if (!updateSlideConfig) return;\n\n const isStudentProfilePage = currentPageId === TrialPageId.STUDENT_PROFILE;\n const isLearningPlanSlide = currentPageId === TrialPageId.LEARNING_PLAN;\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n id === TrialPageId.CIRCLE_GAME ||\n id === TrialPageId.CIRCLE_PUZZLE ||\n id === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n if (dir === 'prev') {\n updateSlideConfig({\n id,\n ...(isStudentProfilePage && { studentProfile: undefined }),\n ...(isLearningPlanSlide && {\n chapterId: undefined,\n }),\n ...overrides,\n });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n\n if (dir === 'next') {\n switch (currentPageId) {\n //TODO: remove STUDENT_INFORMATION\n case TrialPageId.STUDENT_INFORMATION:\n case TrialPageId.SCHOOL_GOALS:\n handleStudentInformation();\n break;\n case TrialPageId.LEARNING_WORKSHEET:\n handleMileStoneBulkPost();\n break;\n case TrialPageId.CLASS_PREFERENCE:\n handleClassPreferences();\n break;\n case TrialPageId.LEARNING_LEVEL:\n case TrialPageId.STUDENT_PERSONALIZATION:\n handleStudentPreferencesPatch();\n break;\n case TrialPageId.LEARNING_PLAN:\n updateSlideConfig({ id, chapterId: undefined, ...overrides });\n break;\n default: {\n updateSlideConfig({ id, ...overrides });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }\n }\n },\n [\n updateSlideConfig,\n currentPageId,\n updateButtonState,\n handleStudentInformation,\n handleMileStoneBulkPost,\n handleClassPreferences,\n handleStudentPreferencesPatch,\n ],\n );\n\n const sessionWorksheetNavigation = useCallback(() => {\n if (!worksheetNavigationPanel && currentPageId === TrialPageId.LEARNING_WORKSHEET) {\n handleNavigation('next', nextPageId);\n }\n }, [currentPageId, handleNavigation, nextPageId, worksheetNavigationPanel]);\n\n useEffect(() => {\n sessionWorksheetNavigation();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [worksheetNavigationPanel]);\n\n return { handleNavigation };\n};\n\nexport { useTrialSessionNavigation };\n"],"names":["useTrialSessionNavigation","updateSlideConfig","slideConfig","formData","updateButtonState","teacherId","studentId","milestoneConfig","onTrialInformationUpdate","trialHomeData","worksheetNavigationPanel","useTrialSessionContext","nextPage","currentPageId","demoInfo","stream","nextPageId","name","grade","goals","curriculum","studentTimezone","preferences","personalizedLevel","personalizedFocus","personalizedBehaviors","disableNavButtons","useCallback","onAcknowledge","errorMessage","overrides","TrialPageId","uuidv4","DEFAULT_BUTTON_STATE","patchTrialSession","usePatchTrialHome","patchStudentInformation","usePatchStudentInformation","postMilestoneBulk","useMilestoneBulkPost","postStudentPreferences","usePostStudentPreferences","handleStudentInformation","firstName","lastName","payload","handleClassPreferences","selectedRegularSlots","getFormattedPreferences","actionData","handleMileStoneBulkPost","handleStudentPreferencesPatch","getFormattedStudentPersonalizedPreference","meta","COURSE_STREAMS","handleNavigation","dir","id","isStudentProfilePage","isLearningPlanSlide","sessionWorksheetNavigation","useEffect"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"use-trial-session-navigation.js","sources":["../../../../src/features/trial-session/hooks/use-trial-session-navigation.ts"],"sourcesContent":["import type { ITrialSessionFormFields } from '../trial-session-types';\n\nimport { useCallback, useEffect } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport { COURSE_STREAMS } from '../../milestone/constants';\nimport { useMilestoneBulkPost } from '../../milestone/create/api/milestone-bulk';\nimport { usePostStudentPreferences } from '../api/course-stream';\nimport { usePatchStudentInformation } from '../api/student-information';\nimport { usePatchTrialHome } from '../api/trial-home';\nimport { useTrialSessionContext } from '../context/use-trial-session-context';\nimport { getFormattedPreferences, getFormattedStudentPersonalizedPreference } from '../helper';\nimport { DEFAULT_BUTTON_STATE, TrialPageId } from '../trial-session-constants';\n\nconst useTrialSessionNavigation = () => {\n const {\n updateSlideConfig,\n slideConfig,\n formData,\n updateButtonState,\n teacherId,\n studentId,\n milestoneConfig,\n onTrialInformationUpdate,\n trialHomeData,\n worksheetNavigationPanel,\n } = useTrialSessionContext();\n const { nextPage, id: currentPageId } = slideConfig || {};\n const { demo_info: demoInfo } = trialHomeData;\n const { stream, region_data: regionData } = demoInfo;\n const { opportunity_country: countryCode = 'US' } = regionData || {};\n const { pageId: nextPageId } = nextPage || {};\n const {\n name,\n grade,\n goals,\n curriculum,\n studentTimezone,\n preferences = [],\n personalizedLevel = [],\n personalizedFocus = [],\n personalizedBehaviors = [],\n } = formData || {};\n\n const disableNavButtons = useCallback(() => {\n updateButtonState('both', {\n left: { isDisabled: true, isLoading: false },\n right: { isDisabled: true, isLoading: true },\n });\n }, [updateButtonState]);\n\n const onAcknowledge = (errorMessage: string | null) => {\n if (!errorMessage) {\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n nextPageId === TrialPageId.CIRCLE_GAME ||\n nextPageId === TrialPageId.CIRCLE_PUZZLE ||\n nextPageId === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n updateSlideConfig({ id: nextPageId, ...overrides });\n }\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n\n if (\n currentPageId === TrialPageId.STUDENT_INFORMATION ||\n currentPageId === TrialPageId.SCHOOL_GOALS\n ) {\n //TODO: remove TrialPageId.STUDENT_INFORMATION\n onTrialInformationUpdate?.();\n }\n };\n\n // API specifications\n const { patch: patchTrialSession } = usePatchTrialHome({ onComplete: onAcknowledge });\n const { patch: patchStudentInformation } = usePatchStudentInformation({\n onComplete: onAcknowledge,\n });\n const { post: postMilestoneBulk } = useMilestoneBulkPost({\n onComplete: onAcknowledge,\n });\n const { post: postStudentPreferences } = usePostStudentPreferences({\n onComplete: onAcknowledge,\n });\n\n // Function to call API and updates states\n const handleStudentInformation = useCallback(() => {\n const [firstName, lastName] = name?.split(' ') || [];\n const payload = {\n first_name: firstName,\n last_name: lastName,\n grade,\n board: curriculum,\n demo_type: 'TRIAL_V3',\n teacher_id: teacherId,\n country_alpha_2: countryCode,\n };\n\n disableNavButtons();\n patchStudentInformation(studentId, payload);\n }, [\n name,\n grade,\n curriculum,\n teacherId,\n countryCode,\n disableNavButtons,\n patchStudentInformation,\n studentId,\n ]);\n\n const handleClassPreferences = useCallback(() => {\n const selectedRegularSlots = getFormattedPreferences(preferences, studentTimezone);\n\n if (selectedRegularSlots.length > 0) {\n const actionData = {\n trial_details: {\n selected_regular_slots: selectedRegularSlots,\n },\n };\n\n disableNavButtons();\n patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: actionData,\n teacher_id: teacherId,\n student_id: studentId,\n });\n } else {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }, [\n preferences,\n studentTimezone,\n disableNavButtons,\n patchTrialSession,\n teacherId,\n studentId,\n updateSlideConfig,\n nextPageId,\n updateButtonState,\n ]);\n\n const handleMileStoneBulkPost = useCallback(() => {\n const payload = {\n course_stream: stream,\n grade,\n teacher_id: teacherId,\n board: curriculum,\n goals,\n };\n\n disableNavButtons();\n postMilestoneBulk(payload, {\n studentId,\n });\n }, [\n curriculum,\n disableNavButtons,\n goals,\n grade,\n postMilestoneBulk,\n stream,\n studentId,\n teacherId,\n ]);\n\n const handleStudentPreferencesPatch = useCallback(() => {\n const personalizedPreferences = getFormattedStudentPersonalizedPreference(milestoneConfig, [\n ...personalizedLevel,\n ...personalizedFocus,\n ...personalizedBehaviors,\n ]);\n\n const payload = { preferences: personalizedPreferences };\n const meta = { stream: COURSE_STREAMS.MATH, studentId };\n\n disableNavButtons();\n postStudentPreferences(payload, meta);\n }, [\n disableNavButtons,\n milestoneConfig,\n personalizedBehaviors,\n personalizedFocus,\n personalizedLevel,\n postStudentPreferences,\n studentId,\n ]);\n\n // Navigation logic\n const handleNavigation = useCallback(\n (dir: string, id?: string) => {\n if (!updateSlideConfig) return;\n\n const isStudentProfilePage = currentPageId === TrialPageId.STUDENT_PROFILE;\n const isLearningPlanSlide = currentPageId === TrialPageId.LEARNING_PLAN;\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n id === TrialPageId.CIRCLE_GAME ||\n id === TrialPageId.CIRCLE_PUZZLE ||\n id === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n if (dir === 'prev') {\n updateSlideConfig({\n id,\n ...(isStudentProfilePage && { studentProfile: undefined }),\n ...(isLearningPlanSlide && {\n chapterId: undefined,\n }),\n ...overrides,\n });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n\n if (dir === 'next') {\n switch (currentPageId) {\n //TODO: remove STUDENT_INFORMATION\n case TrialPageId.STUDENT_INFORMATION:\n case TrialPageId.SCHOOL_GOALS:\n handleStudentInformation();\n break;\n case TrialPageId.LEARNING_WORKSHEET:\n handleMileStoneBulkPost();\n break;\n case TrialPageId.CLASS_PREFERENCE:\n handleClassPreferences();\n break;\n case TrialPageId.LEARNING_LEVEL:\n case TrialPageId.STUDENT_PERSONALIZATION:\n handleStudentPreferencesPatch();\n break;\n case TrialPageId.LEARNING_PLAN:\n updateSlideConfig({ id, chapterId: undefined, ...overrides });\n break;\n default: {\n updateSlideConfig({ id, ...overrides });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }\n }\n },\n [\n updateSlideConfig,\n currentPageId,\n updateButtonState,\n handleStudentInformation,\n handleMileStoneBulkPost,\n handleClassPreferences,\n handleStudentPreferencesPatch,\n ],\n );\n\n const sessionWorksheetNavigation = useCallback(() => {\n if (!worksheetNavigationPanel && currentPageId === TrialPageId.LEARNING_WORKSHEET) {\n handleNavigation('next', nextPageId);\n }\n }, [currentPageId, handleNavigation, nextPageId, worksheetNavigationPanel]);\n\n useEffect(() => {\n sessionWorksheetNavigation();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [worksheetNavigationPanel]);\n\n return { handleNavigation };\n};\n\nexport { useTrialSessionNavigation };\n"],"names":["useTrialSessionNavigation","updateSlideConfig","slideConfig","formData","updateButtonState","teacherId","studentId","milestoneConfig","onTrialInformationUpdate","trialHomeData","worksheetNavigationPanel","useTrialSessionContext","nextPage","currentPageId","demoInfo","stream","regionData","countryCode","nextPageId","name","grade","goals","curriculum","studentTimezone","preferences","personalizedLevel","personalizedFocus","personalizedBehaviors","disableNavButtons","useCallback","onAcknowledge","errorMessage","overrides","TrialPageId","uuidv4","DEFAULT_BUTTON_STATE","patchTrialSession","usePatchTrialHome","patchStudentInformation","usePatchStudentInformation","postMilestoneBulk","useMilestoneBulkPost","postStudentPreferences","usePostStudentPreferences","handleStudentInformation","firstName","lastName","payload","handleClassPreferences","selectedRegularSlots","getFormattedPreferences","actionData","handleMileStoneBulkPost","handleStudentPreferencesPatch","getFormattedStudentPersonalizedPreference","meta","COURSE_STREAMS","handleNavigation","dir","id","isStudentProfilePage","isLearningPlanSlide","sessionWorksheetNavigation","useEffect"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"z-index.js","sources":["../../../../src/features/ui/constants/z-index.ts"],"sourcesContent":["const ZINDEX = {\n CHAPTER_CROWN_ICON: 4,\n CHAPTER_PLUS_ICON: 2,\n CHAPTER_PROGRESS_SVG: 1,\n LPAR_SHEET_ITEM_BOTTOM_DASH_BOX: 1,\n LPAR_SHEET_ITEM_TOP_VERTICAL_ICON: 2,\n MODAL: 20,\n SAT_SUMMARY_SCORE: 25, //* SAT_SUMMARY_SCORE > MODAL\n CANVAS_SCRIBBLING: 26, //* CANVAS_SCRIBBLING > Learnosity\n QUESTION_TIPS: -1,\n DESMOS_CALCULATOR: 2,\n GOAL_CHAPTER_SHEETS_MENU: 4,\n} as const;\n\nexport { ZINDEX };\n"],"names":["ZINDEX"],"mappings":"AAAA,MAAMA,IAAS;AAAA,EACb,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,OAAO;AAAA,EACP,mBAAmB;AAAA;AAAA,EACnB,mBAAmB;AAAA;AAAA,EACnB,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,0BAA0B;AAC5B;"}
|
1
|
+
{"version":3,"file":"z-index.js","sources":["../../../../src/features/ui/constants/z-index.ts"],"sourcesContent":["const ZINDEX = {\n CHAPTER_CROWN_ICON: 4,\n CHAPTER_PLUS_ICON: 2,\n CHAPTER_PROGRESS_SVG: 1,\n LPAR_SHEET_ITEM_BOTTOM_DASH_BOX: 1,\n LPAR_SHEET_ITEM_TOP_VERTICAL_ICON: 2,\n MODAL: 20,\n SAT_SUMMARY_SCORE: 25, //* SAT_SUMMARY_SCORE > MODAL\n CANVAS_SCRIBBLING: 26, //* CANVAS_SCRIBBLING > Learnosity\n TILE_CONTAINER: 30, //whiteboard\n QUESTION_TIPS: -1,\n DESMOS_CALCULATOR: 2,\n GOAL_CHAPTER_SHEETS_MENU: 4,\n} as const;\n\nexport { ZINDEX };\n"],"names":["ZINDEX"],"mappings":"AAAA,MAAMA,IAAS;AAAA,EACb,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,OAAO;AAAA,EACP,mBAAmB;AAAA;AAAA,EACnB,mBAAmB;AAAA;AAAA,EACnB,gBAAgB;AAAA;AAAA,EAChB,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,0BAA0B;AAC5B;"}
|
package/dist/index.d.ts
CHANGED
@@ -5164,6 +5164,7 @@ declare const ZINDEX: {
|
|
5164
5164
|
readonly MODAL: 20;
|
5165
5165
|
readonly SAT_SUMMARY_SCORE: 25;
|
5166
5166
|
readonly CANVAS_SCRIBBLING: 26;
|
5167
|
+
readonly TILE_CONTAINER: 30;
|
5167
5168
|
readonly QUESTION_TIPS: -1;
|
5168
5169
|
readonly DESMOS_CALCULATOR: 2;
|
5169
5170
|
readonly GOAL_CHAPTER_SHEETS_MENU: 4;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@cuemath/leap",
|
3
|
-
"version": "2.8.
|
3
|
+
"version": "2.8.53-aa0",
|
4
4
|
"type": "module",
|
5
5
|
"files": [
|
6
6
|
"dist"
|
@@ -93,5 +93,6 @@
|
|
93
93
|
"vite-plugin-dts": "3.6.4",
|
94
94
|
"vite-plugin-svgr": "3.2.0",
|
95
95
|
"vite-tsconfig-paths": "^4.2.2"
|
96
|
-
}
|
96
|
+
},
|
97
|
+
"packageManager": "yarn@4.4.1"
|
97
98
|
}
|