@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.
Files changed (234) hide show
  1. package/dist/assets/lottie/lottie.js +61 -0
  2. package/dist/assets/lottie/lottie.js.map +1 -0
  3. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js +81 -79
  4. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js.map +1 -1
  5. package/dist/features/circle-games/game-launcher/game-launcher.js +61 -65
  6. package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
  7. package/dist/features/circle-games/leaderboard/comps/banner/banner.js +35 -53
  8. package/dist/features/circle-games/leaderboard/comps/banner/banner.js.map +1 -1
  9. package/dist/features/circle-games/leaderboard/leaderboard.js +56 -55
  10. package/dist/features/circle-games/leaderboard/leaderboard.js.map +1 -1
  11. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js +40 -41
  12. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js.map +1 -1
  13. package/dist/features/circle-games/sign-up/comp/spinner/spinner-styled.js +4 -8
  14. package/dist/features/circle-games/sign-up/comp/spinner/spinner-styled.js.map +1 -1
  15. package/dist/features/circle-games/sign-up/comp/spinner/spinner.js +6 -23
  16. package/dist/features/circle-games/sign-up/comp/spinner/spinner.js.map +1 -1
  17. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js +40 -35
  18. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js.map +1 -1
  19. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/difficulty-and-duration-selection.js +2 -2
  20. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-card-lottie-animation.js +8 -23
  21. 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
  22. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js +11 -11
  23. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js.map +1 -1
  24. package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js +37 -43
  25. package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js.map +1 -1
  26. package/dist/features/post-game-stats/accuracy/accuracy.js +38 -34
  27. package/dist/features/post-game-stats/accuracy/accuracy.js.map +1 -1
  28. package/dist/features/post-game-stats/clock/clock.js +43 -39
  29. package/dist/features/post-game-stats/clock/clock.js.map +1 -1
  30. package/dist/features/post-game-stats/points/points.js +43 -44
  31. package/dist/features/post-game-stats/points/points.js.map +1 -1
  32. package/dist/features/post-game-stats/streak/streak.js +30 -28
  33. package/dist/features/post-game-stats/streak/streak.js.map +1 -1
  34. package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js +56 -54
  35. package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js.map +1 -1
  36. package/dist/features/trial-session/comps/parent-app/parent-app.js +25 -20
  37. package/dist/features/trial-session/comps/parent-app/parent-app.js.map +1 -1
  38. package/dist/features/trial-session/comps/session-insights/session-insights.js +40 -39
  39. package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
  40. package/dist/features/ui/loader/circular-loader/circular-loader.js +16 -20
  41. package/dist/features/ui/loader/circular-loader/circular-loader.js.map +1 -1
  42. package/dist/features/ui/lottie-animation/helper.js +13 -0
  43. package/dist/features/ui/lottie-animation/helper.js.map +1 -0
  44. package/dist/features/ui/lottie-animation/lottie-animation.js +37 -0
  45. package/dist/features/ui/lottie-animation/lottie-animation.js.map +1 -0
  46. package/dist/features/ui/nudge/nudge-styled.js +4 -8
  47. package/dist/features/ui/nudge/nudge-styled.js.map +1 -1
  48. package/dist/features/ui/nudge/nudge.js +13 -30
  49. package/dist/features/ui/nudge/nudge.js.map +1 -1
  50. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js +22 -20
  51. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js.map +1 -1
  52. package/dist/features/worksheet/worksheet/worksheet-permissions/error.js +25 -48
  53. package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
  54. package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js +12 -26
  55. package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js.map +1 -1
  56. package/dist/index.d.ts +58 -0
  57. package/dist/index.js +466 -464
  58. package/dist/index.js.map +1 -1
  59. package/dist/static/accuracy-meter.99585cba.json +4218 -0
  60. package/dist/static/accuracy-needle.cd6e63ac.json +618 -0
  61. package/dist/static/beginner1x.489908a7.json +3508 -0
  62. package/dist/static/bronze-1.da4e4b5f.json +4176 -0
  63. package/dist/static/bronze-2.97f9c639.json +4433 -0
  64. package/dist/static/bronze-3.6a433ebd.json +4786 -0
  65. package/dist/static/circular-loader.a5a1a0a6.json +238 -0
  66. package/dist/static/clock-30min.eae818b8.json +1197 -0
  67. package/dist/static/clock-45min.df8adf51.json +1197 -0
  68. package/dist/static/clock-60min.2b48d875.json +1197 -0
  69. package/dist/static/clock-90min.3e557ed7.json +1407 -0
  70. package/dist/static/color-1.45101b9a.json +4545 -0
  71. package/dist/static/color-2.ccdc7d0a.json +4828 -0
  72. package/dist/static/color-3.5e8e1422.json +5273 -0
  73. package/dist/static/difficult.6846c064.json +2755 -0
  74. package/dist/static/easy-rescheduling-lottie.28026af9.json +9301 -0
  75. package/dist/static/easy.68242ddd.json +2658 -0
  76. package/dist/static/elite-circle.3df58972.json +6876 -0
  77. package/dist/static/error-lottie.b3507a4b.json +5255 -0
  78. package/dist/static/familiar1x.7c9c7f15.json +3046 -0
  79. package/dist/static/fifteen-min-clock.0af4e303.json +715 -0
  80. package/dist/static/five-min-clock.6be5cc41.json +721 -0
  81. package/dist/static/gold-1.ab2489fe.json +4176 -0
  82. package/dist/static/gold-2.34045826.json +4441 -0
  83. package/dist/static/gold-3.d704698b.json +4810 -0
  84. package/dist/static/levelup-rings.b1055283.json +549 -0
  85. package/dist/static/medium.94c3829b.json +2289 -0
  86. package/dist/static/nudge-tap.5cb30093.json +1057 -0
  87. package/dist/static/point1.b53831de.json +2942 -0
  88. package/dist/static/point10.7b5e536d.json +3179 -0
  89. package/dist/static/point100.1df16f82.json +3196 -0
  90. package/dist/static/point15.fea00c32.json +3179 -0
  91. package/dist/static/point20.c88d776d.json +3178 -0
  92. package/dist/static/point25.a18c346a.json +3178 -0
  93. package/dist/static/point30.c5224b0b.json +3202 -0
  94. package/dist/static/point35.fad343dd.json +3058 -0
  95. package/dist/static/point40.10a16f72.json +3082 -0
  96. package/dist/static/point45.2ad7561f.json +3082 -0
  97. package/dist/static/point5.da40ed1f.json +2948 -0
  98. package/dist/static/point50.5718cb3d.json +3046 -0
  99. package/dist/static/point60.17380d9f.json +3076 -0
  100. package/dist/static/proficient1x.fa6e7b80.json +3430 -0
  101. package/dist/static/silver-1.0396328a.json +4168 -0
  102. package/dist/static/silver-2.bf50615f.json +4433 -0
  103. package/dist/static/silver-3.13d66b84.json +4810 -0
  104. package/dist/static/sleepy-boi.031a1165.json +1008 -0
  105. package/dist/static/spinner-white.639e0d87.json +122 -0
  106. package/dist/static/splash-screen.bbf567ce.json +2411 -0
  107. package/dist/static/stay-connected-lottie.111439b3.json +3547 -0
  108. package/dist/static/teacher-validation.7577ecdc.json +245 -0
  109. package/dist/static/total-streak.d5ce7669.json +842 -0
  110. package/dist/static/total-time-spent.434005d3.json +200 -0
  111. package/dist/static/total-time.d979cbb9.json +24383 -0
  112. package/dist/static/tournament-ripple.e5c239a5.json +1047 -0
  113. package/dist/static/track-progress-lottie.422108cf.json +2972 -0
  114. package/package.json +1 -1
  115. package/dist/assets/lotties/circle/100pts.json.js +0 -7957
  116. package/dist/assets/lotties/circle/100pts.json.js.map +0 -1
  117. package/dist/assets/lotties/circle/10pts.json.js +0 -7753
  118. package/dist/assets/lotties/circle/10pts.json.js.map +0 -1
  119. package/dist/assets/lotties/circle/15pts.json.js +0 -7879
  120. package/dist/assets/lotties/circle/15pts.json.js.map +0 -1
  121. package/dist/assets/lotties/circle/1pts.json.js +0 -7257
  122. package/dist/assets/lotties/circle/1pts.json.js.map +0 -1
  123. package/dist/assets/lotties/circle/20pts.json.js +0 -7845
  124. package/dist/assets/lotties/circle/20pts.json.js.map +0 -1
  125. package/dist/assets/lotties/circle/25pts.json.js +0 -7971
  126. package/dist/assets/lotties/circle/25pts.json.js.map +0 -1
  127. package/dist/assets/lotties/circle/30pts.json.js +0 -7941
  128. package/dist/assets/lotties/circle/30pts.json.js.map +0 -1
  129. package/dist/assets/lotties/circle/35pts.json.js +0 -7881
  130. package/dist/assets/lotties/circle/35pts.json.js.map +0 -1
  131. package/dist/assets/lotties/circle/40pts.json.js +0 -7725
  132. package/dist/assets/lotties/circle/40pts.json.js.map +0 -1
  133. package/dist/assets/lotties/circle/45pts.json.js +0 -7851
  134. package/dist/assets/lotties/circle/45pts.json.js.map +0 -1
  135. package/dist/assets/lotties/circle/50pts.json.js +0 -7707
  136. package/dist/assets/lotties/circle/50pts.json.js.map +0 -1
  137. package/dist/assets/lotties/circle/5pts.json.js +0 -7420
  138. package/dist/assets/lotties/circle/5pts.json.js.map +0 -1
  139. package/dist/assets/lotties/circle/60pts.json.js +0 -7701
  140. package/dist/assets/lotties/circle/60pts.json.js.map +0 -1
  141. package/dist/assets/lotties/circle/accuracy-meter-lottie.json.js +0 -6811
  142. package/dist/assets/lotties/circle/accuracy-meter-lottie.json.js.map +0 -1
  143. package/dist/assets/lotties/circle/accuracy-needle-lottie.json.js +0 -1503
  144. package/dist/assets/lotties/circle/accuracy-needle-lottie.json.js.map +0 -1
  145. package/dist/assets/lotties/circle/circular-loader.json.js +0 -635
  146. package/dist/assets/lotties/circle/circular-loader.json.js.map +0 -1
  147. package/dist/assets/lotties/circle/elite-circle-lottie.json.js +0 -12079
  148. package/dist/assets/lotties/circle/elite-circle-lottie.json.js.map +0 -1
  149. package/dist/assets/lotties/circle/levelup-rings-lottie.json.js +0 -1412
  150. package/dist/assets/lotties/circle/levelup-rings-lottie.json.js.map +0 -1
  151. package/dist/assets/lotties/circle/sleepy-boi-lottie.json.js +0 -2632
  152. package/dist/assets/lotties/circle/sleepy-boi-lottie.json.js.map +0 -1
  153. package/dist/assets/lotties/circle/spinner-white.json.js +0 -316
  154. package/dist/assets/lotties/circle/spinner-white.json.js.map +0 -1
  155. package/dist/assets/lotties/circle/splash-screen.json.js +0 -5864
  156. package/dist/assets/lotties/circle/splash-screen.json.js.map +0 -1
  157. package/dist/assets/lotties/circle/total-streak-lottie.json.js +0 -2103
  158. package/dist/assets/lotties/circle/total-streak-lottie.json.js.map +0 -1
  159. package/dist/assets/lotties/circle/total-time-lottie.json.js +0 -33016
  160. package/dist/assets/lotties/circle/total-time-lottie.json.js.map +0 -1
  161. package/dist/assets/lotties/circle/total-time-spent-lottie.json.js +0 -260
  162. package/dist/assets/lotties/circle/total-time-spent-lottie.json.js.map +0 -1
  163. package/dist/assets/lotties/circle/tournament-ripple-lottie.json.js +0 -1563
  164. package/dist/assets/lotties/circle/tournament-ripple-lottie.json.js.map +0 -1
  165. package/dist/assets/lotties/common/nudge-tap.json.js +0 -3597
  166. package/dist/assets/lotties/common/nudge-tap.json.js.map +0 -1
  167. package/dist/assets/lotties/error-lottie.json.js +0 -12755
  168. package/dist/assets/lotties/error-lottie.json.js.map +0 -1
  169. package/dist/assets/lotties/perfect-hits/bronze-1.json.js +0 -10871
  170. package/dist/assets/lotties/perfect-hits/bronze-1.json.js.map +0 -1
  171. package/dist/assets/lotties/perfect-hits/bronze-2.json.js +0 -11389
  172. package/dist/assets/lotties/perfect-hits/bronze-2.json.js.map +0 -1
  173. package/dist/assets/lotties/perfect-hits/bronze-3.json.js +0 -12169
  174. package/dist/assets/lotties/perfect-hits/bronze-3.json.js.map +0 -1
  175. package/dist/assets/lotties/perfect-hits/color-1.json.js +0 -12348
  176. package/dist/assets/lotties/perfect-hits/color-1.json.js.map +0 -1
  177. package/dist/assets/lotties/perfect-hits/color-2.json.js +0 -12941
  178. package/dist/assets/lotties/perfect-hits/color-2.json.js.map +0 -1
  179. package/dist/assets/lotties/perfect-hits/color-3.json.js +0 -14034
  180. package/dist/assets/lotties/perfect-hits/color-3.json.js.map +0 -1
  181. package/dist/assets/lotties/perfect-hits/gold-1.json.js +0 -10871
  182. package/dist/assets/lotties/perfect-hits/gold-1.json.js.map +0 -1
  183. package/dist/assets/lotties/perfect-hits/gold-2.json.js +0 -11389
  184. package/dist/assets/lotties/perfect-hits/gold-2.json.js.map +0 -1
  185. package/dist/assets/lotties/perfect-hits/gold-3.json.js +0 -12169
  186. package/dist/assets/lotties/perfect-hits/gold-3.json.js.map +0 -1
  187. package/dist/assets/lotties/perfect-hits/silver-1.json.js +0 -10871
  188. package/dist/assets/lotties/perfect-hits/silver-1.json.js.map +0 -1
  189. package/dist/assets/lotties/perfect-hits/silver-2.json.js +0 -11389
  190. package/dist/assets/lotties/perfect-hits/silver-2.json.js.map +0 -1
  191. package/dist/assets/lotties/perfect-hits/silver-3.json.js +0 -12169
  192. package/dist/assets/lotties/perfect-hits/silver-3.json.js.map +0 -1
  193. package/dist/assets/lotties/teacher-validation.json.js +0 -649
  194. package/dist/assets/lotties/teacher-validation.json.js.map +0 -1
  195. package/dist/assets/lotties/tests-creation/clock_30_min.json.js +0 -2857
  196. package/dist/assets/lotties/tests-creation/clock_30_min.json.js.map +0 -1
  197. package/dist/assets/lotties/tests-creation/clock_45_min.json.js +0 -2857
  198. package/dist/assets/lotties/tests-creation/clock_45_min.json.js.map +0 -1
  199. package/dist/assets/lotties/tests-creation/clock_60_min.json.js +0 -2857
  200. package/dist/assets/lotties/tests-creation/clock_60_min.json.js.map +0 -1
  201. package/dist/assets/lotties/tests-creation/clock_90_min.json.js +0 -3345
  202. package/dist/assets/lotties/tests-creation/clock_90_min.json.js.map +0 -1
  203. package/dist/assets/lotties/tests-creation/difficult.json.js +0 -6713
  204. package/dist/assets/lotties/tests-creation/difficult.json.js.map +0 -1
  205. package/dist/assets/lotties/tests-creation/easy.json.js +0 -6525
  206. package/dist/assets/lotties/tests-creation/easy.json.js.map +0 -1
  207. package/dist/assets/lotties/tests-creation/medium.json.js +0 -5603
  208. package/dist/assets/lotties/tests-creation/medium.json.js.map +0 -1
  209. package/dist/assets/lotties/trial-v3/15min-clock.json.js +0 -2037
  210. package/dist/assets/lotties/trial-v3/15min-clock.json.js.map +0 -1
  211. package/dist/assets/lotties/trial-v3/5min-clock.json.js +0 -2062
  212. package/dist/assets/lotties/trial-v3/5min-clock.json.js.map +0 -1
  213. package/dist/assets/lotties/trial-v3/insight/beginner1x.json.js +0 -8517
  214. package/dist/assets/lotties/trial-v3/insight/beginner1x.json.js.map +0 -1
  215. package/dist/assets/lotties/trial-v3/insight/familiar1x.json.js +0 -7396
  216. package/dist/assets/lotties/trial-v3/insight/familiar1x.json.js.map +0 -1
  217. package/dist/assets/lotties/trial-v3/insight/proficient1x.json.js +0 -8559
  218. package/dist/assets/lotties/trial-v3/insight/proficient1x.json.js.map +0 -1
  219. package/dist/assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json.js +0 -23284
  220. package/dist/assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json.js.map +0 -1
  221. package/dist/assets/lotties/trial-v3/parent-app/stay-connected-lottie.json.js +0 -9090
  222. package/dist/assets/lotties/trial-v3/parent-app/stay-connected-lottie.json.js.map +0 -1
  223. package/dist/assets/lotties/trial-v3/parent-app/track-progress-lottie.json.js +0 -8675
  224. package/dist/assets/lotties/trial-v3/parent-app/track-progress-lottie.json.js.map +0 -1
  225. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/fetch-lottie.js +0 -13
  226. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/fetch-lottie.js.map +0 -1
  227. package/dist/features/circle-games/game-launcher/game-launcher-styled.js +0 -10
  228. package/dist/features/circle-games/game-launcher/game-launcher-styled.js.map +0 -1
  229. package/dist/features/post-game-stats/points/points-styled.js +0 -10
  230. package/dist/features/post-game-stats/points/points-styled.js.map +0 -1
  231. package/dist/features/trial-session/comps/render-lottie/index.js +0 -26
  232. package/dist/features/trial-session/comps/render-lottie/index.js.map +0 -1
  233. package/dist/features/ui/loader/circular-loader/circular-loader-styled.js +0 -17
  234. package/dist/features/ui/loader/circular-loader/circular-loader-styled.js.map +0 -1
