@cuemath/leap 3.0.23 → 3.0.24

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.
@@ -1,105 +1,110 @@
1
1
  import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
- import { GIF as c } from "../../../../assets/gif/gif.js";
2
+ import { GIF as g } from "../../../../assets/gif/gif.js";
3
3
  import f from "../../../ui/image/image.js";
4
- import C from "../../../ui/inputs/searchable-select-input/searchable-select-input.js";
5
- import o from "../../../ui/inputs/select-input/select-input.js";
6
- import S from "../../../ui/inputs/text-input/text-input.js";
7
- import b from "../../../ui/layout/flex-view.js";
8
- import g from "../../../ui/separator/separator.js";
9
- import x from "../slide-header/index.js";
10
- import { Container as $, ContentWrapper as w, ImageWrapper as L, InputContainer as y } from "./school-goals-styled.js";
11
- const D = ({
12
- name: n,
13
- onNameChange: i,
14
- grade: t,
15
- grades: s,
16
- onGradeChange: p,
17
- curriculum: a,
18
- curriculumStandards: l,
19
- onCurriculumChange: m,
20
- selectedGoal: d,
21
- goalsList: h,
22
- onGoalChange: u
23
- }) => /* @__PURE__ */ r($, { children: [
24
- /* @__PURE__ */ e(g, { height: 60 }),
25
- /* @__PURE__ */ e(x, {}),
26
- /* @__PURE__ */ r(w, { $flexDirection: "row", $justifyContent: "center", children: [
27
- /* @__PURE__ */ e(L, { children: /* @__PURE__ */ e(f, { withLoader: !0, height: 402, width: 302, src: c.SCHOOL_SUCCESS, className: "image" }) }),
28
- /* @__PURE__ */ r(
29
- y,
30
- {
31
- $flexGap: 24,
32
- $justifyContent: "center",
33
- $background: "PURPLE_1",
34
- $borderColor: "BLACK_1",
35
- $gapX: 2.5,
36
- $gutterX: 2.5,
37
- children: [
38
- /* @__PURE__ */ r(b, { $flexDirection: "row", $flexColumnGapX: 1.5, children: [
4
+ import S from "../../../ui/inputs/searchable-select-input/searchable-select-input.js";
5
+ import n from "../../../ui/inputs/select-input/select-input.js";
6
+ import b from "../../../ui/inputs/text-input/text-input.js";
7
+ import x from "../../../ui/layout/flex-view.js";
8
+ import $ from "../../../ui/separator/separator.js";
9
+ import G from "../slide-header/index.js";
10
+ import { Container as L, ContentWrapper as w, ImageWrapper as I, InputContainer as y } from "./school-goals-styled.js";
11
+ const _ = (o) => {
12
+ const {
13
+ name: i,
14
+ grade: a,
15
+ grades: s,
16
+ goalsList: l,
17
+ curriculum: t,
18
+ selectedGoal: m,
19
+ numberInNameError: d,
20
+ curriculumStandards: p,
21
+ onNameChange: u,
22
+ onGoalChange: h,
23
+ onGradeChange: c,
24
+ onCurriculumChange: C
25
+ } = o;
26
+ return /* @__PURE__ */ r(L, { children: [
27
+ /* @__PURE__ */ e($, { height: 60 }),
28
+ /* @__PURE__ */ e(G, {}),
29
+ /* @__PURE__ */ r(w, { $flexDirection: "row", $justifyContent: "center", children: [
30
+ /* @__PURE__ */ e(I, { children: /* @__PURE__ */ e(f, { withLoader: !0, height: 402, width: 302, src: g.SCHOOL_SUCCESS, className: "image" }) }),
31
+ /* @__PURE__ */ r(
32
+ y,
33
+ {
34
+ $flexGap: 24,
35
+ $justifyContent: "center",
36
+ $background: "PURPLE_1",
37
+ $borderColor: "BLACK_1",
38
+ $gapX: 2.5,
39
+ $gutterX: 2.5,
40
+ children: [
41
+ /* @__PURE__ */ r(x, { $flexDirection: "row", $flexColumnGapX: 1.5, children: [
42
+ /* @__PURE__ */ e(
43
+ b,
44
+ {
45
+ renderAs: "primary",
46
+ label: "Student name",
47
+ value: i,
48
+ type: "text",
49
+ name: "name",
50
+ shape: "borderLess",
51
+ onChange: u,
52
+ width: "100%",
53
+ isTransparent: !0,
54
+ errorMessage: d ? "Please enter a valid name" : void 0
55
+ }
56
+ ),
57
+ /* @__PURE__ */ e(
58
+ n,
59
+ {
60
+ renderAs: "primary",
61
+ label: "Select Grade",
62
+ value: a,
63
+ options: s,
64
+ shape: "borderLess",
65
+ onChange: c,
66
+ theme: "dark",
67
+ widthX: 10,
68
+ isTransparent: !0
69
+ }
70
+ )
71
+ ] }),
39
72
  /* @__PURE__ */ e(
40
- S,
73
+ n,
41
74
  {
42
75
  renderAs: "primary",
43
- label: "Student name",
44
- value: n,
45
- type: "text",
46
- name: "name",
76
+ label: "Select Curriculum",
77
+ value: t,
78
+ options: p,
79
+ disabled: !a,
47
80
  shape: "borderLess",
48
- onChange: i,
49
- width: "100%",
81
+ renderOptionsAs: "section-list",
82
+ theme: "dark",
83
+ onChange: C,
50
84
  isTransparent: !0
51
85
  }
52
86
  ),
53
87
  /* @__PURE__ */ e(
54
- o,
88
+ S,
55
89
  {
56
90
  renderAs: "primary",
57
- label: "Select Grade",
58
- value: t,
59
- options: s,
91
+ label: "Select a Goal",
92
+ value: m,
93
+ options: l,
60
94
  shape: "borderLess",
61
- onChange: p,
62
95
  theme: "dark",
63
- widthX: 10,
64
- isTransparent: !0
96
+ onChange: h,
97
+ isTransparent: !0,
98
+ disabled: !a || !t
65
99
  }
66
100
  )
67
- ] }),
68
- /* @__PURE__ */ e(
69
- o,
70
- {
71
- renderAs: "primary",
72
- label: "Select Curriculum",
73
- value: a,
74
- options: l,
75
- disabled: !t,
76
- shape: "borderLess",
77
- renderOptionsAs: "section-list",
78
- theme: "dark",
79
- onChange: m,
80
- isTransparent: !0
81
- }
82
- ),
83
- /* @__PURE__ */ e(
84
- C,
85
- {
86
- renderAs: "primary",
87
- label: "Select a Goal",
88
- value: d,
89
- options: h,
90
- shape: "borderLess",
91
- theme: "dark",
92
- onChange: u,
93
- isTransparent: !0,
94
- disabled: !t || !a
95
- }
96
- )
97
- ]
98
- }
99
- )
100
- ] })
101
- ] });
101
+ ]
102
+ }
103
+ )
104
+ ] })
105
+ ] });
106
+ };
102
107
  export {
103
- D as default
108
+ _ as default
104
109
  };
105
110
  //# sourceMappingURL=school-goals-view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"school-goals-view.js","sources":["../../../../../src/features/trial-session/comps/school-goals/school-goals-view.tsx"],"sourcesContent":["import type { TCurriculumStandardOption } from '../../../milestone/create/milestone-create-types';\nimport type { ISelectOption } from '../../../ui/inputs/base-select-input/base-select-input-types';\nimport type { ISectionOption } from '../../../ui/section-list/section-list-types';\n\nimport { GIF } from '../../../../assets/gif/gif';\nimport Image from '../../../ui/image/image';\nimport SearchableSelectInput from '../../../ui/inputs/searchable-select-input/searchable-select-input';\nimport SelectInput from '../../../ui/inputs/select-input/select-input';\nimport TextInput from '../../../ui/inputs/text-input/text-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './school-goals-styled';\n\ninterface ISchoolGoals {\n header?: string;\n name?: string;\n grade?: string;\n curriculum?: string;\n grades: ISelectOption<string>[];\n curriculumStandards: ISectionOption<TCurriculumStandardOption>[];\n goalsList: ISelectOption<string>[];\n selectedGoal?: string;\n onNameChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onGradeChange: (value: string) => void;\n onCurriculumChange: (value: string) => void;\n onGoalChange: (value: string, option: ISelectOption<string | number>) => void;\n}\n\nconst SchoolGoalsView = ({\n name,\n onNameChange,\n grade,\n grades,\n onGradeChange,\n curriculum,\n curriculumStandards,\n onCurriculumChange,\n selectedGoal,\n goalsList,\n onGoalChange,\n}: ISchoolGoals) => {\n return (\n <Styled.Container>\n <Separator height={60} />\n <SlideHeader />\n <Styled.ContentWrapper $flexDirection=\"row\" $justifyContent=\"center\">\n <Styled.ImageWrapper>\n <Image withLoader height={402} width={302} src={GIF.SCHOOL_SUCCESS} className=\"image\" />\n </Styled.ImageWrapper>\n <Styled.InputContainer\n $flexGap={24}\n $justifyContent=\"center\"\n $background=\"PURPLE_1\"\n $borderColor=\"BLACK_1\"\n $gapX={2.5}\n $gutterX={2.5}\n >\n <FlexView $flexDirection=\"row\" $flexColumnGapX={1.5}>\n <TextInput\n renderAs=\"primary\"\n label=\"Student name\"\n value={name}\n type=\"text\"\n name=\"name\"\n shape=\"borderLess\"\n onChange={onNameChange}\n width=\"100%\"\n isTransparent\n />\n <SelectInput\n renderAs=\"primary\"\n label=\"Select Grade\"\n value={grade}\n options={grades}\n shape=\"borderLess\"\n onChange={onGradeChange}\n theme=\"dark\"\n widthX={10}\n isTransparent\n />\n </FlexView>\n <SelectInput\n renderAs=\"primary\"\n label=\"Select Curriculum\"\n value={curriculum}\n options={curriculumStandards}\n disabled={!grade}\n shape=\"borderLess\"\n renderOptionsAs=\"section-list\"\n theme=\"dark\"\n onChange={onCurriculumChange}\n isTransparent\n />\n <SearchableSelectInput\n renderAs=\"primary\"\n label=\"Select a Goal\"\n value={selectedGoal}\n options={goalsList}\n shape=\"borderLess\"\n theme=\"dark\"\n onChange={onGoalChange}\n isTransparent\n disabled={!grade || !curriculum}\n />\n </Styled.InputContainer>\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n};\n\nexport default SchoolGoalsView;\n"],"names":["SchoolGoalsView","name","onNameChange","grade","grades","onGradeChange","curriculum","curriculumStandards","onCurriculumChange","selectedGoal","goalsList","onGoalChange","jsxs","Styled.Container","jsx","Separator","SlideHeader","Styled.ContentWrapper","Styled.ImageWrapper","Image","GIF","Styled.InputContainer","FlexView","TextInput","SelectInput","SearchableSelectInput"],"mappings":";;;;;;;;;;AA6BA,MAAMA,IAAkB,CAAC;AAAA,EACvB,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,eAAAC;AAAA,EACA,YAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AACF,MAEI,gBAAAC,EAACC,GAAA,EACC,UAAA;AAAA,EAAC,gBAAAC,EAAAC,GAAA,EAAU,QAAQ,GAAI,CAAA;AAAA,oBACtBC,GAAY,EAAA;AAAA,oBACZC,GAAA,EAAsB,gBAAe,OAAM,iBAAgB,UAC1D,UAAA;AAAA,IAAA,gBAAAH,EAACI,GAAA,EACC,UAAC,gBAAAJ,EAAAK,GAAA,EAAM,YAAU,IAAC,QAAQ,KAAK,OAAO,KAAK,KAAKC,EAAI,gBAAgB,WAAU,QAAQ,CAAA,GACxF;AAAA,IACA,gBAAAR;AAAA,MAACS;AAAAA,MAAA;AAAA,QACC,UAAU;AAAA,QACV,iBAAgB;AAAA,QAChB,aAAY;AAAA,QACZ,cAAa;AAAA,QACb,OAAO;AAAA,QACP,UAAU;AAAA,QAEV,UAAA;AAAA,UAAA,gBAAAT,EAACU,GAAS,EAAA,gBAAe,OAAM,iBAAiB,KAC9C,UAAA;AAAA,YAAA,gBAAAR;AAAA,cAACS;AAAA,cAAA;AAAA,gBACC,UAAS;AAAA,gBACT,OAAM;AAAA,gBACN,OAAOtB;AAAA,gBACP,MAAK;AAAA,gBACL,MAAK;AAAA,gBACL,OAAM;AAAA,gBACN,UAAUC;AAAA,gBACV,OAAM;AAAA,gBACN,eAAa;AAAA,cAAA;AAAA,YACf;AAAA,YACA,gBAAAY;AAAA,cAACU;AAAA,cAAA;AAAA,gBACC,UAAS;AAAA,gBACT,OAAM;AAAA,gBACN,OAAOrB;AAAA,gBACP,SAASC;AAAA,gBACT,OAAM;AAAA,gBACN,UAAUC;AAAA,gBACV,OAAM;AAAA,gBACN,QAAQ;AAAA,gBACR,eAAa;AAAA,cAAA;AAAA,YACf;AAAA,UAAA,GACF;AAAA,UACA,gBAAAS;AAAA,YAACU;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,OAAM;AAAA,cACN,OAAOlB;AAAA,cACP,SAASC;AAAA,cACT,UAAU,CAACJ;AAAA,cACX,OAAM;AAAA,cACN,iBAAgB;AAAA,cAChB,OAAM;AAAA,cACN,UAAUK;AAAA,cACV,eAAa;AAAA,YAAA;AAAA,UACf;AAAA,UACA,gBAAAM;AAAA,YAACW;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,OAAM;AAAA,cACN,OAAOhB;AAAA,cACP,SAASC;AAAA,cACT,OAAM;AAAA,cACN,OAAM;AAAA,cACN,UAAUC;AAAA,cACV,eAAa;AAAA,cACb,UAAU,CAACR,KAAS,CAACG;AAAA,YAAA;AAAA,UACvB;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;AAAA,EAAA,GACF;AACF,EAAA,CAAA;"}
