@cuemath/leap 3.5.67-link2 → 3.5.67-link4
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/milestone/create/api/milestone-config.js.map +1 -1
- package/dist/features/parent-dashboard/hooks/use-student-profile-summary-data.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
- package/dist/features/trial-session/comps/session-overview/session-overview-utils.js.map +1 -1
- package/dist/features/trial-session/comps/student-info/student-info.js +15 -15
- package/dist/features/trial-session/comps/student-info/student-info.js.map +1 -1
- package/dist/features/trial-session/comps/topic-selection/topic-item.js +39 -0
- package/dist/features/trial-session/comps/topic-selection/topic-item.js.map +1 -0
- package/dist/features/trial-session/comps/topic-selection/topic-selection.js +34 -53
- package/dist/features/trial-session/comps/topic-selection/topic-selection.js.map +1 -1
- package/dist/features/trial-session/context/trial-session-context.js +5 -5
- package/dist/features/trial-session/context/trial-session-context.js.map +1 -1
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js +148 -152
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
- package/dist/features/trial-session/trial-session-constants.js +26 -17
- package/dist/features/trial-session/trial-session-constants.js.map +1 -1
- package/dist/features/trial-session/trial-session-types.js.map +1 -1
- package/dist/index.d.ts +8 -3
- package/dist/index.js +284 -282
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,262 +1,258 @@
|
|
|
1
|
-
import { useCallback as
|
|
1
|
+
import { useCallback as r, useEffect as re } from "react";
|
|
2
2
|
import { COURSE_STREAMS as ce } from "../../milestone/constants.js";
|
|
3
3
|
import { useMilestoneBulkPost as le } from "../../milestone/create/api/milestone-bulk.js";
|
|
4
4
|
import { usePostStudentPreferences as de } from "../api/course-stream.js";
|
|
5
5
|
import { usePatchStudentInformation as me } from "../api/student-information.js";
|
|
6
6
|
import { usePostTeacherAvailability as fe } from "../api/teacher-availability.js";
|
|
7
7
|
import { usePatchTrialHome as ue } from "../api/trial-home.js";
|
|
8
|
-
import { useTrialSessionContext as
|
|
9
|
-
import { getFormattedPreferences as
|
|
10
|
-
import { TrialPageId as t, DEFAULT_BUTTON_STATE as
|
|
11
|
-
import
|
|
12
|
-
const
|
|
8
|
+
import { useTrialSessionContext as pe } from "../context/use-trial-session-context.js";
|
|
9
|
+
import { getFormattedPreferences as X, getWeekdayAndStartTimeFromPreference as _e, getFormattedStudentPersonalizedPreference as Ee } from "../helper.js";
|
|
10
|
+
import { TrialPageId as t, DEFAULT_BUTTON_STATE as p, CIRCLE_GAME_SLIDES as he } from "../trial-session-constants.js";
|
|
11
|
+
import Y from "../../../node_modules/uuid/dist/esm-browser/v4.js";
|
|
12
|
+
const Re = () => {
|
|
13
13
|
const {
|
|
14
14
|
updateSlideConfig: a,
|
|
15
|
-
slideConfig:
|
|
16
|
-
demoType:
|
|
17
|
-
formData:
|
|
15
|
+
slideConfig: $,
|
|
16
|
+
demoType: m,
|
|
17
|
+
formData: ee,
|
|
18
18
|
updateButtonState: s,
|
|
19
|
-
teacherId:
|
|
20
|
-
studentId:
|
|
19
|
+
teacherId: c,
|
|
20
|
+
studentId: l,
|
|
21
21
|
milestoneConfig: D,
|
|
22
|
-
handleInfoMessage:
|
|
23
|
-
onTrialInformationUpdate:
|
|
22
|
+
handleInfoMessage: L,
|
|
23
|
+
onTrialInformationUpdate: T,
|
|
24
24
|
trialHomeData: v,
|
|
25
|
-
worksheetNavigationPanel:
|
|
26
|
-
} =
|
|
27
|
-
name:
|
|
28
|
-
grade:
|
|
29
|
-
goals:
|
|
30
|
-
curriculum:
|
|
25
|
+
worksheetNavigationPanel: C
|
|
26
|
+
} = pe(), { nextPage: te, id: f } = $ || {}, { demo_info: oe } = v, { stream: y, region_data: se } = oe, { opportunity_country: G = "US" } = se || {}, { pageId: i } = te || {}, {
|
|
27
|
+
name: h,
|
|
28
|
+
grade: _,
|
|
29
|
+
goals: x,
|
|
30
|
+
curriculum: I,
|
|
31
31
|
selectedTopics: z = [],
|
|
32
|
-
studentTimezone:
|
|
33
|
-
preferences:
|
|
32
|
+
studentTimezone: S,
|
|
33
|
+
preferences: g = [],
|
|
34
34
|
personalizedLevel: M = [],
|
|
35
|
-
personalizedFocus:
|
|
36
|
-
personalizedBehaviors:
|
|
37
|
-
personalizedObjectives:
|
|
38
|
-
personalizedPosition:
|
|
39
|
-
} =
|
|
35
|
+
personalizedFocus: U = [],
|
|
36
|
+
personalizedBehaviors: V = [],
|
|
37
|
+
personalizedObjectives: B = [],
|
|
38
|
+
personalizedPosition: F = []
|
|
39
|
+
} = ee || {}, R = i === t.LEARNING_PLAN && m === "TRIAL_V3_3", d = r(() => {
|
|
40
40
|
s("both", {
|
|
41
41
|
left: { isDisabled: !0, isLoading: !1 },
|
|
42
42
|
right: { isDisabled: !0, isLoading: !0 }
|
|
43
43
|
});
|
|
44
|
-
}, [s]),
|
|
44
|
+
}, [s]), P = (o) => {
|
|
45
45
|
if (!o) {
|
|
46
46
|
const e = {};
|
|
47
|
-
(
|
|
47
|
+
(i === t.CIRCLE_GAME || i === t.CIRCLE_PUZZLE || i === t.CIRCLE_SKILL) && (e.matchmakingId = Y(), e.showCircleGameScreen = !0), a({ id: i, ...e });
|
|
48
48
|
}
|
|
49
|
-
s("both",
|
|
50
|
-
}, { patch:
|
|
51
|
-
onComplete:
|
|
52
|
-
triggerOnComplete: !
|
|
53
|
-
}), { post:
|
|
54
|
-
onComplete:
|
|
55
|
-
}), { post:
|
|
56
|
-
onComplete:
|
|
57
|
-
}),
|
|
49
|
+
s("both", p), f === t.LEARNING_LEVEL && (T == null || T());
|
|
50
|
+
}, { patch: b } = ue({ onComplete: P }), { patch: w } = me({
|
|
51
|
+
onComplete: P,
|
|
52
|
+
triggerOnComplete: !R
|
|
53
|
+
}), { post: H } = le({
|
|
54
|
+
onComplete: P
|
|
55
|
+
}), { post: W } = de({
|
|
56
|
+
onComplete: P
|
|
57
|
+
}), ae = r(
|
|
58
58
|
(o, e) => {
|
|
59
|
-
if ((e ?? []).some((
|
|
60
|
-
const
|
|
59
|
+
if ((e ?? []).some((n) => !n.is_available)) {
|
|
60
|
+
const ie = (e ?? []).filter((O) => !O.is_available).map((O) => O.reason).join(`
|
|
61
61
|
`);
|
|
62
|
-
|
|
62
|
+
L == null || L({ message: ie, position: "bottom" }), s("both", p);
|
|
63
63
|
return;
|
|
64
64
|
}
|
|
65
|
-
const N =
|
|
66
|
-
N.length > 0 ?
|
|
65
|
+
const N = X(g, S);
|
|
66
|
+
N.length > 0 ? b("trial-v3-patch", {
|
|
67
67
|
action: "UPDATE_DEMO",
|
|
68
68
|
action_data: {
|
|
69
69
|
trial_details: {
|
|
70
70
|
selected_regular_slots: N
|
|
71
71
|
}
|
|
72
72
|
},
|
|
73
|
-
teacher_id:
|
|
74
|
-
student_id:
|
|
75
|
-
}) : s("both",
|
|
73
|
+
teacher_id: c,
|
|
74
|
+
student_id: l
|
|
75
|
+
}) : s("both", p);
|
|
76
76
|
},
|
|
77
77
|
[
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
P,
|
|
81
|
-
c,
|
|
78
|
+
L,
|
|
79
|
+
b,
|
|
82
80
|
g,
|
|
83
|
-
|
|
81
|
+
l,
|
|
82
|
+
S,
|
|
83
|
+
c,
|
|
84
84
|
s
|
|
85
85
|
]
|
|
86
|
-
), { post:
|
|
87
|
-
onComplete:
|
|
88
|
-
}),
|
|
86
|
+
), { post: K } = fe({
|
|
87
|
+
onComplete: ae
|
|
88
|
+
}), E = r(() => {
|
|
89
89
|
const o = {
|
|
90
|
-
course_stream:
|
|
91
|
-
grade:
|
|
92
|
-
teacher_id:
|
|
93
|
-
board:
|
|
94
|
-
goals:
|
|
95
|
-
delete_existing_draft:
|
|
90
|
+
course_stream: y,
|
|
91
|
+
grade: _,
|
|
92
|
+
teacher_id: c,
|
|
93
|
+
board: I,
|
|
94
|
+
goals: x,
|
|
95
|
+
delete_existing_draft: m === "TRIAL_V3_3"
|
|
96
96
|
};
|
|
97
|
-
|
|
98
|
-
studentId:
|
|
97
|
+
d(), H(o, {
|
|
98
|
+
studentId: l
|
|
99
99
|
});
|
|
100
100
|
}, [
|
|
101
|
-
|
|
101
|
+
I,
|
|
102
|
+
m,
|
|
102
103
|
d,
|
|
104
|
+
x,
|
|
105
|
+
_,
|
|
106
|
+
H,
|
|
107
|
+
y,
|
|
103
108
|
l,
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
c,
|
|
109
|
-
r
|
|
110
|
-
]), j = i(() => {
|
|
111
|
-
var u;
|
|
112
|
-
const [o, e] = ((u = L == null ? void 0 : L.trim()) == null ? void 0 : u.split(" ")) || [], f = {
|
|
109
|
+
c
|
|
110
|
+
]), j = r(() => {
|
|
111
|
+
var n;
|
|
112
|
+
const [o, e] = ((n = h == null ? void 0 : h.trim()) == null ? void 0 : n.split(" ")) || [], u = {
|
|
113
113
|
first_name: o,
|
|
114
114
|
last_name: e,
|
|
115
|
-
grade:
|
|
116
|
-
board:
|
|
117
|
-
demo_type:
|
|
118
|
-
teacher_id:
|
|
119
|
-
country_alpha_2:
|
|
115
|
+
grade: _,
|
|
116
|
+
board: I,
|
|
117
|
+
demo_type: m,
|
|
118
|
+
teacher_id: c,
|
|
119
|
+
country_alpha_2: G
|
|
120
120
|
};
|
|
121
|
-
/\d/.test(
|
|
121
|
+
/\d/.test(h || "") ? a({ numberInNameError: !0 }) : (d(), w(l, u), R && E());
|
|
122
122
|
}, [
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
123
|
+
h,
|
|
124
|
+
_,
|
|
125
|
+
I,
|
|
126
|
+
m,
|
|
127
|
+
c,
|
|
128
|
+
G,
|
|
129
129
|
a,
|
|
130
|
+
d,
|
|
131
|
+
w,
|
|
130
132
|
l,
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
]), q = i(() => {
|
|
136
|
-
const o = Y(P, g), e = pe(o);
|
|
133
|
+
R,
|
|
134
|
+
E
|
|
135
|
+
]), Z = r(() => {
|
|
136
|
+
const o = X(g, S), e = _e(o);
|
|
137
137
|
if (o.length > 0) {
|
|
138
|
-
const
|
|
139
|
-
teacher_id:
|
|
138
|
+
const u = {
|
|
139
|
+
teacher_id: c,
|
|
140
140
|
session_list: e
|
|
141
141
|
};
|
|
142
|
-
|
|
142
|
+
d(), K(u);
|
|
143
143
|
} else
|
|
144
|
-
a({ id:
|
|
144
|
+
a({ id: i }), s("both", p);
|
|
145
145
|
}, [
|
|
146
|
-
P,
|
|
147
146
|
g,
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
147
|
+
S,
|
|
148
|
+
c,
|
|
149
|
+
K,
|
|
150
|
+
d,
|
|
151
151
|
a,
|
|
152
|
-
|
|
152
|
+
i,
|
|
153
153
|
s
|
|
154
|
-
]),
|
|
155
|
-
|
|
154
|
+
]), q = r(() => {
|
|
155
|
+
d(), b("trial-v3-patch", {
|
|
156
156
|
action: "UPDATE_DEMO",
|
|
157
157
|
action_data: { selected_topics: z },
|
|
158
|
-
teacher_id:
|
|
159
|
-
student_id:
|
|
158
|
+
teacher_id: c,
|
|
159
|
+
student_id: l
|
|
160
160
|
});
|
|
161
|
-
}, [z,
|
|
161
|
+
}, [z, d, b, c, l]), J = r(
|
|
162
162
|
(o) => {
|
|
163
|
-
|
|
163
|
+
m === "TRIAL_V3" ? E() : o && (a({ id: o }), s("both", p));
|
|
164
164
|
},
|
|
165
|
-
[
|
|
166
|
-
),
|
|
165
|
+
[m, E, s, a]
|
|
166
|
+
), A = r(() => {
|
|
167
167
|
const e = { preferences: Ee(D, [
|
|
168
168
|
...M,
|
|
169
|
+
...U,
|
|
169
170
|
...V,
|
|
170
171
|
...B,
|
|
171
|
-
...F
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
l(), K(e, f);
|
|
172
|
+
...F
|
|
173
|
+
]), grade: _ }, u = { stream: ce.MATH, studentId: l };
|
|
174
|
+
d(), W(e, u);
|
|
175
175
|
}, [
|
|
176
|
-
|
|
177
|
-
|
|
176
|
+
_,
|
|
177
|
+
l,
|
|
178
178
|
D,
|
|
179
179
|
M,
|
|
180
|
+
U,
|
|
180
181
|
V,
|
|
181
182
|
B,
|
|
182
183
|
F,
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
!!v.pages.find((e) => e.id === t.LEARNING_LEVEL) ? (a({ id: n }), s("both", _)) : T();
|
|
184
|
+
d,
|
|
185
|
+
W
|
|
186
|
+
]), Q = r(() => {
|
|
187
|
+
!!v.pages.find((e) => e.id === t.LEARNING_LEVEL) ? (a({ id: i }), s("both", p)) : A();
|
|
188
188
|
}, [
|
|
189
|
-
|
|
189
|
+
i,
|
|
190
190
|
v,
|
|
191
191
|
a,
|
|
192
192
|
s,
|
|
193
|
-
|
|
194
|
-
]),
|
|
193
|
+
A
|
|
194
|
+
]), k = r(
|
|
195
195
|
(o, e) => {
|
|
196
196
|
if (!a) return;
|
|
197
|
-
const f =
|
|
198
|
-
|
|
199
|
-
t.CIRCLE_PUZZLE,
|
|
200
|
-
t.CIRCLE_SKILL
|
|
201
|
-
], N = m === t.STUDENT_PROFILE, u = m === t.LEARNING_PLAN, p = { numberInNameError: !1 };
|
|
202
|
-
if (m === t.LEARNING_PLAN && (p.chapterId = void 0), e && f.includes(e) && (p.matchmakingId = $(), p.showCircleGameScreen = !0), o === "prev" && (a({
|
|
197
|
+
const u = f === t.STUDENT_PROFILE, N = f === t.LEARNING_PLAN, n = { numberInNameError: !1 };
|
|
198
|
+
if (f === t.LEARNING_PLAN && (n.chapterId = void 0), e && he.includes(e) && (n.matchmakingId = Y(), n.showCircleGameScreen = !0), o === "prev" && (a({
|
|
203
199
|
id: e,
|
|
204
|
-
...
|
|
205
|
-
...
|
|
200
|
+
...u && { studentProfile: void 0 },
|
|
201
|
+
...N && {
|
|
206
202
|
chapterId: void 0
|
|
207
203
|
},
|
|
208
|
-
...
|
|
209
|
-
}), s("both",
|
|
210
|
-
switch (
|
|
204
|
+
...n
|
|
205
|
+
}), s("both", p)), o === "next")
|
|
206
|
+
switch (f) {
|
|
211
207
|
case t.STUDENT_INFORMATION:
|
|
212
208
|
case t.SCHOOL_GOALS:
|
|
213
209
|
j();
|
|
214
210
|
break;
|
|
215
211
|
case t.LEARNING_WORKSHEET:
|
|
216
|
-
|
|
212
|
+
J(e);
|
|
217
213
|
break;
|
|
218
214
|
case t.CLASS_PREFERENCE:
|
|
219
|
-
|
|
215
|
+
Z();
|
|
220
216
|
break;
|
|
221
217
|
case t.TOPIC_SELECTION:
|
|
222
|
-
|
|
218
|
+
q();
|
|
223
219
|
break;
|
|
224
220
|
case t.STUDENT_INTRO:
|
|
225
|
-
|
|
221
|
+
Q();
|
|
226
222
|
break;
|
|
227
223
|
case t.LEARNING_LEVEL:
|
|
228
|
-
|
|
224
|
+
A();
|
|
229
225
|
break;
|
|
230
226
|
default: {
|
|
231
|
-
if (e === t.LEARNING_PLAN &&
|
|
232
|
-
|
|
227
|
+
if (e === t.LEARNING_PLAN && m !== "TRIAL_V3") {
|
|
228
|
+
E();
|
|
233
229
|
return;
|
|
234
230
|
}
|
|
235
|
-
a({ id: e, ...
|
|
231
|
+
a({ id: e, ...n }), s("both", p);
|
|
236
232
|
}
|
|
237
233
|
}
|
|
238
234
|
},
|
|
239
235
|
[
|
|
240
236
|
a,
|
|
241
|
-
|
|
237
|
+
f,
|
|
242
238
|
s,
|
|
243
|
-
|
|
244
|
-
|
|
239
|
+
m,
|
|
240
|
+
E,
|
|
245
241
|
j,
|
|
246
|
-
Q,
|
|
247
|
-
q,
|
|
248
242
|
J,
|
|
249
|
-
|
|
250
|
-
|
|
243
|
+
Z,
|
|
244
|
+
q,
|
|
245
|
+
Q,
|
|
246
|
+
A
|
|
251
247
|
]
|
|
252
|
-
),
|
|
253
|
-
!
|
|
254
|
-
}, [
|
|
248
|
+
), ne = r(() => {
|
|
249
|
+
!C && f === t.LEARNING_WORKSHEET && k("next", i);
|
|
250
|
+
}, [f, k, i, C]);
|
|
255
251
|
return re(() => {
|
|
256
|
-
|
|
257
|
-
}, [
|
|
252
|
+
ne();
|
|
253
|
+
}, [C]), { handleNavigation: k };
|
|
258
254
|
};
|
|
259
255
|
export {
|
|
260
|
-
|
|
256
|
+
Re as useTrialSessionNavigation
|
|
261
257
|
};
|
|
262
258
|
//# 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 { 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 {\n usePostTeacherAvailability,\n type TTeacherAvailabilityResponse,\n} from '../api/teacher-availability';\nimport { usePatchTrialHome } from '../api/trial-home';\nimport { useTrialSessionContext } from '../context/use-trial-session-context';\nimport {\n getFormattedPreferences,\n getFormattedStudentPersonalizedPreference,\n getWeekdayAndStartTimeFromPreference,\n} from '../helper';\nimport { DEFAULT_BUTTON_STATE, TrialPageId } from '../trial-session-constants';\nimport type { ITrialSessionFormFields } from '../trial-session-types';\n\nconst useTrialSessionNavigation = () => {\n const {\n updateSlideConfig,\n slideConfig,\n demoType,\n formData,\n updateButtonState,\n teacherId,\n studentId,\n milestoneConfig,\n handleInfoMessage,\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 selectedTopics = [],\n studentTimezone,\n preferences = [],\n personalizedLevel = [],\n personalizedFocus = [],\n personalizedBehaviors = [],\n personalizedObjectives = [],\n personalizedPosition = [],\n } = formData || {};\n\n const trialV3New = nextPageId === TrialPageId.LEARNING_PLAN && demoType === 'TRIAL_V3_3';\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 (currentPageId === TrialPageId.LEARNING_LEVEL) {\n onTrialInformationUpdate?.();\n }\n };\n\n // API specifications\n const { patch: patchTrialSession } = usePatchTrialHome({ onComplete: onAcknowledge });\n const { patch: patchStudentInformation } = usePatchStudentInformation({\n onComplete: onAcknowledge,\n triggerOnComplete: !trialV3New,\n });\n const { post: postMilestoneBulk } = useMilestoneBulkPost({\n onComplete: onAcknowledge,\n });\n const { post: postStudentPreferences } = usePostStudentPreferences({\n onComplete: onAcknowledge,\n });\n\n const onTeacherAvailabilityValidate = useCallback(\n (_: string | null, data?: TTeacherAvailabilityResponse) => {\n const hasNotAvailable = (data ?? []).some(item => !item.is_available);\n\n if (hasNotAvailable) {\n const notAvailable = (data ?? []).filter(item => !item.is_available);\n const reason = notAvailable.map(item => item.reason).join('\\n');\n\n handleInfoMessage?.({ message: reason, position: 'bottom' });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n\n return;\n }\n\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 patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: actionData,\n teacher_id: teacherId,\n student_id: studentId,\n });\n } else updateButtonState('both', DEFAULT_BUTTON_STATE);\n },\n [\n handleInfoMessage,\n patchTrialSession,\n preferences,\n studentId,\n studentTimezone,\n teacherId,\n updateButtonState,\n ],\n );\n\n const { post: postTeacherAvailability } = usePostTeacherAvailability({\n onComplete: onTeacherAvailabilityValidate,\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 delete_existing_draft: demoType === 'TRIAL_V3_3',\n };\n\n disableNavButtons();\n postMilestoneBulk(payload, {\n studentId,\n });\n }, [\n curriculum,\n demoType,\n disableNavButtons,\n goals,\n grade,\n postMilestoneBulk,\n stream,\n studentId,\n teacherId,\n ]);\n\n // Function to call API and updates states\n const handleStudentInformation = useCallback(() => {\n const [firstName, lastName] = name?.trim()?.split(' ') || [];\n const payload = {\n first_name: firstName,\n last_name: lastName,\n grade,\n board: curriculum,\n demo_type: demoType,\n teacher_id: teacherId,\n country_alpha_2: countryCode,\n };\n const isNumberExistsInName = /\\d/.test(name || '');\n\n if (isNumberExistsInName) {\n updateSlideConfig({ numberInNameError: true });\n } else {\n disableNavButtons();\n patchStudentInformation(studentId, payload);\n if (trialV3New) {\n handleMileStoneBulkPost();\n }\n }\n }, [\n name,\n grade,\n curriculum,\n demoType,\n teacherId,\n countryCode,\n updateSlideConfig,\n disableNavButtons,\n patchStudentInformation,\n studentId,\n trialV3New,\n handleMileStoneBulkPost,\n ]);\n\n const handleClassPreferences = useCallback(() => {\n const selectedRegularSlots = getFormattedPreferences(preferences, studentTimezone);\n const sessionList = getWeekdayAndStartTimeFromPreference(selectedRegularSlots);\n\n if (selectedRegularSlots.length > 0) {\n const availabilityPayload = {\n teacher_id: teacherId,\n session_list: sessionList,\n };\n\n disableNavButtons();\n postTeacherAvailability(availabilityPayload);\n } else {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }, [\n preferences,\n studentTimezone,\n teacherId,\n postTeacherAvailability,\n disableNavButtons,\n updateSlideConfig,\n nextPageId,\n updateButtonState,\n ]);\n\n const handleTopicSelection = useCallback(() => {\n disableNavButtons();\n patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: { selected_topics: selectedTopics },\n teacher_id: teacherId,\n student_id: studentId,\n });\n }, [selectedTopics, disableNavButtons, patchTrialSession, teacherId, studentId]);\n\n const handleWorksheetNavigation = useCallback(\n (id?: TrialPageId) => {\n if (demoType === 'TRIAL_V3') {\n handleMileStoneBulkPost();\n } else if (id) {\n updateSlideConfig({ id });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n },\n [demoType, handleMileStoneBulkPost, updateButtonState, updateSlideConfig],\n );\n\n const handleStudentPreferencesPatch = useCallback(() => {\n const personalizedPreferences = getFormattedStudentPersonalizedPreference(milestoneConfig, [\n ...personalizedLevel,\n ...personalizedFocus,\n ...personalizedBehaviors,\n ...personalizedObjectives,\n ...personalizedPosition,\n ]);\n\n const payload = { preferences: personalizedPreferences, grade };\n const meta = { stream: COURSE_STREAMS.MATH, studentId };\n\n disableNavButtons();\n postStudentPreferences(payload, meta);\n }, [\n grade,\n studentId,\n milestoneConfig,\n personalizedLevel,\n personalizedFocus,\n personalizedBehaviors,\n personalizedObjectives,\n personalizedPosition,\n disableNavButtons,\n postStudentPreferences,\n ]);\n\n const handleStudentIntroduction = useCallback(() => {\n const isLearningLevelExisted = Boolean(\n trialHomeData.pages.find(page => page.id === TrialPageId.LEARNING_LEVEL),\n );\n\n if (isLearningLevelExisted) {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n } else {\n handleStudentPreferencesPatch();\n }\n }, [\n nextPageId,\n trialHomeData,\n updateSlideConfig,\n updateButtonState,\n handleStudentPreferencesPatch,\n ]);\n\n // Navigation logic\n const handleNavigation = useCallback(\n (dir: string, id?: TrialPageId) => {\n if (!updateSlideConfig) return;\n\n const circleGameSlide = [\n TrialPageId.CIRCLE_GAME,\n TrialPageId.CIRCLE_PUZZLE,\n TrialPageId.CIRCLE_SKILL,\n ];\n const isStudentProfilePage = currentPageId === TrialPageId.STUDENT_PROFILE;\n const isLearningPlanSlide = currentPageId === TrialPageId.LEARNING_PLAN;\n const overrides: Partial<ITrialSessionFormFields> = { numberInNameError: false };\n\n if (currentPageId === TrialPageId.LEARNING_PLAN) overrides.chapterId = undefined;\n\n if (id && circleGameSlide.includes(id)) {\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 case TrialPageId.STUDENT_INFORMATION:\n case TrialPageId.SCHOOL_GOALS:\n handleStudentInformation();\n break;\n case TrialPageId.LEARNING_WORKSHEET:\n handleWorksheetNavigation(id);\n break;\n case TrialPageId.CLASS_PREFERENCE:\n handleClassPreferences();\n break;\n case TrialPageId.TOPIC_SELECTION:\n handleTopicSelection();\n break;\n case TrialPageId.STUDENT_INTRO:\n handleStudentIntroduction();\n break;\n case TrialPageId.LEARNING_LEVEL:\n handleStudentPreferencesPatch();\n break;\n default: {\n if (id === TrialPageId.LEARNING_PLAN && demoType !== 'TRIAL_V3') {\n handleMileStoneBulkPost();\n\n return;\n }\n updateSlideConfig({ id, ...overrides });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }\n }\n },\n [\n updateSlideConfig,\n currentPageId,\n updateButtonState,\n demoType,\n handleMileStoneBulkPost,\n handleStudentInformation,\n handleWorksheetNavigation,\n handleClassPreferences,\n handleTopicSelection,\n handleStudentIntroduction,\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","demoType","formData","updateButtonState","teacherId","studentId","milestoneConfig","handleInfoMessage","onTrialInformationUpdate","trialHomeData","worksheetNavigationPanel","useTrialSessionContext","nextPage","currentPageId","demoInfo","stream","regionData","countryCode","nextPageId","name","grade","goals","curriculum","selectedTopics","studentTimezone","preferences","personalizedLevel","personalizedFocus","personalizedBehaviors","personalizedObjectives","personalizedPosition","trialV3New","TrialPageId","disableNavButtons","useCallback","onAcknowledge","errorMessage","overrides","uuidv4","DEFAULT_BUTTON_STATE","patchTrialSession","usePatchTrialHome","patchStudentInformation","usePatchStudentInformation","postMilestoneBulk","useMilestoneBulkPost","postStudentPreferences","usePostStudentPreferences","onTeacherAvailabilityValidate","_","data","item","reason","selectedRegularSlots","getFormattedPreferences","postTeacherAvailability","usePostTeacherAvailability","handleMileStoneBulkPost","payload","handleStudentInformation","firstName","lastName","_a","handleClassPreferences","sessionList","getWeekdayAndStartTimeFromPreference","availabilityPayload","handleTopicSelection","handleWorksheetNavigation","id","handleStudentPreferencesPatch","getFormattedStudentPersonalizedPreference","meta","COURSE_STREAMS","handleStudentIntroduction","page","handleNavigation","dir","circleGameSlide","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 { 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 {\n usePostTeacherAvailability,\n type TTeacherAvailabilityResponse,\n} from '../api/teacher-availability';\nimport { usePatchTrialHome } from '../api/trial-home';\nimport { useTrialSessionContext } from '../context/use-trial-session-context';\nimport {\n getFormattedPreferences,\n getFormattedStudentPersonalizedPreference,\n getWeekdayAndStartTimeFromPreference,\n} from '../helper';\nimport { CIRCLE_GAME_SLIDES, DEFAULT_BUTTON_STATE, TrialPageId } from '../trial-session-constants';\nimport type { ITrialSessionFormFields } from '../trial-session-types';\n\nconst useTrialSessionNavigation = () => {\n const {\n updateSlideConfig,\n slideConfig,\n demoType,\n formData,\n updateButtonState,\n teacherId,\n studentId,\n milestoneConfig,\n handleInfoMessage,\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 selectedTopics = [],\n studentTimezone,\n preferences = [],\n personalizedLevel = [],\n personalizedFocus = [],\n personalizedBehaviors = [],\n personalizedObjectives = [],\n personalizedPosition = [],\n } = formData || {};\n\n const trialV3New = nextPageId === TrialPageId.LEARNING_PLAN && demoType === 'TRIAL_V3_3';\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 (currentPageId === TrialPageId.LEARNING_LEVEL) {\n onTrialInformationUpdate?.();\n }\n };\n\n // API specifications\n const { patch: patchTrialSession } = usePatchTrialHome({ onComplete: onAcknowledge });\n const { patch: patchStudentInformation } = usePatchStudentInformation({\n onComplete: onAcknowledge,\n triggerOnComplete: !trialV3New,\n });\n const { post: postMilestoneBulk } = useMilestoneBulkPost({\n onComplete: onAcknowledge,\n });\n const { post: postStudentPreferences } = usePostStudentPreferences({\n onComplete: onAcknowledge,\n });\n\n const onTeacherAvailabilityValidate = useCallback(\n (_: string | null, data?: TTeacherAvailabilityResponse) => {\n const hasNotAvailable = (data ?? []).some(item => !item.is_available);\n\n if (hasNotAvailable) {\n const notAvailable = (data ?? []).filter(item => !item.is_available);\n const reason = notAvailable.map(item => item.reason).join('\\n');\n\n handleInfoMessage?.({ message: reason, position: 'bottom' });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n\n return;\n }\n\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 patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: actionData,\n teacher_id: teacherId,\n student_id: studentId,\n });\n } else updateButtonState('both', DEFAULT_BUTTON_STATE);\n },\n [\n handleInfoMessage,\n patchTrialSession,\n preferences,\n studentId,\n studentTimezone,\n teacherId,\n updateButtonState,\n ],\n );\n\n const { post: postTeacherAvailability } = usePostTeacherAvailability({\n onComplete: onTeacherAvailabilityValidate,\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 delete_existing_draft: demoType === 'TRIAL_V3_3',\n };\n\n disableNavButtons();\n postMilestoneBulk(payload, {\n studentId,\n });\n }, [\n curriculum,\n demoType,\n disableNavButtons,\n goals,\n grade,\n postMilestoneBulk,\n stream,\n studentId,\n teacherId,\n ]);\n\n // Function to call API and updates states\n const handleStudentInformation = useCallback(() => {\n const [firstName, lastName] = name?.trim()?.split(' ') || [];\n const payload = {\n first_name: firstName,\n last_name: lastName,\n grade,\n board: curriculum,\n demo_type: demoType,\n teacher_id: teacherId,\n country_alpha_2: countryCode,\n };\n const isNumberExistsInName = /\\d/.test(name || '');\n\n if (isNumberExistsInName) {\n updateSlideConfig({ numberInNameError: true });\n } else {\n disableNavButtons();\n patchStudentInformation(studentId, payload);\n if (trialV3New) {\n handleMileStoneBulkPost();\n }\n }\n }, [\n name,\n grade,\n curriculum,\n demoType,\n teacherId,\n countryCode,\n updateSlideConfig,\n disableNavButtons,\n patchStudentInformation,\n studentId,\n trialV3New,\n handleMileStoneBulkPost,\n ]);\n\n const handleClassPreferences = useCallback(() => {\n const selectedRegularSlots = getFormattedPreferences(preferences, studentTimezone);\n const sessionList = getWeekdayAndStartTimeFromPreference(selectedRegularSlots);\n\n if (selectedRegularSlots.length > 0) {\n const availabilityPayload = {\n teacher_id: teacherId,\n session_list: sessionList,\n };\n\n disableNavButtons();\n postTeacherAvailability(availabilityPayload);\n } else {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }, [\n preferences,\n studentTimezone,\n teacherId,\n postTeacherAvailability,\n disableNavButtons,\n updateSlideConfig,\n nextPageId,\n updateButtonState,\n ]);\n\n const handleTopicSelection = useCallback(() => {\n disableNavButtons();\n patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: { selected_topics: selectedTopics },\n teacher_id: teacherId,\n student_id: studentId,\n });\n }, [selectedTopics, disableNavButtons, patchTrialSession, teacherId, studentId]);\n\n const handleWorksheetNavigation = useCallback(\n (id?: TrialPageId) => {\n if (demoType === 'TRIAL_V3') {\n handleMileStoneBulkPost();\n } else if (id) {\n updateSlideConfig({ id });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n },\n [demoType, handleMileStoneBulkPost, updateButtonState, updateSlideConfig],\n );\n\n const handleStudentPreferencesPatch = useCallback(() => {\n const personalizedPreferences = getFormattedStudentPersonalizedPreference(milestoneConfig, [\n ...personalizedLevel,\n ...personalizedFocus,\n ...personalizedBehaviors,\n ...personalizedObjectives,\n ...personalizedPosition,\n ]);\n\n const payload = { preferences: personalizedPreferences, grade };\n const meta = { stream: COURSE_STREAMS.MATH, studentId };\n\n disableNavButtons();\n postStudentPreferences(payload, meta);\n }, [\n grade,\n studentId,\n milestoneConfig,\n personalizedLevel,\n personalizedFocus,\n personalizedBehaviors,\n personalizedObjectives,\n personalizedPosition,\n disableNavButtons,\n postStudentPreferences,\n ]);\n\n const handleStudentIntroduction = useCallback(() => {\n const isLearningLevelExisted = Boolean(\n trialHomeData.pages.find(page => page.id === TrialPageId.LEARNING_LEVEL),\n );\n\n if (isLearningLevelExisted) {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n } else {\n handleStudentPreferencesPatch();\n }\n }, [\n nextPageId,\n trialHomeData,\n updateSlideConfig,\n updateButtonState,\n handleStudentPreferencesPatch,\n ]);\n\n // Navigation logic\n const handleNavigation = useCallback(\n (dir: string, id?: TrialPageId) => {\n if (!updateSlideConfig) return;\n\n const isStudentProfilePage = currentPageId === TrialPageId.STUDENT_PROFILE;\n const isLearningPlanSlide = currentPageId === TrialPageId.LEARNING_PLAN;\n const overrides: Partial<ITrialSessionFormFields> = { numberInNameError: false };\n\n if (currentPageId === TrialPageId.LEARNING_PLAN) overrides.chapterId = undefined;\n\n if (id && CIRCLE_GAME_SLIDES.includes(id)) {\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 case TrialPageId.STUDENT_INFORMATION:\n case TrialPageId.SCHOOL_GOALS:\n handleStudentInformation();\n break;\n case TrialPageId.LEARNING_WORKSHEET:\n handleWorksheetNavigation(id);\n break;\n case TrialPageId.CLASS_PREFERENCE:\n handleClassPreferences();\n break;\n case TrialPageId.TOPIC_SELECTION:\n handleTopicSelection();\n break;\n case TrialPageId.STUDENT_INTRO:\n handleStudentIntroduction();\n break;\n case TrialPageId.LEARNING_LEVEL:\n handleStudentPreferencesPatch();\n break;\n default: {\n if (id === TrialPageId.LEARNING_PLAN && demoType !== 'TRIAL_V3') {\n handleMileStoneBulkPost();\n\n return;\n }\n updateSlideConfig({ id, ...overrides });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }\n }\n },\n [\n updateSlideConfig,\n currentPageId,\n updateButtonState,\n demoType,\n handleMileStoneBulkPost,\n handleStudentInformation,\n handleWorksheetNavigation,\n handleClassPreferences,\n handleTopicSelection,\n handleStudentIntroduction,\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","demoType","formData","updateButtonState","teacherId","studentId","milestoneConfig","handleInfoMessage","onTrialInformationUpdate","trialHomeData","worksheetNavigationPanel","useTrialSessionContext","nextPage","currentPageId","demoInfo","stream","regionData","countryCode","nextPageId","name","grade","goals","curriculum","selectedTopics","studentTimezone","preferences","personalizedLevel","personalizedFocus","personalizedBehaviors","personalizedObjectives","personalizedPosition","trialV3New","TrialPageId","disableNavButtons","useCallback","onAcknowledge","errorMessage","overrides","uuidv4","DEFAULT_BUTTON_STATE","patchTrialSession","usePatchTrialHome","patchStudentInformation","usePatchStudentInformation","postMilestoneBulk","useMilestoneBulkPost","postStudentPreferences","usePostStudentPreferences","onTeacherAvailabilityValidate","_","data","item","reason","selectedRegularSlots","getFormattedPreferences","postTeacherAvailability","usePostTeacherAvailability","handleMileStoneBulkPost","payload","handleStudentInformation","firstName","lastName","_a","handleClassPreferences","sessionList","getWeekdayAndStartTimeFromPreference","availabilityPayload","handleTopicSelection","handleWorksheetNavigation","id","handleStudentPreferencesPatch","getFormattedStudentPersonalizedPreference","meta","COURSE_STREAMS","handleStudentIntroduction","page","handleNavigation","dir","isStudentProfilePage","isLearningPlanSlide","CIRCLE_GAME_SLIDES","sessionWorksheetNavigation","useEffect"],"mappings":"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"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
var s = /* @__PURE__ */ ((E) => (E.WELCOME_CUEMATH = "welcome-cuemath", E.CIRCLE_GAME = "circle-game", E.TEACHER_INTRO = "teacher-intro", E.SESSION_OVERVIEW = "session-overview", E.STUDENT_LEVEL = "student-level", E.STUDENT_INFORMATION = "student-information", E.SCHOOL_GOALS = "school-goals", E.TEST_PREP = "test-prep", E.STUDENT_ENRICHMENT = "student-enrichment", E.STUDENT_PERSONALIZATION = "student-personalization", E.ADDITIONAL_INFO = "additional-info", E.STUDENT_PROFILE = "student-profile", E.STUDENT_INTRO = "student-intro", E.LEARNING_LEVEL = "learning-level", E.LEARNING_WORKSHEET = "learning-worksheet", E.COMPLETED_WORKSHEET = "completed-worksheet", E.WELCOME_BACK = "welcome-back", E.SESSION_INSIGHTS = "session-insights", E.SESSION_REPORT = "session-report", E.LEARNING_PLAN = "learning-plan", E.SESSION_SUMMARY = "session-summary", E.GOAL_DETAILS = "goal-details", E.GOAL_PLANS = "goal-plans", E.PARENT_APP = "parent-app", E.CIRCLE_INFORMATION = "circle-information", E.PRICING = "pricing", E.CLASS_PREFERENCE = "class-preference", E.THANK_YOU = "thank-you", E.CIRCLE_PUZZLE = "circle-puzzle", E.CIRCLE_SKILL = "circle-skill", E.WHITEBOARD = "whiteboard", E.SESSION_PROGRESS_SUMMARY = "session-progress-summary", E.TOPIC_SELECTION = "topic-selection", E))(s || {});
|
|
2
|
-
const
|
|
2
|
+
const e = [
|
|
3
3
|
"learning-worksheet",
|
|
4
4
|
"learning-plan",
|
|
5
5
|
"circle-game",
|
|
6
6
|
"circle-puzzle",
|
|
7
7
|
"circle-skill"
|
|
8
8
|
/* CIRCLE_SKILL */
|
|
9
|
-
],
|
|
9
|
+
], n = [
|
|
10
10
|
"learning-worksheet",
|
|
11
11
|
"circle-game",
|
|
12
12
|
"learning-plan",
|
|
13
13
|
"circle-puzzle",
|
|
14
14
|
"circle-skill"
|
|
15
15
|
/* CIRCLE_SKILL */
|
|
16
|
-
],
|
|
16
|
+
], t = [
|
|
17
17
|
"pricing",
|
|
18
18
|
"student-intro",
|
|
19
19
|
"completed-worksheet",
|
|
@@ -22,10 +22,17 @@ const n = [
|
|
|
22
22
|
"whiteboard",
|
|
23
23
|
"session-progress-summary"
|
|
24
24
|
/* SESSION_PROGRESS_SUMMARY */
|
|
25
|
-
],
|
|
25
|
+
], c = [
|
|
26
|
+
"circle-game",
|
|
27
|
+
"circle-puzzle",
|
|
28
|
+
"circle-skill"
|
|
29
|
+
/* CIRCLE_SKILL */
|
|
30
|
+
];
|
|
31
|
+
var _ = /* @__PURE__ */ ((E) => (E.TRIAL_V3 = "TRIAL_V3", E.TRIAL_V3_3 = "TRIAL_V3_3", E))(_ || {});
|
|
32
|
+
const o = {
|
|
26
33
|
left: { isDisabled: !1, isLoading: !1 },
|
|
27
34
|
right: { isDisabled: !1, isLoading: !1 }
|
|
28
|
-
},
|
|
35
|
+
}, A = 800, S = 700, L = 480, N = 360, R = 64, C = 540, O = "Asia/Calcutta", l = 3, i = {
|
|
29
36
|
"USCC.ALGBRA1": "algebra_i",
|
|
30
37
|
"USCC.ALGBRA2": "algebra_ii",
|
|
31
38
|
"USCC.GEOMRY": "geometry",
|
|
@@ -34,18 +41,20 @@ const n = [
|
|
|
34
41
|
"USCC.APPRECAL": "precalculus"
|
|
35
42
|
};
|
|
36
43
|
export {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
n as ACTIONABLE_COMPONENT_IDS,
|
|
45
|
+
c as CIRCLE_GAME_SLIDES,
|
|
46
|
+
o as DEFAULT_BUTTON_STATE,
|
|
47
|
+
_ as DemoType,
|
|
48
|
+
i as HIGH_ENROLLMENT_PROGRAMS_MAP,
|
|
49
|
+
l as MAXIMUM_TOPICS_TO_SELECT,
|
|
50
|
+
C as MINIMUM_SCREEN_HEIGHT,
|
|
51
|
+
R as NAVIGATION_BAR_HEIGHT,
|
|
52
|
+
e as PAGES_WITHOUT_GRID,
|
|
53
|
+
S as RIGHT_PANEL_CONTENT_WIDTH,
|
|
54
|
+
A as RIGHT_PANEL_WIDTH,
|
|
55
|
+
t as SCROLLABLE_COMPONENT_IDS,
|
|
56
|
+
N as STUDENT_LEFT_PANEL_MAX_WIDTH,
|
|
57
|
+
L as TEACHER_LEFT_PANEL_MAX_WIDTH,
|
|
49
58
|
O as TEACHER_TIMEZONE,
|
|
50
59
|
s as TrialPageId
|
|
51
60
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trial-session-constants.js","sources":["../../../src/features/trial-session/trial-session-constants.ts"],"sourcesContent":["export enum TrialPageId {\n WELCOME_CUEMATH = 'welcome-cuemath',\n CIRCLE_GAME = 'circle-game',\n TEACHER_INTRO = 'teacher-intro',\n SESSION_OVERVIEW = 'session-overview',\n STUDENT_LEVEL = 'student-level',\n STUDENT_INFORMATION = 'student-information',\n SCHOOL_GOALS = 'school-goals',\n TEST_PREP = 'test-prep',\n STUDENT_ENRICHMENT = 'student-enrichment',\n STUDENT_PERSONALIZATION = 'student-personalization',\n ADDITIONAL_INFO = 'additional-info',\n STUDENT_PROFILE = 'student-profile',\n STUDENT_INTRO = 'student-intro',\n LEARNING_LEVEL = 'learning-level',\n LEARNING_WORKSHEET = 'learning-worksheet',\n COMPLETED_WORKSHEET = 'completed-worksheet',\n WELCOME_BACK = 'welcome-back',\n SESSION_INSIGHTS = 'session-insights', // FYI: Not In Use\n SESSION_REPORT = 'session-report',\n LEARNING_PLAN = 'learning-plan',\n SESSION_SUMMARY = 'session-summary',\n GOAL_DETAILS = 'goal-details',\n GOAL_PLANS = 'goal-plans',\n PARENT_APP = 'parent-app',\n CIRCLE_INFORMATION = 'circle-information',\n PRICING = 'pricing',\n CLASS_PREFERENCE = 'class-preference',\n THANK_YOU = 'thank-you',\n CIRCLE_PUZZLE = 'circle-puzzle',\n CIRCLE_SKILL = 'circle-skill',\n WHITEBOARD = 'whiteboard',\n SESSION_PROGRESS_SUMMARY = 'session-progress-summary',\n TOPIC_SELECTION = 'topic-selection',\n}\n\nexport const PAGES_WITHOUT_GRID = [\n TrialPageId.LEARNING_WORKSHEET,\n TrialPageId.LEARNING_PLAN,\n TrialPageId.CIRCLE_GAME,\n TrialPageId.CIRCLE_PUZZLE,\n TrialPageId.CIRCLE_SKILL,\n];\n\nexport const ACTIONABLE_COMPONENT_IDS = [\n TrialPageId.LEARNING_WORKSHEET,\n TrialPageId.CIRCLE_GAME,\n TrialPageId.LEARNING_PLAN,\n TrialPageId.CIRCLE_PUZZLE,\n TrialPageId.CIRCLE_SKILL,\n];\n\nexport const SCROLLABLE_COMPONENT_IDS = [\n TrialPageId.PRICING,\n TrialPageId.STUDENT_INTRO,\n TrialPageId.COMPLETED_WORKSHEET,\n TrialPageId.PARENT_APP,\n TrialPageId.GOAL_DETAILS,\n TrialPageId.WHITEBOARD,\n TrialPageId.SESSION_PROGRESS_SUMMARY,\n];\n\nexport const DEFAULT_BUTTON_STATE = {\n left: { isDisabled: false, isLoading: false },\n right: { isDisabled: false, isLoading: false },\n};\n\nexport const RIGHT_PANEL_WIDTH = 800;\nexport const RIGHT_PANEL_CONTENT_WIDTH = 700;\nexport const TEACHER_LEFT_PANEL_MAX_WIDTH = 480;\nexport const STUDENT_LEFT_PANEL_MAX_WIDTH = 360;\nexport const NAVIGATION_BAR_HEIGHT = 64;\nexport const MINIMUM_SCREEN_HEIGHT = 540;\nexport const TEACHER_TIMEZONE = 'Asia/Calcutta';\nexport const MAXIMUM_TOPICS_TO_SELECT = 3;\n\nexport const HIGH_ENROLLMENT_PROGRAMS_MAP = {\n 'USCC.ALGBRA1': 'algebra_i',\n 'USCC.ALGBRA2': 'algebra_ii',\n 'USCC.GEOMRY': 'geometry',\n 'USCC.PRECAL': 'precalculus',\n 'USCC.CLCULS': 'calculus',\n 'USCC.APPRECAL': 'precalculus',\n};\n"],"names":["TrialPageId","PAGES_WITHOUT_GRID","ACTIONABLE_COMPONENT_IDS","SCROLLABLE_COMPONENT_IDS","DEFAULT_BUTTON_STATE","RIGHT_PANEL_WIDTH","RIGHT_PANEL_CONTENT_WIDTH","TEACHER_LEFT_PANEL_MAX_WIDTH","STUDENT_LEFT_PANEL_MAX_WIDTH","NAVIGATION_BAR_HEIGHT","MINIMUM_SCREEN_HEIGHT","TEACHER_TIMEZONE","MAXIMUM_TOPICS_TO_SELECT","HIGH_ENROLLMENT_PROGRAMS_MAP"],"mappings":"AAAY,IAAAA,sBAAAA,OACVA,EAAA,kBAAkB,mBAClBA,EAAA,cAAc,eACdA,EAAA,gBAAgB,iBAChBA,EAAA,mBAAmB,oBACnBA,EAAA,gBAAgB,iBAChBA,EAAA,sBAAsB,uBACtBA,EAAA,eAAe,gBACfA,EAAA,YAAY,aACZA,EAAA,qBAAqB,sBACrBA,EAAA,0BAA0B,2BAC1BA,EAAA,kBAAkB,mBAClBA,EAAA,kBAAkB,mBAClBA,EAAA,gBAAgB,iBAChBA,EAAA,iBAAiB,kBACjBA,EAAA,qBAAqB,sBACrBA,EAAA,sBAAsB,uBACtBA,EAAA,eAAe,gBACfA,EAAA,mBAAmB,oBACnBA,EAAA,iBAAiB,kBACjBA,EAAA,gBAAgB,iBAChBA,EAAA,kBAAkB,mBAClBA,EAAA,eAAe,gBACfA,EAAA,aAAa,cACbA,EAAA,aAAa,cACbA,EAAA,qBAAqB,sBACrBA,EAAA,UAAU,WACVA,EAAA,mBAAmB,oBACnBA,EAAA,YAAY,aACZA,EAAA,gBAAgB,iBAChBA,EAAA,eAAe,gBACfA,EAAA,aAAa,cACbA,EAAA,2BAA2B,4BAC3BA,EAAA,kBAAkB,mBAjCRA,IAAAA,KAAA,CAAA,CAAA;AAoCL,MAAMC,IAAqB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAEaC,IAA2B;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAEaC,IAA2B;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAEaC,IAAuB;AAAA,EAClC,MAAM,EAAE,YAAY,IAAO,WAAW,GAAM;AAAA,EAC5C,OAAO,EAAE,YAAY,IAAO,WAAW,GAAM;AAC/C,GAEaC,IAAoB,KACpBC,IAA4B,KAC5BC,IAA+B,KAC/BC,IAA+B,KAC/BC,IAAwB,IACxBC,IAAwB,KACxBC,IAAmB,iBACnBC,IAA2B,GAE3BC,IAA+B;AAAA,EAC1C,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,eAAe;AAAA,EACf,eAAe;AAAA,EACf,eAAe;AAAA,EACf,iBAAiB;AACnB;"}
|
|
1
|
+
{"version":3,"file":"trial-session-constants.js","sources":["../../../src/features/trial-session/trial-session-constants.ts"],"sourcesContent":["export enum TrialPageId {\n WELCOME_CUEMATH = 'welcome-cuemath',\n CIRCLE_GAME = 'circle-game',\n TEACHER_INTRO = 'teacher-intro',\n SESSION_OVERVIEW = 'session-overview',\n STUDENT_LEVEL = 'student-level',\n STUDENT_INFORMATION = 'student-information',\n SCHOOL_GOALS = 'school-goals',\n TEST_PREP = 'test-prep',\n STUDENT_ENRICHMENT = 'student-enrichment',\n STUDENT_PERSONALIZATION = 'student-personalization',\n ADDITIONAL_INFO = 'additional-info',\n STUDENT_PROFILE = 'student-profile',\n STUDENT_INTRO = 'student-intro',\n LEARNING_LEVEL = 'learning-level',\n LEARNING_WORKSHEET = 'learning-worksheet',\n COMPLETED_WORKSHEET = 'completed-worksheet',\n WELCOME_BACK = 'welcome-back',\n SESSION_INSIGHTS = 'session-insights', // FYI: Not In Use\n SESSION_REPORT = 'session-report',\n LEARNING_PLAN = 'learning-plan',\n SESSION_SUMMARY = 'session-summary',\n GOAL_DETAILS = 'goal-details',\n GOAL_PLANS = 'goal-plans',\n PARENT_APP = 'parent-app',\n CIRCLE_INFORMATION = 'circle-information',\n PRICING = 'pricing',\n CLASS_PREFERENCE = 'class-preference',\n THANK_YOU = 'thank-you',\n CIRCLE_PUZZLE = 'circle-puzzle',\n CIRCLE_SKILL = 'circle-skill',\n WHITEBOARD = 'whiteboard',\n SESSION_PROGRESS_SUMMARY = 'session-progress-summary',\n TOPIC_SELECTION = 'topic-selection',\n}\n\nexport const PAGES_WITHOUT_GRID = [\n TrialPageId.LEARNING_WORKSHEET,\n TrialPageId.LEARNING_PLAN,\n TrialPageId.CIRCLE_GAME,\n TrialPageId.CIRCLE_PUZZLE,\n TrialPageId.CIRCLE_SKILL,\n];\n\nexport const ACTIONABLE_COMPONENT_IDS = [\n TrialPageId.LEARNING_WORKSHEET,\n TrialPageId.CIRCLE_GAME,\n TrialPageId.LEARNING_PLAN,\n TrialPageId.CIRCLE_PUZZLE,\n TrialPageId.CIRCLE_SKILL,\n];\n\nexport const SCROLLABLE_COMPONENT_IDS = [\n TrialPageId.PRICING,\n TrialPageId.STUDENT_INTRO,\n TrialPageId.COMPLETED_WORKSHEET,\n TrialPageId.PARENT_APP,\n TrialPageId.GOAL_DETAILS,\n TrialPageId.WHITEBOARD,\n TrialPageId.SESSION_PROGRESS_SUMMARY,\n];\n\nexport const CIRCLE_GAME_SLIDES = [\n TrialPageId.CIRCLE_GAME,\n TrialPageId.CIRCLE_PUZZLE,\n TrialPageId.CIRCLE_SKILL,\n];\n\nexport enum DemoType {\n TRIAL_V3 = 'TRIAL_V3',\n TRIAL_V3_3 = 'TRIAL_V3_3',\n}\n\nexport const DEFAULT_BUTTON_STATE = {\n left: { isDisabled: false, isLoading: false },\n right: { isDisabled: false, isLoading: false },\n};\n\nexport const RIGHT_PANEL_WIDTH = 800;\nexport const RIGHT_PANEL_CONTENT_WIDTH = 700;\nexport const TEACHER_LEFT_PANEL_MAX_WIDTH = 480;\nexport const STUDENT_LEFT_PANEL_MAX_WIDTH = 360;\nexport const NAVIGATION_BAR_HEIGHT = 64;\nexport const MINIMUM_SCREEN_HEIGHT = 540;\nexport const TEACHER_TIMEZONE = 'Asia/Calcutta';\nexport const MAXIMUM_TOPICS_TO_SELECT = 3;\n\nexport const HIGH_ENROLLMENT_PROGRAMS_MAP = {\n 'USCC.ALGBRA1': 'algebra_i',\n 'USCC.ALGBRA2': 'algebra_ii',\n 'USCC.GEOMRY': 'geometry',\n 'USCC.PRECAL': 'precalculus',\n 'USCC.CLCULS': 'calculus',\n 'USCC.APPRECAL': 'precalculus',\n};\n"],"names":["TrialPageId","PAGES_WITHOUT_GRID","ACTIONABLE_COMPONENT_IDS","SCROLLABLE_COMPONENT_IDS","CIRCLE_GAME_SLIDES","DemoType","DEFAULT_BUTTON_STATE","RIGHT_PANEL_WIDTH","RIGHT_PANEL_CONTENT_WIDTH","TEACHER_LEFT_PANEL_MAX_WIDTH","STUDENT_LEFT_PANEL_MAX_WIDTH","NAVIGATION_BAR_HEIGHT","MINIMUM_SCREEN_HEIGHT","TEACHER_TIMEZONE","MAXIMUM_TOPICS_TO_SELECT","HIGH_ENROLLMENT_PROGRAMS_MAP"],"mappings":"AAAY,IAAAA,sBAAAA,OACVA,EAAA,kBAAkB,mBAClBA,EAAA,cAAc,eACdA,EAAA,gBAAgB,iBAChBA,EAAA,mBAAmB,oBACnBA,EAAA,gBAAgB,iBAChBA,EAAA,sBAAsB,uBACtBA,EAAA,eAAe,gBACfA,EAAA,YAAY,aACZA,EAAA,qBAAqB,sBACrBA,EAAA,0BAA0B,2BAC1BA,EAAA,kBAAkB,mBAClBA,EAAA,kBAAkB,mBAClBA,EAAA,gBAAgB,iBAChBA,EAAA,iBAAiB,kBACjBA,EAAA,qBAAqB,sBACrBA,EAAA,sBAAsB,uBACtBA,EAAA,eAAe,gBACfA,EAAA,mBAAmB,oBACnBA,EAAA,iBAAiB,kBACjBA,EAAA,gBAAgB,iBAChBA,EAAA,kBAAkB,mBAClBA,EAAA,eAAe,gBACfA,EAAA,aAAa,cACbA,EAAA,aAAa,cACbA,EAAA,qBAAqB,sBACrBA,EAAA,UAAU,WACVA,EAAA,mBAAmB,oBACnBA,EAAA,YAAY,aACZA,EAAA,gBAAgB,iBAChBA,EAAA,eAAe,gBACfA,EAAA,aAAa,cACbA,EAAA,2BAA2B,4BAC3BA,EAAA,kBAAkB,mBAjCRA,IAAAA,KAAA,CAAA,CAAA;AAoCL,MAAMC,IAAqB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAEaC,IAA2B;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAEaC,IAA2B;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAEaC,IAAqB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA;AACF;AAEY,IAAAC,sBAAAA,OACVA,EAAA,WAAW,YACXA,EAAA,aAAa,cAFHA,IAAAA,KAAA,CAAA,CAAA;AAKL,MAAMC,IAAuB;AAAA,EAClC,MAAM,EAAE,YAAY,IAAO,WAAW,GAAM;AAAA,EAC5C,OAAO,EAAE,YAAY,IAAO,WAAW,GAAM;AAC/C,GAEaC,IAAoB,KACpBC,IAA4B,KAC5BC,IAA+B,KAC/BC,IAA+B,KAC/BC,IAAwB,IACxBC,IAAwB,KACxBC,IAAmB,iBACnBC,IAA2B,GAE3BC,IAA+B;AAAA,EAC1C,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,eAAe;AAAA,EACf,eAAe;AAAA,EACf,eAAe;AAAA,EACf,iBAAiB;AACnB;"}
|