@cuemath/leap 3.5.64 → 3.5.66-link0
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/cue-canvas/bottombar/homework-controls.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/sidebar.js +4 -4
- package/dist/features/cue-canvas/sidebar/sidebar.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/toolbar.js +21 -17
- package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js +23 -13
- package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -1
- package/dist/features/milestone/create/api/milestone-config.js.map +1 -1
- package/dist/features/parent-dashboard/modals/trial-report/trial-report.js +1 -1
- package/dist/features/parent-dashboard/modals/trial-report/trial-report.js.map +1 -1
- package/dist/features/sheets/constants/sheet.js +1 -0
- package/dist/features/sheets/constants/sheet.js.map +1 -1
- package/dist/features/timeline/daily-timeline/daily-timeline.js +40 -40
- package/dist/features/timeline/daily-timeline/daily-timeline.js.map +1 -1
- package/dist/features/timeline/monthly-timeline/monthly-report/monthly-report-types.js +1 -1
- package/dist/features/timeline/monthly-timeline/monthly-report/monthly-report-types.js.map +1 -1
- package/dist/features/timeline/monthly-timeline/monthly-timeline-styled.js +8 -5
- package/dist/features/timeline/monthly-timeline/monthly-timeline-styled.js.map +1 -1
- package/dist/features/timeline/monthly-timeline/monthly-timeline.js +35 -35
- package/dist/features/timeline/monthly-timeline/monthly-timeline.js.map +1 -1
- package/dist/features/trial-session/api/trial-home.js +10 -16
- package/dist/features/trial-session/api/trial-home.js.map +1 -1
- package/dist/features/trial-session/api/trial-session-report.js +16 -0
- package/dist/features/trial-session/api/trial-session-report.js.map +1 -0
- package/dist/features/trial-session/api/trial-topics.js +9 -0
- package/dist/features/trial-session/api/trial-topics.js.map +1 -0
- package/dist/features/trial-session/comps/background-grid/background-grid-utils.js +62 -50
- package/dist/features/trial-session/comps/background-grid/background-grid-utils.js.map +1 -1
- package/dist/features/trial-session/comps/class-preference/class-preference-styled.js +5 -14
- package/dist/features/trial-session/comps/class-preference/class-preference-styled.js.map +1 -1
- package/dist/features/trial-session/comps/class-preference/class-preference.js +55 -53
- package/dist/features/trial-session/comps/class-preference/class-preference.js.map +1 -1
- package/dist/features/trial-session/comps/communication-slide/communication-slide-constants.js +3 -2
- package/dist/features/trial-session/comps/communication-slide/communication-slide-constants.js.map +1 -1
- package/dist/features/trial-session/comps/confirmation-modal/hooks/use-confirmation-modal.js +27 -27
- package/dist/features/trial-session/comps/confirmation-modal/hooks/use-confirmation-modal.js.map +1 -1
- package/dist/features/trial-session/comps/learning-session/learning-session-styled.js +19 -18
- package/dist/features/trial-session/comps/learning-session/learning-session-styled.js.map +1 -1
- package/dist/features/trial-session/comps/learning-session/learning-session.js +34 -43
- package/dist/features/trial-session/comps/learning-session/learning-session.js.map +1 -1
- package/dist/features/trial-session/comps/navigation-bar/index.js +56 -58
- package/dist/features/trial-session/comps/navigation-bar/index.js.map +1 -1
- package/dist/features/trial-session/comps/offering-information/offering-information-constants.js +29 -6
- package/dist/features/trial-session/comps/offering-information/offering-information-constants.js.map +1 -1
- package/dist/features/trial-session/comps/offering-information/offering-information.js +74 -64
- package/dist/features/trial-session/comps/offering-information/offering-information.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals-styled.js +10 -9
- package/dist/features/trial-session/comps/school-goals/school-goals-styled.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js +40 -39
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals.js +39 -37
- package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
- package/dist/features/trial-session/comps/session-insights/session-insights-styled.js +12 -20
- package/dist/features/trial-session/comps/session-insights/session-insights-styled.js.map +1 -1
- package/dist/features/trial-session/comps/session-insights/session-insights.js +64 -63
- package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
- package/dist/features/trial-session/comps/session-overview/session-overview-styled.js +13 -13
- package/dist/features/trial-session/comps/session-overview/session-overview-styled.js.map +1 -1
- package/dist/features/trial-session/comps/session-overview/session-overview-utils.js +23 -4
- package/dist/features/trial-session/comps/session-overview/session-overview-utils.js.map +1 -1
- package/dist/features/trial-session/comps/session-overview/session-overview.js +20 -20
- package/dist/features/trial-session/comps/session-overview/session-overview.js.map +1 -1
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-styled.js +61 -0
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-styled.js.map +1 -0
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-types.js +5 -0
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-types.js.map +1 -0
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-view.js +135 -0
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-view.js.map +1 -0
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary.js +53 -0
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary.js.map +1 -0
- package/dist/features/trial-session/comps/session-report/report-404/report-404.js +15 -16
- package/dist/features/trial-session/comps/session-report/report-404/report-404.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/session-report.js +35 -33
- package/dist/features/trial-session/comps/session-report/session-report.js.map +1 -1
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment-styled.js +9 -16
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js +39 -37
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
- package/dist/features/trial-session/comps/student-feedback/student-feedback-styled.js +10 -9
- package/dist/features/trial-session/comps/student-feedback/student-feedback-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-info/student-info-constants.js +35 -0
- package/dist/features/trial-session/comps/student-info/student-info-constants.js.map +1 -0
- package/dist/features/trial-session/comps/student-info/student-info-helpers.js +12 -0
- package/dist/features/trial-session/comps/student-info/student-info-helpers.js.map +1 -0
- package/dist/features/trial-session/comps/student-info/student-info-styled.js +26 -11
- package/dist/features/trial-session/comps/student-info/student-info-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-info/student-info.js +113 -78
- package/dist/features/trial-session/comps/student-info/student-info.js.map +1 -1
- package/dist/features/trial-session/comps/student-personalization/student-personalization-styled.js +3 -12
- package/dist/features/trial-session/comps/student-personalization/student-personalization-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-personalization/student-personalization.js +34 -33
- package/dist/features/trial-session/comps/student-personalization/student-personalization.js.map +1 -1
- package/dist/features/trial-session/comps/student-profile/student-profile.js +45 -44
- package/dist/features/trial-session/comps/student-profile/student-profile.js.map +1 -1
- package/dist/features/trial-session/comps/teacher-intro/teacher-intro.js +9 -8
- package/dist/features/trial-session/comps/teacher-intro/teacher-intro.js.map +1 -1
- package/dist/features/trial-session/comps/test-prep/test-prep-styled.js +11 -19
- package/dist/features/trial-session/comps/test-prep/test-prep-styled.js.map +1 -1
- package/dist/features/trial-session/comps/test-prep/test-prep.js +31 -29
- package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
- package/dist/features/trial-session/comps/topic-selection/topic-selection-styled.js +42 -0
- package/dist/features/trial-session/comps/topic-selection/topic-selection-styled.js.map +1 -0
- package/dist/features/trial-session/comps/topic-selection/topic-selection.js +84 -0
- package/dist/features/trial-session/comps/topic-selection/topic-selection.js.map +1 -0
- package/dist/features/trial-session/comps/whiteboard/whiteboard-styled.js +21 -0
- package/dist/features/trial-session/comps/whiteboard/whiteboard-styled.js.map +1 -0
- package/dist/features/trial-session/comps/whiteboard/whiteboard.js +99 -0
- package/dist/features/trial-session/comps/whiteboard/whiteboard.js.map +1 -0
- package/dist/features/trial-session/comps/worksheet/worksheet.js +35 -33
- package/dist/features/trial-session/comps/worksheet/worksheet.js.map +1 -1
- package/dist/features/trial-session/context/trial-session-context.js +2 -0
- package/dist/features/trial-session/context/trial-session-context.js.map +1 -1
- package/dist/features/trial-session/helper.js +70 -64
- package/dist/features/trial-session/helper.js.map +1 -1
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js +190 -158
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
- package/dist/features/trial-session/right-panel/right-panel-styled.js +8 -8
- package/dist/features/trial-session/right-panel/right-panel-styled.js.map +1 -1
- package/dist/features/trial-session/right-panel/slide-components-map.js +42 -36
- package/dist/features/trial-session/right-panel/slide-components-map.js.map +1 -1
- package/dist/features/trial-session/trial-session-constants.js +22 -18
- 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/features/trial-session/trial-session-view.js +82 -77
- package/dist/features/trial-session/trial-session-view.js.map +1 -1
- package/dist/features/trial-session/trial-session.js +38 -38
- package/dist/features/trial-session/trial-session.js.map +1 -1
- package/dist/features/ui/inputs/checkbox-input/checkbox-input.js +21 -21
- package/dist/features/ui/inputs/checkbox-input/checkbox-input.js.map +1 -1
- package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js +12 -12
- package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js.map +1 -1
- package/dist/features/ui/theme/clrs.js +1 -0
- package/dist/features/ui/theme/clrs.js.map +1 -1
- package/dist/features/worksheet/worksheet/mocks/activity.js +6 -0
- package/dist/features/worksheet/worksheet/mocks/activity.js.map +1 -0
- package/dist/features/worksheet/worksheet/mocks/signed-requests.js +5 -0
- package/dist/features/worksheet/worksheet/mocks/signed-requests.js.map +1 -0
- package/dist/features/worksheet/worksheet/stories/use-canvas-sync-broker-story.js +57 -0
- package/dist/features/worksheet/worksheet/stories/use-canvas-sync-broker-story.js.map +1 -0
- package/dist/features/worksheet/worksheet/stories/worksheet-story-container.js +263 -0
- package/dist/features/worksheet/worksheet/stories/worksheet-story-container.js.map +1 -0
- package/dist/features/worksheet/worksheet/stories/worksheet-student.js +177 -0
- package/dist/features/worksheet/worksheet/stories/worksheet-student.js.map +1 -0
- package/dist/features/worksheet/worksheet/stories/worksheet-teacher.js +268 -0
- package/dist/features/worksheet/worksheet/stories/worksheet-teacher.js.map +1 -0
- package/dist/features/worksheet/worksheet/worksheet-behavior-helper.js +51 -32
- package/dist/features/worksheet/worksheet/worksheet-behavior-helper.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-helpers.js +38 -37
- package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-computed-properties.js +36 -35
- package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-computed-properties.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-questions-from-items.js +61 -58
- package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-questions-from-items.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-types.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js +32 -30
- package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js.map +1 -1
- package/dist/index.d.ts +12 -6
- package/dist/index.js +148 -150
- package/dist/index.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/regex.js +5 -0
- package/dist/node_modules/uuid/dist/esm-browser/regex.js.map +1 -0
- package/dist/node_modules/uuid/dist/esm-browser/rng.js +2 -3
- package/dist/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js +10 -6
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/v4.js +9 -12
- package/dist/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/validate.js +8 -0
- package/dist/node_modules/uuid/dist/esm-browser/validate.js.map +1 -0
- package/dist/types/models/worksheet.js +1 -1
- package/dist/types/models/worksheet.js.map +1 -1
- package/package.json +1 -1
- package/dist/features/sheets/utils/is-v3-worksheet.js +0 -55
- package/dist/features/sheets/utils/is-v3-worksheet.js.map +0 -1
- package/dist/node_modules/uuid/dist/esm-browser/native.js +0 -7
- package/dist/node_modules/uuid/dist/esm-browser/native.js.map +0 -1
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
import { jsx as r, jsxs as c, Fragment as oe } from "react/jsx-runtime";
|
|
2
|
+
import { useState as A, useRef as b, useCallback as o, useEffect as ne } from "react";
|
|
3
|
+
import u from "../../../ui/buttons/button/button.js";
|
|
4
|
+
import f from "../../../ui/layout/flex-view.js";
|
|
5
|
+
import I from "../../../ui/text/text.js";
|
|
6
|
+
import W from "../../constants/events.js";
|
|
7
|
+
import re from "../../worksheet-preview/hooks/use-worksheet-layout.js";
|
|
8
|
+
import { getActivityMockAttemptId as D } from "../mocks/activity.js";
|
|
9
|
+
import { getMockItemsSignedRequest as ae } from "../mocks/signed-requests.js";
|
|
10
|
+
import ie from "../worksheet.js";
|
|
11
|
+
import { isSATAssessmentNode as le } from "../worksheet-helpers.js";
|
|
12
|
+
import de from "./use-canvas-sync-broker-story.js";
|
|
13
|
+
import { HeaderWrapper as pe, WorksheetWrapper as ce } from "./worksheet-student.js";
|
|
14
|
+
import { TRIAL_V3_NODE_TYPES as me } from "../worksheet-behavior-helper.js";
|
|
15
|
+
const ye = (w) => {
|
|
16
|
+
var N;
|
|
17
|
+
const [t, L] = A(), _ = (N = t == null ? void 0 : t.instructor_stimulus) == null ? void 0 : N.toLowerCase(), {
|
|
18
|
+
nodeType: a,
|
|
19
|
+
activityType: h,
|
|
20
|
+
worksheetCompleted: g,
|
|
21
|
+
mockEnabled: m,
|
|
22
|
+
showHeader: R,
|
|
23
|
+
includeGutter: k,
|
|
24
|
+
questionsSignedRequest: P,
|
|
25
|
+
itemsSignedRequest: M,
|
|
26
|
+
inClass: v
|
|
27
|
+
} = w, C = h === "lesson-v3", E = m ? D(a, C) : "attemptId", K = b(null), V = le(a), O = re({
|
|
28
|
+
userType: "TEACHER",
|
|
29
|
+
isSATAssessment: V,
|
|
30
|
+
nodeType: a,
|
|
31
|
+
topOffset: R ? 60 : 0
|
|
32
|
+
}), [y, $] = A(), q = b((e, s) => {
|
|
33
|
+
console.log("Worksheet Teacher Logger:", e, s), e === W.WORKSHEET_V3_ITEMS_FAILED && $(`Failed to load worksheet: ${JSON.stringify(s, null, 2)}`), e === W.WORKSHEET_V3_QUESTION_MISSING_VALIDATION && $(`Question missing validation: ${JSON.stringify(s, null, 2)}`);
|
|
34
|
+
}), S = o(() => {
|
|
35
|
+
}, []), B = o((e) => {
|
|
36
|
+
alert(`Open Question Feedback Modal for item ref: ${e}`);
|
|
37
|
+
}, []), [x, H] = A(), F = o((e) => {
|
|
38
|
+
H(e);
|
|
39
|
+
}, []), { publishStrokes: G, registerCallback: X, initialStrokesData: j } = de(
|
|
40
|
+
"TEACHER",
|
|
41
|
+
void 0
|
|
42
|
+
), n = o((e) => {
|
|
43
|
+
var p, d;
|
|
44
|
+
const s = (p = window.top) == null ? void 0 : p.document.querySelector(
|
|
45
|
+
'iframe[src*="worksheet-student"]'
|
|
46
|
+
), i = (d = s == null ? void 0 : s.contentWindow) == null ? void 0 : d.postMessage;
|
|
47
|
+
i && i(e);
|
|
48
|
+
}, []), z = o(
|
|
49
|
+
(e) => {
|
|
50
|
+
n({
|
|
51
|
+
eventName: "WORKSHEET_QUESTION_RETRY_ALLOWED",
|
|
52
|
+
eventPayload: {
|
|
53
|
+
attemptId: "userAttemptId",
|
|
54
|
+
responseId: e
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
},
|
|
58
|
+
[n]
|
|
59
|
+
), T = o(
|
|
60
|
+
(e, s) => {
|
|
61
|
+
n({
|
|
62
|
+
eventName: "WORKSHEET_RESPONSE_VALIDATED",
|
|
63
|
+
eventPayload: {
|
|
64
|
+
attemptId: "userAttemptId",
|
|
65
|
+
responseId: e,
|
|
66
|
+
rating: s ?? "E"
|
|
67
|
+
// change this
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
},
|
|
71
|
+
[n]
|
|
72
|
+
), J = o(
|
|
73
|
+
(e) => {
|
|
74
|
+
n({
|
|
75
|
+
eventName: "WORKSHEET_OPTIONAL_ITEMS_ASSIGNED",
|
|
76
|
+
eventPayload: {
|
|
77
|
+
attemptId: "userAttemptId",
|
|
78
|
+
itemType: e
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
},
|
|
82
|
+
[n]
|
|
83
|
+
), U = o(
|
|
84
|
+
(e) => {
|
|
85
|
+
n({
|
|
86
|
+
eventName: "WORKSHEET_OPTIONAL_ITEMS_SKIPPED",
|
|
87
|
+
eventPayload: {
|
|
88
|
+
attemptId: "userAttemptId",
|
|
89
|
+
itemType: e
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
},
|
|
93
|
+
[n]
|
|
94
|
+
), Y = o(
|
|
95
|
+
(e, s, i) => {
|
|
96
|
+
n({
|
|
97
|
+
eventName: "WORKSHEET_MEDIA_STATE_UPDATED_BY_TEACHER",
|
|
98
|
+
eventPayload: {
|
|
99
|
+
attemptId: "userAttemptId",
|
|
100
|
+
responseId: e.response_id,
|
|
101
|
+
mediaType: s,
|
|
102
|
+
mediaState: i
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
},
|
|
106
|
+
[n]
|
|
107
|
+
);
|
|
108
|
+
ne(() => {
|
|
109
|
+
window.addEventListener(
|
|
110
|
+
"message",
|
|
111
|
+
(e) => {
|
|
112
|
+
H((s) => {
|
|
113
|
+
const { eventName: i, eventPayload: p } = e.data;
|
|
114
|
+
if (i === "WORKSHEET_RESPONSE_CHANGED") {
|
|
115
|
+
const { responseId: d, response: se } = p;
|
|
116
|
+
return {
|
|
117
|
+
...s,
|
|
118
|
+
[d]: se
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
if (i === "WORKSHEET_BULK_RESPONSES_CHANGED") {
|
|
122
|
+
const { responses: d } = p;
|
|
123
|
+
return {
|
|
124
|
+
...s,
|
|
125
|
+
...d
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
return s;
|
|
129
|
+
});
|
|
130
|
+
},
|
|
131
|
+
!1
|
|
132
|
+
);
|
|
133
|
+
}, []);
|
|
134
|
+
const l = o(
|
|
135
|
+
(e) => {
|
|
136
|
+
t != null && t.response_id && n({
|
|
137
|
+
eventName: "WORKSHEET_RESPONSE_VALIDATED",
|
|
138
|
+
eventPayload: {
|
|
139
|
+
attemptId: E,
|
|
140
|
+
responseId: t == null ? void 0 : t.response_id,
|
|
141
|
+
rating: e !== "H" ? e : void 0,
|
|
142
|
+
skipRemainingQuestions: e === "H" || e === "E"
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
},
|
|
146
|
+
[t, E, n]
|
|
147
|
+
), Q = o(() => l("E"), [l]), Z = o(
|
|
148
|
+
() => l("S"),
|
|
149
|
+
[l]
|
|
150
|
+
), ee = o(() => l("H"), [l]), te = o(() => {
|
|
151
|
+
t != null && t.response_id && T(t.response_id);
|
|
152
|
+
}, [t == null ? void 0 : t.response_id, T]);
|
|
153
|
+
return y ? /* @__PURE__ */ r(
|
|
154
|
+
f,
|
|
155
|
+
{
|
|
156
|
+
$flexDirection: "column",
|
|
157
|
+
$alignItems: "center",
|
|
158
|
+
$justifyContent: "center",
|
|
159
|
+
$height: "100%",
|
|
160
|
+
$gutterX: 4,
|
|
161
|
+
$gapX: 4,
|
|
162
|
+
children: /* @__PURE__ */ r(I, { $renderAs: "ub1-bold", $color: "RED", children: /* @__PURE__ */ r("pre", { children: /* @__PURE__ */ r("code", { children: y }) }) })
|
|
163
|
+
}
|
|
164
|
+
) : /* @__PURE__ */ c(f, { $gutterX: k ? 1 : 0, children: [
|
|
165
|
+
R && /* @__PURE__ */ r(
|
|
166
|
+
pe,
|
|
167
|
+
{
|
|
168
|
+
$height: 60,
|
|
169
|
+
$gutterX: 3.75,
|
|
170
|
+
$flexDirection: "row",
|
|
171
|
+
$alignItems: "center",
|
|
172
|
+
$justifyContent: "space-between",
|
|
173
|
+
$background: "WHITE",
|
|
174
|
+
$borderColor: "BLACK_1",
|
|
175
|
+
children: me.includes(a) ? /* @__PURE__ */ c(oe, { children: [
|
|
176
|
+
/* @__PURE__ */ c(I, { $renderAs: "ah4-black", children: [
|
|
177
|
+
"TEACHER: ",
|
|
178
|
+
a
|
|
179
|
+
] }),
|
|
180
|
+
_ !== "learn" ? /* @__PURE__ */ c(f, { $flexDirection: "row", $flexColumnGapX: 1, children: [
|
|
181
|
+
/* @__PURE__ */ r(
|
|
182
|
+
u,
|
|
183
|
+
{
|
|
184
|
+
renderAs: "primary",
|
|
185
|
+
label: "Too Easy",
|
|
186
|
+
shape: "square",
|
|
187
|
+
size: "small",
|
|
188
|
+
onClick: Q
|
|
189
|
+
}
|
|
190
|
+
),
|
|
191
|
+
/* @__PURE__ */ r(
|
|
192
|
+
u,
|
|
193
|
+
{
|
|
194
|
+
renderAs: "primary",
|
|
195
|
+
label: "Just right",
|
|
196
|
+
shape: "square",
|
|
197
|
+
size: "small",
|
|
198
|
+
onClick: Z
|
|
199
|
+
}
|
|
200
|
+
),
|
|
201
|
+
_ === "try" && /* @__PURE__ */ r(
|
|
202
|
+
u,
|
|
203
|
+
{
|
|
204
|
+
renderAs: "primary",
|
|
205
|
+
label: "Too Hard",
|
|
206
|
+
shape: "square",
|
|
207
|
+
size: "small",
|
|
208
|
+
onClick: ee
|
|
209
|
+
}
|
|
210
|
+
)
|
|
211
|
+
] }) : /* @__PURE__ */ r(
|
|
212
|
+
u,
|
|
213
|
+
{
|
|
214
|
+
renderAs: "primary",
|
|
215
|
+
label: "Validate",
|
|
216
|
+
shape: "square",
|
|
217
|
+
size: "small",
|
|
218
|
+
onClick: te
|
|
219
|
+
}
|
|
220
|
+
)
|
|
221
|
+
] }) : /* @__PURE__ */ c(I, { $renderAs: "ah4-bold", children: [
|
|
222
|
+
"TEACHER: ",
|
|
223
|
+
a
|
|
224
|
+
] })
|
|
225
|
+
}
|
|
226
|
+
),
|
|
227
|
+
/* @__PURE__ */ r(ce, { $topOffset: O.topOffset, $showBorder: !!k, children: /* @__PURE__ */ r(
|
|
228
|
+
ie,
|
|
229
|
+
{
|
|
230
|
+
ref: K,
|
|
231
|
+
userType: "TEACHER",
|
|
232
|
+
userId: "teacher_id",
|
|
233
|
+
studentId: "student_id",
|
|
234
|
+
worksheetName: "Worksheet Name",
|
|
235
|
+
attemptId: m ? D(a, C) : E,
|
|
236
|
+
questionsSignedRequest: P,
|
|
237
|
+
itemsSignedRequest: m ? ae(E) : M,
|
|
238
|
+
layout: O,
|
|
239
|
+
updatedResponses: x,
|
|
240
|
+
loggerRef: q,
|
|
241
|
+
onLoaded: S,
|
|
242
|
+
onErrored: S,
|
|
243
|
+
onActiveQuestionChange: L,
|
|
244
|
+
onResponsesChange: S,
|
|
245
|
+
onPublishStrokes: G,
|
|
246
|
+
onReceiveStrokes: X,
|
|
247
|
+
onMediaStateChange: Y,
|
|
248
|
+
worksheetCompleted: g,
|
|
249
|
+
onResponsesLoaded: F,
|
|
250
|
+
onTeacherValidation: T,
|
|
251
|
+
onAllowRetry: z,
|
|
252
|
+
onOptionalItemAssignment: J,
|
|
253
|
+
onOptionalItemSkip: U,
|
|
254
|
+
openQuestionFeedbackModal: B,
|
|
255
|
+
initialStrokesData: j,
|
|
256
|
+
nodeType: a,
|
|
257
|
+
mode: "review",
|
|
258
|
+
activityType: h,
|
|
259
|
+
inClass: v
|
|
260
|
+
},
|
|
261
|
+
`${a}-${h}-${g}-${m}`
|
|
262
|
+
) })
|
|
263
|
+
] });
|
|
264
|
+
};
|
|
265
|
+
export {
|
|
266
|
+
ye as default
|
|
267
|
+
};
|
|
268
|
+
//# sourceMappingURL=worksheet-teacher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worksheet-teacher.js","sources":["../../../../../src/features/worksheet/worksheet/stories/worksheet-teacher.tsx"],"sourcesContent":["import { useCallback, useEffect, useRef, useState, type FC } from 'react';\n\nimport type { EWorksheetActivity, NODE_TYPES } from '../../../../types/models/worksheet';\nimport type { TInclassMessage } from '../../../communication/hooks/use-inclass-message-broker/use-inclass-message-broker-types';\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport EVENTS from '../../constants/events';\nimport useWorksheetLayout from '../../worksheet-preview/hooks/use-worksheet-layout';\nimport { getActivityMockAttemptId } from '../mocks/activity';\nimport { getMockItemsSignedRequest } from '../mocks/signed-requests';\nimport Worksheet from '../worksheet';\nimport { isSATAssessmentNode } from '../worksheet-helpers';\nimport type {\n IWorksheetCallbackProps,\n IWorksheetProps,\n IWorksheetQuestion,\n IWorksheetRef,\n IWorksheetResponse,\n} from '../worksheet-types';\nimport useCanvasSyncBrokerStory from './use-canvas-sync-broker-story';\nimport { HeaderWrapper, WorksheetWrapper } from './worksheet-student';\nimport { TRIAL_V3_NODE_TYPES } from '../worksheet-behavior-helper';\n\ninterface IWorksheetTeacherStoryProps {\n nodeType: NODE_TYPES;\n activityType: EWorksheetActivity | null;\n worksheetCompleted: boolean;\n mockEnabled: boolean;\n showHeader: boolean;\n includeGutter: boolean;\n questionsSignedRequest: string;\n itemsSignedRequest: string;\n inClass: boolean;\n}\n\nconst WorksheetTeacherStory: FC<IWorksheetTeacherStoryProps> = props => {\n const [activeQuestion, setActiveQuestion] = useState<IWorksheetQuestion | undefined>();\n const instructorStimulus = activeQuestion?.instructor_stimulus?.toLowerCase();\n\n const {\n nodeType,\n activityType,\n worksheetCompleted,\n mockEnabled,\n showHeader,\n includeGutter,\n questionsSignedRequest,\n itemsSignedRequest,\n inClass,\n } = props;\n const isLessonV3 = activityType === 'lesson-v3';\n const attemptId = mockEnabled ? getActivityMockAttemptId(nodeType, isLessonV3) : 'attemptId';\n const ref = useRef<IWorksheetRef>(null);\n const isSATAssessment = isSATAssessmentNode(nodeType);\n\n const layout = useWorksheetLayout({\n userType: 'TEACHER',\n isSATAssessment,\n nodeType,\n topOffset: showHeader ? 60 : 0,\n });\n const [error, setError] = useState<string>();\n const loggerRef = useRef((eventName: string, data?: Record<string, unknown>) => {\n // eslint-disable-next-line no-console\n console.log('Worksheet Teacher Logger:', eventName, data);\n\n if (eventName === EVENTS.WORKSHEET_V3_ITEMS_FAILED) {\n setError(`Failed to load worksheet: ${JSON.stringify(data, null, 2)}`);\n }\n\n if (eventName === EVENTS.WORKSHEET_V3_QUESTION_MISSING_VALIDATION) {\n setError(`Question missing validation: ${JSON.stringify(data, null, 2)}`);\n }\n });\n const fakeCallback = useCallback(() => {}, []);\n\n const handleOpenQuestionFeedbackModal = useCallback<\n NonNullable<IWorksheetProps['openQuestionFeedbackModal']>\n >(itemRef => {\n alert(`Open Question Feedback Modal for item ref: ${itemRef}`);\n }, []);\n\n const [responses, setResponses] = useState<Record<string, IWorksheetResponse> | undefined>();\n\n const handleResponsesChange = useCallback((rsps?: Record<string, IWorksheetResponse>) => {\n setResponses(rsps);\n }, []);\n\n const { publishStrokes, registerCallback, initialStrokesData } = useCanvasSyncBrokerStory(\n 'TEACHER',\n undefined,\n );\n\n const publishMessage = useCallback((message: TInclassMessage) => {\n const studentIframe = window.top?.document.querySelector(\n 'iframe[src*=\"worksheet-student\"]',\n ) as HTMLIFrameElement;\n const postMessage = studentIframe?.contentWindow?.postMessage;\n\n if (postMessage) {\n postMessage(message);\n }\n }, []);\n\n const handleAllowRetry = useCallback<NonNullable<IWorksheetCallbackProps['onAllowRetry']>>(\n questionId => {\n publishMessage({\n eventName: 'WORKSHEET_QUESTION_RETRY_ALLOWED',\n eventPayload: {\n attemptId: 'userAttemptId',\n responseId: questionId,\n },\n });\n },\n [publishMessage],\n );\n\n const handleTeacherValidation = useCallback<\n NonNullable<IWorksheetCallbackProps['onTeacherValidation']>\n >(\n (questionId, rating) => {\n publishMessage({\n eventName: 'WORKSHEET_RESPONSE_VALIDATED',\n eventPayload: {\n attemptId: 'userAttemptId',\n responseId: questionId,\n rating: rating ?? 'E', // change this\n },\n });\n },\n [publishMessage],\n );\n\n const handleOptionalItemAssignment = useCallback<\n NonNullable<IWorksheetCallbackProps['onOptionalItemAssignment']>\n >(\n itemType => {\n publishMessage({\n eventName: 'WORKSHEET_OPTIONAL_ITEMS_ASSIGNED',\n eventPayload: {\n attemptId: 'userAttemptId',\n itemType,\n },\n });\n },\n [publishMessage],\n );\n\n const handleOptionalItemSkip = useCallback<\n NonNullable<IWorksheetCallbackProps['onOptionalItemSkip']>\n >(\n itemType => {\n publishMessage({\n eventName: 'WORKSHEET_OPTIONAL_ITEMS_SKIPPED',\n eventPayload: {\n attemptId: 'userAttemptId',\n itemType,\n },\n });\n },\n [publishMessage],\n );\n\n const handleMediaStateChange = useCallback<\n NonNullable<IWorksheetCallbackProps['onMediaStateChange']>\n >(\n (question, mediaType, mediaState) => {\n publishMessage({\n eventName: 'WORKSHEET_MEDIA_STATE_UPDATED_BY_TEACHER',\n eventPayload: {\n attemptId: 'userAttemptId',\n responseId: question.response_id,\n mediaType,\n mediaState,\n },\n });\n },\n [publishMessage],\n );\n\n useEffect(() => {\n window.addEventListener(\n 'message',\n event => {\n setResponses(prevResponses => {\n const { eventName, eventPayload } = event.data as TInclassMessage;\n\n if (eventName === 'WORKSHEET_RESPONSE_CHANGED') {\n const { responseId, response } = eventPayload;\n\n return {\n ...prevResponses,\n [responseId]: response,\n };\n }\n\n if (eventName === 'WORKSHEET_BULK_RESPONSES_CHANGED') {\n const { responses: bulkResponses } = eventPayload;\n\n return {\n ...prevResponses,\n ...bulkResponses,\n };\n }\n\n return prevResponses;\n });\n },\n false,\n );\n }, []);\n\n const handleRatingChange = useCallback(\n (rating: 'E' | 'S' | 'H') => {\n if (activeQuestion?.response_id) {\n publishMessage({\n eventName: 'WORKSHEET_RESPONSE_VALIDATED',\n eventPayload: {\n attemptId: attemptId,\n responseId: activeQuestion?.response_id,\n rating: rating !== 'H' ? rating : undefined,\n skipRemainingQuestions: rating === 'H' || rating === 'E',\n },\n });\n }\n },\n [activeQuestion, attemptId, publishMessage],\n );\n\n const handleTooEasyButtonClick = useCallback(() => handleRatingChange('E'), [handleRatingChange]);\n const handleJustRightButtonClick = useCallback(\n () => handleRatingChange('S'),\n [handleRatingChange],\n );\n const handleTooHardButtonClick = useCallback(() => handleRatingChange('H'), [handleRatingChange]);\n\n const handleValidateButtonClick = useCallback(() => {\n if (activeQuestion?.response_id) {\n handleTeacherValidation(activeQuestion.response_id);\n }\n }, [activeQuestion?.response_id, handleTeacherValidation]);\n\n if (error) {\n return (\n <FlexView\n $flexDirection=\"column\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $height=\"100%\"\n $gutterX={4}\n $gapX={4}\n >\n <Text $renderAs=\"ub1-bold\" $color=\"RED\">\n <pre>\n <code>{error}</code>\n </pre>\n </Text>\n </FlexView>\n );\n }\n\n return (\n <FlexView $gutterX={includeGutter ? 1 : 0}>\n {showHeader && (\n <HeaderWrapper\n $height={60}\n $gutterX={3.75}\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $background=\"WHITE\"\n $borderColor=\"BLACK_1\"\n >\n {TRIAL_V3_NODE_TYPES.includes(nodeType) ? (\n <>\n <Text $renderAs=\"ah4-black\">TEACHER: {nodeType}</Text>\n {instructorStimulus !== 'learn' ? (\n <FlexView $flexDirection=\"row\" $flexColumnGapX={1}>\n <Button\n renderAs=\"primary\"\n label=\"Too Easy\"\n shape=\"square\"\n size=\"small\"\n onClick={handleTooEasyButtonClick}\n />\n <Button\n renderAs=\"primary\"\n label=\"Just right\"\n shape=\"square\"\n size=\"small\"\n onClick={handleJustRightButtonClick}\n />\n {instructorStimulus === 'try' && (\n <Button\n renderAs=\"primary\"\n label=\"Too Hard\"\n shape=\"square\"\n size=\"small\"\n onClick={handleTooHardButtonClick}\n />\n )}\n </FlexView>\n ) : (\n <Button\n renderAs=\"primary\"\n label=\"Validate\"\n shape=\"square\"\n size=\"small\"\n onClick={handleValidateButtonClick}\n />\n )}\n </>\n ) : (\n <Text $renderAs=\"ah4-bold\">TEACHER: {nodeType}</Text>\n )}\n </HeaderWrapper>\n )}\n <WorksheetWrapper $topOffset={layout.topOffset} $showBorder={!!includeGutter}>\n <Worksheet\n key={`${nodeType}-${activityType}-${worksheetCompleted}-${mockEnabled}`}\n ref={ref}\n userType=\"TEACHER\"\n userId=\"teacher_id\"\n studentId=\"student_id\"\n worksheetName=\"Worksheet Name\"\n attemptId={mockEnabled ? getActivityMockAttemptId(nodeType, isLessonV3) : attemptId}\n questionsSignedRequest={questionsSignedRequest}\n itemsSignedRequest={\n mockEnabled ? getMockItemsSignedRequest(attemptId) : itemsSignedRequest\n }\n layout={layout}\n updatedResponses={responses}\n loggerRef={loggerRef}\n onLoaded={fakeCallback}\n onErrored={fakeCallback}\n onActiveQuestionChange={setActiveQuestion}\n onResponsesChange={fakeCallback}\n onPublishStrokes={publishStrokes}\n onReceiveStrokes={registerCallback}\n onMediaStateChange={handleMediaStateChange}\n worksheetCompleted={worksheetCompleted}\n onResponsesLoaded={handleResponsesChange}\n onTeacherValidation={handleTeacherValidation}\n onAllowRetry={handleAllowRetry}\n onOptionalItemAssignment={handleOptionalItemAssignment}\n onOptionalItemSkip={handleOptionalItemSkip}\n openQuestionFeedbackModal={handleOpenQuestionFeedbackModal}\n initialStrokesData={initialStrokesData}\n nodeType={nodeType}\n mode=\"review\"\n activityType={activityType}\n inClass={inClass}\n />\n </WorksheetWrapper>\n </FlexView>\n );\n};\n\nexport default WorksheetTeacherStory;\n"],"names":["WorksheetTeacherStory","props","activeQuestion","setActiveQuestion","useState","instructorStimulus","_a","nodeType","activityType","worksheetCompleted","mockEnabled","showHeader","includeGutter","questionsSignedRequest","itemsSignedRequest","inClass","isLessonV3","attemptId","getActivityMockAttemptId","ref","useRef","isSATAssessment","isSATAssessmentNode","layout","useWorksheetLayout","error","setError","loggerRef","eventName","data","EVENTS","fakeCallback","useCallback","handleOpenQuestionFeedbackModal","itemRef","responses","setResponses","handleResponsesChange","rsps","publishStrokes","registerCallback","initialStrokesData","useCanvasSyncBrokerStory","publishMessage","message","studentIframe","postMessage","_b","handleAllowRetry","questionId","handleTeacherValidation","rating","handleOptionalItemAssignment","itemType","handleOptionalItemSkip","handleMediaStateChange","question","mediaType","mediaState","useEffect","event","prevResponses","eventPayload","responseId","response","bulkResponses","handleRatingChange","handleTooEasyButtonClick","handleJustRightButtonClick","handleTooHardButtonClick","handleValidateButtonClick","jsx","FlexView","Text","jsxs","HeaderWrapper","TRIAL_V3_NODE_TYPES","Fragment","Button","WorksheetWrapper","Worksheet","getMockItemsSignedRequest"],"mappings":"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"}
|
|
@@ -1,42 +1,58 @@
|
|
|
1
|
-
import { EWorksheetActivity as
|
|
2
|
-
import {
|
|
3
|
-
const
|
|
1
|
+
import { EWorksheetActivity as s } from "../../../types/models/worksheet.js";
|
|
2
|
+
import { NODE_TYPE as a } from "../../sheets/constants/sheet.js";
|
|
3
|
+
const o = [
|
|
4
|
+
a.SAT_ENGLISH_ASSESSMENT,
|
|
5
|
+
a.SAT_MATH_ASSESSMENT,
|
|
6
|
+
a.ASSESSMENT,
|
|
7
|
+
a.CHAPTER_ASSESSMENT,
|
|
8
|
+
a.MASTERY,
|
|
9
|
+
a.TURING_ASSESSMENT,
|
|
10
|
+
a.DYNAMIC,
|
|
11
|
+
a.DIAGNOSTIC,
|
|
12
|
+
a.TURING_ASSESSMENT
|
|
13
|
+
], N = [
|
|
14
|
+
a.TRIAL,
|
|
15
|
+
a.TRIAL_BASIC,
|
|
16
|
+
a.TRIAL_INTERMEDIATE,
|
|
17
|
+
a.TRIAL_ADVANCED,
|
|
18
|
+
a.TRIAL_DIAGNOSTIC
|
|
19
|
+
], _ = (m) => {
|
|
4
20
|
const {
|
|
5
|
-
nodeType:
|
|
6
|
-
activityType:
|
|
7
|
-
inClass:
|
|
8
|
-
isDesmosEnabled:
|
|
9
|
-
userType:
|
|
10
|
-
mode:
|
|
11
|
-
worksheetCompleted:
|
|
12
|
-
} =
|
|
21
|
+
nodeType: c,
|
|
22
|
+
activityType: A,
|
|
23
|
+
inClass: r,
|
|
24
|
+
isDesmosEnabled: u = !1,
|
|
25
|
+
userType: E,
|
|
26
|
+
mode: n,
|
|
27
|
+
worksheetCompleted: t
|
|
28
|
+
} = m, S = N.includes(c), T = o.includes(c), i = n === "resume", e = {
|
|
13
29
|
hints: i,
|
|
14
30
|
navigationMode: "OPEN",
|
|
15
|
-
initialQuestion: i ||
|
|
16
|
-
maximumAttempts:
|
|
31
|
+
initialQuestion: i || E === "TEACHER" && !t ? "CURRENT" : "FIRST",
|
|
32
|
+
maximumAttempts: T ? -1 : 99999,
|
|
17
33
|
minimumAccuracy: 100,
|
|
18
|
-
teacherDiscussionEnabled:
|
|
19
|
-
teacherValidationEnabled:
|
|
20
|
-
canTeacherValidate: !!
|
|
21
|
-
validation:
|
|
34
|
+
teacherDiscussionEnabled: A === s.LESSON_V3_1,
|
|
35
|
+
teacherValidationEnabled: A === s.LESSON_V3 || S,
|
|
36
|
+
canTeacherValidate: !!r && (A === s.LESSON_V3 || S),
|
|
37
|
+
validation: E === "STUDENT" && T ? !!t : !0,
|
|
22
38
|
review: !1,
|
|
23
|
-
canAttempt:
|
|
39
|
+
canAttempt: E === "STUDENT" ? i : !1,
|
|
24
40
|
canExceedAttempts: !0,
|
|
25
41
|
checkButtonLabel: "Check",
|
|
26
42
|
retryButtonLabel: "Retry",
|
|
27
43
|
canMarkForReview: !1,
|
|
28
|
-
canShowDesmosCalc:
|
|
29
|
-
canvasEnabled:
|
|
30
|
-
canScribble:
|
|
44
|
+
canShowDesmosCalc: u,
|
|
45
|
+
canvasEnabled: n !== "preview",
|
|
46
|
+
canScribble: n !== "preview",
|
|
31
47
|
solutionHidden: !1
|
|
32
48
|
};
|
|
33
|
-
switch (
|
|
49
|
+
switch (c) {
|
|
34
50
|
case "LEARNING":
|
|
35
51
|
case "SAT_MATH_LEARNING":
|
|
36
52
|
case "SAT_ENGLISH_LEARNING":
|
|
37
53
|
return {
|
|
38
54
|
...e,
|
|
39
|
-
navigationMode:
|
|
55
|
+
navigationMode: A === s.LESSON_V3 && i && !r ? "OPEN" : "LINEAR",
|
|
40
56
|
attemptsAfterTeacherInterventionNeeded: 2,
|
|
41
57
|
review: !0
|
|
42
58
|
};
|
|
@@ -47,7 +63,7 @@ const I = (u) => {
|
|
|
47
63
|
return {
|
|
48
64
|
...e,
|
|
49
65
|
maximumAttempts: 1,
|
|
50
|
-
navigationMode:
|
|
66
|
+
navigationMode: t ? "OPEN" : "LINEAR",
|
|
51
67
|
review: !0
|
|
52
68
|
};
|
|
53
69
|
case "EXTRA_PRACTICE":
|
|
@@ -71,6 +87,7 @@ const I = (u) => {
|
|
|
71
87
|
return { ...e, navigationMode: "LINEAR" };
|
|
72
88
|
case "TRIAL_DIAGNOSTIC":
|
|
73
89
|
return { ...e, navigationMode: "ADAPTIVE", review: !0 };
|
|
90
|
+
case "TRIAL":
|
|
74
91
|
case "TRIAL_BASIC":
|
|
75
92
|
case "TRIAL_INTERMEDIATE":
|
|
76
93
|
case "TRIAL_ADVANCED":
|
|
@@ -104,13 +121,13 @@ const I = (u) => {
|
|
|
104
121
|
case "MASTERY":
|
|
105
122
|
return {
|
|
106
123
|
...e,
|
|
107
|
-
hintsTimer:
|
|
108
|
-
navigationMode:
|
|
124
|
+
hintsTimer: E === "STUDENT" && i ? 90 : void 0,
|
|
125
|
+
navigationMode: t ? "OPEN" : "LINEAR",
|
|
109
126
|
skippable: !0,
|
|
110
127
|
skippableTime: 90,
|
|
111
|
-
solutionHidden: !
|
|
128
|
+
solutionHidden: !t,
|
|
112
129
|
minimumAccuracy: 0,
|
|
113
|
-
canScribble:
|
|
130
|
+
canScribble: E === "TEACHER" ? t : !0
|
|
114
131
|
};
|
|
115
132
|
case "SUBJECTIVE":
|
|
116
133
|
case "TURING_SUBJECTIVE":
|
|
@@ -119,7 +136,7 @@ const I = (u) => {
|
|
|
119
136
|
maximumAttempts: 1,
|
|
120
137
|
minimumAccuracy: 0,
|
|
121
138
|
validation: !1,
|
|
122
|
-
solutionHidden: !
|
|
139
|
+
solutionHidden: !t
|
|
123
140
|
};
|
|
124
141
|
case "LEGACY":
|
|
125
142
|
case "REVISION":
|
|
@@ -138,18 +155,20 @@ const I = (u) => {
|
|
|
138
155
|
canExceedAttempts: !1,
|
|
139
156
|
minimumAccuracy: 0,
|
|
140
157
|
review: !0,
|
|
141
|
-
navigationMode:
|
|
158
|
+
navigationMode: t ? "OPEN" : "LINEAR"
|
|
142
159
|
};
|
|
143
160
|
default:
|
|
144
161
|
return {
|
|
145
162
|
...e,
|
|
146
163
|
maximumAttempts: 1,
|
|
147
|
-
navigationMode:
|
|
164
|
+
navigationMode: t ? "OPEN" : "LINEAR"
|
|
148
165
|
};
|
|
149
166
|
}
|
|
150
167
|
return e;
|
|
151
168
|
};
|
|
152
169
|
export {
|
|
153
|
-
|
|
170
|
+
o as ASSESSMENT_NODE_TYPES,
|
|
171
|
+
N as TRIAL_V3_NODE_TYPES,
|
|
172
|
+
_ as getWorksheetBehaviour
|
|
154
173
|
};
|
|
155
174
|
//# sourceMappingURL=worksheet-behavior-helper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worksheet-behavior-helper.js","sources":["../../../../src/features/worksheet/worksheet/worksheet-behavior-helper.ts"],"sourcesContent":["import { EWorksheetActivity, type TNodeTypes } from '../../../types/models/worksheet';\nimport {
|
|
1
|
+
{"version":3,"file":"worksheet-behavior-helper.js","sources":["../../../../src/features/worksheet/worksheet/worksheet-behavior-helper.ts"],"sourcesContent":["import { EWorksheetActivity, type TNodeTypes } from '../../../types/models/worksheet';\nimport { NODE_TYPE } from '../../sheets/constants/sheet';\nimport type { TUserTypes } from '../../ui/types';\nimport type { IWorksheetBehavior } from './worksheet-types';\n\nexport const ASSESSMENT_NODE_TYPES: TNodeTypes[] = [\n NODE_TYPE.SAT_ENGLISH_ASSESSMENT,\n NODE_TYPE.SAT_MATH_ASSESSMENT,\n NODE_TYPE.ASSESSMENT,\n NODE_TYPE.CHAPTER_ASSESSMENT,\n NODE_TYPE.MASTERY,\n NODE_TYPE.TURING_ASSESSMENT,\n NODE_TYPE.DYNAMIC,\n NODE_TYPE.DIAGNOSTIC,\n NODE_TYPE.TURING_ASSESSMENT,\n];\n\nexport const TRIAL_V3_NODE_TYPES: TNodeTypes[] = [\n NODE_TYPE.TRIAL,\n NODE_TYPE.TRIAL_BASIC,\n NODE_TYPE.TRIAL_INTERMEDIATE,\n NODE_TYPE.TRIAL_ADVANCED,\n NODE_TYPE.TRIAL_DIAGNOSTIC,\n];\n\ninterface IGetWorksheetBehaviour {\n (params: {\n nodeType: TNodeTypes;\n activityType: EWorksheetActivity | null;\n inClass?: boolean;\n isDesmosEnabled?: boolean;\n userType: TUserTypes;\n mode: 'resume' | 'review' | 'preview';\n worksheetCompleted?: boolean;\n }): IWorksheetBehavior;\n}\n\nexport const getWorksheetBehaviour: IGetWorksheetBehaviour = params => {\n const {\n nodeType,\n activityType,\n inClass,\n isDesmosEnabled = false,\n userType,\n mode,\n worksheetCompleted,\n } = params;\n const isTrialV3 = TRIAL_V3_NODE_TYPES.includes(nodeType);\n const isAssessment = ASSESSMENT_NODE_TYPES.includes(nodeType);\n const canAttempt = mode === 'resume';\n\n const baseBehavior: IWorksheetBehavior = {\n hints: canAttempt,\n navigationMode: 'OPEN',\n initialQuestion:\n canAttempt || (userType === 'TEACHER' && !worksheetCompleted) ? 'CURRENT' : 'FIRST',\n maximumAttempts: isAssessment ? -1 : 99999,\n minimumAccuracy: 100,\n teacherDiscussionEnabled: activityType === EWorksheetActivity.LESSON_V3_1,\n teacherValidationEnabled: activityType === EWorksheetActivity.LESSON_V3 || isTrialV3,\n canTeacherValidate: !!inClass && (activityType === EWorksheetActivity.LESSON_V3 || isTrialV3),\n validation: userType === 'STUDENT' && isAssessment ? !!worksheetCompleted : true,\n review: false,\n canAttempt: userType === 'STUDENT' ? canAttempt : false,\n canExceedAttempts: true,\n checkButtonLabel: 'Check',\n retryButtonLabel: 'Retry',\n canMarkForReview: false,\n canShowDesmosCalc: isDesmosEnabled,\n canvasEnabled: mode !== 'preview',\n canScribble: mode !== 'preview',\n solutionHidden: false,\n };\n\n switch (nodeType) {\n // LEARNING SHEETS\n case 'LEARNING':\n case 'SAT_MATH_LEARNING':\n case 'SAT_ENGLISH_LEARNING': {\n return {\n ...baseBehavior,\n navigationMode:\n activityType === EWorksheetActivity.LESSON_V3 && canAttempt && !inClass\n ? 'OPEN'\n : 'LINEAR',\n attemptsAfterTeacherInterventionNeeded: 2,\n review: true,\n };\n }\n\n // RECAP SHEETS\n case 'GENERAL':\n case 'REMEDIAL':\n case 'RECAP':\n case 'SAT_MATH_RECAP':\n return {\n ...baseBehavior,\n maximumAttempts: 1,\n navigationMode: !worksheetCompleted ? 'LINEAR' : 'OPEN',\n review: true,\n };\n\n // PRACTICE SHEETS\n case 'EXTRA_PRACTICE':\n case 'TARGET_PRACTICE':\n case 'PRACTICE':\n return { ...baseBehavior, maximumAttempts: 1, review: true };\n\n case 'TURING_PRACTICE':\n return { ...baseBehavior, maximumAttempts: 1 };\n\n //PUZZLE SHEETS\n case 'PUZZLE_CARD':\n return {\n ...baseBehavior,\n navigationMode: 'LINEAR',\n maximumAttempts: -2,\n solutionHidden: true,\n validation: false,\n minimumAccuracy: 0,\n };\n\n case 'PUZZLE_EASY':\n case 'PUZZLE_MEDIUM':\n case 'PUZZLE_HARD':\n return { ...baseBehavior, navigationMode: 'LINEAR' };\n\n // TRIAL SHEETS\n case 'TRIAL_DIAGNOSTIC':\n return { ...baseBehavior, navigationMode: 'ADAPTIVE', review: true };\n\n case 'TRIAL':\n case 'TRIAL_BASIC':\n case 'TRIAL_INTERMEDIATE':\n case 'TRIAL_ADVANCED':\n return {\n ...baseBehavior,\n navigationMode: 'CURRENT',\n review: true,\n };\n\n // ASSESSMENT SHEETS\n case 'ASSESSMENT':\n case 'CHAPTER_ASSESSMENT':\n case 'DIAGNOSTIC':\n case 'TURING_ASSESSMENT':\n return {\n ...baseBehavior,\n minimumAccuracy: 0,\n };\n\n case 'DYNAMIC':\n return {\n ...baseBehavior,\n minimumAccuracy: 0,\n hints: false,\n };\n\n case 'SAT_MATH_ASSESSMENT':\n case 'SAT_ENGLISH_ASSESSMENT':\n return {\n ...baseBehavior,\n canMarkForReview: true,\n minimumAccuracy: 0,\n canvasEnabled: false,\n };\n\n case 'MASTERY':\n return {\n ...baseBehavior,\n hintsTimer: userType === 'STUDENT' && canAttempt ? 90 : undefined,\n navigationMode: !worksheetCompleted ? 'LINEAR' : 'OPEN',\n skippable: true,\n skippableTime: 90,\n solutionHidden: !worksheetCompleted,\n minimumAccuracy: 0,\n canScribble: userType === 'TEACHER' ? worksheetCompleted : true,\n };\n\n // SUBJECTIVE SHEETS\n case 'SUBJECTIVE':\n case 'TURING_SUBJECTIVE':\n return {\n ...baseBehavior,\n maximumAttempts: 1,\n minimumAccuracy: 0,\n validation: false,\n solutionHidden: !worksheetCompleted,\n };\n\n // REVISION SHEETS\n case 'LEGACY':\n case 'REVISION':\n return {\n ...baseBehavior,\n maximumAttempts: 2,\n canExceedAttempts: false,\n minimumAccuracy: 0,\n review: true,\n };\n\n case 'LEVEL2':\n case 'LEVEL3':\n return {\n ...baseBehavior,\n maximumAttempts: 1,\n canExceedAttempts: false,\n minimumAccuracy: 0,\n review: true,\n navigationMode: !worksheetCompleted ? 'LINEAR' : 'OPEN',\n };\n\n default:\n return {\n ...baseBehavior,\n maximumAttempts: 1,\n navigationMode: !worksheetCompleted ? 'LINEAR' : 'OPEN',\n };\n }\n\n return baseBehavior;\n};\n"],"names":["ASSESSMENT_NODE_TYPES","NODE_TYPE","TRIAL_V3_NODE_TYPES","getWorksheetBehaviour","params","nodeType","activityType","inClass","isDesmosEnabled","userType","mode","worksheetCompleted","isTrialV3","isAssessment","canAttempt","baseBehavior","EWorksheetActivity"],"mappings":";;AAKO,MAAMA,IAAsC;AAAA,EACjDC,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,GAEaC,IAAoC;AAAA,EAC/CD,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAcaE,IAAgD,CAAUC,MAAA;AAC/D,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,cAAAC;AAAA,IACA,SAAAC;AAAA,IACA,iBAAAC,IAAkB;AAAA,IAClB,UAAAC;AAAA,IACA,MAAAC;AAAA,IACA,oBAAAC;AAAA,EACE,IAAAP,GACEQ,IAAYV,EAAoB,SAASG,CAAQ,GACjDQ,IAAeb,EAAsB,SAASK,CAAQ,GACtDS,IAAaJ,MAAS,UAEtBK,IAAmC;AAAA,IACvC,OAAOD;AAAA,IACP,gBAAgB;AAAA,IAChB,iBACEA,KAAeL,MAAa,aAAa,CAACE,IAAsB,YAAY;AAAA,IAC9E,iBAAiBE,IAAe,KAAK;AAAA,IACrC,iBAAiB;AAAA,IACjB,0BAA0BP,MAAiBU,EAAmB;AAAA,IAC9D,0BAA0BV,MAAiBU,EAAmB,aAAaJ;AAAA,IAC3E,oBAAoB,CAAC,CAACL,MAAYD,MAAiBU,EAAmB,aAAaJ;AAAA,IACnF,YAAYH,MAAa,aAAaI,IAAe,CAAC,CAACF,IAAqB;AAAA,IAC5E,QAAQ;AAAA,IACR,YAAYF,MAAa,YAAYK,IAAa;AAAA,IAClD,mBAAmB;AAAA,IACnB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,mBAAmBN;AAAA,IACnB,eAAeE,MAAS;AAAA,IACxB,aAAaA,MAAS;AAAA,IACtB,gBAAgB;AAAA,EAAA;AAGlB,UAAQL,GAAU;AAAA,IAEhB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGU;AAAA,QACH,gBACET,MAAiBU,EAAmB,aAAaF,KAAc,CAACP,IAC5D,SACA;AAAA,QACN,wCAAwC;AAAA,QACxC,QAAQ;AAAA,MAAA;AAAA,IAKZ,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGQ;AAAA,QACH,iBAAiB;AAAA,QACjB,gBAAiBJ,IAAgC,SAAX;AAAA,QACtC,QAAQ;AAAA,MAAA;AAAA,IAIZ,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO,EAAE,GAAGI,GAAc,iBAAiB,GAAG,QAAQ;IAExD,KAAK;AACH,aAAO,EAAE,GAAGA,GAAc,iBAAiB,EAAE;AAAA,IAG/C,KAAK;AACI,aAAA;AAAA,QACL,GAAGA;AAAA,QACH,gBAAgB;AAAA,QAChB,iBAAiB;AAAA,QACjB,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,iBAAiB;AAAA,MAAA;AAAA,IAGrB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO,EAAE,GAAGA,GAAc,gBAAgB,SAAS;AAAA,IAGrD,KAAK;AACH,aAAO,EAAE,GAAGA,GAAc,gBAAgB,YAAY,QAAQ;IAEhE,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGA;AAAA,QACH,gBAAgB;AAAA,QAChB,QAAQ;AAAA,MAAA;AAAA,IAIZ,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGA;AAAA,QACH,iBAAiB;AAAA,MAAA;AAAA,IAGrB,KAAK;AACI,aAAA;AAAA,QACL,GAAGA;AAAA,QACH,iBAAiB;AAAA,QACjB,OAAO;AAAA,MAAA;AAAA,IAGX,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGA;AAAA,QACH,kBAAkB;AAAA,QAClB,iBAAiB;AAAA,QACjB,eAAe;AAAA,MAAA;AAAA,IAGnB,KAAK;AACI,aAAA;AAAA,QACL,GAAGA;AAAA,QACH,YAAYN,MAAa,aAAaK,IAAa,KAAK;AAAA,QACxD,gBAAiBH,IAAgC,SAAX;AAAA,QACtC,WAAW;AAAA,QACX,eAAe;AAAA,QACf,gBAAgB,CAACA;AAAA,QACjB,iBAAiB;AAAA,QACjB,aAAaF,MAAa,YAAYE,IAAqB;AAAA,MAAA;AAAA,IAI/D,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGI;AAAA,QACH,iBAAiB;AAAA,QACjB,iBAAiB;AAAA,QACjB,YAAY;AAAA,QACZ,gBAAgB,CAACJ;AAAA,MAAA;AAAA,IAIrB,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGI;AAAA,QACH,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,QAAQ;AAAA,MAAA;AAAA,IAGZ,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAGA;AAAA,QACH,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,QAAQ;AAAA,QACR,gBAAiBJ,IAAgC,SAAX;AAAA,MAAW;AAAA,IAGrD;AACS,aAAA;AAAA,QACL,GAAGI;AAAA,QACH,iBAAiB;AAAA,QACjB,gBAAiBJ,IAAgC,SAAX;AAAA,MAAW;AAAA,EAEvD;AAEO,SAAAI;AACT;"}
|