@cuemath/leap 3.3.15-as1 → 3.3.15-j1
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/assets/lottie/lottie.js +2 -2
- package/dist/assets/lottie/lottie.js.map +1 -1
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message-styled.js +4 -4
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message-styled.js.map +1 -1
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message.js +5 -5
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message.js.map +1 -1
- package/dist/features/auth/comps/pill-button/pill-button.js +19 -19
- package/dist/features/auth/comps/pill-button/pill-button.js.map +1 -1
- package/dist/features/auth/pla-signup/pla-analytics-events.js +5 -4
- package/dist/features/auth/pla-signup/pla-analytics-events.js.map +1 -1
- package/dist/features/auth/pla-signup/signup-header/signup-header.js +1 -1
- package/dist/features/auth/pla-signup/signup-header/signup-header.js.map +1 -1
- package/dist/features/auth/signup/circular-step-wrapper/circular-step-wrapper.js +24 -24
- package/dist/features/auth/signup/circular-step-wrapper/circular-step-wrapper.js.map +1 -1
- package/dist/features/parent-dashboard/api/get-student-profile-summary.js +9 -0
- package/dist/features/parent-dashboard/api/get-student-profile-summary.js.map +1 -0
- package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction-styled.js +10 -0
- package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction-styled.js.map +1 -0
- package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction.js +42 -0
- package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction.js.map +1 -0
- package/dist/features/parent-dashboard/hooks/use-parent-home-data.js +45 -42
- package/dist/features/parent-dashboard/hooks/use-parent-home-data.js.map +1 -1
- package/dist/features/parent-dashboard/hooks/use-student-profile-summary-data.js +24 -0
- package/dist/features/parent-dashboard/hooks/use-student-profile-summary-data.js.map +1 -0
- package/dist/features/parent-dashboard/modals/help-and-support/help-and-support.js +40 -0
- package/dist/features/parent-dashboard/modals/help-and-support/help-and-support.js.map +1 -0
- package/dist/features/parent-dashboard/modals/student-login-info/student-login-info.js +44 -0
- package/dist/features/parent-dashboard/modals/student-login-info/student-login-info.js.map +1 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-helpers.js +32 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-helpers.js.map +1 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-styled.js +12 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-styled.js.map +1 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary.js +44 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary.js.map +1 -0
- package/dist/features/parent-dashboard/modals/trial-report/trial-report-styled.js +13 -0
- package/dist/features/parent-dashboard/modals/trial-report/trial-report-styled.js.map +1 -0
- package/dist/features/parent-dashboard/modals/trial-report/trial-report.js +28 -0
- package/dist/features/parent-dashboard/modals/trial-report/trial-report.js.map +1 -0
- package/dist/features/parent-dashboard/modals/tutor-change/tutor-change-constants.js +43 -0
- package/dist/features/parent-dashboard/modals/tutor-change/tutor-change-constants.js.map +1 -0
- package/dist/features/parent-dashboard/modals/tutor-change/tutor-change-styled.js +59 -0
- package/dist/features/parent-dashboard/modals/tutor-change/tutor-change-styled.js.map +1 -0
- package/dist/features/parent-dashboard/modals/tutor-change/tutor-change.js +86 -0
- package/dist/features/parent-dashboard/modals/tutor-change/tutor-change.js.map +1 -0
- package/dist/features/parent-dashboard/parent-dashboard-types.js +3 -2
- package/dist/features/parent-dashboard/parent-dashboard-types.js.map +1 -1
- package/dist/features/parent-dashboard/parent-dashboard-view.js +139 -127
- package/dist/features/parent-dashboard/parent-dashboard-view.js.map +1 -1
- package/dist/features/trial-session/comps/pla/session-summary/session-summary-constants.js +8 -7
- package/dist/features/trial-session/comps/pla/session-summary/session-summary-constants.js.map +1 -1
- package/dist/features/trial-session/comps/pla/session-summary/session-summary.js +27 -26
- package/dist/features/trial-session/comps/pla/session-summary/session-summary.js.map +1 -1
- package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card.js +16 -16
- package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/report-information/report-information-styled.js +15 -13
- package/dist/features/trial-session/comps/session-report/report-information/report-information-styled.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/report-information/report-information.js +1 -1
- package/dist/features/trial-session/comps/session-report/report-information/report-information.js.map +1 -1
- package/dist/features/ui/constants/z-index.js +2 -5
- package/dist/features/ui/constants/z-index.js.map +1 -1
- package/dist/features/utils/utils.js +18 -18
- package/dist/features/utils/utils.js.map +1 -1
- package/dist/index.d.ts +55 -75
- package/dist/index.js +556 -552
- package/dist/index.js.map +1 -1
- package/dist/node_modules/decode-uri-component/index.js.map +1 -0
- package/dist/node_modules/query-string/base.js +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/native.js +7 -0
- package/dist/node_modules/uuid/dist/esm-browser/native.js.map +1 -0
- package/dist/node_modules/uuid/dist/esm-browser/rng.js +3 -2
- package/dist/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js +6 -10
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/v4.js +12 -9
- package/dist/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
- package/dist/static/error.dd744fa5.json +1 -0
- package/dist/static/username.2c755605.json +1 -0
- package/package.json +1 -1
- package/dist/features/hooks/use-visibility-change.js +0 -12
- package/dist/features/hooks/use-visibility-change.js.map +0 -1
- package/dist/features/ui/timers/class-time/animate.js +0 -100
- package/dist/features/ui/timers/class-time/animate.js.map +0 -1
- package/dist/features/ui/timers/class-time/animations/open-close.js +0 -93
- package/dist/features/ui/timers/class-time/animations/open-close.js.map +0 -1
- package/dist/features/ui/timers/class-time/animations/ripple.js +0 -44
- package/dist/features/ui/timers/class-time/animations/ripple.js.map +0 -1
- package/dist/features/ui/timers/class-time/class-time.js +0 -140
- package/dist/features/ui/timers/class-time/class-time.js.map +0 -1
- package/dist/features/ui/timers/class-time/constants.js +0 -31
- package/dist/features/ui/timers/class-time/constants.js.map +0 -1
- package/dist/features/ui/timers/clock/clock.js +0 -25
- package/dist/features/ui/timers/clock/clock.js.map +0 -1
- package/dist/features/ui/timers/timer/timer.js +0 -63
- package/dist/features/ui/timers/timer/timer.js.map +0 -1
- package/dist/node_modules/query-string/node_modules/decode-uri-component/index.js.map +0 -1
- package/dist/node_modules/uuid/dist/esm-browser/regex.js +0 -5
- package/dist/node_modules/uuid/dist/esm-browser/regex.js.map +0 -1
- package/dist/node_modules/uuid/dist/esm-browser/validate.js +0 -8
- package/dist/node_modules/uuid/dist/esm-browser/validate.js.map +0 -1
- package/dist/static/error.cbe1ddde.json +0 -1
- package/dist/static/username.9e034d51.json +0 -1
- /package/dist/node_modules/{query-string/node_modules/decode-uri-component → decode-uri-component}/index.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tutor-change-styled.js","sources":["../../../../../src/features/parent-dashboard/modals/tutor-change/tutor-change-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\n\nexport const Container = styled(FlexView)`\n max-width: 560px;\n border: ${({ theme }) => `1px solid ${theme.colors.BLACK_5}`};\n`;\n\nexport const OuterWrapper = styled(FlexView)`\n overflow-y: auto;\n max-height: 468px;\n ${({ theme }) => theme.mediaQueries.minWidthTablet} {\n max-height: unset;\n overflow-y: hidden;\n })}\n`;\n\nexport const ContentWrapper = styled(FlexView)`\n padding-top: 0;\n ${({ theme }) => theme.mediaQueries.minWidthTablet} {\n max-height: 300px;\n overflow-y: auto;\n })}\n`;\n\nexport const FooterWrapper = styled(FlexView)`\n padding-bottom: 24px;\n ${({ theme }) => theme.mediaQueries.minWidthTablet} {\n border-top: ${({ theme }) => `1px solid ${theme.colors.BLACK_5}`};\n padding-bottom: 40px;\n })}\n`;\n\nexport const StyledTextArea = styled.textarea(({ theme }) => {\n const {\n colors: { WHITE, WHITE_T_38, BLACK_2, BLACK_5 },\n layout: { gutter },\n } = theme;\n\n return `border: 1px solid ${BLACK_5};\n width: 100%;\n min-height: ${gutter * 5}px;\n padding: 16px;\n background-color: ${BLACK_2};\n white-space: pre-line;\n font-family: 'Untitled Sans Regular';\n font-weight: 400;\n font-size: 14px;\n line-height: 24px;\n color: ${WHITE};\n resize: none;\n outline: none;\n &::placeholder {\n color: ${WHITE_T_38};\n }\n\n &:focus {\n outline: none;\n }\n`;\n});\n"],"names":["Container","styled","FlexView","theme","OuterWrapper","ContentWrapper","FooterWrapper","StyledTextArea","WHITE","WHITE_T_38","BLACK_2","BLACK_5","gutter"],"mappings":";;AAIa,MAAAA,IAAYC,EAAOC,CAAQ;AAAA;AAAA,YAE5B,CAAC,EAAE,OAAAC,EAAM,MAAM,aAAaA,EAAM,OAAO,OAAO,EAAE;AAAA,GAGjDC,IAAeH,EAAOC,CAAQ;AAAA;AAAA;AAAA,IAGvC,CAAC,EAAE,OAAAC,EAAA,MAAYA,EAAM,aAAa,cAAc;AAAA;AAAA;AAAA;AAAA,GAMvCE,IAAiBJ,EAAOC,CAAQ;AAAA;AAAA,IAEzC,CAAC,EAAE,OAAAC,EAAA,MAAYA,EAAM,aAAa,cAAc;AAAA;AAAA;AAAA;AAAA,GAMvCG,IAAgBL,EAAOC,CAAQ;AAAA;AAAA,IAExC,CAAC,EAAE,OAAAC,EAAA,MAAYA,EAAM,aAAa,cAAc;AAAA,kBAClC,CAAC,EAAE,OAAAA,EAAM,MAAM,aAAaA,EAAM,OAAO,OAAO,EAAE;AAAA;AAAA;AAAA,GAKvDI,IAAiBN,EAAO,SAAS,CAAC,EAAE,OAAAE,QAAY;AACrD,QAAA;AAAA,IACJ,QAAQ,EAAE,OAAAK,GAAO,YAAAC,GAAY,SAAAC,GAAS,SAAAC,EAAQ;AAAA,IAC9C,QAAQ,EAAE,QAAAC,EAAO;AAAA,EACf,IAAAT;AAEJ,SAAO,qBAAqBQ,CAAO;AAAA;AAAA,gBAErBC,IAAS,CAAC;AAAA;AAAA,sBAEJF,CAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAMlBF,CAAK;AAAA;AAAA;AAAA;AAAA,aAIHC,CAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOvB,CAAC;"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { jsxs as i, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { memo as R, useState as p, useRef as w, useCallback as u, useEffect as A } from "react";
|
|
3
|
+
import { useTheme as E } from "styled-components";
|
|
4
|
+
import O from "../../../auth/comps/pill-button/pill-button.js";
|
|
5
|
+
import h from "../../../ui/buttons/text-button/text-button.js";
|
|
6
|
+
import I from "../../../ui/layout/flex-view.js";
|
|
7
|
+
import X from "../../../ui/modals/use-modal-actions.js";
|
|
8
|
+
import S from "../../../ui/modals/use-modal-params.js";
|
|
9
|
+
import W from "../../../ui/text/text.js";
|
|
10
|
+
import { EDeviceType as k } from "../../../ui/theme/constants.js";
|
|
11
|
+
import { changeTutorReasons as M, TUTOR_CHANGE_REASON_IDS as v } from "./tutor-change-constants.js";
|
|
12
|
+
import { Container as B, OuterWrapper as H, ContentWrapper as _, StyledTextArea as D, FooterWrapper as y } from "./tutor-change-styled.js";
|
|
13
|
+
const G = () => {
|
|
14
|
+
const { device: f } = E(), [n, C] = p(""), [l, $] = p(""), o = f <= k.MOBILE, { closeModal: c } = X(), a = w(null), { onContinue: m, demoId: d } = S(), x = u((e) => C(e), []), b = u((e) => {
|
|
15
|
+
$(e.target.value);
|
|
16
|
+
}, []), t = n === v.OTHER, T = !n || t && !l.trim(), g = u(() => {
|
|
17
|
+
c(), m(d, n, t ? l : "");
|
|
18
|
+
}, [c, m, d, n, t, l]);
|
|
19
|
+
return A(() => {
|
|
20
|
+
var e, s;
|
|
21
|
+
t && a.current && ((e = a.current) == null || e.scrollIntoView({ behavior: "smooth" }), (s = a.current) == null || s.focus());
|
|
22
|
+
}, [t]), /* @__PURE__ */ i(B, { $background: "BLACK_2", $width: "100%", $borderColor: "BLACK_5", children: [
|
|
23
|
+
/* @__PURE__ */ i(H, { $flex: 1, children: [
|
|
24
|
+
/* @__PURE__ */ r(I, { $gutterX: o ? 1 : 2.5, $gapX: o ? 1.5 : 2.5, children: /* @__PURE__ */ r(W, { $renderAs: "ah4-bold", $renderOnMobileAs: "ab1-bold", $color: "WHITE", children: "What didn't work well with the current tutor?" }) }),
|
|
25
|
+
/* @__PURE__ */ i(
|
|
26
|
+
_,
|
|
27
|
+
{
|
|
28
|
+
$flex: 1,
|
|
29
|
+
$gutterX: o ? 1 : 2.5,
|
|
30
|
+
$gapX: o ? 1 : 2.5,
|
|
31
|
+
$width: "100%",
|
|
32
|
+
$alignItems: "flex-start",
|
|
33
|
+
$flexRowGapX: 1,
|
|
34
|
+
children: [
|
|
35
|
+
M.map(({ id: e, label: s }) => /* @__PURE__ */ r(
|
|
36
|
+
O,
|
|
37
|
+
{
|
|
38
|
+
selected: n === e,
|
|
39
|
+
label: s,
|
|
40
|
+
id: e,
|
|
41
|
+
onClick: x,
|
|
42
|
+
isTransparent: !0
|
|
43
|
+
},
|
|
44
|
+
e
|
|
45
|
+
)),
|
|
46
|
+
t && /* @__PURE__ */ r(
|
|
47
|
+
D,
|
|
48
|
+
{
|
|
49
|
+
placeholder: "Tell us more about your experience...",
|
|
50
|
+
id: "text-area",
|
|
51
|
+
ref: a,
|
|
52
|
+
value: l,
|
|
53
|
+
onChange: b
|
|
54
|
+
}
|
|
55
|
+
)
|
|
56
|
+
]
|
|
57
|
+
}
|
|
58
|
+
)
|
|
59
|
+
] }),
|
|
60
|
+
/* @__PURE__ */ i(
|
|
61
|
+
y,
|
|
62
|
+
{
|
|
63
|
+
$gutterX: o ? 1 : 2.5,
|
|
64
|
+
$gapX: o ? 1 : 2.5,
|
|
65
|
+
$flexDirection: "row",
|
|
66
|
+
$flexColumnGapX: 1.5,
|
|
67
|
+
children: [
|
|
68
|
+
/* @__PURE__ */ r(
|
|
69
|
+
h,
|
|
70
|
+
{
|
|
71
|
+
label: "Continue",
|
|
72
|
+
onClick: g,
|
|
73
|
+
color: "WHITE",
|
|
74
|
+
disabled: T
|
|
75
|
+
}
|
|
76
|
+
),
|
|
77
|
+
/* @__PURE__ */ r(h, { label: "Close", onClick: c, color: "WHITE" })
|
|
78
|
+
]
|
|
79
|
+
}
|
|
80
|
+
)
|
|
81
|
+
] });
|
|
82
|
+
}, Y = R(G);
|
|
83
|
+
export {
|
|
84
|
+
Y as default
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=tutor-change.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tutor-change.js","sources":["../../../../../src/features/parent-dashboard/modals/tutor-change/tutor-change.tsx"],"sourcesContent":["import type { ITutorChangeModalParams } from './tutor-change-types';\n\nimport { memo, useCallback, useEffect, useRef, useState, type ChangeEvent } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport PillButton from '../../../auth/comps/pill-button/pill-button';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport useModalActions from '../../../ui/modals/use-modal-actions';\nimport useModalParams from '../../../ui/modals/use-modal-params';\nimport Text from '../../../ui/text/text';\nimport { EDeviceType } from '../../../ui/theme/constants';\nimport { TUTOR_CHANGE_REASON_IDS, changeTutorReasons } from './tutor-change-constants';\nimport * as Styled from './tutor-change-styled';\n\nconst TutorChange = () => {\n const { device } = useTheme();\n const [reason, setReason] = useState('');\n const [otherReason, setOtherReason] = useState('');\n const isMobile = device <= EDeviceType.MOBILE;\n const { closeModal } = useModalActions();\n const textAreaRef = useRef<HTMLTextAreaElement | null>(null);\n const { onContinue, demoId } = useModalParams<ITutorChangeModalParams>();\n const handleSelectReason = useCallback((id: string) => setReason(id), []);\n\n const handleOtherReasonChange = useCallback((event: ChangeEvent<HTMLTextAreaElement>) => {\n setOtherReason(event.target.value);\n }, []);\n const isOtherReasonSelected = reason === TUTOR_CHANGE_REASON_IDS.OTHER;\n const isSubmitDisabled = !reason || (isOtherReasonSelected && !otherReason.trim());\n\n const handleContinue = useCallback(() => {\n closeModal();\n onContinue(demoId, reason, isOtherReasonSelected ? otherReason : '');\n }, [closeModal, onContinue, demoId, reason, isOtherReasonSelected, otherReason]);\n\n useEffect(() => {\n if (isOtherReasonSelected && textAreaRef.current) {\n textAreaRef.current?.scrollIntoView({ behavior: 'smooth' });\n textAreaRef.current?.focus();\n }\n }, [isOtherReasonSelected]);\n\n return (\n <Styled.Container $background=\"BLACK_2\" $width=\"100%\" $borderColor=\"BLACK_5\">\n <Styled.OuterWrapper $flex={1}>\n <FlexView $gutterX={isMobile ? 1 : 2.5} $gapX={isMobile ? 1.5 : 2.5}>\n <Text $renderAs=\"ah4-bold\" $renderOnMobileAs=\"ab1-bold\" $color=\"WHITE\">\n What didn't work well with the current tutor?\n </Text>\n </FlexView>\n <Styled.ContentWrapper\n $flex={1}\n $gutterX={isMobile ? 1 : 2.5}\n $gapX={isMobile ? 1 : 2.5}\n $width={'100%'}\n $alignItems=\"flex-start\"\n $flexRowGapX={1}\n >\n {changeTutorReasons.map(({ id, label }) => (\n <PillButton\n selected={reason === id}\n key={id}\n label={label}\n id={id}\n onClick={handleSelectReason}\n isTransparent\n />\n ))}\n {isOtherReasonSelected && (\n <Styled.StyledTextArea\n placeholder=\"Tell us more about your experience...\"\n id=\"text-area\"\n ref={textAreaRef}\n value={otherReason}\n onChange={handleOtherReasonChange}\n />\n )}\n </Styled.ContentWrapper>\n </Styled.OuterWrapper>\n <Styled.FooterWrapper\n $gutterX={isMobile ? 1 : 2.5}\n $gapX={isMobile ? 1 : 2.5}\n $flexDirection=\"row\"\n $flexColumnGapX={1.5}\n >\n <TextButton\n label=\"Continue\"\n onClick={handleContinue}\n color=\"WHITE\"\n disabled={isSubmitDisabled}\n />\n <TextButton label=\"Close\" onClick={closeModal} color=\"WHITE\" />\n </Styled.FooterWrapper>\n </Styled.Container>\n );\n};\n\nexport default memo(TutorChange);\n"],"names":["TutorChange","device","useTheme","reason","setReason","useState","otherReason","setOtherReason","isMobile","EDeviceType","closeModal","useModalActions","textAreaRef","useRef","onContinue","demoId","useModalParams","handleSelectReason","useCallback","id","handleOtherReasonChange","event","isOtherReasonSelected","TUTOR_CHANGE_REASON_IDS","isSubmitDisabled","handleContinue","useEffect","_a","_b","jsxs","Styled.Container","Styled.OuterWrapper","jsx","FlexView","Text","Styled.ContentWrapper","changeTutorReasons","label","PillButton","Styled.StyledTextArea","Styled.FooterWrapper","TextButton","tutorChange","memo"],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
var
|
|
1
|
+
var N = /* @__PURE__ */ ((_) => (_.S_NO_SHOW = "S_NO_SHOW", _.T_NO_SHOW = "T_NO_SHOW", _))(N || {}), O = /* @__PURE__ */ ((_) => (_.STUDENT_PROFILE = "studentProfile", _.INSIGHTS = "insights", _.LEARNING_PLAN = "learningPlan", _))(O || {});
|
|
2
2
|
export {
|
|
3
|
-
|
|
3
|
+
N as EClassStatus,
|
|
4
|
+
O as ESummaryType
|
|
4
5
|
};
|
|
5
6
|
//# sourceMappingURL=parent-dashboard-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parent-dashboard-types.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-types.ts"],"sourcesContent":["import type { TSession } from '../trial-session/comps/pla/upcoming-sessions/upcoming-sessions-types';\nimport type { ReactElement } from 'react';\n\nexport enum EClassStatus {\n S_NO_SHOW = 'S_NO_SHOW',\n T_NO_SHOW = 'T_NO_SHOW',\n}\nexport interface ISessionDetails {\n completed_sessions: number;\n next_session_start: number;\n next_session_end: number;\n student_demo_id: string;\n upcoming_sessions: TSession[];\n demo_class_status: EClassStatus | null;\n}\n\ninterface IDegreeInfo {\n degree_name: string;\n degree_code: string;\n field_of_study: string;\n}\nexport interface ITeacherDetails {\n first_name: string;\n last_name: string;\n years_of_experience: number;\n number_of_students_taught: number;\n lower_grade: string;\n higher_grade: string;\n degree: IDegreeInfo;\n countries: string[];\n teacher_profile_url: string;\n header_image: string;\n}\n\ninterface PaymentMethodDetails {\n brand: string;\n last_4_digits: string;\n type: string;\n exp_month: number;\n exp_year: number;\n}\n\ninterface IBillingDetails {\n amount: number;\n next_due_date: string;\n payment_method_details: PaymentMethodDetails;\n}\n\nexport interface IParentHome {\n session_details: ISessionDetails;\n teacher_details: ITeacherDetails | null;\n billing_details: IBillingDetails;\n}\n\nexport interface IParentDashboardProps {\n studentName: string;\n
|
|
1
|
+
{"version":3,"file":"parent-dashboard-types.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-types.ts"],"sourcesContent":["import type { TSession } from '../trial-session/comps/pla/upcoming-sessions/upcoming-sessions-types';\nimport type { ReactElement } from 'react';\n\nexport enum EClassStatus {\n S_NO_SHOW = 'S_NO_SHOW',\n T_NO_SHOW = 'T_NO_SHOW',\n}\nexport interface ISessionDetails {\n completed_sessions: number;\n next_session_start: number;\n next_session_end: number;\n student_demo_id: string;\n upcoming_sessions: TSession[];\n demo_class_status: EClassStatus | null;\n user_attempt_id?: string;\n}\n\ninterface IDegreeInfo {\n degree_name: string;\n degree_code: string;\n field_of_study: string;\n}\nexport interface ITeacherDetails {\n first_name: string;\n last_name: string;\n years_of_experience: number;\n number_of_students_taught: number;\n lower_grade: string;\n higher_grade: string;\n degree: IDegreeInfo;\n countries: string[];\n teacher_profile_url: string;\n header_image: string;\n}\n\ninterface PaymentMethodDetails {\n brand: string;\n last_4_digits: string;\n type: string;\n exp_month: number;\n exp_year: number;\n}\n\ninterface IBillingDetails {\n amount: number;\n next_due_date: string;\n payment_method_details: PaymentMethodDetails;\n}\n\nexport interface IParentHome {\n session_details: ISessionDetails;\n teacher_details: ITeacherDetails | null;\n billing_details: IBillingDetails;\n}\n\nexport interface IStudentProfileSummary {\n studentLevel: string;\n studentObjectives: string[] | string;\n learningPlan: string[] | string;\n levelPreference?: string;\n}\n\nexport interface IOnViewSummaryParams extends IStudentProfileSummary {\n userAttemptId?: string;\n}\nexport enum ESummaryType {\n STUDENT_PROFILE = 'studentProfile',\n INSIGHTS = 'insights',\n LEARNING_PLAN = 'learningPlan',\n}\n\nexport interface IParentDashboardProps {\n studentName: string;\n studentId: string;\n onRescheduleDemo: (demoId?: string) => void;\n onChangeTutor: (demoId: string) => void;\n onGetStartedAgain?: () => void;\n onViewSummary?: (key: ESummaryType, summaryData: IOnViewSummaryParams) => void;\n onSwitchUser?: () => void;\n canChangeTutor: boolean;\n isSubscriptionCancelled: boolean;\n HeaderAvatar: ReactElement;\n}\n\nexport interface ISpacingConfig {\n small: number;\n medium: number;\n large: number;\n separator: {\n small: number;\n medium: number;\n large: number;\n extraLarge: number;\n };\n}\n"],"names":["EClassStatus","ESummaryType"],"mappings":"AAGY,IAAAA,sBAAAA,OACVA,EAAA,YAAY,aACZA,EAAA,YAAY,aAFFA,IAAAA,KAAA,CAAA,CAAA,GA8DAC,sBAAAA,OACVA,EAAA,kBAAkB,kBAClBA,EAAA,WAAW,YACXA,EAAA,gBAAgB,gBAHNA,IAAAA,KAAA,CAAA,CAAA;"}
|
|
@@ -1,186 +1,198 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { memo as
|
|
3
|
-
import { useTheme as
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
1
|
+
import { jsxs as o, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { memo as ee, useCallback as t, useMemo as re } from "react";
|
|
3
|
+
import { useTheme as te } from "styled-components";
|
|
4
|
+
import oe from "../auth/pla-signup/onboarding-guide/onboarding-guide.js";
|
|
5
|
+
import ae from "../auth/pla-signup/signup-header/signup-header.js";
|
|
6
|
+
import ne from "../trial-session/comps/pla/next-steps/next-steps.js";
|
|
7
|
+
import ie from "../trial-session/comps/pla/session-status/session-status.js";
|
|
8
|
+
import se from "../trial-session/comps/pla/session-summary/session-summary.js";
|
|
9
|
+
import le from "../trial-session/comps/pla/upcoming-sessions/upcoming-sessions.js";
|
|
10
|
+
import G from "../trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js";
|
|
11
|
+
import ce from "../ui/buttons/button/button.js";
|
|
12
|
+
import me from "../ui/buttons/text-button/text-button.js";
|
|
13
|
+
import he from "../ui/error/error.js";
|
|
14
|
+
import a from "../ui/layout/flex-view.js";
|
|
15
|
+
import pe from "../ui/loader/app-loader/app-loader.js";
|
|
15
16
|
import n from "../ui/separator/separator.js";
|
|
16
|
-
import
|
|
17
|
-
import { EDeviceType as
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import
|
|
21
|
-
import
|
|
22
|
-
import
|
|
23
|
-
import
|
|
24
|
-
import {
|
|
25
|
-
|
|
17
|
+
import K from "../ui/text/text.js";
|
|
18
|
+
import { EDeviceType as de } from "../ui/theme/constants.js";
|
|
19
|
+
import ue from "./comps/compact-header/compact-header.js";
|
|
20
|
+
import fe from "./comps/cuemath-app-features/cuemath-app-features.js";
|
|
21
|
+
import ge from "./comps/math-practice/math-practice.js";
|
|
22
|
+
import Se from "./comps/parent-dashboard-faqs/parent-dashboard-faqs.js";
|
|
23
|
+
import xe from "./hooks/use-parent-home-data.js";
|
|
24
|
+
import be from "./hooks/use-student-profile-summary-data.js";
|
|
25
|
+
import { MOBILE_SPACING as Le, DESKTOP_SPACING as Ce } from "./parent-dashboard-constants.js";
|
|
26
|
+
import { MathPracticeWrapper as Te, Container as $e, ContentWrapper as Pe } from "./parent-dashboard-styled.js";
|
|
27
|
+
const Ve = ee(
|
|
26
28
|
({
|
|
27
|
-
studentName:
|
|
28
|
-
|
|
29
|
-
onRescheduleDemo:
|
|
30
|
-
onViewSummary:
|
|
31
|
-
onGetStartedAgain:
|
|
32
|
-
onChangeTutor:
|
|
33
|
-
canChangeTutor:
|
|
34
|
-
onSwitchUser:
|
|
35
|
-
isSubscriptionCancelled:
|
|
36
|
-
HeaderAvatar:
|
|
29
|
+
studentName: c,
|
|
30
|
+
studentId: u,
|
|
31
|
+
onRescheduleDemo: f,
|
|
32
|
+
onViewSummary: m,
|
|
33
|
+
onGetStartedAgain: p,
|
|
34
|
+
onChangeTutor: g,
|
|
35
|
+
canChangeTutor: S,
|
|
36
|
+
onSwitchUser: x,
|
|
37
|
+
isSubscriptionCancelled: z,
|
|
38
|
+
HeaderAvatar: N
|
|
37
39
|
}) => {
|
|
38
|
-
const { device:
|
|
39
|
-
teacherDetails:
|
|
40
|
-
teacherName:
|
|
41
|
-
completedSessions:
|
|
42
|
-
nextSessionStart:
|
|
43
|
-
nextSessionEnd:
|
|
44
|
-
classStatus:
|
|
45
|
-
upcomingSessions:
|
|
40
|
+
const { device: R } = te(), d = R <= de.MOBILE, {
|
|
41
|
+
teacherDetails: i,
|
|
42
|
+
teacherName: b,
|
|
43
|
+
completedSessions: L,
|
|
44
|
+
nextSessionStart: C,
|
|
45
|
+
nextSessionEnd: T,
|
|
46
|
+
classStatus: $,
|
|
47
|
+
upcomingSessions: P,
|
|
46
48
|
isDemoDone: s,
|
|
47
|
-
isOnlyOneSessionCompleted:
|
|
49
|
+
isOnlyOneSessionCompleted: D,
|
|
48
50
|
isMoreThanOneSessionCompleted: h,
|
|
49
|
-
showLoading:
|
|
50
|
-
demoId:
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
51
|
+
showLoading: X = !1,
|
|
52
|
+
demoId: l,
|
|
53
|
+
fetchData: y,
|
|
54
|
+
isProcessingFailed: J,
|
|
55
|
+
userAttemptId: A
|
|
56
|
+
} = xe(u), { summaryInfo: M, fetchSummaryData: O } = be(u), Q = t(() => {
|
|
57
|
+
y(), O();
|
|
58
|
+
}, [y, O]), E = t(() => {
|
|
59
|
+
f(l);
|
|
60
|
+
}, [l, f]), I = t(() => {
|
|
61
|
+
l && g(l);
|
|
62
|
+
}, [l, g]), r = re(
|
|
63
|
+
() => d ? Le : Ce,
|
|
64
|
+
[d]
|
|
65
|
+
), k = t(
|
|
66
|
+
(Z) => {
|
|
67
|
+
m == null || m(Z, { ...M, userAttemptId: A });
|
|
68
|
+
},
|
|
69
|
+
[m, M, A]
|
|
70
|
+
), H = d ? "100%" : 200, U = t(
|
|
71
|
+
() => /* @__PURE__ */ o(a, { children: [
|
|
72
|
+
/* @__PURE__ */ e(ae, {}),
|
|
61
73
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
62
|
-
/* @__PURE__ */ e(
|
|
63
|
-
|
|
74
|
+
/* @__PURE__ */ e(oe, { orientation: "horizontal" }),
|
|
75
|
+
p && /* @__PURE__ */ o(a, { children: [
|
|
64
76
|
/* @__PURE__ */ e(n, { height: r.medium }),
|
|
65
77
|
/* @__PURE__ */ e(
|
|
66
|
-
|
|
78
|
+
ce,
|
|
67
79
|
{
|
|
68
80
|
label: "Get Started",
|
|
69
81
|
renderAs: "yellow-dark",
|
|
70
82
|
shape: "square",
|
|
71
|
-
width:
|
|
72
|
-
onClick:
|
|
83
|
+
width: H,
|
|
84
|
+
onClick: p
|
|
73
85
|
}
|
|
74
86
|
)
|
|
75
87
|
] })
|
|
76
88
|
] }),
|
|
77
|
-
[r,
|
|
78
|
-
),
|
|
89
|
+
[r, H, p]
|
|
90
|
+
), F = t(
|
|
79
91
|
() => /* @__PURE__ */ e(
|
|
80
|
-
|
|
92
|
+
ie,
|
|
81
93
|
{
|
|
82
|
-
completedSessions:
|
|
83
|
-
nextSessionStartTime:
|
|
84
|
-
teacherName:
|
|
85
|
-
status:
|
|
86
|
-
nextSessionEndTime:
|
|
87
|
-
studentName:
|
|
88
|
-
onRescheduleClick:
|
|
94
|
+
completedSessions: L,
|
|
95
|
+
nextSessionStartTime: C,
|
|
96
|
+
teacherName: b,
|
|
97
|
+
status: $,
|
|
98
|
+
nextSessionEndTime: T,
|
|
99
|
+
studentName: c,
|
|
100
|
+
onRescheduleClick: E
|
|
89
101
|
}
|
|
90
102
|
),
|
|
91
103
|
[
|
|
92
|
-
b,
|
|
93
104
|
L,
|
|
94
|
-
x,
|
|
95
|
-
T,
|
|
96
105
|
C,
|
|
97
|
-
|
|
98
|
-
|
|
106
|
+
b,
|
|
107
|
+
$,
|
|
108
|
+
T,
|
|
109
|
+
c,
|
|
110
|
+
E
|
|
99
111
|
]
|
|
100
|
-
),
|
|
112
|
+
), W = t(() => !i || s ? null : /* @__PURE__ */ o(a, { children: [
|
|
101
113
|
/* @__PURE__ */ e(n, { height: r.separator.large }),
|
|
102
|
-
/* @__PURE__ */ e(
|
|
103
|
-
] }), [
|
|
114
|
+
/* @__PURE__ */ e(G, { teacherProfile: i })
|
|
115
|
+
] }), [i, s, r.separator.large]), w = t(() => h ? null : /* @__PURE__ */ o(a, { children: [
|
|
104
116
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
105
117
|
/* @__PURE__ */ e(
|
|
106
|
-
|
|
118
|
+
se,
|
|
107
119
|
{
|
|
108
120
|
isDemoDone: s,
|
|
109
|
-
studentName:
|
|
110
|
-
onViewSummary:
|
|
121
|
+
studentName: c,
|
|
122
|
+
onViewSummary: k
|
|
111
123
|
}
|
|
112
124
|
)
|
|
113
125
|
] }), [
|
|
114
126
|
h,
|
|
115
127
|
r.separator.extraLarge,
|
|
116
128
|
s,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
]),
|
|
129
|
+
c,
|
|
130
|
+
k
|
|
131
|
+
]), B = t(() => S ? /* @__PURE__ */ o(a, { children: [
|
|
120
132
|
/* @__PURE__ */ e(n, { height: r.separator.small }),
|
|
121
|
-
/* @__PURE__ */
|
|
122
|
-
/* @__PURE__ */ e(
|
|
133
|
+
/* @__PURE__ */ o(a, { $flexDirection: "row", $flexColumnGapX: 0.25, children: [
|
|
134
|
+
/* @__PURE__ */ e(K, { $renderAs: "ub1", $renderOnMobileAs: "ub2", $color: "WHITE", children: "Not the right fit for your child?" }),
|
|
123
135
|
/* @__PURE__ */ e(
|
|
124
|
-
|
|
136
|
+
me,
|
|
125
137
|
{
|
|
126
138
|
color: "WHITE_1",
|
|
127
139
|
sizeOnMobile: "small",
|
|
128
140
|
label: "Try another tutor",
|
|
129
|
-
onClick:
|
|
141
|
+
onClick: I
|
|
130
142
|
}
|
|
131
143
|
)
|
|
132
144
|
] })
|
|
133
|
-
] }), [
|
|
145
|
+
] }) : null, [S, r.separator.small, I]), _ = t(() => i ? /* @__PURE__ */ o(a, { children: [
|
|
134
146
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
135
|
-
/* @__PURE__ */ e(
|
|
147
|
+
/* @__PURE__ */ e(K, { $renderAs: "ah4-bold", $renderOnMobileAs: "ab1-bold", $color: "WHITE", children: "Know your tutor" }),
|
|
136
148
|
/* @__PURE__ */ e(n, { height: r.separator.medium }),
|
|
137
|
-
/* @__PURE__ */ e(
|
|
138
|
-
|
|
139
|
-
] }) : null, [
|
|
149
|
+
/* @__PURE__ */ e(G, { teacherProfile: i }),
|
|
150
|
+
B()
|
|
151
|
+
] }) : null, [i, r.separator, B]), j = t(() => D ? /* @__PURE__ */ o(a, { children: [
|
|
140
152
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
141
|
-
/* @__PURE__ */ e(
|
|
153
|
+
/* @__PURE__ */ e(ne, {}),
|
|
142
154
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
143
|
-
/* @__PURE__ */ e(
|
|
144
|
-
|
|
155
|
+
/* @__PURE__ */ e(le, { sessions: P }),
|
|
156
|
+
_()
|
|
145
157
|
] }) : null, [
|
|
146
|
-
|
|
158
|
+
D,
|
|
147
159
|
r.separator.extraLarge,
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
]),
|
|
160
|
+
P,
|
|
161
|
+
_
|
|
162
|
+
]), q = t(() => s ? /* @__PURE__ */ o(a, { children: [
|
|
151
163
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
152
|
-
/* @__PURE__ */ e(
|
|
153
|
-
] }) : null, [s, r.separator.extraLarge]),
|
|
164
|
+
/* @__PURE__ */ e(fe, {})
|
|
165
|
+
] }) : null, [s, r.separator.extraLarge]), v = t(() => h ? null : /* @__PURE__ */ o(a, { children: [
|
|
154
166
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
155
|
-
/* @__PURE__ */ e(
|
|
156
|
-
] }), [h, r.separator.extraLarge,
|
|
157
|
-
() => /* @__PURE__ */
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
167
|
+
/* @__PURE__ */ e(Te, { children: /* @__PURE__ */ e(ge, { onSwitchUser: x }) })
|
|
168
|
+
] }), [h, r.separator.extraLarge, x]), V = t(
|
|
169
|
+
() => /* @__PURE__ */ o(a, { children: [
|
|
170
|
+
F(),
|
|
171
|
+
W(),
|
|
172
|
+
w(),
|
|
173
|
+
j(),
|
|
174
|
+
q(),
|
|
175
|
+
v()
|
|
164
176
|
] }),
|
|
165
177
|
[
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
178
|
+
F,
|
|
179
|
+
W,
|
|
180
|
+
w,
|
|
181
|
+
j,
|
|
182
|
+
q,
|
|
183
|
+
v
|
|
172
184
|
]
|
|
173
|
-
),
|
|
174
|
-
() => /* @__PURE__ */
|
|
185
|
+
), Y = t(
|
|
186
|
+
() => /* @__PURE__ */ o(a, { children: [
|
|
175
187
|
/* @__PURE__ */ e(n, { height: r.separator.extraLarge }),
|
|
176
|
-
/* @__PURE__ */ e(
|
|
188
|
+
/* @__PURE__ */ e(Se, {})
|
|
177
189
|
] }),
|
|
178
190
|
[r.separator.extraLarge]
|
|
179
191
|
);
|
|
180
|
-
return
|
|
181
|
-
/* @__PURE__ */ e(
|
|
182
|
-
/* @__PURE__ */
|
|
183
|
-
|
|
192
|
+
return X ? /* @__PURE__ */ e(pe, { height: "100vh" }) : J ? /* @__PURE__ */ e(a, { $flex: 1, $alignItems: "center", $justifyContent: "center", children: /* @__PURE__ */ e(he, { theme: "dark", onTryAgain: Q }) }) : /* @__PURE__ */ o($e, { children: [
|
|
193
|
+
/* @__PURE__ */ e(ue, { HeaderAvatar: N }),
|
|
194
|
+
/* @__PURE__ */ o(
|
|
195
|
+
Pe,
|
|
184
196
|
{
|
|
185
197
|
$flex: 1,
|
|
186
198
|
$width: "100%",
|
|
@@ -189,8 +201,8 @@ const qe = N(
|
|
|
189
201
|
$gap: r.medium,
|
|
190
202
|
$gutter: r.small,
|
|
191
203
|
children: [
|
|
192
|
-
|
|
193
|
-
|
|
204
|
+
z ? U() : V(),
|
|
205
|
+
Y()
|
|
194
206
|
]
|
|
195
207
|
}
|
|
196
208
|
)
|
|
@@ -198,6 +210,6 @@ const qe = N(
|
|
|
198
210
|
}
|
|
199
211
|
);
|
|
200
212
|
export {
|
|
201
|
-
|
|
213
|
+
Ve as default
|
|
202
214
|
};
|
|
203
215
|
//# sourceMappingURL=parent-dashboard-view.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parent-dashboard-view.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-view.tsx"],"sourcesContent":["import type { IParentDashboardProps, ISpacingConfig } from './parent-dashboard-types';\n\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport OnboardingGuide from '../auth/pla-signup/onboarding-guide/onboarding-guide';\nimport SignupHeader from '../auth/pla-signup/signup-header/signup-header';\nimport NextSteps from '../trial-session/comps/pla/next-steps/next-steps';\nimport SessionStatus from '../trial-session/comps/pla/session-status/session-status';\nimport SessionSummary from '../trial-session/comps/pla/session-summary/session-summary';\nimport UpcomingSessions from '../trial-session/comps/pla/upcoming-sessions/upcoming-sessions';\nimport TeacherProfile from '../trial-session/comps/teacher-intro/teacher-profile/teacher-profile';\nimport Button from '../ui/buttons/button/button';\nimport TextButton from '../ui/buttons/text-button/text-button';\nimport FlexView from '../ui/layout/flex-view';\nimport AppLoader from '../ui/loader/app-loader/app-loader';\nimport Separator from '../ui/separator/separator';\nimport Text from '../ui/text/text';\nimport { EDeviceType } from '../ui/theme/constants';\nimport CompactHeader from './comps/compact-header/compact-header';\nimport CuemathAppFeatures from './comps/cuemath-app-features/cuemath-app-features';\nimport MathPractice from './comps/math-practice/math-practice';\nimport ParentDashboardFaqs from './comps/parent-dashboard-faqs/parent-dashboard-faqs';\nimport useParentHomeData from './hooks/use-parent-home-data';\nimport { DESKTOP_SPACING, MOBILE_SPACING } from './parent-dashboard-constants';\nimport * as Styled from './parent-dashboard-styled';\n\nconst ParentDashboardView: React.FC<IParentDashboardProps> = memo(\n ({\n studentName,\n studentServiceId,\n onRescheduleDemo,\n onViewSummary,\n onGetStartedAgain,\n onChangeTutor,\n canChangeTutor,\n onSwitchUser,\n isSubscriptionCancelled,\n HeaderAvatar,\n }) => {\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const {\n teacherDetails,\n teacherName,\n completedSessions,\n nextSessionStart,\n nextSessionEnd,\n classStatus,\n upcomingSessions,\n isDemoDone,\n isOnlyOneSessionCompleted,\n isMoreThanOneSessionCompleted,\n showLoading = false,\n demoId,\n } = useParentHomeData({ studentName, studentServiceId });\n\n const handleRescheduleDemo = useCallback(() => {\n onRescheduleDemo(demoId);\n }, [demoId, onRescheduleDemo]);\n\n const handleChangeTutor = useCallback(() => {\n if (demoId) {\n onChangeTutor(demoId);\n }\n }, [demoId, onChangeTutor]);\n\n const spacing: ISpacingConfig = useMemo(\n () => (isMobile ? MOBILE_SPACING : DESKTOP_SPACING),\n [isMobile],\n );\n\n const buttonWidth = isMobile ? '100%' : 200;\n\n const renderCancelledSubscriptionView = useCallback(\n () => (\n <FlexView>\n <SignupHeader />\n <Separator height={spacing.separator.extraLarge} />\n <OnboardingGuide orientation=\"horizontal\" />\n {onGetStartedAgain && (\n <FlexView>\n <Separator height={spacing.medium} />\n <Button\n label=\"Get Started\"\n renderAs=\"yellow-dark\"\n shape=\"square\"\n width={buttonWidth}\n onClick={onGetStartedAgain}\n />\n </FlexView>\n )}\n </FlexView>\n ),\n [spacing, buttonWidth, onGetStartedAgain],\n );\n\n const renderSessionStatusSection = useCallback(\n () => (\n <SessionStatus\n completedSessions={completedSessions}\n nextSessionStartTime={nextSessionStart}\n teacherName={teacherName}\n status={classStatus}\n nextSessionEndTime={nextSessionEnd}\n studentName={studentName}\n onRescheduleClick={handleRescheduleDemo}\n />\n ),\n [\n completedSessions,\n nextSessionStart,\n teacherName,\n classStatus,\n nextSessionEnd,\n studentName,\n handleRescheduleDemo,\n ],\n );\n\n const renderTeacherProfileSection = useCallback(() => {\n if (!teacherDetails || isDemoDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.large} />\n <TeacherProfile teacherProfile={teacherDetails} />\n </FlexView>\n );\n }, [teacherDetails, isDemoDone, spacing.separator.large]);\n\n const renderSessionSummarySection = useCallback(() => {\n if (isMoreThanOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <SessionSummary\n isDemoDone={isDemoDone}\n studentName={studentName}\n onViewSummary={onViewSummary}\n />\n </FlexView>\n );\n }, [\n isMoreThanOneSessionCompleted,\n spacing.separator.extraLarge,\n isDemoDone,\n studentName,\n onViewSummary,\n ]);\n\n const renderTutorChangeSection = useCallback(() => {\n if (canChangeTutor) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.small} />\n <FlexView $flexDirection=\"row\" $flexColumnGapX={0.25}>\n <Text $renderAs=\"ub1\" $renderOnMobileAs=\"ub2\" $color=\"WHITE\">\n Not the right fit for your child?\n </Text>\n <TextButton\n color=\"WHITE_1\"\n sizeOnMobile=\"small\"\n label=\"Try another tutor\"\n onClick={handleChangeTutor}\n />\n </FlexView>\n </FlexView>\n );\n }, [canChangeTutor, spacing.separator.small, handleChangeTutor]);\n\n const renderTeacherDetailsSection = useCallback(() => {\n if (!teacherDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Text $renderAs=\"ah4-bold\" $renderOnMobileAs=\"ab1-bold\" $color=\"WHITE\">\n Know your tutor\n </Text>\n <Separator height={spacing.separator.medium} />\n <TeacherProfile teacherProfile={teacherDetails} />\n {renderTutorChangeSection()}\n </FlexView>\n );\n }, [teacherDetails, spacing.separator, renderTutorChangeSection]);\n\n const renderOnlyOneSessionSection = useCallback(() => {\n if (!isOnlyOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <NextSteps />\n <Separator height={spacing.separator.extraLarge} />\n <UpcomingSessions sessions={upcomingSessions} />\n {renderTeacherDetailsSection()}\n </FlexView>\n );\n }, [\n isOnlyOneSessionCompleted,\n spacing.separator.extraLarge,\n upcomingSessions,\n renderTeacherDetailsSection,\n ]);\n\n const renderAppFeaturesSection = useCallback(() => {\n if (!isDemoDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <CuemathAppFeatures />\n </FlexView>\n );\n }, [isDemoDone, spacing.separator.extraLarge]);\n\n const renderMathPracticeSection = useCallback(() => {\n if (isMoreThanOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Styled.MathPracticeWrapper>\n <MathPractice onSwitchUser={onSwitchUser} />\n </Styled.MathPracticeWrapper>\n </FlexView>\n );\n }, [isMoreThanOneSessionCompleted, spacing.separator.extraLarge, onSwitchUser]);\n\n const renderMainContent = useCallback(\n () => (\n <FlexView>\n {renderSessionStatusSection()}\n {renderTeacherProfileSection()}\n {renderSessionSummarySection()}\n {renderOnlyOneSessionSection()}\n {renderAppFeaturesSection()}\n {renderMathPracticeSection()}\n </FlexView>\n ),\n [\n renderSessionStatusSection,\n renderTeacherProfileSection,\n renderSessionSummarySection,\n renderOnlyOneSessionSection,\n renderAppFeaturesSection,\n renderMathPracticeSection,\n ],\n );\n\n const renderFaqsSection = useCallback(\n () => (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <ParentDashboardFaqs />\n </FlexView>\n ),\n [spacing.separator.extraLarge],\n );\n\n if (showLoading) {\n return <AppLoader height=\"100vh\" />;\n }\n\n return (\n <Styled.Container>\n <CompactHeader HeaderAvatar={HeaderAvatar} />\n <Styled.ContentWrapper\n $flex={1}\n $width=\"100%\"\n $height=\"100%\"\n $background=\"BLACK_1\"\n $gap={spacing.medium}\n $gutter={spacing.small}\n >\n {isSubscriptionCancelled ? renderCancelledSubscriptionView() : renderMainContent()}\n {renderFaqsSection()}\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n },\n);\n\nexport default ParentDashboardView;\n"],"names":["ParentDashboardView","memo","studentName","studentServiceId","onRescheduleDemo","onViewSummary","onGetStartedAgain","onChangeTutor","canChangeTutor","onSwitchUser","isSubscriptionCancelled","HeaderAvatar","device","useTheme","isMobile","EDeviceType","teacherDetails","teacherName","completedSessions","nextSessionStart","nextSessionEnd","classStatus","upcomingSessions","isDemoDone","isOnlyOneSessionCompleted","isMoreThanOneSessionCompleted","showLoading","demoId","useParentHomeData","handleRescheduleDemo","useCallback","handleChangeTutor","spacing","useMemo","MOBILE_SPACING","DESKTOP_SPACING","buttonWidth","renderCancelledSubscriptionView","FlexView","jsx","SignupHeader","Separator","OnboardingGuide","Button","renderSessionStatusSection","SessionStatus","renderTeacherProfileSection","TeacherProfile","renderSessionSummarySection","SessionSummary","renderTutorChangeSection","jsxs","Text","TextButton","renderTeacherDetailsSection","renderOnlyOneSessionSection","NextSteps","UpcomingSessions","renderAppFeaturesSection","CuemathAppFeatures","renderMathPracticeSection","Styled.MathPracticeWrapper","MathPractice","renderMainContent","renderFaqsSection","ParentDashboardFaqs","AppLoader","Styled.Container","CompactHeader","Styled.ContentWrapper"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parent-dashboard-view.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-view.tsx"],"sourcesContent":["import type { ESummaryType, IParentDashboardProps, ISpacingConfig } from './parent-dashboard-types';\n\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport OnboardingGuide from '../auth/pla-signup/onboarding-guide/onboarding-guide';\nimport SignupHeader from '../auth/pla-signup/signup-header/signup-header';\nimport NextSteps from '../trial-session/comps/pla/next-steps/next-steps';\nimport SessionStatus from '../trial-session/comps/pla/session-status/session-status';\nimport SessionSummary from '../trial-session/comps/pla/session-summary/session-summary';\nimport UpcomingSessions from '../trial-session/comps/pla/upcoming-sessions/upcoming-sessions';\nimport TeacherProfile from '../trial-session/comps/teacher-intro/teacher-profile/teacher-profile';\nimport Button from '../ui/buttons/button/button';\nimport TextButton from '../ui/buttons/text-button/text-button';\nimport Error from '../ui/error/error';\nimport FlexView from '../ui/layout/flex-view';\nimport AppLoader from '../ui/loader/app-loader/app-loader';\nimport Separator from '../ui/separator/separator';\nimport Text from '../ui/text/text';\nimport { EDeviceType } from '../ui/theme/constants';\nimport CompactHeader from './comps/compact-header/compact-header';\nimport CuemathAppFeatures from './comps/cuemath-app-features/cuemath-app-features';\nimport MathPractice from './comps/math-practice/math-practice';\nimport ParentDashboardFaqs from './comps/parent-dashboard-faqs/parent-dashboard-faqs';\nimport useParentHomeData from './hooks/use-parent-home-data';\nimport useStudentProfileSummaryData from './hooks/use-student-profile-summary-data';\nimport { DESKTOP_SPACING, MOBILE_SPACING } from './parent-dashboard-constants';\nimport * as Styled from './parent-dashboard-styled';\n\nconst ParentDashboardView: React.FC<IParentDashboardProps> = memo(\n ({\n studentName,\n studentId,\n onRescheduleDemo,\n onViewSummary,\n onGetStartedAgain,\n onChangeTutor,\n canChangeTutor,\n onSwitchUser,\n isSubscriptionCancelled,\n HeaderAvatar,\n }) => {\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const {\n teacherDetails,\n teacherName,\n completedSessions,\n nextSessionStart,\n nextSessionEnd,\n classStatus,\n upcomingSessions,\n isDemoDone,\n isOnlyOneSessionCompleted,\n isMoreThanOneSessionCompleted,\n showLoading = false,\n demoId,\n fetchData: fetchParentHomeData,\n isProcessingFailed,\n userAttemptId,\n } = useParentHomeData(studentId);\n\n const { summaryInfo, fetchSummaryData } = useStudentProfileSummaryData(studentId);\n\n const handleTryAgain = useCallback(() => {\n fetchParentHomeData();\n fetchSummaryData();\n }, [fetchParentHomeData, fetchSummaryData]);\n\n const handleRescheduleDemo = useCallback(() => {\n onRescheduleDemo(demoId);\n }, [demoId, onRescheduleDemo]);\n\n const handleChangeTutor = useCallback(() => {\n if (demoId) {\n onChangeTutor(demoId);\n }\n }, [demoId, onChangeTutor]);\n\n const spacing: ISpacingConfig = useMemo(\n () => (isMobile ? MOBILE_SPACING : DESKTOP_SPACING),\n [isMobile],\n );\n\n const handleViewSummary = useCallback(\n (key: ESummaryType) => {\n onViewSummary?.(key, { ...summaryInfo, userAttemptId });\n },\n [onViewSummary, summaryInfo, userAttemptId],\n );\n\n const buttonWidth = isMobile ? '100%' : 200;\n\n const renderCancelledSubscriptionView = useCallback(\n () => (\n <FlexView>\n <SignupHeader />\n <Separator height={spacing.separator.extraLarge} />\n <OnboardingGuide orientation=\"horizontal\" />\n {onGetStartedAgain && (\n <FlexView>\n <Separator height={spacing.medium} />\n <Button\n label=\"Get Started\"\n renderAs=\"yellow-dark\"\n shape=\"square\"\n width={buttonWidth}\n onClick={onGetStartedAgain}\n />\n </FlexView>\n )}\n </FlexView>\n ),\n [spacing, buttonWidth, onGetStartedAgain],\n );\n\n const renderSessionStatusSection = useCallback(\n () => (\n <SessionStatus\n completedSessions={completedSessions}\n nextSessionStartTime={nextSessionStart}\n teacherName={teacherName}\n status={classStatus}\n nextSessionEndTime={nextSessionEnd}\n studentName={studentName}\n onRescheduleClick={handleRescheduleDemo}\n />\n ),\n [\n completedSessions,\n nextSessionStart,\n teacherName,\n classStatus,\n nextSessionEnd,\n studentName,\n handleRescheduleDemo,\n ],\n );\n\n const renderTeacherProfileSection = useCallback(() => {\n if (!teacherDetails || isDemoDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.large} />\n <TeacherProfile teacherProfile={teacherDetails} />\n </FlexView>\n );\n }, [teacherDetails, isDemoDone, spacing.separator.large]);\n\n const renderSessionSummarySection = useCallback(() => {\n if (isMoreThanOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <SessionSummary\n isDemoDone={isDemoDone}\n studentName={studentName}\n onViewSummary={handleViewSummary}\n />\n </FlexView>\n );\n }, [\n isMoreThanOneSessionCompleted,\n spacing.separator.extraLarge,\n isDemoDone,\n studentName,\n handleViewSummary,\n ]);\n\n const renderTutorChangeSection = useCallback(() => {\n if (!canChangeTutor) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.small} />\n <FlexView $flexDirection=\"row\" $flexColumnGapX={0.25}>\n <Text $renderAs=\"ub1\" $renderOnMobileAs=\"ub2\" $color=\"WHITE\">\n Not the right fit for your child?\n </Text>\n <TextButton\n color=\"WHITE_1\"\n sizeOnMobile=\"small\"\n label=\"Try another tutor\"\n onClick={handleChangeTutor}\n />\n </FlexView>\n </FlexView>\n );\n }, [canChangeTutor, spacing.separator.small, handleChangeTutor]);\n\n const renderTeacherDetailsSection = useCallback(() => {\n if (!teacherDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Text $renderAs=\"ah4-bold\" $renderOnMobileAs=\"ab1-bold\" $color=\"WHITE\">\n Know your tutor\n </Text>\n <Separator height={spacing.separator.medium} />\n <TeacherProfile teacherProfile={teacherDetails} />\n {renderTutorChangeSection()}\n </FlexView>\n );\n }, [teacherDetails, spacing.separator, renderTutorChangeSection]);\n\n const renderOnlyOneSessionSection = useCallback(() => {\n if (!isOnlyOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <NextSteps />\n <Separator height={spacing.separator.extraLarge} />\n <UpcomingSessions sessions={upcomingSessions} />\n {renderTeacherDetailsSection()}\n </FlexView>\n );\n }, [\n isOnlyOneSessionCompleted,\n spacing.separator.extraLarge,\n upcomingSessions,\n renderTeacherDetailsSection,\n ]);\n\n const renderAppFeaturesSection = useCallback(() => {\n if (!isDemoDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <CuemathAppFeatures />\n </FlexView>\n );\n }, [isDemoDone, spacing.separator.extraLarge]);\n\n const renderMathPracticeSection = useCallback(() => {\n if (isMoreThanOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Styled.MathPracticeWrapper>\n <MathPractice onSwitchUser={onSwitchUser} />\n </Styled.MathPracticeWrapper>\n </FlexView>\n );\n }, [isMoreThanOneSessionCompleted, spacing.separator.extraLarge, onSwitchUser]);\n\n const renderMainContent = useCallback(\n () => (\n <FlexView>\n {renderSessionStatusSection()}\n {renderTeacherProfileSection()}\n {renderSessionSummarySection()}\n {renderOnlyOneSessionSection()}\n {renderAppFeaturesSection()}\n {renderMathPracticeSection()}\n </FlexView>\n ),\n [\n renderSessionStatusSection,\n renderTeacherProfileSection,\n renderSessionSummarySection,\n renderOnlyOneSessionSection,\n renderAppFeaturesSection,\n renderMathPracticeSection,\n ],\n );\n\n const renderFaqsSection = useCallback(\n () => (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <ParentDashboardFaqs />\n </FlexView>\n ),\n [spacing.separator.extraLarge],\n );\n\n if (showLoading) {\n return <AppLoader height=\"100vh\" />;\n }\n\n if (isProcessingFailed)\n return (\n <FlexView $flex={1} $alignItems=\"center\" $justifyContent=\"center\">\n <Error theme=\"dark\" onTryAgain={handleTryAgain} />\n </FlexView>\n );\n\n return (\n <Styled.Container>\n <CompactHeader HeaderAvatar={HeaderAvatar} />\n <Styled.ContentWrapper\n $flex={1}\n $width=\"100%\"\n $height=\"100%\"\n $background=\"BLACK_1\"\n $gap={spacing.medium}\n $gutter={spacing.small}\n >\n {isSubscriptionCancelled ? renderCancelledSubscriptionView() : renderMainContent()}\n {renderFaqsSection()}\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n },\n);\n\nexport default ParentDashboardView;\n"],"names":["ParentDashboardView","memo","studentName","studentId","onRescheduleDemo","onViewSummary","onGetStartedAgain","onChangeTutor","canChangeTutor","onSwitchUser","isSubscriptionCancelled","HeaderAvatar","device","useTheme","isMobile","EDeviceType","teacherDetails","teacherName","completedSessions","nextSessionStart","nextSessionEnd","classStatus","upcomingSessions","isDemoDone","isOnlyOneSessionCompleted","isMoreThanOneSessionCompleted","showLoading","demoId","fetchParentHomeData","isProcessingFailed","userAttemptId","useParentHomeData","summaryInfo","fetchSummaryData","useStudentProfileSummaryData","handleTryAgain","useCallback","handleRescheduleDemo","handleChangeTutor","spacing","useMemo","MOBILE_SPACING","DESKTOP_SPACING","handleViewSummary","key","buttonWidth","renderCancelledSubscriptionView","FlexView","jsx","SignupHeader","Separator","OnboardingGuide","Button","renderSessionStatusSection","SessionStatus","renderTeacherProfileSection","TeacherProfile","renderSessionSummarySection","SessionSummary","renderTutorChangeSection","jsxs","Text","TextButton","renderTeacherDetailsSection","renderOnlyOneSessionSection","NextSteps","UpcomingSessions","renderAppFeaturesSection","CuemathAppFeatures","renderMathPracticeSection","Styled.MathPracticeWrapper","MathPractice","renderMainContent","renderFaqsSection","ParentDashboardFaqs","AppLoader","Error","Styled.Container","CompactHeader","Styled.ContentWrapper"],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { GIF as e } from "../../../../../assets/gif/gif.js";
|
|
2
|
-
|
|
2
|
+
import { ESummaryType as t } from "../../../../parent-dashboard/parent-dashboard-types.js";
|
|
3
|
+
const n = [
|
|
3
4
|
{
|
|
4
5
|
title: "introduction & goals",
|
|
5
6
|
description: "Get to know your tutor and discuss your goals and expectations",
|
|
@@ -21,17 +22,17 @@ const i = [
|
|
|
21
22
|
textBG: "GREEN_6",
|
|
22
23
|
ctaLabel: "View Learning Plan"
|
|
23
24
|
}
|
|
24
|
-
],
|
|
25
|
+
], r = [
|
|
25
26
|
{
|
|
26
27
|
title: "created student profile",
|
|
27
|
-
|
|
28
|
+
type: t.STUDENT_PROFILE,
|
|
28
29
|
image: e.YOUR_GOALS_GRID_BG,
|
|
29
30
|
textBG: "ORANGE_6",
|
|
30
31
|
ctaLabel: "View Profile"
|
|
31
32
|
},
|
|
32
33
|
{
|
|
33
34
|
title: "Shared Learning insights",
|
|
34
|
-
|
|
35
|
+
type: t.INSIGHTS,
|
|
35
36
|
image: e.LEARNING_SESSION_GRID_BG,
|
|
36
37
|
textBG: "YELLOW_6",
|
|
37
38
|
ctaLabel: "View Insights"
|
|
@@ -42,11 +43,11 @@ const i = [
|
|
|
42
43
|
image: e.WAY_FORWARD_GRID_BG,
|
|
43
44
|
textBG: "GREEN_6",
|
|
44
45
|
ctaLabel: "View Learning Plan",
|
|
45
|
-
|
|
46
|
+
type: t.LEARNING_PLAN
|
|
46
47
|
}
|
|
47
48
|
];
|
|
48
49
|
export {
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
r as sessionSummaryAfterDemo,
|
|
51
|
+
n as sessionSummaryData
|
|
51
52
|
};
|
|
52
53
|
//# sourceMappingURL=session-summary-constants.js.map
|
package/dist/features/trial-session/comps/pla/session-summary/session-summary-constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-summary-constants.js","sources":["../../../../../../src/features/trial-session/comps/pla/session-summary/session-summary-constants.ts"],"sourcesContent":["import type { ISessionSummary } from './session-summary-types';\n\nimport { GIF } from '../../../../../assets/gif/gif';\n\nexport const sessionSummaryData: ISessionSummary[] = [\n {\n title: 'introduction & goals',\n description: 'Get to know your tutor and discuss your goals and expectations',\n image: GIF.YOUR_GOALS_GRID_BG,\n textBG: 'ORANGE_6',\n ctaLabel: 'View Profile',\n },\n {\n title: 'interactive sessions',\n description: 'Watch your child learn concepts and tackle problems with their tutorʼs guidance.',\n image: GIF.LEARNING_SESSION_GRID_BG,\n textBG: 'YELLOW_6',\n ctaLabel: 'View Insights',\n },\n {\n title: 'way forward',\n description: 'Get insights on your child’s learning and plan the journey ahead',\n image: GIF.WAY_FORWARD_GRID_BG,\n textBG: 'GREEN_6',\n ctaLabel: 'View Learning Plan',\n },\n];\n\nexport const sessionSummaryAfterDemo: ISessionSummary[] = [\n {\n title: 'created student profile',\n
|
|
1
|
+
{"version":3,"file":"session-summary-constants.js","sources":["../../../../../../src/features/trial-session/comps/pla/session-summary/session-summary-constants.ts"],"sourcesContent":["import type { ISessionSummary } from './session-summary-types';\n\nimport { GIF } from '../../../../../assets/gif/gif';\nimport { ESummaryType } from '../../../../parent-dashboard/parent-dashboard-types';\n\nexport const sessionSummaryData: ISessionSummary[] = [\n {\n title: 'introduction & goals',\n description: 'Get to know your tutor and discuss your goals and expectations',\n image: GIF.YOUR_GOALS_GRID_BG,\n textBG: 'ORANGE_6',\n ctaLabel: 'View Profile',\n },\n {\n title: 'interactive sessions',\n description: 'Watch your child learn concepts and tackle problems with their tutorʼs guidance.',\n image: GIF.LEARNING_SESSION_GRID_BG,\n textBG: 'YELLOW_6',\n ctaLabel: 'View Insights',\n },\n {\n title: 'way forward',\n description: 'Get insights on your child’s learning and plan the journey ahead',\n image: GIF.WAY_FORWARD_GRID_BG,\n textBG: 'GREEN_6',\n ctaLabel: 'View Learning Plan',\n },\n];\n\nexport const sessionSummaryAfterDemo: ISessionSummary[] = [\n {\n title: 'created student profile',\n type: ESummaryType.STUDENT_PROFILE,\n image: GIF.YOUR_GOALS_GRID_BG,\n textBG: 'ORANGE_6',\n ctaLabel: 'View Profile',\n },\n {\n title: 'Shared Learning insights',\n type: ESummaryType.INSIGHTS,\n image: GIF.LEARNING_SESSION_GRID_BG,\n textBG: 'YELLOW_6',\n ctaLabel: 'View Insights',\n },\n {\n title: 'Created learning plan',\n description: 'Get insights on your child’s learning and plan the journey ahead',\n image: GIF.WAY_FORWARD_GRID_BG,\n textBG: 'GREEN_6',\n ctaLabel: 'View Learning Plan',\n type: ESummaryType.LEARNING_PLAN,\n },\n];\n"],"names":["sessionSummaryData","GIF","sessionSummaryAfterDemo","ESummaryType"],"mappings":";;AAKO,MAAMA,IAAwC;AAAA,EACnD;AAAA,IACE,OAAO;AAAA,IACP,aAAa;AAAA,IACb,OAAOC,EAAI;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,aAAa;AAAA,IACb,OAAOA,EAAI;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,aAAa;AAAA,IACb,OAAOA,EAAI;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,EACZ;AACF,GAEaC,IAA6C;AAAA,EACxD;AAAA,IACE,OAAO;AAAA,IACP,MAAMC,EAAa;AAAA,IACnB,OAAOF,EAAI;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAME,EAAa;AAAA,IACnB,OAAOF,EAAI;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,aAAa;AAAA,IACb,OAAOA,EAAI;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAME,EAAa;AAAA,EACrB;AACF;"}
|