@cuemath/leap 3.2.21-beta-0.1 → 3.2.21-j1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/features/analytics-events/whitelist-events.js +17 -15
- package/dist/features/analytics-events/whitelist-events.js.map +1 -1
- package/dist/features/auth/comps/pill-button/pill-button.js +41 -38
- package/dist/features/auth/comps/pill-button/pill-button.js.map +1 -1
- package/dist/features/auth/comps/resend-otp/resend-otp.js +18 -14
- package/dist/features/auth/comps/resend-otp/resend-otp.js.map +1 -1
- package/dist/features/auth/comps/selectable-info-card/selectable-info-card.js +32 -26
- package/dist/features/auth/comps/selectable-info-card/selectable-info-card.js.map +1 -1
- package/dist/features/auth/pla-signup/pla-analytics-events.js +22 -0
- package/dist/features/auth/pla-signup/pla-analytics-events.js.map +1 -0
- package/dist/features/auth/pla-signup/signup-options/signup-options.js +42 -35
- package/dist/features/auth/pla-signup/signup-options/signup-options.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js +43 -43
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-utils.js +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-utils.js.map +1 -1
- package/dist/index.d.ts +21 -6
- package/dist/index.js +68 -68
- package/dist/node_modules/decode-uri-component/index.js.map +1 -0
- package/dist/node_modules/query-string/base.js +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/native.js +7 -0
- package/dist/node_modules/uuid/dist/esm-browser/native.js.map +1 -0
- package/dist/node_modules/uuid/dist/esm-browser/rng.js +3 -2
- package/dist/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js +6 -10
- package/dist/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
- package/dist/node_modules/uuid/dist/esm-browser/v4.js +12 -9
- package/dist/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
- package/package.json +1 -1
- package/dist/node_modules/query-string/node_modules/decode-uri-component/index.js.map +0 -1
- package/dist/node_modules/uuid/dist/esm-browser/regex.js +0 -5
- package/dist/node_modules/uuid/dist/esm-browser/regex.js.map +0 -1
- package/dist/node_modules/uuid/dist/esm-browser/validate.js +0 -8
- package/dist/node_modules/uuid/dist/esm-browser/validate.js.map +0 -1
- /package/dist/node_modules/{query-string/node_modules/decode-uri-component → decode-uri-component}/index.js +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"signup-options.js","sources":["../../../../../src/features/auth/pla-signup/signup-options/signup-options.tsx"],"sourcesContent":["import type { ISignupOptionsProps } from './signup-options-types';\n\nimport { memo, type FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport AppleIcon from '../../../../assets/line-icons/icons/apple-icon-white';\nimport GoogleIcon from '../../../../assets/line-icons/icons/google-icon';\nimport Button from '../../../ui/buttons/button/button';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport { EDeviceType } from '../../../ui/theme/constants';\n\nconst SignupOptions: FC<ISignupOptionsProps> = ({\n onEmailSignup,\n onAppleSignup,\n onGoogleSignup,\n loadingProvider,\n onGoToLogin,\n title,\n}) => {\n const { device } = useTheme();\n const isCompact = device <= EDeviceType.TABLET;\n const isLoadingGoogle = loadingProvider === 'google';\n const isLoadingApple = loadingProvider === 'apple';\n\n return (\n <FlexView $alignItems=\"flex-start\">\n <Text $renderAs=\"ah3-bold\" $renderOnMobileAs=\"ah4-bold\" $color=\"WHITE\" $whiteSpace=\"pre\">\n {title}\n </Text>\n <Separator heightX={isCompact ? 1.5 : 2.5} />\n <FlexView\n $flexGapX={1}\n $flex={1}\n $justifyContent=\"center\"\n $alignItems=\"flex-start\"\n $width=\"100%\"\n >\n <Button\n renderAs=\"black-dark\"\n Icon={GoogleIcon}\n width={isCompact ? '100%' : 320}\n label=\"Signup with Google\"\n onClick={onGoogleSignup}\n size=\"small\"\n busy={isLoadingGoogle}\n disabled={isLoadingGoogle}\n />\n <Button\n renderAs=\"black-dark\"\n size=\"small\"\n width={isCompact ? '100%' : 320}\n Icon={AppleIcon}\n label=\"Signup with Apple\"\n onClick={onAppleSignup}\n busy={isLoadingApple}\n disabled={isLoadingApple}\n />\n <Button\n renderAs=\"black-dark\"\n size=\"small\"\n width={isCompact ? '100%' : 320}\n label=\"Continue with Email\"\n onClick={onEmailSignup}\n />\n </FlexView>\n <Separator heightX={1.5} />\n <FlexView $flexDirection=\"row\" $alignItems=\"center\">\n <Text $renderAs=\"ub3\" $color=\"WHITE\">\n Already have an account?\n </Text>\n \n <TextButton size=\"small\" label=\"Log In\" color=\"WHITE\" onClick={onGoToLogin} />\n </FlexView>\n </FlexView>\n );\n};\n\nexport default memo(SignupOptions);\n"],"names":["SignupOptions","onEmailSignup","onAppleSignup","onGoogleSignup","loadingProvider","onGoToLogin","title","device","useTheme","isCompact","EDeviceType","isLoadingGoogle","isLoadingApple","jsxs","FlexView","jsx","Text","Separator","Button","GoogleIcon","AppleIcon","TextButton","signupOptions","memo"],"mappings":"
|
1
|
+
{"version":3,"file":"signup-options.js","sources":["../../../../../src/features/auth/pla-signup/signup-options/signup-options.tsx"],"sourcesContent":["import type { ISignupOptionsProps } from './signup-options-types';\n\nimport { memo, type FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport AppleIcon from '../../../../assets/line-icons/icons/apple-icon-white';\nimport GoogleIcon from '../../../../assets/line-icons/icons/google-icon';\nimport Button from '../../../ui/buttons/button/button';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport { EDeviceType } from '../../../ui/theme/constants';\nimport { PLA_ANALYTICS_EVENTS } from '../pla-analytics-events';\n\nconst SignupOptions: FC<ISignupOptionsProps> = ({\n onEmailSignup,\n onAppleSignup,\n onGoogleSignup,\n loadingProvider,\n onGoToLogin,\n title,\n}) => {\n const { device } = useTheme();\n const isCompact = device <= EDeviceType.TABLET;\n const isLoadingGoogle = loadingProvider === 'google';\n const isLoadingApple = loadingProvider === 'apple';\n\n return (\n <FlexView $alignItems=\"flex-start\">\n <Text $renderAs=\"ah3-bold\" $renderOnMobileAs=\"ah4-bold\" $color=\"WHITE\" $whiteSpace=\"pre\">\n {title}\n </Text>\n <Separator heightX={isCompact ? 1.5 : 2.5} />\n <FlexView\n $flexGapX={1}\n $flex={1}\n $justifyContent=\"center\"\n $alignItems=\"flex-start\"\n $width=\"100%\"\n >\n <Button\n renderAs=\"black-dark\"\n Icon={GoogleIcon}\n width={isCompact ? '100%' : 320}\n label=\"Signup with Google\"\n onClick={onGoogleSignup}\n size=\"small\"\n busy={isLoadingGoogle}\n disabled={isLoadingGoogle}\n analyticsLabel={PLA_ANALYTICS_EVENTS.START_SIGNUP_CTA_CLICKED}\n analyticsProps={{ provider: 'google' }}\n />\n <Button\n renderAs=\"black-dark\"\n size=\"small\"\n width={isCompact ? '100%' : 320}\n Icon={AppleIcon}\n label=\"Signup with Apple\"\n onClick={onAppleSignup}\n busy={isLoadingApple}\n disabled={isLoadingApple}\n analyticsLabel={PLA_ANALYTICS_EVENTS.START_SIGNUP_CTA_CLICKED}\n analyticsProps={{ provider: 'apple' }}\n />\n <Button\n renderAs=\"black-dark\"\n size=\"small\"\n width={isCompact ? '100%' : 320}\n label=\"Continue with Email\"\n onClick={onEmailSignup}\n analyticsLabel={PLA_ANALYTICS_EVENTS.START_SIGNUP_CTA_CLICKED}\n analyticsProps={{ provider: 'email' }}\n />\n </FlexView>\n <Separator heightX={1.5} />\n <FlexView $flexDirection=\"row\" $alignItems=\"center\">\n <Text $renderAs=\"ub3\" $color=\"WHITE\">\n Already have an account?\n </Text>\n \n <TextButton size=\"small\" label=\"Log In\" color=\"WHITE\" onClick={onGoToLogin} />\n </FlexView>\n </FlexView>\n );\n};\n\nexport default memo(SignupOptions);\n"],"names":["SignupOptions","onEmailSignup","onAppleSignup","onGoogleSignup","loadingProvider","onGoToLogin","title","device","useTheme","isCompact","EDeviceType","isLoadingGoogle","isLoadingApple","jsxs","FlexView","jsx","Text","Separator","Button","GoogleIcon","PLA_ANALYTICS_EVENTS","AppleIcon","TextButton","signupOptions","memo"],"mappings":";;;;;;;;;;;;AAeA,MAAMA,IAAyC,CAAC;AAAA,EAC9C,eAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,OAAAC;AACF,MAAM;AACE,QAAA,EAAE,QAAAC,MAAWC,KACbC,IAAYF,KAAUG,EAAY,QAClCC,IAAkBP,MAAoB,UACtCQ,IAAiBR,MAAoB;AAGzC,SAAA,gBAAAS,EAACC,GAAS,EAAA,aAAY,cACpB,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAK,WAAU,YAAW,mBAAkB,YAAW,QAAO,SAAQ,aAAY,OAChF,UACHV,EAAA,CAAA;AAAA,IACC,gBAAAS,EAAAE,GAAA,EAAU,SAASR,IAAY,MAAM,KAAK;AAAA,IAC3C,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,WAAW;AAAA,QACX,OAAO;AAAA,QACP,iBAAgB;AAAA,QAChB,aAAY;AAAA,QACZ,QAAO;AAAA,QAEP,UAAA;AAAA,UAAA,gBAAAC;AAAA,YAACG;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,MAAMC;AAAA,cACN,OAAOV,IAAY,SAAS;AAAA,cAC5B,OAAM;AAAA,cACN,SAASN;AAAA,cACT,MAAK;AAAA,cACL,MAAMQ;AAAA,cACN,UAAUA;AAAA,cACV,gBAAgBS,EAAqB;AAAA,cACrC,gBAAgB,EAAE,UAAU,SAAS;AAAA,YAAA;AAAA,UACvC;AAAA,UACA,gBAAAL;AAAA,YAACG;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,MAAK;AAAA,cACL,OAAOT,IAAY,SAAS;AAAA,cAC5B,MAAMY;AAAAA,cACN,OAAM;AAAA,cACN,SAASnB;AAAA,cACT,MAAMU;AAAA,cACN,UAAUA;AAAA,cACV,gBAAgBQ,EAAqB;AAAA,cACrC,gBAAgB,EAAE,UAAU,QAAQ;AAAA,YAAA;AAAA,UACtC;AAAA,UACA,gBAAAL;AAAA,YAACG;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,MAAK;AAAA,cACL,OAAOT,IAAY,SAAS;AAAA,cAC5B,OAAM;AAAA,cACN,SAASR;AAAA,cACT,gBAAgBmB,EAAqB;AAAA,cACrC,gBAAgB,EAAE,UAAU,QAAQ;AAAA,YAAA;AAAA,UACtC;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;AAAA,IACA,gBAAAL,EAACE,GAAU,EAAA,SAAS,IAAK,CAAA;AAAA,IACxB,gBAAAJ,EAAAC,GAAA,EAAS,gBAAe,OAAM,aAAY,UACzC,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAK,EAAA,WAAU,OAAM,QAAO,SAAQ,UAErC,4BAAA;AAAA,MAAO;AAAA,MAEP,gBAAAD,EAACO,KAAW,MAAK,SAAQ,OAAM,UAAS,OAAM,SAAQ,SAASjB,EAAa,CAAA;AAAA,IAAA,GAC9E;AAAA,EACF,EAAA,CAAA;AAEJ,GAEekB,IAAAC,EAAKxB,CAAa;"}
|
@@ -1,53 +1,53 @@
|
|
1
|
-
import { jsxs as t, jsx as
|
2
|
-
import { useMemo as C, useCallback as
|
1
|
+
import { jsxs as t, jsx as r } from "react/jsx-runtime";
|
2
|
+
import { useMemo as C, useCallback as d } from "react";
|
3
3
|
import { useUIContext as D } from "../../../../ui/context/context.js";
|
4
|
-
import
|
4
|
+
import i from "../../../../ui/layout/flex-view.js";
|
5
5
|
import S from "../../../../ui/text/text.js";
|
6
6
|
import { RewardAccuracy as _ } from "../sheet-item/rewards-n-actions/reward-n-actions-styled.js";
|
7
7
|
import v from "../sheet-item/sheet-item-icon.js";
|
8
|
-
import { SheetItemContainer as O, VerticalLineWrapper as U, TopVerticalLine as
|
8
|
+
import { SheetItemContainer as O, VerticalLineWrapper as U, TopVerticalLine as B, SheetDetailsWrapper as j } from "../sheet-item/sheet-item-styled.js";
|
9
9
|
import { getUserNodeIdsToUnlockSAT as M, getSATSheetStatementStats as G } from "./sat-sheet-item-utils.js";
|
10
|
-
import {
|
10
|
+
import { getActiveSheet as V } from "./sat-sheet-utils.js";
|
11
11
|
import L from "./student-actions/student-actions.js";
|
12
12
|
import N from "./teacher-actions/teacher-actions.js";
|
13
13
|
const ee = ({
|
14
14
|
blockStatus: n,
|
15
|
-
satMaxScore:
|
15
|
+
satMaxScore: f,
|
16
16
|
satScore: A,
|
17
17
|
...T
|
18
18
|
}) => {
|
19
|
-
const { blockId:
|
20
|
-
user_block_id:
|
19
|
+
const { blockId: u, sheets: c, userType: I, onSATReview: a, onSATUnlock: m, onSATStartOrResume: l } = T, {
|
20
|
+
user_block_id: e,
|
21
21
|
can_review: h,
|
22
22
|
can_start: g,
|
23
23
|
can_resume: x,
|
24
24
|
order: y
|
25
|
-
} = V(
|
25
|
+
} = V(c) || {}, { onEvent: p } = D(), s = C(
|
26
26
|
() => ({
|
27
|
-
user_block_id:
|
28
|
-
block_id:
|
27
|
+
user_block_id: e,
|
28
|
+
block_id: u
|
29
29
|
}),
|
30
|
-
[
|
31
|
-
), w = !!((n === "COMPLETED" || n === "MASTERED") && h &&
|
32
|
-
if (typeof
|
30
|
+
[u, e]
|
31
|
+
), w = !!((n === "COMPLETED" || n === "MASTERED") && h && e), $ = d(() => {
|
32
|
+
if (typeof a != "function")
|
33
33
|
throw new Error("onSATReview must be a function");
|
34
|
-
if (!
|
34
|
+
if (!e)
|
35
35
|
throw new Error("userBlockId must be a string");
|
36
|
-
p("clicked",
|
37
|
-
}, [
|
38
|
-
if (typeof
|
36
|
+
p("clicked", s), a(e);
|
37
|
+
}, [s, a, p, e]), E = d(() => {
|
38
|
+
if (typeof m != "function")
|
39
39
|
throw new Error("onSATUnlock must be a function");
|
40
|
-
const
|
41
|
-
if (
|
40
|
+
const o = M(c);
|
41
|
+
if (o.length === 0)
|
42
42
|
throw new Error("User node IDs are missing");
|
43
|
-
|
44
|
-
}, [
|
45
|
-
if (typeof
|
43
|
+
m(o);
|
44
|
+
}, [m, c]), b = d(() => {
|
45
|
+
if (typeof l != "function")
|
46
46
|
throw new Error("onSATStartOrResume must be a function");
|
47
|
-
if (!
|
48
|
-
throw new Error("
|
49
|
-
|
50
|
-
}, [
|
47
|
+
if (!e)
|
48
|
+
throw new Error("userBlockId must be a string");
|
49
|
+
l(e);
|
50
|
+
}, [l, e]);
|
51
51
|
return /* @__PURE__ */ t(
|
52
52
|
O,
|
53
53
|
{
|
@@ -56,10 +56,10 @@ const ee = ({
|
|
56
56
|
$alignItems: "center",
|
57
57
|
$flexGapX: 1,
|
58
58
|
children: [
|
59
|
-
/* @__PURE__ */ t(
|
60
|
-
/* @__PURE__ */
|
59
|
+
/* @__PURE__ */ t(i, { $width: "70%", $flexGap: 8, $flexDirection: "row", children: [
|
60
|
+
/* @__PURE__ */ r(U, { children: /* @__PURE__ */ r(B, {}) }),
|
61
61
|
/* @__PURE__ */ t(
|
62
|
-
|
62
|
+
j,
|
63
63
|
{
|
64
64
|
$width: "100%",
|
65
65
|
$flexDirection: "row",
|
@@ -67,25 +67,25 @@ const ee = ({
|
|
67
67
|
$flexGap: 8,
|
68
68
|
$marginBottom: 12,
|
69
69
|
children: [
|
70
|
-
/* @__PURE__ */
|
71
|
-
/* @__PURE__ */ t(
|
72
|
-
/* @__PURE__ */
|
73
|
-
/* @__PURE__ */
|
74
|
-
const { statement: k, color: R } = G(
|
75
|
-
return /* @__PURE__ */
|
70
|
+
/* @__PURE__ */ r(v, { chapterPermissionCode: n }),
|
71
|
+
/* @__PURE__ */ t(i, { $justifyContent: "center", $width: "100%", children: [
|
72
|
+
/* @__PURE__ */ r(S, { $renderAs: "body1Medium", children: "Assessment • Mock test" }),
|
73
|
+
/* @__PURE__ */ r(i, { children: c.map((o) => {
|
74
|
+
const { statement: k, color: R } = G(o);
|
75
|
+
return /* @__PURE__ */ r(S, { $renderAs: "body2", $color: R, children: k }, o.node_id);
|
76
76
|
}) })
|
77
77
|
] })
|
78
78
|
]
|
79
79
|
}
|
80
80
|
)
|
81
81
|
] }),
|
82
|
-
/* @__PURE__ */ t(
|
83
|
-
h &&
|
82
|
+
/* @__PURE__ */ t(i, { $flexDirection: "row", $alignItems: "center", $justifyContent: "center", $flexGap: 8, children: [
|
83
|
+
h && f && /* @__PURE__ */ r(i, { $justifyContent: "center", $alignItems: "center", children: /* @__PURE__ */ t(_, { $renderAs: "eyebrow2", $align: "center", children: [
|
84
84
|
A,
|
85
85
|
"/",
|
86
|
-
|
86
|
+
f
|
87
87
|
] }) }),
|
88
|
-
I === "STUDENT" ? /* @__PURE__ */
|
88
|
+
I === "STUDENT" ? /* @__PURE__ */ r(
|
89
89
|
L,
|
90
90
|
{
|
91
91
|
handleOnReview: $,
|
@@ -94,17 +94,17 @@ const ee = ({
|
|
94
94
|
canResume: !!x,
|
95
95
|
canStart: !!g,
|
96
96
|
handleOnStartOrResume: b,
|
97
|
-
analyticsProps:
|
97
|
+
analyticsProps: s,
|
98
98
|
questionOrder: y
|
99
99
|
}
|
100
|
-
) : /* @__PURE__ */
|
100
|
+
) : /* @__PURE__ */ r(
|
101
101
|
N,
|
102
102
|
{
|
103
103
|
handleOnReview: $,
|
104
104
|
handleOnUnlock: E,
|
105
105
|
isMenuVisible: w,
|
106
106
|
blockStatus: n,
|
107
|
-
analyticsProps:
|
107
|
+
analyticsProps: s
|
108
108
|
}
|
109
109
|
)
|
110
110
|
] })
|
package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sat-sheet-item.js","sources":["../../../../../../src/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.tsx"],"sourcesContent":["import type { ISATSheetItemProps } from './sat-sheet-item-types';\n\nimport { useCallback, type FC, useMemo } from 'react';\n\nimport { useUIContext } from '../../../../ui/context/context';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { RewardAccuracy } from '../sheet-item/rewards-n-actions/reward-n-actions-styled';\nimport SheetItemIcon from '../sheet-item/sheet-item-icon';\nimport {\n SheetDetailsWrapper,\n SheetItemContainer,\n TopVerticalLine,\n VerticalLineWrapper,\n} from '../sheet-item/sheet-item-styled';\nimport { getSATSheetStatementStats, getUserNodeIdsToUnlockSAT } from './sat-sheet-item-utils';\nimport {
|
1
|
+
{"version":3,"file":"sat-sheet-item.js","sources":["../../../../../../src/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.tsx"],"sourcesContent":["import type { ISATSheetItemProps } from './sat-sheet-item-types';\n\nimport { useCallback, type FC, useMemo } from 'react';\n\nimport { useUIContext } from '../../../../ui/context/context';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { RewardAccuracy } from '../sheet-item/rewards-n-actions/reward-n-actions-styled';\nimport SheetItemIcon from '../sheet-item/sheet-item-icon';\nimport {\n SheetDetailsWrapper,\n SheetItemContainer,\n TopVerticalLine,\n VerticalLineWrapper,\n} from '../sheet-item/sheet-item-styled';\nimport { getSATSheetStatementStats, getUserNodeIdsToUnlockSAT } from './sat-sheet-item-utils';\nimport { getActiveSheet } from './sat-sheet-utils';\nimport StudentActions from './student-actions/student-actions';\nimport TeacherActions from './teacher-actions/teacher-actions';\n\nconst SATSheetItem: FC<ISATSheetItemProps> = ({\n blockStatus,\n satMaxScore,\n satScore,\n ...restSATSheetItemProps\n}) => {\n const { blockId, sheets, userType, onSATReview, onSATUnlock, onSATStartOrResume } =\n restSATSheetItemProps;\n const {\n user_block_id: userBlockId,\n can_review: canReview,\n can_start: canStart,\n can_resume: canResume,\n order: questionOrder,\n } = getActiveSheet(sheets) || {};\n\n const { onEvent: trackEvent } = useUIContext();\n const analyticsProps = useMemo(\n () => ({\n user_block_id: userBlockId,\n block_id: blockId,\n }),\n [blockId, userBlockId],\n );\n\n const isMenuVisible = Boolean(\n (blockStatus === 'COMPLETED' || blockStatus === 'MASTERED') && canReview && userBlockId,\n );\n\n const handleOnReview = useCallback(() => {\n if (typeof onSATReview !== 'function') {\n throw new Error('onSATReview must be a function');\n }\n\n if (!userBlockId) {\n throw new Error('userBlockId must be a string');\n }\n\n trackEvent('clicked', analyticsProps);\n\n onSATReview(userBlockId);\n }, [analyticsProps, onSATReview, trackEvent, userBlockId]);\n\n const handleOnUnlock = useCallback(() => {\n if (typeof onSATUnlock !== 'function') {\n throw new Error('onSATUnlock must be a function');\n }\n\n const userNodeIds = getUserNodeIdsToUnlockSAT(sheets);\n\n if (userNodeIds.length === 0) {\n throw new Error('User node IDs are missing');\n }\n\n onSATUnlock(userNodeIds);\n }, [onSATUnlock, sheets]);\n\n const handleOnStartOrResume = useCallback(() => {\n if (typeof onSATStartOrResume !== 'function') {\n throw new Error('onSATStartOrResume must be a function');\n }\n\n if (!userBlockId) {\n throw new Error('userBlockId must be a string');\n }\n\n onSATStartOrResume(userBlockId);\n }, [onSATStartOrResume, userBlockId]);\n\n return (\n <SheetItemContainer\n $flexDirection=\"row\"\n $justifyContent=\"space-between\"\n $alignItems=\"center\"\n $flexGapX={1}\n >\n <FlexView $width=\"70%\" $flexGap={8} $flexDirection=\"row\">\n <VerticalLineWrapper>\n <TopVerticalLine />\n </VerticalLineWrapper>\n\n <SheetDetailsWrapper\n $width=\"100%\"\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $flexGap={8}\n $marginBottom={12}\n >\n <SheetItemIcon chapterPermissionCode={blockStatus} />\n\n <FlexView $justifyContent=\"center\" $width=\"100%\">\n <Text $renderAs=\"body1Medium\">Assessment • Mock test</Text>\n\n <FlexView>\n {sheets.map(sheet => {\n const { statement, color } = getSATSheetStatementStats(sheet);\n\n return (\n <Text $renderAs=\"body2\" key={sheet.node_id} $color={color}>\n {statement}\n </Text>\n );\n })}\n </FlexView>\n </FlexView>\n </SheetDetailsWrapper>\n </FlexView>\n\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $justifyContent=\"center\" $flexGap={8}>\n {canReview && satMaxScore && (\n <FlexView $justifyContent=\"center\" $alignItems=\"center\">\n <RewardAccuracy $renderAs=\"eyebrow2\" $align=\"center\">\n {satScore}/{satMaxScore}\n </RewardAccuracy>\n </FlexView>\n )}\n\n {userType === 'STUDENT' ? (\n <StudentActions\n handleOnReview={handleOnReview}\n isMenuVisible={isMenuVisible}\n blockStatus={blockStatus}\n canResume={Boolean(canResume)}\n canStart={Boolean(canStart)}\n handleOnStartOrResume={handleOnStartOrResume}\n analyticsProps={analyticsProps}\n questionOrder={questionOrder}\n />\n ) : (\n <TeacherActions\n handleOnReview={handleOnReview}\n handleOnUnlock={handleOnUnlock}\n isMenuVisible={isMenuVisible}\n blockStatus={blockStatus}\n analyticsProps={analyticsProps}\n />\n )}\n </FlexView>\n </SheetItemContainer>\n );\n};\n\nexport default SATSheetItem;\n"],"names":["SATSheetItem","blockStatus","satMaxScore","satScore","restSATSheetItemProps","blockId","sheets","userType","onSATReview","onSATUnlock","onSATStartOrResume","userBlockId","canReview","canStart","canResume","questionOrder","getActiveSheet","trackEvent","useUIContext","analyticsProps","useMemo","isMenuVisible","handleOnReview","useCallback","handleOnUnlock","userNodeIds","getUserNodeIdsToUnlockSAT","handleOnStartOrResume","jsxs","SheetItemContainer","FlexView","jsx","VerticalLineWrapper","TopVerticalLine","SheetDetailsWrapper","SheetItemIcon","Text","sheet","statement","color","getSATSheetStatementStats","RewardAccuracy","StudentActions","TeacherActions"],"mappings":"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"}
|
package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-utils.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sat-sheet-utils.js","sources":["../../../../../../src/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-utils.ts"],"sourcesContent":["import type { TLPARSheetData } from '../sheet-item/sheet-item-type';\n\nconst
|
1
|
+
{"version":3,"file":"sat-sheet-utils.js","sources":["../../../../../../src/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-utils.ts"],"sourcesContent":["import type { TLPARSheetData } from '../sheet-item/sheet-item-type';\n\nconst getActiveSheet = (sheets: TLPARSheetData[]) => {\n const activeSheet = sheets.find(sheet => sheet.can_start || sheet.can_resume) ?? sheets[0];\n\n return activeSheet;\n};\n\nexport { getActiveSheet };\n"],"names":["getActiveSheet","sheets","sheet"],"mappings":"AAEM,MAAAA,IAAiB,CAACC,MACFA,EAAO,KAAK,CAASC,MAAAA,EAAM,aAAaA,EAAM,UAAU,KAAKD,EAAO,CAAC;"}
|
package/dist/index.d.ts
CHANGED
@@ -547,8 +547,6 @@ declare enum GENDER {
|
|
547
547
|
OTHER = "OTHER"
|
548
548
|
}
|
549
549
|
|
550
|
-
export declare const getActiveSATSheet: (sheets: TLPARSheetData[]) => TLPARSheetData | undefined;
|
551
|
-
|
552
550
|
declare const getArrowTooltipConfig: IGetArrowTooltipConfig;
|
553
551
|
|
554
552
|
declare const getButtonConfig: IGetButtonConfig;
|
@@ -2739,7 +2737,7 @@ declare interface IOTPInputProps {
|
|
2739
2737
|
isBusy?: boolean;
|
2740
2738
|
}
|
2741
2739
|
|
2742
|
-
declare interface IOTPResendProps {
|
2740
|
+
declare interface IOTPResendProps extends IClickableAnalyticsProps {
|
2743
2741
|
onResendOTP: () => void;
|
2744
2742
|
onResendVoiceOTP?: () => void;
|
2745
2743
|
timerSeconds?: number;
|
@@ -2786,7 +2784,7 @@ declare interface IPerfectHitsProps {
|
|
2786
2784
|
value: number;
|
2787
2785
|
}
|
2788
2786
|
|
2789
|
-
declare interface IPillButtonProps {
|
2787
|
+
declare interface IPillButtonProps extends IClickableAnalyticsProps {
|
2790
2788
|
id: string;
|
2791
2789
|
label: string;
|
2792
2790
|
selected?: boolean;
|
@@ -3185,7 +3183,7 @@ declare interface ISectionOption<Section = TDefaultSection> {
|
|
3185
3183
|
data: Section[];
|
3186
3184
|
}
|
3187
3185
|
|
3188
|
-
declare interface ISelectableInfoCardProps {
|
3186
|
+
declare interface ISelectableInfoCardProps extends IClickableAnalyticsProps {
|
3189
3187
|
id: string;
|
3190
3188
|
title: string;
|
3191
3189
|
description: string;
|
@@ -4721,6 +4719,23 @@ export declare const PerfectHits: NamedExoticComponent<IPerfectHitsProps>;
|
|
4721
4719
|
|
4722
4720
|
export declare const PillButton: NamedExoticComponent<IPillButtonProps>;
|
4723
4721
|
|
4722
|
+
export declare enum PLA_ANALYTICS_EVENTS {
|
4723
|
+
START_SIGNUP_CTA_CLICKED = "start_signup_cta_clicked",
|
4724
|
+
ECNA_STEP_VIEWED = "ecna_step_viewed",
|
4725
|
+
ECNA_RESPONSE_RECORDED_DEBUG = "ecna_response_recorded_debug",
|
4726
|
+
PARENT_SIGNUP_CTA_CLICKED = "parent_signup_cta_clicked",
|
4727
|
+
PARENT_SIGNUP_SUCCESSFUL = "parent_signup_successful",
|
4728
|
+
PARENT_SIGNUP_FAILED = "parent_signup_failed",
|
4729
|
+
STUDENT_SIGNUP_SUCCESSFUL = "signup_successful",
|
4730
|
+
STUDENT_SIGNUP_FAILED = "signup_failed",
|
4731
|
+
SIGNUP_OTP_ENTERED = "signup_otp_entered",
|
4732
|
+
SIGNUP_OTP_VERIFIED = "signup_otp_verified",
|
4733
|
+
SIGNUP_OTP_FAILED = "signup_otp_failed",
|
4734
|
+
SLOTS_SHOWN = "slots_shown",
|
4735
|
+
SLOT_DATE_SELECTED = "slot_date_selected",
|
4736
|
+
SLOT_TIME_SELECTED = "slot_time_selected"
|
4737
|
+
}
|
4738
|
+
|
4724
4739
|
/**
|
4725
4740
|
** Global/Platform specific events that needs to be tracked goes here
|
4726
4741
|
** Naming convention needs to be snake_case
|
@@ -4906,7 +4921,7 @@ declare enum SECTION_CODE {
|
|
4906
4921
|
|
4907
4922
|
export declare const SectionList: <Section extends string | number | TDefaultSection>(props: ISectionList<Section>) => ReactElement;
|
4908
4923
|
|
4909
|
-
export declare const SelectableInfoCard: MemoExoticComponent<({ id, title, description, icon, selected, onClick, }: ISelectableInfoCardProps) => JSX.Element>;
|
4924
|
+
export declare const SelectableInfoCard: MemoExoticComponent<({ id, title, description, icon, selected, onClick, analyticsLabel, analyticsProps, }: ISelectableInfoCardProps) => JSX.Element>;
|
4910
4925
|
|
4911
4926
|
export declare const SelectInput: <IDType extends string | number>(props: ISelectInputProps<IDType>) => ReactElement;
|
4912
4927
|
|