@cuemath/leap 3.3.30 → 3.3.31-m
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/line-icons/icons/chevron-right.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js +34 -43
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/chapter-details.js +101 -140
- package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
- package/dist/features/chapters-v2/utils/index.js +16 -20
- package/dist/features/chapters-v2/utils/index.js.map +1 -1
- package/dist/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.js +6 -6
- package/dist/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.js.map +1 -1
- package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/use-get-circle-home-details-dal.js +21 -20
- package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/use-get-circle-home-details-dal.js.map +1 -1
- package/dist/features/circle-games/games/web-view/web-view-types.js.map +1 -1
- package/dist/features/circle-games/sign-up/sign-up.js +6 -6
- package/dist/features/circle-games/sign-up/sign-up.js.map +1 -1
- package/dist/features/homework/hw-card-list/hw-card-list-view.js +17 -17
- package/dist/features/journey/journey-id/journey-id-student.js +1 -1
- package/dist/features/journey/journey-id/journey-id-student.js.map +1 -1
- package/dist/features/journey/journey-id/journey-id-teacher.js +2 -2
- package/dist/features/journey/journey-id/journey-id-teacher.js.map +1 -1
- package/dist/features/journey/mocks/chapter-page-journey-mock-data.js +0 -400
- package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -1
- package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector.js +6 -6
- package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js +2 -2
- package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction.js +22 -28
- package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction.js.map +1 -1
- package/dist/features/parent-dashboard/hooks/use-fetch-parent-home.js +1 -1
- package/dist/features/parent-dashboard/hooks/use-fetch-parent-home.js.map +1 -1
- package/dist/features/parent-dashboard/hooks/use-parent-home-data.js +44 -44
- package/dist/features/parent-dashboard/hooks/use-parent-home-data.js.map +1 -1
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-styled.js +12 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-styled.js.map +1 -0
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary.js +17 -16
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary.js.map +1 -1
- package/dist/features/parent-dashboard/modals/trial-report/trial-report-styled.js +8 -4
- package/dist/features/parent-dashboard/modals/trial-report/trial-report-styled.js.map +1 -1
- package/dist/features/parent-dashboard/parent-dashboard-constants.js +4 -44
- package/dist/features/parent-dashboard/parent-dashboard-constants.js.map +1 -1
- package/dist/features/parent-dashboard/parent-dashboard-types.js +3 -3
- package/dist/features/parent-dashboard/parent-dashboard-types.js.map +1 -1
- package/dist/features/parent-dashboard/parent-dashboard-view.js +175 -174
- package/dist/features/parent-dashboard/parent-dashboard-view.js.map +1 -1
- package/dist/features/stickers/sticker-selector/hooks/use-handle-sticker-send.js +25 -0
- package/dist/features/stickers/sticker-selector/hooks/use-handle-sticker-send.js.map +1 -0
- package/dist/features/stickers/sticker-selector/hooks/use-stickers-journey/use-stickers-journey.js +72 -0
- package/dist/features/stickers/sticker-selector/hooks/use-stickers-journey/use-stickers-journey.js.map +1 -0
- package/dist/features/stickers/sticker-selector/sticker-selector.js +58 -57
- package/dist/features/stickers/sticker-selector/sticker-selector.js.map +1 -1
- package/dist/features/stickers/stickers-effects/comps/sticker-with-fallback.js +34 -0
- package/dist/features/stickers/stickers-effects/comps/sticker-with-fallback.js.map +1 -0
- package/dist/features/stickers/stickers-effects/constants.js +26 -0
- package/dist/features/stickers/stickers-effects/constants.js.map +1 -0
- package/dist/features/stickers/stickers-effects/context/sticker-provider.js +28 -0
- package/dist/features/stickers/stickers-effects/context/sticker-provider.js.map +1 -0
- package/dist/features/stickers/stickers-effects/hooks/use-stickers.js +12 -0
- package/dist/features/stickers/stickers-effects/hooks/use-stickers.js.map +1 -0
- package/dist/features/stickers/stickers-effects/stickers-effects-helper.js.map +1 -1
- package/dist/features/stickers/stickers-effects/stickers-effects-styled.js +32 -17
- package/dist/features/stickers/stickers-effects/stickers-effects-styled.js.map +1 -1
- package/dist/features/stickers/stickers-effects/stickers-effects-types.js +6 -0
- package/dist/features/stickers/stickers-effects/stickers-effects-types.js.map +1 -0
- package/dist/features/stickers/stickers-effects/stickers-effects.js +40 -56
- package/dist/features/stickers/stickers-effects/stickers-effects.js.map +1 -1
- package/dist/features/student-details/class-details/class-details-utils.js +6 -6
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/next-steps/next-steps-constants.js +1 -1
- package/dist/features/trial-session/comps/pla/next-steps/next-steps-constants.js.map +1 -0
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/next-steps/next-steps-styled.js +1 -1
- package/dist/features/trial-session/comps/pla/next-steps/next-steps-styled.js.map +1 -0
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/next-steps/next-steps.js +5 -5
- package/dist/features/trial-session/comps/pla/next-steps/next-steps.js.map +1 -0
- package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-countdown.js +29 -0
- package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-countdown.js.map +1 -0
- package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-status-config.js +132 -0
- package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-status-config.js.map +1 -0
- package/dist/features/trial-session/comps/pla/session-status/session-status-constants.js +11 -0
- package/dist/features/trial-session/comps/pla/session-status/session-status-constants.js.map +1 -0
- package/dist/features/trial-session/comps/pla/session-status/session-status-helpers.js +19 -0
- package/dist/features/trial-session/comps/pla/session-status/session-status-helpers.js.map +1 -0
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/session-status/session-status-styled.js +2 -2
- package/dist/features/trial-session/comps/pla/session-status/session-status-styled.js.map +1 -0
- package/dist/features/trial-session/comps/pla/session-status/session-status.js +127 -0
- package/dist/features/trial-session/comps/pla/session-status/session-status.js.map +1 -0
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/session-summary/session-summary-constants.js +2 -2
- package/dist/features/trial-session/comps/pla/session-summary/session-summary-constants.js.map +1 -0
- package/dist/features/trial-session/comps/pla/session-summary/session-summary.js +53 -0
- package/dist/features/trial-session/comps/pla/session-summary/session-summary.js.map +1 -0
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/session-summary/summary-card/summary-card-styled.js +1 -1
- package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card-styled.js.map +1 -0
- package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card.js +56 -0
- package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card.js.map +1 -0
- package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions-constants.js.map +1 -0
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions-styled.js +1 -1
- package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions-styled.js.map +1 -0
- package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions-types.js.map +1 -0
- package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions.js +14 -14
- package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions.js.map +1 -0
- package/dist/features/trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js +44 -43
- package/dist/features/trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js.map +1 -1
- package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js +61 -60
- package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.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 +73 -71
- package/dist/features/trial-session/trial-session-view.js.map +1 -1
- package/dist/features/ui/modals/modal-styled.js +13 -45
- package/dist/features/ui/modals/modal-styled.js.map +1 -1
- package/dist/features/ui/modals/modal.js +31 -31
- package/dist/features/ui/modals/modal.js.map +1 -1
- package/dist/index.d.ts +143 -54
- package/dist/index.js +337 -320
- package/dist/index.js.map +1 -1
- package/dist/node_modules/date-fns/_lib/getRoundingMethod.js +10 -0
- package/dist/node_modules/date-fns/_lib/getRoundingMethod.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInMilliseconds.js +9 -0
- package/dist/node_modules/date-fns/differenceInMilliseconds.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInSeconds.js +11 -0
- package/dist/node_modules/date-fns/differenceInSeconds.js.map +1 -0
- package/dist/node_modules/query-string/base.js +1 -1
- package/dist/node_modules/query-string/node_modules/decode-uri-component/index.js.map +1 -0
- package/dist/node_modules/uuid/dist/esm-browser/regex.js +5 -0
- package/dist/node_modules/uuid/dist/esm-browser/regex.js.map +1 -0
- package/dist/node_modules/uuid/dist/esm-browser/rng.js +2 -3
- package/dist/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js +10 -6
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/v4.js +9 -12
- package/dist/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/validate.js +8 -0
- package/dist/node_modules/uuid/dist/esm-browser/validate.js.map +1 -0
- package/package.json +1 -1
- package/dist/features/journey/hooks/use-chapter-page-journey/use-download-block-journey.js +0 -86
- package/dist/features/journey/hooks/use-chapter-page-journey/use-download-block-journey.js.map +0 -1
- package/dist/features/journey/hooks/use-chapter-page-journey/use-download-node-journey.js +0 -140
- package/dist/features/journey/hooks/use-chapter-page-journey/use-download-node-journey.js.map +0 -1
- package/dist/features/parent-dashboard/comps/next-steps/next-steps-constants.js.map +0 -1
- package/dist/features/parent-dashboard/comps/next-steps/next-steps-styled.js.map +0 -1
- package/dist/features/parent-dashboard/comps/next-steps/next-steps.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-status/hooks/use-countdown.js +0 -34
- package/dist/features/parent-dashboard/comps/session-status/hooks/use-countdown.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-status/hooks/use-session-status-config.js +0 -137
- package/dist/features/parent-dashboard/comps/session-status/hooks/use-session-status-config.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-status/session-status-constants.js +0 -20
- package/dist/features/parent-dashboard/comps/session-status/session-status-constants.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-status/session-status-helpers.js +0 -19
- package/dist/features/parent-dashboard/comps/session-status/session-status-helpers.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-status/session-status-styled.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-status/session-status.js +0 -124
- package/dist/features/parent-dashboard/comps/session-status/session-status.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-summary/session-summary-constants.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-summary/session-summary.js +0 -53
- package/dist/features/parent-dashboard/comps/session-summary/session-summary.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-summary/summary-card/summary-card-styled.js.map +0 -1
- package/dist/features/parent-dashboard/comps/session-summary/summary-card/summary-card.js +0 -63
- package/dist/features/parent-dashboard/comps/session-summary/summary-card/summary-card.js.map +0 -1
- package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions-constants.js.map +0 -1
- package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions-styled.js.map +0 -1
- package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions-types.js.map +0 -1
- package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions.js.map +0 -1
- package/dist/node_modules/decode-uri-component/index.js.map +0 -1
- package/dist/node_modules/uuid/dist/esm-browser/native.js +0 -7
- package/dist/node_modules/uuid/dist/esm-browser/native.js.map +0 -1
- /package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions-constants.js +0 -0
- /package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions-types.js +0 -0
- /package/dist/node_modules/{decode-uri-component → query-string/node_modules/decode-uri-component}/index.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chevron-right.js","sources":["../../../../src/assets/line-icons/icons/chevron-right.tsx"],"sourcesContent":["import React from 'react';\n\ninterface IconProps extends React.SVGProps<SVGSVGElement> {}\n\nconst ChevronRight: React.FC<IconProps> = props => (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M16.666 12.6C13.3155 12.6 10.5993 15.3161 10.5993 18.6666H9.39935C9.39935 15.6827 11.1979 13.1188 13.77 12C11.1979 10.8811 9.39935 8.31722 9.39935 5.33329H10.5993C10.5993 8.68382 13.3155 11.4 16.666 11.4V12.6Z\"\n fill=\"currentColor\"\n fillOpacity=\"1\"\n />\n </svg>\n);\n\nexport default ChevronRight;\n"],"names":["ChevronRight","props","jsx","
|
|
1
|
+
{"version":3,"file":"chevron-right.js","sources":["../../../../src/assets/line-icons/icons/chevron-right.tsx"],"sourcesContent":["import React from 'react';\n\ninterface IconProps extends React.SVGProps<SVGSVGElement> {}\n\nconst ChevronRight: React.FC<IconProps> = props => (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M16.666 12.6C13.3155 12.6 10.5993 15.3161 10.5993 18.6666H9.39935C9.39935 15.6827 11.1979 13.1188 13.77 12C11.1979 10.8811 9.39935 8.31722 9.39935 5.33329H10.5993C10.5993 8.68382 13.3155 11.4 16.666 11.4V12.6Z\"\n fill=\"currentColor\"\n fillOpacity=\"1\"\n />\n </svg>\n);\n\nexport default ChevronRight;\n"],"names":["ChevronRight","props","jsx","ChevronRight$1"],"mappings":";AAIA,MAAMA,IAAoC,CACxCC,MAAA,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,QAAO;AAAA,IACP,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,OAAM;AAAA,IACL,GAAGD;AAAA,IAEJ,UAAA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,UAAS;AAAA,QACT,UAAS;AAAA,QACT,GAAE;AAAA,QACF,MAAK;AAAA,QACL,aAAY;AAAA,MAAA;AAAA,IACd;AAAA,EAAA;AACF,GAGFC,IAAeH;"}
|
|
@@ -1,62 +1,53 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { memo as
|
|
3
|
-
import { BLOCK_TYPE as
|
|
4
|
-
import
|
|
5
|
-
import { ChapterDetailsWrapper as
|
|
6
|
-
const { SAT_MOCK_TEST:
|
|
7
|
-
const {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
userType: r,
|
|
11
|
-
coreBlocksRef: S,
|
|
12
|
-
challengeBlockRef: C,
|
|
13
|
-
downloadBlockRef: E,
|
|
14
|
-
downloadCoreBlockRef: g,
|
|
15
|
-
...d
|
|
16
|
-
} = h;
|
|
17
|
-
let a = 0, k = !1, f = !1;
|
|
18
|
-
const { goalBlocks: p, nonGoalBlocks: B } = D(
|
|
1
|
+
import { jsxs as T, jsx as c } from "react/jsx-runtime";
|
|
2
|
+
import { memo as b, useMemo as A } from "react";
|
|
3
|
+
import { BLOCK_TYPE as C, SECTION_CODE as g } from "../../constants/block-constants.js";
|
|
4
|
+
import m from "./block-section-view.js";
|
|
5
|
+
import { ChapterDetailsWrapper as R } from "./block-sections-styled.js";
|
|
6
|
+
const { SAT_MOCK_TEST: u, GOAL: y } = C, { GOALS: G, READINESS: I } = g, v = b((_) => {
|
|
7
|
+
const { blocks: t, imageHue: n, userType: i, coreBlocksRef: B, blockSectionRef: S, ...r } = _;
|
|
8
|
+
let p = 0, k = !1;
|
|
9
|
+
const { goalBlocks: d, nonGoalBlocks: a } = A(
|
|
19
10
|
() => t.reduce(
|
|
20
|
-
(o, e) => (e.section_code ===
|
|
11
|
+
(o, e) => (e.section_code === G || e.section_code === I || e.block_type === u ? o.goalBlocks.push(e) : o.nonGoalBlocks.push(e), o),
|
|
21
12
|
{ goalBlocks: [], nonGoalBlocks: [] }
|
|
22
13
|
),
|
|
23
14
|
[t]
|
|
24
15
|
);
|
|
25
|
-
return /* @__PURE__ */
|
|
26
|
-
|
|
16
|
+
return /* @__PURE__ */ T(
|
|
17
|
+
R,
|
|
27
18
|
{
|
|
28
19
|
$width: "100%",
|
|
29
|
-
$background:
|
|
20
|
+
$background: a.length ? "WHITE_3" : "WHITE_1",
|
|
30
21
|
children: [
|
|
31
|
-
/* @__PURE__ */ c("div", { ref:
|
|
32
|
-
const { block_type: l, block_id: s, permissions:
|
|
33
|
-
let
|
|
34
|
-
const
|
|
35
|
-
return (l ===
|
|
36
|
-
|
|
22
|
+
/* @__PURE__ */ c("div", { ref: B, children: d.map((o, e) => {
|
|
23
|
+
const { block_type: l, block_id: s, permissions: E } = o;
|
|
24
|
+
let f = 0;
|
|
25
|
+
const h = e === d.length - 1;
|
|
26
|
+
return (l === y || l === u) && (E.can_un_skip || (p += 1), f = p), /* @__PURE__ */ c(
|
|
27
|
+
m,
|
|
37
28
|
{
|
|
38
29
|
blockData: o,
|
|
39
|
-
userType:
|
|
40
|
-
isLastBlock:
|
|
41
|
-
lessonIdx:
|
|
42
|
-
imageHue:
|
|
30
|
+
userType: i,
|
|
31
|
+
isLastBlock: h,
|
|
32
|
+
lessonIdx: f,
|
|
33
|
+
imageHue: n,
|
|
43
34
|
isGoalBlock: !0,
|
|
44
|
-
...
|
|
45
|
-
blockSectionRef:
|
|
35
|
+
...r,
|
|
36
|
+
blockSectionRef: void 0
|
|
46
37
|
},
|
|
47
38
|
s
|
|
48
39
|
);
|
|
49
40
|
}) }),
|
|
50
|
-
|
|
51
|
-
const { block_id: e, block_type: l } = o, s = l === "CHALLENGE_ARENA" && !k
|
|
52
|
-
return s && (k = !0),
|
|
53
|
-
|
|
41
|
+
a.map((o) => {
|
|
42
|
+
const { block_id: e, block_type: l } = o, s = l === "CHALLENGE_ARENA" && !k;
|
|
43
|
+
return s && (k = !0), /* @__PURE__ */ c(
|
|
44
|
+
m,
|
|
54
45
|
{
|
|
55
46
|
blockData: o,
|
|
56
|
-
userType:
|
|
57
|
-
imageHue:
|
|
58
|
-
...
|
|
59
|
-
blockSectionRef: s ?
|
|
47
|
+
userType: i,
|
|
48
|
+
imageHue: n,
|
|
49
|
+
...r,
|
|
50
|
+
blockSectionRef: s ? S : void 0
|
|
60
51
|
},
|
|
61
52
|
e
|
|
62
53
|
);
|
|
@@ -66,6 +57,6 @@ const { SAT_MOCK_TEST: _, GOAL: w } = G, { GOALS: N, READINESS: x } = I, F = y((
|
|
|
66
57
|
);
|
|
67
58
|
});
|
|
68
59
|
export {
|
|
69
|
-
|
|
60
|
+
v as default
|
|
70
61
|
};
|
|
71
62
|
//# sourceMappingURL=block-sections.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-sections.js","sources":["../../../../../src/features/chapters-v2/chapter-details/block-sections/block-sections.tsx"],"sourcesContent":["import type { IBlockSectionsProps } from './block-sections-types';\nimport type { FC } from 'react';\n\nimport { memo, useMemo } from 'react';\n\nimport { BLOCK_TYPE, SECTION_CODE } from '../../constants/block-constants';\nimport BlockSectionView from './block-section-view';\nimport * as Styled from './block-sections-styled';\n\nconst { SAT_MOCK_TEST, GOAL } = BLOCK_TYPE;\nconst { GOALS, READINESS } = SECTION_CODE;\n\nconst BlockSections: FC<IBlockSectionsProps> = memo(props => {\n const {
|
|
1
|
+
{"version":3,"file":"block-sections.js","sources":["../../../../../src/features/chapters-v2/chapter-details/block-sections/block-sections.tsx"],"sourcesContent":["import type { IBlockSectionsProps } from './block-sections-types';\nimport type { FC } from 'react';\n\nimport { memo, useMemo } from 'react';\n\nimport { BLOCK_TYPE, SECTION_CODE } from '../../constants/block-constants';\nimport BlockSectionView from './block-section-view';\nimport * as Styled from './block-sections-styled';\n\nconst { SAT_MOCK_TEST, GOAL } = BLOCK_TYPE;\nconst { GOALS, READINESS } = SECTION_CODE;\n\nconst BlockSections: FC<IBlockSectionsProps> = memo(props => {\n const { blocks, imageHue, userType, coreBlocksRef, blockSectionRef, ...blockSectionCallBacks } =\n props;\n\n let lessonCount = 0;\n let addChallengeArenaRef = false;\n\n const { goalBlocks, nonGoalBlocks } = useMemo(\n () =>\n blocks.reduce(\n (acc, block) => {\n if (\n block.section_code === GOALS ||\n block.section_code === READINESS ||\n block.block_type === SAT_MOCK_TEST\n ) {\n acc.goalBlocks.push(block);\n } else {\n acc.nonGoalBlocks.push(block);\n }\n\n return acc;\n },\n { goalBlocks: [] as typeof blocks, nonGoalBlocks: [] as typeof blocks },\n ),\n [blocks],\n );\n\n return (\n <Styled.ChapterDetailsWrapper\n $width=\"100%\"\n $background={!nonGoalBlocks.length ? `WHITE_1` : 'WHITE_3'}\n >\n <div ref={coreBlocksRef}>\n {goalBlocks.map((blockData, idx) => {\n const { block_type: blockType, block_id: blockId, permissions } = blockData;\n let lessonIdx = 0;\n\n const isLastBlock = idx === goalBlocks.length - 1;\n\n if (blockType === GOAL || blockType === SAT_MOCK_TEST) {\n if (!permissions.can_un_skip) {\n lessonCount += 1;\n }\n\n lessonIdx = lessonCount;\n }\n\n return (\n <BlockSectionView\n blockData={blockData}\n userType={userType}\n isLastBlock={isLastBlock}\n key={blockId}\n lessonIdx={lessonIdx}\n imageHue={imageHue}\n isGoalBlock\n {...blockSectionCallBacks}\n blockSectionRef={undefined}\n />\n );\n })}\n </div>\n\n {nonGoalBlocks.map(blockData => {\n const { block_id: blockId, block_type: blockType } = blockData;\n\n // Apply blockSectionRef only to the first CHALLENGE_ARENA block\n const shouldApplyRef = blockType === 'CHALLENGE_ARENA' && !addChallengeArenaRef;\n\n if (shouldApplyRef) {\n addChallengeArenaRef = true;\n }\n\n return (\n <BlockSectionView\n key={blockId}\n blockData={blockData}\n userType={userType}\n imageHue={imageHue}\n {...blockSectionCallBacks}\n blockSectionRef={shouldApplyRef ? blockSectionRef : undefined}\n />\n );\n })}\n </Styled.ChapterDetailsWrapper>\n );\n});\n\nexport default BlockSections;\n"],"names":["SAT_MOCK_TEST","GOAL","BLOCK_TYPE","GOALS","READINESS","SECTION_CODE","BlockSections","memo","props","blocks","imageHue","userType","coreBlocksRef","blockSectionRef","blockSectionCallBacks","lessonCount","addChallengeArenaRef","goalBlocks","nonGoalBlocks","useMemo","acc","block","jsxs","Styled.ChapterDetailsWrapper","jsx","blockData","idx","blockType","blockId","permissions","lessonIdx","isLastBlock","BlockSectionView","shouldApplyRef"],"mappings":";;;;;AASA,MAAM,EAAE,eAAAA,GAAe,MAAAC,EAAS,IAAAC,GAC1B,EAAE,OAAAC,GAAO,WAAAC,EAAc,IAAAC,GAEvBC,IAAyCC,EAAK,CAASC,MAAA;AACrD,QAAA,EAAE,QAAAC,GAAQ,UAAAC,GAAU,UAAAC,GAAU,eAAAC,GAAe,iBAAAC,GAAiB,GAAGC,EACrE,IAAAN;AAEF,MAAIO,IAAc,GACdC,IAAuB;AAErB,QAAA,EAAE,YAAAC,GAAY,eAAAC,EAAA,IAAkBC;AAAA,IACpC,MACEV,EAAO;AAAA,MACL,CAACW,GAAKC,OAEFA,EAAM,iBAAiBlB,KACvBkB,EAAM,iBAAiBjB,KACvBiB,EAAM,eAAerB,IAEjBoB,EAAA,WAAW,KAAKC,CAAK,IAErBD,EAAA,cAAc,KAAKC,CAAK,GAGvBD;AAAA,MAET,EAAE,YAAY,CAAA,GAAqB,eAAe,GAAoB;AAAA,IACxE;AAAA,IACF,CAACX,CAAM;AAAA,EAAA;AAIP,SAAA,gBAAAa;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,QAAO;AAAA,MACP,aAAcL,EAAc,SAAqB,YAAZ;AAAA,MAErC,UAAA;AAAA,QAAA,gBAAAM,EAAC,SAAI,KAAKZ,GACP,YAAW,IAAI,CAACa,GAAWC,MAAQ;AAClC,gBAAM,EAAE,YAAYC,GAAW,UAAUC,GAAS,aAAAC,EAAgB,IAAAJ;AAClE,cAAIK,IAAY;AAEV,gBAAAC,IAAcL,MAAQT,EAAW,SAAS;AAE5C,kBAAAU,MAAc1B,KAAQ0B,MAAc3B,OACjC6B,EAAY,gBACAd,KAAA,IAGLe,IAAAf,IAIZ,gBAAAS;AAAA,YAACQ;AAAA,YAAA;AAAA,cACC,WAAAP;AAAA,cACA,UAAAd;AAAA,cACA,aAAAoB;AAAA,cAEA,WAAAD;AAAA,cACA,UAAApB;AAAA,cACA,aAAW;AAAA,cACV,GAAGI;AAAA,cACJ,iBAAiB;AAAA,YAAA;AAAA,YALZc;AAAA,UAAA;AAAA,QAQV,CAAA,GACH;AAAA,QAECV,EAAc,IAAI,CAAaO,MAAA;AAC9B,gBAAM,EAAE,UAAUG,GAAS,YAAYD,MAAcF,GAG/CQ,IAAiBN,MAAc,qBAAqB,CAACX;AAE3D,iBAAIiB,MACqBjB,IAAA,KAIvB,gBAAAQ;AAAA,YAACQ;AAAA,YAAA;AAAA,cAEC,WAAAP;AAAA,cACA,UAAAd;AAAA,cACA,UAAAD;AAAA,cACC,GAAGI;AAAA,cACJ,iBAAiBmB,IAAiBpB,IAAkB;AAAA,YAAA;AAAA,YAL/Ce;AAAA,UAAA;AAAA,QAMP,CAEH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP,CAAC;"}
|
|
@@ -1,187 +1,148 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { memo as
|
|
3
|
-
import { ILLUSTRATIONS as
|
|
4
|
-
import
|
|
5
|
-
import { useChallengeArenaJourney as
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import {
|
|
16
|
-
|
|
17
|
-
import ce from "./chapter-banner/chapter-banner.js";
|
|
18
|
-
import { ContentWrapper as de, BackButtonContainer as me, BackButtonWrapper as pe, LoaderWrapper as fe } from "./chapter-details-styled.js";
|
|
19
|
-
const he = G((S) => {
|
|
1
|
+
import { jsxs as c, jsx as t, Fragment as E } from "react/jsx-runtime";
|
|
2
|
+
import { memo as L, useCallback as P, useEffect as p } from "react";
|
|
3
|
+
import { ILLUSTRATIONS as T } from "../../../assets/illustrations/illustrations.js";
|
|
4
|
+
import U from "../../../assets/line-icons/icons/back2.js";
|
|
5
|
+
import { useChallengeArenaJourney as j } from "../../journey/hooks/use-chapter-page-journey/use-challenge-arena-journey.js";
|
|
6
|
+
import { useJourney as H } from "../../journey/use-journey/use-journey.js";
|
|
7
|
+
import F from "../../ui/buttons/button/button.js";
|
|
8
|
+
import O from "../../ui/buttons/icon-button/icon-button.js";
|
|
9
|
+
import W from "../../ui/layout/flex-view.js";
|
|
10
|
+
import X from "../../ui/loader/app-loader/app-loader.js";
|
|
11
|
+
import z from "../../ui/text/text.js";
|
|
12
|
+
import { useGetChapterDetails as G } from "../api/chapter.js";
|
|
13
|
+
import V from "./block-sections/block-sections.js";
|
|
14
|
+
import q from "./chapter-banner/chapter-banner.js";
|
|
15
|
+
import { ContentWrapper as M, BackButtonContainer as K, BackButtonWrapper as Q, LoaderWrapper as Y } from "./chapter-details-styled.js";
|
|
16
|
+
const Z = L((u) => {
|
|
20
17
|
const {
|
|
21
|
-
userChapterId:
|
|
22
|
-
studentId:
|
|
23
|
-
userType:
|
|
24
|
-
onBlockSkipUnskip:
|
|
25
|
-
onNodeAttempt:
|
|
26
|
-
onNodeAssignAsHomework:
|
|
27
|
-
onNodeMarkAsDone:
|
|
28
|
-
onNodeReattempt:
|
|
29
|
-
onNodeReview:
|
|
30
|
-
onNodeView:
|
|
31
|
-
onExit:
|
|
32
|
-
onNodeUnassign:
|
|
33
|
-
onNodeUnlock:
|
|
34
|
-
onNodeSkipUnSkip:
|
|
35
|
-
startChapterPageJourney:
|
|
36
|
-
onBlockReset:
|
|
37
|
-
chapterPageRef:
|
|
38
|
-
bannerRef:
|
|
39
|
-
coreBlocksRef:
|
|
40
|
-
canStartJourney:
|
|
41
|
-
canStartChallengeArenaJourney:
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
} = S, { isJourneyActive: g } = Z(), {
|
|
45
|
-
get: k,
|
|
18
|
+
userChapterId: a,
|
|
19
|
+
studentId: i,
|
|
20
|
+
userType: r,
|
|
21
|
+
onBlockSkipUnskip: k,
|
|
22
|
+
onNodeAttempt: C,
|
|
23
|
+
onNodeAssignAsHomework: y,
|
|
24
|
+
onNodeMarkAsDone: A,
|
|
25
|
+
onNodeReattempt: B,
|
|
26
|
+
onNodeReview: S,
|
|
27
|
+
onNodeView: $,
|
|
28
|
+
onExit: N,
|
|
29
|
+
onNodeUnassign: x,
|
|
30
|
+
onNodeUnlock: R,
|
|
31
|
+
onNodeSkipUnSkip: w,
|
|
32
|
+
startChapterPageJourney: s,
|
|
33
|
+
onBlockReset: I,
|
|
34
|
+
chapterPageRef: b,
|
|
35
|
+
bannerRef: J,
|
|
36
|
+
coreBlocksRef: _,
|
|
37
|
+
canStartJourney: l,
|
|
38
|
+
canStartChallengeArenaJourney: h
|
|
39
|
+
} = u, { isJourneyActive: m } = H(), {
|
|
40
|
+
get: g,
|
|
46
41
|
data: e,
|
|
47
|
-
isProcessing:
|
|
48
|
-
isProcessingFailed:
|
|
49
|
-
isStale:
|
|
50
|
-
} =
|
|
51
|
-
|
|
52
|
-
}, [
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}, [
|
|
56
|
-
const { blockSectionRef:
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
startJourney: C
|
|
60
|
-
} = Y(), { blockSectionRef: N, startJourney: R } = Q(), D = h(
|
|
61
|
-
() => e && ie(e.blocks),
|
|
62
|
-
[e]
|
|
63
|
-
), d = h(
|
|
64
|
-
() => e && se(e.blocks),
|
|
65
|
-
[e]
|
|
66
|
-
), X = h(
|
|
67
|
-
() => c && d ? w : n ? N : void 0,
|
|
68
|
-
[
|
|
69
|
-
c,
|
|
70
|
-
n,
|
|
71
|
-
d,
|
|
72
|
-
w,
|
|
73
|
-
N
|
|
74
|
-
]
|
|
75
|
-
);
|
|
76
|
-
return f(() => {
|
|
77
|
-
e && !g && (r && m && m({
|
|
78
|
-
chapterDetails: e,
|
|
79
|
-
userChapterId: s,
|
|
80
|
-
studentId: l,
|
|
81
|
-
userType: t
|
|
82
|
-
}), !r && u && B({
|
|
83
|
-
chapterDetails: e,
|
|
84
|
-
userType: t
|
|
85
|
-
}), !r && c && d && C({
|
|
42
|
+
isProcessing: o,
|
|
43
|
+
isProcessingFailed: v,
|
|
44
|
+
isStale: d
|
|
45
|
+
} = G(), n = P(() => {
|
|
46
|
+
g(a, void 0, { studentId: i });
|
|
47
|
+
}, [g, a, i]);
|
|
48
|
+
p(() => {
|
|
49
|
+
n();
|
|
50
|
+
}, [n]);
|
|
51
|
+
const { blockSectionRef: D, startJourney: f } = j();
|
|
52
|
+
return p(() => {
|
|
53
|
+
e && l && !m && s && s({
|
|
86
54
|
chapterDetails: e,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
55
|
+
userChapterId: a,
|
|
56
|
+
studentId: i,
|
|
57
|
+
userType: r
|
|
58
|
+
}), e && !l && h && !m && f({
|
|
90
59
|
chapterDetails: e,
|
|
91
|
-
userType:
|
|
92
|
-
})
|
|
60
|
+
userType: r
|
|
61
|
+
});
|
|
93
62
|
}, [
|
|
94
|
-
|
|
95
|
-
|
|
63
|
+
h,
|
|
64
|
+
l,
|
|
96
65
|
e,
|
|
97
|
-
g,
|
|
98
|
-
B,
|
|
99
66
|
m,
|
|
100
|
-
|
|
101
|
-
C,
|
|
102
|
-
l,
|
|
67
|
+
f,
|
|
103
68
|
s,
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
n
|
|
109
|
-
]),
|
|
110
|
-
!
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
/* @__PURE__ */ o(
|
|
114
|
-
ee,
|
|
69
|
+
i,
|
|
70
|
+
a,
|
|
71
|
+
r
|
|
72
|
+
]), p(() => {
|
|
73
|
+
!o && d && n();
|
|
74
|
+
}, [n, o, d]), v ? /* @__PURE__ */ c(W, { $flexGapX: 1.5, $height: "100vh", $justifyContent: "center", $alignItems: "center", children: [
|
|
75
|
+
/* @__PURE__ */ t(z, { $renderAs: "h6", children: "Oops! Something went wrong. Please try again later." }),
|
|
76
|
+
/* @__PURE__ */ t(
|
|
77
|
+
F,
|
|
115
78
|
{
|
|
116
79
|
widthX: 14,
|
|
117
80
|
size: "small",
|
|
118
81
|
shape: "square",
|
|
119
82
|
renderAs: "primary",
|
|
120
83
|
label: "Try again",
|
|
121
|
-
onClick:
|
|
84
|
+
onClick: n
|
|
122
85
|
}
|
|
123
86
|
)
|
|
124
|
-
] }) : !e &&
|
|
125
|
-
|
|
87
|
+
] }) : !e && o ? /* @__PURE__ */ t(X, { height: "100vh" }) : /* @__PURE__ */ c(
|
|
88
|
+
M,
|
|
126
89
|
{
|
|
127
|
-
ref:
|
|
90
|
+
ref: b,
|
|
128
91
|
$widthX: 50,
|
|
129
|
-
$disablePointerEvents:
|
|
92
|
+
$disablePointerEvents: o,
|
|
130
93
|
$justifyContent: "center",
|
|
131
94
|
$alignItems: "center",
|
|
132
95
|
$height: "max-content",
|
|
133
96
|
children: [
|
|
134
|
-
|
|
135
|
-
|
|
97
|
+
r === "TEACHER" && /* @__PURE__ */ t(K, { $height: "100%", className: "goal-widget-chapter-item", children: /* @__PURE__ */ t(Q, { children: /* @__PURE__ */ t(
|
|
98
|
+
O,
|
|
136
99
|
{
|
|
137
|
-
Icon:
|
|
100
|
+
Icon: U,
|
|
138
101
|
renderAs: "secondary-gray",
|
|
139
102
|
analyticsLabel: "chapter_page_exit",
|
|
140
103
|
size: "xsmall",
|
|
141
|
-
onClick:
|
|
104
|
+
onClick: N
|
|
142
105
|
}
|
|
143
106
|
) }) }),
|
|
144
|
-
|
|
145
|
-
e && /* @__PURE__ */
|
|
146
|
-
/* @__PURE__ */
|
|
147
|
-
|
|
107
|
+
o && /* @__PURE__ */ t(Y, { children: /* @__PURE__ */ t("img", { src: T.LOADER_1, alt: "loader" }) }),
|
|
108
|
+
e && /* @__PURE__ */ c(E, { children: [
|
|
109
|
+
/* @__PURE__ */ t(
|
|
110
|
+
q,
|
|
148
111
|
{
|
|
149
112
|
title: e.name,
|
|
150
113
|
imageHue: e.image_hue,
|
|
151
114
|
imageUrl: e.image_url,
|
|
152
115
|
progressStats: e == null ? void 0 : e.progress_stat,
|
|
153
|
-
bannerRef:
|
|
116
|
+
bannerRef: J
|
|
154
117
|
}
|
|
155
118
|
),
|
|
156
|
-
/* @__PURE__ */
|
|
157
|
-
|
|
119
|
+
/* @__PURE__ */ t(
|
|
120
|
+
V,
|
|
158
121
|
{
|
|
159
122
|
imageHue: e.image_hue,
|
|
160
|
-
userType:
|
|
123
|
+
userType: r,
|
|
161
124
|
blocks: e.blocks,
|
|
162
|
-
onBlockSkipUnskip:
|
|
163
|
-
onNodeAttempt:
|
|
164
|
-
onNodeAssignAsHomework:
|
|
165
|
-
onNodeMarkAsDone:
|
|
166
|
-
onNodeReattempt:
|
|
167
|
-
onNodeReview:
|
|
168
|
-
onNodeView:
|
|
169
|
-
coreBlocksRef:
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
onNodeSkipUnSkip: H,
|
|
176
|
-
onBlockReset: L
|
|
125
|
+
onBlockSkipUnskip: k,
|
|
126
|
+
onNodeAttempt: C,
|
|
127
|
+
onNodeAssignAsHomework: y,
|
|
128
|
+
onNodeMarkAsDone: A,
|
|
129
|
+
onNodeReattempt: B,
|
|
130
|
+
onNodeReview: S,
|
|
131
|
+
onNodeView: $,
|
|
132
|
+
coreBlocksRef: _,
|
|
133
|
+
blockSectionRef: D,
|
|
134
|
+
onNodeUnassign: x,
|
|
135
|
+
onNodeUnlock: R,
|
|
136
|
+
onNodeSkipUnSkip: w,
|
|
137
|
+
onBlockReset: I
|
|
177
138
|
}
|
|
178
139
|
)
|
|
179
140
|
] })
|
|
180
141
|
]
|
|
181
142
|
}
|
|
182
143
|
);
|
|
183
|
-
}),
|
|
144
|
+
}), fe = Z;
|
|
184
145
|
export {
|
|
185
|
-
|
|
146
|
+
fe as default
|
|
186
147
|
};
|
|
187
148
|
//# sourceMappingURL=chapter-details.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chapter-details.js","sources":["../../../../src/features/chapters-v2/chapter-details/chapter-details.tsx"],"sourcesContent":["import type { IChapterDetails } from './chapter-details-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect, useMemo } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport Back2Icon from '../../../assets/line-icons/icons/back2';\nimport { useChallengeArenaJourney } from '../../journey/hooks/use-chapter-page-journey/use-challenge-arena-journey';\nimport { useDownloadBlockJourney } from '../../journey/hooks/use-chapter-page-journey/use-download-block-journey';\nimport { useDownloadNodeJourney } from '../../journey/hooks/use-chapter-page-journey/use-download-node-journey';\nimport { useJourney } from '../../journey/use-journey/use-journey';\nimport Button from '../../ui/buttons/button/button';\nimport IconButton from '../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../ui/layout/flex-view';\nimport AppLoader from '../../ui/loader/app-loader/app-loader';\nimport Text from '../../ui/text/text';\nimport { useGetChapterDetails } from '../api/chapter';\nimport { getHasDownloadBlock, getHasNonDownloadBlockWithPdfNode } from '../utils';\nimport BlockSections from './block-sections/block-sections';\nimport ChapterBanner from './chapter-banner/chapter-banner';\nimport * as Styled from './chapter-details-styled';\n\nconst ChapterDetails: FC<IChapterDetails> = memo(props => {\n const {\n userChapterId,\n studentId,\n userType,\n onBlockSkipUnskip,\n onNodeAttempt,\n onNodeAssignAsHomework,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onExit,\n onNodeUnassign,\n onNodeUnlock,\n onNodeSkipUnSkip,\n startChapterPageJourney,\n onBlockReset,\n chapterPageRef,\n bannerRef,\n coreBlocksRef,\n canStartJourney,\n canStartChallengeArenaJourney,\n canStartDownloadNodeJourney,\n canStartDownloadBlockJourney,\n } = props;\n\n const { isJourneyActive } = useJourney();\n const {\n get: getChapterDetails,\n data: chapterDetails,\n isProcessing,\n isProcessingFailed,\n isStale,\n } = useGetChapterDetails();\n\n const fetchChapterDetails = useCallback(() => {\n getChapterDetails(userChapterId, undefined, { studentId });\n }, [getChapterDetails, userChapterId, studentId]);\n\n useEffect(() => {\n fetchChapterDetails();\n }, [fetchChapterDetails]);\n\n const { blockSectionRef: challengeBlockRef, startJourney: startChallengeArenaJourney } =\n useChallengeArenaJourney();\n\n const {\n blockSectionRef: downloadBlockRef,\n downloadCoreBlockRef,\n startJourney: startDownloadNodeJourney,\n } = useDownloadNodeJourney();\n\n const { blockSectionRef: downloadBlockSectionRef, startJourney: startDownloadBlockJourney } =\n useDownloadBlockJourney();\n\n const hasDownloadBlock = useMemo(\n () => chapterDetails && getHasDownloadBlock(chapterDetails.blocks),\n [chapterDetails],\n );\n const hasNonDownloadBlockWithPdfNode = useMemo(\n () => chapterDetails && getHasNonDownloadBlockWithPdfNode(chapterDetails.blocks),\n [chapterDetails],\n );\n\n const activeDownloadBlockRef = useMemo(\n () =>\n canStartDownloadNodeJourney && hasNonDownloadBlockWithPdfNode\n ? downloadBlockRef\n : canStartDownloadBlockJourney\n ? downloadBlockSectionRef\n : undefined,\n [\n canStartDownloadNodeJourney,\n canStartDownloadBlockJourney,\n hasNonDownloadBlockWithPdfNode,\n downloadBlockRef,\n downloadBlockSectionRef,\n ],\n );\n\n useEffect(() => {\n if (chapterDetails && !isJourneyActive) {\n if (canStartJourney && startChapterPageJourney) {\n startChapterPageJourney({\n chapterDetails: chapterDetails,\n userChapterId,\n studentId,\n userType,\n });\n }\n\n if (!canStartJourney && canStartChallengeArenaJourney) {\n startChallengeArenaJourney({\n chapterDetails,\n userType,\n });\n }\n\n if (!canStartJourney && canStartDownloadNodeJourney && hasNonDownloadBlockWithPdfNode) {\n startDownloadNodeJourney({\n chapterDetails,\n userType,\n canStartDownloadBlockJourney,\n });\n }\n\n if (!canStartJourney && canStartDownloadBlockJourney && hasDownloadBlock) {\n startDownloadBlockJourney({\n chapterDetails,\n userType,\n });\n }\n }\n }, [\n canStartChallengeArenaJourney,\n canStartJourney,\n chapterDetails,\n isJourneyActive,\n startChallengeArenaJourney,\n startChapterPageJourney,\n startDownloadBlockJourney,\n startDownloadNodeJourney,\n studentId,\n userChapterId,\n userType,\n hasNonDownloadBlockWithPdfNode,\n hasDownloadBlock,\n canStartDownloadNodeJourney,\n canStartDownloadBlockJourney,\n ]);\n\n useEffect(() => {\n if (!isProcessing && isStale) {\n fetchChapterDetails();\n }\n }, [fetchChapterDetails, isProcessing, isStale]);\n\n if (isProcessingFailed) {\n return (\n <FlexView $flexGapX={1.5} $height=\"100vh\" $justifyContent=\"center\" $alignItems=\"center\">\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={fetchChapterDetails}\n />\n </FlexView>\n );\n }\n\n if (!chapterDetails && isProcessing) {\n return <AppLoader height=\"100vh\" />;\n }\n\n return (\n <Styled.ContentWrapper\n ref={chapterPageRef}\n $widthX={50}\n $disablePointerEvents={isProcessing}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $height=\"max-content\"\n >\n {userType === 'TEACHER' && (\n <Styled.BackButtonContainer $height=\"100%\" className=\"goal-widget-chapter-item\">\n <Styled.BackButtonWrapper>\n <IconButton\n Icon={Back2Icon}\n renderAs=\"secondary-gray\"\n analyticsLabel=\"chapter_page_exit\"\n size=\"xsmall\"\n onClick={onExit}\n />\n </Styled.BackButtonWrapper>\n </Styled.BackButtonContainer>\n )}\n\n {isProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loader\" />\n </Styled.LoaderWrapper>\n )}\n\n {chapterDetails && (\n <>\n <ChapterBanner\n title={chapterDetails.name}\n imageHue={chapterDetails.image_hue}\n imageUrl={chapterDetails.image_url}\n progressStats={chapterDetails?.progress_stat}\n bannerRef={bannerRef}\n />\n <BlockSections\n imageHue={chapterDetails.image_hue}\n userType={userType}\n blocks={chapterDetails.blocks}\n onBlockSkipUnskip={onBlockSkipUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n coreBlocksRef={coreBlocksRef}\n challengeBlockRef={challengeBlockRef}\n downloadCoreBlockRef={downloadCoreBlockRef}\n downloadBlockRef={activeDownloadBlockRef}\n onNodeUnassign={onNodeUnassign}\n onNodeUnlock={onNodeUnlock}\n onNodeSkipUnSkip={onNodeSkipUnSkip}\n onBlockReset={onBlockReset}\n />\n </>\n )}\n </Styled.ContentWrapper>\n );\n});\n\nexport default ChapterDetails;\n"],"names":["ChapterDetails","memo","props","userChapterId","studentId","userType","onBlockSkipUnskip","onNodeAttempt","onNodeAssignAsHomework","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onExit","onNodeUnassign","onNodeUnlock","onNodeSkipUnSkip","startChapterPageJourney","onBlockReset","chapterPageRef","bannerRef","coreBlocksRef","canStartJourney","canStartChallengeArenaJourney","canStartDownloadNodeJourney","canStartDownloadBlockJourney","isJourneyActive","useJourney","getChapterDetails","chapterDetails","isProcessing","isProcessingFailed","isStale","useGetChapterDetails","fetchChapterDetails","useCallback","useEffect","challengeBlockRef","startChallengeArenaJourney","useChallengeArenaJourney","downloadBlockRef","downloadCoreBlockRef","startDownloadNodeJourney","useDownloadNodeJourney","downloadBlockSectionRef","startDownloadBlockJourney","useDownloadBlockJourney","hasDownloadBlock","useMemo","getHasDownloadBlock","hasNonDownloadBlockWithPdfNode","getHasNonDownloadBlockWithPdfNode","activeDownloadBlockRef","jsxs","FlexView","jsx","Text","Button","AppLoader","Styled.ContentWrapper","Styled.BackButtonContainer","Styled.BackButtonWrapper","IconButton","Back2Icon","Styled.LoaderWrapper","ILLUSTRATIONS","Fragment","ChapterBanner","BlockSections","ChapterDetails$1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chapter-details.js","sources":["../../../../src/features/chapters-v2/chapter-details/chapter-details.tsx"],"sourcesContent":["import type { IChapterDetails } from './chapter-details-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport Back2Icon from '../../../assets/line-icons/icons/back2';\nimport { useChallengeArenaJourney } from '../../journey/hooks/use-chapter-page-journey/use-challenge-arena-journey';\nimport { useJourney } from '../../journey/use-journey/use-journey';\nimport Button from '../../ui/buttons/button/button';\nimport IconButton from '../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../ui/layout/flex-view';\nimport AppLoader from '../../ui/loader/app-loader/app-loader';\nimport Text from '../../ui/text/text';\nimport { useGetChapterDetails } from '../api/chapter';\nimport BlockSections from './block-sections/block-sections';\nimport ChapterBanner from './chapter-banner/chapter-banner';\nimport * as Styled from './chapter-details-styled';\n\nconst ChapterDetails: FC<IChapterDetails> = memo(props => {\n const {\n userChapterId,\n studentId,\n userType,\n onBlockSkipUnskip,\n onNodeAttempt,\n onNodeAssignAsHomework,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onExit,\n onNodeUnassign,\n onNodeUnlock,\n onNodeSkipUnSkip,\n startChapterPageJourney,\n onBlockReset,\n chapterPageRef,\n bannerRef,\n coreBlocksRef,\n canStartJourney,\n canStartChallengeArenaJourney,\n } = props;\n const { isJourneyActive } = useJourney();\n const {\n get: getChapterDetails,\n data: chapterDetails,\n isProcessing,\n isProcessingFailed,\n isStale,\n } = useGetChapterDetails();\n\n const fetchChapterDetails = useCallback(() => {\n getChapterDetails(userChapterId, undefined, { studentId });\n }, [getChapterDetails, userChapterId, studentId]);\n\n useEffect(() => {\n fetchChapterDetails();\n }, [fetchChapterDetails]);\n\n const { blockSectionRef, startJourney: startChallengeArenaJourney } = useChallengeArenaJourney();\n\n useEffect(() => {\n if (chapterDetails && canStartJourney && !isJourneyActive && startChapterPageJourney) {\n startChapterPageJourney({\n chapterDetails: chapterDetails,\n userChapterId,\n studentId,\n userType,\n });\n }\n\n if (chapterDetails && !canStartJourney && canStartChallengeArenaJourney && !isJourneyActive) {\n startChallengeArenaJourney({\n chapterDetails,\n userType,\n });\n }\n }, [\n canStartChallengeArenaJourney,\n canStartJourney,\n chapterDetails,\n isJourneyActive,\n startChallengeArenaJourney,\n startChapterPageJourney,\n studentId,\n userChapterId,\n userType,\n ]);\n\n useEffect(() => {\n if (!isProcessing && isStale) {\n fetchChapterDetails();\n }\n }, [fetchChapterDetails, isProcessing, isStale]);\n\n if (isProcessingFailed) {\n return (\n <FlexView $flexGapX={1.5} $height=\"100vh\" $justifyContent=\"center\" $alignItems=\"center\">\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={fetchChapterDetails}\n />\n </FlexView>\n );\n }\n\n if (!chapterDetails && isProcessing) {\n return <AppLoader height=\"100vh\" />;\n }\n\n return (\n <Styled.ContentWrapper\n ref={chapterPageRef}\n $widthX={50}\n $disablePointerEvents={isProcessing}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $height=\"max-content\"\n >\n {userType === 'TEACHER' && (\n <Styled.BackButtonContainer $height=\"100%\" className=\"goal-widget-chapter-item\">\n <Styled.BackButtonWrapper>\n <IconButton\n Icon={Back2Icon}\n renderAs=\"secondary-gray\"\n analyticsLabel=\"chapter_page_exit\"\n size=\"xsmall\"\n onClick={onExit}\n />\n </Styled.BackButtonWrapper>\n </Styled.BackButtonContainer>\n )}\n\n {isProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loader\" />\n </Styled.LoaderWrapper>\n )}\n\n {chapterDetails && (\n <>\n <ChapterBanner\n title={chapterDetails.name}\n imageHue={chapterDetails.image_hue}\n imageUrl={chapterDetails.image_url}\n progressStats={chapterDetails?.progress_stat}\n bannerRef={bannerRef}\n />\n <BlockSections\n imageHue={chapterDetails.image_hue}\n userType={userType}\n blocks={chapterDetails.blocks}\n onBlockSkipUnskip={onBlockSkipUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n coreBlocksRef={coreBlocksRef}\n blockSectionRef={blockSectionRef}\n onNodeUnassign={onNodeUnassign}\n onNodeUnlock={onNodeUnlock}\n onNodeSkipUnSkip={onNodeSkipUnSkip}\n onBlockReset={onBlockReset}\n />\n </>\n )}\n </Styled.ContentWrapper>\n );\n});\n\nexport default ChapterDetails;\n"],"names":["ChapterDetails","memo","props","userChapterId","studentId","userType","onBlockSkipUnskip","onNodeAttempt","onNodeAssignAsHomework","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onExit","onNodeUnassign","onNodeUnlock","onNodeSkipUnSkip","startChapterPageJourney","onBlockReset","chapterPageRef","bannerRef","coreBlocksRef","canStartJourney","canStartChallengeArenaJourney","isJourneyActive","useJourney","getChapterDetails","chapterDetails","isProcessing","isProcessingFailed","isStale","useGetChapterDetails","fetchChapterDetails","useCallback","useEffect","blockSectionRef","startChallengeArenaJourney","useChallengeArenaJourney","jsxs","FlexView","jsx","Text","Button","AppLoader","Styled.ContentWrapper","Styled.BackButtonContainer","Styled.BackButtonWrapper","IconButton","Back2Icon","Styled.LoaderWrapper","ILLUSTRATIONS","Fragment","ChapterBanner","BlockSections","ChapterDetails$1"],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ILLUSTRATIONS as e } from "../../../assets/illustrations/illustrations.js";
|
|
2
|
-
const
|
|
2
|
+
const A = (E) => {
|
|
3
3
|
if (!E) return 0;
|
|
4
|
-
const { mandatory:
|
|
5
|
-
return
|
|
6
|
-
},
|
|
4
|
+
const { mandatory: c } = E, { completed: S, total: _ } = c;
|
|
5
|
+
return _ === 0 ? 0 : Math.floor(S / _ * 100);
|
|
6
|
+
}, r = (E) => {
|
|
7
7
|
switch (E) {
|
|
8
8
|
case "LEVEL2":
|
|
9
9
|
case "LEVEL3":
|
|
@@ -52,24 +52,20 @@ const S = (E) => {
|
|
|
52
52
|
default:
|
|
53
53
|
return e.NODE_PROJECT_BG;
|
|
54
54
|
}
|
|
55
|
-
},
|
|
55
|
+
}, t = ({
|
|
56
56
|
isSkipped: E,
|
|
57
|
-
sheetsLength:
|
|
58
|
-
isGoalBlock:
|
|
59
|
-
lessonIdx:
|
|
60
|
-
isSatMockTestBlock:
|
|
57
|
+
sheetsLength: c,
|
|
58
|
+
isGoalBlock: S,
|
|
59
|
+
lessonIdx: _,
|
|
60
|
+
isSatMockTestBlock: T
|
|
61
61
|
}) => {
|
|
62
|
-
if (!
|
|
63
|
-
if (!(E || !
|
|
64
|
-
return `${
|
|
65
|
-
}
|
|
66
|
-
(_) => _.block_type !== "DOWNLOADS" && _.sheets.some((t) => t.node_type === "PDF")
|
|
67
|
-
), N = (E) => E.some((_) => _.block_type === "DOWNLOADS");
|
|
62
|
+
if (!S && !T) return `(${c})`;
|
|
63
|
+
if (!(E || !_))
|
|
64
|
+
return `${_}`;
|
|
65
|
+
};
|
|
68
66
|
export {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
A as getNodeTypeBasedBgImage,
|
|
73
|
-
r as getSheetNLessonCount
|
|
67
|
+
A as getChapterCompletionPercentage,
|
|
68
|
+
r as getNodeTypeBasedBgImage,
|
|
69
|
+
t as getSheetNLessonCount
|
|
74
70
|
};
|
|
75
71
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/features/chapters-v2/utils/index.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/features/chapters-v2/utils/index.ts"],"sourcesContent":["import type { IChapterProgressStats } from '../chapter-details/chapter-details-types';\nimport type { INodeDataProps } from '../comps/node-card/node-card-types';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\n\n// This function calculates the completion percentage of a chapter based on progress stats.\n// If no progress stats are provided, it returns 0.\n// It uses the `mandatory` field from the progress stats to determine the completed and total items.\n// It returns an integer representing the percentage of completion, rounded down to the nearest whole number.\nconst getChapterCompletionPercentage = (progressStats: IChapterProgressStats | null) => {\n if (!progressStats) return 0;\n\n const { mandatory } = progressStats;\n const { completed, total } = mandatory;\n\n if (total === 0) {\n return 0;\n }\n\n const percentage = Math.floor((completed / total) * 100);\n\n return percentage;\n};\n\nconst getNodeTypeBasedBgImage = (nodeType: INodeDataProps['node_type']) => {\n switch (nodeType) {\n case 'LEVEL2':\n case 'LEVEL3':\n case 'HIDDEN_BASIC':\n return ILLUSTRATIONS.NODE_TEST_PREP_BG;\n case 'LEARNING':\n case 'SAT_MATH_LEARNING':\n case 'SAT_ENGLISH_LEARNING':\n return ILLUSTRATIONS.NODE_LEARN_BG;\n case 'RECAP':\n case 'REMEDIAL':\n case 'REVISION':\n case 'PPT_BASIC':\n case 'SAT_MATH_RECAP':\n case 'SAT_ENGLISH_RECAP':\n return ILLUSTRATIONS.NODE_RECAP_BG;\n\n case 'DYNAMIC':\n case 'ASSESSMENT':\n case 'CHAPTER_ASSESSMENT':\n case 'DIAGNOSTIC':\n case 'TURING_ASSESSMENT':\n return ILLUSTRATIONS.NODE_CUSTOM_TEST_BG;\n\n case 'PRACTICE':\n case 'EXTRA_PRACTICE':\n case 'TARGET_PRACTICE':\n case 'MASTERY':\n case 'TURING_PRACTICE':\n case 'SAT_MATH_ASSESSMENT':\n case 'SAT_ENGLISH_ASSESSMENT':\n return ILLUSTRATIONS.NODE_PRACTICE_BG;\n\n case 'PUZZLE':\n case 'PUZZLE_EASY':\n case 'PUZZLE_MEDIUM':\n case 'PUZZLE_HARD':\n return ILLUSTRATIONS.NODE_PUZZLE_BG;\n\n case 'TURING_SUBJECTIVE':\n return ILLUSTRATIONS.NODE_SUBJECTIVE_BG;\n\n case 'TURING_BASIC':\n case 'PYTHON_BASIC':\n case 'PYTHON_VISUAL':\n return ILLUSTRATIONS.NODE_ACTIVITY_BG;\n\n case 'VIDEO':\n return ILLUSTRATIONS.NODE_VIDEO_BG;\n\n case 'PDF':\n return ILLUSTRATIONS.NODE_DOWNLOAD_BG;\n\n default:\n return ILLUSTRATIONS.NODE_PROJECT_BG;\n }\n};\n\ninterface IGetSheetNLessonCountParams {\n isSkipped: boolean;\n sheetsLength: number;\n isGoalBlock?: boolean;\n lessonIdx?: number;\n isSatMockTestBlock?: boolean;\n}\n\nconst getSheetNLessonCount = ({\n isSkipped,\n sheetsLength,\n isGoalBlock,\n lessonIdx,\n isSatMockTestBlock,\n}: IGetSheetNLessonCountParams) => {\n if (!isGoalBlock && !isSatMockTestBlock) return `(${sheetsLength})`;\n\n if (isSkipped || !lessonIdx) return undefined;\n\n return `${lessonIdx}`;\n};\n\nexport { getChapterCompletionPercentage, getNodeTypeBasedBgImage, getSheetNLessonCount };\n"],"names":["getChapterCompletionPercentage","progressStats","mandatory","completed","total","getNodeTypeBasedBgImage","nodeType","ILLUSTRATIONS","getSheetNLessonCount","isSkipped","sheetsLength","isGoalBlock","lessonIdx","isSatMockTestBlock"],"mappings":";AASM,MAAAA,IAAiC,CAACC,MAAgD;AAClF,MAAA,CAACA,EAAsB,QAAA;AAErB,QAAA,EAAE,WAAAC,EAAc,IAAAD,GAChB,EAAE,WAAAE,GAAW,OAAAC,EAAU,IAAAF;AAE7B,SAAIE,MAAU,IACL,IAGU,KAAK,MAAOD,IAAYC,IAAS,GAAG;AAGzD,GAEMC,IAA0B,CAACC,MAA0C;AACzE,UAAQA,GAAU;AAAA,IAChB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOC,EAAc;AAAA,IACvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IACvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB;AACE,aAAOA,EAAc;AAAA,EACzB;AACF,GAUMC,IAAuB,CAAC;AAAA,EAC5B,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,oBAAAC;AACF,MAAmC;AACjC,MAAI,CAACF,KAAe,CAACE,EAAoB,QAAO,IAAIH,CAAY;AAE5D,MAAA,EAAAD,KAAa,CAACG;AAElB,WAAO,GAAGA,CAAS;AACrB;"}
|
package/dist/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { createGetAPI as
|
|
2
|
-
import { BASE_URL as
|
|
3
|
-
const { useGet:
|
|
4
|
-
getURL: (
|
|
1
|
+
import { createGetAPI as r } from "@cuemath/rest-api";
|
|
2
|
+
import { BASE_URL as i } from "./constants.js";
|
|
3
|
+
const { useGet: n, invalidate: a } = r({
|
|
4
|
+
getURL: (c, { user_id: e, country_code: t, grade: o }) => `${i}/circle-home/?intelenrollment_id=${e}&country_code=${t}&grade=${o}`
|
|
5
5
|
});
|
|
6
6
|
export {
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
a as invalidateCircleHomeAPI,
|
|
8
|
+
n as useGetCircleHomeAPI
|
|
9
9
|
};
|
|
10
10
|
//# sourceMappingURL=get-circle-home-api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-circle-home-api.js","sources":["../../../../../../src/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.ts"],"sourcesContent":["import type {\n IGetCircleHomeResponseModel,\n IGetCircleHomePayloadModel,\n} from './get-circle-home-api-types';\n\nimport { createGetAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL } from './constants';\n\nexport const { useGet: useGetCircleHomeAPI, invalidate: invalidateCircleHomeAPI } = createGetAPI<\n IGetCircleHomeResponseModel,\n IGetCircleHomePayloadModel\n>({\n getURL: (_, { user_id, grade }) =>\n `${BASE_URL}/circle-home/?intelenrollment_id=${user_id}&grade=${grade}`,\n});\n"],"names":["useGetCircleHomeAPI","invalidateCircleHomeAPI","createGetAPI","_","user_id","grade","BASE_URL"],"mappings":";;AASO,MAAM,EAAE,QAAQA,GAAqB,YAAYC,EAAA,IAA4BC,EAGlF;AAAA,EACA,QAAQ,CAACC,GAAG,EAAE,SAAAC,GAAS,OAAAC,
|
|
1
|
+
{"version":3,"file":"get-circle-home-api.js","sources":["../../../../../../src/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.ts"],"sourcesContent":["import type {\n IGetCircleHomeResponseModel,\n IGetCircleHomePayloadModel,\n} from './get-circle-home-api-types';\n\nimport { createGetAPI } from '@cuemath/rest-api';\n\nimport { BASE_URL } from './constants';\n\nexport const { useGet: useGetCircleHomeAPI, invalidate: invalidateCircleHomeAPI } = createGetAPI<\n IGetCircleHomeResponseModel,\n IGetCircleHomePayloadModel\n>({\n getURL: (_, { user_id, country_code, grade }) =>\n `${BASE_URL}/circle-home/?intelenrollment_id=${user_id}&country_code=${country_code}&grade=${grade}`,\n});\n"],"names":["useGetCircleHomeAPI","invalidateCircleHomeAPI","createGetAPI","_","user_id","country_code","grade","BASE_URL"],"mappings":";;AASO,MAAM,EAAE,QAAQA,GAAqB,YAAYC,EAAA,IAA4BC,EAGlF;AAAA,EACA,QAAQ,CAACC,GAAG,EAAE,SAAAC,GAAS,cAAAC,GAAc,OAAAC,EAAA,MACnC,GAAGC,CAAQ,oCAAoCH,CAAO,iBAAiBC,CAAY,UAAUC,CAAK;AACtG,CAAC;"}
|