@@ -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 e, jsx as t } from "react/jsx-runtime";
2
- import { IMAGES as i } from "../../../../assets/images/images.js";
3
- import o from "../../../ui/image/image.js";
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 r from "../../../ui/separator/separator.js";
6
- import a from "../../../ui/text/text.js";
7
- import m from "../render-lottie/index.js";
8
- import d from "../slide-header/index.js";
9
- import { Container as c, Wrapper as s } from "./parent-app-styled.js";
10
- const f = () => import("../../../../assets/lotties/trial-v3/parent-app/stay-connected-lottie.json.js"), l = () => import("../../../../assets/lotties/trial-v3/parent-app/track-progress-lottie.json.js"), g = () => import("../../../../assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json.js"), $ = [f, l, g], j = () => /* @__PURE__ */ e(c, { children: [
11
- /* @__PURE__ */ t(r, { height: 60 }),
12
- /* @__PURE__ */ t(d, {}),
13
- /* @__PURE__ */ t(n, { $justifyContent: "center", $flexDirection: "row", $flexGap: 50, children: $.map((h, p) => /* @__PURE__ */ t(m, { width: 200, height: 300, lottiePromise: h }, p)) }),
14
- /* @__PURE__ */ t(r, { height: 51 }),
15
- /* @__PURE__ */ e(s, { $width: 448, $height: 99, $background: "WHITE", $gapX: 0.75, children: [
16
- /* @__PURE__ */ e(n, { $width: 450, $justifyContent: "center", $flexDirection: "row", children: [
17
- /* @__PURE__ */ t(o, { withLoader: !0, src: i.PLAYSTORE, width: 150, height: 50 }),
18
- /* @__PURE__ */ t(o, { withLoader: !0, src: i.APPSTORE, width: 150, height: 50 })
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__ */ t(r, { height: 6 }),
21
- /* @__PURE__ */ t(a, { $align: "center", $renderAs: "ub3", children: "The Cuemath App is available on iOS & Android" })
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
- j as default
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 Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport RenderLottie from '../render-lottie';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './parent-app-styled';\n\nconst stayConnected = () =>\n import('../../../../assets/lotties/trial-v3/parent-app/stay-connected-lottie.json');\nconst trackProgress = () =>\n import('../../../../assets/lotties/trial-v3/parent-app/track-progress-lottie.json');\nconst easyRescheduling = () =>\n import('../../../../assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json');\n\nconst parentAppLottie = [stayConnected, trackProgress, easyRescheduling];\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((lottiePromise, index) => (\n <RenderLottie key={index} width={200} height={300} lottiePromise={lottiePromise} />\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":["stayConnected","trackProgress","easyRescheduling","parentAppLottie","ParentApp","jsxs","Styled.Container","jsx","Separator","SlideHeader","FlexView","lottiePromise","index","RenderLottie","Styled.Wrapper","Image","IMAGES","Text"],"mappings":";;;;;;;;;AAWA,MAAMA,IAAgB,MACpB,OAAO,8EAA2E,GAC9EC,IAAgB,MACpB,OAAO,8EAA2E,GAC9EC,IAAmB,MACvB,OAAO,iFAA8E,GAEjFC,IAAkB,CAACH,GAAeC,GAAeC,CAAgB,GAEjEE,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,UAAAP,EAAgB,IAAI,CAACQ,GAAeC,MACnC,gBAAAL,EAACM,KAAyB,OAAO,KAAK,QAAQ,KAAK,eAAAF,EAAA,GAAhCC,CAA8D,CAClF,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
+ {"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 I, useCallback as u, useEffect as L } from "react";
3
- import { ILLUSTRATIONS as l } from "../../../../assets/illustrations/illustrations.js";
4
- import C from "../../../ui/error/error.js";
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 h from "../../../ui/separator/separator.js";
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 E } from "../../api/trial-home.js";
10
- import { useTrialSessionContext as b } from "../../context/use-trial-session-context.js";
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 N, LottieWrapper as F, RatingBlock as K } from "./session-insights-styled.js";
14
- const j = {
15
- BEGINNER: () => import("../../../../assets/lotties/trial-v3/insight/beginner1x.json.js"),
16
- FAMILIAR: () => import("../../../../assets/lotties/trial-v3/insight/familiar1x.json.js"),
17
- PROFICIENT: () => import("../../../../assets/lotties/trial-v3/insight/proficient1x.json.js")
18
- }, k = {
19
- 1: l.ONE_STAR_FILLED,
20
- 2: l.TWO_STARS_FILLED,
21
- 3: l.THREE_STARS_FILLED
22
- }, J = I(() => {
23
- const { formData: $ } = b(), { attemptId: n = "kdbkb" } = $ || {}, {
24
- data: g,
25
- get: m,
26
- isProcessing: f,
27
- isProcessingFailed: _
28
- } = E(), { topic_aggregation: A = [], depth_aggregation: T = [] } = g || {}, c = u(() => {
29
- n && m(n);
30
- }, [n, m]);
31
- return L(() => {
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]), _ ? /* @__PURE__ */ e(C, { height: "70vh", onTryAgain: c }) : f || !g ? /* @__PURE__ */ e(S, { height: "100vh" }) : /* @__PURE__ */ t(D, { children: [
34
- /* @__PURE__ */ e(h, { height: 60 }),
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: p
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(N, { title: i, $renderAs: "ab2-bold", $color: "BLACK_T_87", children: i }),
61
- /* @__PURE__ */ e(F, { children: /* @__PURE__ */ e(R, { height: 272, lottiePromise: j[r] }) }),
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: p })
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
- K,
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: p
89
+ star_description: l
89
90
  } = s;
90
91
  return /* @__PURE__ */ t(d, { $width: 88, children: [
91
- /* @__PURE__ */ e("img", { src: k[r], height: 24, width: 88 }),
92
- /* @__PURE__ */ e(h, { height: 4 }),
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: p })
104
+ children: /* @__PURE__ */ e(o, { $renderAs: "ub3", $color: "BLACK_T_87", children: l })
104
105
  }
105
106
  ),
106
- /* @__PURE__ */ e(h, { heightX: 1 }),
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
- J as default
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 RenderLottie from '../render-lottie';\nimport SlideHeader from '../slide-header';\nimport * as Styled from './session-insights-styled';\n\nconst proficiencyLottieMap: TProficiencyLottieMap = {\n BEGINNER: () => import('../../../../assets/lotties/trial-v3/insight/beginner1x.json'),\n FAMILIAR: () => import('../../../../assets/lotties/trial-v3/insight/familiar1x.json'),\n PROFICIENT: () => import('../../../../assets/lotties/trial-v3/insight/proficient1x.json'),\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 <RenderLottie height={272} lottiePromise={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","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","RenderLottie","Text","Styled.RatingBlock","star","depthDescription","starDescription"],"mappings":"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"}
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 o } from "react/jsx-runtime";
2
- import e from "lottie-web";
3
- import { useRef as i, useEffect as n } from "react";
4
- import a from "../../../../assets/lotties/circle/circular-loader.json.js";
5
- import { Loader as m, LottieContainer as u } from "./circular-loader-styled.js";
6
- const d = () => {
7
- const r = i(null);
8
- return n(() => {
9
- const t = e.loadAnimation({
10
- container: r.current,
11
- animationData: a,
12
- autoplay: !0,
13
- loop: !0
14
- });
15
- return () => {
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
- d as CircularLoader
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 Lottie from 'lottie-web';\nimport { useEffect, useRef } from 'react';\n\nimport circularLoader from '../../../../assets/lotties/circle/circular-loader.json';\nimport * as Styled from './circular-loader-styled';\n\nexport const CircularLoader = () => {\n const lottieContainerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const animation = Lottie.loadAnimation({\n container: lottieContainerRef.current as Element,\n animationData: circularLoader,\n autoplay: true,\n loop: true,\n });\n\n return () => {\n animation.destroy();\n };\n }, []);\n\n return (\n <Styled.Loader>\n <Styled.LottieContainer ref={lottieContainerRef} />\n </Styled.Loader>\n );\n};\n"],"names":["CircularLoader","lottieContainerRef","useRef","useEffect","animation","Lottie","circularLoader","jsx","Styled.Loader","Styled.LottieContainer"],"mappings":";;;;;AAMO,MAAMA,IAAiB,MAAM;AAC5B,QAAAC,IAAqBC,EAAuB,IAAI;AAEtD,SAAAC,EAAU,MAAM;AACR,UAAAC,IAAYC,EAAO,cAAc;AAAA,MACrC,WAAWJ,EAAmB;AAAA,MAC9B,eAAeK;AAAA,MACf,UAAU;AAAA,MACV,MAAM;AAAA,IAAA,CACP;AAED,WAAO,MAAM;AACX,MAAAF,EAAU,QAAQ;AAAA,IAAA;AAAA,EAEtB,GAAG,CAAE,CAAA,GAGH,gBAAAG,EAACC,GAAA,EACC,UAAA,gBAAAD,EAACE,GAAA,EAAuB,KAAKR,GAAoB,EACnD,CAAA;AAEJ;"}
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 o from "../layout/flex-view.js";
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(o)`
15
- height: 64px;
16
- width: 64px;
14
+ `, p = e(n)`
17
15
  overflow: hidden;
18
- `, s = e.div`
19
- cursor: pointer;
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 height: 64px;\n width: 64px;\n overflow: hidden;\n`;\n\nexport const Nudge = styled.div`\n cursor: pointer;\n & > svg {\n transform: scale(3.5) !important;\n }\n`;\n"],"names":["NudgeWrapper","styled","$top","$left","$zIndex","NudgeLottieContainer","FlexView","Nudge"],"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,GAMtCC,IAAQN,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;"}
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 d, jsx as e } from "react/jsx-runtime";
2
- import l from "lottie-web";
3
- import { useRef as s, useEffect as m } from "react";
4
- import { NudgeWrapper as c, NudgeLottieContainer as p, Nudge as f } from "./nudge-styled.js";
5
- const g = () => import("../../../assets/lotties/common/nudge-tap.json.js"), N = ({
6
- content: n,
7
- nudgePointerX: r = 0,
8
- nudgePointerY: a = 0,
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
- const o = s(null);
12
- return m(() => {
13
- let t = null;
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
- j as default
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 type { AnimationItem } from 'lottie-web';\n\nimport Lottie from 'lottie-web';\nimport React, { useEffect, useRef } from 'react';\n\nimport * as S from './nudge-styled';\n\nconst tapLottie = () => import('../../../assets/lotties/common/nudge-tap.json');\n\nconst Nudge: React.FC<INudgeProps> = ({\n content,\n nudgePointerX = 0,\n nudgePointerY = 0,\n zIndex = 100,\n}) => {\n const lottieContainer = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n let animation: AnimationItem | null = null;\n const loadAnimation = async () => {\n const animationModule = await tapLottie();\n const animationData = animationModule.default;\n\n animation = Lottie.loadAnimation({\n container: lottieContainer.current as Element,\n animationData: animationData,\n autoplay: true,\n loop: true,\n renderer: 'svg',\n });\n };\n\n loadAnimation();\n\n return () => {\n animation?.destroy();\n };\n }, []);\n\n return (\n <S.NudgeWrapper $top={nudgePointerY} $left={nudgePointerX} $zIndex={zIndex}>\n <S.NudgeLottieContainer>\n <S.Nudge ref={lottieContainer} />\n </S.NudgeLottieContainer>\n {content}\n </S.NudgeWrapper>\n );\n};\n\nexport default Nudge;\n"],"names":["tapLottie","Nudge","content","nudgePointerX","nudgePointerY","zIndex","lottieContainer","useRef","useEffect","animation","animationData","Lottie","jsxs","S.NudgeWrapper","jsx","S.NudgeLottieContainer","S.Nudge","Nudge$1"],"mappings":";;;;AAQA,MAAMA,IAAY,MAAM,OAAO,kDAA+C,GAExEC,IAA+B,CAAC;AAAA,EACpC,SAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,eAAAC,IAAgB;AAAA,EAChB,QAAAC,IAAS;AACX,MAAM;AACE,QAAAC,IAAkBC,EAAuB,IAAI;AAEnD,SAAAC,EAAU,MAAM;AACd,QAAIC,IAAkC;AAcxB,YAbQ,YAAY;AAEhC,YAAMC,KADkB,MAAMV,KACQ;AAEtC,MAAAS,IAAYE,EAAO,cAAc;AAAA,QAC/B,WAAWL,EAAgB;AAAA,QAC3B,eAAAI;AAAA,QACA,UAAU;AAAA,QACV,MAAM;AAAA,QACN,UAAU;AAAA,MAAA,CACX;AAAA,IAAA,MAKI,MAAM;AACX,MAAAD,KAAA,QAAAA,EAAW;AAAA,IAAQ;AAAA,EAEvB,GAAG,CAAE,CAAA,GAGH,gBAAAG,EAACC,GAAA,EAAe,MAAMT,GAAe,OAAOD,GAAe,SAASE,GAClE,UAAA;AAAA,IAAC,gBAAAS,EAAAC,GAAA,EACC,UAAA,gBAAAD,EAACE,GAAA,EAAQ,KAAKV,EAAiB,CAAA,GACjC;AAAA,IACCJ;AAAA,EACH,EAAA,CAAA;AAEJ,GAEAe,IAAehB;"}
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 { RANGE_SIZE as o, TIERS as r } from "./constants.js";
2
- const a = {
3
- bronze_1: () => import("../../../assets/lotties/perfect-hits/bronze-1.json.js"),
4
- bronze_2: () => import("../../../assets/lotties/perfect-hits/bronze-2.json.js"),
5
- bronze_3: () => import("../../../assets/lotties/perfect-hits/bronze-3.json.js"),
6
- silver_1: () => import("../../../assets/lotties/perfect-hits/silver-1.json.js"),
7
- silver_2: () => import("../../../assets/lotties/perfect-hits/silver-2.json.js"),
8
- silver_3: () => import("../../../assets/lotties/perfect-hits/silver-3.json.js"),
9
- gold_1: () => import("../../../assets/lotties/perfect-hits/gold-1.json.js"),
10
- gold_2: () => import("../../../assets/lotties/perfect-hits/gold-2.json.js"),
11
- gold_3: () => import("../../../assets/lotties/perfect-hits/gold-3.json.js"),
12
- color_1: () => import("../../../assets/lotties/perfect-hits/color-1.json.js"),
13
- color_2: () => import("../../../assets/lotties/perfect-hits/color-2.json.js"),
14
- color_3: () => import("../../../assets/lotties/perfect-hits/color-3.json.js")
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 _(t) {
17
- const e = t >= o * 12 ? 3 : Math.floor(t / (r.length * o)) + 1, l = Math.floor(t % (r.length * o) / o), n = `${t >= o * 12 ? "color" : r[l]}_${e}`, i = a[n];
18
- if (i)
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 (await i()).default;
22
+ return await a(l);
21
23
  } catch {
22
24
  return null;
23
25
  }
24
26
  return null;
25
27
  }
26
28
  export {
27
- o as RANGE_SIZE,
28
- _ as getAnimationFile
29
+ t as RANGE_SIZE,
30
+ f as getAnimationFile
29
31
  };
30
32
  //# sourceMappingURL=perfect-hits-helpers.js.map