@cuemath/leap 2.8.25 → 2.8.26
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/school-goals/school-goals-view.js +4 -4
- package/dist/features/trial-session/comps/school-goals/school-goals-view.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/trial-session/trial-session-view.js +95 -79
- package/dist/features/trial-session/trial-session-view.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,8 +1,8 @@
|
|
1
1
|
import { jsxs as r, jsx as e } from "react/jsx-runtime";
|
2
2
|
import { GIF as c } from "../../../../assets/gif/gif.js";
|
3
3
|
import f from "../../../ui/image/image.js";
|
4
|
-
import
|
5
|
-
import
|
4
|
+
import C from "../../../ui/inputs/searchable-select-input/searchable-select-input.js";
|
5
|
+
import o from "../../../ui/inputs/select-input/select-input.js";
|
6
6
|
import b from "../../../ui/inputs/text-input/text-input.js";
|
7
7
|
import S from "../../../ui/layout/flex-view.js";
|
8
8
|
import g from "../../../ui/separator/separator.js";
|
@@ -66,7 +66,7 @@ const D = ({
|
|
66
66
|
)
|
67
67
|
] }),
|
68
68
|
/* @__PURE__ */ e(
|
69
|
-
|
69
|
+
o,
|
70
70
|
{
|
71
71
|
renderAs: "primary",
|
72
72
|
label: "Curriculum",
|
@@ -81,7 +81,7 @@ const D = ({
|
|
81
81
|
}
|
82
82
|
),
|
83
83
|
/* @__PURE__ */ e(
|
84
|
-
|
84
|
+
C,
|
85
85
|
{
|
86
86
|
renderAs: "primary",
|
87
87
|
label: "Goal",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"school-goals-view.js","sources":["../../../../../src/features/trial-session/comps/school-goals/school-goals-view.tsx"],"sourcesContent":["import type { TCurriculumStandardOption } from '../../../milestone/create/milestone-create-types';\nimport type { ISelectOption } from '../../../ui/inputs/base-select-input/base-select-input-types';\nimport type { ISectionOption } from '../../../ui/section-list/section-list-types';\n\nimport { GIF } from '../../../../assets/gif/gif';\nimport Image from '../../../ui/image/image';\nimport SearchableSelectInput from '../../../ui/inputs/searchable-select-input/searchable-select-input';\nimport SelectInput from '../../../ui/inputs/select-input/select-input';\nimport TextInput from '../../../ui/inputs/text-input/text-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './school-goals-styled';\n\ninterface ISchoolGoals {\n header?: string;\n name?: string;\n grade?: string;\n curriculum?: string;\n grades: ISelectOption<string>[];\n curriculumStandards: ISectionOption<TCurriculumStandardOption>[];\n goalsList: ISelectOption<string>[];\n selectedGoal?: string;\n onNameChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onGradeChange: (value: string) => void;\n onCurriculumChange: (value: string) => void;\n onGoalChange: (value: string, option: ISelectOption<string | number>) => void;\n}\n\nconst SchoolGoalsView = ({\n name,\n onNameChange,\n grade,\n grades,\n onGradeChange,\n curriculum,\n curriculumStandards,\n onCurriculumChange,\n selectedGoal,\n goalsList,\n onGoalChange,\n}: ISchoolGoals) => {\n return (\n <Styled.Container>\n <Separator height={60} />\n <SlideHeader />\n <Styled.ContentWrapper $flexDirection=\"row\" $justifyContent=\"center\">\n <Styled.ImageWrapper>\n <Image withLoader height={402} width={302} src={GIF.SCHOOL_SUCCESS} className=\"image\" />\n </Styled.ImageWrapper>\n <Styled.InputContainer\n $flexGap={24}\n $justifyContent=\"center\"\n $background=\"PURPLE_1\"\n $borderColor=\"BLACK_1\"\n $gapX={2.5}\n $gutterX={2.5}\n >\n <FlexView $flexDirection=\"row\" $flexColumnGapX={1.5}>\n <TextInput\n renderAs=\"primary\"\n label=\"Student name\"\n value={name}\n type=\"text\"\n name=\"name\"\n shape=\"borderLess\"\n onChange={onNameChange}\n width=\"100%\"\n isTransparent\n />\n <
|
1
|
+
{"version":3,"file":"school-goals-view.js","sources":["../../../../../src/features/trial-session/comps/school-goals/school-goals-view.tsx"],"sourcesContent":["import type { TCurriculumStandardOption } from '../../../milestone/create/milestone-create-types';\nimport type { ISelectOption } from '../../../ui/inputs/base-select-input/base-select-input-types';\nimport type { ISectionOption } from '../../../ui/section-list/section-list-types';\n\nimport { GIF } from '../../../../assets/gif/gif';\nimport Image from '../../../ui/image/image';\nimport SearchableSelectInput from '../../../ui/inputs/searchable-select-input/searchable-select-input';\nimport SelectInput from '../../../ui/inputs/select-input/select-input';\nimport TextInput from '../../../ui/inputs/text-input/text-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './school-goals-styled';\n\ninterface ISchoolGoals {\n header?: string;\n name?: string;\n grade?: string;\n curriculum?: string;\n grades: ISelectOption<string>[];\n curriculumStandards: ISectionOption<TCurriculumStandardOption>[];\n goalsList: ISelectOption<string>[];\n selectedGoal?: string;\n onNameChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onGradeChange: (value: string) => void;\n onCurriculumChange: (value: string) => void;\n onGoalChange: (value: string, option: ISelectOption<string | number>) => void;\n}\n\nconst SchoolGoalsView = ({\n name,\n onNameChange,\n grade,\n grades,\n onGradeChange,\n curriculum,\n curriculumStandards,\n onCurriculumChange,\n selectedGoal,\n goalsList,\n onGoalChange,\n}: ISchoolGoals) => {\n return (\n <Styled.Container>\n <Separator height={60} />\n <SlideHeader />\n <Styled.ContentWrapper $flexDirection=\"row\" $justifyContent=\"center\">\n <Styled.ImageWrapper>\n <Image withLoader height={402} width={302} src={GIF.SCHOOL_SUCCESS} className=\"image\" />\n </Styled.ImageWrapper>\n <Styled.InputContainer\n $flexGap={24}\n $justifyContent=\"center\"\n $background=\"PURPLE_1\"\n $borderColor=\"BLACK_1\"\n $gapX={2.5}\n $gutterX={2.5}\n >\n <FlexView $flexDirection=\"row\" $flexColumnGapX={1.5}>\n <TextInput\n renderAs=\"primary\"\n label=\"Student name\"\n value={name}\n type=\"text\"\n name=\"name\"\n shape=\"borderLess\"\n onChange={onNameChange}\n width=\"100%\"\n isTransparent\n />\n <SelectInput\n renderAs=\"primary\"\n label=\"Grade\"\n value={grade}\n options={grades}\n shape=\"borderLess\"\n onChange={onGradeChange}\n theme=\"dark\"\n widthX={10}\n isTransparent\n />\n </FlexView>\n <SelectInput\n renderAs=\"primary\"\n label=\"Curriculum\"\n value={curriculum}\n options={curriculumStandards}\n disabled={!grade}\n shape=\"borderLess\"\n renderOptionsAs=\"section-list\"\n theme=\"dark\"\n onChange={onCurriculumChange}\n isTransparent\n />\n <SearchableSelectInput\n renderAs=\"primary\"\n label=\"Goal\"\n value={selectedGoal}\n options={goalsList}\n shape=\"borderLess\"\n theme=\"dark\"\n onChange={onGoalChange}\n isTransparent\n disabled={!grade || !curriculum}\n />\n </Styled.InputContainer>\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n};\n\nexport default SchoolGoalsView;\n"],"names":["SchoolGoalsView","name","onNameChange","grade","grades","onGradeChange","curriculum","curriculumStandards","onCurriculumChange","selectedGoal","goalsList","onGoalChange","jsxs","Styled.Container","jsx","Separator","SlideHeader","Styled.ContentWrapper","Styled.ImageWrapper","Image","GIF","Styled.InputContainer","FlexView","TextInput","SelectInput","SearchableSelectInput"],"mappings":";;;;;;;;;;AA6BA,MAAMA,IAAkB,CAAC;AAAA,EACvB,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,eAAAC;AAAA,EACA,YAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AACF,MAEI,gBAAAC,EAACC,GAAA,EACC,UAAA;AAAA,EAAC,gBAAAC,EAAAC,GAAA,EAAU,QAAQ,GAAI,CAAA;AAAA,oBACtBC,GAAY,EAAA;AAAA,oBACZC,GAAA,EAAsB,gBAAe,OAAM,iBAAgB,UAC1D,UAAA;AAAA,IAAA,gBAAAH,EAACI,GAAA,EACC,UAAC,gBAAAJ,EAAAK,GAAA,EAAM,YAAU,IAAC,QAAQ,KAAK,OAAO,KAAK,KAAKC,EAAI,gBAAgB,WAAU,QAAQ,CAAA,GACxF;AAAA,IACA,gBAAAR;AAAA,MAACS;AAAAA,MAAA;AAAA,QACC,UAAU;AAAA,QACV,iBAAgB;AAAA,QAChB,aAAY;AAAA,QACZ,cAAa;AAAA,QACb,OAAO;AAAA,QACP,UAAU;AAAA,QAEV,UAAA;AAAA,UAAA,gBAAAT,EAACU,GAAS,EAAA,gBAAe,OAAM,iBAAiB,KAC9C,UAAA;AAAA,YAAA,gBAAAR;AAAA,cAACS;AAAA,cAAA;AAAA,gBACC,UAAS;AAAA,gBACT,OAAM;AAAA,gBACN,OAAOtB;AAAA,gBACP,MAAK;AAAA,gBACL,MAAK;AAAA,gBACL,OAAM;AAAA,gBACN,UAAUC;AAAA,gBACV,OAAM;AAAA,gBACN,eAAa;AAAA,cAAA;AAAA,YACf;AAAA,YACA,gBAAAY;AAAA,cAACU;AAAA,cAAA;AAAA,gBACC,UAAS;AAAA,gBACT,OAAM;AAAA,gBACN,OAAOrB;AAAA,gBACP,SAASC;AAAA,gBACT,OAAM;AAAA,gBACN,UAAUC;AAAA,gBACV,OAAM;AAAA,gBACN,QAAQ;AAAA,gBACR,eAAa;AAAA,cAAA;AAAA,YACf;AAAA,UAAA,GACF;AAAA,UACA,gBAAAS;AAAA,YAACU;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,OAAM;AAAA,cACN,OAAOlB;AAAA,cACP,SAASC;AAAA,cACT,UAAU,CAACJ;AAAA,cACX,OAAM;AAAA,cACN,iBAAgB;AAAA,cAChB,OAAM;AAAA,cACN,UAAUK;AAAA,cACV,eAAa;AAAA,YAAA;AAAA,UACf;AAAA,UACA,gBAAAM;AAAA,YAACW;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,OAAM;AAAA,cACN,OAAOhB;AAAA,cACP,SAASC;AAAA,cACT,OAAM;AAAA,cACN,OAAM;AAAA,cACN,UAAUC;AAAA,cACV,eAAa;AAAA,cACb,UAAU,CAACR,KAAS,CAACG;AAAA,YAAA;AAAA,UACvB;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;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,122 +1,138 @@
|
|
1
|
-
import { jsx as
|
2
|
-
import { memo as
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
|
1
|
+
import { jsx as D, jsxs as z } from "react/jsx-runtime";
|
2
|
+
import { memo as J, useState as K, useMemo as m, useCallback as Q, useEffect as I } from "react";
|
3
|
+
import { getGradesFromConfig as W } from "../milestone/create/milestone-create-helpers.js";
|
4
|
+
import X from "../ui/layout/flex-view.js";
|
5
|
+
import Y from "./context/trial-session-context.js";
|
6
|
+
import { useButtonStateForLeftPanel as Z } from "./hooks/use-left-panel-button-state.js";
|
7
|
+
import ee from "./left-panel/index.js";
|
8
|
+
import te from "./right-panel/index.js";
|
9
|
+
const de = J((H) => {
|
9
10
|
const {
|
10
11
|
userType: o,
|
11
|
-
teacherPanel:
|
12
|
-
studentPanel:
|
13
|
-
trialGameUrl:
|
12
|
+
teacherPanel: S,
|
13
|
+
studentPanel: _,
|
14
|
+
trialGameUrl: T,
|
14
15
|
formData: i,
|
15
|
-
height:
|
16
|
-
trialHomeData:
|
17
|
-
milestoneConfig:
|
18
|
-
onFormDataChange:
|
19
|
-
worksheet:
|
16
|
+
height: L = "100vh",
|
17
|
+
trialHomeData: t,
|
18
|
+
milestoneConfig: l,
|
19
|
+
onFormDataChange: u,
|
20
|
+
worksheet: x,
|
20
21
|
studentId: r,
|
21
22
|
teacherId: s,
|
22
23
|
classStartedOn: P,
|
23
24
|
worksheetNavigationPanel: v,
|
24
|
-
questionsRatingPanel:
|
25
|
-
studentAbsentInClass:
|
25
|
+
questionsRatingPanel: y,
|
26
|
+
studentAbsentInClass: E,
|
26
27
|
openEndClassModal: $,
|
27
28
|
onTrialInformationUpdate: w,
|
28
|
-
onStudentTimezoneUpdate:
|
29
|
-
handleInfoMessage:
|
30
|
-
onRemoveOptionalSlides:
|
31
|
-
classDuration:
|
32
|
-
studentTimezone:
|
33
|
-
classTimeAlertConfig:
|
34
|
-
} =
|
35
|
-
() =>
|
36
|
-
[
|
37
|
-
),
|
38
|
-
const
|
39
|
-
circleConfig:
|
29
|
+
onStudentTimezoneUpdate: f,
|
30
|
+
handleInfoMessage: F,
|
31
|
+
onRemoveOptionalSlides: G,
|
32
|
+
classDuration: M,
|
33
|
+
studentTimezone: g,
|
34
|
+
classTimeAlertConfig: k
|
35
|
+
} = H, a = o === "TEACHER", { pages: h = [], student: O } = t, { name: R, grade: c } = O || {}, [n, q] = K(i), p = a ? n : i, C = p == null ? void 0 : p.id, b = m(
|
36
|
+
() => h.find((e) => e.id === C) ?? h[0],
|
37
|
+
[C, h]
|
38
|
+
), j = m(() => {
|
39
|
+
const e = {
|
40
|
+
circleConfig: t.circle_trial_game_config,
|
40
41
|
playerDetails: {
|
41
42
|
matchMakingId: `${s}_${r}_trial_v3`,
|
42
|
-
userId:
|
43
|
-
circle_username:
|
44
|
-
user_avatar:
|
43
|
+
userId: a ? s : r,
|
44
|
+
circle_username: t[a ? "teacher" : "student"].circle_username,
|
45
|
+
user_avatar: t[a ? "teacher" : "student"].user_avatar,
|
45
46
|
playerType: o
|
46
47
|
}
|
47
48
|
};
|
48
|
-
return o === "STUDENT" && (
|
49
|
-
}, [
|
50
|
-
|
51
|
-
}, []), { buttonState:
|
49
|
+
return o === "STUDENT" && (e.playerDetails.grade = t.student.grade), e;
|
50
|
+
}, [a, r, s, t, o]), d = Q((e) => {
|
51
|
+
q((B) => B ? { ...B, ...e } : e);
|
52
|
+
}, []), { buttonState: A, updateButtonState: N } = Z(), U = m(
|
52
53
|
() => ({
|
53
|
-
teacherPanel:
|
54
|
-
studentPanel:
|
55
|
-
isTeacher:
|
56
|
-
slideConfig:
|
57
|
-
milestoneConfig:
|
58
|
-
formData:
|
59
|
-
updateSlideConfig:
|
60
|
-
worksheet:
|
61
|
-
buttonState:
|
54
|
+
teacherPanel: S,
|
55
|
+
studentPanel: _,
|
56
|
+
isTeacher: a,
|
57
|
+
slideConfig: b,
|
58
|
+
milestoneConfig: l,
|
59
|
+
formData: a ? n : i,
|
60
|
+
updateSlideConfig: d,
|
61
|
+
worksheet: x,
|
62
|
+
buttonState: A,
|
62
63
|
updateButtonState: N,
|
63
64
|
studentId: r,
|
64
65
|
teacherId: s,
|
65
66
|
classStartedOn: P,
|
66
|
-
trialHomeData:
|
67
|
+
trialHomeData: t,
|
67
68
|
worksheetNavigationPanel: v,
|
68
|
-
questionsRatingPanel:
|
69
|
+
questionsRatingPanel: y,
|
69
70
|
onTrialInformationUpdate: w,
|
70
71
|
openEndClassModal: $,
|
71
|
-
studentAbsentInClass:
|
72
|
-
circleGames:
|
73
|
-
trialGameUrl:
|
74
|
-
handleInfoMessage:
|
75
|
-
onRemoveOptionalSlides:
|
76
|
-
classDuration:
|
77
|
-
classTimeAlertConfig:
|
72
|
+
studentAbsentInClass: E,
|
73
|
+
circleGames: j,
|
74
|
+
trialGameUrl: T,
|
75
|
+
handleInfoMessage: F,
|
76
|
+
onRemoveOptionalSlides: G,
|
77
|
+
classDuration: M,
|
78
|
+
classTimeAlertConfig: k
|
78
79
|
}),
|
79
80
|
[
|
80
|
-
D,
|
81
81
|
S,
|
82
|
-
|
83
|
-
|
84
|
-
|
82
|
+
_,
|
83
|
+
a,
|
84
|
+
b,
|
85
|
+
l,
|
85
86
|
n,
|
86
87
|
i,
|
87
|
-
|
88
|
-
|
89
|
-
|
88
|
+
d,
|
89
|
+
x,
|
90
|
+
A,
|
90
91
|
N,
|
91
92
|
r,
|
92
93
|
s,
|
93
94
|
P,
|
94
|
-
|
95
|
+
t,
|
95
96
|
v,
|
96
|
-
|
97
|
+
y,
|
97
98
|
w,
|
98
99
|
$,
|
99
|
-
y,
|
100
|
-
A,
|
101
|
-
_,
|
102
100
|
E,
|
103
|
-
|
101
|
+
j,
|
102
|
+
T,
|
104
103
|
F,
|
105
|
-
|
104
|
+
G,
|
105
|
+
M,
|
106
|
+
k
|
106
107
|
]
|
107
108
|
);
|
108
|
-
|
109
|
-
n &&
|
110
|
-
}, [
|
111
|
-
|
112
|
-
}, [
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
109
|
+
I(() => {
|
110
|
+
n && u && u(n);
|
111
|
+
}, [u, n]), I(() => {
|
112
|
+
g || f == null || f();
|
113
|
+
}, [C]);
|
114
|
+
const V = m(
|
115
|
+
() => !!W(l).find((e) => e.id === c),
|
116
|
+
[l, c]
|
117
|
+
);
|
118
|
+
return I(() => {
|
119
|
+
d({
|
120
|
+
studentTimezone: g,
|
121
|
+
name: R,
|
122
|
+
grade: V ? c : ""
|
123
|
+
});
|
124
|
+
}, [
|
125
|
+
R,
|
126
|
+
c,
|
127
|
+
d,
|
128
|
+
g,
|
129
|
+
V
|
130
|
+
]), /* @__PURE__ */ D(Y.Provider, { value: U, children: /* @__PURE__ */ z(X, { $height: L, $flexDirection: "row", $justifyContent: "center", $alignItems: "center", children: [
|
131
|
+
/* @__PURE__ */ D(ee, {}),
|
132
|
+
/* @__PURE__ */ D(te, {})
|
117
133
|
] }) });
|
118
134
|
});
|
119
135
|
export {
|
120
|
-
|
136
|
+
de as default
|
121
137
|
};
|
122
138
|
//# sourceMappingURL=trial-session-view.js.map
|