@cuemath/leap 2.8.24 → 2.8.25-link.0
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/lottie/lottie.js +61 -0
- package/dist/assets/lottie/lottie.js.map +1 -0
- package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js +81 -79
- package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js.map +1 -1
- package/dist/features/circle-games/game-launcher/game-launcher.js +61 -65
- package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/banner/banner.js +35 -53
- package/dist/features/circle-games/leaderboard/comps/banner/banner.js.map +1 -1
- package/dist/features/circle-games/leaderboard/leaderboard.js +56 -55
- package/dist/features/circle-games/leaderboard/leaderboard.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js +40 -41
- package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/spinner/spinner-styled.js +4 -8
- package/dist/features/circle-games/sign-up/comp/spinner/spinner-styled.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/spinner/spinner.js +6 -23
- package/dist/features/circle-games/sign-up/comp/spinner/spinner.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js +40 -35
- package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/difficulty-and-duration-selection.js +2 -2
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-card-lottie-animation.js +8 -23
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-card-lottie-animation.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js +11 -11
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js +37 -43
- package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js.map +1 -1
- package/dist/features/post-game-stats/accuracy/accuracy.js +38 -34
- package/dist/features/post-game-stats/accuracy/accuracy.js.map +1 -1
- package/dist/features/post-game-stats/clock/clock.js +43 -39
- package/dist/features/post-game-stats/clock/clock.js.map +1 -1
- package/dist/features/post-game-stats/points/points.js +43 -44
- package/dist/features/post-game-stats/points/points.js.map +1 -1
- package/dist/features/post-game-stats/streak/streak.js +30 -28
- package/dist/features/post-game-stats/streak/streak.js.map +1 -1
- package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js +56 -54
- package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js.map +1 -1
- package/dist/features/trial-session/comps/parent-app/parent-app.js +25 -20
- package/dist/features/trial-session/comps/parent-app/parent-app.js.map +1 -1
- package/dist/features/trial-session/comps/session-insights/session-insights.js +40 -39
- package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
- package/dist/features/ui/loader/circular-loader/circular-loader.js +16 -20
- package/dist/features/ui/loader/circular-loader/circular-loader.js.map +1 -1
- package/dist/features/ui/lottie-animation/helper.js +13 -0
- package/dist/features/ui/lottie-animation/helper.js.map +1 -0
- package/dist/features/ui/lottie-animation/lottie-animation.js +37 -0
- package/dist/features/ui/lottie-animation/lottie-animation.js.map +1 -0
- package/dist/features/ui/nudge/nudge-styled.js +4 -8
- package/dist/features/ui/nudge/nudge-styled.js.map +1 -1
- package/dist/features/ui/nudge/nudge.js +13 -30
- package/dist/features/ui/nudge/nudge.js.map +1 -1
- package/dist/features/ui/perfect-hits/perfect-hits-helpers.js +22 -20
- package/dist/features/ui/perfect-hits/perfect-hits-helpers.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-permissions/error.js +25 -48
- package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js +12 -26
- package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js.map +1 -1
- package/dist/index.d.ts +58 -0
- package/dist/index.js +466 -464
- package/dist/index.js.map +1 -1
- package/dist/static/accuracy-meter.99585cba.json +4218 -0
- package/dist/static/accuracy-needle.cd6e63ac.json +618 -0
- package/dist/static/beginner1x.489908a7.json +3508 -0
- package/dist/static/bronze-1.da4e4b5f.json +4176 -0
- package/dist/static/bronze-2.97f9c639.json +4433 -0
- package/dist/static/bronze-3.6a433ebd.json +4786 -0
- package/dist/static/circular-loader.a5a1a0a6.json +238 -0
- package/dist/static/clock-30min.eae818b8.json +1197 -0
- package/dist/static/clock-45min.df8adf51.json +1197 -0
- package/dist/static/clock-60min.2b48d875.json +1197 -0
- package/dist/static/clock-90min.3e557ed7.json +1407 -0
- package/dist/static/color-1.45101b9a.json +4545 -0
- package/dist/static/color-2.ccdc7d0a.json +4828 -0
- package/dist/static/color-3.5e8e1422.json +5273 -0
- package/dist/static/difficult.6846c064.json +2755 -0
- package/dist/static/easy-rescheduling-lottie.28026af9.json +9301 -0
- package/dist/static/easy.68242ddd.json +2658 -0
- package/dist/static/elite-circle.3df58972.json +6876 -0
- package/dist/static/error-lottie.b3507a4b.json +5255 -0
- package/dist/static/familiar1x.7c9c7f15.json +3046 -0
- package/dist/static/fifteen-min-clock.0af4e303.json +715 -0
- package/dist/static/five-min-clock.6be5cc41.json +721 -0
- package/dist/static/gold-1.ab2489fe.json +4176 -0
- package/dist/static/gold-2.34045826.json +4441 -0
- package/dist/static/gold-3.d704698b.json +4810 -0
- package/dist/static/levelup-rings.b1055283.json +549 -0
- package/dist/static/medium.94c3829b.json +2289 -0
- package/dist/static/nudge-tap.5cb30093.json +1057 -0
- package/dist/static/point1.b53831de.json +2942 -0
- package/dist/static/point10.7b5e536d.json +3179 -0
- package/dist/static/point100.1df16f82.json +3196 -0
- package/dist/static/point15.fea00c32.json +3179 -0
- package/dist/static/point20.c88d776d.json +3178 -0
- package/dist/static/point25.a18c346a.json +3178 -0
- package/dist/static/point30.c5224b0b.json +3202 -0
- package/dist/static/point35.fad343dd.json +3058 -0
- package/dist/static/point40.10a16f72.json +3082 -0
- package/dist/static/point45.2ad7561f.json +3082 -0
- package/dist/static/point5.da40ed1f.json +2948 -0
- package/dist/static/point50.5718cb3d.json +3046 -0
- package/dist/static/point60.17380d9f.json +3076 -0
- package/dist/static/proficient1x.fa6e7b80.json +3430 -0
- package/dist/static/silver-1.0396328a.json +4168 -0
- package/dist/static/silver-2.bf50615f.json +4433 -0
- package/dist/static/silver-3.13d66b84.json +4810 -0
- package/dist/static/sleepy-boi.031a1165.json +1008 -0
- package/dist/static/spinner-white.639e0d87.json +122 -0
- package/dist/static/splash-screen.bbf567ce.json +2411 -0
- package/dist/static/stay-connected-lottie.111439b3.json +3547 -0
- package/dist/static/teacher-validation.7577ecdc.json +245 -0
- package/dist/static/total-streak.d5ce7669.json +842 -0
- package/dist/static/total-time-spent.434005d3.json +200 -0
- package/dist/static/total-time.d979cbb9.json +24383 -0
- package/dist/static/tournament-ripple.e5c239a5.json +1047 -0
- package/dist/static/track-progress-lottie.422108cf.json +2972 -0
- package/package.json +1 -1
- package/dist/assets/lotties/circle/100pts.json.js +0 -7957
- package/dist/assets/lotties/circle/100pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/10pts.json.js +0 -7753
- package/dist/assets/lotties/circle/10pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/15pts.json.js +0 -7879
- package/dist/assets/lotties/circle/15pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/1pts.json.js +0 -7257
- package/dist/assets/lotties/circle/1pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/20pts.json.js +0 -7845
- package/dist/assets/lotties/circle/20pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/25pts.json.js +0 -7971
- package/dist/assets/lotties/circle/25pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/30pts.json.js +0 -7941
- package/dist/assets/lotties/circle/30pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/35pts.json.js +0 -7881
- package/dist/assets/lotties/circle/35pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/40pts.json.js +0 -7725
- package/dist/assets/lotties/circle/40pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/45pts.json.js +0 -7851
- package/dist/assets/lotties/circle/45pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/50pts.json.js +0 -7707
- package/dist/assets/lotties/circle/50pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/5pts.json.js +0 -7420
- package/dist/assets/lotties/circle/5pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/60pts.json.js +0 -7701
- package/dist/assets/lotties/circle/60pts.json.js.map +0 -1
- package/dist/assets/lotties/circle/accuracy-meter-lottie.json.js +0 -6811
- package/dist/assets/lotties/circle/accuracy-meter-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/accuracy-needle-lottie.json.js +0 -1503
- package/dist/assets/lotties/circle/accuracy-needle-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/circular-loader.json.js +0 -635
- package/dist/assets/lotties/circle/circular-loader.json.js.map +0 -1
- package/dist/assets/lotties/circle/elite-circle-lottie.json.js +0 -12079
- package/dist/assets/lotties/circle/elite-circle-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/levelup-rings-lottie.json.js +0 -1412
- package/dist/assets/lotties/circle/levelup-rings-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/sleepy-boi-lottie.json.js +0 -2632
- package/dist/assets/lotties/circle/sleepy-boi-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/spinner-white.json.js +0 -316
- package/dist/assets/lotties/circle/spinner-white.json.js.map +0 -1
- package/dist/assets/lotties/circle/splash-screen.json.js +0 -5864
- package/dist/assets/lotties/circle/splash-screen.json.js.map +0 -1
- package/dist/assets/lotties/circle/total-streak-lottie.json.js +0 -2103
- package/dist/assets/lotties/circle/total-streak-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/total-time-lottie.json.js +0 -33016
- package/dist/assets/lotties/circle/total-time-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/total-time-spent-lottie.json.js +0 -260
- package/dist/assets/lotties/circle/total-time-spent-lottie.json.js.map +0 -1
- package/dist/assets/lotties/circle/tournament-ripple-lottie.json.js +0 -1563
- package/dist/assets/lotties/circle/tournament-ripple-lottie.json.js.map +0 -1
- package/dist/assets/lotties/common/nudge-tap.json.js +0 -3597
- package/dist/assets/lotties/common/nudge-tap.json.js.map +0 -1
- package/dist/assets/lotties/error-lottie.json.js +0 -12755
- package/dist/assets/lotties/error-lottie.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/bronze-1.json.js +0 -10871
- package/dist/assets/lotties/perfect-hits/bronze-1.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/bronze-2.json.js +0 -11389
- package/dist/assets/lotties/perfect-hits/bronze-2.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/bronze-3.json.js +0 -12169
- package/dist/assets/lotties/perfect-hits/bronze-3.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/color-1.json.js +0 -12348
- package/dist/assets/lotties/perfect-hits/color-1.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/color-2.json.js +0 -12941
- package/dist/assets/lotties/perfect-hits/color-2.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/color-3.json.js +0 -14034
- package/dist/assets/lotties/perfect-hits/color-3.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/gold-1.json.js +0 -10871
- package/dist/assets/lotties/perfect-hits/gold-1.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/gold-2.json.js +0 -11389
- package/dist/assets/lotties/perfect-hits/gold-2.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/gold-3.json.js +0 -12169
- package/dist/assets/lotties/perfect-hits/gold-3.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/silver-1.json.js +0 -10871
- package/dist/assets/lotties/perfect-hits/silver-1.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/silver-2.json.js +0 -11389
- package/dist/assets/lotties/perfect-hits/silver-2.json.js.map +0 -1
- package/dist/assets/lotties/perfect-hits/silver-3.json.js +0 -12169
- package/dist/assets/lotties/perfect-hits/silver-3.json.js.map +0 -1
- package/dist/assets/lotties/teacher-validation.json.js +0 -649
- package/dist/assets/lotties/teacher-validation.json.js.map +0 -1
- package/dist/assets/lotties/tests-creation/clock_30_min.json.js +0 -2857
- package/dist/assets/lotties/tests-creation/clock_30_min.json.js.map +0 -1
- package/dist/assets/lotties/tests-creation/clock_45_min.json.js +0 -2857
- package/dist/assets/lotties/tests-creation/clock_45_min.json.js.map +0 -1
- package/dist/assets/lotties/tests-creation/clock_60_min.json.js +0 -2857
- package/dist/assets/lotties/tests-creation/clock_60_min.json.js.map +0 -1
- package/dist/assets/lotties/tests-creation/clock_90_min.json.js +0 -3345
- package/dist/assets/lotties/tests-creation/clock_90_min.json.js.map +0 -1
- package/dist/assets/lotties/tests-creation/difficult.json.js +0 -6713
- package/dist/assets/lotties/tests-creation/difficult.json.js.map +0 -1
- package/dist/assets/lotties/tests-creation/easy.json.js +0 -6525
- package/dist/assets/lotties/tests-creation/easy.json.js.map +0 -1
- package/dist/assets/lotties/tests-creation/medium.json.js +0 -5603
- package/dist/assets/lotties/tests-creation/medium.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/15min-clock.json.js +0 -2037
- package/dist/assets/lotties/trial-v3/15min-clock.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/5min-clock.json.js +0 -2062
- package/dist/assets/lotties/trial-v3/5min-clock.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/insight/beginner1x.json.js +0 -8517
- package/dist/assets/lotties/trial-v3/insight/beginner1x.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/insight/familiar1x.json.js +0 -7396
- package/dist/assets/lotties/trial-v3/insight/familiar1x.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/insight/proficient1x.json.js +0 -8559
- package/dist/assets/lotties/trial-v3/insight/proficient1x.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json.js +0 -23284
- package/dist/assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/parent-app/stay-connected-lottie.json.js +0 -9090
- package/dist/assets/lotties/trial-v3/parent-app/stay-connected-lottie.json.js.map +0 -1
- package/dist/assets/lotties/trial-v3/parent-app/track-progress-lottie.json.js +0 -8675
- package/dist/assets/lotties/trial-v3/parent-app/track-progress-lottie.json.js.map +0 -1
- package/dist/features/circle-games/game-launcher/comps/segmented-game-card/fetch-lottie.js +0 -13
- package/dist/features/circle-games/game-launcher/comps/segmented-game-card/fetch-lottie.js.map +0 -1
- package/dist/features/circle-games/game-launcher/game-launcher-styled.js +0 -10
- package/dist/features/circle-games/game-launcher/game-launcher-styled.js.map +0 -1
- package/dist/features/post-game-stats/points/points-styled.js +0 -10
- package/dist/features/post-game-stats/points/points-styled.js.map +0 -1
- package/dist/features/trial-session/comps/render-lottie/index.js +0 -26
- package/dist/features/trial-session/comps/render-lottie/index.js.map +0 -1
- package/dist/features/ui/loader/circular-loader/circular-loader-styled.js +0 -17
- package/dist/features/ui/loader/circular-loader/circular-loader-styled.js.map +0 -1
package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"teacher-av-panel.js","sources":["../../../../../../src/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.tsx"],"sourcesContent":["import type { AnimationItem } from 'lottie-web';\nimport type { FC } from 'react';\n\nimport Lottie from 'lottie-web';\nimport { memo, useCallback, useEffect, useRef, useState } from 'react';\n\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { useTrialSessionContext } from '../../../context/use-trial-session-context';\nimport { EClassTimeAlertLevel } from '../../../trial-session-types';\nimport Clock from '../../clock/clock';\nimport CountdownProgressBar from '../../countdown-progress-bar/countdown-progress-bar';\nimport * as Styled from './teacher-av-panel-styled';\n\nconst fiveMinClockLottie = () => import('../../../../../assets/lotties/trial-v3/5min-clock.json');\nconst fifteenMinClockLottie = () =>\n import('../../../../../assets/lotties/trial-v3/15min-clock.json');\n\nconst TeacherAVPanel: FC = memo(() => {\n const {\n teacherPanel,\n classStartedOn,\n isTeacher,\n trialHomeData,\n classTimeAlertConfig,\n classDuration,\n } = useTrialSessionContext();\n const {\n alertLevel: classTimeAlertLevel,\n isVisible: showClassTimeAlert,\n onComplete: onClassTimeAlertComplete,\n } = classTimeAlertConfig ?? {};\n const lottieContainer = useRef<HTMLDivElement>(null);\n const lottieInstance = useRef<AnimationItem | null>(null);\n const [showText, setShowText] = useState(false);\n const [showOverlay, setShowOverlay] = useState(false);\n const [timeLeft, setTimeLeft] = useState(0);\n const timerRef = useRef<NodeJS.Timeout | null>(null);\n const audioRef = useRef<HTMLAudioElement | null>(null);\n\n const { teacher } = trialHomeData;\n const { name } = teacher;\n\n const playClassTimeAlertAnimation = useCallback(\n async (type: string) => {\n if (!lottieContainer.current || !type) return;\n\n try {\n const module = await (type === EClassTimeAlertLevel.FIVE_MIN\n ? fiveMinClockLottie()\n : fifteenMinClockLottie());\n const animationData = module.default;\n\n setShowOverlay(true);\n\n const instance = Lottie.loadAnimation({\n container: lottieContainer.current,\n renderer: 'svg',\n loop: false,\n autoplay: false,\n animationData,\n });\n\n lottieInstance.current = instance;\n lottieInstance.current.play();\n\n if (audioRef.current) {\n audioRef.current.currentTime = 0;\n audioRef.current.play();\n }\n\n setTimeout(() => setShowText(true), 233);\n\n lottieInstance.current.addEventListener('complete', () => {\n lottieInstance.current?.destroy();\n lottieInstance.current = null;\n setShowText(false);\n setShowOverlay(false);\n onClassTimeAlertComplete?.();\n });\n } catch (error) {\n return null;\n }\n },\n [onClassTimeAlertComplete],\n );\n\n const getRemainingTime = useCallback(() => {\n if (!classStartedOn || !classDuration) return 0;\n\n const currentTime = Date.now();\n const startTime = new Date(classStartedOn).getTime();\n const timeRemaining = classDuration - (currentTime - startTime) / 1000;\n\n return timeRemaining;\n }, [classDuration, classStartedOn]);\n\n const updateTimeLeft = useCallback(() => {\n const remainingTime = getRemainingTime();\n\n setTimeLeft(remainingTime);\n }, [getRemainingTime]);\n\n const startCountdownPolling = useCallback(() => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n updateTimeLeft();\n timerRef.current = setInterval(() => {\n updateTimeLeft();\n }, 5000);\n }, [updateTimeLeft]);\n\n useEffect(() => {\n if (classTimeAlertLevel && showClassTimeAlert) {\n playClassTimeAlertAnimation(classTimeAlertLevel);\n }\n }, [classTimeAlertLevel, playClassTimeAlertAnimation, showClassTimeAlert]);\n\n useEffect(() => {\n if (classTimeAlertLevel && classTimeAlertLevel === EClassTimeAlertLevel.FIVE_MIN) {\n startCountdownPolling();\n }\n\n return () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n };\n }, [classTimeAlertLevel, startCountdownPolling]);\n\n useEffect(() => {\n const loadAudio = async (alertLevel: EClassTimeAlertLevel) => {\n const audio = new Audio(\n `https://static.qumath.in/static/intel-student/cmpress/${\n alertLevel === EClassTimeAlertLevel.FIFTEEN_MIN ? '15-min-reminder' : '5-min-reminder'\n }.mp3`,\n );\n\n audioRef.current = audio;\n };\n\n if (classTimeAlertLevel) {\n loadAudio(classTimeAlertLevel);\n }\n\n return () => {\n audioRef.current = null;\n };\n }, [classTimeAlertLevel]);\n\n const showCountdownProgressBar =\n classTimeAlertLevel === EClassTimeAlertLevel.FIVE_MIN && timeLeft > 0 && isTeacher;\n\n return (\n <FlexView $position=\"relative\" $width=\"100%\" $height=\"100%\">\n {teacherPanel}\n {isTeacher && (\n <Styled.AnimationContainer\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"BLACK_T_60\"\n $visible={showOverlay}\n >\n <FlexView ref={lottieContainer} $width={80} $height={80} />\n {classTimeAlertLevel && (\n <Styled.TextFadeIn\n $visible={showText}\n $renderAs=\"ac3\"\n $color=\"WHITE\"\n className=\"fade-in\"\n >\n {classTimeAlertLevel === '15min' ? `15 MIN REMAINING` : `5 MIN REMAINING`}\n </Styled.TextFadeIn>\n )}\n </Styled.AnimationContainer>\n )}\n {showCountdownProgressBar && (\n <Styled.ProgressWrapper $width={'100%'}>\n <CountdownProgressBar value={timeLeft} maxValue={300} />\n </Styled.ProgressWrapper>\n )}\n {classStartedOn && isTeacher && (\n <Styled.TimerWrapper\n $background={\n classTimeAlertLevel === '15min'\n ? 'YELLOW_4'\n : classTimeAlertLevel === '5min'\n ? 'ORANGE_4'\n : 'GREEN_4'\n }\n $gapX={0.25}\n $gutterX={0.5}\n $justifyContent=\"center\"\n >\n <Clock startTime={classStartedOn} textRenderAs=\"ac3\" textColor=\"BLACK_T_87\" />\n </Styled.TimerWrapper>\n )}\n {name && !isTeacher && (\n <Styled.TeacherNameWrapper $gapX={0.75} $gutterX={0.75} $width=\"100%\">\n <Text $renderAs=\"ac3-black\" $color=\"WHITE\">\n {name}\n </Text>\n </Styled.TeacherNameWrapper>\n )}\n </FlexView>\n );\n});\n\nexport default TeacherAVPanel;\n"],"names":["fiveMinClockLottie","fifteenMinClockLottie","TeacherAVPanel","memo","teacherPanel","classStartedOn","isTeacher","trialHomeData","classTimeAlertConfig","classDuration","useTrialSessionContext","classTimeAlertLevel","showClassTimeAlert","onClassTimeAlertComplete","lottieContainer","useRef","lottieInstance","showText","setShowText","useState","showOverlay","setShowOverlay","timeLeft","setTimeLeft","timerRef","audioRef","teacher","name","playClassTimeAlertAnimation","useCallback","type","animationData","EClassTimeAlertLevel","instance","Lottie","_a","getRemainingTime","currentTime","startTime","updateTimeLeft","remainingTime","startCountdownPolling","useEffect","alertLevel","audio","showCountdownProgressBar","FlexView","jsxs","Styled.AnimationContainer","jsx","Styled.TextFadeIn","Styled.ProgressWrapper","CountdownProgressBar","Styled.TimerWrapper","Clock","Styled.TeacherNameWrapper","Text"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"teacher-av-panel.js","sources":["../../../../../../src/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.tsx"],"sourcesContent":["import type { AnimationItem } from 'lottie-web';\nimport type { FC } from 'react';\n\nimport Lottie from 'lottie-web';\nimport { memo, useCallback, useEffect, useRef, useState } from 'react';\n\nimport { LOTTIE } from '../../../../../assets/lottie/lottie';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport { fetchLottie } from '../../../../ui/lottie-animation/helper';\nimport Text from '../../../../ui/text/text';\nimport { useTrialSessionContext } from '../../../context/use-trial-session-context';\nimport { EClassTimeAlertLevel } from '../../../trial-session-types';\nimport Clock from '../../clock/clock';\nimport CountdownProgressBar from '../../countdown-progress-bar/countdown-progress-bar';\nimport * as Styled from './teacher-av-panel-styled';\n\nconst TeacherAVPanel: FC = memo(() => {\n const {\n teacherPanel,\n classStartedOn,\n isTeacher,\n trialHomeData,\n classTimeAlertConfig,\n classDuration,\n } = useTrialSessionContext();\n const {\n alertLevel: classTimeAlertLevel,\n isVisible: showClassTimeAlert,\n onComplete: onClassTimeAlertComplete,\n } = classTimeAlertConfig ?? {};\n const lottieContainer = useRef<HTMLDivElement>(null);\n const lottieInstance = useRef<AnimationItem | null>(null);\n const [showText, setShowText] = useState(false);\n const [showOverlay, setShowOverlay] = useState(false);\n const [timeLeft, setTimeLeft] = useState(0);\n const timerRef = useRef<NodeJS.Timeout | null>(null);\n const audioRef = useRef<HTMLAudioElement | null>(null);\n\n const { teacher } = trialHomeData;\n const { name } = teacher;\n\n const playClassTimeAlertAnimation = useCallback(\n async (type: string) => {\n if (!lottieContainer.current || !type) return;\n\n try {\n const clockLottiePath =\n type === EClassTimeAlertLevel.FIVE_MIN ? LOTTIE.FIVE_MIN_CLOCK : LOTTIE.FIFTEEN_MIN_CLOCK;\n const animationData = await fetchLottie(clockLottiePath);\n\n setShowOverlay(true);\n\n const instance = Lottie.loadAnimation({\n container: lottieContainer.current,\n renderer: 'svg',\n loop: false,\n autoplay: false,\n animationData,\n });\n\n lottieInstance.current = instance;\n lottieInstance.current.play();\n\n if (audioRef.current) {\n audioRef.current.currentTime = 0;\n audioRef.current.play();\n }\n\n setTimeout(() => setShowText(true), 233);\n\n lottieInstance.current.addEventListener('complete', () => {\n lottieInstance.current?.destroy();\n lottieInstance.current = null;\n setShowText(false);\n setShowOverlay(false);\n onClassTimeAlertComplete?.();\n });\n } catch (error) {\n return null;\n }\n },\n [onClassTimeAlertComplete],\n );\n\n const getRemainingTime = useCallback(() => {\n if (!classStartedOn || !classDuration) return 0;\n\n const currentTime = Date.now();\n const startTime = new Date(classStartedOn).getTime();\n const timeRemaining = classDuration - (currentTime - startTime) / 1000;\n\n return timeRemaining;\n }, [classDuration, classStartedOn]);\n\n const updateTimeLeft = useCallback(() => {\n const remainingTime = getRemainingTime();\n\n setTimeLeft(remainingTime);\n }, [getRemainingTime]);\n\n const startCountdownPolling = useCallback(() => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n updateTimeLeft();\n timerRef.current = setInterval(() => {\n updateTimeLeft();\n }, 5000);\n }, [updateTimeLeft]);\n\n useEffect(() => {\n if (classTimeAlertLevel && showClassTimeAlert) {\n playClassTimeAlertAnimation(classTimeAlertLevel);\n }\n }, [classTimeAlertLevel, playClassTimeAlertAnimation, showClassTimeAlert]);\n\n useEffect(() => {\n if (classTimeAlertLevel && classTimeAlertLevel === EClassTimeAlertLevel.FIVE_MIN) {\n startCountdownPolling();\n }\n\n return () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n };\n }, [classTimeAlertLevel, startCountdownPolling]);\n\n useEffect(() => {\n const loadAudio = async (alertLevel: EClassTimeAlertLevel) => {\n const audio = new Audio(\n `https://static.qumath.in/static/intel-student/cmpress/${\n alertLevel === EClassTimeAlertLevel.FIFTEEN_MIN ? '15-min-reminder' : '5-min-reminder'\n }.mp3`,\n );\n\n audioRef.current = audio;\n };\n\n if (classTimeAlertLevel) {\n loadAudio(classTimeAlertLevel);\n }\n\n return () => {\n audioRef.current = null;\n };\n }, [classTimeAlertLevel]);\n\n const showCountdownProgressBar =\n classTimeAlertLevel === EClassTimeAlertLevel.FIVE_MIN && timeLeft > 0 && isTeacher;\n\n return (\n <FlexView $position=\"relative\" $width=\"100%\" $height=\"100%\">\n {teacherPanel}\n {isTeacher && (\n <Styled.AnimationContainer\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"BLACK_T_60\"\n $visible={showOverlay}\n >\n <FlexView ref={lottieContainer} $width={80} $height={80} />\n {classTimeAlertLevel && (\n <Styled.TextFadeIn\n $visible={showText}\n $renderAs=\"ac3\"\n $color=\"WHITE\"\n className=\"fade-in\"\n >\n {classTimeAlertLevel === '15min' ? `15 MIN REMAINING` : `5 MIN REMAINING`}\n </Styled.TextFadeIn>\n )}\n </Styled.AnimationContainer>\n )}\n {showCountdownProgressBar && (\n <Styled.ProgressWrapper $width={'100%'}>\n <CountdownProgressBar value={timeLeft} maxValue={300} />\n </Styled.ProgressWrapper>\n )}\n {classStartedOn && isTeacher && (\n <Styled.TimerWrapper\n $background={\n classTimeAlertLevel === '15min'\n ? 'YELLOW_4'\n : classTimeAlertLevel === '5min'\n ? 'ORANGE_4'\n : 'GREEN_4'\n }\n $gapX={0.25}\n $gutterX={0.5}\n $justifyContent=\"center\"\n >\n <Clock startTime={classStartedOn} textRenderAs=\"ac3\" textColor=\"BLACK_T_87\" />\n </Styled.TimerWrapper>\n )}\n {name && !isTeacher && (\n <Styled.TeacherNameWrapper $gapX={0.75} $gutterX={0.75} $width=\"100%\">\n <Text $renderAs=\"ac3-black\" $color=\"WHITE\">\n {name}\n </Text>\n </Styled.TeacherNameWrapper>\n )}\n </FlexView>\n );\n});\n\nexport default TeacherAVPanel;\n"],"names":["TeacherAVPanel","memo","teacherPanel","classStartedOn","isTeacher","trialHomeData","classTimeAlertConfig","classDuration","useTrialSessionContext","classTimeAlertLevel","showClassTimeAlert","onClassTimeAlertComplete","lottieContainer","useRef","lottieInstance","showText","setShowText","useState","showOverlay","setShowOverlay","timeLeft","setTimeLeft","timerRef","audioRef","teacher","name","playClassTimeAlertAnimation","useCallback","type","clockLottiePath","EClassTimeAlertLevel","LOTTIE","animationData","fetchLottie","instance","Lottie","_a","getRemainingTime","currentTime","startTime","updateTimeLeft","remainingTime","startCountdownPolling","useEffect","alertLevel","audio","showCountdownProgressBar","FlexView","jsxs","Styled.AnimationContainer","jsx","Styled.TextFadeIn","Styled.ProgressWrapper","CountdownProgressBar","Styled.TimerWrapper","Clock","Styled.TeacherNameWrapper","Text"],"mappings":";;;;;;;;;;;;AAgBM,MAAAA,KAAqBC,EAAK,MAAM;AAC9B,QAAA;AAAA,IACJ,cAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,eAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,eAAAC;AAAA,MACEC,EAAuB,GACrB;AAAA,IACJ,YAAYC;AAAA,IACZ,WAAWC;AAAA,IACX,YAAYC;AAAA,EAAA,IACVL,KAAwB,CAAA,GACtBM,IAAkBC,EAAuB,IAAI,GAC7CC,IAAiBD,EAA6B,IAAI,GAClD,CAACE,GAAUC,CAAW,IAAIC,EAAS,EAAK,GACxC,CAACC,GAAaC,CAAc,IAAIF,EAAS,EAAK,GAC9C,CAACG,GAAUC,CAAW,IAAIJ,EAAS,CAAC,GACpCK,IAAWT,EAA8B,IAAI,GAC7CU,IAAWV,EAAgC,IAAI,GAE/C,EAAE,SAAAW,EAAY,IAAAnB,GACd,EAAE,MAAAoB,EAAS,IAAAD,GAEXE,IAA8BC;AAAA,IAClC,OAAOC,MAAiB;AACtB,UAAI,GAAChB,EAAgB,WAAW,CAACgB;AAE7B,YAAA;AACF,gBAAMC,IACJD,MAASE,EAAqB,WAAWC,EAAO,iBAAiBA,EAAO,mBACpEC,IAAgB,MAAMC,EAAYJ,CAAe;AAEvD,UAAAV,EAAe,EAAI;AAEb,gBAAAe,IAAWC,EAAO,cAAc;AAAA,YACpC,WAAWvB,EAAgB;AAAA,YAC3B,UAAU;AAAA,YACV,MAAM;AAAA,YACN,UAAU;AAAA,YACV,eAAAoB;AAAA,UAAA,CACD;AAED,UAAAlB,EAAe,UAAUoB,GACzBpB,EAAe,QAAQ,QAEnBS,EAAS,YACXA,EAAS,QAAQ,cAAc,GAC/BA,EAAS,QAAQ,SAGnB,WAAW,MAAMP,EAAY,EAAI,GAAG,GAAG,GAExBF,EAAA,QAAQ,iBAAiB,YAAY,MAAM;;AACxD,aAAAsB,IAAAtB,EAAe,YAAf,QAAAsB,EAAwB,WACxBtB,EAAe,UAAU,MACzBE,EAAY,EAAK,GACjBG,EAAe,EAAK,GACOR,KAAA,QAAAA;AAAA,UAAA,CAC5B;AAAA,gBACa;AACP,iBAAA;AAAA,QACT;AAAA,IACF;AAAA,IACA,CAACA,CAAwB;AAAA,EAAA,GAGrB0B,IAAmBV,EAAY,MAAM;AACzC,QAAI,CAACxB,KAAkB,CAACI,EAAsB,QAAA;AAExC,UAAA+B,IAAc,KAAK,OACnBC,IAAY,IAAI,KAAKpC,CAAc,EAAE,QAAQ;AAG5C,WAFeI,KAAiB+B,IAAcC,KAAa;AAAA,EAE3D,GACN,CAAChC,GAAeJ,CAAc,CAAC,GAE5BqC,IAAiBb,EAAY,MAAM;AACvC,UAAMc,IAAgBJ;AAEtB,IAAAhB,EAAYoB,CAAa;AAAA,EAAA,GACxB,CAACJ,CAAgB,CAAC,GAEfK,IAAwBf,EAAY,MAAM;AAC9C,IAAIL,EAAS,YACX,cAAcA,EAAS,OAAO,GAC9BA,EAAS,UAAU,OAENkB,KACNlB,EAAA,UAAU,YAAY,MAAM;AACpB,MAAAkB;OACd,GAAI;AAAA,EAAA,GACN,CAACA,CAAc,CAAC;AAEnB,EAAAG,EAAU,MAAM;AACd,IAAIlC,KAAuBC,KACzBgB,EAA4BjB,CAAmB;AAAA,EAEhD,GAAA,CAACA,GAAqBiB,GAA6BhB,CAAkB,CAAC,GAEzEiC,EAAU,OACJlC,KAAuBA,MAAwBqB,EAAqB,YAChDY,KAGjB,MAAM;AACX,IAAIpB,EAAS,YACX,cAAcA,EAAS,OAAO,GAC9BA,EAAS,UAAU;AAAA,EACrB,IAED,CAACb,GAAqBiC,CAAqB,CAAC,GAE/CC,EAAU,OAWJlC,MAVc,OAAOmC,MAAqC;AAC5D,UAAMC,IAAQ,IAAI;AAAA,MAChB,yDACED,MAAed,EAAqB,cAAc,oBAAoB,gBACxE;AAAA,IAAA;AAGF,IAAAP,EAAS,UAAUsB;AAAA,EAAA,GAITpC,CAAmB,GAGxB,MAAM;AACX,IAAAc,EAAS,UAAU;AAAA,EAAA,IAEpB,CAACd,CAAmB,CAAC;AAExB,QAAMqC,IACJrC,MAAwBqB,EAAqB,YAAYV,IAAW,KAAKhB;AAE3E,2BACG2C,GAAS,EAAA,WAAU,YAAW,QAAO,QAAO,SAAQ,QAClD,UAAA;AAAA,IAAA7C;AAAA,IACAE,KACC,gBAAA4C;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,aAAY;AAAA,QACZ,iBAAgB;AAAA,QAChB,aAAY;AAAA,QACZ,UAAU/B;AAAA,QAEV,UAAA;AAAA,UAAA,gBAAAgC,EAACH,KAAS,KAAKnC,GAAiB,QAAQ,IAAI,SAAS,IAAI;AAAA,UACxDH,KACC,gBAAAyC;AAAA,YAACC;AAAAA,YAAA;AAAA,cACC,UAAUpC;AAAA,cACV,WAAU;AAAA,cACV,QAAO;AAAA,cACP,WAAU;AAAA,cAET,UAAAN,MAAwB,UAAU,qBAAqB;AAAA,YAAA;AAAA,UAC1D;AAAA,QAAA;AAAA,MAAA;AAAA,IAEJ;AAAA,IAEDqC,KACC,gBAAAI,EAACE,GAAA,EAAuB,QAAQ,QAC9B,UAAA,gBAAAF,EAACG,GAAqB,EAAA,OAAOjC,GAAU,UAAU,KAAK,EACxD,CAAA;AAAA,IAEDjB,KAAkBC,KACjB,gBAAA8C;AAAA,MAACI;AAAAA,MAAA;AAAA,QACC,aACE7C,MAAwB,UACpB,aACAA,MAAwB,SACtB,aACA;AAAA,QAER,OAAO;AAAA,QACP,UAAU;AAAA,QACV,iBAAgB;AAAA,QAEhB,4BAAC8C,GAAM,EAAA,WAAWpD,GAAgB,cAAa,OAAM,WAAU,cAAa;AAAA,MAAA;AAAA,IAC9E;AAAA,IAEDsB,KAAQ,CAACrB,KACR,gBAAA8C,EAACM,GAAA,EAA0B,OAAO,MAAM,UAAU,MAAM,QAAO,QAC7D,4BAACC,GAAK,EAAA,WAAU,aAAY,QAAO,SAChC,YACH,CAAA,GACF;AAAA,EAEJ,EAAA,CAAA;AAEJ,CAAC;"}
|
@@ -1,27 +1,32 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import { IMAGES as
|
3
|
-
import
|
1
|
+
import { jsxs as t, jsx as r } from "react/jsx-runtime";
|
2
|
+
import { IMAGES as o } from "../../../../assets/images/images.js";
|
3
|
+
import { LOTTIE as e } from "../../../../assets/lottie/lottie.js";
|
4
|
+
import h from "../../../ui/image/image.js";
|
4
5
|
import n from "../../../ui/layout/flex-view.js";
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
import
|
9
|
-
import { Container as
|
10
|
-
const
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
/* @__PURE__ */
|
16
|
-
|
17
|
-
|
18
|
-
|
6
|
+
import a from "../../../ui/lottie-animation/lottie-animation.js";
|
7
|
+
import i from "../../../ui/separator/separator.js";
|
8
|
+
import d from "../../../ui/text/text.js";
|
9
|
+
import c from "../slide-header/index.js";
|
10
|
+
import { Container as f, Wrapper as T } from "./parent-app-styled.js";
|
11
|
+
const l = [
|
12
|
+
e.STAY_CONNECTED_LOTTIE,
|
13
|
+
e.TRACK_PROGRESS_LOTTIE,
|
14
|
+
e.EASY_RESCHEDULING_LOTTIE
|
15
|
+
], x = () => /* @__PURE__ */ t(f, { children: [
|
16
|
+
/* @__PURE__ */ r(i, { height: 60 }),
|
17
|
+
/* @__PURE__ */ r(c, {}),
|
18
|
+
/* @__PURE__ */ r(n, { $justifyContent: "center", $flexDirection: "row", $flexGap: 50, children: l.map((m, p) => /* @__PURE__ */ r(a, { width: 200, height: 300, src: m }, p)) }),
|
19
|
+
/* @__PURE__ */ r(i, { height: 51 }),
|
20
|
+
/* @__PURE__ */ t(T, { $width: 448, $height: 99, $background: "WHITE", $gapX: 0.75, children: [
|
21
|
+
/* @__PURE__ */ t(n, { $width: 450, $justifyContent: "center", $flexDirection: "row", children: [
|
22
|
+
/* @__PURE__ */ r(h, { withLoader: !0, src: o.PLAYSTORE, width: 150, height: 50 }),
|
23
|
+
/* @__PURE__ */ r(h, { withLoader: !0, src: o.APPSTORE, width: 150, height: 50 })
|
19
24
|
] }),
|
20
|
-
/* @__PURE__ */
|
21
|
-
/* @__PURE__ */
|
25
|
+
/* @__PURE__ */ r(i, { height: 6 }),
|
26
|
+
/* @__PURE__ */ r(d, { $align: "center", $renderAs: "ub3", children: "The Cuemath App is available on iOS & Android" })
|
22
27
|
] })
|
23
28
|
] });
|
24
29
|
export {
|
25
|
-
|
30
|
+
x as default
|
26
31
|
};
|
27
32
|
//# sourceMappingURL=parent-app.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parent-app.js","sources":["../../../../../src/features/trial-session/comps/parent-app/parent-app.tsx"],"sourcesContent":["import React from 'react';\n\nimport { IMAGES } from '../../../../assets/images/images';\nimport Image from '../../../ui/image/image';\nimport FlexView from '../../../ui/layout/flex-view';\nimport
|
1
|
+
{"version":3,"file":"parent-app.js","sources":["../../../../../src/features/trial-session/comps/parent-app/parent-app.tsx"],"sourcesContent":["import React from 'react';\n\nimport { IMAGES } from '../../../../assets/images/images';\nimport { LOTTIE } from '../../../../assets/lottie/lottie';\nimport Image from '../../../ui/image/image';\nimport FlexView from '../../../ui/layout/flex-view';\nimport LottieAnimation from '../../../ui/lottie-animation/lottie-animation';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './parent-app-styled';\n\nconst parentAppLottie = [\n LOTTIE.STAY_CONNECTED_LOTTIE,\n LOTTIE.TRACK_PROGRESS_LOTTIE,\n LOTTIE.EASY_RESCHEDULING_LOTTIE,\n];\n\nconst ParentApp: React.FC = () => {\n return (\n <Styled.Container>\n <Separator height={60} />\n <SlideHeader />\n <FlexView $justifyContent=\"center\" $flexDirection=\"row\" $flexGap={50}>\n {parentAppLottie.map((lottiePath, index) => (\n <LottieAnimation key={index} width={200} height={300} src={lottiePath} />\n ))}\n </FlexView>\n <Separator height={51} />\n <Styled.Wrapper $width={448} $height={99} $background=\"WHITE\" $gapX={0.75}>\n <FlexView $width={450} $justifyContent=\"center\" $flexDirection=\"row\">\n <Image withLoader src={IMAGES.PLAYSTORE} width={150} height={50} />\n <Image withLoader src={IMAGES.APPSTORE} width={150} height={50} />\n </FlexView>\n <Separator height={6} />\n <Text $align=\"center\" $renderAs=\"ub3\">\n The Cuemath App is available on iOS & Android\n </Text>\n </Styled.Wrapper>\n </Styled.Container>\n );\n};\n\nexport default ParentApp;\n"],"names":["parentAppLottie","LOTTIE","ParentApp","jsxs","Styled.Container","jsx","Separator","SlideHeader","FlexView","lottiePath","index","LottieAnimation","Styled.Wrapper","Image","IMAGES","Text"],"mappings":";;;;;;;;;;AAYA,MAAMA,IAAkB;AAAA,EACtBC,EAAO;AAAA,EACPA,EAAO;AAAA,EACPA,EAAO;AACT,GAEMC,IAAsB,MAExB,gBAAAC,EAACC,GAAA,EACC,UAAA;AAAA,EAAC,gBAAAC,EAAAC,GAAA,EAAU,QAAQ,GAAI,CAAA;AAAA,oBACtBC,GAAY,EAAA;AAAA,EACb,gBAAAF,EAACG,KAAS,iBAAgB,UAAS,gBAAe,OAAM,UAAU,IAC/D,UAAAR,EAAgB,IAAI,CAACS,GAAYC,MAChC,gBAAAL,EAACM,GAA4B,EAAA,OAAO,KAAK,QAAQ,KAAK,KAAKF,EAAA,GAArCC,CAAiD,CACxE,EACH,CAAA;AAAA,EACA,gBAAAL,EAACC,GAAU,EAAA,QAAQ,GAAI,CAAA;AAAA,EACvB,gBAAAH,EAACS,GAAA,EAAe,QAAQ,KAAK,SAAS,IAAI,aAAY,SAAQ,OAAO,MACnE,UAAA;AAAA,IAAA,gBAAAT,EAACK,KAAS,QAAQ,KAAK,iBAAgB,UAAS,gBAAe,OAC7D,UAAA;AAAA,MAAC,gBAAAH,EAAAQ,GAAA,EAAM,YAAU,IAAC,KAAKC,EAAO,WAAW,OAAO,KAAK,QAAQ,GAAI,CAAA;AAAA,MACjE,gBAAAT,EAACQ,GAAM,EAAA,YAAU,IAAC,KAAKC,EAAO,UAAU,OAAO,KAAK,QAAQ,GAAI,CAAA;AAAA,IAAA,GAClE;AAAA,IACA,gBAAAT,EAACC,GAAU,EAAA,QAAQ,EAAG,CAAA;AAAA,sBACrBS,GAAK,EAAA,QAAO,UAAS,WAAU,OAAM,UAEtC,iDAAA;AAAA,EAAA,GACF;AACF,EAAA,CAAA;"}
|
@@ -1,37 +1,38 @@
|
|
1
1
|
import { jsx as e, jsxs as t } from "react/jsx-runtime";
|
2
|
-
import { memo as
|
3
|
-
import { ILLUSTRATIONS as
|
4
|
-
import
|
2
|
+
import { memo as L, useCallback as u, useEffect as C } from "react";
|
3
|
+
import { ILLUSTRATIONS as p } from "../../../../assets/illustrations/illustrations.js";
|
4
|
+
import { LOTTIE as h } from "../../../../assets/lottie/lottie.js";
|
5
|
+
import E from "../../../ui/error/error.js";
|
5
6
|
import d from "../../../ui/layout/flex-view.js";
|
6
7
|
import S from "../../../ui/loader/app-loader/app-loader.js";
|
7
|
-
import
|
8
|
+
import R from "../../../ui/lottie-animation/lottie-animation.js";
|
9
|
+
import g from "../../../ui/separator/separator.js";
|
8
10
|
import o from "../../../ui/text/text.js";
|
9
|
-
import { useGetSessionInsights as
|
10
|
-
import { useTrialSessionContext as
|
11
|
-
import R from "../render-lottie/index.js";
|
11
|
+
import { useGetSessionInsights as b } from "../../api/trial-home.js";
|
12
|
+
import { useTrialSessionContext as N } from "../../context/use-trial-session-context.js";
|
12
13
|
import w from "../slide-header/index.js";
|
13
|
-
import { Container as D, ContentWrapper as x, TopicWrapper as B, TopicName as
|
14
|
-
const
|
15
|
-
BEGINNER:
|
16
|
-
FAMILIAR:
|
17
|
-
PROFICIENT:
|
18
|
-
},
|
19
|
-
1:
|
20
|
-
2:
|
21
|
-
3:
|
22
|
-
},
|
23
|
-
const { formData:
|
24
|
-
data:
|
25
|
-
get:
|
26
|
-
isProcessing:
|
27
|
-
isProcessingFailed:
|
28
|
-
} =
|
29
|
-
n &&
|
30
|
-
}, [n,
|
31
|
-
return
|
14
|
+
import { Container as D, ContentWrapper as x, TopicWrapper as B, TopicName as F, LottieWrapper as K, RatingBlock as O } from "./session-insights-styled.js";
|
15
|
+
const X = {
|
16
|
+
BEGINNER: h.BEGINNER1X,
|
17
|
+
FAMILIAR: h.FAMILIAR1X,
|
18
|
+
PROFICIENT: h.PROFICIENT1X
|
19
|
+
}, j = {
|
20
|
+
1: p.ONE_STAR_FILLED,
|
21
|
+
2: p.TWO_STARS_FILLED,
|
22
|
+
3: p.THREE_STARS_FILLED
|
23
|
+
}, Y = L(() => {
|
24
|
+
const { formData: f } = N(), { attemptId: n = "kdbkb" } = f || {}, {
|
25
|
+
data: m,
|
26
|
+
get: $,
|
27
|
+
isProcessing: _,
|
28
|
+
isProcessingFailed: I
|
29
|
+
} = b(), { topic_aggregation: A = [], depth_aggregation: T = [] } = m || {}, c = u(() => {
|
30
|
+
n && $(n);
|
31
|
+
}, [n, $]);
|
32
|
+
return C(() => {
|
32
33
|
c();
|
33
|
-
}, [c]),
|
34
|
-
/* @__PURE__ */ e(
|
34
|
+
}, [c]), I ? /* @__PURE__ */ e(E, { height: "70vh", onTryAgain: c }) : _ || !m ? /* @__PURE__ */ e(S, { height: "100vh" }) : /* @__PURE__ */ t(D, { children: [
|
35
|
+
/* @__PURE__ */ e(g, { height: 60 }),
|
35
36
|
/* @__PURE__ */ e(w, {}),
|
36
37
|
/* @__PURE__ */ t(x, { $alignItems: "center", $width: 650, $alignSelf: "center", children: [
|
37
38
|
/* @__PURE__ */ e(
|
@@ -45,7 +46,7 @@ const j = {
|
|
45
46
|
const {
|
46
47
|
level: r,
|
47
48
|
topic_name: i,
|
48
|
-
level_description:
|
49
|
+
level_description: l
|
49
50
|
} = s;
|
50
51
|
return /* @__PURE__ */ t(
|
51
52
|
B,
|
@@ -57,11 +58,11 @@ const j = {
|
|
57
58
|
$flexDirection: "column",
|
58
59
|
$justifyContent: "space-between",
|
59
60
|
children: [
|
60
|
-
/* @__PURE__ */ e(
|
61
|
-
/* @__PURE__ */ e(
|
61
|
+
/* @__PURE__ */ e(F, { title: i, $renderAs: "ab2-bold", $color: "BLACK_T_87", children: i }),
|
62
|
+
/* @__PURE__ */ e(K, { children: /* @__PURE__ */ e(R, { height: 272, src: X[r] }) }),
|
62
63
|
/* @__PURE__ */ t("div", { children: [
|
63
64
|
/* @__PURE__ */ e(o, { $renderAs: "ac4", $color: "BLACK_T_87", children: r }),
|
64
|
-
/* @__PURE__ */ e(o, { $renderAs: "ub2", $color: "BLACK_T_60", children:
|
65
|
+
/* @__PURE__ */ e(o, { $renderAs: "ub2", $color: "BLACK_T_60", children: l })
|
65
66
|
] })
|
66
67
|
]
|
67
68
|
},
|
@@ -71,7 +72,7 @@ const j = {
|
|
71
72
|
}
|
72
73
|
),
|
73
74
|
/* @__PURE__ */ e(
|
74
|
-
|
75
|
+
O,
|
75
76
|
{
|
76
77
|
$width: "100%",
|
77
78
|
$borderColor: "BLACK_T_87",
|
@@ -85,11 +86,11 @@ const j = {
|
|
85
86
|
const {
|
86
87
|
star: r,
|
87
88
|
depth_description: i,
|
88
|
-
star_description:
|
89
|
+
star_description: l
|
89
90
|
} = s;
|
90
91
|
return /* @__PURE__ */ t(d, { $width: 88, children: [
|
91
|
-
/* @__PURE__ */ e("img", { src:
|
92
|
-
/* @__PURE__ */ e(
|
92
|
+
/* @__PURE__ */ e("img", { src: j[r], height: 24, width: 88 }),
|
93
|
+
/* @__PURE__ */ e(g, { height: 4 }),
|
93
94
|
/* @__PURE__ */ e(
|
94
95
|
d,
|
95
96
|
{
|
@@ -100,10 +101,10 @@ const j = {
|
|
100
101
|
$alignItems: "center",
|
101
102
|
$width: "fit-content",
|
102
103
|
$alignSelf: "center",
|
103
|
-
children: /* @__PURE__ */ e(o, { $renderAs: "ub3", $color: "BLACK_T_87", children:
|
104
|
+
children: /* @__PURE__ */ e(o, { $renderAs: "ub3", $color: "BLACK_T_87", children: l })
|
104
105
|
}
|
105
106
|
),
|
106
|
-
/* @__PURE__ */ e(
|
107
|
+
/* @__PURE__ */ e(g, { heightX: 1 }),
|
107
108
|
/* @__PURE__ */ e(o, { $renderAs: "ac4", $color: "BLACK_T_87", $align: "center", children: i })
|
108
109
|
] }, a);
|
109
110
|
})
|
@@ -113,6 +114,6 @@ const j = {
|
|
113
114
|
] });
|
114
115
|
});
|
115
116
|
export {
|
116
|
-
|
117
|
+
Y as default
|
117
118
|
};
|
118
119
|
//# sourceMappingURL=session-insights.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"session-insights.js","sources":["../../../../../src/features/trial-session/comps/session-insights/session-insights.tsx"],"sourcesContent":["import type { TDepthAggregation, TProficiencyLottieMap } from './session-insights-types';\n\nimport { memo, useCallback, useEffect } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\nimport Error from '../../../ui/error/error';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport { useGetSessionInsights } from '../../api/trial-home';\nimport { useTrialSessionContext } from '../../context/use-trial-session-context';\nimport
|
1
|
+
{"version":3,"file":"session-insights.js","sources":["../../../../../src/features/trial-session/comps/session-insights/session-insights.tsx"],"sourcesContent":["import type { TDepthAggregation, TProficiencyLottieMap } from './session-insights-types';\n\nimport { memo, useCallback, useEffect } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\nimport { LOTTIE } from '../../../../assets/lottie/lottie';\nimport Error from '../../../ui/error/error';\nimport FlexView from '../../../ui/layout/flex-view';\nimport AppLoader from '../../../ui/loader/app-loader/app-loader';\nimport LottieAnimation from '../../../ui/lottie-animation/lottie-animation';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport { useGetSessionInsights } from '../../api/trial-home';\nimport { useTrialSessionContext } from '../../context/use-trial-session-context';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './session-insights-styled';\n\nconst proficiencyLottieMap: TProficiencyLottieMap = {\n BEGINNER: LOTTIE.BEGINNER1X,\n FAMILIAR: LOTTIE.FAMILIAR1X,\n PROFICIENT: LOTTIE.PROFICIENT1X,\n};\n\nconst STAR_RATING_ICONS: Record<TDepthAggregation['star'], string> = {\n 1: ILLUSTRATIONS.ONE_STAR_FILLED,\n 2: ILLUSTRATIONS.TWO_STARS_FILLED,\n 3: ILLUSTRATIONS.THREE_STARS_FILLED,\n};\n\nconst SessionInsights = memo(() => {\n const { formData } = useTrialSessionContext();\n const { attemptId = 'kdbkb' } = formData || {};\n\n const {\n data: sessionInsights,\n get: getSessionInsights,\n isProcessing,\n isProcessingFailed,\n } = useGetSessionInsights();\n\n const { topic_aggregation: topicAggregation = [], depth_aggregation: depthAggregation = [] } =\n sessionInsights || {};\n\n const fetchData = useCallback(() => {\n if (attemptId) {\n getSessionInsights(attemptId);\n }\n }, [attemptId, getSessionInsights]);\n\n useEffect(() => {\n fetchData();\n }, [fetchData]);\n\n if (isProcessingFailed) {\n return <Error height=\"70vh\" onTryAgain={fetchData} />;\n }\n\n if (isProcessing || !sessionInsights) {\n return <AppLoader height=\"100vh\" />;\n }\n\n return (\n <Styled.Container>\n <Separator height={60} />\n <SlideHeader />\n <Styled.ContentWrapper $alignItems=\"center\" $width={650} $alignSelf=\"center\">\n <FlexView\n $flexDirection=\"row\"\n $justifyContent=\"center\"\n $borderColor=\"BLACK_T_87\"\n $width=\"100%\"\n >\n {topicAggregation.map((aggregation, index) => {\n const {\n level,\n topic_name: topicName,\n level_description: levelDescription,\n } = aggregation;\n\n return (\n <Styled.TopicWrapper\n key={index}\n $gapX={1}\n $gutterX={1}\n $width=\"100%\"\n $height={250}\n $flexDirection=\"column\"\n $justifyContent=\"space-between\"\n >\n <Styled.TopicName title={topicName} $renderAs=\"ab2-bold\" $color=\"BLACK_T_87\">\n {topicName}\n </Styled.TopicName>\n <Styled.LottieWrapper>\n <LottieAnimation height={272} src={proficiencyLottieMap[level]} />\n </Styled.LottieWrapper>\n <div>\n <Text $renderAs=\"ac4\" $color=\"BLACK_T_87\">\n {level}\n </Text>\n <Text $renderAs=\"ub2\" $color=\"BLACK_T_60\">\n {levelDescription}\n </Text>\n </div>\n </Styled.TopicWrapper>\n );\n })}\n </FlexView>\n <Styled.RatingBlock\n $width=\"100%\"\n $borderColor=\"BLACK_T_87\"\n $flexDirection=\"row\"\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $flexGap={80}\n $background=\"WHITE\"\n $gap={25.5}\n >\n {depthAggregation.map((aggregation, index) => {\n const {\n star,\n depth_description: depthDescription,\n star_description: starDescription,\n } = aggregation;\n\n return (\n <FlexView key={index} $width={88}>\n <img src={STAR_RATING_ICONS[star]} height={24} width={88} />\n <Separator height={4} />\n <FlexView\n $background=\"WHITE_4\"\n $gutterX={0.25}\n $gap={2}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $width=\"fit-content\"\n $alignSelf=\"center\"\n >\n <Text $renderAs=\"ub3\" $color=\"BLACK_T_87\">\n {starDescription}\n </Text>\n </FlexView>\n <Separator heightX={1} />\n <Text $renderAs=\"ac4\" $color=\"BLACK_T_87\" $align=\"center\">\n {depthDescription}\n </Text>\n </FlexView>\n );\n })}\n </Styled.RatingBlock>\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n});\n\nexport default SessionInsights;\n"],"names":["proficiencyLottieMap","LOTTIE","STAR_RATING_ICONS","ILLUSTRATIONS","SessionInsights","memo","formData","useTrialSessionContext","attemptId","sessionInsights","getSessionInsights","isProcessing","isProcessingFailed","useGetSessionInsights","topicAggregation","depthAggregation","fetchData","useCallback","useEffect","jsx","Error","AppLoader","jsxs","Styled.Container","Separator","SlideHeader","Styled.ContentWrapper","FlexView","aggregation","index","level","topicName","levelDescription","Styled.TopicWrapper","Styled.TopicName","Styled.LottieWrapper","LottieAnimation","Text","Styled.RatingBlock","star","depthDescription","starDescription"],"mappings":"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"}
|
@@ -1,23 +1,19 @@
|
|
1
|
-
import { jsx as
|
2
|
-
import
|
3
|
-
import
|
4
|
-
import
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
t.destroy();
|
17
|
-
};
|
18
|
-
}, []), /* @__PURE__ */ o(m, { children: /* @__PURE__ */ o(u, { ref: r }) });
|
19
|
-
};
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
2
|
+
import { LOTTIE as r } from "../../../../assets/lottie/lottie.js";
|
3
|
+
import i from "../../layout/flex-view.js";
|
4
|
+
import o from "../../lottie-animation/lottie-animation.js";
|
5
|
+
const h = () => /* @__PURE__ */ t(
|
6
|
+
i,
|
7
|
+
{
|
8
|
+
$width: "100%",
|
9
|
+
$height: "100%",
|
10
|
+
$alignItems: "center",
|
11
|
+
$justifyContent: "center",
|
12
|
+
$background: "TRANSPARENT",
|
13
|
+
children: /* @__PURE__ */ t(o, { width: "50%", height: "50%", src: r.CIRCULAR_LOADER })
|
14
|
+
}
|
15
|
+
);
|
20
16
|
export {
|
21
|
-
|
17
|
+
h as CircularLoader
|
22
18
|
};
|
23
19
|
//# sourceMappingURL=circular-loader.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"circular-loader.js","sources":["../../../../../src/features/ui/loader/circular-loader/circular-loader.tsx"],"sourcesContent":["import
|
1
|
+
{"version":3,"file":"circular-loader.js","sources":["../../../../../src/features/ui/loader/circular-loader/circular-loader.tsx"],"sourcesContent":["import { LOTTIE } from '../../../../assets/lottie/lottie';\nimport FlexView from '../../layout/flex-view';\nimport LottieAnimation from '../../lottie-animation/lottie-animation';\n\nexport const CircularLoader = () => (\n <FlexView\n $width=\"100%\"\n $height=\"100%\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"TRANSPARENT\"\n >\n <LottieAnimation width=\"50%\" height=\"50%\" src={LOTTIE.CIRCULAR_LOADER} />\n </FlexView>\n);\n"],"names":["CircularLoader","jsx","FlexView","LottieAnimation","LOTTIE"],"mappings":";;;;AAIO,MAAMA,IAAiB,MAC5B,gBAAAC;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,QAAO;AAAA,IACP,SAAQ;AAAA,IACR,aAAY;AAAA,IACZ,iBAAgB;AAAA,IAChB,aAAY;AAAA,IAEZ,UAAA,gBAAAD,EAACE,KAAgB,OAAM,OAAM,QAAO,OAAM,KAAKC,EAAO,gBAAiB,CAAA;AAAA,EAAA;AACzE;"}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
const c = async (o) => {
|
2
|
+
let e = null;
|
3
|
+
try {
|
4
|
+
e = await fetch(o).then((t) => t.json()).catch(() => null);
|
5
|
+
} catch (t) {
|
6
|
+
console.log("Error while fetching the lottie: ", t);
|
7
|
+
}
|
8
|
+
return e;
|
9
|
+
};
|
10
|
+
export {
|
11
|
+
c as fetchLottie
|
12
|
+
};
|
13
|
+
//# sourceMappingURL=helper.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"helper.js","sources":["../../../../src/features/ui/lottie-animation/helper.ts"],"sourcesContent":["import type { AnimationItem } from 'lottie-web';\n\nexport const fetchLottie = async (lottieSrc: string): Promise<AnimationItem | null> => {\n let lottieJson: AnimationItem | null = null;\n\n try {\n lottieJson = await fetch(lottieSrc)\n .then(res => res.json())\n .catch(() => null);\n } catch (error) {\n /* eslint-disable no-console */\n console.log('Error while fetching the lottie: ', error);\n }\n\n return lottieJson;\n};\n"],"names":["fetchLottie","lottieSrc","lottieJson","res","error"],"mappings":"AAEa,MAAAA,IAAc,OAAOC,MAAqD;AACrF,MAAIC,IAAmC;AAEnC,MAAA;AACF,IAAAA,IAAa,MAAM,MAAMD,CAAS,EAC/B,KAAK,CAAAE,MAAOA,EAAI,KAAA,CAAM,EACtB,MAAM,MAAM,IAAI;AAAA,WACZC,GAAO;AAEN,YAAA,IAAI,qCAAqCA,CAAK;AAAA,EACxD;AAEO,SAAAF;AACT;"}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import { jsx as d } from "react/jsx-runtime";
|
2
|
+
import p from "lottie-web";
|
3
|
+
import { memo as h, forwardRef as L, useRef as m, useImperativeHandle as g, useEffect as v } from "react";
|
4
|
+
import w from "../layout/flex-view.js";
|
5
|
+
import { fetchLottie as y } from "./helper.js";
|
6
|
+
const A = L((s, u) => {
|
7
|
+
const { src: i, width: l = "100%", height: f = "100%", settings: a, eventListener: t, onRender: n } = s, o = m(null), e = m(null);
|
8
|
+
return g(
|
9
|
+
u,
|
10
|
+
() => ({
|
11
|
+
playSegments: (c, r) => {
|
12
|
+
e.current && e.current.playSegments(c, r);
|
13
|
+
}
|
14
|
+
}),
|
15
|
+
[]
|
16
|
+
), v(() => ((async () => {
|
17
|
+
try {
|
18
|
+
const r = await y(i);
|
19
|
+
o.current && (e.current = p.loadAnimation({
|
20
|
+
container: o.current,
|
21
|
+
animationData: r,
|
22
|
+
renderer: "svg",
|
23
|
+
loop: !0,
|
24
|
+
autoplay: !0,
|
25
|
+
...a
|
26
|
+
}), n == null || n(), t && e.current.addEventListener(t.name, t.callback));
|
27
|
+
} catch (r) {
|
28
|
+
throw Error(`Error loading Lottie animation: ${r}`);
|
29
|
+
}
|
30
|
+
})(), () => {
|
31
|
+
e.current && (t && e.current.removeEventListener(t.name, t.callback), e.current.destroy());
|
32
|
+
}), [i, t, n, a]), /* @__PURE__ */ d(w, { ref: o, $width: l, $height: f });
|
33
|
+
}), I = h(A);
|
34
|
+
export {
|
35
|
+
I as default
|
36
|
+
};
|
37
|
+
//# sourceMappingURL=lottie-animation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"lottie-animation.js","sources":["../../../../src/features/ui/lottie-animation/lottie-animation.tsx"],"sourcesContent":["import type { ILottieAnimationProps, ILottieAnimationRef } from './types';\nimport type { AnimationItem, AnimationSegment } from 'lottie-web';\n\nimport lottie from 'lottie-web';\nimport { forwardRef, memo, useEffect, useImperativeHandle, useRef } from 'react';\n\nimport FlexView from '../layout/flex-view';\nimport { fetchLottie } from './helper';\n\nconst LottieAnimation = forwardRef<ILottieAnimationRef, ILottieAnimationProps>((props, ref) => {\n const { src, width = '100%', height = '100%', settings, eventListener, onRender } = props;\n\n const container = useRef<HTMLDivElement>(null);\n const animationInstance = useRef<AnimationItem | null>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n playSegments: (segments: AnimationSegment, forceFlag?: boolean) => {\n if (animationInstance.current) {\n animationInstance.current.playSegments(segments, forceFlag);\n }\n },\n }),\n [],\n );\n\n useEffect(() => {\n const loadAnimation = async () => {\n try {\n const animationData = await fetchLottie(src);\n\n if (container.current) {\n animationInstance.current = lottie.loadAnimation({\n container: container.current,\n animationData,\n renderer: 'svg',\n loop: true,\n autoplay: true,\n ...settings,\n });\n\n onRender?.();\n if (eventListener) {\n animationInstance.current.addEventListener(eventListener.name, eventListener.callback);\n }\n }\n } catch (error) {\n throw Error(`Error loading Lottie animation: ${error}`);\n }\n };\n\n loadAnimation();\n\n return () => {\n if (animationInstance.current) {\n if (eventListener) {\n animationInstance.current.removeEventListener(eventListener.name, eventListener.callback);\n }\n animationInstance.current.destroy();\n }\n };\n }, [src, eventListener, onRender, settings]);\n\n return <FlexView ref={container} $width={width} $height={height} />;\n});\n\nexport default memo(LottieAnimation);\n"],"names":["LottieAnimation","forwardRef","props","ref","src","width","height","settings","eventListener","onRender","container","useRef","animationInstance","useImperativeHandle","segments","forceFlag","useEffect","animationData","fetchLottie","lottie","error","FlexView","LottieAnimation$1","memo"],"mappings":";;;;;AASA,MAAMA,IAAkBC,EAAuD,CAACC,GAAOC,MAAQ;AACvF,QAAA,EAAE,KAAAC,GAAK,OAAAC,IAAQ,QAAQ,QAAAC,IAAS,QAAQ,UAAAC,GAAU,eAAAC,GAAe,UAAAC,EAAa,IAAAP,GAE9EQ,IAAYC,EAAuB,IAAI,GACvCC,IAAoBD,EAA6B,IAAI;AAE3D,SAAAE;AAAA,IACEV;AAAA,IACA,OAAO;AAAA,MACL,cAAc,CAACW,GAA4BC,MAAwB;AACjE,QAAIH,EAAkB,WACFA,EAAA,QAAQ,aAAaE,GAAUC,CAAS;AAAA,MAE9D;AAAA,IAAA;AAAA,IAEF,CAAC;AAAA,EAAA,GAGHC,EAAU,QACc,YAAY;AAC5B,QAAA;AACI,YAAAC,IAAgB,MAAMC,EAAYd,CAAG;AAE3C,MAAIM,EAAU,YACME,EAAA,UAAUO,EAAO,cAAc;AAAA,QAC/C,WAAWT,EAAU;AAAA,QACrB,eAAAO;AAAA,QACA,UAAU;AAAA,QACV,MAAM;AAAA,QACN,UAAU;AAAA,QACV,GAAGV;AAAA,MAAA,CACJ,GAEUE,KAAA,QAAAA,KACPD,KACFI,EAAkB,QAAQ,iBAAiBJ,EAAc,MAAMA,EAAc,QAAQ;AAAA,aAGlFY,GAAO;AACR,YAAA,MAAM,mCAAmCA,CAAK,EAAE;AAAA,IACxD;AAAA,EAAA,MAKK,MAAM;AACX,IAAIR,EAAkB,YAChBJ,KACFI,EAAkB,QAAQ,oBAAoBJ,EAAc,MAAMA,EAAc,QAAQ,GAE1FI,EAAkB,QAAQ;EAC5B,IAED,CAACR,GAAKI,GAAeC,GAAUF,CAAQ,CAAC,qBAEnCc,GAAS,EAAA,KAAKX,GAAW,QAAQL,GAAO,SAASC,EAAQ,CAAA;AACnE,CAAC,GAEcgB,IAAAC,EAAKvB,CAAe;"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import e from "styled-components";
|
2
|
-
import
|
2
|
+
import n from "../layout/flex-view.js";
|
3
3
|
const r = e.div`
|
4
4
|
position: absolute;
|
5
5
|
top: ${({ $top: t }) => t}px;
|
@@ -11,18 +11,14 @@ const r = e.div`
|
|
11
11
|
align-items: end;
|
12
12
|
z-index: ${({ $zIndex: t }) => t};
|
13
13
|
pointer-events: none;
|
14
|
-
`, p = e(
|
15
|
-
height: 64px;
|
16
|
-
width: 64px;
|
14
|
+
`, p = e(n)`
|
17
15
|
overflow: hidden;
|
18
|
-
|
19
|
-
|
20
|
-
& > svg {
|
16
|
+
|
17
|
+
& svg {
|
21
18
|
transform: scale(3.5) !important;
|
22
19
|
}
|
23
20
|
`;
|
24
21
|
export {
|
25
|
-
s as Nudge,
|
26
22
|
p as NudgeLottieContainer,
|
27
23
|
r as NudgeWrapper
|
28
24
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nudge-styled.js","sources":["../../../../src/features/ui/nudge/nudge-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\n\ninterface NudgeWrapperProps {\n $top: number;\n $left: number;\n $zIndex: number;\n}\n\nexport const NudgeWrapper = styled.div<NudgeWrapperProps>`\n position: absolute;\n top: ${({ $top }) => $top}px;\n left: ${({ $left }) => $left}px;\n height: max-content;\n width: max-content;\n display: flex;\n justify-content: center;\n align-items: end;\n z-index: ${({ $zIndex }) => $zIndex};\n pointer-events: none;\n`;\n\nexport const NudgeLottieContainer = styled(FlexView)`\n
|
1
|
+
{"version":3,"file":"nudge-styled.js","sources":["../../../../src/features/ui/nudge/nudge-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\n\ninterface NudgeWrapperProps {\n $top: number;\n $left: number;\n $zIndex: number;\n}\n\nexport const NudgeWrapper = styled.div<NudgeWrapperProps>`\n position: absolute;\n top: ${({ $top }) => $top}px;\n left: ${({ $left }) => $left}px;\n height: max-content;\n width: max-content;\n display: flex;\n justify-content: center;\n align-items: end;\n z-index: ${({ $zIndex }) => $zIndex};\n pointer-events: none;\n`;\n\nexport const NudgeLottieContainer = styled(FlexView)`\n overflow: hidden;\n\n & svg {\n transform: scale(3.5) !important;\n }\n`;\n"],"names":["NudgeWrapper","styled","$top","$left","$zIndex","NudgeLottieContainer","FlexView"],"mappings":";;AAUO,MAAMA,IAAeC,EAAO;AAAA;AAAA,SAE1B,CAAC,EAAE,MAAAC,EAAK,MAAMA,CAAI;AAAA,UACjB,CAAC,EAAE,OAAAC,EAAM,MAAMA,CAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAMjB,CAAC,EAAE,SAAAC,EAAQ,MAAMA,CAAO;AAAA;AAAA,GAIxBC,IAAuBJ,EAAOK,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|
@@ -1,34 +1,17 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import
|
3
|
-
import
|
4
|
-
import { NudgeWrapper as
|
5
|
-
const
|
6
|
-
content:
|
7
|
-
nudgePointerX:
|
8
|
-
nudgePointerY:
|
1
|
+
import { jsxs as n, jsx as t } from "react/jsx-runtime";
|
2
|
+
import { LOTTIE as d } from "../../../assets/lottie/lottie.js";
|
3
|
+
import m from "../lottie-animation/lottie-animation.js";
|
4
|
+
import { NudgeWrapper as p, NudgeLottieContainer as s } from "./nudge-styled.js";
|
5
|
+
const f = ({
|
6
|
+
content: r,
|
7
|
+
nudgePointerX: e = 0,
|
8
|
+
nudgePointerY: o = 0,
|
9
9
|
zIndex: i = 100
|
10
|
-
}) => {
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
return (async () => {
|
15
|
-
const u = (await g()).default;
|
16
|
-
t = l.loadAnimation({
|
17
|
-
container: o.current,
|
18
|
-
animationData: u,
|
19
|
-
autoplay: !0,
|
20
|
-
loop: !0,
|
21
|
-
renderer: "svg"
|
22
|
-
});
|
23
|
-
})(), () => {
|
24
|
-
t == null || t.destroy();
|
25
|
-
};
|
26
|
-
}, []), /* @__PURE__ */ d(c, { $top: a, $left: r, $zIndex: i, children: [
|
27
|
-
/* @__PURE__ */ e(p, { children: /* @__PURE__ */ e(f, { ref: o }) }),
|
28
|
-
n
|
29
|
-
] });
|
30
|
-
}, j = N;
|
10
|
+
}) => /* @__PURE__ */ n(p, { $top: o, $left: e, $zIndex: i, children: [
|
11
|
+
/* @__PURE__ */ t(s, { $height: 64, $width: 64, children: /* @__PURE__ */ t(m, { src: d.NUDGE_TAP }) }),
|
12
|
+
r
|
13
|
+
] }), g = f;
|
31
14
|
export {
|
32
|
-
|
15
|
+
g as default
|
33
16
|
};
|
34
17
|
//# sourceMappingURL=nudge.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nudge.js","sources":["../../../../src/features/ui/nudge/nudge.tsx"],"sourcesContent":["import type { INudgeProps } from './nudge-types';\nimport
|
1
|
+
{"version":3,"file":"nudge.js","sources":["../../../../src/features/ui/nudge/nudge.tsx"],"sourcesContent":["import type { INudgeProps } from './nudge-types';\n\nimport React from 'react';\n\nimport { LOTTIE } from '../../../assets/lottie/lottie';\nimport LottieAnimation from '../lottie-animation/lottie-animation';\nimport * as S from './nudge-styled';\n\nconst Nudge: React.FC<INudgeProps> = ({\n content,\n nudgePointerX = 0,\n nudgePointerY = 0,\n zIndex = 100,\n}) => {\n return (\n <S.NudgeWrapper $top={nudgePointerY} $left={nudgePointerX} $zIndex={zIndex}>\n <S.NudgeLottieContainer $height={64} $width={64}>\n <LottieAnimation src={LOTTIE.NUDGE_TAP} />\n </S.NudgeLottieContainer>\n {content}\n </S.NudgeWrapper>\n );\n};\n\nexport default Nudge;\n"],"names":["Nudge","content","nudgePointerX","nudgePointerY","zIndex","jsxs","S.NudgeWrapper","jsx","S.NudgeLottieContainer","LottieAnimation","LOTTIE","Nudge$1"],"mappings":";;;;AAQA,MAAMA,IAA+B,CAAC;AAAA,EACpC,SAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,eAAAC,IAAgB;AAAA,EAChB,QAAAC,IAAS;AACX,MAEI,gBAAAC,EAACC,GAAA,EAAe,MAAMH,GAAe,OAAOD,GAAe,SAASE,GAClE,UAAA;AAAA,EAAA,gBAAAG,EAACC,GAAA,EAAuB,SAAS,IAAI,QAAQ,IAC3C,UAAA,gBAAAD,EAACE,GAAgB,EAAA,KAAKC,EAAO,UAAA,CAAW,EAC1C,CAAA;AAAA,EACCT;AACH,EAAA,CAAA,GAIJU,IAAeX;"}
|
@@ -1,30 +1,32 @@
|
|
1
|
-
import {
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
1
|
+
import { LOTTIE as o } from "../../../assets/lottie/lottie.js";
|
2
|
+
import { fetchLottie as a } from "../lottie-animation/helper.js";
|
3
|
+
import { RANGE_SIZE as t, TIERS as e } from "./constants.js";
|
4
|
+
const s = {
|
5
|
+
bronze_1: o.BRONZE_1,
|
6
|
+
bronze_2: o.BRONZE_2,
|
7
|
+
bronze_3: o.BRONZE_3,
|
8
|
+
silver_1: o.SILVER_1,
|
9
|
+
silver_2: o.SILVER_2,
|
10
|
+
silver_3: o.SILVER_3,
|
11
|
+
gold_1: o.GOLD_1,
|
12
|
+
gold_2: o.GOLD_2,
|
13
|
+
gold_3: o.GOLD_3,
|
14
|
+
color_1: o.COLOR_1,
|
15
|
+
color_2: o.COLOR_2,
|
16
|
+
color_3: o.COLOR_3
|
15
17
|
};
|
16
|
-
async function
|
17
|
-
const
|
18
|
-
if (
|
18
|
+
async function f(r) {
|
19
|
+
const _ = r >= t * 12 ? 3 : Math.floor(r / (e.length * t)) + 1, i = Math.floor(r % (e.length * t) / t), n = `${r >= t * 12 ? "color" : e[i]}_${_}`, l = s[n];
|
20
|
+
if (l)
|
19
21
|
try {
|
20
|
-
return
|
22
|
+
return await a(l);
|
21
23
|
} catch {
|
22
24
|
return null;
|
23
25
|
}
|
24
26
|
return null;
|
25
27
|
}
|
26
28
|
export {
|
27
|
-
|
28
|
-
|
29
|
+
t as RANGE_SIZE,
|
30
|
+
f as getAnimationFile
|
29
31
|
};
|
30
32
|
//# sourceMappingURL=perfect-hits-helpers.js.map
|