@cuemath/leap 3.5.66-link0 → 3.5.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/features/cue-canvas/bottombar/homework-controls.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/sidebar.js +4 -4
- package/dist/features/cue-canvas/sidebar/sidebar.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/toolbar.js +17 -21
- package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js +13 -23
- package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -1
- package/dist/features/homework/homework-card-view.js +30 -29
- package/dist/features/homework/homework-card-view.js.map +1 -1
- package/dist/features/milestone/create/api/milestone-config.js.map +1 -1
- package/dist/features/parent-dashboard/modals/trial-report/trial-report.js +1 -1
- package/dist/features/parent-dashboard/modals/trial-report/trial-report.js.map +1 -1
- package/dist/features/trial-session/api/trial-home.js +16 -10
- package/dist/features/trial-session/api/trial-home.js.map +1 -1
- package/dist/features/trial-session/comps/background-grid/background-grid-utils.js +50 -62
- package/dist/features/trial-session/comps/background-grid/background-grid-utils.js.map +1 -1
- package/dist/features/trial-session/comps/class-preference/class-preference-styled.js +14 -5
- package/dist/features/trial-session/comps/class-preference/class-preference-styled.js.map +1 -1
- package/dist/features/trial-session/comps/class-preference/class-preference.js +53 -55
- package/dist/features/trial-session/comps/class-preference/class-preference.js.map +1 -1
- package/dist/features/trial-session/comps/communication-slide/communication-slide-constants.js +2 -3
- package/dist/features/trial-session/comps/communication-slide/communication-slide-constants.js.map +1 -1
- package/dist/features/trial-session/comps/confirmation-modal/hooks/use-confirmation-modal.js +27 -27
- package/dist/features/trial-session/comps/confirmation-modal/hooks/use-confirmation-modal.js.map +1 -1
- package/dist/features/trial-session/comps/learning-session/learning-session-styled.js +18 -19
- package/dist/features/trial-session/comps/learning-session/learning-session-styled.js.map +1 -1
- package/dist/features/trial-session/comps/learning-session/learning-session.js +43 -34
- package/dist/features/trial-session/comps/learning-session/learning-session.js.map +1 -1
- package/dist/features/trial-session/comps/navigation-bar/index.js +58 -56
- package/dist/features/trial-session/comps/navigation-bar/index.js.map +1 -1
- package/dist/features/trial-session/comps/offering-information/offering-information-constants.js +6 -29
- package/dist/features/trial-session/comps/offering-information/offering-information-constants.js.map +1 -1
- package/dist/features/trial-session/comps/offering-information/offering-information.js +64 -74
- package/dist/features/trial-session/comps/offering-information/offering-information.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals-styled.js +9 -10
- package/dist/features/trial-session/comps/school-goals/school-goals-styled.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js +39 -40
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals.js +37 -39
- package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
- package/dist/features/trial-session/comps/session-insights/session-insights-styled.js +20 -12
- package/dist/features/trial-session/comps/session-insights/session-insights-styled.js.map +1 -1
- package/dist/features/trial-session/comps/session-insights/session-insights.js +63 -64
- package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
- package/dist/features/trial-session/comps/session-overview/session-overview-styled.js +13 -13
- package/dist/features/trial-session/comps/session-overview/session-overview-styled.js.map +1 -1
- package/dist/features/trial-session/comps/session-overview/session-overview-utils.js +4 -23
- package/dist/features/trial-session/comps/session-overview/session-overview-utils.js.map +1 -1
- package/dist/features/trial-session/comps/session-overview/session-overview.js +20 -20
- package/dist/features/trial-session/comps/session-overview/session-overview.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/report-404/report-404.js +16 -15
- package/dist/features/trial-session/comps/session-report/report-404/report-404.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/session-report.js +33 -35
- package/dist/features/trial-session/comps/session-report/session-report.js.map +1 -1
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment-styled.js +16 -9
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js +37 -39
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
- package/dist/features/trial-session/comps/student-feedback/student-feedback-styled.js +9 -10
- package/dist/features/trial-session/comps/student-feedback/student-feedback-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-info/student-info-styled.js +11 -26
- package/dist/features/trial-session/comps/student-info/student-info-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-info/student-info.js +78 -113
- package/dist/features/trial-session/comps/student-info/student-info.js.map +1 -1
- package/dist/features/trial-session/comps/student-personalization/student-personalization-styled.js +12 -3
- package/dist/features/trial-session/comps/student-personalization/student-personalization-styled.js.map +1 -1
- package/dist/features/trial-session/comps/student-personalization/student-personalization.js +33 -34
- package/dist/features/trial-session/comps/student-personalization/student-personalization.js.map +1 -1
- package/dist/features/trial-session/comps/student-profile/student-profile.js +44 -45
- package/dist/features/trial-session/comps/student-profile/student-profile.js.map +1 -1
- package/dist/features/trial-session/comps/teacher-intro/teacher-intro.js +8 -9
- package/dist/features/trial-session/comps/teacher-intro/teacher-intro.js.map +1 -1
- package/dist/features/trial-session/comps/test-prep/test-prep-styled.js +19 -11
- package/dist/features/trial-session/comps/test-prep/test-prep-styled.js.map +1 -1
- package/dist/features/trial-session/comps/test-prep/test-prep.js +29 -31
- package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
- package/dist/features/trial-session/comps/worksheet/worksheet.js +33 -35
- package/dist/features/trial-session/comps/worksheet/worksheet.js.map +1 -1
- package/dist/features/trial-session/context/trial-session-context.js +0 -2
- package/dist/features/trial-session/context/trial-session-context.js.map +1 -1
- package/dist/features/trial-session/helper.js +64 -70
- package/dist/features/trial-session/helper.js.map +1 -1
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js +158 -190
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
- package/dist/features/trial-session/right-panel/right-panel-styled.js +8 -8
- package/dist/features/trial-session/right-panel/right-panel-styled.js.map +1 -1
- package/dist/features/trial-session/right-panel/slide-components-map.js +36 -42
- package/dist/features/trial-session/right-panel/slide-components-map.js.map +1 -1
- package/dist/features/trial-session/trial-session-constants.js +18 -22
- package/dist/features/trial-session/trial-session-constants.js.map +1 -1
- package/dist/features/trial-session/trial-session-types.js.map +1 -1
- package/dist/features/trial-session/trial-session-view.js +77 -82
- package/dist/features/trial-session/trial-session-view.js.map +1 -1
- package/dist/features/trial-session/trial-session.js +38 -38
- package/dist/features/trial-session/trial-session.js.map +1 -1
- package/dist/features/ui/inputs/checkbox-input/checkbox-input.js +21 -21
- package/dist/features/ui/inputs/checkbox-input/checkbox-input.js.map +1 -1
- package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js +12 -12
- package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js.map +1 -1
- package/dist/features/ui/theme/clrs.js +0 -1
- package/dist/features/ui/theme/clrs.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-helpers.js +37 -38
- package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
- package/dist/index.d.ts +3 -7
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/dist/features/trial-session/api/trial-session-report.js +0 -16
- package/dist/features/trial-session/api/trial-session-report.js.map +0 -1
- package/dist/features/trial-session/api/trial-topics.js +0 -9
- package/dist/features/trial-session/api/trial-topics.js.map +0 -1
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-styled.js +0 -61
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-styled.js.map +0 -1
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-types.js +0 -5
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-types.js.map +0 -1
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-view.js +0 -135
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary-view.js.map +0 -1
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary.js +0 -53
- package/dist/features/trial-session/comps/session-progress-summary/session-progress-summary.js.map +0 -1
- package/dist/features/trial-session/comps/student-info/student-info-constants.js +0 -35
- package/dist/features/trial-session/comps/student-info/student-info-constants.js.map +0 -1
- package/dist/features/trial-session/comps/student-info/student-info-helpers.js +0 -12
- package/dist/features/trial-session/comps/student-info/student-info-helpers.js.map +0 -1
- package/dist/features/trial-session/comps/topic-selection/topic-selection-styled.js +0 -42
- package/dist/features/trial-session/comps/topic-selection/topic-selection-styled.js.map +0 -1
- package/dist/features/trial-session/comps/topic-selection/topic-selection.js +0 -84
- package/dist/features/trial-session/comps/topic-selection/topic-selection.js.map +0 -1
- package/dist/features/trial-session/comps/whiteboard/whiteboard-styled.js +0 -21
- package/dist/features/trial-session/comps/whiteboard/whiteboard-styled.js.map +0 -1
- package/dist/features/trial-session/comps/whiteboard/whiteboard.js +0 -99
- package/dist/features/trial-session/comps/whiteboard/whiteboard.js.map +0 -1
- package/dist/features/worksheet/worksheet/mocks/activity.js +0 -6
- package/dist/features/worksheet/worksheet/mocks/activity.js.map +0 -1
- package/dist/features/worksheet/worksheet/mocks/signed-requests.js +0 -5
- package/dist/features/worksheet/worksheet/mocks/signed-requests.js.map +0 -1
- package/dist/features/worksheet/worksheet/stories/use-canvas-sync-broker-story.js +0 -57
- package/dist/features/worksheet/worksheet/stories/use-canvas-sync-broker-story.js.map +0 -1
- package/dist/features/worksheet/worksheet/stories/worksheet-story-container.js +0 -263
- package/dist/features/worksheet/worksheet/stories/worksheet-story-container.js.map +0 -1
- package/dist/features/worksheet/worksheet/stories/worksheet-student.js +0 -177
- package/dist/features/worksheet/worksheet/stories/worksheet-student.js.map +0 -1
- package/dist/features/worksheet/worksheet/stories/worksheet-teacher.js +0 -268
- package/dist/features/worksheet/worksheet/stories/worksheet-teacher.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"homework-controls.js","sources":["../../../../src/features/cue-canvas/bottombar/homework-controls.tsx"],"sourcesContent":["import { memo, useCallback, useState, type FC } from 'react';\n\nimport CheckIcon from '../../../assets/line-icons/icons/check';\nimport ShareIcon from '../../../assets/line-icons/icons/share';\nimport Button from '../../ui/buttons/button/button';\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport Text from '../../ui/text/text';\nimport { dataURIToBlob } from '../cue-canvas-helpers';\nimport { useCueCanvasActions } from '../hooks/use-cue-canvas-actions';\nimport type { IHomeWorkControllerProps } from './bottombar-types';\n\nconst HomeworkController: FC<IHomeWorkControllerProps> = props => {\n const { width, onSendImageToChat, onMarkAsResolved } = props;\n const { homeworkId, activeInstance, setHomeworkId } = useCueCanvasActions();\n const [isBusy, setIsBusy] = useState(false);\n\n const onSuccess = useCallback(() => {\n activeInstance?.clearCanvas();\n setHomeworkId(undefined);\n setIsBusy(false);\n }, [activeInstance, setHomeworkId]);\n\n const getBoardSnapshot = useCallback(async () => {\n if (!activeInstance) return;\n\n const snapshot = await activeInstance?.getCanvasAsImage();\n\n if (!snapshot) {\n return;\n }\n\n const blobdata = dataURIToBlob(snapshot);\n\n return [blobdata];\n }, [activeInstance]);\n\n const handleSendImageToChat = useCallback(async () => {\n const snapshot = await getBoardSnapshot();\n\n if (!homeworkId || !onSendImageToChat || !snapshot) return;\n\n onSendImageToChat?.(homeworkId, snapshot, onSuccess);\n }, [getBoardSnapshot, homeworkId, onSendImageToChat, onSuccess]);\n\n const handleMarkAsResolved = useCallback(() => {\n if (!homeworkId) return;\n setIsBusy(true);\n onMarkAsResolved?.(homeworkId, onSuccess);\n }, [homeworkId, onMarkAsResolved, onSuccess]);\n\n if (!homeworkId) return null;\n\n if (isBusy) {\n return (\n <FlexView\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Text $renderAs=\"body3\" $color=\"BLACK\">\n Resolving....\n </Text>\n </FlexView>\n );\n }\n\n return (\n <FlexView\n $flexDirection=\"row\"\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Button\n label=\"Mark as reolved\"\n onClick={handleMarkAsResolved}\n renderAs={'primary'}\n Icon={CheckIcon}\n busy={isBusy}\n />\n <Separator width={16} />\n <Button\n label=\"Send CueBoard image to chat\"\n onClick={handleSendImageToChat}\n renderAs={'primary'}\n Icon={ShareIcon}\n />\n </FlexView>\n );\n};\n\nexport default memo(HomeworkController);\n"],"names":["HomeworkController","props","width","onSendImageToChat","onMarkAsResolved","homeworkId","activeInstance","setHomeworkId","useCueCanvasActions","isBusy","setIsBusy","useState","onSuccess","useCallback","getBoardSnapshot","snapshot","dataURIToBlob","handleSendImageToChat","handleMarkAsResolved","jsx","FlexView","Text","jsxs","Button","CheckIcon","Separator","ShareIcon","
|
|
1
|
+
{"version":3,"file":"homework-controls.js","sources":["../../../../src/features/cue-canvas/bottombar/homework-controls.tsx"],"sourcesContent":["import { memo, useCallback, useState, type FC } from 'react';\n\nimport CheckIcon from '../../../assets/line-icons/icons/check';\nimport ShareIcon from '../../../assets/line-icons/icons/share';\nimport Button from '../../ui/buttons/button/button';\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport Text from '../../ui/text/text';\nimport { dataURIToBlob } from '../cue-canvas-helpers';\nimport { useCueCanvasActions } from '../hooks/use-cue-canvas-actions';\nimport type { IHomeWorkControllerProps } from './bottombar-types';\n\nconst HomeworkController: FC<IHomeWorkControllerProps> = props => {\n const { width, onSendImageToChat, onMarkAsResolved } = props;\n const { homeworkId, activeInstance, setHomeworkId } = useCueCanvasActions();\n const [isBusy, setIsBusy] = useState(false);\n\n const onSuccess = useCallback(() => {\n activeInstance?.clearCanvas();\n setHomeworkId(undefined);\n setIsBusy(false);\n }, [activeInstance, setHomeworkId]);\n\n const getBoardSnapshot = useCallback(async () => {\n if (!activeInstance) return;\n\n const snapshot = await activeInstance?.getCanvasAsImage();\n\n if (!snapshot) {\n return;\n }\n\n const blobdata = dataURIToBlob(snapshot);\n\n return [blobdata];\n }, [activeInstance]);\n\n const handleSendImageToChat = useCallback(async () => {\n const snapshot = await getBoardSnapshot();\n\n if (!homeworkId || !onSendImageToChat || !snapshot) return;\n\n onSendImageToChat?.(homeworkId, snapshot, onSuccess);\n }, [getBoardSnapshot, homeworkId, onSendImageToChat, onSuccess]);\n\n const handleMarkAsResolved = useCallback(() => {\n if (!homeworkId) return;\n setIsBusy(true);\n onMarkAsResolved?.(homeworkId, onSuccess);\n }, [homeworkId, onMarkAsResolved, onSuccess]);\n\n if (!homeworkId) return null;\n\n if (isBusy) {\n return (\n <FlexView\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Text $renderAs=\"body3\" $color=\"BLACK\">\n Resolving....\n </Text>\n </FlexView>\n );\n }\n\n return (\n <FlexView\n $flexDirection=\"row\"\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Button\n label=\"Mark as reolved\"\n onClick={handleMarkAsResolved}\n renderAs={'primary'}\n Icon={CheckIcon}\n busy={isBusy}\n />\n <Separator width={16} />\n <Button\n label=\"Send CueBoard image to chat\"\n onClick={handleSendImageToChat}\n renderAs={'primary'}\n Icon={ShareIcon}\n />\n </FlexView>\n );\n};\n\nexport default memo(HomeworkController);\n"],"names":["HomeworkController","props","width","onSendImageToChat","onMarkAsResolved","homeworkId","activeInstance","setHomeworkId","useCueCanvasActions","isBusy","setIsBusy","useState","onSuccess","useCallback","getBoardSnapshot","snapshot","dataURIToBlob","handleSendImageToChat","handleMarkAsResolved","jsx","FlexView","Text","jsxs","Button","CheckIcon","Separator","ShareIcon","homeworkControls","memo"],"mappings":";;;;;;;;;;AAYA,MAAMA,IAAmD,CAASC,MAAA;AAChE,QAAM,EAAE,OAAAC,GAAO,mBAAAC,GAAmB,kBAAAC,EAAA,IAAqBH,GACjD,EAAE,YAAAI,GAAY,gBAAAC,GAAgB,eAAAC,MAAkBC,EAAoB,GACpE,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GAEpCC,IAAYC,EAAY,MAAM;AAClC,IAAAP,KAAA,QAAAA,EAAgB,eAChBC,EAAc,MAAS,GACvBG,EAAU,EAAK;AAAA,EAAA,GACd,CAACJ,GAAgBC,CAAa,CAAC,GAE5BO,IAAmBD,EAAY,YAAY;AAC/C,QAAI,CAACP,EAAgB;AAEf,UAAAS,IAAW,OAAMT,KAAA,gBAAAA,EAAgB;AAEvC,WAAKS,IAME,CAFUC,EAAcD,CAAQ,CAEvB,IALd;AAAA,EAKc,GACf,CAACT,CAAc,CAAC,GAEbW,IAAwBJ,EAAY,YAAY;AAC9C,UAAAE,IAAW,MAAMD;AAEvB,IAAI,CAACT,KAAc,CAACF,KAAqB,CAACY,KAEtBZ,KAAA,QAAAA,EAAAE,GAAYU,GAAUH;AAAA,KACzC,CAACE,GAAkBT,GAAYF,GAAmBS,CAAS,CAAC,GAEzDM,IAAuBL,EAAY,MAAM;AAC7C,IAAKR,MACLK,EAAU,EAAI,GACdN,KAAA,QAAAA,EAAmBC,GAAYO;AAAA,EAC9B,GAAA,CAACP,GAAYD,GAAkBQ,CAAS,CAAC;AAExC,SAACP,IAEDI,IAEA,gBAAAU;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,QAAQlB;AAAA,MACR,aAAY;AAAA,MAEZ,4BAACmB,GAAK,EAAA,WAAU,SAAQ,QAAO,SAAQ,UAEvC,iBAAA;AAAA,IAAA;AAAA,EAAA,IAMJ,gBAAAC;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,QAAQlB;AAAA,MACR,aAAY;AAAA,MAEZ,UAAA;AAAA,QAAA,gBAAAiB;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,SAASL;AAAA,YACT,UAAU;AAAA,YACV,MAAMM;AAAA,YACN,MAAMf;AAAA,UAAA;AAAA,QACR;AAAA,QACA,gBAAAU,EAACM,GAAU,EAAA,OAAO,GAAI,CAAA;AAAA,QACtB,gBAAAN;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,SAASN;AAAA,YACT,UAAU;AAAA,YACV,MAAMS;AAAA,UAAA;AAAA,QACR;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,IA1CoB;AA6C1B,GAEeC,IAAAC,EAAK5B,CAAkB;"}
|
|
@@ -3,15 +3,15 @@ import { memo as p, useState as d, useMemo as f } from "react";
|
|
|
3
3
|
import c from "../../ui/layout/flex-view.js";
|
|
4
4
|
import o from "../../ui/separator/separator.js";
|
|
5
5
|
import l from "./homework/homework.js";
|
|
6
|
-
import
|
|
7
|
-
import { SideBarContainer as
|
|
6
|
+
import s from "./puzzles/puzzles.js";
|
|
7
|
+
import { SideBarContainer as u } from "./sidebar-styled.js";
|
|
8
8
|
import x from "./tiles/tile.js";
|
|
9
9
|
const S = ({ grade: m, hwRequests: t }) => {
|
|
10
10
|
const [r, i] = d(), a = f(() => r === "tile" ? "300px" : r === "homework" ? "248px" : r === "puzzle" ? "650px" : "auto", [r]);
|
|
11
|
-
return /* @__PURE__ */ e(
|
|
11
|
+
return /* @__PURE__ */ e(u, { $activeSidebar: r, $width: a, children: /* @__PURE__ */ n(c, { $flexDirection: "row", children: [
|
|
12
12
|
/* @__PURE__ */ e(x, { activeSidebar: r, setActiveSidebar: i }),
|
|
13
13
|
/* @__PURE__ */ e(o, { width: 8 }),
|
|
14
|
-
/* @__PURE__ */ e(
|
|
14
|
+
/* @__PURE__ */ e(s, { grade: m, activeSidebar: r, setActiveSidebar: i }),
|
|
15
15
|
/* @__PURE__ */ e(o, { width: 8 }),
|
|
16
16
|
t && t.length > 0 && /* @__PURE__ */ e(
|
|
17
17
|
l,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidebar.js","sources":["../../../../src/features/cue-canvas/sidebar/sidebar.tsx"],"sourcesContent":["import { memo, useMemo, useState, type FC } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport Homework from './homework/homework';\nimport type { IHomeWorkHelpRequestModelWithStudentName } from './homework/homework-types';\nimport Puzzles from './puzzles/puzzles';\nimport type { TActiveSidebar } from './puzzles/puzzles-type';\nimport { SideBarContainer } from './sidebar-styled';\nimport TileBar from './tiles/tile';\n\ninterface ISidebar {\n grade?: string;\n hwRequests?: IHomeWorkHelpRequestModelWithStudentName[];\n}\n\nconst Sidebar: FC<ISidebar> = ({ grade, hwRequests }) => {\n const [activeSidebar, setActiveSidebar] = useState<TActiveSidebar | undefined>();\n\n const width = useMemo(() => {\n if (activeSidebar === 'tile') {\n return '300px';\n }\n\n if (activeSidebar === 'homework') {\n return '248px';\n }\n\n if (activeSidebar === 'puzzle') {\n return '650px';\n }\n\n return 'auto';\n }, [activeSidebar]);\n\n return (\n <SideBarContainer $activeSidebar={activeSidebar} $width={width}>\n <FlexView $flexDirection=\"row\">\n <TileBar activeSidebar={activeSidebar} setActiveSidebar={setActiveSidebar} />\n <Separator width={8} />\n <Puzzles grade={grade} activeSidebar={activeSidebar} setActiveSidebar={setActiveSidebar} />\n <Separator width={8} />\n\n {hwRequests && hwRequests.length > 0 && (\n <Homework\n activeSidebar={activeSidebar}\n setActiveSidebar={setActiveSidebar}\n hwRequests={hwRequests}\n />\n )}\n </FlexView>\n </SideBarContainer>\n );\n};\n\nexport default memo(Sidebar);\n"],"names":["Sidebar","grade","hwRequests","activeSidebar","setActiveSidebar","useState","width","useMemo","jsx","SideBarContainer","jsxs","FlexView","TileBar","Separator","Puzzles","Homework","
|
|
1
|
+
{"version":3,"file":"sidebar.js","sources":["../../../../src/features/cue-canvas/sidebar/sidebar.tsx"],"sourcesContent":["import { memo, useMemo, useState, type FC } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport Homework from './homework/homework';\nimport type { IHomeWorkHelpRequestModelWithStudentName } from './homework/homework-types';\nimport Puzzles from './puzzles/puzzles';\nimport type { TActiveSidebar } from './puzzles/puzzles-type';\nimport { SideBarContainer } from './sidebar-styled';\nimport TileBar from './tiles/tile';\n\ninterface ISidebar {\n grade?: string;\n hwRequests?: IHomeWorkHelpRequestModelWithStudentName[];\n}\n\nconst Sidebar: FC<ISidebar> = ({ grade, hwRequests }) => {\n const [activeSidebar, setActiveSidebar] = useState<TActiveSidebar | undefined>();\n\n const width = useMemo(() => {\n if (activeSidebar === 'tile') {\n return '300px';\n }\n\n if (activeSidebar === 'homework') {\n return '248px';\n }\n\n if (activeSidebar === 'puzzle') {\n return '650px';\n }\n\n return 'auto';\n }, [activeSidebar]);\n\n return (\n <SideBarContainer $activeSidebar={activeSidebar} $width={width}>\n <FlexView $flexDirection=\"row\">\n <TileBar activeSidebar={activeSidebar} setActiveSidebar={setActiveSidebar} />\n <Separator width={8} />\n <Puzzles grade={grade} activeSidebar={activeSidebar} setActiveSidebar={setActiveSidebar} />\n <Separator width={8} />\n\n {hwRequests && hwRequests.length > 0 && (\n <Homework\n activeSidebar={activeSidebar}\n setActiveSidebar={setActiveSidebar}\n hwRequests={hwRequests}\n />\n )}\n </FlexView>\n </SideBarContainer>\n );\n};\n\nexport default memo(Sidebar);\n"],"names":["Sidebar","grade","hwRequests","activeSidebar","setActiveSidebar","useState","width","useMemo","jsx","SideBarContainer","jsxs","FlexView","TileBar","Separator","Puzzles","Homework","sidebar","memo"],"mappings":";;;;;;;;AAgBA,MAAMA,IAAwB,CAAC,EAAE,OAAAC,GAAO,YAAAC,QAAiB;AACvD,QAAM,CAACC,GAAeC,CAAgB,IAAIC,EAAqC,GAEzEC,IAAQC,EAAQ,MAChBJ,MAAkB,SACb,UAGLA,MAAkB,aACb,UAGLA,MAAkB,WACb,UAGF,QACN,CAACA,CAAa,CAAC;AAGhB,SAAA,gBAAAK,EAACC,KAAiB,gBAAgBN,GAAe,QAAQG,GACvD,UAAA,gBAAAI,EAACC,GAAS,EAAA,gBAAe,OACvB,UAAA;AAAA,IAAC,gBAAAH,EAAAI,GAAA,EAAQ,eAAAT,GAA8B,kBAAAC,EAAoC,CAAA;AAAA,IAC3E,gBAAAI,EAACK,GAAU,EAAA,OAAO,EAAG,CAAA;AAAA,IACpB,gBAAAL,EAAAM,GAAA,EAAQ,OAAAb,GAAc,eAAAE,GAA8B,kBAAAC,EAAoC,CAAA;AAAA,IACzF,gBAAAI,EAACK,GAAU,EAAA,OAAO,EAAG,CAAA;AAAA,IAEpBX,KAAcA,EAAW,SAAS,KACjC,gBAAAM;AAAA,MAACO;AAAA,MAAA;AAAA,QACC,eAAAZ;AAAA,QACA,kBAAAC;AAAA,QACA,YAAAF;AAAA,MAAA;AAAA,IACF;AAAA,EAAA,EAEJ,CAAA,EACF,CAAA;AAEJ,GAEec,IAAAC,EAAKjB,CAAO;"}
|
|
@@ -1,25 +1,21 @@
|
|
|
1
|
-
import { jsx as r, jsxs as
|
|
2
|
-
import { memo as
|
|
3
|
-
import
|
|
4
|
-
import { getUserTools as
|
|
5
|
-
import { useCueCanvasActions as
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
o && (o.setColor(s), o.setTool(m));
|
|
17
|
-
}, [o]), e === "whiteboard" ? /* @__PURE__ */ r(x, { tools: i, userType: t, withGutter: a }) : /* @__PURE__ */ c(u, { $flexDirection: "row", $alignItems: "center", $justifyContent: "center", $flexGapX: 0.25, children: [
|
|
18
|
-
i.map((n) => /* @__PURE__ */ r(v, { tool: n, shouldAnimate: !0 }, n)),
|
|
19
|
-
/* @__PURE__ */ r(b, { userType: t, renderAs: "canvas" })
|
|
1
|
+
import { jsx as r, jsxs as s } from "react/jsx-runtime";
|
|
2
|
+
import { memo as c, useEffect as l } from "react";
|
|
3
|
+
import f from "../../ui/layout/flex-view.js";
|
|
4
|
+
import { getUserTools as u } from "../cue-canvas-helpers.js";
|
|
5
|
+
import { useCueCanvasActions as p } from "../hooks/use-cue-canvas-actions.js";
|
|
6
|
+
import C from "./color-picker-menu.js";
|
|
7
|
+
import b from "./tool.js";
|
|
8
|
+
import v from "./whiteboard-toolbar.js";
|
|
9
|
+
const x = c(function({ userType: t, renderAs: e }) {
|
|
10
|
+
const i = u(t, e), { activeInstance: o, activeTool: a, activeColor: m } = p();
|
|
11
|
+
return l(() => {
|
|
12
|
+
o && (o.setColor(m), o.setTool(a));
|
|
13
|
+
}, [o]), e === "whiteboard" ? /* @__PURE__ */ r(v, { tools: i, userType: t }) : /* @__PURE__ */ s(f, { $flexDirection: "row", $alignItems: "center", $justifyContent: "center", $flexGapX: 0.25, children: [
|
|
14
|
+
i.map((n) => /* @__PURE__ */ r(b, { tool: n, shouldAnimate: !0 }, n)),
|
|
15
|
+
/* @__PURE__ */ r(C, { userType: t, renderAs: "canvas" })
|
|
20
16
|
] });
|
|
21
|
-
}),
|
|
17
|
+
}), k = x;
|
|
22
18
|
export {
|
|
23
|
-
|
|
19
|
+
k as default
|
|
24
20
|
};
|
|
25
21
|
//# sourceMappingURL=toolbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolbar.js","sources":["../../../../src/features/cue-canvas/toolbar/toolbar.tsx"],"sourcesContent":["import { memo, useEffect, type FC } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport { getUserTools } from '../cue-canvas-helpers';\nimport { useCueCanvasActions } from '../hooks/use-cue-canvas-actions';\nimport type { IToolbarProps } from '../types/toolbar';\nimport ColorPickerMenu from './color-picker-menu';\nimport Tool from './tool';\nimport WhiteboardToolbar from './whiteboard-toolbar';\n\nconst Toolbar: FC<IToolbarProps> = memo(function Toolbar({
|
|
1
|
+
{"version":3,"file":"toolbar.js","sources":["../../../../src/features/cue-canvas/toolbar/toolbar.tsx"],"sourcesContent":["import { memo, useEffect, type FC } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport { getUserTools } from '../cue-canvas-helpers';\nimport { useCueCanvasActions } from '../hooks/use-cue-canvas-actions';\nimport type { IToolbarProps } from '../types/toolbar';\nimport ColorPickerMenu from './color-picker-menu';\nimport Tool from './tool';\nimport WhiteboardToolbar from './whiteboard-toolbar';\n\nconst Toolbar: FC<IToolbarProps> = memo(function Toolbar({ userType, renderAs }) {\n const tools = getUserTools(userType, renderAs);\n const { activeInstance: cueCanvas, activeTool, activeColor } = useCueCanvasActions();\n\n // This effect ensures that the selected tool and color are applied to the cueCanvas instance\n // whenever it changes. For example, if a user selects a tool and color, then navigates to a\n // different question (causing a new cueCanvas instance), the same tool and color will be set\n // on the new instance.\n // Disabling the exhaustive-deps rule here because we want to run this effect only\n // when the cueCanvas instance is set, not on every tool & color change.\n useEffect(() => {\n if (cueCanvas) {\n cueCanvas.setColor(activeColor);\n\n cueCanvas.setTool(activeTool);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [cueCanvas]);\n\n if (renderAs === 'whiteboard') {\n return <WhiteboardToolbar tools={tools} userType={userType} />;\n }\n\n return (\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $justifyContent=\"center\" $flexGapX={0.25}>\n {tools.map(tool => (\n <Tool tool={tool} key={tool} shouldAnimate />\n ))}\n <ColorPickerMenu userType={userType} renderAs=\"canvas\" />\n </FlexView>\n );\n});\n\nexport default Toolbar;\n"],"names":["Toolbar","memo","userType","renderAs","tools","getUserTools","cueCanvas","activeTool","activeColor","useCueCanvasActions","useEffect","jsx","WhiteboardToolbar","jsxs","FlexView","Tool","tool","ColorPickerMenu","Toolbar$1"],"mappings":";;;;;;;;AAUA,MAAMA,IAA6BC,EAAK,SAAiB,EAAE,UAAAC,GAAU,UAAAC,KAAY;AACzE,QAAAC,IAAQC,EAAaH,GAAUC,CAAQ,GACvC,EAAE,gBAAgBG,GAAW,YAAAC,GAAY,aAAAC,EAAA,IAAgBC;AAiB/D,SATAC,EAAU,MAAM;AACd,IAAIJ,MACFA,EAAU,SAASE,CAAW,GAE9BF,EAAU,QAAQC,CAAU;AAAA,EAC9B,GAEC,CAACD,CAAS,CAAC,GAEVH,MAAa,eACR,gBAAAQ,EAACC,GAAkB,EAAA,OAAAR,GAAc,UAAAF,EAAoB,CAAA,IAI5D,gBAAAW,EAACC,KAAS,gBAAe,OAAM,aAAY,UAAS,iBAAgB,UAAS,WAAW,MACrF,UAAA;AAAA,IAAMV,EAAA,IAAI,OACR,gBAAAO,EAAAI,GAAA,EAAK,MAAAC,GAAuB,eAAa,GAAA,GAAnBA,CAAoB,CAC5C;AAAA,IACA,gBAAAL,EAAAM,GAAA,EAAgB,UAAAf,GAAoB,UAAS,SAAS,CAAA;AAAA,EACzD,EAAA,CAAA;AAEJ,CAAC,GAEDgB,IAAelB;"}
|
|
@@ -1,30 +1,20 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { memo as
|
|
3
|
-
import
|
|
4
|
-
import
|
|
1
|
+
import { jsxs as s, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { memo as a } from "react";
|
|
3
|
+
import l from "../../ui/layout/flex-view.js";
|
|
4
|
+
import c from "./color-picker-menu.js";
|
|
5
5
|
import i from "./tool.js";
|
|
6
|
-
const
|
|
6
|
+
const b = a(function({
|
|
7
7
|
tools: e,
|
|
8
|
-
userType: t
|
|
9
|
-
withGutter: m
|
|
8
|
+
userType: t
|
|
10
9
|
}) {
|
|
11
|
-
const
|
|
12
|
-
return /* @__PURE__ */
|
|
13
|
-
|
|
14
|
-
{
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
$position: "relative",
|
|
18
|
-
$flexGapX: m ? 0.25 : 0,
|
|
19
|
-
children: [
|
|
20
|
-
n.map((o) => /* @__PURE__ */ r(i, { tool: o, shouldAnimate: !0 }, o)),
|
|
21
|
-
/* @__PURE__ */ r(p, { userType: t, renderAs: "whiteboard" }),
|
|
22
|
-
s.map((o) => /* @__PURE__ */ r(i, { tool: o }, o))
|
|
23
|
-
]
|
|
24
|
-
}
|
|
25
|
-
);
|
|
10
|
+
const m = e.slice(0, 4), n = e.slice(4);
|
|
11
|
+
return /* @__PURE__ */ s(l, { $flexDirection: "row", $alignItems: "center", $position: "relative", $flexGapX: 0.25, children: [
|
|
12
|
+
m.map((o) => /* @__PURE__ */ r(i, { tool: o, shouldAnimate: !0 }, o)),
|
|
13
|
+
/* @__PURE__ */ r(c, { userType: t, renderAs: "whiteboard" }),
|
|
14
|
+
n.map((o) => /* @__PURE__ */ r(i, { tool: o }, o))
|
|
15
|
+
] });
|
|
26
16
|
});
|
|
27
17
|
export {
|
|
28
|
-
|
|
18
|
+
b as default
|
|
29
19
|
};
|
|
30
20
|
//# sourceMappingURL=whiteboard-toolbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whiteboard-toolbar.js","sources":["../../../../src/features/cue-canvas/toolbar/whiteboard-toolbar.tsx"],"sourcesContent":["import { memo, type FC } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport type { IWhiteboardToolbar } from '../types/toolbar';\nimport ColorPickerMenu from './color-picker-menu';\nimport Tool from './tool';\n\nconst WhiteboardToolbar: FC<IWhiteboardToolbar> = memo(function WhiteboardToolbar({\n tools,\n userType,\n
|
|
1
|
+
{"version":3,"file":"whiteboard-toolbar.js","sources":["../../../../src/features/cue-canvas/toolbar/whiteboard-toolbar.tsx"],"sourcesContent":["import { memo, type FC } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport type { IWhiteboardToolbar } from '../types/toolbar';\nimport ColorPickerMenu from './color-picker-menu';\nimport Tool from './tool';\n\nconst WhiteboardToolbar: FC<IWhiteboardToolbar> = memo(function WhiteboardToolbar({\n tools,\n userType,\n}) {\n const writingTools = tools.slice(0, 4);\n const otherTools = tools.slice(4);\n\n return (\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $position=\"relative\" $flexGapX={0.25}>\n {writingTools.map(tool => (\n <Tool tool={tool} key={tool} shouldAnimate={true} />\n ))}\n <ColorPickerMenu userType={userType} renderAs=\"whiteboard\" />\n {otherTools.map(tool => (\n <Tool tool={tool} key={tool} />\n ))}\n </FlexView>\n );\n});\n\nexport default WhiteboardToolbar;\n"],"names":["WhiteboardToolbar","memo","tools","userType","writingTools","otherTools","jsxs","FlexView","jsx","Tool","tool","ColorPickerMenu"],"mappings":";;;;;AAOM,MAAAA,IAA4CC,EAAK,SAA2B;AAAA,EAChF,OAAAC;AAAA,EACA,UAAAC;AACF,GAAG;AACD,QAAMC,IAAeF,EAAM,MAAM,GAAG,CAAC,GAC/BG,IAAaH,EAAM,MAAM,CAAC;AAG9B,SAAA,gBAAAI,EAACC,KAAS,gBAAe,OAAM,aAAY,UAAS,WAAU,YAAW,WAAW,MACjF,UAAA;AAAA,IAAaH,EAAA,IAAI,OACf,gBAAAI,EAAAC,GAAA,EAAK,MAAAC,GAAuB,eAAe,GAAA,GAArBA,CAA2B,CACnD;AAAA,IACA,gBAAAF,EAAAG,GAAA,EAAgB,UAAAR,GAAoB,UAAS,aAAa,CAAA;AAAA,IAC1DE,EAAW,IAAI,CAAAK,wBACbD,GAAK,EAAA,MAAAC,KAAiBA,CAAM,CAC9B;AAAA,EACH,EAAA,CAAA;AAEJ,CAAC;"}
|
|
@@ -3,10 +3,10 @@ import { memo as F, useMemo as G, useState as j, useRef as _, useCallback as w,
|
|
|
3
3
|
import U from "../../assets/line-icons/icons/closed-eye.js";
|
|
4
4
|
import y from "../chapters-v2/comps/node-card/node-card-tags.js";
|
|
5
5
|
import { getNodeTypeBasedBgImage as V } from "../chapters-v2/utils/index.js";
|
|
6
|
-
import { getNodeCardBasedIcon as
|
|
7
|
-
import
|
|
6
|
+
import { getNodeCardBasedIcon as Y } from "../chapters-v2/utils/node-card-utils.js";
|
|
7
|
+
import Z from "../math-fit/math-fit-card/math-fit-card.js";
|
|
8
8
|
import q from "../puzzles/comps/puzzle-card.js";
|
|
9
|
-
import
|
|
9
|
+
import p from "../ui/arrow-tooltip/arrow-tooltip.js";
|
|
10
10
|
import c from "../ui/layout/flex-view.js";
|
|
11
11
|
import J from "../ui/lottie-animation/lottie-animation.js";
|
|
12
12
|
import Q from "./card-title.js";
|
|
@@ -18,26 +18,26 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
18
18
|
isInQueue: k,
|
|
19
19
|
nodeData: i,
|
|
20
20
|
studentContainerRef: h,
|
|
21
|
-
subHeader:
|
|
21
|
+
subHeader: b,
|
|
22
22
|
userType: n,
|
|
23
23
|
isMilestone: d = !1,
|
|
24
24
|
puzzleHWCardRef: x,
|
|
25
|
-
entityType:
|
|
25
|
+
entityType: v,
|
|
26
26
|
state: t,
|
|
27
|
-
score:
|
|
27
|
+
score: N,
|
|
28
28
|
imageUrl: f,
|
|
29
|
-
mathFitCardRef:
|
|
29
|
+
mathFitCardRef: O
|
|
30
30
|
}) => {
|
|
31
31
|
const {
|
|
32
32
|
node_type: r,
|
|
33
|
-
accuracy:
|
|
33
|
+
accuracy: C,
|
|
34
34
|
due_date_ts: o,
|
|
35
35
|
image_hue: s,
|
|
36
36
|
card_header: z = "",
|
|
37
|
-
unlocked_on_ts:
|
|
37
|
+
unlocked_on_ts: u,
|
|
38
38
|
course_type: D,
|
|
39
39
|
title: H
|
|
40
|
-
} = i, L = r === "PUZZLE_CARD", $ =
|
|
40
|
+
} = i, L = r === "PUZZLE_CARD", $ = v === ee.MATHFIT_TEST, g = n === "STUDENT" && t === "LOCKED", I = t === "LOCKED" || n === "TEACHER" && t !== "COMPLETED" && t !== "EXPIRED", S = G(() => t === "LOCKED" ? $ ? "Take test after class" : "Not available to student" : "You’ll be able to review the test after your student submits it", [t, $]), [X, R] = j(!1), m = _(null), B = V(r), T = _(null), { lottie: P } = Y(r), W = w(() => {
|
|
41
41
|
var a;
|
|
42
42
|
(a = T.current) == null || a.play();
|
|
43
43
|
}, []), M = w(() => {
|
|
@@ -45,9 +45,9 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
45
45
|
(a = T.current) == null || a.stop();
|
|
46
46
|
}, []);
|
|
47
47
|
return K(() => {
|
|
48
|
-
|
|
48
|
+
m.current && m.current.scrollHeight > m.current.clientHeight && R(!0);
|
|
49
49
|
}, []), L ? /* @__PURE__ */ e(
|
|
50
|
-
|
|
50
|
+
p,
|
|
51
51
|
{
|
|
52
52
|
renderAs: "primary",
|
|
53
53
|
tooltipItem: "Solve puzzle after class",
|
|
@@ -77,17 +77,17 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
77
77
|
{
|
|
78
78
|
nodeType: r,
|
|
79
79
|
state: t,
|
|
80
|
-
accuracy:
|
|
80
|
+
accuracy: C,
|
|
81
81
|
dueDateTs: o,
|
|
82
82
|
isStudent: n === "STUDENT",
|
|
83
83
|
isMilestone: d
|
|
84
84
|
}
|
|
85
85
|
),
|
|
86
|
-
!d && o &&
|
|
86
|
+
!d && o && u && /* @__PURE__ */ e(
|
|
87
87
|
A,
|
|
88
88
|
{
|
|
89
89
|
dueDate: o * 1e3,
|
|
90
|
-
unlockedOn:
|
|
90
|
+
unlockedOn: u * 1e3,
|
|
91
91
|
progressBg: `${s || "ORANGE"}_5`
|
|
92
92
|
}
|
|
93
93
|
)
|
|
@@ -96,23 +96,24 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
96
96
|
) })
|
|
97
97
|
}
|
|
98
98
|
) : $ ? /* @__PURE__ */ e(
|
|
99
|
-
|
|
99
|
+
p,
|
|
100
100
|
{
|
|
101
101
|
renderAs: "primary",
|
|
102
102
|
tooltipItem: S,
|
|
103
103
|
position: "bottom",
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
104
|
+
widthX: 13,
|
|
105
|
+
hidden: !I,
|
|
106
|
+
children: /* @__PURE__ */ e("div", { ref: O, children: /* @__PURE__ */ e(
|
|
107
|
+
Z,
|
|
107
108
|
{
|
|
108
|
-
score:
|
|
109
|
+
score: N,
|
|
109
110
|
dueDateTs: i.due_date_ts,
|
|
110
111
|
nodeType: "DYNAMIC",
|
|
111
112
|
state: t,
|
|
112
|
-
subHeader:
|
|
113
|
+
subHeader: b,
|
|
113
114
|
unlockedOnTs: i == null ? void 0 : i.unlocked_on_ts,
|
|
114
115
|
userType: n,
|
|
115
|
-
isMathFitDisabled:
|
|
116
|
+
isMathFitDisabled: I,
|
|
116
117
|
isMilestone: d,
|
|
117
118
|
studentContainerRef: h
|
|
118
119
|
}
|
|
@@ -155,7 +156,7 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
155
156
|
),
|
|
156
157
|
/* @__PURE__ */ e(Q, { cardHeader: z, nodeType: r, courseType: D }),
|
|
157
158
|
k && /* @__PURE__ */ e(
|
|
158
|
-
|
|
159
|
+
p,
|
|
159
160
|
{
|
|
160
161
|
renderAs: "primary",
|
|
161
162
|
tooltipItem: "Not visible to student",
|
|
@@ -173,23 +174,23 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
173
174
|
{
|
|
174
175
|
nodeType: r,
|
|
175
176
|
state: t,
|
|
176
|
-
accuracy:
|
|
177
|
+
accuracy: C,
|
|
177
178
|
dueDateTs: o,
|
|
178
179
|
isStudent: n === "STUDENT",
|
|
179
180
|
isMilestone: d
|
|
180
181
|
}
|
|
181
182
|
),
|
|
182
|
-
!d && o &&
|
|
183
|
+
!d && o && u && /* @__PURE__ */ e(
|
|
183
184
|
A,
|
|
184
185
|
{
|
|
185
186
|
dueDate: o * 1e3,
|
|
186
|
-
unlockedOn:
|
|
187
|
+
unlockedOn: u * 1e3,
|
|
187
188
|
progressBg: `${s || "ORANGE"}_4`
|
|
188
189
|
}
|
|
189
190
|
),
|
|
190
191
|
/* @__PURE__ */ l(c, { $gutterX: 0.75, $gapX: 1, $flexRowGapX: 0.5, $background: "WHITE", children: [
|
|
191
192
|
/* @__PURE__ */ e(
|
|
192
|
-
|
|
193
|
+
p,
|
|
193
194
|
{
|
|
194
195
|
renderAs: "primary",
|
|
195
196
|
position: "bottom",
|
|
@@ -198,7 +199,7 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
198
199
|
hidden: !X,
|
|
199
200
|
parentWidth: "auto",
|
|
200
201
|
zIndex: 6,
|
|
201
|
-
children: /* @__PURE__ */ e(c, { $heightX: 2.5, children: /* @__PURE__ */ e(de, { ref:
|
|
202
|
+
children: /* @__PURE__ */ e(c, { $heightX: 2.5, children: /* @__PURE__ */ e(de, { ref: m, $renderAs: "ab3", children: E }) })
|
|
202
203
|
}
|
|
203
204
|
),
|
|
204
205
|
/* @__PURE__ */ l(
|
|
@@ -209,7 +210,7 @@ const ae = { renderer: "canvas", autoplay: !1 }, le = ({
|
|
|
209
210
|
$alignItems: "center",
|
|
210
211
|
$justifyContent: "space-between",
|
|
211
212
|
children: [
|
|
212
|
-
/* @__PURE__ */ e(se, { $renderAs: "ub3", $color: "BLACK_T_60", children:
|
|
213
|
+
/* @__PURE__ */ e(se, { $renderAs: "ub3", $color: "BLACK_T_60", children: b }),
|
|
213
214
|
/* @__PURE__ */ e(c, { $width: 32 })
|
|
214
215
|
]
|
|
215
216
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"homework-card-view.js","sources":["../../../src/features/homework/homework-card-view.tsx"],"sourcesContent":["import { memo, useCallback, useLayoutEffect, useMemo, useRef, useState, type FC } from 'react';\n\nimport ClosedEyeIcon from '../../assets/line-icons/icons/closed-eye';\nimport NodeCardTags from '../chapters-v2/comps/node-card/node-card-tags';\nimport type { INodeDataProps, TSheetStates } from '../chapters-v2/comps/node-card/node-card-types';\nimport { getNodeTypeBasedBgImage } from '../chapters-v2/utils';\nimport { getNodeCardBasedIcon } from '../chapters-v2/utils/node-card-utils';\nimport MathFitCard from '../math-fit/math-fit-card/math-fit-card';\nimport PuzzleCard from '../puzzles/comps/puzzle-card';\nimport ArrowTooltip from '../ui/arrow-tooltip/arrow-tooltip';\nimport FlexView from '../ui/layout/flex-view';\nimport LottieAnimation from '../ui/lottie-animation/lottie-animation';\nimport type { ILottieAnimationRef } from '../ui/lottie-animation/types';\nimport type { TUserTypes } from '../ui/types';\nimport CardTitle from './card-title';\nimport { EHWCardListEntityType } from './hw-card-list/hw-card-list-types';\nimport NodeProgress from './node-progress';\nimport * as Styled from './styles';\n\nconst renderSettings = { renderer: 'canvas', autoplay: false };\n\ninterface IHomeworkCardViewProps {\n header: string;\n isInQueue?: boolean;\n nodeData: INodeDataProps;\n studentContainerRef: React.RefObject<HTMLDivElement>;\n subHeader: string;\n userType: TUserTypes;\n isMilestone?: boolean;\n puzzleHWCardRef?: React.RefObject<HTMLDivElement>;\n mathFitCardRef?: React.RefObject<HTMLDivElement>;\n entityType?: EHWCardListEntityType;\n state: TSheetStates;\n score: number | null;\n imageUrl?: string;\n}\n\nconst HomeworkView: FC<IHomeworkCardViewProps> = ({\n header,\n isInQueue,\n nodeData,\n studentContainerRef,\n subHeader,\n userType,\n isMilestone = false,\n puzzleHWCardRef,\n entityType,\n state,\n score,\n imageUrl,\n mathFitCardRef,\n}) => {\n const {\n node_type: nodeType,\n accuracy,\n due_date_ts: dueDateTs,\n image_hue: imageHue,\n card_header: cardHeader = '',\n unlocked_on_ts: unlockedOnTs,\n course_type: courseType,\n title,\n } = nodeData;\n const isPuzzleCard = nodeType === 'PUZZLE_CARD';\n const isMathFitCard = entityType === EHWCardListEntityType.MATHFIT_TEST;\n const isPuzzleDisabled = userType === 'STUDENT' && state === 'LOCKED';\n const isMathFitDisabled =\n state === 'LOCKED' || (userType === 'TEACHER' && state !== 'COMPLETED' && state !== 'EXPIRED');\n\n const tooltipText = useMemo(() => {\n if (state === 'LOCKED') {\n if (isMathFitCard) return 'Take test after class';\n\n return 'Not available to student';\n }\n\n return 'Sheet is not completed yet';\n }, [state, isMathFitCard]);\n\n const [showTitleTooltip, setShowTitleTooltip] = useState(false);\n const titleTextRef = useRef<HTMLDivElement>(null);\n const bgImage = getNodeTypeBasedBgImage(nodeType);\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const { lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMouseEnter = useCallback(() => {\n animationRef.current?.play();\n }, []);\n\n const handleOnMouseLeave = useCallback(() => {\n animationRef.current?.stop();\n }, []);\n\n useLayoutEffect(() => {\n if (\n titleTextRef.current &&\n titleTextRef.current.scrollHeight > titleTextRef.current.clientHeight\n ) {\n setShowTitleTooltip(true);\n }\n }, []);\n\n if (isPuzzleCard) {\n return (\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem=\"Solve puzzle after class\"\n position=\"bottom\"\n hidden={!isPuzzleDisabled}\n >\n <div ref={puzzleHWCardRef}>\n <Styled.PuzzleCardWrapper\n ref={studentContainerRef}\n $position=\"relative\"\n $background={`${imageHue}_2`}\n $disabled={isPuzzleDisabled}\n >\n <PuzzleCard\n imageHue={imageHue}\n imageUrl={imageUrl ?? ''}\n title={title}\n width={126}\n height={159}\n disabled={isPuzzleDisabled}\n />\n\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n dueDateTs={dueDateTs}\n isStudent={userType === 'STUDENT'}\n isMilestone={isMilestone}\n />\n {!isMilestone && dueDateTs && unlockedOnTs && (\n <NodeProgress\n dueDate={dueDateTs * 1000}\n unlockedOn={unlockedOnTs * 1000}\n progressBg={`${imageHue || 'ORANGE'}_5`}\n />\n )}\n </Styled.PuzzleCardWrapper>\n </div>\n </ArrowTooltip>\n );\n }\n\n // MathFit Assessment Card\n if (isMathFitCard) {\n return (\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={tooltipText}\n position=\"bottom\"\n hidden={!isMathFitDisabled}\n >\n <div ref={mathFitCardRef}>\n <MathFitCard\n score={score}\n dueDateTs={nodeData.due_date_ts}\n nodeType=\"DYNAMIC\"\n state={state}\n subHeader={subHeader}\n unlockedOnTs={nodeData?.unlocked_on_ts}\n userType={userType}\n isMathFitDisabled={isMathFitDisabled}\n isMilestone={isMilestone}\n studentContainerRef={studentContainerRef}\n />\n </div>\n </ArrowTooltip>\n );\n }\n\n return (\n <FlexView\n ref={studentContainerRef}\n $widthX={12.38}\n $position=\"relative\"\n $background={`${imageHue || 'ORANGE'}_2`}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <Styled.CardWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $width=\"100%\"\n $heightX={3.5}\n $bgImage={bgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n $position=\"relative\"\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $borderRadiusX={2}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <LottieAnimation src={nodeCardLottie} ref={animationRef} settings={renderSettings} />\n </Styled.IconWrapper>\n <CardTitle cardHeader={cardHeader} nodeType={nodeType} courseType={courseType} />\n {isInQueue && (\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem=\"Not visible to student\"\n position=\"bottom\"\n zIndex={6}\n >\n <ClosedEyeIcon />\n </ArrowTooltip>\n )}\n {!!imageUrl && (\n <Styled.BannerImageWrapper>\n <Styled.BannerImage src={imageUrl} alt=\"Chapter image\" />\n </Styled.BannerImageWrapper>\n )}\n </Styled.CardWrapper>\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n dueDateTs={dueDateTs}\n isStudent={userType === 'STUDENT'}\n isMilestone={isMilestone}\n />\n {!isMilestone && dueDateTs && unlockedOnTs && (\n <NodeProgress\n dueDate={dueDateTs * 1000}\n unlockedOn={unlockedOnTs * 1000}\n progressBg={`${imageHue || 'ORANGE'}_4`}\n />\n )}\n <FlexView $gutterX={0.75} $gapX={1} $flexRowGapX={0.5} $background=\"WHITE\">\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n tooltipItem={header}\n width={300}\n hidden={!showTitleTooltip}\n parentWidth=\"auto\"\n zIndex={6}\n >\n <FlexView $heightX={2.5}>\n <Styled.HeaderText ref={titleTextRef} $renderAs=\"ab3\">\n {header}\n </Styled.HeaderText>\n </FlexView>\n </ArrowTooltip>\n <FlexView\n $flexDirection=\"row\"\n $heightX={1.25}\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n >\n <Styled.SubHeaderText $renderAs=\"ub3\" $color=\"BLACK_T_60\">\n {subHeader}\n </Styled.SubHeaderText>\n <FlexView $width={32} />\n </FlexView>\n </FlexView>\n </FlexView>\n );\n};\n\nexport default memo(HomeworkView);\n"],"names":["renderSettings","HomeworkView","header","isInQueue","nodeData","studentContainerRef","subHeader","userType","isMilestone","puzzleHWCardRef","entityType","state","score","imageUrl","mathFitCardRef","nodeType","accuracy","dueDateTs","imageHue","cardHeader","unlockedOnTs","courseType","title","isPuzzleCard","isMathFitCard","EHWCardListEntityType","isPuzzleDisabled","isMathFitDisabled","tooltipText","useMemo","showTitleTooltip","setShowTitleTooltip","useState","titleTextRef","useRef","bgImage","getNodeTypeBasedBgImage","animationRef","nodeCardLottie","getNodeCardBasedIcon","handleOnMouseEnter","useCallback","_a","handleOnMouseLeave","useLayoutEffect","jsx","ArrowTooltip","jsxs","Styled.PuzzleCardWrapper","PuzzleCard","NodeCardTags","NodeProgress","MathFitCard","FlexView","Styled.CardWrapper","Styled.IconWrapper","LottieAnimation","CardTitle","ClosedEyeIcon","Styled.BannerImageWrapper","Styled.BannerImage","Styled.HeaderText","Styled.SubHeaderText","HomeworkCardView","memo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"homework-card-view.js","sources":["../../../src/features/homework/homework-card-view.tsx"],"sourcesContent":["import { memo, useCallback, useLayoutEffect, useMemo, useRef, useState, type FC } from 'react';\n\nimport ClosedEyeIcon from '../../assets/line-icons/icons/closed-eye';\nimport NodeCardTags from '../chapters-v2/comps/node-card/node-card-tags';\nimport type { INodeDataProps, TSheetStates } from '../chapters-v2/comps/node-card/node-card-types';\nimport { getNodeTypeBasedBgImage } from '../chapters-v2/utils';\nimport { getNodeCardBasedIcon } from '../chapters-v2/utils/node-card-utils';\nimport MathFitCard from '../math-fit/math-fit-card/math-fit-card';\nimport PuzzleCard from '../puzzles/comps/puzzle-card';\nimport ArrowTooltip from '../ui/arrow-tooltip/arrow-tooltip';\nimport FlexView from '../ui/layout/flex-view';\nimport LottieAnimation from '../ui/lottie-animation/lottie-animation';\nimport type { ILottieAnimationRef } from '../ui/lottie-animation/types';\nimport type { TUserTypes } from '../ui/types';\nimport CardTitle from './card-title';\nimport { EHWCardListEntityType } from './hw-card-list/hw-card-list-types';\nimport NodeProgress from './node-progress';\nimport * as Styled from './styles';\n\nconst renderSettings = { renderer: 'canvas', autoplay: false };\n\ninterface IHomeworkCardViewProps {\n header: string;\n isInQueue?: boolean;\n nodeData: INodeDataProps;\n studentContainerRef: React.RefObject<HTMLDivElement>;\n subHeader: string;\n userType: TUserTypes;\n isMilestone?: boolean;\n puzzleHWCardRef?: React.RefObject<HTMLDivElement>;\n mathFitCardRef?: React.RefObject<HTMLDivElement>;\n entityType?: EHWCardListEntityType;\n state: TSheetStates;\n score: number | null;\n imageUrl?: string;\n}\n\nconst HomeworkView: FC<IHomeworkCardViewProps> = ({\n header,\n isInQueue,\n nodeData,\n studentContainerRef,\n subHeader,\n userType,\n isMilestone = false,\n puzzleHWCardRef,\n entityType,\n state,\n score,\n imageUrl,\n mathFitCardRef,\n}) => {\n const {\n node_type: nodeType,\n accuracy,\n due_date_ts: dueDateTs,\n image_hue: imageHue,\n card_header: cardHeader = '',\n unlocked_on_ts: unlockedOnTs,\n course_type: courseType,\n title,\n } = nodeData;\n const isPuzzleCard = nodeType === 'PUZZLE_CARD';\n const isMathFitCard = entityType === EHWCardListEntityType.MATHFIT_TEST;\n const isPuzzleDisabled = userType === 'STUDENT' && state === 'LOCKED';\n const isMathFitDisabled =\n state === 'LOCKED' || (userType === 'TEACHER' && state !== 'COMPLETED' && state !== 'EXPIRED');\n\n const tooltipText = useMemo(() => {\n if (state === 'LOCKED') {\n if (isMathFitCard) return 'Take test after class';\n\n return 'Not available to student';\n }\n\n return `You’ll be able to review the test after your student submits it`;\n }, [state, isMathFitCard]);\n\n const [showTitleTooltip, setShowTitleTooltip] = useState(false);\n const titleTextRef = useRef<HTMLDivElement>(null);\n const bgImage = getNodeTypeBasedBgImage(nodeType);\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const { lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMouseEnter = useCallback(() => {\n animationRef.current?.play();\n }, []);\n\n const handleOnMouseLeave = useCallback(() => {\n animationRef.current?.stop();\n }, []);\n\n useLayoutEffect(() => {\n if (\n titleTextRef.current &&\n titleTextRef.current.scrollHeight > titleTextRef.current.clientHeight\n ) {\n setShowTitleTooltip(true);\n }\n }, []);\n\n if (isPuzzleCard) {\n return (\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem=\"Solve puzzle after class\"\n position=\"bottom\"\n hidden={!isPuzzleDisabled}\n >\n <div ref={puzzleHWCardRef}>\n <Styled.PuzzleCardWrapper\n ref={studentContainerRef}\n $position=\"relative\"\n $background={`${imageHue}_2`}\n $disabled={isPuzzleDisabled}\n >\n <PuzzleCard\n imageHue={imageHue}\n imageUrl={imageUrl ?? ''}\n title={title}\n width={126}\n height={159}\n disabled={isPuzzleDisabled}\n />\n\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n dueDateTs={dueDateTs}\n isStudent={userType === 'STUDENT'}\n isMilestone={isMilestone}\n />\n {!isMilestone && dueDateTs && unlockedOnTs && (\n <NodeProgress\n dueDate={dueDateTs * 1000}\n unlockedOn={unlockedOnTs * 1000}\n progressBg={`${imageHue || 'ORANGE'}_5`}\n />\n )}\n </Styled.PuzzleCardWrapper>\n </div>\n </ArrowTooltip>\n );\n }\n\n // MathFit Assessment Card\n if (isMathFitCard) {\n return (\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={tooltipText}\n position=\"bottom\"\n widthX={13}\n hidden={!isMathFitDisabled}\n >\n <div ref={mathFitCardRef}>\n <MathFitCard\n score={score}\n dueDateTs={nodeData.due_date_ts}\n nodeType=\"DYNAMIC\"\n state={state}\n subHeader={subHeader}\n unlockedOnTs={nodeData?.unlocked_on_ts}\n userType={userType}\n isMathFitDisabled={isMathFitDisabled}\n isMilestone={isMilestone}\n studentContainerRef={studentContainerRef}\n />\n </div>\n </ArrowTooltip>\n );\n }\n\n return (\n <FlexView\n ref={studentContainerRef}\n $widthX={12.38}\n $position=\"relative\"\n $background={`${imageHue || 'ORANGE'}_2`}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <Styled.CardWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $width=\"100%\"\n $heightX={3.5}\n $bgImage={bgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n $position=\"relative\"\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $borderRadiusX={2}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <LottieAnimation src={nodeCardLottie} ref={animationRef} settings={renderSettings} />\n </Styled.IconWrapper>\n <CardTitle cardHeader={cardHeader} nodeType={nodeType} courseType={courseType} />\n {isInQueue && (\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem=\"Not visible to student\"\n position=\"bottom\"\n zIndex={6}\n >\n <ClosedEyeIcon />\n </ArrowTooltip>\n )}\n {!!imageUrl && (\n <Styled.BannerImageWrapper>\n <Styled.BannerImage src={imageUrl} alt=\"Chapter image\" />\n </Styled.BannerImageWrapper>\n )}\n </Styled.CardWrapper>\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n dueDateTs={dueDateTs}\n isStudent={userType === 'STUDENT'}\n isMilestone={isMilestone}\n />\n {!isMilestone && dueDateTs && unlockedOnTs && (\n <NodeProgress\n dueDate={dueDateTs * 1000}\n unlockedOn={unlockedOnTs * 1000}\n progressBg={`${imageHue || 'ORANGE'}_4`}\n />\n )}\n <FlexView $gutterX={0.75} $gapX={1} $flexRowGapX={0.5} $background=\"WHITE\">\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n tooltipItem={header}\n width={300}\n hidden={!showTitleTooltip}\n parentWidth=\"auto\"\n zIndex={6}\n >\n <FlexView $heightX={2.5}>\n <Styled.HeaderText ref={titleTextRef} $renderAs=\"ab3\">\n {header}\n </Styled.HeaderText>\n </FlexView>\n </ArrowTooltip>\n <FlexView\n $flexDirection=\"row\"\n $heightX={1.25}\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n >\n <Styled.SubHeaderText $renderAs=\"ub3\" $color=\"BLACK_T_60\">\n {subHeader}\n </Styled.SubHeaderText>\n <FlexView $width={32} />\n </FlexView>\n </FlexView>\n </FlexView>\n );\n};\n\nexport default memo(HomeworkView);\n"],"names":["renderSettings","HomeworkView","header","isInQueue","nodeData","studentContainerRef","subHeader","userType","isMilestone","puzzleHWCardRef","entityType","state","score","imageUrl","mathFitCardRef","nodeType","accuracy","dueDateTs","imageHue","cardHeader","unlockedOnTs","courseType","title","isPuzzleCard","isMathFitCard","EHWCardListEntityType","isPuzzleDisabled","isMathFitDisabled","tooltipText","useMemo","showTitleTooltip","setShowTitleTooltip","useState","titleTextRef","useRef","bgImage","getNodeTypeBasedBgImage","animationRef","nodeCardLottie","getNodeCardBasedIcon","handleOnMouseEnter","useCallback","_a","handleOnMouseLeave","useLayoutEffect","jsx","ArrowTooltip","jsxs","Styled.PuzzleCardWrapper","PuzzleCard","NodeCardTags","NodeProgress","MathFitCard","FlexView","Styled.CardWrapper","Styled.IconWrapper","LottieAnimation","CardTitle","ClosedEyeIcon","Styled.BannerImageWrapper","Styled.BannerImage","Styled.HeaderText","Styled.SubHeaderText","HomeworkCardView","memo"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"milestone-config.js","sources":["../../../../../src/features/milestone/create/api/milestone-config.ts"],"sourcesContent":["import { createGetAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V3 } from '../../../../constants/api';\nimport { stringify } from '../../../../helpers/query-string';\nimport type { IMilestoneConfig } from '../milestone-create-types';\n\nconst { useGet: useGetMileStoneConfig } = createGetAPI<\n IMilestoneConfig,\n { demo_type?:
|
|
1
|
+
{"version":3,"file":"milestone-config.js","sources":["../../../../../src/features/milestone/create/api/milestone-config.ts"],"sourcesContent":["import { createGetAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V3 } from '../../../../constants/api';\nimport { stringify } from '../../../../helpers/query-string';\nimport type { IMilestoneConfig } from '../milestone-create-types';\n\nconst { useGet: useGetMileStoneConfig } = createGetAPI<\n IMilestoneConfig,\n { demo_type?: 'TRIAL_V3' } | undefined\n>({\n getURL: (_, query) => `${BASE_URL_V3}/milestone/config/${query ? `?${stringify(query)}` : ''}`,\n});\n\nexport { useGetMileStoneConfig };\n"],"names":["useGetMileStoneConfig","createGetAPI","_","query","BASE_URL_V3","stringify"],"mappings":";;;AAMA,MAAM,EAAE,QAAQA,EAAsB,IAAIC,EAGxC;AAAA,EACA,QAAQ,CAACC,GAAGC,MAAU,GAAGC,CAAW,qBAAqBD,IAAQ,IAAIE,EAAUF,CAAK,CAAC,KAAK,EAAE;AAC9F,CAAC;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as e } from "react/jsx-runtime";
|
|
2
2
|
import { memo as p, useCallback as f, useEffect as d } from "react";
|
|
3
|
-
import { useGetSessionReports as u } from "../../../trial-session/api/trial-
|
|
3
|
+
import { useGetSessionReports as u } from "../../../trial-session/api/trial-home.js";
|
|
4
4
|
import l from "../../../trial-session/comps/session-report/report-information/report-information.js";
|
|
5
5
|
import c from "../../../ui/error/error.js";
|
|
6
6
|
import h from "../../../ui/loader/app-loader/app-loader.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trial-report.js","sources":["../../../../../src/features/parent-dashboard/modals/trial-report/trial-report.tsx"],"sourcesContent":["import { memo, useCallback, useEffect } from 'react';\n\nimport { useGetSessionReports } from '../../../trial-session/api/trial-
|
|
1
|
+
{"version":3,"file":"trial-report.js","sources":["../../../../../src/features/parent-dashboard/modals/trial-report/trial-report.tsx"],"sourcesContent":["import { memo, useCallback, useEffect } from 'react';\n\nimport { useGetSessionReports } from '../../../trial-session/api/trial-home';\nimport ReportInformation from '../../../trial-session/comps/session-report/report-information/report-information';\nimport Error from '../../../ui/error/error';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport useModalParams from '../../../ui/modals/use-modal-params';\nimport * as Styled from './trial-report-styled';\n\nconst StudentTrialReport = () => {\n const { studentName, attemptId, studentLevel } = useModalParams<{\n studentName: string;\n attemptId: string;\n studentLevel: string;\n }>();\n\n const {\n get: getSessionReports,\n isProcessingFailed,\n data: sessionReports,\n isProcessing,\n } = useGetSessionReports();\n\n const fetchData = useCallback(() => {\n if (attemptId && studentName) {\n getSessionReports(attemptId, {\n student_level: studentLevel,\n student_name: studentName,\n });\n }\n }, [attemptId, getSessionReports, studentLevel, studentName]);\n\n useEffect(() => {\n fetchData();\n }, [fetchData]);\n\n if (isProcessingFailed) {\n return <Error height=\"50vh\" onTryAgain={fetchData} />;\n }\n\n if (isProcessing || !sessionReports) {\n return <AppLoader height={200} width={200} />;\n }\n\n return (\n <Styled.Container $borderColor=\"BLACK_1\">\n <ReportInformation sessionReports={sessionReports} studentName={studentName} />\n </Styled.Container>\n );\n};\n\nexport default memo(StudentTrialReport);\n"],"names":["StudentTrialReport","studentName","attemptId","studentLevel","useModalParams","getSessionReports","isProcessingFailed","sessionReports","isProcessing","useGetSessionReports","fetchData","useCallback","useEffect","jsx","Error","AppLoader","Styled.Container","ReportInformation","trialReport","memo"],"mappings":";;;;;;;;AASA,MAAMA,IAAqB,MAAM;AAC/B,QAAM,EAAE,aAAAC,GAAa,WAAAC,GAAW,cAAAC,MAAiBC,EAI9C,GAEG;AAAA,IACJ,KAAKC;AAAA,IACL,oBAAAC;AAAA,IACA,MAAMC;AAAA,IACN,cAAAC;AAAA,MACEC,EAAqB,GAEnBC,IAAYC,EAAY,MAAM;AAClC,IAAIT,KAAaD,KACfI,EAAkBH,GAAW;AAAA,MAC3B,eAAeC;AAAA,MACf,cAAcF;AAAA,IAAA,CACf;AAAA,KAEF,CAACC,GAAWG,GAAmBF,GAAcF,CAAW,CAAC;AAM5D,SAJAW,EAAU,MAAM;AACJ,IAAAF;EAAA,GACT,CAACA,CAAS,CAAC,GAEVJ,IACM,gBAAAO,EAAAC,GAAA,EAAM,QAAO,QAAO,YAAYJ,EAAW,CAAA,IAGjDF,KAAgB,CAACD,IACX,gBAAAM,EAAAE,GAAA,EAAU,QAAQ,KAAK,OAAO,IAAK,CAAA,IAI3C,gBAAAF,EAACG,GAAA,EAAiB,cAAa,WAC7B,UAAC,gBAAAH,EAAAI,GAAA,EAAkB,gBAAAV,GAAgC,aAAAN,EAA0B,CAAA,EAC/E,CAAA;AAEJ,GAEeiB,IAAAC,EAAKnB,CAAkB;"}
|
|
@@ -1,14 +1,20 @@
|
|
|
1
|
-
import { createGetAPI as
|
|
2
|
-
import { BASE_URL_V1 as
|
|
3
|
-
import { stringify as
|
|
4
|
-
const { useGet:
|
|
5
|
-
getURL: (
|
|
6
|
-
}), { usePatch:
|
|
7
|
-
getURL: () => `${
|
|
1
|
+
import { createGetAPI as s, createPatchAPI as a } from "@cuemath/rest-api";
|
|
2
|
+
import { BASE_URL_V1 as r, BASE_URL_V2 as i } from "../../../constants/api.js";
|
|
3
|
+
import { stringify as o } from "../../../helpers/query-string.js";
|
|
4
|
+
const { useGet: u, invalidate: l } = s({
|
|
5
|
+
getURL: (t, e) => `${r}/trial/home/v2/?${o(e)}`
|
|
6
|
+
}), { usePatch: p } = a({
|
|
7
|
+
getURL: () => `${r}/trial/home/v2/`
|
|
8
|
+
}), { useGet: g } = s({
|
|
9
|
+
getURL: (t) => `${i}/user-attempts/${t}/trial-diagnostic/report`
|
|
10
|
+
}), { useGet: $ } = s({
|
|
11
|
+
getURL: (t, e) => `${i}/user-attempts/${t}/trial-diagnostic/report/v2/?${o(e)}`
|
|
8
12
|
});
|
|
9
13
|
export {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
14
|
+
l as invalidateTrialHome,
|
|
15
|
+
g as useGetSessionInsights,
|
|
16
|
+
$ as useGetSessionReports,
|
|
17
|
+
u as useGetTrialHome,
|
|
18
|
+
p as usePatchTrialHome
|
|
13
19
|
};
|
|
14
20
|
//# sourceMappingURL=trial-home.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trial-home.js","sources":["../../../../src/features/trial-session/api/trial-home.ts"],"sourcesContent":["import { createGetAPI, createPatchAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V1 } from '../../../constants/api';\nimport { stringify } from '../../../helpers/query-string';\nimport type { ITrialHomeData } from '../trial-session-types';\n\ninterface IGetTrailHomeQuery {\n teacher_id: string;\n student_id: string;\n viewer: string;\n}\n\nconst { useGet: useGetTrialHome, invalidate: invalidateTrialHome } = createGetAPI<\n ITrialHomeData,\n IGetTrailHomeQuery\n>({\n getURL: (_, query) => `${BASE_URL_V1}/trial/home/v2/?${stringify(query)}`,\n});\n\nconst { usePatch: usePatchTrialHome } = createPatchAPI({\n getURL: () => `${BASE_URL_V1}/trial/home/v2/`,\n});\n\
|
|
1
|
+
{"version":3,"file":"trial-home.js","sources":["../../../../src/features/trial-session/api/trial-home.ts"],"sourcesContent":["import { createGetAPI, createPatchAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL_V1, BASE_URL_V2 } from '../../../constants/api';\nimport { stringify } from '../../../helpers/query-string';\nimport type { TSessionInsightsData } from '../comps/session-insights/session-insights-types';\nimport type { TSessionReportData } from '../comps/session-report/session-report-types';\nimport type { ITrialHomeData } from '../trial-session-types';\n\ninterface IGetTrailHomeQuery {\n teacher_id: string;\n student_id: string;\n viewer: string;\n}\n\ninterface ISessionInsightsQuery {\n student_level: string;\n student_name: string;\n}\n\nconst { useGet: useGetTrialHome, invalidate: invalidateTrialHome } = createGetAPI<\n ITrialHomeData,\n IGetTrailHomeQuery\n>({\n getURL: (_, query) => `${BASE_URL_V1}/trial/home/v2/?${stringify(query)}`,\n});\n\nconst { usePatch: usePatchTrialHome } = createPatchAPI({\n getURL: () => `${BASE_URL_V1}/trial/home/v2/`,\n});\n\nconst { useGet: useGetSessionInsights } = createGetAPI<TSessionInsightsData>({\n getURL: userAttemptId => `${BASE_URL_V2}/user-attempts/${userAttemptId}/trial-diagnostic/report`,\n});\n\nconst { useGet: useGetSessionReports } = createGetAPI<TSessionReportData, ISessionInsightsQuery>({\n getURL: (userAttemptId, query) =>\n `${BASE_URL_V2}/user-attempts/${userAttemptId}/trial-diagnostic/report/v2/?${stringify(query)}`,\n});\n\nexport {\n useGetTrialHome,\n usePatchTrialHome,\n invalidateTrialHome,\n useGetSessionReports,\n useGetSessionInsights,\n};\n"],"names":["useGetTrialHome","invalidateTrialHome","createGetAPI","_","query","BASE_URL_V1","stringify","usePatchTrialHome","createPatchAPI","useGetSessionInsights","userAttemptId","BASE_URL_V2","useGetSessionReports"],"mappings":";;;AAmBA,MAAM,EAAE,QAAQA,GAAiB,YAAYC,EAAA,IAAwBC,EAGnE;AAAA,EACA,QAAQ,CAACC,GAAGC,MAAU,GAAGC,CAAW,mBAAmBC,EAAUF,CAAK,CAAC;AACzE,CAAC,GAEK,EAAE,UAAUG,EAAkB,IAAIC,EAAe;AAAA,EACrD,QAAQ,MAAM,GAAGH,CAAW;AAC9B,CAAC,GAEK,EAAE,QAAQI,EAAsB,IAAIP,EAAmC;AAAA,EAC3E,QAAQ,CAAAQ,MAAiB,GAAGC,CAAW,kBAAkBD,CAAa;AACxE,CAAC,GAEK,EAAE,QAAQE,EAAqB,IAAIV,EAAwD;AAAA,EAC/F,QAAQ,CAACQ,GAAeN,MACtB,GAAGO,CAAW,kBAAkBD,CAAa,gCAAgCJ,EAAUF,CAAK,CAAC;AACjG,CAAC;"}
|