1
+ {"version":3,"file":"school-goals-view.js","sources":["../../../../../src/features/trial-session/comps/school-goals/school-goals-view.tsx"],"sourcesContent":["import type { TCurriculumStandardOption } from '../../../milestone/create/milestone-create-types';\nimport type { ISelectOption } from '../../../ui/inputs/base-select-input/base-select-input-types';\nimport type { ISectionOption } from '../../../ui/section-list/section-list-types';\n\nimport { GIF } from '../../../../assets/gif/gif';\nimport Image from '../../../ui/image/image';\nimport SearchableSelectInput from '../../../ui/inputs/searchable-select-input/searchable-select-input';\nimport SelectInput from '../../../ui/inputs/select-input/select-input';\nimport TextInput from '../../../ui/inputs/text-input/text-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './school-goals-styled';\n\ninterface ISchoolGoals {\n header?: string;\n name?: string;\n grade?: string;\n curriculum?: string;\n grades: ISelectOption<string>[];\n curriculumStandards: ISectionOption<TCurriculumStandardOption>[];\n goalsList: ISelectOption<string>[];\n selectedGoal?: string;\n numberInNameError?: boolean;\n onNameChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onGradeChange: (value: string) => void;\n onCurriculumChange: (value: string) => void;\n onGoalChange: (value: string, option: ISelectOption<string | number>) => void;\n}\n\nconst SchoolGoalsView = (props: ISchoolGoals) => {\n const {\n name,\n grade,\n grades,\n goalsList,\n curriculum,\n selectedGoal,\n numberInNameError,\n curriculumStandards,\n onNameChange,\n onGoalChange,\n onGradeChange,\n onCurriculumChange,\n } = props;\n\n return (\n <Styled.Container>\n <Separator height={60} />\n <SlideHeader />\n <Styled.ContentWrapper $flexDirection=\"row\" $justifyContent=\"center\">\n <Styled.ImageWrapper>\n <Image withLoader height={402} width={302} src={GIF.SCHOOL_SUCCESS} className=\"image\" />\n </Styled.ImageWrapper>\n <Styled.InputContainer\n $flexGap={24}\n $justifyContent=\"center\"\n $background=\"PURPLE_1\"\n $borderColor=\"BLACK_1\"\n $gapX={2.5}\n $gutterX={2.5}\n >\n <FlexView $flexDirection=\"row\" $flexColumnGapX={1.5}>\n <TextInput\n renderAs=\"primary\"\n label=\"Student name\"\n value={name}\n type=\"text\"\n name=\"name\"\n shape=\"borderLess\"\n onChange={onNameChange}\n width=\"100%\"\n isTransparent\n errorMessage={numberInNameError ? 'Please enter a valid name' : undefined}\n />\n <SelectInput\n renderAs=\"primary\"\n label=\"Select Grade\"\n value={grade}\n options={grades}\n shape=\"borderLess\"\n onChange={onGradeChange}\n theme=\"dark\"\n widthX={10}\n isTransparent\n />\n </FlexView>\n <SelectInput\n renderAs=\"primary\"\n label=\"Select Curriculum\"\n value={curriculum}\n options={curriculumStandards}\n disabled={!grade}\n shape=\"borderLess\"\n renderOptionsAs=\"section-list\"\n theme=\"dark\"\n onChange={onCurriculumChange}\n isTransparent\n />\n <SearchableSelectInput\n renderAs=\"primary\"\n label=\"Select a Goal\"\n value={selectedGoal}\n options={goalsList}\n shape=\"borderLess\"\n theme=\"dark\"\n onChange={onGoalChange}\n isTransparent\n disabled={!grade || !curriculum}\n />\n </Styled.InputContainer>\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n};\n\nexport default SchoolGoalsView;\n"],"names":["SchoolGoalsView","props","name","grade","grades","goalsList","curriculum","selectedGoal","numberInNameError","curriculumStandards","onNameChange","onGoalChange","onGradeChange","onCurriculumChange","jsxs","Styled.Container","jsx","Separator","SlideHeader","Styled.ContentWrapper","Styled.ImageWrapper","Image","GIF","Styled.InputContainer","FlexView","TextInput","SelectInput","SearchableSelectInput"],"mappings":";;;;;;;;;;AA8BM,MAAAA,IAAkB,CAACC,MAAwB;AACzC,QAAA;AAAA,IACJ,MAAAC;AAAA,IACA,OAAAC;AAAA,IACA,QAAAC;AAAA,IACA,WAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,cAAAC;AAAA,IACA,eAAAC;AAAA,IACA,oBAAAC;AAAA,EACE,IAAAZ;AAGF,SAAA,gBAAAa,EAACC,GAAA,EACC,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAU,QAAQ,GAAI,CAAA;AAAA,sBACtBC,GAAY,EAAA;AAAA,sBACZC,GAAA,EAAsB,gBAAe,OAAM,iBAAgB,UAC1D,UAAA;AAAA,MAAA,gBAAAH,EAACI,GAAA,EACC,UAAC,gBAAAJ,EAAAK,GAAA,EAAM,YAAU,IAAC,QAAQ,KAAK,OAAO,KAAK,KAAKC,EAAI,gBAAgB,WAAU,QAAQ,CAAA,GACxF;AAAA,MACA,gBAAAR;AAAA,QAACS;AAAAA,QAAA;AAAA,UACC,UAAU;AAAA,UACV,iBAAgB;AAAA,UAChB,aAAY;AAAA,UACZ,cAAa;AAAA,UACb,OAAO;AAAA,UACP,UAAU;AAAA,UAEV,UAAA;AAAA,YAAA,gBAAAT,EAACU,GAAS,EAAA,gBAAe,OAAM,iBAAiB,KAC9C,UAAA;AAAA,cAAA,gBAAAR;AAAA,gBAACS;AAAA,gBAAA;AAAA,kBACC,UAAS;AAAA,kBACT,OAAM;AAAA,kBACN,OAAOvB;AAAA,kBACP,MAAK;AAAA,kBACL,MAAK;AAAA,kBACL,OAAM;AAAA,kBACN,UAAUQ;AAAA,kBACV,OAAM;AAAA,kBACN,eAAa;AAAA,kBACb,cAAcF,IAAoB,8BAA8B;AAAA,gBAAA;AAAA,cAClE;AAAA,cACA,gBAAAQ;AAAA,gBAACU;AAAA,gBAAA;AAAA,kBACC,UAAS;AAAA,kBACT,OAAM;AAAA,kBACN,OAAOvB;AAAA,kBACP,SAASC;AAAA,kBACT,OAAM;AAAA,kBACN,UAAUQ;AAAA,kBACV,OAAM;AAAA,kBACN,QAAQ;AAAA,kBACR,eAAa;AAAA,gBAAA;AAAA,cACf;AAAA,YAAA,GACF;AAAA,YACA,gBAAAI;AAAA,cAACU;AAAA,cAAA;AAAA,gBACC,UAAS;AAAA,gBACT,OAAM;AAAA,gBACN,OAAOpB;AAAA,gBACP,SAASG;AAAA,gBACT,UAAU,CAACN;AAAA,gBACX,OAAM;AAAA,gBACN,iBAAgB;AAAA,gBAChB,OAAM;AAAA,gBACN,UAAUU;AAAA,gBACV,eAAa;AAAA,cAAA;AAAA,YACf;AAAA,YACA,gBAAAG;AAAA,cAACW;AAAA,cAAA;AAAA,gBACC,UAAS;AAAA,gBACT,OAAM;AAAA,gBACN,OAAOpB;AAAA,gBACP,SAASF;AAAA,gBACT,OAAM;AAAA,gBACN,OAAM;AAAA,gBACN,UAAUM;AAAA,gBACV,eAAa;AAAA,gBACb,UAAU,CAACR,KAAS,CAACG;AAAA,cAAA;AAAA,YACvB;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA,GACF;AAAA,EACF,EAAA,CAAA;AAEJ;"}
@@ -1,68 +1,73 @@
1
- import { jsx as A } from "react/jsx-runtime";
2
- import { memo as B, useMemo as C, useCallback as s, useEffect as S } from "react";
3
- import { GOAL_CATEGORY as m } from "../../../milestone/constants.js";
4
- import { getCategorizedCurriculumStandards as Y } from "../../../milestone/create/comps/class-details-step/class-details-utils.js";
5
- import { getGradesFromConfig as j, getGoalsFromConfig as q } from "../../../milestone/create/milestone-create-helpers.js";
1
+ import { jsx as B } from "react/jsx-runtime";
2
+ import { memo as Y, useMemo as C, useCallback as m, useEffect as S } from "react";
3
+ import { GOAL_CATEGORY as s } from "../../../milestone/constants.js";
4
+ import { getCategorizedCurriculumStandards as j } from "../../../milestone/create/comps/class-details-step/class-details-utils.js";
5
+ import { getGradesFromConfig as q, getGoalsFromConfig as v } from "../../../milestone/create/milestone-create-helpers.js";
6
6
  import { epochTimestampAfterOneYear as G } from "../../../utils/utils.js";
7
- import { useTrialSessionContext as v } from "../../context/use-trial-session-context.js";
7
+ import { useTrialSessionContext as w } from "../../context/use-trial-session-context.js";
8
8
  import { updateGoalInFormData as O } from "../../helper.js";
