@cuemath/leap 3.2.32 → 3.2.33-as2
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/gif/gif.js +4 -1
- package/dist/assets/gif/gif.js.map +1 -1
- package/dist/assets/illustrations/illustrations.js +17 -0
- package/dist/assets/illustrations/illustrations.js.map +1 -1
- package/dist/assets/lottie/lottie.js +3 -0
- package/dist/assets/lottie/lottie.js.map +1 -1
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message-styled.js +1 -1
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message-styled.js.map +1 -1
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message.js +22 -22
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message.js.map +1 -1
- package/dist/features/auth/comps/pill-button/pill-button-styled.js +12 -11
- package/dist/features/auth/comps/pill-button/pill-button-styled.js.map +1 -1
- package/dist/features/auth/pla-signup/onboarding-guide/onboarding-guide-styled.js +11 -4
- package/dist/features/auth/pla-signup/onboarding-guide/onboarding-guide-styled.js.map +1 -1
- package/dist/features/auth/pla-signup/onboarding-guide/onboarding-guide.js +17 -17
- package/dist/features/auth/pla-signup/onboarding-guide/onboarding-guide.js.map +1 -1
- package/dist/features/auth/pla-signup/signup-options/signup-options.js +1 -1
- package/dist/features/auth/pla-signup/signup-options/signup-options.js.map +1 -1
- package/dist/features/class-timer/animate.js +103 -0
- package/dist/features/class-timer/animate.js.map +1 -0
- package/dist/features/class-timer/animations/open-close.js +102 -0
- package/dist/features/class-timer/animations/open-close.js.map +1 -0
- package/dist/features/class-timer/animations/ripple.js +44 -0
- package/dist/features/class-timer/animations/ripple.js.map +1 -0
- package/dist/features/class-timer/class-timer.js +155 -0
- package/dist/features/class-timer/class-timer.js.map +1 -0
- package/dist/features/class-timer/clock.js +26 -0
- package/dist/features/class-timer/clock.js.map +1 -0
- package/dist/features/class-timer/constants.js +27 -0
- package/dist/features/class-timer/constants.js.map +1 -0
- package/dist/features/class-timer/timer.js +68 -0
- package/dist/features/class-timer/timer.js.map +1 -0
- package/dist/features/hooks/use-visibility-change.js +12 -0
- package/dist/features/hooks/use-visibility-change.js.map +1 -0
- package/dist/features/ui/constants/z-index.js +4 -1
- package/dist/features/ui/constants/z-index.js.map +1 -1
- package/dist/features/ui/drawer/drawer-styled.js +4 -2
- package/dist/features/ui/drawer/drawer-styled.js.map +1 -1
- package/dist/features/utils/utils.js +18 -18
- package/dist/features/utils/utils.js.map +1 -1
- package/dist/index.d.ts +86 -0
- package/dist/index.js +476 -466
- package/dist/index.js.map +1 -1
- package/dist/static/arrow-board-green.11e75bca.svg +1 -0
- package/dist/static/book-checked-green.c275dbd9.svg +1 -0
- package/dist/static/book-checked-orange.53ea6880.svg +1 -0
- package/dist/static/book-checked-purple.df628f3e.svg +1 -0
- package/dist/static/calendar-check-green.ab0e24d2.svg +1 -0
- package/dist/static/calendar-cross-orange.8e7a23bd.svg +1 -0
- package/dist/static/calendar-hour-glass-orange.e99f8ffd.json +1 -0
- package/dist/static/equal-outlined.b705bf5d.svg +1 -0
- package/dist/static/handshake-green.f8d24216.svg +1 -0
- package/dist/static/heart-outlined.5b5415fe.svg +1 -0
- package/dist/static/knowledge-blue.ead536f1.svg +1 -0
- package/dist/static/learning-session-grid-bg.fb60e64b.gif +0 -0
- package/dist/static/platform-green.eb853207.svg +1 -0
- package/dist/static/platform-purple.ecf6fa46.svg +1 -0
- package/dist/static/radial-gradient-bg-2.6657c758.svg +1 -0
- package/dist/static/radial-gradient-bg.5ae0cde5.svg +1 -0
- package/dist/static/star-outlined.bde83c7c.svg +1 -0
- package/dist/static/student-avatar.24bc2875.svg +1 -0
- package/dist/static/teacher-found.0ba07d4a.json +1 -0
- package/dist/static/teacher-search.552c8ba2.json +1 -0
- package/dist/static/trophy-outlined.f946b362.svg +1 -0
- package/dist/static/way-forward-grid-bg.ab5d2dc6.gif +0 -0
- package/dist/static/your-goals-grid-bg.87fa9c60.gif +0 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clock.js","sources":["../../../src/features/class-timer/clock.tsx"],"sourcesContent":["import type { TColorNames, TTextVariants } from '../ui/types';\n\nimport { useState, useEffect, useCallback, useRef, memo } from 'react';\n\nimport Text from '../ui/text/text';\nimport { formatTimeInHHMMSS } from '../utils/utils';\nimport { getTime, TIMEOUT_INTERVAL } from './constants';\n\ninterface IClockProps {\n completionTime?: number | null;\n onComplete?: () => void;\n startedOn: Date;\n textVariant?: TTextVariants;\n textColor?: TColorNames;\n}\n\nconst Clock = ({\n completionTime = null,\n onComplete = () => {},\n startedOn,\n textVariant = 'ab2-bold',\n textColor,\n}: IClockProps) => {\n const [elapsedTime, setElapsedTime] = useState(getTime(startedOn));\n const timerRef = useRef<NodeJS.Timeout | null>(null);\n const formattedTime = formatTimeInHHMMSS(elapsedTime);\n const start = useRef<number | null>(null);\n const timer = useCallback(() => {\n const timestamp = performance.now();\n\n const elapsed = timestamp - (start.current || 0);\n\n if (elapsed >= 1000) {\n setElapsedTime(getTime(startedOn));\n\n start.current = performance.now();\n }\n\n timerRef.current = setTimeout(timer, TIMEOUT_INTERVAL);\n }, [startedOn]);\n\n useEffect(() => {\n if (completionTime && elapsedTime >= completionTime && elapsedTime <= completionTime + 5) {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n timerRef.current = null;\n }\n\n onComplete();\n }\n }, [completionTime, elapsedTime, onComplete]);\n\n useEffect(() => {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n timerRef.current = null;\n }\n\n if (start.current === null) {\n start.current = performance.now();\n }\n\n timerRef.current = setTimeout(timer, TIMEOUT_INTERVAL);\n\n return () => {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n }\n };\n }, [timer]);\n\n if (elapsedTime < 0) return null;\n\n return (\n <Text $width={formattedTime.length > 5 ? 71 : 57} $renderAs={textVariant} $color={textColor}>\n {formattedTime}\n </Text>\n );\n};\n\nexport default memo(Clock);\n"],"names":["Clock","completionTime","onComplete","startedOn","textVariant","textColor","elapsedTime","setElapsedTime","useState","getTime","timerRef","useRef","formattedTime","formatTimeInHHMMSS","start","timer","useCallback","TIMEOUT_INTERVAL","useEffect","jsx","Text","Clock$1","memo"],"mappings":";;;;;AAgBA,MAAMA,IAAQ,CAAC;AAAA,EACb,gBAAAC,IAAiB;AAAA,EACjB,YAAAC,IAAa,MAAM;AAAA,EAAC;AAAA,EACpB,WAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,WAAAC;AACF,MAAmB;AACjB,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAASC,EAAQN,CAAS,CAAC,GAC3DO,IAAWC,EAA8B,IAAI,GAC7CC,IAAgBC,EAAmBP,CAAW,GAC9CQ,IAAQH,EAAsB,IAAI,GAClCI,IAAQC,EAAY,MAAM;AAK9B,IAJkB,YAAY,SAEDF,EAAM,WAAW,MAE/B,QACEP,EAAAE,EAAQN,CAAS,CAAC,GAE3BW,EAAA,UAAU,YAAY,QAGrBJ,EAAA,UAAU,WAAWK,GAAOE,CAAgB;AAAA,EAAA,GACpD,CAACd,CAAS,CAAC;AAgCV,SA9BJe,EAAU,MAAM;AACd,IAAIjB,KAAkBK,KAAeL,KAAkBK,KAAeL,IAAiB,MACjFS,EAAS,YACX,aAAaA,EAAS,OAAO,GAC7BA,EAAS,UAAU,OAGVR;EAEZ,GAAA,CAACD,GAAgBK,GAAaJ,CAAU,CAAC,GAE5CgB,EAAU,OACJR,EAAS,YACX,aAAaA,EAAS,OAAO,GAC7BA,EAAS,UAAU,OAGjBI,EAAM,YAAY,SACdA,EAAA,UAAU,YAAY,QAGrBJ,EAAA,UAAU,WAAWK,GAAOE,CAAgB,GAE9C,MAAM;AACX,IAAIP,EAAS,WACX,aAAaA,EAAS,OAAO;AAAA,EAC/B,IAED,CAACK,CAAK,CAAC,GAENT,IAAc,IAAU,OAGzB,gBAAAa,EAAAC,GAAA,EAAK,QAAQR,EAAc,SAAS,IAAI,KAAK,IAAI,WAAWR,GAAa,QAAQC,GAC/E,UACHO,EAAA,CAAA;AAEJ,GAEeS,IAAAC,EAAKtB,CAAK;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import c from "styled-components";
|
|
2
|
+
import n from "../ui/layout/flex-view.js";
|
|
3
|
+
const s = c(n)`
|
|
4
|
+
svg {
|
|
5
|
+
color: ${(o) => o.theme.colors[o.$iconColor]};
|
|
6
|
+
}
|
|
7
|
+
`, t = 60 * 10, e = 60 * 5, L = {
|
|
8
|
+
LAST_TEN: t + 2,
|
|
9
|
+
LAST_FIVE: e + 2
|
|
10
|
+
}, A = 2e3, l = 1500, i = 250, m = ({
|
|
11
|
+
remainingTime: o,
|
|
12
|
+
updateWithExtendedTime: r,
|
|
13
|
+
extendedTime: T,
|
|
14
|
+
extendedTimeStarted: E
|
|
15
|
+
}) => o <= e ? "ORANGE_3" : o <= t || r && T || E ? "YELLOW_3" : "BLACK_3", M = (o) => Math.floor(((/* @__PURE__ */ new Date()).getTime() - o.getTime()) / 1e3);
|
|
16
|
+
export {
|
|
17
|
+
L as ANIMATION_TIME,
|
|
18
|
+
l as EXTEND_IDLE,
|
|
19
|
+
s as IconWrapper,
|
|
20
|
+
e as LAST_FIVE,
|
|
21
|
+
t as START_TIMER,
|
|
22
|
+
i as TIMEOUT_INTERVAL,
|
|
23
|
+
A as TIME_LEFT_IDLE,
|
|
24
|
+
m as getClockColor,
|
|
25
|
+
M as getTime
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../src/features/class-timer/constants.ts"],"sourcesContent":["import type { TColorNames } from '../ui/types';\n\nimport styled from 'styled-components';\n\nimport FlexView from '../ui/layout/flex-view';\n\nconst IconWrapper = styled(FlexView)<{ $iconColor: TColorNames }>`\n svg {\n color: ${props => props.theme.colors[props.$iconColor]};\n }\n`;\n\nconst START_TIMER = 60 * 10; // 10 minutes\nconst LAST_FIVE = 60 * 5; // 5 minutes\nconst ANIMATION_TIME = {\n LAST_TEN: START_TIMER + 2,\n LAST_FIVE: LAST_FIVE + 2,\n};\n\nconst TIME_LEFT_IDLE = 2000;\nconst EXTEND_IDLE = 1500;\nconst TIMEOUT_INTERVAL = 250;\n\ninterface IClockColorParams {\n remainingTime: number;\n updateWithExtendedTime: boolean;\n extendedTime: number;\n extendedTimeStarted: boolean;\n}\n\nconst getClockColor = ({\n remainingTime,\n updateWithExtendedTime,\n extendedTime,\n extendedTimeStarted,\n}: IClockColorParams): TColorNames => {\n if (remainingTime <= LAST_FIVE) return 'ORANGE_3';\n\n if (\n remainingTime <= START_TIMER ||\n (updateWithExtendedTime && extendedTime) ||\n extendedTimeStarted\n )\n return 'YELLOW_3';\n\n return 'BLACK_3';\n};\n\nconst getTime = (startedOn: Date): number => {\n return Math.floor((new Date().getTime() - startedOn.getTime()) / 1000);\n};\n\nexport {\n getClockColor,\n getTime,\n IconWrapper,\n ANIMATION_TIME,\n START_TIMER,\n LAST_FIVE,\n TIME_LEFT_IDLE,\n EXTEND_IDLE,\n TIMEOUT_INTERVAL,\n};\n"],"names":["IconWrapper","styled","FlexView","props","START_TIMER","LAST_FIVE","ANIMATION_TIME","TIME_LEFT_IDLE","EXTEND_IDLE","TIMEOUT_INTERVAL","getClockColor","remainingTime","updateWithExtendedTime","extendedTime","extendedTimeStarted","getTime","startedOn"],"mappings":";;AAMM,MAAAA,IAAcC,EAAOC,CAAQ;AAAA;AAAA,aAEtB,OAASC,EAAM,MAAM,OAAOA,EAAM,UAAU,CAAC;AAAA;AAAA,GAIpDC,IAAc,KAAK,IACnBC,IAAY,KAAK,GACjBC,IAAiB;AAAA,EACrB,UAAUF,IAAc;AAAA,EACxB,WAAWC,IAAY;AACzB,GAEME,IAAiB,KACjBC,IAAc,MACdC,IAAmB,KASnBC,IAAgB,CAAC;AAAA,EACrB,eAAAC;AAAA,EACA,wBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,qBAAAC;AACF,MACMH,KAAiBN,IAAkB,aAGrCM,KAAiBP,KAChBQ,KAA0BC,KAC3BC,IAEO,aAEF,WAGHC,IAAU,CAACC,MACR,KAAK,QAAO,oBAAI,KAAK,GAAE,YAAYA,EAAU,QAAQ,KAAK,GAAI;"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { jsxs as I, jsx as n } from "react/jsx-runtime";
|
|
2
|
+
import { memo as b, useState as A, useRef as f, useCallback as E, useEffect as p } from "react";
|
|
3
|
+
import M from "styled-components";
|
|
4
|
+
import R from "../../assets/line-icons/icons/clock2.js";
|
|
5
|
+
import k from "../ui/layout/flex-view.js";
|
|
6
|
+
import $ from "../ui/text/text.js";
|
|
7
|
+
import { formatTimeInHHMMSS as X } from "../utils/utils.js";
|
|
8
|
+
import { TIMEOUT_INTERVAL as T, IconWrapper as D } from "./constants.js";
|
|
9
|
+
const G = M(k)`
|
|
10
|
+
border-radius: 20px;
|
|
11
|
+
position: relative;
|
|
12
|
+
z-index: 7;
|
|
13
|
+
gap: 8px;
|
|
14
|
+
`, S = ({
|
|
15
|
+
styledTimer: d = !1,
|
|
16
|
+
backgroundColor: h = "GREY_1",
|
|
17
|
+
endTime: c,
|
|
18
|
+
// Default 1 minute from now
|
|
19
|
+
onComplete: u = () => {
|
|
20
|
+
},
|
|
21
|
+
onReminder: i,
|
|
22
|
+
reminder: m,
|
|
23
|
+
iconColor: g = "ORANGE_4",
|
|
24
|
+
textColor: a = "BLACK",
|
|
25
|
+
textVariant: s = "ac3-black"
|
|
26
|
+
}) => {
|
|
27
|
+
const [e, w] = A(Math.ceil(c - Date.now() / 1e3)), r = f(null), t = f(null), l = E(() => {
|
|
28
|
+
if (performance.now() - (t.current || 0) >= 1e3) {
|
|
29
|
+
const x = Math.ceil(c - Date.now() / 1e3);
|
|
30
|
+
w(x), t.current = performance.now();
|
|
31
|
+
}
|
|
32
|
+
r.current = setTimeout(l, T);
|
|
33
|
+
}, [c]);
|
|
34
|
+
p(() => (r.current && (clearTimeout(r.current), r.current = null), t.current === null && (t.current = performance.now()), r.current = setTimeout(l, T), () => {
|
|
35
|
+
r.current && clearTimeout(r.current);
|
|
36
|
+
}), [l]), p(() => {
|
|
37
|
+
m && i && e === m && i(), e <= 0 && (r.current && (clearTimeout(r.current), r.current = null), u());
|
|
38
|
+
}, [m, i, u, e]);
|
|
39
|
+
const o = X(e);
|
|
40
|
+
return d ? /* @__PURE__ */ I(
|
|
41
|
+
G,
|
|
42
|
+
{
|
|
43
|
+
$flexDirection: "row",
|
|
44
|
+
$alignItems: "center",
|
|
45
|
+
$background: h,
|
|
46
|
+
$borderRadiusX: 1.25,
|
|
47
|
+
$gutterX: 0.75,
|
|
48
|
+
$gapX: 0.15,
|
|
49
|
+
$flexGapX: 0.25,
|
|
50
|
+
children: [
|
|
51
|
+
/* @__PURE__ */ n(D, { $iconColor: g, children: /* @__PURE__ */ n(R, {}) }),
|
|
52
|
+
/* @__PURE__ */ n(
|
|
53
|
+
$,
|
|
54
|
+
{
|
|
55
|
+
$width: o.length > 5 ? 71 : 57,
|
|
56
|
+
$renderAs: s,
|
|
57
|
+
$color: a,
|
|
58
|
+
children: o
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
) : /* @__PURE__ */ n($, { $width: o.length > 5 ? 71 : 57, $renderAs: s, $color: a, children: o });
|
|
64
|
+
}, z = b(S);
|
|
65
|
+
export {
|
|
66
|
+
z as default
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=timer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timer.js","sources":["../../../src/features/class-timer/timer.tsx"],"sourcesContent":["import type { TColorNames, TTextVariants } from '../ui/types';\n\nimport { memo, useCallback, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\n\nimport Clock2Icon from '../../assets/line-icons/icons/clock2';\nimport FlexView from '../ui/layout/flex-view';\nimport Text from '../ui/text/text';\nimport { formatTimeInHHMMSS } from '../utils/utils';\nimport { IconWrapper, TIMEOUT_INTERVAL } from './constants';\n\ninterface ITimeWrapperProps {\n backgroundColor?: TColorNames;\n}\n\nconst TimeWrapper = styled(FlexView)<ITimeWrapperProps>`\n border-radius: 20px;\n position: relative;\n z-index: 7;\n gap: 8px;\n`;\n\ninterface ITimerProps {\n styledTimer?: boolean;\n backgroundColor?: TColorNames;\n endTime: number;\n onComplete?: () => void;\n onReminder?: () => void;\n reminder?: number;\n iconColor?: TColorNames;\n textColor?: TColorNames;\n textVariant?: TTextVariants;\n}\n\nconst Timer = ({\n styledTimer = false,\n backgroundColor = 'GREY_1',\n endTime, // Default 1 minute from now\n onComplete = () => {},\n onReminder,\n reminder,\n iconColor = 'ORANGE_4',\n textColor = 'BLACK',\n textVariant = 'ac3-black',\n}: ITimerProps) => {\n const [remainingTime, setRemainingTime] = useState(Math.ceil(endTime - Date.now() / 1000));\n const timerRef = useRef<NodeJS.Timeout | null>(null);\n const start = useRef<number | null>(null);\n const timer = useCallback(() => {\n const timestamp = performance.now();\n const elapsed = timestamp - (start.current || 0);\n\n if (elapsed >= 1000) {\n // only if 1s has elapsed\n const rt = Math.ceil(endTime - Date.now() / 1000);\n\n setRemainingTime(rt);\n start.current = performance.now();\n }\n\n timerRef.current = setTimeout(timer, TIMEOUT_INTERVAL);\n }, [endTime]);\n\n useEffect(() => {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n timerRef.current = null;\n }\n\n if (start.current === null) {\n start.current = performance.now();\n }\n\n timerRef.current = setTimeout(timer, TIMEOUT_INTERVAL);\n\n return () => {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n }\n };\n }, [timer]);\n\n useEffect(() => {\n if (reminder && onReminder && remainingTime === reminder) {\n onReminder();\n }\n\n if (remainingTime <= 0) {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n timerRef.current = null;\n }\n onComplete();\n }\n }, [reminder, onReminder, onComplete, remainingTime]);\n const formattedTime = formatTimeInHHMMSS(remainingTime);\n\n if (styledTimer) {\n return (\n <TimeWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $background={backgroundColor}\n $borderRadiusX={1.25}\n $gutterX={0.75}\n $gapX={0.15}\n $flexGapX={0.25}\n >\n <IconWrapper $iconColor={iconColor}>\n <Clock2Icon />\n </IconWrapper>\n <Text\n $width={formattedTime.length > 5 ? 71 : 57}\n $renderAs={textVariant}\n $color={textColor}\n >\n {formattedTime}\n </Text>\n </TimeWrapper>\n );\n }\n\n return (\n <Text $width={formattedTime.length > 5 ? 71 : 57} $renderAs={textVariant} $color={textColor}>\n {formattedTime}\n </Text>\n );\n};\n\nexport default memo(Timer);\n"],"names":["TimeWrapper","styled","FlexView","Timer","styledTimer","backgroundColor","endTime","onComplete","onReminder","reminder","iconColor","textColor","textVariant","remainingTime","setRemainingTime","useState","timerRef","useRef","start","timer","useCallback","rt","TIMEOUT_INTERVAL","useEffect","formattedTime","formatTimeInHHMMSS","jsxs","jsx","IconWrapper","Clock2Icon","Text","Timer$1","memo"],"mappings":";;;;;;;;AAeA,MAAMA,IAAcC,EAAOC,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,GAmB7BC,IAAQ,CAAC;AAAA,EACb,aAAAC,IAAc;AAAA,EACd,iBAAAC,IAAkB;AAAA,EAClB,SAAAC;AAAA;AAAA,EACA,YAAAC,IAAa,MAAM;AAAA,EAAC;AAAA,EACpB,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,WAAAC,IAAY;AAAA,EACZ,aAAAC,IAAc;AAChB,MAAmB;AACjB,QAAM,CAACC,GAAeC,CAAgB,IAAIC,EAAS,KAAK,KAAKT,IAAU,KAAK,QAAQ,GAAI,CAAC,GACnFU,IAAWC,EAA8B,IAAI,GAC7CC,IAAQD,EAAsB,IAAI,GAClCE,IAAQC,EAAY,MAAM;AAI9B,QAHkB,YAAY,SACDF,EAAM,WAAW,MAE/B,KAAM;AAEnB,YAAMG,IAAK,KAAK,KAAKf,IAAU,KAAK,IAAA,IAAQ,GAAI;AAEhD,MAAAQ,EAAiBO,CAAE,GACbH,EAAA,UAAU,YAAY;IAC9B;AAES,IAAAF,EAAA,UAAU,WAAWG,GAAOG,CAAgB;AAAA,EAAA,GACpD,CAAChB,CAAO,CAAC;AAEZ,EAAAiB,EAAU,OACJP,EAAS,YACX,aAAaA,EAAS,OAAO,GAC7BA,EAAS,UAAU,OAGjBE,EAAM,YAAY,SACdA,EAAA,UAAU,YAAY,QAGrBF,EAAA,UAAU,WAAWG,GAAOG,CAAgB,GAE9C,MAAM;AACX,IAAIN,EAAS,WACX,aAAaA,EAAS,OAAO;AAAA,EAC/B,IAED,CAACG,CAAK,CAAC,GAEVI,EAAU,MAAM;AACV,IAAAd,KAAYD,KAAcK,MAAkBJ,KACnCD,KAGTK,KAAiB,MACfG,EAAS,YACX,aAAaA,EAAS,OAAO,GAC7BA,EAAS,UAAU,OAEVT;KAEZ,CAACE,GAAUD,GAAYD,GAAYM,CAAa,CAAC;AAC9C,QAAAW,IAAgBC,EAAmBZ,CAAa;AAEtD,SAAIT,IAEA,gBAAAsB;AAAA,IAAC1B;AAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,aAAY;AAAA,MACZ,aAAaK;AAAA,MACb,gBAAgB;AAAA,MAChB,UAAU;AAAA,MACV,OAAO;AAAA,MACP,WAAW;AAAA,MAEX,UAAA;AAAA,QAAA,gBAAAsB,EAACC,GAAY,EAAA,YAAYlB,GACvB,UAAA,gBAAAiB,EAACE,IAAW,CAAA,GACd;AAAA,QACA,gBAAAF;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,QAAQN,EAAc,SAAS,IAAI,KAAK;AAAA,YACxC,WAAWZ;AAAA,YACX,QAAQD;AAAA,YAEP,UAAAa;AAAA,UAAA;AAAA,QACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,IAMH,gBAAAG,EAAAG,GAAA,EAAK,QAAQN,EAAc,SAAS,IAAI,KAAK,IAAI,WAAWZ,GAAa,QAAQD,GAC/E,UACHa,EAAA,CAAA;AAEJ,GAEeO,IAAAC,EAAK7B,CAAK;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { useState as n, useCallback as l, useEffect as a } from "react";
|
|
2
|
+
const o = () => {
|
|
3
|
+
const [t, e] = n(document.visibilityState === "visible"), i = l(() => {
|
|
4
|
+
const s = document.visibilityState === "visible";
|
|
5
|
+
e(s);
|
|
6
|
+
}, [e]);
|
|
7
|
+
return a(() => (document.addEventListener("visibilitychange", i), () => document.removeEventListener("visibilitychange", i)), [i]), t;
|
|
8
|
+
}, c = o;
|
|
9
|
+
export {
|
|
10
|
+
c as default
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=use-visibility-change.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-visibility-change.js","sources":["../../../src/features/hooks/use-visibility-change.tsx"],"sourcesContent":["import { useEffect, useState, useCallback } from 'react';\n\n/**\n * Custom hook to detect visibility change of the document.\n * Returns true if the document is visible, false otherwise.\n */\nconst useVisibilityChange = () => {\n const [isVisible, setIsVisible] = useState(document.visibilityState === 'visible');\n\n const onVisibilityChange = useCallback(() => {\n const isVisibleState = document.visibilityState === 'visible';\n\n setIsVisible(isVisibleState);\n }, [setIsVisible]);\n\n useEffect(() => {\n document.addEventListener('visibilitychange', onVisibilityChange);\n\n return () => document.removeEventListener('visibilitychange', onVisibilityChange);\n }, [onVisibilityChange]);\n\n return isVisible;\n};\n\nexport default useVisibilityChange;\n"],"names":["useVisibilityChange","isVisible","setIsVisible","useState","onVisibilityChange","useCallback","isVisibleState","useEffect","useVisibilityChange$1"],"mappings":";AAMA,MAAMA,IAAsB,MAAM;AAChC,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,SAAS,oBAAoB,SAAS,GAE3EC,IAAqBC,EAAY,MAAM;AACrC,UAAAC,IAAiB,SAAS,oBAAoB;AAEpD,IAAAJ,EAAaI,CAAc;AAAA,EAAA,GAC1B,CAACJ,CAAY,CAAC;AAEjB,SAAAK,EAAU,OACC,SAAA,iBAAiB,oBAAoBH,CAAkB,GAEzD,MAAM,SAAS,oBAAoB,oBAAoBA,CAAkB,IAC/E,CAACA,CAAkB,CAAC,GAEhBH;AACT,GAEAO,IAAeR;"}
|
|
@@ -15,7 +15,10 @@ const _ = {
|
|
|
15
15
|
DESMOS_CALCULATOR: 2,
|
|
16
16
|
GOAL_CHAPTER_SHEETS_MENU: 4,
|
|
17
17
|
JOURNEY_OVERLAY: 1e3,
|
|
18
|
-
CHAPTER_COMPLETED_LOTTIE: 5
|
|
18
|
+
CHAPTER_COMPLETED_LOTTIE: 5,
|
|
19
|
+
EXTEND_CLASS_ANIMATION_1: 24,
|
|
20
|
+
EXTEND_CLASS_ANIMATION_2: 25,
|
|
21
|
+
EXTEND_CLASS_ANIMATION_3: 26
|
|
19
22
|
};
|
|
20
23
|
export {
|
|
21
24
|
_ as ZINDEX
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"z-index.js","sources":["../../../../src/features/ui/constants/z-index.ts"],"sourcesContent":["const ZINDEX = {\n CHAPTER_CROWN_ICON: 4,\n CHAPTER_PLUS_ICON: 2,\n CHAPTER_PROGRESS_SVG: 2,\n LPAR_SHEET_ITEM_BOTTOM_DASH_BOX: 1,\n LPAR_SHEET_ITEM_TOP_VERTICAL_ICON: 2,\n MODAL: 20,\n SAT_SUMMARY_SCORE: 25, //* SAT_SUMMARY_SCORE > MODAL\n CANVAS_SCRIBBLING: 26, //* CANVAS_SCRIBBLING > Learnosity\n TILE_CONTAINER: 30, //whiteboard\n QUESTION_TIPS: -1,\n DESMOS_CALCULATOR: 2,\n GOAL_CHAPTER_SHEETS_MENU: 4,\n JOURNEY_OVERLAY: 1000,\n CHAPTER_COMPLETED_LOTTIE: 5,\n} as const;\n\nexport { ZINDEX };\n"],"names":["ZINDEX"],"mappings":"AAAA,MAAMA,IAAS;AAAA,EACb,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,OAAO;AAAA,EACP,mBAAmB;AAAA;AAAA,EACnB,mBAAmB;AAAA;AAAA,EACnB,gBAAgB;AAAA;AAAA,EAChB,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,0BAA0B;AAAA,EAC1B,iBAAiB;AAAA,EACjB,0BAA0B;AAC5B;"}
|
|
1
|
+
{"version":3,"file":"z-index.js","sources":["../../../../src/features/ui/constants/z-index.ts"],"sourcesContent":["const ZINDEX = {\n CHAPTER_CROWN_ICON: 4,\n CHAPTER_PLUS_ICON: 2,\n CHAPTER_PROGRESS_SVG: 2,\n LPAR_SHEET_ITEM_BOTTOM_DASH_BOX: 1,\n LPAR_SHEET_ITEM_TOP_VERTICAL_ICON: 2,\n MODAL: 20,\n SAT_SUMMARY_SCORE: 25, //* SAT_SUMMARY_SCORE > MODAL\n CANVAS_SCRIBBLING: 26, //* CANVAS_SCRIBBLING > Learnosity\n TILE_CONTAINER: 30, //whiteboard\n QUESTION_TIPS: -1,\n DESMOS_CALCULATOR: 2,\n GOAL_CHAPTER_SHEETS_MENU: 4,\n JOURNEY_OVERLAY: 1000,\n CHAPTER_COMPLETED_LOTTIE: 5,\n EXTEND_CLASS_ANIMATION_1: 24,\n EXTEND_CLASS_ANIMATION_2: 25,\n EXTEND_CLASS_ANIMATION_3: 26,\n} as const;\n\nexport { ZINDEX };\n"],"names":["ZINDEX"],"mappings":"AAAA,MAAMA,IAAS;AAAA,EACb,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,OAAO;AAAA,EACP,mBAAmB;AAAA;AAAA,EACnB,mBAAmB;AAAA;AAAA,EACnB,gBAAgB;AAAA;AAAA,EAChB,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,0BAA0B;AAAA,EAC1B,iBAAiB;AAAA,EACjB,0BAA0B;AAAA,EAC1B,0BAA0B;AAAA,EAC1B,0BAA0B;AAAA,EAC1B,0BAA0B;AAC5B;"}
|
|
@@ -10,6 +10,7 @@ const a = o.div`
|
|
|
10
10
|
height: 100%;
|
|
11
11
|
z-index: ${({ $zIndex: t }) => t ?? 999};
|
|
12
12
|
pointer-events: ${({ $isOpen: t }) => t ? "auto" : "none"};
|
|
13
|
+
overflow: hidden;
|
|
13
14
|
`, s = o(e)`
|
|
14
15
|
position: absolute;
|
|
15
16
|
top: 0;
|
|
@@ -19,7 +20,8 @@ const a = o.div`
|
|
|
19
20
|
transform: ${({ $isOpen: t, $position: i }) => t ? "translateX(0)" : i === "left" ? "translateX(-100%)" : "translateX(100%)"};
|
|
20
21
|
transition: transform 0.3s ease-in-out;
|
|
21
22
|
height: 100%;
|
|
22
|
-
|
|
23
|
+
overflow-y: auto;
|
|
24
|
+
`, l = o(e)`
|
|
23
25
|
position: absolute;
|
|
24
26
|
inset: 0;
|
|
25
27
|
backdrop-filter: blur(40px);
|
|
@@ -27,7 +29,7 @@ const a = o.div`
|
|
|
27
29
|
transition: opacity 0.3s ease-in-out;
|
|
28
30
|
`;
|
|
29
31
|
export {
|
|
30
|
-
|
|
32
|
+
l as DrawerBackdrop,
|
|
31
33
|
a as DrawerContainer,
|
|
32
34
|
s as DrawerPanel
|
|
33
35
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawer-styled.js","sources":["../../../../src/features/ui/drawer/drawer-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\n\ninterface DrawerContainerProps {\n $isOpen: boolean;\n $position: 'left' | 'right';\n $zIndex?: number;\n}\n\ninterface DrawerPanelProps extends DrawerContainerProps {\n $drawerWidth: number | string;\n}\n\nexport const DrawerContainer = styled.div<DrawerContainerProps>`\n position: fixed;\n top: 0;\n bottom: 0;\n left: ${({ $position }) => ($position === 'left' ? 0 : 'auto')};\n right: ${({ $position }) => ($position === 'right' ? 0 : 'auto')};\n width: 100%;\n height: 100%;\n z-index: ${({ $zIndex }) => $zIndex ?? 999};\n pointer-events: ${({ $isOpen }) => ($isOpen ? 'auto' : 'none')};\n`;\n\nexport const DrawerPanel = styled(FlexView)<DrawerPanelProps>`\n position: absolute;\n top: 0;\n bottom: 0;\n ${({ $position }) => ($position === 'left' ? 'left: 0;' : 'right: 0;')}\n width: ${({ $drawerWidth }) =>\n typeof $drawerWidth === 'number' ? `${$drawerWidth}px` : $drawerWidth};\n transform: ${({ $isOpen, $position }) =>\n $isOpen ? 'translateX(0)' : $position === 'left' ? 'translateX(-100%)' : 'translateX(100%)'};\n transition: transform 0.3s ease-in-out;\n height: 100%;\n`;\n\nexport const DrawerBackdrop = styled(FlexView)<{ $isOpen: boolean }>`\n position: absolute;\n inset: 0;\n backdrop-filter: blur(40px);\n opacity: ${({ $isOpen }) => ($isOpen ? 1 : 0)};\n transition: opacity 0.3s ease-in-out;\n`;\n"],"names":["DrawerContainer","styled","$position","$zIndex","$isOpen","DrawerPanel","FlexView","$drawerWidth","DrawerBackdrop"],"mappings":";;AAcO,MAAMA,IAAkBC,EAAO;AAAA;AAAA;AAAA;AAAA,UAI5B,CAAC,EAAE,WAAAC,QAAiBA,MAAc,SAAS,IAAI,MAAO;AAAA,WACrD,CAAC,EAAE,WAAAA,QAAiBA,MAAc,UAAU,IAAI,MAAO;AAAA;AAAA;AAAA,aAGrD,CAAC,EAAE,SAAAC,QAAcA,KAAW,GAAG;AAAA,oBACxB,CAAC,EAAE,SAAAC,EAAA,MAAeA,IAAU,SAAS,MAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"drawer-styled.js","sources":["../../../../src/features/ui/drawer/drawer-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\n\ninterface DrawerContainerProps {\n $isOpen: boolean;\n $position: 'left' | 'right';\n $zIndex?: number;\n}\n\ninterface DrawerPanelProps extends DrawerContainerProps {\n $drawerWidth: number | string;\n}\n\nexport const DrawerContainer = styled.div<DrawerContainerProps>`\n position: fixed;\n top: 0;\n bottom: 0;\n left: ${({ $position }) => ($position === 'left' ? 0 : 'auto')};\n right: ${({ $position }) => ($position === 'right' ? 0 : 'auto')};\n width: 100%;\n height: 100%;\n z-index: ${({ $zIndex }) => $zIndex ?? 999};\n pointer-events: ${({ $isOpen }) => ($isOpen ? 'auto' : 'none')};\n overflow: hidden;\n`;\n\nexport const DrawerPanel = styled(FlexView)<DrawerPanelProps>`\n position: absolute;\n top: 0;\n bottom: 0;\n ${({ $position }) => ($position === 'left' ? 'left: 0;' : 'right: 0;')}\n width: ${({ $drawerWidth }) =>\n typeof $drawerWidth === 'number' ? `${$drawerWidth}px` : $drawerWidth};\n transform: ${({ $isOpen, $position }) =>\n $isOpen ? 'translateX(0)' : $position === 'left' ? 'translateX(-100%)' : 'translateX(100%)'};\n transition: transform 0.3s ease-in-out;\n height: 100%;\n overflow-y: auto;\n`;\n\nexport const DrawerBackdrop = styled(FlexView)<{ $isOpen: boolean }>`\n position: absolute;\n inset: 0;\n backdrop-filter: blur(40px);\n opacity: ${({ $isOpen }) => ($isOpen ? 1 : 0)};\n transition: opacity 0.3s ease-in-out;\n`;\n"],"names":["DrawerContainer","styled","$position","$zIndex","$isOpen","DrawerPanel","FlexView","$drawerWidth","DrawerBackdrop"],"mappings":";;AAcO,MAAMA,IAAkBC,EAAO;AAAA;AAAA;AAAA;AAAA,UAI5B,CAAC,EAAE,WAAAC,QAAiBA,MAAc,SAAS,IAAI,MAAO;AAAA,WACrD,CAAC,EAAE,WAAAA,QAAiBA,MAAc,UAAU,IAAI,MAAO;AAAA;AAAA;AAAA,aAGrD,CAAC,EAAE,SAAAC,QAAcA,KAAW,GAAG;AAAA,oBACxB,CAAC,EAAE,SAAAC,EAAA,MAAeA,IAAU,SAAS,MAAO;AAAA;AAAA,GAInDC,IAAcJ,EAAOK,CAAQ;AAAA;AAAA;AAAA;AAAA,IAItC,CAAC,EAAE,WAAAJ,QAAiBA,MAAc,SAAS,aAAa,WAAY;AAAA,WAC7D,CAAC,EAAE,cAAAK,EACV,MAAA,OAAOA,KAAiB,WAAW,GAAGA,CAAY,OAAOA,CAAY;AAAA,eAC1D,CAAC,EAAE,SAAAH,GAAS,WAAAF,QACvBE,IAAU,kBAAkBF,MAAc,SAAS,sBAAsB,kBAAkB;AAAA;AAAA;AAAA;AAAA,GAMlFM,IAAiBP,EAAOK,CAAQ;AAAA;AAAA;AAAA;AAAA,aAIhC,CAAC,EAAE,SAAAF,EAAA,MAAeA,IAAU,IAAI,CAAE;AAAA;AAAA;"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { addYears as
|
|
2
|
-
const
|
|
3
|
-
const
|
|
4
|
-
return o > 0 ? `${
|
|
5
|
-
},
|
|
6
|
-
let
|
|
7
|
-
return { promise: new Promise((
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
}), timerId:
|
|
12
|
-
},
|
|
13
|
-
const
|
|
14
|
-
return Math.floor(
|
|
1
|
+
import { addYears as m } from "../../node_modules/date-fns/addYears.js";
|
|
2
|
+
const c = (t) => Array.isArray(t) && t.length > 0, l = (t, e = !0) => {
|
|
3
|
+
const r = (s) => s.toString().padStart(2, "0"), o = Math.floor(t / 3600), n = Math.floor(t % 3600 / 60), a = t % 60;
|
|
4
|
+
return e ? o > 0 ? `${r(o)}:${r(n)}:${r(a)}` : `${r(n)}:${r(a)}` : `${r(n)}:${r(a)}`;
|
|
5
|
+
}, p = (t) => {
|
|
6
|
+
let e = null;
|
|
7
|
+
return { promise: new Promise((o) => {
|
|
8
|
+
e = setTimeout(() => {
|
|
9
|
+
o("resolved");
|
|
10
|
+
}, t);
|
|
11
|
+
}), timerId: e };
|
|
12
|
+
}, u = () => {
|
|
13
|
+
const e = m(/* @__PURE__ */ new Date(), 1);
|
|
14
|
+
return Math.floor(e.getTime() / 1e3);
|
|
15
15
|
};
|
|
16
16
|
export {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
p as delay,
|
|
18
|
+
u as epochTimestampAfterOneYear,
|
|
19
|
+
l as formatTimeInHHMMSS,
|
|
20
|
+
c as isNonEmptyArray
|
|
21
21
|
};
|
|
22
22
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../src/features/utils/utils.ts"],"sourcesContent":["import { addYears } from 'date-fns';\n\nconst isNonEmptyArray = (array: unknown) => {\n return Array.isArray(array) && array.length > 0;\n};\n\n// format the time in HH:MM:SS\nconst formatTimeInHHMMSS = (seconds: number) => {\n const pad = (num: number) => num.toString().padStart(2, '0');\n\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = seconds % 60;\n\n return h > 0 ? `${pad(h)}:${pad(m)}:${pad(s)}` : `${pad(m)}:${pad(s)}`;\n};\n\nconst delay = (delayInMs: number) => {\n let timerId: ReturnType<typeof setTimeout> | null = null;\n const promise = new Promise(res => {\n timerId = setTimeout(() => {\n res('resolved');\n }, delayInMs);\n });\n\n return { promise, timerId };\n};\n\nconst epochTimestampAfterOneYear = () => {\n const today = new Date();\n const oneYearLater = addYears(today, 1);\n\n return Math.floor(oneYearLater.getTime() / 1000);\n};\n\nexport { isNonEmptyArray, formatTimeInHHMMSS, delay, epochTimestampAfterOneYear };\n"],"names":["isNonEmptyArray","array","formatTimeInHHMMSS","seconds","pad","num","h","m","s","delay","delayInMs","timerId","res","epochTimestampAfterOneYear","oneYearLater","addYears"],"mappings":";AAEM,MAAAA,IAAkB,CAACC,MAChB,MAAM,QAAQA,CAAK,KAAKA,EAAM,SAAS,GAI1CC,IAAqB,CAACC,
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../src/features/utils/utils.ts"],"sourcesContent":["import { addYears } from 'date-fns';\n\nconst isNonEmptyArray = (array: unknown) => {\n return Array.isArray(array) && array.length > 0;\n};\n\n// format the time in HH:MM:SS\nconst formatTimeInHHMMSS = (seconds: number, includeHours: boolean = true) => {\n const pad = (num: number) => num.toString().padStart(2, '0');\n\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = seconds % 60;\n\n if (!includeHours) {\n return `${pad(m)}:${pad(s)}`;\n }\n\n return h > 0 ? `${pad(h)}:${pad(m)}:${pad(s)}` : `${pad(m)}:${pad(s)}`;\n};\n\nconst delay = (delayInMs: number) => {\n let timerId: ReturnType<typeof setTimeout> | null = null;\n const promise = new Promise(res => {\n timerId = setTimeout(() => {\n res('resolved');\n }, delayInMs);\n });\n\n return { promise, timerId };\n};\n\nconst epochTimestampAfterOneYear = () => {\n const today = new Date();\n const oneYearLater = addYears(today, 1);\n\n return Math.floor(oneYearLater.getTime() / 1000);\n};\n\nexport { isNonEmptyArray, formatTimeInHHMMSS, delay, epochTimestampAfterOneYear };\n"],"names":["isNonEmptyArray","array","formatTimeInHHMMSS","seconds","includeHours","pad","num","h","m","s","delay","delayInMs","timerId","res","epochTimestampAfterOneYear","oneYearLater","addYears"],"mappings":";AAEM,MAAAA,IAAkB,CAACC,MAChB,MAAM,QAAQA,CAAK,KAAKA,EAAM,SAAS,GAI1CC,IAAqB,CAACC,GAAiBC,IAAwB,OAAS;AACtE,QAAAC,IAAM,CAACC,MAAgBA,EAAI,WAAW,SAAS,GAAG,GAAG,GAErDC,IAAI,KAAK,MAAMJ,IAAU,IAAI,GAC7BK,IAAI,KAAK,MAAOL,IAAU,OAAQ,EAAE,GACpCM,IAAIN,IAAU;AAEpB,SAAKC,IAIEG,IAAI,IAAI,GAAGF,EAAIE,CAAC,CAAC,IAAIF,EAAIG,CAAC,CAAC,IAAIH,EAAII,CAAC,CAAC,KAAK,GAAGJ,EAAIG,CAAC,CAAC,IAAIH,EAAII,CAAC,CAAC,KAH3D,GAAGJ,EAAIG,CAAC,CAAC,IAAIH,EAAII,CAAC,CAAC;AAI9B,GAEMC,IAAQ,CAACC,MAAsB;AACnC,MAAIC,IAAgD;AAO7C,SAAA,EAAE,SANO,IAAI,QAAQ,CAAOC,MAAA;AACjC,IAAAD,IAAU,WAAW,MAAM;AACzB,MAAAC,EAAI,UAAU;AAAA,OACbF,CAAS;AAAA,EAAA,CACb,GAEiB,SAAAC;AACpB,GAEME,IAA6B,MAAM;AAEjC,QAAAC,IAAeC,sBADH,QACmB,CAAC;AAEtC,SAAO,KAAK,MAAMD,EAAa,YAAY,GAAI;AACjD;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -320,10 +320,14 @@ export declare const CircularStepWrapper: NamedExoticComponent<ICircularStepWrap
|
|
|
320
320
|
|
|
321
321
|
export declare const ClaimUserAccount: NamedExoticComponent<IClaimUserAccountProps>;
|
|
322
322
|
|
|
323
|
+
export declare const ClassTime: MemoExoticComponent<(props: IClassTimeProps) => JSX.Element | null>;
|
|
324
|
+
|
|
323
325
|
export declare const Clickable: React_2.FC<IClickableProps>;
|
|
324
326
|
|
|
325
327
|
export declare const ClipboardIcon: React.FC<React.SVGProps<SVGSVGElement>>;
|
|
326
328
|
|
|
329
|
+
export declare const Clock: MemoExoticComponent<({ completionTime, onComplete, startedOn, textVariant, textColor, }: IClockProps) => JSX.Element | null>;
|
|
330
|
+
|
|
327
331
|
export declare const Clock2Icon: React.FC<React.SVGProps<SVGSVGElement>>;
|
|
328
332
|
|
|
329
333
|
export declare const ClockIcon: React.FC<React.SVGProps<SVGSVGElement>>;
|
|
@@ -569,6 +573,8 @@ declare interface FlexViewProps {
|
|
|
569
573
|
$flex?: number;
|
|
570
574
|
}
|
|
571
575
|
|
|
576
|
+
export declare const formatTimeInHHMMSS: (seconds: number, includeHours?: boolean) => string;
|
|
577
|
+
|
|
572
578
|
export declare interface Game extends BaseProject {
|
|
573
579
|
isPlayed: boolean;
|
|
574
580
|
}
|
|
@@ -628,6 +634,7 @@ export declare const GIF: {
|
|
|
628
634
|
GAMES: string;
|
|
629
635
|
JIGII_WAVE: string;
|
|
630
636
|
LEARNING_SESSION: string;
|
|
637
|
+
LEARNING_SESSION_GRID_BG: string;
|
|
631
638
|
MAX_WAVE: string;
|
|
632
639
|
PUZZLES: string;
|
|
633
640
|
SCHOOL_SUCCESS: string;
|
|
@@ -641,7 +648,9 @@ export declare const GIF: {
|
|
|
641
648
|
TRACK_PROGRESS: string;
|
|
642
649
|
VINNIE_WAVE: string;
|
|
643
650
|
WAY_FORWARD: string;
|
|
651
|
+
WAY_FORWARD_GRID_BG: string;
|
|
644
652
|
YOUR_GOALS: string;
|
|
653
|
+
YOUR_GOALS_GRID_BG: string;
|
|
645
654
|
};
|
|
646
655
|
|
|
647
656
|
declare const GOAL_CATEGORY: {
|
|
@@ -1272,6 +1281,25 @@ export declare interface IClassTimeAlertConfig {
|
|
|
1272
1281
|
onComplete: () => void;
|
|
1273
1282
|
}
|
|
1274
1283
|
|
|
1284
|
+
declare interface IClassTimeProps {
|
|
1285
|
+
backgroundColor?: TColorNames;
|
|
1286
|
+
onAnimation?: () => void;
|
|
1287
|
+
onComplete?: () => void;
|
|
1288
|
+
onExtendClass?: () => void;
|
|
1289
|
+
onExtendedTimeStart?: () => void;
|
|
1290
|
+
onTMinusOne?: () => void;
|
|
1291
|
+
showExtendIcon?: boolean;
|
|
1292
|
+
showExtendText?: boolean;
|
|
1293
|
+
status?: {
|
|
1294
|
+
class_duration: number;
|
|
1295
|
+
classStartedTime: Date;
|
|
1296
|
+
extended_time: number;
|
|
1297
|
+
ongoing: boolean;
|
|
1298
|
+
} | null;
|
|
1299
|
+
updateWithExtendedTime?: boolean;
|
|
1300
|
+
multiReminders: MultiReminder[];
|
|
1301
|
+
}
|
|
1302
|
+
|
|
1275
1303
|
export declare interface IClickableAnalyticsProps {
|
|
1276
1304
|
label?: string;
|
|
1277
1305
|
analyticsLabel?: string;
|
|
@@ -1285,6 +1313,14 @@ declare interface IClickableProps extends IClickableAnalyticsProps {
|
|
|
1285
1313
|
children: React_2.ReactNode;
|
|
1286
1314
|
}
|
|
1287
1315
|
|
|
1316
|
+
declare interface IClockProps {
|
|
1317
|
+
completionTime?: number | null;
|
|
1318
|
+
onComplete?: () => void;
|
|
1319
|
+
startedOn: Date;
|
|
1320
|
+
textVariant?: TTextVariants;
|
|
1321
|
+
textColor?: TColorNames;
|
|
1322
|
+
}
|
|
1323
|
+
|
|
1288
1324
|
declare interface ICoachMarkCompletion {
|
|
1289
1325
|
CIRCLE_ACTIVITIES_INTRO_JOURNEY: boolean;
|
|
1290
1326
|
CIRCLE_LEADERBOARD_INTRO_JOURNEY: boolean;
|
|
@@ -2118,13 +2154,19 @@ export declare const ILLUSTRATIONS: {
|
|
|
2118
2154
|
ALIEN_2: string;
|
|
2119
2155
|
ALIEN_3: string;
|
|
2120
2156
|
ALIEN_4: string;
|
|
2157
|
+
ARROW_BOARD_GREEN: string;
|
|
2121
2158
|
BLUE_CLIP: string;
|
|
2159
|
+
BOOK_CHECKED_GREEN: string;
|
|
2160
|
+
BOOK_CHECKED_ORANGE: string;
|
|
2161
|
+
BOOK_CHECKED_PURPLE: string;
|
|
2122
2162
|
BOOK_GREEN: string;
|
|
2123
2163
|
BOOK_OPEN_BLUE: string;
|
|
2124
2164
|
BOOK_ORANGE: string;
|
|
2125
2165
|
BOOK_YELLOW: string;
|
|
2126
2166
|
BULLET_YELLOW: string;
|
|
2127
2167
|
CALENDAR_BLUE: string;
|
|
2168
|
+
CALENDAR_CHECK_GREEN: string;
|
|
2169
|
+
CALENDAR_CROSS_ORANGE: string;
|
|
2128
2170
|
CALENDAR_GRAY: string;
|
|
2129
2171
|
CALENDAR_GREEN: string;
|
|
2130
2172
|
CALENDAR_PURPLE: string;
|
|
@@ -2158,6 +2200,7 @@ export declare const ILLUSTRATIONS: {
|
|
|
2158
2200
|
DURATION_90MIN_GRAY: string;
|
|
2159
2201
|
EARTH_GREEN: string;
|
|
2160
2202
|
ELLIPSE_CLIP: string;
|
|
2203
|
+
EQUAL_OUTLINED: string;
|
|
2161
2204
|
FEMALE_AVATAR: string;
|
|
2162
2205
|
GAME_PLAY: string;
|
|
2163
2206
|
GLOBE_WITH_BLUE_FILL: string;
|
|
@@ -2168,6 +2211,9 @@ export declare const ILLUSTRATIONS: {
|
|
|
2168
2211
|
GREEN_BALLOON: string;
|
|
2169
2212
|
GREEN_FACE: string;
|
|
2170
2213
|
HANDSHAKE: string;
|
|
2214
|
+
HANDSHAKE_GREEN: string;
|
|
2215
|
+
HEART_OUTLINED: string;
|
|
2216
|
+
KNOWLEDGE_BLUE: string;
|
|
2171
2217
|
LEARNED_SHIELD_GRAY: string;
|
|
2172
2218
|
LEARNED_SHIELD_GREEN: string;
|
|
2173
2219
|
LEARNT: string;
|
|
@@ -2206,6 +2252,8 @@ export declare const ILLUSTRATIONS: {
|
|
|
2206
2252
|
ORANGE_FACE: string;
|
|
2207
2253
|
PARENT_AVATAR: string;
|
|
2208
2254
|
PEOPLE_WITH_ORANGE_FILL: string;
|
|
2255
|
+
PLATFORM_GREEN: string;
|
|
2256
|
+
PLATFORM_PURPLE: string;
|
|
2209
2257
|
PLAY: string;
|
|
2210
2258
|
PLAY_ICON: string;
|
|
2211
2259
|
POINTS_SUM: string;
|
|
@@ -2221,6 +2269,8 @@ export declare const ILLUSTRATIONS: {
|
|
|
2221
2269
|
PUZZLE_PATTERN_PURPLE: string;
|
|
2222
2270
|
PUZZLE_PATTERN_YELLOW: string;
|
|
2223
2271
|
PUZZLE_STUDENT: string;
|
|
2272
|
+
RADIAL_GRADIENT_BG: string;
|
|
2273
|
+
RADIAL_GRADIENT_BG_2: string;
|
|
2224
2274
|
REFUND_POLICY: string;
|
|
2225
2275
|
REFUND_POLICY_WITH_HEADPHONE: string;
|
|
2226
2276
|
REPORT_404: string;
|
|
@@ -2230,10 +2280,12 @@ export declare const ILLUSTRATIONS: {
|
|
|
2230
2280
|
SMILEY: string;
|
|
2231
2281
|
STAR_ORANGE: string;
|
|
2232
2282
|
STAR_ORANGE_FILLED: string;
|
|
2283
|
+
STAR_OUTLINED: string;
|
|
2233
2284
|
STAR_WITH_GREEN_FILL: string;
|
|
2234
2285
|
STREAK_GREEN: string;
|
|
2235
2286
|
STREAK_WHITE: string;
|
|
2236
2287
|
STRIPE_BLURPLE: string;
|
|
2288
|
+
STUDENT_AVATAR: string;
|
|
2237
2289
|
TEST_DIFFICULTY_EASY: string;
|
|
2238
2290
|
TEST_DIFFICULTY_HARD: string;
|
|
2239
2291
|
TEST_DIFFICULTY_MEDIUM: string;
|
|
@@ -2243,6 +2295,7 @@ export declare const ILLUSTRATIONS: {
|
|
|
2243
2295
|
TROPHY_BLUE_FILLED: string;
|
|
2244
2296
|
TROPHY_CIRCLE: string;
|
|
2245
2297
|
TROPHY_GREEN: string;
|
|
2298
|
+
TROPHY_OUTLINED: string;
|
|
2246
2299
|
TRUSTPILOT: string;
|
|
2247
2300
|
TWO_STARS_FILLED: string;
|
|
2248
2301
|
UP_ARROW: string;
|
|
@@ -3824,6 +3877,18 @@ declare interface ITimeLeftTimelineProps {
|
|
|
3824
3877
|
showRemainingTime?: boolean;
|
|
3825
3878
|
}
|
|
3826
3879
|
|
|
3880
|
+
declare interface ITimerProps {
|
|
3881
|
+
styledTimer?: boolean;
|
|
3882
|
+
backgroundColor?: TColorNames;
|
|
3883
|
+
endTime: number;
|
|
3884
|
+
onComplete?: () => void;
|
|
3885
|
+
onReminder?: () => void;
|
|
3886
|
+
reminder?: number;
|
|
3887
|
+
iconColor?: TColorNames;
|
|
3888
|
+
textColor?: TColorNames;
|
|
3889
|
+
textVariant?: TTextVariants;
|
|
3890
|
+
}
|
|
3891
|
+
|
|
3827
3892
|
declare interface ITimeStampsResponseModel {
|
|
3828
3893
|
current: number;
|
|
3829
3894
|
start_timestamp: number;
|
|
@@ -4496,6 +4561,7 @@ export declare const LOTTIE: {
|
|
|
4496
4561
|
BRONZE_1: string;
|
|
4497
4562
|
BRONZE_2: string;
|
|
4498
4563
|
BRONZE_3: string;
|
|
4564
|
+
CALENDAR_HOUR_GLASS_ORANGE: string;
|
|
4499
4565
|
CENT: string;
|
|
4500
4566
|
CHAPTER_COMPLETED: string;
|
|
4501
4567
|
CIRCULAR_LOADER: string;
|
|
@@ -4601,6 +4667,8 @@ export declare const LOTTIE: {
|
|
|
4601
4667
|
TABLE_MODE_STAR: string;
|
|
4602
4668
|
TABLE_SEGMENT_STAR: string;
|
|
4603
4669
|
TARGET_ACHIEVED_TEXT: string;
|
|
4670
|
+
TEACHER_FOUND: string;
|
|
4671
|
+
TEACHER_SEARCH: string;
|
|
4604
4672
|
TEACHER_VALIDATION: string;
|
|
4605
4673
|
TEST: string;
|
|
4606
4674
|
TOTAL_STREAK: string;
|
|
@@ -4652,6 +4720,13 @@ export declare const MoreVerticalIcon: React.FC<React.SVGProps<SVGSVGElement>>;
|
|
|
4652
4720
|
|
|
4653
4721
|
export declare const MorningIcon: React.FC<React.SVGProps<SVGSVGElement>>;
|
|
4654
4722
|
|
|
4723
|
+
declare interface MultiReminder {
|
|
4724
|
+
at: number;
|
|
4725
|
+
callback: () => void;
|
|
4726
|
+
id?: string;
|
|
4727
|
+
persist?: boolean;
|
|
4728
|
+
}
|
|
4729
|
+
|
|
4655
4730
|
export declare const MultiTabBlocker: FC<PropsWithChildren<IMultiTabBlockerProps>>;
|
|
4656
4731
|
|
|
4657
4732
|
export declare const Next2Icon: React.FC<React.SVGProps<SVGSVGElement>>;
|
|
@@ -5510,6 +5585,8 @@ export declare const TickIcon: React.FC<React.SVGProps<SVGSVGElement>>;
|
|
|
5510
5585
|
*/
|
|
5511
5586
|
export declare const TimeLeftTimeline: React_2.FC<ITimeLeftTimelineProps>;
|
|
5512
5587
|
|
|
5588
|
+
export declare const Timer: MemoExoticComponent<({ styledTimer, backgroundColor, endTime, onComplete, onReminder, reminder, iconColor, textColor, textVariant, }: ITimerProps) => JSX.Element>;
|
|
5589
|
+
|
|
5513
5590
|
export declare type TInclassChannelMetadata = {
|
|
5514
5591
|
syncModule?: {
|
|
5515
5592
|
name: 'MILESTONE_CREATE' | 'MILESTONE_EDIT' | 'MILESTONE_REVIEW';
|
|
@@ -6611,6 +6688,12 @@ export declare const useTrialSessionMessageBroker: IUseTrialSessionMessageBroker
|
|
|
6611
6688
|
|
|
6612
6689
|
export declare const useUIContext: () => UIContextProps;
|
|
6613
6690
|
|
|
6691
|
+
/**
|
|
6692
|
+
* Custom hook to detect visibility change of the document.
|
|
6693
|
+
* Returns true if the document is visible, false otherwise.
|
|
6694
|
+
*/
|
|
6695
|
+
export declare const useVisibilityChange: () => boolean;
|
|
6696
|
+
|
|
6614
6697
|
export declare const useWorksheetLayout: IUseWorksheetLayout;
|
|
6615
6698
|
|
|
6616
6699
|
export declare const useZoomDisable: () => void;
|
|
@@ -6679,6 +6762,9 @@ declare const ZINDEX: {
|
|
|
6679
6762
|
readonly GOAL_CHAPTER_SHEETS_MENU: 4;
|
|
6680
6763
|
readonly JOURNEY_OVERLAY: 1000;
|
|
6681
6764
|
readonly CHAPTER_COMPLETED_LOTTIE: 5;
|
|
6765
|
+
readonly EXTEND_CLASS_ANIMATION_1: 24;
|
|
6766
|
+
readonly EXTEND_CLASS_ANIMATION_2: 25;
|
|
6767
|
+
readonly EXTEND_CLASS_ANIMATION_3: 26;
|
|
6682
6768
|
};
|
|
6683
6769
|
|
|
6684
6770
|
export { }
|