9
- import w from "./school-goals-view.js";
10
- const X = B(() => {
9
+ import z from "./school-goals-view.js";
10
+ const Z = Y(() => {
11
11
  const {
12
- milestoneConfig: r,
13
- formData: L,
14
- updateSlideConfig: n,
12
+ milestoneConfig: n,
13
+ formData: E,
14
+ updateSlideConfig: a,
15
15
  updateButtonState: f,
16
16
  onRemoveOptionalSlides: g,
17
- trialHomeData: E
18
- } = v(), { name: p, grade: e, goals: a, curriculum: i } = L || {}, { demo_info: U } = E, { stream: c, region_data: y } = U || {}, { opportunity_country: u = "US" } = y || {}, H = j(r), N = C(
19
- () => Y(r, {
20
- countryCode: u,
17
+ trialHomeData: L
18
+ } = w(), { name: p, grade: e, goals: t, curriculum: i, numberInNameError: N } = E || {}, { demo_info: I } = L, { stream: u, region_data: U } = I || {}, { opportunity_country: c = "US" } = U || {}, b = q(n), y = C(
19
+ () => j(n, {
20
+ countryCode: c,
21
21
  grade: e ?? "",
22
- goalCategory: m.SCHOOL_SUCCESS,
23
- courseStream: c,
22
+ goalCategory: s.SCHOOL_SUCCESS,
23
+ courseStream: u,
24
24
  enrollmentType: "ONLINE"
25
25
  }),
26
- [r, u, e, c]
26
+ [n, c, e, u]
27
27
  ), d = C(
28
- () => q(r, {
29
- countryCode: u,
28
+ () => v(n, {
29
+ countryCode: c,
30
30
  grade: e ?? "",
31
- goalCategory: m.SCHOOL_SUCCESS,
32
- courseStream: c,
31
+ goalCategory: s.SCHOOL_SUCCESS,
32
+ courseStream: u,
33
33
  curriculumStandard: i,
34
34
  enrollmentType: "ONLINE"
35
35
  }),
36
- [r, u, e, c, i]
36
+ [n, c, e, u, i]
37
37
  ), { goal_code: _ } = C(
38
- () => (a == null ? void 0 : a.find((o) => o.goal_category === m.SCHOOL_SUCCESS)) ?? {},
39
- [a]
40
- ), h = !!(p && e && i && _), t = s(
38
+ () => (t == null ? void 0 : t.find((o) => o.goal_category === s.SCHOOL_SUCCESS)) ?? {},
39
+ [t]
40
+ ), h = !!(p && e && i && _), r = m(
41
41
  (o, l) => {
42
- n({
42
+ a({
43
43
  [o]: l,
44
44
  ...o === "grade" || o === "curriculum" ? { goals: [] } : {}
45
45
  });
46
46
  },
47
- [n]
48
- ), T = s((o) => t("name", o.target.value), [t]), D = s(
47
+ [a]
48
+ ), H = m(
49
+ (o) => {
50
+ a({ numberInNameError: !1 }), r("name", o.target.value);
51
+ },
52
+ [a, r]
53
+ ), T = m(
49
54
  (o, l) => {
50
- const { label: F } = l, x = O(a, m.SCHOOL_SUCCESS, {
55
+ const { label: x } = l, A = O(t, s.SCHOOL_SUCCESS, {
51
56
  goal_code: o,
52
- milestone_name: F,
57
+ milestone_name: x,
53
58
  milestone_date_ts: G()
54
59
  });
55
- n({ goals: x });
60
+ a({ goals: A });
56
61
  },
57
- [a, n]
58
- ), I = s(
59
- (o) => t("curriculum", o),
60
- [t]
61
- ), b = s(
62
+ [t, a]
63
+ ), D = m(
64
+ (o) => r("curriculum", o),
65
+ [r]
66
+ ), F = m(
62
67
  (o) => {
63
- t("grade", o), t("curriculum", "");
68
+ r("grade", o), r("curriculum", "");
64
69
  },
65
- [t]
70
+ [r]
66
71
  );
67
72
  return S(() => {
68
73
  f("right", { isDisabled: !h, isLoading: !1 });
@@ -71,31 +76,32 @@ const X = B(() => {
71
76
  }, [e]), S(() => {
72
77
  const o = d.length === 1 ? d[0] : void 0;
73
78
  if (o) {
74
- const l = O(a, m.SCHOOL_SUCCESS, {
79
+ const l = O(t, s.SCHOOL_SUCCESS, {
75
80
  goal_code: o.id ?? "",
76
81
  milestone_name: o.label ?? "",
77
82
  milestone_date_ts: G()
78
83
  });
79
- n({ goals: l });
84
+ a({ goals: l });
80
85
  }
81
- }, [d]), /* @__PURE__ */ A(
82
- w,
86
+ }, [d]), /* @__PURE__ */ B(
87
+ z,
83
88
  {
84
89
  name: p,
85
90
  grade: e,
86
- curriculum: i,
87
- grades: H,
88
- curriculumStandards: N,
91
+ grades: b,
89
92
  goalsList: d,
93
+ curriculum: i,
90
94
  selectedGoal: _,
91
- onNameChange: T,
92
- onGoalChange: D,
93
- onGradeChange: b,
94
- onCurriculumChange: I
95
+ numberInNameError: N,
96
+ curriculumStandards: y,
97
+ onNameChange: H,
98
+ onGoalChange: T,
99
+ onGradeChange: F,
100
+ onCurriculumChange: D
95
101
  }
96
102
  );
97
103
  });
98
104
  export {
99
- X as default
105
+ Z as default
100
106
  };
101
107
  //# sourceMappingURL=school-goals.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"school-goals.js","sources":["../../../../../src/features/trial-session/comps/school-goals/school-goals.tsx"],"sourcesContent":["import type { ISelectOption } from '../../../ui/inputs/base-select-input/base-select-input-types';\n\nimport { memo, useCallback, useEffect, useMemo } from 'react';\n\nimport { GOAL_CATEGORY } from '../../../milestone/constants';\nimport { getCategorizedCurriculumStandards } from '../../../milestone/create/comps/class-details-step/class-details-utils';\nimport {\n getGoalsFromConfig,\n getGradesFromConfig,\n} from '../../../milestone/create/milestone-create-helpers';\nimport { epochTimestampAfterOneYear } from '../../../utils/utils';\nimport { useTrialSessionContext } from '../../context/use-trial-session-context';\nimport { updateGoalInFormData } from '../../helper';\nimport SchoolGoalsView from './school-goals-view';\n\nconst SchoolGoals = memo(() => {\n const {\n milestoneConfig,\n formData,\n updateSlideConfig,\n updateButtonState,\n onRemoveOptionalSlides,\n trialHomeData,\n } = useTrialSessionContext();\n const { name, grade, goals, curriculum } = formData || {};\n\n const { demo_info: demoInfo } = trialHomeData;\n const { stream, region_data: regionData } = demoInfo || {};\n const { opportunity_country: countryCode = 'US' } = regionData || {};\n const grades = getGradesFromConfig(milestoneConfig);\n\n const curriculumStandards = useMemo(\n () =>\n getCategorizedCurriculumStandards(milestoneConfig, {\n countryCode,\n grade: grade ?? '',\n goalCategory: GOAL_CATEGORY.SCHOOL_SUCCESS,\n courseStream: stream,\n enrollmentType: 'ONLINE',\n }),\n [milestoneConfig, countryCode, grade, stream],\n );\n\n const goalsList = useMemo(\n () =>\n getGoalsFromConfig(milestoneConfig, {\n countryCode,\n grade: grade ?? '',\n goalCategory: GOAL_CATEGORY.SCHOOL_SUCCESS,\n courseStream: stream,\n curriculumStandard: curriculum,\n enrollmentType: 'ONLINE',\n }),\n [milestoneConfig, countryCode, grade, stream, curriculum],\n );\n\n const { goal_code: selectedGoal } = useMemo(\n () => goals?.find(goal => goal.goal_category === GOAL_CATEGORY.SCHOOL_SUCCESS) ?? {},\n [goals],\n );\n\n const hasRequiredFields = Boolean(name && grade && curriculum && selectedGoal);\n\n const updateStudentInformation = useCallback(\n (key: string, value: string) => {\n updateSlideConfig({\n [key]: value,\n ...(key === 'grade' || key === 'curriculum' ? { goals: [] } : {}),\n });\n },\n [updateSlideConfig],\n );\n\n const handleNameChange = useCallback<\n NonNullable<React.InputHTMLAttributes<HTMLInputElement>['onChange']>\n >(event => updateStudentInformation('name', event.target.value), [updateStudentInformation]);\n\n const handleGoalChange = useCallback(\n (value: string, option: ISelectOption<string | number>) => {\n const { label } = option;\n\n const updatedGoals = updateGoalInFormData(goals, GOAL_CATEGORY.SCHOOL_SUCCESS, {\n goal_code: value,\n milestone_name: label,\n milestone_date_ts: epochTimestampAfterOneYear(),\n });\n\n updateSlideConfig({ goals: updatedGoals });\n },\n [goals, updateSlideConfig],\n );\n\n const handleCurriculumChange = useCallback(\n (value: string) => updateStudentInformation('curriculum', value),\n [updateStudentInformation],\n );\n\n const handleGradeChange = useCallback(\n (value: string) => {\n updateStudentInformation('grade', value);\n updateStudentInformation('curriculum', '');\n },\n [updateStudentInformation],\n );\n\n useEffect(() => {\n updateButtonState('right', { isDisabled: !hasRequiredFields, isLoading: false });\n }, [hasRequiredFields, updateButtonState]);\n\n useEffect(() => {\n if (grade) {\n onRemoveOptionalSlides?.(grade);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [grade]);\n\n useEffect(() => {\n // If there is only one goal in the list, set it as the selected goal\n // and update the form data with the goal code, milestone name, and date\n const defaultGoal = goalsList.length === 1 ? goalsList[0] : undefined;\n\n if (defaultGoal) {\n const goalToUpdate = updateGoalInFormData(goals, GOAL_CATEGORY.SCHOOL_SUCCESS, {\n goal_code: defaultGoal.id ?? '',\n milestone_name: defaultGoal.label ?? '',\n milestone_date_ts: epochTimestampAfterOneYear(),\n });\n\n updateSlideConfig({ goals: goalToUpdate });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [goalsList]);\n\n return (\n <SchoolGoalsView\n name={name}\n grade={grade}\n curriculum={curriculum}\n grades={grades}\n curriculumStandards={curriculumStandards}\n goalsList={goalsList}\n selectedGoal={selectedGoal}\n onNameChange={handleNameChange}\n onGoalChange={handleGoalChange}\n onGradeChange={handleGradeChange}\n onCurriculumChange={handleCurriculumChange}\n />\n );\n});\n\nexport default SchoolGoals;\n"],"names":["SchoolGoals","memo","milestoneConfig","formData","updateSlideConfig","updateButtonState","onRemoveOptionalSlides","trialHomeData","useTrialSessionContext","name","grade","goals","curriculum","demoInfo","stream","regionData","countryCode","grades","getGradesFromConfig","curriculumStandards","useMemo","getCategorizedCurriculumStandards","GOAL_CATEGORY","goalsList","getGoalsFromConfig","selectedGoal","goal","hasRequiredFields","updateStudentInformation","useCallback","key","value","handleNameChange","event","handleGoalChange","option","label","updatedGoals","updateGoalInFormData","epochTimestampAfterOneYear","handleCurriculumChange","handleGradeChange","useEffect","defaultGoal","goalToUpdate","jsx","SchoolGoalsView"],"mappings":"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"}
1
+ {"version":3,"file":"school-goals.js","sources":["../../../../../src/features/trial-session/comps/school-goals/school-goals.tsx"],"sourcesContent":["import type { ISelectOption } from '../../../ui/inputs/base-select-input/base-select-input-types';\n\nimport { memo, useCallback, useEffect, useMemo } from 'react';\n\nimport { GOAL_CATEGORY } from '../../../milestone/constants';\nimport { getCategorizedCurriculumStandards } from '../../../milestone/create/comps/class-details-step/class-details-utils';\nimport {\n getGoalsFromConfig,\n getGradesFromConfig,\n} from '../../../milestone/create/milestone-create-helpers';\nimport { epochTimestampAfterOneYear } from '../../../utils/utils';\nimport { useTrialSessionContext } from '../../context/use-trial-session-context';\nimport { updateGoalInFormData } from '../../helper';\nimport SchoolGoalsView from './school-goals-view';\n\nconst SchoolGoals = memo(() => {\n const {\n milestoneConfig,\n formData,\n updateSlideConfig,\n updateButtonState,\n onRemoveOptionalSlides,\n trialHomeData,\n } = useTrialSessionContext();\n const { name, grade, goals, curriculum, numberInNameError } = formData || {};\n\n const { demo_info: demoInfo } = trialHomeData;\n const { stream, region_data: regionData } = demoInfo || {};\n const { opportunity_country: countryCode = 'US' } = regionData || {};\n const grades = getGradesFromConfig(milestoneConfig);\n\n const curriculumStandards = useMemo(\n () =>\n getCategorizedCurriculumStandards(milestoneConfig, {\n countryCode,\n grade: grade ?? '',\n goalCategory: GOAL_CATEGORY.SCHOOL_SUCCESS,\n courseStream: stream,\n enrollmentType: 'ONLINE',\n }),\n [milestoneConfig, countryCode, grade, stream],\n );\n\n const goalsList = useMemo(\n () =>\n getGoalsFromConfig(milestoneConfig, {\n countryCode,\n grade: grade ?? '',\n goalCategory: GOAL_CATEGORY.SCHOOL_SUCCESS,\n courseStream: stream,\n curriculumStandard: curriculum,\n enrollmentType: 'ONLINE',\n }),\n [milestoneConfig, countryCode, grade, stream, curriculum],\n );\n\n const { goal_code: selectedGoal } = useMemo(\n () => goals?.find(goal => goal.goal_category === GOAL_CATEGORY.SCHOOL_SUCCESS) ?? {},\n [goals],\n );\n\n const hasRequiredFields = Boolean(name && grade && curriculum && selectedGoal);\n\n const updateStudentInformation = useCallback(\n (key: string, value: string) => {\n updateSlideConfig({\n [key]: value,\n ...(key === 'grade' || key === 'curriculum' ? { goals: [] } : {}),\n });\n },\n [updateSlideConfig],\n );\n\n const handleNameChange = useCallback<\n NonNullable<React.InputHTMLAttributes<HTMLInputElement>['onChange']>\n >(\n event => {\n updateSlideConfig({ numberInNameError: false });\n updateStudentInformation('name', event.target.value);\n },\n [updateSlideConfig, updateStudentInformation],\n );\n\n const handleGoalChange = useCallback(\n (value: string, option: ISelectOption<string | number>) => {\n const { label } = option;\n\n const updatedGoals = updateGoalInFormData(goals, GOAL_CATEGORY.SCHOOL_SUCCESS, {\n goal_code: value,\n milestone_name: label,\n milestone_date_ts: epochTimestampAfterOneYear(),\n });\n\n updateSlideConfig({ goals: updatedGoals });\n },\n [goals, updateSlideConfig],\n );\n\n const handleCurriculumChange = useCallback(\n (value: string) => updateStudentInformation('curriculum', value),\n [updateStudentInformation],\n );\n\n const handleGradeChange = useCallback(\n (value: string) => {\n updateStudentInformation('grade', value);\n updateStudentInformation('curriculum', '');\n },\n [updateStudentInformation],\n );\n\n useEffect(() => {\n updateButtonState('right', { isDisabled: !hasRequiredFields, isLoading: false });\n }, [hasRequiredFields, updateButtonState]);\n\n useEffect(() => {\n if (grade) {\n onRemoveOptionalSlides?.(grade);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [grade]);\n\n useEffect(() => {\n // If there is only one goal in the list, set it as the selected goal\n // and update the form data with the goal code, milestone name, and date\n const defaultGoal = goalsList.length === 1 ? goalsList[0] : undefined;\n\n if (defaultGoal) {\n const goalToUpdate = updateGoalInFormData(goals, GOAL_CATEGORY.SCHOOL_SUCCESS, {\n goal_code: defaultGoal.id ?? '',\n milestone_name: defaultGoal.label ?? '',\n milestone_date_ts: epochTimestampAfterOneYear(),\n });\n\n updateSlideConfig({ goals: goalToUpdate });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [goalsList]);\n\n return (\n <SchoolGoalsView\n name={name}\n grade={grade}\n grades={grades}\n goalsList={goalsList}\n curriculum={curriculum}\n selectedGoal={selectedGoal}\n numberInNameError={numberInNameError}\n curriculumStandards={curriculumStandards}\n onNameChange={handleNameChange}\n onGoalChange={handleGoalChange}\n onGradeChange={handleGradeChange}\n onCurriculumChange={handleCurriculumChange}\n />\n );\n});\n\nexport default SchoolGoals;\n"],"names":["SchoolGoals","memo","milestoneConfig","formData","updateSlideConfig","updateButtonState","onRemoveOptionalSlides","trialHomeData","useTrialSessionContext","name","grade","goals","curriculum","numberInNameError","demoInfo","stream","regionData","countryCode","grades","getGradesFromConfig","curriculumStandards","useMemo","getCategorizedCurriculumStandards","GOAL_CATEGORY","goalsList","getGoalsFromConfig","selectedGoal","goal","hasRequiredFields","updateStudentInformation","useCallback","key","value","handleNameChange","event","handleGoalChange","option","label","updatedGoals","updateGoalInFormData","epochTimestampAfterOneYear","handleCurriculumChange","handleGradeChange","useEffect","defaultGoal","goalToUpdate","jsx","SchoolGoalsView"],"mappings":"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"}
@@ -13,60 +13,61 @@ const ue = () => {
13
13
  updateSlideConfig: s,
14
14
  slideConfig: B,
15
15
  formData: H,
16
- updateButtonState: a,
16
+ updateButtonState: n,
17
17
  teacherId: l,
18
- studentId: n,
19
- milestoneConfig: P,
20
- onTrialInformationUpdate: h,
21
- trialHomeData: x,
22
- worksheetNavigationPanel: I
23
- } = $(), { nextPage: w, id: r } = B || {}, { demo_info: Z } = x, { stream: N, region_data: K } = Z, { opportunity_country: C = "US" } = K || {}, { pageId: i } = w || {}, {
24
- name: f,
18
+ studentId: a,
19
+ milestoneConfig: L,
20
+ onTrialInformationUpdate: I,
21
+ trialHomeData: w,
22
+ worksheetNavigationPanel: N
23
+ } = $(), { nextPage: Z, id: r } = B || {}, { demo_info: K } = w, { stream: P, region_data: W } = K, { opportunity_country: C = "US" } = W || {}, { pageId: i } = Z || {}, {
24
+ name: m,
25
25
  grade: p,
26
26
  goals: g,
27
- curriculum: _,
27
+ curriculum: E,
28
28
  studentTimezone: T,
29
29
  preferences: A = [],
30
30
  personalizedLevel: R = [],
31
- personalizedFocus: O = [],
32
- personalizedBehaviors: b = []
31
+ personalizedFocus: b = [],
32
+ personalizedBehaviors: O = []
33
33
  } = H || {}, c = d(() => {
34
- a("both", {
34
+ n("both", {
35
35
  left: { isDisabled: !0, isLoading: !1 },
36
36
  right: { isDisabled: !0, isLoading: !0 }
37
37
  });
38
- }, [a]), E = (o) => {
38
+ }, [n]), _ = (o) => {
39
39
  if (!o) {
40
40
  const t = {};
41
41
  (i === e.CIRCLE_GAME || i === e.CIRCLE_PUZZLE || i === e.CIRCLE_SKILL) && (t.matchmakingId = z(), t.showCircleGameScreen = !0), s({ id: i, ...t });
42
42
  }
43
- a("both", S), (r === e.STUDENT_INFORMATION || r === e.SCHOOL_GOALS) && (h == null || h());
44
- }, { patch: v } = Y({ onComplete: E }), { patch: k } = X({
45
- onComplete: E
43
+ n("both", S), (r === e.STUDENT_INFORMATION || r === e.SCHOOL_GOALS) && (I == null || I());
44
+ }, { patch: v } = Y({ onComplete: _ }), { patch: k } = X({
45
+ onComplete: _
46
46
  }), { post: D } = J({
47
- onComplete: E
47
+ onComplete: _
48
48
  }), { post: G } = Q({
49
- onComplete: E
49
+ onComplete: _
50
50
  }), M = d(() => {
51
- const [o, t] = (f == null ? void 0 : f.split(" ")) || [], m = {
51
+ const [o, t] = (m == null ? void 0 : m.split(" ")) || [], u = {
52
52
  first_name: o,
53
53
  last_name: t,
54
54
  grade: p,
55
- board: _,
55
+ board: E,
56
56
  demo_type: "TRIAL_V3",
57
57
  teacher_id: l,
58
58
  country_alpha_2: C
59
59
  };
60
- c(), k(n, m);
60
+ /\d/.test(m || "") ? s({ numberInNameError: !0 }) : (c(), k(a, u));
61
61
  }, [
62
- f,
62
+ m,
63
63
  p,
64
- _,
64
+ E,
65
65
  l,
66
66
  C,
67
67
  c,
68
+ s,
68
69
  k,
69
- n
70
+ a
70
71
  ]), U = d(() => {
71
72
  const o = ee(A, T);
72
73
  if (o.length > 0) {
@@ -79,104 +80,104 @@ const ue = () => {
79
80
  action: "UPDATE_DEMO",
80
81
  action_data: t,
81
82
  teacher_id: l,
82
- student_id: n
83
+ student_id: a
83
84
  });
84
85
  } else
85
- s({ id: i }), a("both", S);
86
+ s({ id: i }), n("both", S);
86
87
  }, [
87
88
  A,
88
89
  T,
89
90
  c,
90
91
  v,
91
92
  l,
92
- n,
93
+ a,
93
94
  s,
94
95
  i,
95
- a
96
- ]), y = d(() => {
96
+ n
97
+ ]), x = d(() => {
97
98
  const o = {
98
- course_stream: N,
99
+ course_stream: P,
99
100
  grade: p,
100
101
  teacher_id: l,
101
- board: _,
102
+ board: E,
102
103
  goals: g
103
104
  };
104
105
  c(), D(o, {
105
- studentId: n
106
+ studentId: a
106
107
  });
107
108
  }, [
108
- _,
109
+ E,
109
110
  c,
110
111
  g,
111
112
  p,
112
113
  D,
113
- N,
114
- n,
114
+ P,
115
+ a,
115
116
  l
116
- ]), F = d(() => {
117
- const t = { preferences: te(P, [
117
+ ]), y = d(() => {
118
+ const t = { preferences: te(L, [
118
119
  ...R,
119
- ...O,
120
- ...b
121
- ]) }, m = { stream: q.MATH, studentId: n };
122
- c(), G(t, m);
120
+ ...b,
121
+ ...O
122
+ ]) }, u = { stream: q.MATH, studentId: a };
123
+ c(), G(t, u);
123
124
  }, [
124
125
  c,
125
- P,
126
- b,
126
+ L,
127
127
  O,
128
+ b,
128
129
  R,
129
130
  G,
130
- n
131
- ]), L = d(
131
+ a
132
+ ]), h = d(
132
133
  (o, t) => {
133
134
  if (!s) return;
134
- const m = r === e.STUDENT_PROFILE, V = r === e.LEARNING_PLAN, u = {};
135
- if ((t === e.CIRCLE_GAME || t === e.CIRCLE_PUZZLE || t === e.CIRCLE_SKILL) && (u.matchmakingId = z(), u.showCircleGameScreen = !0), o === "prev" && (s({
135
+ const u = r === e.STUDENT_PROFILE, F = r === e.LEARNING_PLAN, f = {};
136
+ if ((t === e.CIRCLE_GAME || t === e.CIRCLE_PUZZLE || t === e.CIRCLE_SKILL) && (f.matchmakingId = z(), f.showCircleGameScreen = !0), o === "prev" && (s({
136
137
  id: t,
137
- ...m && { studentProfile: void 0 },
138
- ...V && {
138
+ ...u && { studentProfile: void 0 },
139
+ ...F && {
139
140
  chapterId: void 0
140
141
  },
141
- ...u
142
- }), a("both", S)), o === "next")
142
+ ...f
143
+ }), n("both", S)), o === "next")
143
144
  switch (r) {
144
145
  case e.STUDENT_INFORMATION:
145
146
  case e.SCHOOL_GOALS:
146
147
  M();
147
148
  break;
148
149
  case e.LEARNING_WORKSHEET:
149
- y();
150
+ x();
150
151
  break;
151
152
  case e.CLASS_PREFERENCE:
152
153
  U();
153
154
  break;
154
155
  case e.LEARNING_LEVEL:
155
156
  case e.STUDENT_PERSONALIZATION:
156
- F();
157
+ y();
157
158
  break;
158
159
  case e.LEARNING_PLAN:
159
- s({ id: t, chapterId: void 0, ...u });
160
+ s({ id: t, chapterId: void 0, ...f });
160
161
  break;
161
162
  default:
162
- s({ id: t, ...u }), a("both", S);
163
+ s({ id: t, ...f }), n("both", S);
163
164
  }
164
165
  },
165
166
  [
166
167
  s,
167
168
  r,
168
- a,
169
+ n,
169
170
  M,
170
- y,
171
+ x,
171
172
  U,
172
- F
173
+ y
173
174
  ]
174
- ), W = d(() => {
175
- !I && r === e.LEARNING_WORKSHEET && L("next", i);
176
- }, [r, L, i, I]);
175
+ ), V = d(() => {
176
+ !N && r === e.LEARNING_WORKSHEET && h("next", i);
177
+ }, [r, h, i, N]);
177
178
  return j(() => {
178
- W();
179
- }, [I]), { handleNavigation: L };
179
+ V();
180
+ }, [N]), { handleNavigation: h };
180
181
  };
181
182
  export {
182
183
  ue as useTrialSessionNavigation
@@ -1 +1 @@
1
- {"version":3,"file":"use-trial-session-navigation.js","sources":["../../../../src/features/trial-session/hooks/use-trial-session-navigation.ts"],"sourcesContent":["import type { ITrialSessionFormFields } from '../trial-session-types';\n\nimport { useCallback, useEffect } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport { COURSE_STREAMS } from '../../milestone/constants';\nimport { useMilestoneBulkPost } from '../../milestone/create/api/milestone-bulk';\nimport { usePostStudentPreferences } from '../api/course-stream';\nimport { usePatchStudentInformation } from '../api/student-information';\nimport { usePatchTrialHome } from '../api/trial-home';\nimport { useTrialSessionContext } from '../context/use-trial-session-context';\nimport { getFormattedPreferences, getFormattedStudentPersonalizedPreference } from '../helper';\nimport { DEFAULT_BUTTON_STATE, TrialPageId } from '../trial-session-constants';\n\nconst useTrialSessionNavigation = () => {\n const {\n updateSlideConfig,\n slideConfig,\n formData,\n updateButtonState,\n teacherId,\n studentId,\n milestoneConfig,\n onTrialInformationUpdate,\n trialHomeData,\n worksheetNavigationPanel,\n } = useTrialSessionContext();\n const { nextPage, id: currentPageId } = slideConfig || {};\n const { demo_info: demoInfo } = trialHomeData;\n const { stream, region_data: regionData } = demoInfo;\n const { opportunity_country: countryCode = 'US' } = regionData || {};\n const { pageId: nextPageId } = nextPage || {};\n const {\n name,\n grade,\n goals,\n curriculum,\n studentTimezone,\n preferences = [],\n personalizedLevel = [],\n personalizedFocus = [],\n personalizedBehaviors = [],\n } = formData || {};\n\n const disableNavButtons = useCallback(() => {\n updateButtonState('both', {\n left: { isDisabled: true, isLoading: false },\n right: { isDisabled: true, isLoading: true },\n });\n }, [updateButtonState]);\n\n const onAcknowledge = (errorMessage: string | null) => {\n if (!errorMessage) {\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n nextPageId === TrialPageId.CIRCLE_GAME ||\n nextPageId === TrialPageId.CIRCLE_PUZZLE ||\n nextPageId === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n updateSlideConfig({ id: nextPageId, ...overrides });\n }\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n\n if (\n currentPageId === TrialPageId.STUDENT_INFORMATION ||\n currentPageId === TrialPageId.SCHOOL_GOALS\n ) {\n //TODO: remove TrialPageId.STUDENT_INFORMATION\n onTrialInformationUpdate?.();\n }\n };\n\n // API specifications\n const { patch: patchTrialSession } = usePatchTrialHome({ onComplete: onAcknowledge });\n const { patch: patchStudentInformation } = usePatchStudentInformation({\n onComplete: onAcknowledge,\n });\n const { post: postMilestoneBulk } = useMilestoneBulkPost({\n onComplete: onAcknowledge,\n });\n const { post: postStudentPreferences } = usePostStudentPreferences({\n onComplete: onAcknowledge,\n });\n\n // Function to call API and updates states\n const handleStudentInformation = useCallback(() => {\n const [firstName, lastName] = name?.split(' ') || [];\n const payload = {\n first_name: firstName,\n last_name: lastName,\n grade,\n board: curriculum,\n demo_type: 'TRIAL_V3',\n teacher_id: teacherId,\n country_alpha_2: countryCode,\n };\n\n disableNavButtons();\n patchStudentInformation(studentId, payload);\n }, [\n name,\n grade,\n curriculum,\n teacherId,\n countryCode,\n disableNavButtons,\n patchStudentInformation,\n studentId,\n ]);\n\n const handleClassPreferences = useCallback(() => {\n const selectedRegularSlots = getFormattedPreferences(preferences, studentTimezone);\n\n if (selectedRegularSlots.length > 0) {\n const actionData = {\n trial_details: {\n selected_regular_slots: selectedRegularSlots,\n },\n };\n\n disableNavButtons();\n patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: actionData,\n teacher_id: teacherId,\n student_id: studentId,\n });\n } else {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }, [\n preferences,\n studentTimezone,\n disableNavButtons,\n patchTrialSession,\n teacherId,\n studentId,\n updateSlideConfig,\n nextPageId,\n updateButtonState,\n ]);\n\n const handleMileStoneBulkPost = useCallback(() => {\n const payload = {\n course_stream: stream,\n grade,\n teacher_id: teacherId,\n board: curriculum,\n goals,\n };\n\n disableNavButtons();\n postMilestoneBulk(payload, {\n studentId,\n });\n }, [\n curriculum,\n disableNavButtons,\n goals,\n grade,\n postMilestoneBulk,\n stream,\n studentId,\n teacherId,\n ]);\n\n const handleStudentPreferencesPatch = useCallback(() => {\n const personalizedPreferences = getFormattedStudentPersonalizedPreference(milestoneConfig, [\n ...personalizedLevel,\n ...personalizedFocus,\n ...personalizedBehaviors,\n ]);\n\n const payload = { preferences: personalizedPreferences };\n const meta = { stream: COURSE_STREAMS.MATH, studentId };\n\n disableNavButtons();\n postStudentPreferences(payload, meta);\n }, [\n disableNavButtons,\n milestoneConfig,\n personalizedBehaviors,\n personalizedFocus,\n personalizedLevel,\n postStudentPreferences,\n studentId,\n ]);\n\n // Navigation logic\n const handleNavigation = useCallback(\n (dir: string, id?: string) => {\n if (!updateSlideConfig) return;\n\n const isStudentProfilePage = currentPageId === TrialPageId.STUDENT_PROFILE;\n const isLearningPlanSlide = currentPageId === TrialPageId.LEARNING_PLAN;\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n id === TrialPageId.CIRCLE_GAME ||\n id === TrialPageId.CIRCLE_PUZZLE ||\n id === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n if (dir === 'prev') {\n updateSlideConfig({\n id,\n ...(isStudentProfilePage && { studentProfile: undefined }),\n ...(isLearningPlanSlide && {\n chapterId: undefined,\n }),\n ...overrides,\n });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n\n if (dir === 'next') {\n switch (currentPageId) {\n //TODO: remove STUDENT_INFORMATION\n case TrialPageId.STUDENT_INFORMATION:\n case TrialPageId.SCHOOL_GOALS:\n handleStudentInformation();\n break;\n case TrialPageId.LEARNING_WORKSHEET:\n handleMileStoneBulkPost();\n break;\n case TrialPageId.CLASS_PREFERENCE:\n handleClassPreferences();\n break;\n case TrialPageId.LEARNING_LEVEL:\n case TrialPageId.STUDENT_PERSONALIZATION:\n handleStudentPreferencesPatch();\n break;\n case TrialPageId.LEARNING_PLAN:\n updateSlideConfig({ id, chapterId: undefined, ...overrides });\n break;\n default: {\n updateSlideConfig({ id, ...overrides });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }\n }\n },\n [\n updateSlideConfig,\n currentPageId,\n updateButtonState,\n handleStudentInformation,\n handleMileStoneBulkPost,\n handleClassPreferences,\n handleStudentPreferencesPatch,\n ],\n );\n\n const sessionWorksheetNavigation = useCallback(() => {\n if (!worksheetNavigationPanel && currentPageId === TrialPageId.LEARNING_WORKSHEET) {\n handleNavigation('next', nextPageId);\n }\n }, [currentPageId, handleNavigation, nextPageId, worksheetNavigationPanel]);\n\n useEffect(() => {\n sessionWorksheetNavigation();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [worksheetNavigationPanel]);\n\n return { handleNavigation };\n};\n\nexport { useTrialSessionNavigation };\n"],"names":["useTrialSessionNavigation","updateSlideConfig","slideConfig","formData","updateButtonState","teacherId","studentId","milestoneConfig","onTrialInformationUpdate","trialHomeData","worksheetNavigationPanel","useTrialSessionContext","nextPage","currentPageId","demoInfo","stream","regionData","countryCode","nextPageId","name","grade","goals","curriculum","studentTimezone","preferences","personalizedLevel","personalizedFocus","personalizedBehaviors","disableNavButtons","useCallback","onAcknowledge","errorMessage","overrides","TrialPageId","uuidv4","DEFAULT_BUTTON_STATE","patchTrialSession","usePatchTrialHome","patchStudentInformation","usePatchStudentInformation","postMilestoneBulk","useMilestoneBulkPost","postStudentPreferences","usePostStudentPreferences","handleStudentInformation","firstName","lastName","payload","handleClassPreferences","selectedRegularSlots","getFormattedPreferences","actionData","handleMileStoneBulkPost","handleStudentPreferencesPatch","getFormattedStudentPersonalizedPreference","meta","COURSE_STREAMS","handleNavigation","dir","id","isStudentProfilePage","isLearningPlanSlide","sessionWorksheetNavigation","useEffect"],"mappings":";;;;;;;;;;AAcA,MAAMA,KAA4B,MAAM;AAChC,QAAA;AAAA,IACJ,mBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,UAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,0BAAAC;AAAA,IACA,eAAAC;AAAA,IACA,0BAAAC;AAAA,MACEC,EAAuB,GACrB,EAAE,UAAAC,GAAU,IAAIC,EAAc,IAAIX,KAAe,CAAA,GACjD,EAAE,WAAWY,EAAa,IAAAL,GAC1B,EAAE,QAAAM,GAAQ,aAAaC,EAAA,IAAeF,GACtC,EAAE,qBAAqBG,IAAc,KAAK,IAAID,KAAc,CAAA,GAC5D,EAAE,QAAQE,MAAeN,KAAY,CAAA,GACrC;AAAA,IACJ,MAAAO;AAAA,IACA,OAAAC;AAAA,IACA,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,aAAAC,IAAc,CAAC;AAAA,IACf,mBAAAC,IAAoB,CAAC;AAAA,IACrB,mBAAAC,IAAoB,CAAC;AAAA,IACrB,uBAAAC,IAAwB,CAAC;AAAA,EAAA,IACvBxB,KAAY,CAAA,GAEVyB,IAAoBC,EAAY,MAAM;AAC1C,IAAAzB,EAAkB,QAAQ;AAAA,MACxB,MAAM,EAAE,YAAY,IAAM,WAAW,GAAM;AAAA,MAC3C,OAAO,EAAE,YAAY,IAAM,WAAW,GAAK;AAAA,IAAA,CAC5C;AAAA,EAAA,GACA,CAACA,CAAiB,CAAC,GAEhB0B,IAAgB,CAACC,MAAgC;AACrD,QAAI,CAACA,GAAc;AACjB,YAAMC,IAA8C,CAAA;AAGlD,OAAAd,MAAee,EAAY,eAC3Bf,MAAee,EAAY,iBAC3Bf,MAAee,EAAY,kBAE3BD,EAAU,gBAAgBE,KAC1BF,EAAU,uBAAuB,KAGnC/B,EAAkB,EAAE,IAAIiB,GAAY,GAAGc,EAAW,CAAA;AAAA,IACpD;AACA,IAAA5B,EAAkB,QAAQ+B,CAAoB,IAG5CtB,MAAkBoB,EAAY,uBAC9BpB,MAAkBoB,EAAY,kBAGHzB,KAAA,QAAAA;AAAA,EAC7B,GAII,EAAE,OAAO4B,EAAkB,IAAIC,EAAkB,EAAE,YAAYP,GAAe,GAC9E,EAAE,OAAOQ,EAAwB,IAAIC,EAA2B;AAAA,IACpE,YAAYT;AAAA,EAAA,CACb,GACK,EAAE,MAAMU,EAAkB,IAAIC,EAAqB;AAAA,IACvD,YAAYX;AAAA,EAAA,CACb,GACK,EAAE,MAAMY,EAAuB,IAAIC,EAA0B;AAAA,IACjE,YAAYb;AAAA,EAAA,CACb,GAGKc,IAA2Bf,EAAY,MAAM;AAC3C,UAAA,CAACgB,GAAWC,CAAQ,KAAI3B,KAAA,gBAAAA,EAAM,MAAM,SAAQ,IAC5C4B,IAAU;AAAA,MACd,YAAYF;AAAA,MACZ,WAAWC;AAAA,MACX,OAAA1B;AAAA,MACA,OAAOE;AAAA,MACP,WAAW;AAAA,MACX,YAAYjB;AAAA,MACZ,iBAAiBY;AAAA,IAAA;AAGD,IAAAW,KAClBU,EAAwBhC,GAAWyC,CAAO;AAAA,EAAA,GACzC;AAAA,IACD5B;AAAA,IACAC;AAAA,IACAE;AAAA,IACAjB;AAAA,IACAY;AAAA,IACAW;AAAA,IACAU;AAAA,IACAhC;AAAA,EAAA,CACD,GAEK0C,IAAyBnB,EAAY,MAAM;AACzC,UAAAoB,IAAuBC,GAAwB1B,GAAaD,CAAe;AAE7E,QAAA0B,EAAqB,SAAS,GAAG;AACnC,YAAME,IAAa;AAAA,QACjB,eAAe;AAAA,UACb,wBAAwBF;AAAA,QAC1B;AAAA,MAAA;AAGgB,MAAArB,KAClBQ,EAAkB,kBAAkB;AAAA,QAClC,QAAQ;AAAA,QACR,aAAae;AAAA,QACb,YAAY9C;AAAA,QACZ,YAAYC;AAAA,MAAA,CACb;AAAA,IAAA;AAEiB,MAAAL,EAAA,EAAE,IAAIiB,EAAA,CAAY,GACpCd,EAAkB,QAAQ+B,CAAoB;AAAA,EAChD,GACC;AAAA,IACDX;AAAA,IACAD;AAAA,IACAK;AAAA,IACAQ;AAAA,IACA/B;AAAA,IACAC;AAAA,IACAL;AAAA,IACAiB;AAAA,IACAd;AAAA,EAAA,CACD,GAEKgD,IAA0BvB,EAAY,MAAM;AAChD,UAAMkB,IAAU;AAAA,MACd,eAAehC;AAAA,MACf,OAAAK;AAAA,MACA,YAAYf;AAAA,MACZ,OAAOiB;AAAA,MACP,OAAAD;AAAA,IAAA;AAGgB,IAAAO,KAClBY,EAAkBO,GAAS;AAAA,MACzB,WAAAzC;AAAA,IAAA,CACD;AAAA,EAAA,GACA;AAAA,IACDgB;AAAA,IACAM;AAAA,IACAP;AAAA,IACAD;AAAA,IACAoB;AAAA,IACAzB;AAAA,IACAT;AAAA,IACAD;AAAA,EAAA,CACD,GAEKgD,IAAgCxB,EAAY,MAAM;AAOhD,UAAAkB,IAAU,EAAE,aANcO,GAA0C/C,GAAiB;AAAA,MACzF,GAAGkB;AAAA,MACH,GAAGC;AAAA,MACH,GAAGC;AAAA,IAAA,CACJ,KAGK4B,IAAO,EAAE,QAAQC,EAAe,MAAM,WAAAlD,EAAU;AAEpC,IAAAsB,KAClBc,EAAuBK,GAASQ,CAAI;AAAA,EAAA,GACnC;AAAA,IACD3B;AAAA,IACArB;AAAA,IACAoB;AAAA,IACAD;AAAA,IACAD;AAAA,IACAiB;AAAA,IACApC;AAAA,EAAA,CACD,GAGKmD,IAAmB5B;AAAA,IACvB,CAAC6B,GAAaC,MAAgB;AAC5B,UAAI,CAAC1D,EAAmB;AAElB,YAAA2D,IAAuB/C,MAAkBoB,EAAY,iBACrD4B,IAAsBhD,MAAkBoB,EAAY,eACpDD,IAA8C,CAAA;AAuBpD,WApBE2B,MAAO1B,EAAY,eACnB0B,MAAO1B,EAAY,iBACnB0B,MAAO1B,EAAY,kBAEnBD,EAAU,gBAAgBE,KAC1BF,EAAU,uBAAuB,KAG/B0B,MAAQ,WACQzD,EAAA;AAAA,QAChB,IAAA0D;AAAA,QACA,GAAIC,KAAwB,EAAE,gBAAgB,OAAU;AAAA,QACxD,GAAIC,KAAuB;AAAA,UACzB,WAAW;AAAA,QACb;AAAA,QACA,GAAG7B;AAAA,MAAA,CACJ,GACD5B,EAAkB,QAAQ+B,CAAoB,IAG5CuB,MAAQ;AACV,gBAAQ7C,GAAe;AAAA,UAErB,KAAKoB,EAAY;AAAA,UACjB,KAAKA,EAAY;AACU,YAAAW;AACzB;AAAA,UACF,KAAKX,EAAY;AACS,YAAAmB;AACxB;AAAA,UACF,KAAKnB,EAAY;AACQ,YAAAe;AACvB;AAAA,UACF,KAAKf,EAAY;AAAA,UACjB,KAAKA,EAAY;AACe,YAAAoB;AAC9B;AAAA,UACF,KAAKpB,EAAY;AACf,YAAAhC,EAAkB,EAAE,IAAA0D,GAAI,WAAW,QAAW,GAAG3B,GAAW;AAC5D;AAAA,UACF;AACE,YAAA/B,EAAkB,EAAE,IAAA0D,GAAI,GAAG3B,EAAW,CAAA,GACtC5B,EAAkB,QAAQ+B,CAAoB;AAAA,QAElD;AAAA,IAEJ;AAAA,IACA;AAAA,MACElC;AAAA,MACAY;AAAA,MACAT;AAAA,MACAwC;AAAA,MACAQ;AAAA,MACAJ;AAAA,MACAK;AAAA,IACF;AAAA,EAAA,GAGIS,IAA6BjC,EAAY,MAAM;AACnD,IAAI,CAACnB,KAA4BG,MAAkBoB,EAAY,sBAC7DwB,EAAiB,QAAQvC,CAAU;AAAA,KAEpC,CAACL,GAAe4C,GAAkBvC,GAAYR,CAAwB,CAAC;AAE1E,SAAAqD,EAAU,MAAM;AACa,IAAAD;EAAA,GAE1B,CAACpD,CAAwB,CAAC,GAEtB,EAAE,kBAAA+C,EAAiB;AAC5B;"}
1
+ {"version":3,"file":"use-trial-session-navigation.js","sources":["../../../../src/features/trial-session/hooks/use-trial-session-navigation.ts"],"sourcesContent":["import type { ITrialSessionFormFields } from '../trial-session-types';\n\nimport { useCallback, useEffect } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport { COURSE_STREAMS } from '../../milestone/constants';\nimport { useMilestoneBulkPost } from '../../milestone/create/api/milestone-bulk';\nimport { usePostStudentPreferences } from '../api/course-stream';\nimport { usePatchStudentInformation } from '../api/student-information';\nimport { usePatchTrialHome } from '../api/trial-home';\nimport { useTrialSessionContext } from '../context/use-trial-session-context';\nimport { getFormattedPreferences, getFormattedStudentPersonalizedPreference } from '../helper';\nimport { DEFAULT_BUTTON_STATE, TrialPageId } from '../trial-session-constants';\n\nconst useTrialSessionNavigation = () => {\n const {\n updateSlideConfig,\n slideConfig,\n formData,\n updateButtonState,\n teacherId,\n studentId,\n milestoneConfig,\n onTrialInformationUpdate,\n trialHomeData,\n worksheetNavigationPanel,\n } = useTrialSessionContext();\n const { nextPage, id: currentPageId } = slideConfig || {};\n const { demo_info: demoInfo } = trialHomeData;\n const { stream, region_data: regionData } = demoInfo;\n const { opportunity_country: countryCode = 'US' } = regionData || {};\n const { pageId: nextPageId } = nextPage || {};\n const {\n name,\n grade,\n goals,\n curriculum,\n studentTimezone,\n preferences = [],\n personalizedLevel = [],\n personalizedFocus = [],\n personalizedBehaviors = [],\n } = formData || {};\n\n const disableNavButtons = useCallback(() => {\n updateButtonState('both', {\n left: { isDisabled: true, isLoading: false },\n right: { isDisabled: true, isLoading: true },\n });\n }, [updateButtonState]);\n\n const onAcknowledge = (errorMessage: string | null) => {\n if (!errorMessage) {\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n nextPageId === TrialPageId.CIRCLE_GAME ||\n nextPageId === TrialPageId.CIRCLE_PUZZLE ||\n nextPageId === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n updateSlideConfig({ id: nextPageId, ...overrides });\n }\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n\n if (\n currentPageId === TrialPageId.STUDENT_INFORMATION ||\n currentPageId === TrialPageId.SCHOOL_GOALS\n ) {\n //TODO: remove TrialPageId.STUDENT_INFORMATION\n onTrialInformationUpdate?.();\n }\n };\n\n // API specifications\n const { patch: patchTrialSession } = usePatchTrialHome({ onComplete: onAcknowledge });\n const { patch: patchStudentInformation } = usePatchStudentInformation({\n onComplete: onAcknowledge,\n });\n const { post: postMilestoneBulk } = useMilestoneBulkPost({\n onComplete: onAcknowledge,\n });\n const { post: postStudentPreferences } = usePostStudentPreferences({\n onComplete: onAcknowledge,\n });\n\n // Function to call API and updates states\n const handleStudentInformation = useCallback(() => {\n const [firstName, lastName] = name?.split(' ') || [];\n const payload = {\n first_name: firstName,\n last_name: lastName,\n grade,\n board: curriculum,\n demo_type: 'TRIAL_V3',\n teacher_id: teacherId,\n country_alpha_2: countryCode,\n };\n const isNumberExistsInName = /\\d/.test(name || '');\n\n if (isNumberExistsInName) {\n updateSlideConfig({ numberInNameError: true });\n } else {\n disableNavButtons();\n patchStudentInformation(studentId, payload);\n }\n }, [\n name,\n grade,\n curriculum,\n teacherId,\n countryCode,\n disableNavButtons,\n updateSlideConfig,\n patchStudentInformation,\n studentId,\n ]);\n\n const handleClassPreferences = useCallback(() => {\n const selectedRegularSlots = getFormattedPreferences(preferences, studentTimezone);\n\n if (selectedRegularSlots.length > 0) {\n const actionData = {\n trial_details: {\n selected_regular_slots: selectedRegularSlots,\n },\n };\n\n disableNavButtons();\n patchTrialSession('trial-v3-patch', {\n action: 'UPDATE_DEMO',\n action_data: actionData,\n teacher_id: teacherId,\n student_id: studentId,\n });\n } else {\n updateSlideConfig({ id: nextPageId });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }, [\n preferences,\n studentTimezone,\n disableNavButtons,\n patchTrialSession,\n teacherId,\n studentId,\n updateSlideConfig,\n nextPageId,\n updateButtonState,\n ]);\n\n const handleMileStoneBulkPost = useCallback(() => {\n const payload = {\n course_stream: stream,\n grade,\n teacher_id: teacherId,\n board: curriculum,\n goals,\n };\n\n disableNavButtons();\n postMilestoneBulk(payload, {\n studentId,\n });\n }, [\n curriculum,\n disableNavButtons,\n goals,\n grade,\n postMilestoneBulk,\n stream,\n studentId,\n teacherId,\n ]);\n\n const handleStudentPreferencesPatch = useCallback(() => {\n const personalizedPreferences = getFormattedStudentPersonalizedPreference(milestoneConfig, [\n ...personalizedLevel,\n ...personalizedFocus,\n ...personalizedBehaviors,\n ]);\n\n const payload = { preferences: personalizedPreferences };\n const meta = { stream: COURSE_STREAMS.MATH, studentId };\n\n disableNavButtons();\n postStudentPreferences(payload, meta);\n }, [\n disableNavButtons,\n milestoneConfig,\n personalizedBehaviors,\n personalizedFocus,\n personalizedLevel,\n postStudentPreferences,\n studentId,\n ]);\n\n // Navigation logic\n const handleNavigation = useCallback(\n (dir: string, id?: string) => {\n if (!updateSlideConfig) return;\n\n const isStudentProfilePage = currentPageId === TrialPageId.STUDENT_PROFILE;\n const isLearningPlanSlide = currentPageId === TrialPageId.LEARNING_PLAN;\n const overrides: Partial<ITrialSessionFormFields> = {};\n\n if (\n id === TrialPageId.CIRCLE_GAME ||\n id === TrialPageId.CIRCLE_PUZZLE ||\n id === TrialPageId.CIRCLE_SKILL\n ) {\n overrides.matchmakingId = uuidv4();\n overrides.showCircleGameScreen = true;\n }\n\n if (dir === 'prev') {\n updateSlideConfig({\n id,\n ...(isStudentProfilePage && { studentProfile: undefined }),\n ...(isLearningPlanSlide && {\n chapterId: undefined,\n }),\n ...overrides,\n });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n\n if (dir === 'next') {\n switch (currentPageId) {\n //TODO: remove STUDENT_INFORMATION\n case TrialPageId.STUDENT_INFORMATION:\n case TrialPageId.SCHOOL_GOALS:\n handleStudentInformation();\n break;\n case TrialPageId.LEARNING_WORKSHEET:\n handleMileStoneBulkPost();\n break;\n case TrialPageId.CLASS_PREFERENCE:\n handleClassPreferences();\n break;\n case TrialPageId.LEARNING_LEVEL:\n case TrialPageId.STUDENT_PERSONALIZATION:\n handleStudentPreferencesPatch();\n break;\n case TrialPageId.LEARNING_PLAN:\n updateSlideConfig({ id, chapterId: undefined, ...overrides });\n break;\n default: {\n updateSlideConfig({ id, ...overrides });\n updateButtonState('both', DEFAULT_BUTTON_STATE);\n }\n }\n }\n },\n [\n updateSlideConfig,\n currentPageId,\n updateButtonState,\n handleStudentInformation,\n handleMileStoneBulkPost,\n handleClassPreferences,\n handleStudentPreferencesPatch,\n ],\n );\n\n const sessionWorksheetNavigation = useCallback(() => {\n if (!worksheetNavigationPanel && currentPageId === TrialPageId.LEARNING_WORKSHEET) {\n handleNavigation('next', nextPageId);\n }\n }, [currentPageId, handleNavigation, nextPageId, worksheetNavigationPanel]);\n\n useEffect(() => {\n sessionWorksheetNavigation();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [worksheetNavigationPanel]);\n\n return { handleNavigation };\n};\n\nexport { useTrialSessionNavigation };\n"],"names":["useTrialSessionNavigation","updateSlideConfig","slideConfig","formData","updateButtonState","teacherId","studentId","milestoneConfig","onTrialInformationUpdate","trialHomeData","worksheetNavigationPanel","useTrialSessionContext","nextPage","currentPageId","demoInfo","stream","regionData","countryCode","nextPageId","name","grade","goals","curriculum","studentTimezone","preferences","personalizedLevel","personalizedFocus","personalizedBehaviors","disableNavButtons","useCallback","onAcknowledge","errorMessage","overrides","TrialPageId","uuidv4","DEFAULT_BUTTON_STATE","patchTrialSession","usePatchTrialHome","patchStudentInformation","usePatchStudentInformation","postMilestoneBulk","useMilestoneBulkPost","postStudentPreferences","usePostStudentPreferences","handleStudentInformation","firstName","lastName","payload","handleClassPreferences","selectedRegularSlots","getFormattedPreferences","actionData","handleMileStoneBulkPost","handleStudentPreferencesPatch","getFormattedStudentPersonalizedPreference","meta","COURSE_STREAMS","handleNavigation","dir","id","isStudentProfilePage","isLearningPlanSlide","sessionWorksheetNavigation","useEffect"],"mappings":";;;;;;;;;;AAcA,MAAMA,KAA4B,MAAM;AAChC,QAAA;AAAA,IACJ,mBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,UAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,0BAAAC;AAAA,IACA,eAAAC;AAAA,IACA,0BAAAC;AAAA,MACEC,EAAuB,GACrB,EAAE,UAAAC,GAAU,IAAIC,EAAc,IAAIX,KAAe,CAAA,GACjD,EAAE,WAAWY,EAAa,IAAAL,GAC1B,EAAE,QAAAM,GAAQ,aAAaC,EAAA,IAAeF,GACtC,EAAE,qBAAqBG,IAAc,KAAK,IAAID,KAAc,CAAA,GAC5D,EAAE,QAAQE,MAAeN,KAAY,CAAA,GACrC;AAAA,IACJ,MAAAO;AAAA,IACA,OAAAC;AAAA,IACA,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,aAAAC,IAAc,CAAC;AAAA,IACf,mBAAAC,IAAoB,CAAC;AAAA,IACrB,mBAAAC,IAAoB,CAAC;AAAA,IACrB,uBAAAC,IAAwB,CAAC;AAAA,EAAA,IACvBxB,KAAY,CAAA,GAEVyB,IAAoBC,EAAY,MAAM;AAC1C,IAAAzB,EAAkB,QAAQ;AAAA,MACxB,MAAM,EAAE,YAAY,IAAM,WAAW,GAAM;AAAA,MAC3C,OAAO,EAAE,YAAY,IAAM,WAAW,GAAK;AAAA,IAAA,CAC5C;AAAA,EAAA,GACA,CAACA,CAAiB,CAAC,GAEhB0B,IAAgB,CAACC,MAAgC;AACrD,QAAI,CAACA,GAAc;AACjB,YAAMC,IAA8C,CAAA;AAGlD,OAAAd,MAAee,EAAY,eAC3Bf,MAAee,EAAY,iBAC3Bf,MAAee,EAAY,kBAE3BD,EAAU,gBAAgBE,KAC1BF,EAAU,uBAAuB,KAGnC/B,EAAkB,EAAE,IAAIiB,GAAY,GAAGc,EAAW,CAAA;AAAA,IACpD;AACA,IAAA5B,EAAkB,QAAQ+B,CAAoB,IAG5CtB,MAAkBoB,EAAY,uBAC9BpB,MAAkBoB,EAAY,kBAGHzB,KAAA,QAAAA;AAAA,EAC7B,GAII,EAAE,OAAO4B,EAAkB,IAAIC,EAAkB,EAAE,YAAYP,GAAe,GAC9E,EAAE,OAAOQ,EAAwB,IAAIC,EAA2B;AAAA,IACpE,YAAYT;AAAA,EAAA,CACb,GACK,EAAE,MAAMU,EAAkB,IAAIC,EAAqB;AAAA,IACvD,YAAYX;AAAA,EAAA,CACb,GACK,EAAE,MAAMY,EAAuB,IAAIC,EAA0B;AAAA,IACjE,YAAYb;AAAA,EAAA,CACb,GAGKc,IAA2Bf,EAAY,MAAM;AAC3C,UAAA,CAACgB,GAAWC,CAAQ,KAAI3B,KAAA,gBAAAA,EAAM,MAAM,SAAQ,IAC5C4B,IAAU;AAAA,MACd,YAAYF;AAAA,MACZ,WAAWC;AAAA,MACX,OAAA1B;AAAA,MACA,OAAOE;AAAA,MACP,WAAW;AAAA,MACX,YAAYjB;AAAA,MACZ,iBAAiBY;AAAA,IAAA;AAInB,IAF6B,KAAK,KAAKE,KAAQ,EAAE,IAG7BlB,EAAA,EAAE,mBAAmB,GAAA,CAAM,KAE3B2B,KAClBU,EAAwBhC,GAAWyC,CAAO;AAAA,EAC5C,GACC;AAAA,IACD5B;AAAA,IACAC;AAAA,IACAE;AAAA,IACAjB;AAAA,IACAY;AAAA,IACAW;AAAA,IACA3B;AAAA,IACAqC;AAAA,IACAhC;AAAA,EAAA,CACD,GAEK0C,IAAyBnB,EAAY,MAAM;AACzC,UAAAoB,IAAuBC,GAAwB1B,GAAaD,CAAe;AAE7E,QAAA0B,EAAqB,SAAS,GAAG;AACnC,YAAME,IAAa;AAAA,QACjB,eAAe;AAAA,UACb,wBAAwBF;AAAA,QAC1B;AAAA,MAAA;AAGgB,MAAArB,KAClBQ,EAAkB,kBAAkB;AAAA,QAClC,QAAQ;AAAA,QACR,aAAae;AAAA,QACb,YAAY9C;AAAA,QACZ,YAAYC;AAAA,MAAA,CACb;AAAA,IAAA;AAEiB,MAAAL,EAAA,EAAE,IAAIiB,EAAA,CAAY,GACpCd,EAAkB,QAAQ+B,CAAoB;AAAA,EAChD,GACC;AAAA,IACDX;AAAA,IACAD;AAAA,IACAK;AAAA,IACAQ;AAAA,IACA/B;AAAA,IACAC;AAAA,IACAL;AAAA,IACAiB;AAAA,IACAd;AAAA,EAAA,CACD,GAEKgD,IAA0BvB,EAAY,MAAM;AAChD,UAAMkB,IAAU;AAAA,MACd,eAAehC;AAAA,MACf,OAAAK;AAAA,MACA,YAAYf;AAAA,MACZ,OAAOiB;AAAA,MACP,OAAAD;AAAA,IAAA;AAGgB,IAAAO,KAClBY,EAAkBO,GAAS;AAAA,MACzB,WAAAzC;AAAA,IAAA,CACD;AAAA,EAAA,GACA;AAAA,IACDgB;AAAA,IACAM;AAAA,IACAP;AAAA,IACAD;AAAA,IACAoB;AAAA,IACAzB;AAAA,IACAT;AAAA,IACAD;AAAA,EAAA,CACD,GAEKgD,IAAgCxB,EAAY,MAAM;AAOhD,UAAAkB,IAAU,EAAE,aANcO,GAA0C/C,GAAiB;AAAA,MACzF,GAAGkB;AAAA,MACH,GAAGC;AAAA,MACH,GAAGC;AAAA,IAAA,CACJ,KAGK4B,IAAO,EAAE,QAAQC,EAAe,MAAM,WAAAlD,EAAU;AAEpC,IAAAsB,KAClBc,EAAuBK,GAASQ,CAAI;AAAA,EAAA,GACnC;AAAA,IACD3B;AAAA,IACArB;AAAA,IACAoB;AAAA,IACAD;AAAA,IACAD;AAAA,IACAiB;AAAA,IACApC;AAAA,EAAA,CACD,GAGKmD,IAAmB5B;AAAA,IACvB,CAAC6B,GAAaC,MAAgB;AAC5B,UAAI,CAAC1D,EAAmB;AAElB,YAAA2D,IAAuB/C,MAAkBoB,EAAY,iBACrD4B,IAAsBhD,MAAkBoB,EAAY,eACpDD,IAA8C,CAAA;AAuBpD,WApBE2B,MAAO1B,EAAY,eACnB0B,MAAO1B,EAAY,iBACnB0B,MAAO1B,EAAY,kBAEnBD,EAAU,gBAAgBE,KAC1BF,EAAU,uBAAuB,KAG/B0B,MAAQ,WACQzD,EAAA;AAAA,QAChB,IAAA0D;AAAA,QACA,GAAIC,KAAwB,EAAE,gBAAgB,OAAU;AAAA,QACxD,GAAIC,KAAuB;AAAA,UACzB,WAAW;AAAA,QACb;AAAA,QACA,GAAG7B;AAAA,MAAA,CACJ,GACD5B,EAAkB,QAAQ+B,CAAoB,IAG5CuB,MAAQ;AACV,gBAAQ7C,GAAe;AAAA,UAErB,KAAKoB,EAAY;AAAA,UACjB,KAAKA,EAAY;AACU,YAAAW;AACzB;AAAA,UACF,KAAKX,EAAY;AACS,YAAAmB;AACxB;AAAA,UACF,KAAKnB,EAAY;AACQ,YAAAe;AACvB;AAAA,UACF,KAAKf,EAAY;AAAA,UACjB,KAAKA,EAAY;AACe,YAAAoB;AAC9B;AAAA,UACF,KAAKpB,EAAY;AACf,YAAAhC,EAAkB,EAAE,IAAA0D,GAAI,WAAW,QAAW,GAAG3B,GAAW;AAC5D;AAAA,UACF;AACE,YAAA/B,EAAkB,EAAE,IAAA0D,GAAI,GAAG3B,EAAW,CAAA,GACtC5B,EAAkB,QAAQ+B,CAAoB;AAAA,QAElD;AAAA,IAEJ;AAAA,IACA;AAAA,MACElC;AAAA,MACAY;AAAA,MACAT;AAAA,MACAwC;AAAA,MACAQ;AAAA,MACAJ;AAAA,MACAK;AAAA,IACF;AAAA,EAAA,GAGIS,IAA6BjC,EAAY,MAAM;AACnD,IAAI,CAACnB,KAA4BG,MAAkBoB,EAAY,sBAC7DwB,EAAiB,QAAQvC,CAAU;AAAA,KAEpC,CAACL,GAAe4C,GAAkBvC,GAAYR,CAAwB,CAAC;AAE1E,SAAAqD,EAAU,MAAM;AACa,IAAAD;EAAA,GAE1B,CAACpD,CAAwB,CAAC,GAEtB,EAAE,kBAAA+C,EAAiB;AAC5B;"}
@@ -1 +1 @@
1
- {"version":3,"file":"trial-session-types.js","sources":["../../../src/features/trial-session/trial-session-types.ts"],"sourcesContent":["import type { TNodeTypes } from '../../types/models/worksheet';\nimport type { IInfoMessage } from '../circle-games/games/web-view/web-view-types';\nimport type { IMilestoneConfig, TCourseStream } from '../milestone/create/milestone-create-types';\nimport type { IAvatarLayer } from '../ui/avatar/avatar-types';\nimport type { TUserTypes } from '../ui/types';\nimport type { TPreference } from './comps/class-preference/class-preference-types';\nimport type {\n ITrialCircleConfig,\n ITrialCircleGameParams,\n} from './comps/trial-circle-game/trial-circle-game-types';\nimport type { TrialPageId } from './trial-session-constants';\nimport type { Dispatch, SetStateAction } from 'react';\n\nexport type TSlideId = TrialPageId;\n\nexport type TRegionData = {\n opportunity_country: string;\n};\n\nexport enum EClassTimeAlertLevel {\n FIVE_MIN = '5min',\n FIFTEEN_MIN = '15min',\n}\ninterface IButtonConfig {\n buttonLabel: string;\n pageId: string;\n}\n\nexport interface ISolution {\n media?: string;\n media_type?: 'image' | 'video';\n text?: string;\n}\n\nexport type TDegreeInformation = { degree_name?: string; field_of_study?: string };\n\nexport interface ITeacherProfileDetails {\n lower_grade: string;\n higher_grade: string;\n header_image: string;\n years_of_experience: number;\n number_of_students_taught: number;\n countries: string[];\n degree: TDegreeInformation;\n}\n\nexport interface ISlide {\n id: TrialPageId;\n renderAs: 'split' | 'full';\n renderAVIn: 'left' | 'right';\n header: string;\n subHeader?: string;\n prevPage?: IButtonConfig;\n nextPage?: IButtonConfig;\n cues?: string[];\n dos?: string[];\n donts?: string[];\n navigationLabel?: string;\n slideTag?: string;\n teacher_profile?: ITeacherProfileDetails;\n solutions?: ISolution[];\n enableSessionPerk?: boolean;\n}\n\nexport interface TGoals {\n goal_code?: string;\n milestone_date_ts?: number;\n goal_category?: string;\n milestone_name?: string;\n publish?: boolean;\n}\n\nexport interface ITrialSessionFormFields {\n id: string;\n name?: string;\n grade?: string;\n curriculum?: string;\n goals?: TGoals[];\n studentProfile?: {\n profileSummary?: string;\n dummyProfileImageIndex?: number;\n summaryFetched?: boolean;\n summaryFetchFailed?: boolean;\n };\n userNodeId?: string;\n nodeId?: string;\n nodeType?: TNodeTypes;\n attemptId?: string;\n preferences?: TPreference[];\n personalizedLevel?: string[];\n personalizedFocus?: string[];\n personalizedBehaviors?: string[];\n isCircleGamePlayed?: boolean;\n isCirclePuzzleSolved?: boolean;\n isCircleSkillCompleted?: boolean;\n studentTimezone?: string;\n showCircleGameScreen?: boolean;\n accuracyStr?: string;\n totalTimeTaken?: number;\n chapterId?: string;\n matchmakingId?: string;\n}\n\nexport interface IButtonState {\n isDisabled: boolean;\n isLoading: boolean;\n}\n\nexport interface ITrialHomeData {\n pages: ISlide[];\n demo_info: {\n student_classroom_id: string;\n stream: TCourseStream;\n region_data: TRegionData;\n };\n parent: {\n name: string;\n };\n student: {\n grade: string;\n name: string;\n circle_username: string;\n user_avatar: IAvatarLayer[];\n };\n teacher: {\n name: string;\n circle_username: string;\n user_avatar: IAvatarLayer[];\n };\n circle_trial_game_config: ITrialCircleConfig;\n}\n\nexport interface IClassTimeAlertConfig {\n alertLevel: EClassTimeAlertLevel | null;\n isVisible: boolean;\n onComplete: () => void;\n}\n\nexport interface ITrialSessionProps {\n countryCode?: string;\n classStartedOn?: Date;\n height?: string | number;\n userType: TUserTypes;\n studentId: string;\n teacherId: string;\n teacherClassroomId: string;\n teacherPanel?: JSX.Element;\n studentPanel?: JSX.Element;\n formData?: ITrialSessionFormFields;\n onFormDataChange?: Dispatch<SetStateAction<ITrialSessionFormFields | undefined>>;\n worksheet?: JSX.Element;\n worksheetNavigationPanel?: JSX.Element;\n questionsRatingPanel?: JSX.Element;\n studentAbsentInClass?: boolean;\n openEndClassModal?: () => void;\n trialGameUrl: string;\n handleInfoMessage: (message: IInfoMessage) => void;\n classTimeAlertConfig?: IClassTimeAlertConfig;\n classDuration?: number;\n}\n\nexport interface ITrialSessionContext\n extends Pick<\n ITrialSessionProps,\n | 'classStartedOn'\n | 'formData'\n | 'teacherPanel'\n | 'studentId'\n | 'teacherId'\n | 'studentPanel'\n | 'worksheet'\n | 'worksheetNavigationPanel'\n | 'questionsRatingPanel'\n | 'openEndClassModal'\n | 'studentAbsentInClass'\n | 'classDuration'\n | 'classTimeAlertConfig'\n > {\n buttonState: { left: IButtonState; right: IButtonState };\n isTeacher: boolean;\n milestoneConfig: IMilestoneConfig;\n slideConfig: ISlide;\n updateButtonState: (\n btnNavDir: 'left' | 'right' | 'both',\n currentState: IButtonState | { left: IButtonState; right: IButtonState },\n ) => void;\n updateSlideConfig: (config: Partial<ITrialSessionFormFields>) => void;\n trialHomeData: ITrialHomeData;\n onTrialInformationUpdate?: () => void;\n circleGames: ITrialCircleGameParams;\n trialGameUrl: string;\n handleInfoMessage: (message: IInfoMessage) => void;\n onRemoveOptionalSlides?: (grade?: string) => void;\n}\n\nexport interface ITrialSessionViewProps extends ITrialSessionProps {\n trialHomeData: ITrialHomeData;\n milestoneConfig: IMilestoneConfig;\n studentTimezone?: string;\n onStudentTimezoneUpdate?: () => void;\n onTrialInformationUpdate?: () => void;\n handleInfoMessage: (message: IInfoMessage) => void;\n onRemoveOptionalSlides?: (grade?: string) => void;\n}\n"],"names":["EClassTimeAlertLevel"],"mappings":"AAmBY,IAAAA,sBAAAA,OACVA,EAAA,WAAW,QACXA,EAAA,cAAc,SAFJA,IAAAA,KAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"trial-session-types.js","sources":["../../../src/features/trial-session/trial-session-types.ts"],"sourcesContent":["import type { TNodeTypes } from '../../types/models/worksheet';\nimport type { IInfoMessage } from '../circle-games/games/web-view/web-view-types';\nimport type { IMilestoneConfig, TCourseStream } from '../milestone/create/milestone-create-types';\nimport type { IAvatarLayer } from '../ui/avatar/avatar-types';\nimport type { TUserTypes } from '../ui/types';\nimport type { TPreference } from './comps/class-preference/class-preference-types';\nimport type {\n ITrialCircleConfig,\n ITrialCircleGameParams,\n} from './comps/trial-circle-game/trial-circle-game-types';\nimport type { TrialPageId } from './trial-session-constants';\nimport type { Dispatch, SetStateAction } from 'react';\n\nexport type TSlideId = TrialPageId;\n\nexport type TRegionData = {\n opportunity_country: string;\n};\n\nexport enum EClassTimeAlertLevel {\n FIVE_MIN = '5min',\n FIFTEEN_MIN = '15min',\n}\ninterface IButtonConfig {\n buttonLabel: string;\n pageId: string;\n}\n\nexport interface ISolution {\n media?: string;\n media_type?: 'image' | 'video';\n text?: string;\n}\n\nexport type TDegreeInformation = { degree_name?: string; field_of_study?: string };\n\nexport interface ITeacherProfileDetails {\n lower_grade: string;\n higher_grade: string;\n header_image: string;\n years_of_experience: number;\n number_of_students_taught: number;\n countries: string[];\n degree: TDegreeInformation;\n}\n\nexport interface ISlide {\n id: TrialPageId;\n renderAs: 'split' | 'full';\n renderAVIn: 'left' | 'right';\n header: string;\n subHeader?: string;\n prevPage?: IButtonConfig;\n nextPage?: IButtonConfig;\n cues?: string[];\n dos?: string[];\n donts?: string[];\n navigationLabel?: string;\n slideTag?: string;\n teacher_profile?: ITeacherProfileDetails;\n solutions?: ISolution[];\n enableSessionPerk?: boolean;\n}\n\nexport interface TGoals {\n goal_code?: string;\n milestone_date_ts?: number;\n goal_category?: string;\n milestone_name?: string;\n publish?: boolean;\n}\n\nexport interface ITrialSessionFormFields {\n id: string;\n name?: string;\n grade?: string;\n curriculum?: string;\n goals?: TGoals[];\n studentProfile?: {\n profileSummary?: string;\n dummyProfileImageIndex?: number;\n summaryFetched?: boolean;\n summaryFetchFailed?: boolean;\n };\n userNodeId?: string;\n nodeId?: string;\n nodeType?: TNodeTypes;\n attemptId?: string;\n preferences?: TPreference[];\n personalizedLevel?: string[];\n personalizedFocus?: string[];\n personalizedBehaviors?: string[];\n isCircleGamePlayed?: boolean;\n isCirclePuzzleSolved?: boolean;\n isCircleSkillCompleted?: boolean;\n studentTimezone?: string;\n showCircleGameScreen?: boolean;\n accuracyStr?: string;\n totalTimeTaken?: number;\n chapterId?: string;\n matchmakingId?: string;\n numberInNameError?: boolean;\n}\n\nexport interface IButtonState {\n isDisabled: boolean;\n isLoading: boolean;\n}\n\nexport interface ITrialHomeData {\n pages: ISlide[];\n demo_info: {\n student_classroom_id: string;\n stream: TCourseStream;\n region_data: TRegionData;\n };\n parent: {\n name: string;\n };\n student: {\n grade: string;\n name: string;\n circle_username: string;\n user_avatar: IAvatarLayer[];\n };\n teacher: {\n name: string;\n circle_username: string;\n user_avatar: IAvatarLayer[];\n };\n circle_trial_game_config: ITrialCircleConfig;\n}\n\nexport interface IClassTimeAlertConfig {\n alertLevel: EClassTimeAlertLevel | null;\n isVisible: boolean;\n onComplete: () => void;\n}\n\nexport interface ITrialSessionProps {\n countryCode?: string;\n classStartedOn?: Date;\n height?: string | number;\n userType: TUserTypes;\n studentId: string;\n teacherId: string;\n teacherClassroomId: string;\n teacherPanel?: JSX.Element;\n studentPanel?: JSX.Element;\n formData?: ITrialSessionFormFields;\n onFormDataChange?: Dispatch<SetStateAction<ITrialSessionFormFields | undefined>>;\n worksheet?: JSX.Element;\n worksheetNavigationPanel?: JSX.Element;\n questionsRatingPanel?: JSX.Element;\n studentAbsentInClass?: boolean;\n openEndClassModal?: () => void;\n trialGameUrl: string;\n handleInfoMessage: (message: IInfoMessage) => void;\n classTimeAlertConfig?: IClassTimeAlertConfig;\n classDuration?: number;\n}\n\nexport interface ITrialSessionContext\n extends Pick<\n ITrialSessionProps,\n | 'classStartedOn'\n | 'formData'\n | 'teacherPanel'\n | 'studentId'\n | 'teacherId'\n | 'studentPanel'\n | 'worksheet'\n | 'worksheetNavigationPanel'\n | 'questionsRatingPanel'\n | 'openEndClassModal'\n | 'studentAbsentInClass'\n | 'classDuration'\n | 'classTimeAlertConfig'\n > {\n buttonState: { left: IButtonState; right: IButtonState };\n isTeacher: boolean;\n milestoneConfig: IMilestoneConfig;\n slideConfig: ISlide;\n updateButtonState: (\n btnNavDir: 'left' | 'right' | 'both',\n currentState: IButtonState | { left: IButtonState; right: IButtonState },\n ) => void;\n updateSlideConfig: (config: Partial<ITrialSessionFormFields>) => void;\n trialHomeData: ITrialHomeData;\n onTrialInformationUpdate?: () => void;\n circleGames: ITrialCircleGameParams;\n trialGameUrl: string;\n handleInfoMessage: (message: IInfoMessage) => void;\n onRemoveOptionalSlides?: (grade?: string) => void;\n}\n\nexport interface ITrialSessionViewProps extends ITrialSessionProps {\n trialHomeData: ITrialHomeData;\n milestoneConfig: IMilestoneConfig;\n studentTimezone?: string;\n onStudentTimezoneUpdate?: () => void;\n onTrialInformationUpdate?: () => void;\n handleInfoMessage: (message: IInfoMessage) => void;\n onRemoveOptionalSlides?: (grade?: string) => void;\n}\n"],"names":["EClassTimeAlertLevel"],"mappings":"AAmBY,IAAAA,sBAAAA,OACVA,EAAA,WAAW,QACXA,EAAA,cAAc,SAFJA,IAAAA,KAAA,CAAA,CAAA;"}
@@ -12,8 +12,8 @@ const n = () => {
12
12
  // Set the Learnosity host header if applicable
13
13
  }
14
14
  } : void 0;
15
- }, { useGet: u } = o({
16
- getURL: (t, e) => `${r}/worksheets/fb575b36-7861-11e8-b8d4-acbc3277df8f/?${s({
15
+ }, i = () => window.location.hostname === "storybook.cuemath.com" ? "https://leap.cuemath.com" : "", { useGet: h } = o({
16
+ getURL: (t, e) => `${i()}${r}/worksheets/fb575b36-7861-11e8-b8d4-acbc3277df8f/?${s({
17
17
  activityReference: t,
18
18
  sign: !0,
19
19
  meta: !0,
@@ -23,6 +23,6 @@ const n = () => {
23
23
  params: a()
24
24
  });
25
25
  export {
26
- u as usePreviewWorksheetGet
26
+ h as usePreviewWorksheetGet
27
27
  };
28
28
  //# sourceMappingURL=get-preview-worksheet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-preview-worksheet.js","sources":["../../../../../src/features/worksheet/worksheet-preview/api/get-preview-worksheet.ts"],"sourcesContent":["import type { IPreviewWorksheetModel } from '../../../../types/models/worksheet';\n\nimport { createGetAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V1 } from '../../../../constants/api';\nimport { stringify } from '../../../../helpers/query-string';\n\n/**\n * Determines the Learnosity host based on the current window location.\n * Returns the hostname if it starts with 'local' or matches 'storybook.cuemath.com',\n * otherwise returns null.\n */\nconst getLearnosityHost = () => {\n const hostname = window.location.hostname;\n\n if (hostname.startsWith('local') || hostname === 'storybook.cuemath.com') {\n return hostname;\n }\n\n return null;\n};\n\nconst getParams = () => {\n const learnosityHost = getLearnosityHost();\n\n return learnosityHost\n ? {\n headers: {\n 'Learnosity-Host': learnosityHost, // Set the Learnosity host header if applicable\n },\n }\n : undefined;\n};\n\ntype TPreviewWorksheetQuery = {\n action: string;\n node_type: string;\n items?: string[];\n};\n\nconst { useGet: usePreviewWorksheetGet } = createGetAPI<\n IPreviewWorksheetModel,\n TPreviewWorksheetQuery\n>({\n getURL: (activityRef, query) =>\n `${BASE_URL_V1}/worksheets/fb575b36-7861-11e8-b8d4-acbc3277df8f/?${stringify({\n activityReference: activityRef,\n sign: true,\n meta: true,\n test: true,\n ...query,\n })}`,\n params: getParams(),\n});\n\nexport { usePreviewWorksheetGet };\n"],"names":["getLearnosityHost","hostname","getParams","learnosityHost","usePreviewWorksheetGet","createGetAPI","activityRef","query","BASE_URL_V1","stringify"],"mappings":";;;AAYA,MAAMA,IAAoB,MAAM;AACxB,QAAAC,IAAW,OAAO,SAAS;AAEjC,SAAIA,EAAS,WAAW,OAAO,KAAKA,MAAa,0BACxCA,IAGF;AACT,GAEMC,IAAY,MAAM;AACtB,QAAMC,IAAiBH;AAEvB,SAAOG,IACH;AAAA,IACE,SAAS;AAAA,MACP,mBAAmBA;AAAA;AAAA,IACrB;AAAA,EAEF,IAAA;AACN,GAQM,EAAE,QAAQC,EAAuB,IAAIC,EAGzC;AAAA,EACA,QAAQ,CAACC,GAAaC,MACpB,GAAGC,CAAW,qDAAqDC,EAAU;AAAA,IAC3E,mBAAmBH;AAAA,IACnB,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,GAAGC;AAAA,EACJ,CAAA,CAAC;AAAA,EACJ,QAAQL,EAAU;AACpB,CAAC;"}
1
+ {"version":3,"file":"get-preview-worksheet.js","sources":["../../../../../src/features/worksheet/worksheet-preview/api/get-preview-worksheet.ts"],"sourcesContent":["import type { IPreviewWorksheetModel } from '../../../../types/models/worksheet';\n\nimport { createGetAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V1 } from '../../../../constants/api';\nimport { stringify } from '../../../../helpers/query-string';\n\n/**\n * Determines the Learnosity host based on the current window location.\n * Returns the hostname if it starts with 'local' or matches 'storybook.cuemath.com',\n * otherwise returns null.\n */\nconst getLearnosityHost = () => {\n const hostname = window.location.hostname;\n\n if (hostname.startsWith('local') || hostname === 'storybook.cuemath.com') {\n return hostname;\n }\n\n return null;\n};\n\nconst getParams = () => {\n const learnosityHost = getLearnosityHost();\n\n return learnosityHost\n ? {\n headers: {\n 'Learnosity-Host': learnosityHost, // Set the Learnosity host header if applicable\n },\n }\n : undefined;\n};\n\nconst getDomainName = () => {\n if (window.location.hostname === 'storybook.cuemath.com') {\n return 'https://leap.cuemath.com';\n }\n\n return '';\n};\n\ntype TPreviewWorksheetQuery = {\n action: string;\n node_type: string;\n items?: string[];\n};\n\nconst { useGet: usePreviewWorksheetGet } = createGetAPI<\n IPreviewWorksheetModel,\n TPreviewWorksheetQuery\n>({\n getURL: (activityRef, query) =>\n `${getDomainName()}${BASE_URL_V1}/worksheets/fb575b36-7861-11e8-b8d4-acbc3277df8f/?${stringify({\n activityReference: activityRef,\n sign: true,\n meta: true,\n test: true,\n ...query,\n })}`,\n params: getParams(),\n});\n\nexport { usePreviewWorksheetGet };\n"],"names":["getLearnosityHost","hostname","getParams","learnosityHost","getDomainName","usePreviewWorksheetGet","createGetAPI","activityRef","query","BASE_URL_V1","stringify"],"mappings":";;;AAYA,MAAMA,IAAoB,MAAM;AACxB,QAAAC,IAAW,OAAO,SAAS;AAEjC,SAAIA,EAAS,WAAW,OAAO,KAAKA,MAAa,0BACxCA,IAGF;AACT,GAEMC,IAAY,MAAM;AACtB,QAAMC,IAAiBH;AAEvB,SAAOG,IACH;AAAA,IACE,SAAS;AAAA,MACP,mBAAmBA;AAAA;AAAA,IACrB;AAAA,EAEF,IAAA;AACN,GAEMC,IAAgB,MAChB,OAAO,SAAS,aAAa,0BACxB,6BAGF,IASH,EAAE,QAAQC,EAAuB,IAAIC,EAGzC;AAAA,EACA,QAAQ,CAACC,GAAaC,MACpB,GAAGJ,GAAe,GAAGK,CAAW,qDAAqDC,EAAU;AAAA,IAC7F,mBAAmBH;AAAA,IACnB,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,GAAGC;AAAA,EACJ,CAAA,CAAC;AAAA,EACJ,QAAQN,EAAU;AACpB,CAAC;"}
package/dist/index.d.ts CHANGED
@@ -3402,6 +3402,7 @@ export declare interface ITrialSessionFormFields {
3402
3402
  totalTimeTaken?: number;
3403
3403
  chapterId?: string;
3404
3404
  matchmakingId?: string;
3405
+ numberInNameError?: boolean;
3405
3406
  }
3406
3407
 
3407
3408
  declare interface ITrialSessionMetadata {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cuemath/leap",
3
- "version": "3.0.23",
3
+ "version": "3.0.24",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"