@cuemath/leap 2.8.25-link.0 → 2.8.25-link.1

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 (236) hide show
  1. package/dist/assets/lotties/circle/100pts.json.js +7957 -0
  2. package/dist/assets/lotties/circle/100pts.json.js.map +1 -0
  3. package/dist/assets/lotties/circle/10pts.json.js +7753 -0
  4. package/dist/assets/lotties/circle/10pts.json.js.map +1 -0
  5. package/dist/assets/lotties/circle/15pts.json.js +7879 -0
  6. package/dist/assets/lotties/circle/15pts.json.js.map +1 -0
  7. package/dist/assets/lotties/circle/1pts.json.js +7257 -0
  8. package/dist/assets/lotties/circle/1pts.json.js.map +1 -0
  9. package/dist/assets/lotties/circle/20pts.json.js +7845 -0
  10. package/dist/assets/lotties/circle/20pts.json.js.map +1 -0
  11. package/dist/assets/lotties/circle/25pts.json.js +7971 -0
  12. package/dist/assets/lotties/circle/25pts.json.js.map +1 -0
  13. package/dist/assets/lotties/circle/30pts.json.js +7941 -0
  14. package/dist/assets/lotties/circle/30pts.json.js.map +1 -0
  15. package/dist/assets/lotties/circle/35pts.json.js +7881 -0
  16. package/dist/assets/lotties/circle/35pts.json.js.map +1 -0
  17. package/dist/assets/lotties/circle/40pts.json.js +7725 -0
  18. package/dist/assets/lotties/circle/40pts.json.js.map +1 -0
  19. package/dist/assets/lotties/circle/45pts.json.js +7851 -0
  20. package/dist/assets/lotties/circle/45pts.json.js.map +1 -0
  21. package/dist/assets/lotties/circle/50pts.json.js +7707 -0
  22. package/dist/assets/lotties/circle/50pts.json.js.map +1 -0
  23. package/dist/assets/lotties/circle/5pts.json.js +7420 -0
  24. package/dist/assets/lotties/circle/5pts.json.js.map +1 -0
  25. package/dist/assets/lotties/circle/60pts.json.js +7701 -0
  26. package/dist/assets/lotties/circle/60pts.json.js.map +1 -0
  27. package/dist/assets/lotties/circle/accuracy-meter-lottie.json.js +6811 -0
  28. package/dist/assets/lotties/circle/accuracy-meter-lottie.json.js.map +1 -0
  29. package/dist/assets/lotties/circle/accuracy-needle-lottie.json.js +1503 -0
  30. package/dist/assets/lotties/circle/accuracy-needle-lottie.json.js.map +1 -0
  31. package/dist/assets/lotties/circle/circular-loader.json.js +635 -0
  32. package/dist/assets/lotties/circle/circular-loader.json.js.map +1 -0
  33. package/dist/assets/lotties/circle/elite-circle-lottie.json.js +12079 -0
  34. package/dist/assets/lotties/circle/elite-circle-lottie.json.js.map +1 -0
  35. package/dist/assets/lotties/circle/levelup-rings-lottie.json.js +1412 -0
  36. package/dist/assets/lotties/circle/levelup-rings-lottie.json.js.map +1 -0
  37. package/dist/assets/lotties/circle/sleepy-boi-lottie.json.js +2632 -0
  38. package/dist/assets/lotties/circle/sleepy-boi-lottie.json.js.map +1 -0
  39. package/dist/assets/lotties/circle/spinner-white.json.js +316 -0
  40. package/dist/assets/lotties/circle/spinner-white.json.js.map +1 -0
  41. package/dist/assets/lotties/circle/splash-screen.json.js +5864 -0
  42. package/dist/assets/lotties/circle/splash-screen.json.js.map +1 -0
  43. package/dist/assets/lotties/circle/total-streak-lottie.json.js +2103 -0
  44. package/dist/assets/lotties/circle/total-streak-lottie.json.js.map +1 -0
  45. package/dist/assets/lotties/circle/total-time-lottie.json.js +33016 -0
  46. package/dist/assets/lotties/circle/total-time-lottie.json.js.map +1 -0
  47. package/dist/assets/lotties/circle/total-time-spent-lottie.json.js +260 -0
  48. package/dist/assets/lotties/circle/total-time-spent-lottie.json.js.map +1 -0
  49. package/dist/assets/lotties/circle/tournament-ripple-lottie.json.js +1563 -0
  50. package/dist/assets/lotties/circle/tournament-ripple-lottie.json.js.map +1 -0
  51. package/dist/assets/lotties/common/nudge-tap.json.js +3597 -0
  52. package/dist/assets/lotties/common/nudge-tap.json.js.map +1 -0
  53. package/dist/assets/lotties/error-lottie.json.js +12755 -0
  54. package/dist/assets/lotties/error-lottie.json.js.map +1 -0
  55. package/dist/assets/lotties/perfect-hits/bronze-1.json.js +10871 -0
  56. package/dist/assets/lotties/perfect-hits/bronze-1.json.js.map +1 -0
  57. package/dist/assets/lotties/perfect-hits/bronze-2.json.js +11389 -0
  58. package/dist/assets/lotties/perfect-hits/bronze-2.json.js.map +1 -0
  59. package/dist/assets/lotties/perfect-hits/bronze-3.json.js +12169 -0
  60. package/dist/assets/lotties/perfect-hits/bronze-3.json.js.map +1 -0
  61. package/dist/assets/lotties/perfect-hits/color-1.json.js +12348 -0
  62. package/dist/assets/lotties/perfect-hits/color-1.json.js.map +1 -0
  63. package/dist/assets/lotties/perfect-hits/color-2.json.js +12941 -0
  64. package/dist/assets/lotties/perfect-hits/color-2.json.js.map +1 -0
  65. package/dist/assets/lotties/perfect-hits/color-3.json.js +14034 -0
  66. package/dist/assets/lotties/perfect-hits/color-3.json.js.map +1 -0
  67. package/dist/assets/lotties/perfect-hits/gold-1.json.js +10871 -0
  68. package/dist/assets/lotties/perfect-hits/gold-1.json.js.map +1 -0
  69. package/dist/assets/lotties/perfect-hits/gold-2.json.js +11389 -0
  70. package/dist/assets/lotties/perfect-hits/gold-2.json.js.map +1 -0
  71. package/dist/assets/lotties/perfect-hits/gold-3.json.js +12169 -0
  72. package/dist/assets/lotties/perfect-hits/gold-3.json.js.map +1 -0
  73. package/dist/assets/lotties/perfect-hits/silver-1.json.js +10871 -0
  74. package/dist/assets/lotties/perfect-hits/silver-1.json.js.map +1 -0
  75. package/dist/assets/lotties/perfect-hits/silver-2.json.js +11389 -0
  76. package/dist/assets/lotties/perfect-hits/silver-2.json.js.map +1 -0
  77. package/dist/assets/lotties/perfect-hits/silver-3.json.js +12169 -0
  78. package/dist/assets/lotties/perfect-hits/silver-3.json.js.map +1 -0
  79. package/dist/assets/lotties/teacher-validation.json.js +649 -0
  80. package/dist/assets/lotties/teacher-validation.json.js.map +1 -0
  81. package/dist/assets/lotties/tests-creation/clock_30_min.json.js +2857 -0
  82. package/dist/assets/lotties/tests-creation/clock_30_min.json.js.map +1 -0
  83. package/dist/assets/lotties/tests-creation/clock_45_min.json.js +2857 -0
  84. package/dist/assets/lotties/tests-creation/clock_45_min.json.js.map +1 -0
  85. package/dist/assets/lotties/tests-creation/clock_60_min.json.js +2857 -0
  86. package/dist/assets/lotties/tests-creation/clock_60_min.json.js.map +1 -0
  87. package/dist/assets/lotties/tests-creation/clock_90_min.json.js +3345 -0
  88. package/dist/assets/lotties/tests-creation/clock_90_min.json.js.map +1 -0
  89. package/dist/assets/lotties/tests-creation/difficult.json.js +6713 -0
  90. package/dist/assets/lotties/tests-creation/difficult.json.js.map +1 -0
  91. package/dist/assets/lotties/tests-creation/easy.json.js +6525 -0
  92. package/dist/assets/lotties/tests-creation/easy.json.js.map +1 -0
  93. package/dist/assets/lotties/tests-creation/medium.json.js +5603 -0
  94. package/dist/assets/lotties/tests-creation/medium.json.js.map +1 -0
  95. package/dist/assets/lotties/trial-v3/15min-clock.json.js +2037 -0
  96. package/dist/assets/lotties/trial-v3/15min-clock.json.js.map +1 -0
  97. package/dist/assets/lotties/trial-v3/5min-clock.json.js +2062 -0
  98. package/dist/assets/lotties/trial-v3/5min-clock.json.js.map +1 -0
  99. package/dist/assets/lotties/trial-v3/insight/beginner1x.json.js +8517 -0
  100. package/dist/assets/lotties/trial-v3/insight/beginner1x.json.js.map +1 -0
  101. package/dist/assets/lotties/trial-v3/insight/familiar1x.json.js +7396 -0
  102. package/dist/assets/lotties/trial-v3/insight/familiar1x.json.js.map +1 -0
  103. package/dist/assets/lotties/trial-v3/insight/proficient1x.json.js +8559 -0
  104. package/dist/assets/lotties/trial-v3/insight/proficient1x.json.js.map +1 -0
  105. package/dist/assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json.js +23284 -0
  106. package/dist/assets/lotties/trial-v3/parent-app/easy-rescheduling-lottie.json.js.map +1 -0
  107. package/dist/assets/lotties/trial-v3/parent-app/stay-connected-lottie.json.js +9090 -0
  108. package/dist/assets/lotties/trial-v3/parent-app/stay-connected-lottie.json.js.map +1 -0
  109. package/dist/assets/lotties/trial-v3/parent-app/track-progress-lottie.json.js +8675 -0
  110. package/dist/assets/lotties/trial-v3/parent-app/track-progress-lottie.json.js.map +1 -0
  111. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/fetch-lottie.js +13 -0
  112. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/fetch-lottie.js.map +1 -0
  113. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js +79 -81
  114. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js.map +1 -1
  115. package/dist/features/circle-games/game-launcher/game-launcher-styled.js +10 -0
  116. package/dist/features/circle-games/game-launcher/game-launcher-styled.js.map +1 -0
  117. package/dist/features/circle-games/game-launcher/game-launcher.js +65 -61
  118. package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
  119. package/dist/features/circle-games/leaderboard/comps/banner/banner.js +53 -35
  120. package/dist/features/circle-games/leaderboard/comps/banner/banner.js.map +1 -1
  121. package/dist/features/circle-games/leaderboard/leaderboard.js +55 -56
  122. package/dist/features/circle-games/leaderboard/leaderboard.js.map +1 -1
  123. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js +41 -40
  124. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js.map +1 -1
  125. package/dist/features/circle-games/sign-up/comp/spinner/spinner-styled.js +8 -4
  126. package/dist/features/circle-games/sign-up/comp/spinner/spinner-styled.js.map +1 -1
  127. package/dist/features/circle-games/sign-up/comp/spinner/spinner.js +23 -6
  128. package/dist/features/circle-games/sign-up/comp/spinner/spinner.js.map +1 -1
  129. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js +35 -40
  130. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js.map +1 -1
  131. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/difficulty-and-duration-selection.js +2 -2
  132. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-card-lottie-animation.js +23 -8
  133. 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
  134. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js +11 -11
  135. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js.map +1 -1
  136. package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js +43 -37
  137. package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js.map +1 -1
  138. package/dist/features/post-game-stats/accuracy/accuracy.js +34 -38
  139. package/dist/features/post-game-stats/accuracy/accuracy.js.map +1 -1
  140. package/dist/features/post-game-stats/clock/clock.js +39 -43
  141. package/dist/features/post-game-stats/clock/clock.js.map +1 -1
  142. package/dist/features/post-game-stats/points/points-styled.js +10 -0
  143. package/dist/features/post-game-stats/points/points-styled.js.map +1 -0
  144. package/dist/features/post-game-stats/points/points.js +44 -43
  145. package/dist/features/post-game-stats/points/points.js.map +1 -1
  146. package/dist/features/post-game-stats/streak/streak.js +28 -30
  147. package/dist/features/post-game-stats/streak/streak.js.map +1 -1
  148. package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js +54 -56
  149. package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js.map +1 -1
  150. package/dist/features/trial-session/comps/parent-app/parent-app.js +20 -25
  151. package/dist/features/trial-session/comps/parent-app/parent-app.js.map +1 -1
  152. package/dist/features/trial-session/comps/render-lottie/index.js +26 -0
  153. package/dist/features/trial-session/comps/render-lottie/index.js.map +1 -0
  154. package/dist/features/trial-session/comps/session-insights/session-insights.js +39 -40
  155. package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
  156. package/dist/features/trial-session/trial-session-view.js +85 -75
  157. package/dist/features/trial-session/trial-session-view.js.map +1 -1
  158. package/dist/features/ui/loader/circular-loader/circular-loader-styled.js +17 -0
  159. package/dist/features/ui/loader/circular-loader/circular-loader-styled.js.map +1 -0
  160. package/dist/features/ui/loader/circular-loader/circular-loader.js +20 -16
  161. package/dist/features/ui/loader/circular-loader/circular-loader.js.map +1 -1
  162. package/dist/features/ui/nudge/nudge-styled.js +8 -4
  163. package/dist/features/ui/nudge/nudge-styled.js.map +1 -1
  164. package/dist/features/ui/nudge/nudge.js +30 -13
  165. package/dist/features/ui/nudge/nudge.js.map +1 -1
  166. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js +20 -22
  167. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js.map +1 -1
  168. package/dist/features/worksheet/worksheet/worksheet-permissions/error.js +48 -25
  169. package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
  170. package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js +26 -12
  171. package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js.map +1 -1
  172. package/dist/index.d.ts +0 -58
  173. package/dist/index.js +464 -466
  174. package/dist/index.js.map +1 -1
  175. package/package.json +2 -3
  176. package/dist/assets/lottie/lottie.js +0 -61
  177. package/dist/assets/lottie/lottie.js.map +0 -1
  178. package/dist/features/ui/lottie-animation/helper.js +0 -13
  179. package/dist/features/ui/lottie-animation/helper.js.map +0 -1
  180. package/dist/features/ui/lottie-animation/lottie-animation.js +0 -37
  181. package/dist/features/ui/lottie-animation/lottie-animation.js.map +0 -1
  182. package/dist/static/accuracy-meter.99585cba.json +0 -4218
  183. package/dist/static/accuracy-needle.cd6e63ac.json +0 -618
  184. package/dist/static/beginner1x.489908a7.json +0 -3508
  185. package/dist/static/bronze-1.da4e4b5f.json +0 -4176
  186. package/dist/static/bronze-2.97f9c639.json +0 -4433
  187. package/dist/static/bronze-3.6a433ebd.json +0 -4786
  188. package/dist/static/circular-loader.a5a1a0a6.json +0 -238
  189. package/dist/static/clock-30min.eae818b8.json +0 -1197
  190. package/dist/static/clock-45min.df8adf51.json +0 -1197
  191. package/dist/static/clock-60min.2b48d875.json +0 -1197
  192. package/dist/static/clock-90min.3e557ed7.json +0 -1407
  193. package/dist/static/color-1.45101b9a.json +0 -4545
  194. package/dist/static/color-2.ccdc7d0a.json +0 -4828
  195. package/dist/static/color-3.5e8e1422.json +0 -5273
  196. package/dist/static/difficult.6846c064.json +0 -2755
  197. package/dist/static/easy-rescheduling-lottie.28026af9.json +0 -9301
  198. package/dist/static/easy.68242ddd.json +0 -2658
  199. package/dist/static/elite-circle.3df58972.json +0 -6876
  200. package/dist/static/error-lottie.b3507a4b.json +0 -5255
  201. package/dist/static/familiar1x.7c9c7f15.json +0 -3046
  202. package/dist/static/fifteen-min-clock.0af4e303.json +0 -715
  203. package/dist/static/five-min-clock.6be5cc41.json +0 -721
  204. package/dist/static/gold-1.ab2489fe.json +0 -4176
  205. package/dist/static/gold-2.34045826.json +0 -4441
  206. package/dist/static/gold-3.d704698b.json +0 -4810
  207. package/dist/static/levelup-rings.b1055283.json +0 -549
  208. package/dist/static/medium.94c3829b.json +0 -2289
  209. package/dist/static/nudge-tap.5cb30093.json +0 -1057
  210. package/dist/static/point1.b53831de.json +0 -2942
  211. package/dist/static/point10.7b5e536d.json +0 -3179
  212. package/dist/static/point100.1df16f82.json +0 -3196
  213. package/dist/static/point15.fea00c32.json +0 -3179
  214. package/dist/static/point20.c88d776d.json +0 -3178
  215. package/dist/static/point25.a18c346a.json +0 -3178
  216. package/dist/static/point30.c5224b0b.json +0 -3202
  217. package/dist/static/point35.fad343dd.json +0 -3058
  218. package/dist/static/point40.10a16f72.json +0 -3082
  219. package/dist/static/point45.2ad7561f.json +0 -3082
  220. package/dist/static/point5.da40ed1f.json +0 -2948
  221. package/dist/static/point50.5718cb3d.json +0 -3046
  222. package/dist/static/point60.17380d9f.json +0 -3076
  223. package/dist/static/proficient1x.fa6e7b80.json +0 -3430
  224. package/dist/static/silver-1.0396328a.json +0 -4168
  225. package/dist/static/silver-2.bf50615f.json +0 -4433
  226. package/dist/static/silver-3.13d66b84.json +0 -4810
  227. package/dist/static/sleepy-boi.031a1165.json +0 -1008
  228. package/dist/static/spinner-white.639e0d87.json +0 -122
  229. package/dist/static/splash-screen.bbf567ce.json +0 -2411
  230. package/dist/static/stay-connected-lottie.111439b3.json +0 -3547
  231. package/dist/static/teacher-validation.7577ecdc.json +0 -245
  232. package/dist/static/total-streak.d5ce7669.json +0 -842
  233. package/dist/static/total-time-spent.434005d3.json +0 -200
  234. package/dist/static/total-time.d979cbb9.json +0 -24383
  235. package/dist/static/tournament-ripple.e5c239a5.json +0 -1047
  236. package/dist/static/track-progress-lottie.422108cf.json +0 -2972
@@ -1,89 +1,87 @@
1
- import { jsxs as x, jsx as t } from "react/jsx-runtime";
2
- import S from "lottie-web";
3
- import { memo as j, useRef as u, useState as I, useCallback as f, useEffect as $ } from "react";
4
- import { LOTTIE as y } from "../../../../../assets/lottie/lottie.js";
1
+ import { jsxs as y, jsx as t } from "react/jsx-runtime";
2
+ import O from "lottie-web";
3
+ import { memo as S, useRef as u, useState as $, useCallback as d, useEffect as I } from "react";
5
4
  import R from "../../../../ui/layout/flex-view.js";
6
- import { fetchLottie as B } from "../../../../ui/lottie-animation/helper.js";
7
- import G from "../../../../ui/text/text.js";
8
- import { useTrialSessionContext as K } from "../../../context/use-trial-session-context.js";
9
- import { EClassTimeAlertLevel as d } from "../../../trial-session-types.js";
10
- import X from "../../clock/clock.js";
11
- import H from "../../countdown-progress-bar/countdown-progress-bar.js";
12
- import { AnimationContainer as q, TextFadeIn as Y, ProgressWrapper as z, TimerWrapper as J, TeacherNameWrapper as Q } from "./teacher-av-panel-styled.js";
13
- const me = j(() => {
5
+ import j from "../../../../ui/text/text.js";
6
+ import { useTrialSessionContext as B } from "../../../context/use-trial-session-context.js";
7
+ import { EClassTimeAlertLevel as f } from "../../../trial-session-types.js";
8
+ import G from "../../clock/clock.js";
9
+ import X from "../../countdown-progress-bar/countdown-progress-bar.js";
10
+ import { AnimationContainer as H, TextFadeIn as K, ProgressWrapper as q, TimerWrapper as Y, TeacherNameWrapper as z } from "./teacher-av-panel-styled.js";
11
+ const J = () => import("../../../../../assets/lotties/trial-v3/5min-clock.json.js"), Q = () => import("../../../../../assets/lotties/trial-v3/15min-clock.json.js"), ce = S(() => {
14
12
  const {
15
- teacherPanel: F,
16
- classStartedOn: o,
13
+ teacherPanel: _,
14
+ classStartedOn: i,
17
15
  isTeacher: c,
18
16
  trialHomeData: M,
19
- classTimeAlertConfig: O,
20
- classDuration: h
21
- } = K(), {
17
+ classTimeAlertConfig: b,
18
+ classDuration: p
19
+ } = B(), {
22
20
  alertLevel: e,
23
21
  isVisible: g,
24
22
  onComplete: l
25
- } = O ?? {}, p = u(null), a = u(null), [V, C] = I(!1), [b, E] = I(!1), [A, P] = I(0), r = u(null), s = u(null), { teacher: k } = M, { name: w } = k, N = f(
23
+ } = b ?? {}, h = u(null), o = u(null), [k, A] = $(!1), [F, w] = $(!1), [C, V] = $(0), r = u(null), a = u(null), { teacher: P } = M, { name: E } = P, v = d(
26
24
  async (n) => {
27
- if (!(!p.current || !n))
25
+ if (!(!h.current || !n))
28
26
  try {
29
- const i = n === d.FIVE_MIN ? y.FIVE_MIN_CLOCK : y.FIFTEEN_MIN_CLOCK, m = await B(i);
30
- E(!0);
31
- const D = S.loadAnimation({
32
- container: p.current,
27
+ const m = (await (n === f.FIVE_MIN ? J() : Q())).default;
28
+ w(!0);
29
+ const D = O.loadAnimation({
30
+ container: h.current,
33
31
  renderer: "svg",
34
32
  loop: !1,
35
33
  autoplay: !1,
36
34
  animationData: m
37
35
  });
38
- a.current = D, a.current.play(), s.current && (s.current.currentTime = 0, s.current.play()), setTimeout(() => C(!0), 233), a.current.addEventListener("complete", () => {
39
- var v;
40
- (v = a.current) == null || v.destroy(), a.current = null, C(!1), E(!1), l == null || l();
36
+ o.current = D, o.current.play(), a.current && (a.current.currentTime = 0, a.current.play()), setTimeout(() => A(!0), 233), o.current.addEventListener("complete", () => {
37
+ var x;
38
+ (x = o.current) == null || x.destroy(), o.current = null, A(!1), w(!1), l == null || l();
41
39
  });
42
40
  } catch {
43
41
  return null;
44
42
  }
45
43
  },
46
44
  [l]
47
- ), L = f(() => {
48
- if (!o || !h) return 0;
49
- const n = Date.now(), i = new Date(o).getTime();
50
- return h - (n - i) / 1e3;
51
- }, [h, o]), T = f(() => {
52
- const n = L();
53
- P(n);
54
- }, [L]), _ = f(() => {
45
+ ), N = d(() => {
46
+ if (!i || !p) return 0;
47
+ const n = Date.now(), s = new Date(i).getTime();
48
+ return p - (n - s) / 1e3;
49
+ }, [p, i]), T = d(() => {
50
+ const n = N();
51
+ V(n);
52
+ }, [N]), L = d(() => {
55
53
  r.current && (clearInterval(r.current), r.current = null), T(), r.current = setInterval(() => {
56
54
  T();
57
55
  }, 5e3);
58
56
  }, [T]);
59
- $(() => {
60
- e && g && N(e);
61
- }, [e, N, g]), $(() => (e && e === d.FIVE_MIN && _(), () => {
57
+ I(() => {
58
+ e && g && v(e);
59
+ }, [e, v, g]), I(() => (e && e === f.FIVE_MIN && L(), () => {
62
60
  r.current && (clearInterval(r.current), r.current = null);
63
- }), [e, _]), $(() => (e && (async (i) => {
61
+ }), [e, L]), I(() => (e && (async (s) => {
64
62
  const m = new Audio(
65
- `https://static.qumath.in/static/intel-student/cmpress/${i === d.FIFTEEN_MIN ? "15-min-reminder" : "5-min-reminder"}.mp3`
63
+ `https://static.qumath.in/static/intel-student/cmpress/${s === f.FIFTEEN_MIN ? "15-min-reminder" : "5-min-reminder"}.mp3`
66
64
  );
67
- s.current = m;
65
+ a.current = m;
68
66
  })(e), () => {
69
- s.current = null;
67
+ a.current = null;
70
68
  }), [e]);
71
- const W = e === d.FIVE_MIN && A > 0 && c;
72
- return /* @__PURE__ */ x(R, { $position: "relative", $width: "100%", $height: "100%", children: [
73
- F,
74
- c && /* @__PURE__ */ x(
75
- q,
69
+ const W = e === f.FIVE_MIN && C > 0 && c;
70
+ return /* @__PURE__ */ y(R, { $position: "relative", $width: "100%", $height: "100%", children: [
71
+ _,
72
+ c && /* @__PURE__ */ y(
73
+ H,
76
74
  {
77
75
  $alignItems: "center",
78
76
  $justifyContent: "center",
79
77
  $background: "BLACK_T_60",
80
- $visible: b,
78
+ $visible: F,
81
79
  children: [
82
- /* @__PURE__ */ t(R, { ref: p, $width: 80, $height: 80 }),
80
+ /* @__PURE__ */ t(R, { ref: h, $width: 80, $height: 80 }),
83
81
  e && /* @__PURE__ */ t(
84
- Y,
82
+ K,
85
83
  {
86
- $visible: V,
84
+ $visible: k,
87
85
  $renderAs: "ac3",
88
86
  $color: "WHITE",
89
87
  className: "fade-in",
@@ -93,21 +91,21 @@ const me = j(() => {
93
91
  ]
94
92
  }
95
93
  ),
96
- W && /* @__PURE__ */ t(z, { $width: "100%", children: /* @__PURE__ */ t(H, { value: A, maxValue: 300 }) }),
97
- o && c && /* @__PURE__ */ t(
98
- J,
94
+ W && /* @__PURE__ */ t(q, { $width: "100%", children: /* @__PURE__ */ t(X, { value: C, maxValue: 300 }) }),
95
+ i && c && /* @__PURE__ */ t(
96
+ Y,
99
97
  {
100
98
  $background: e === "15min" ? "YELLOW_4" : e === "5min" ? "ORANGE_4" : "GREEN_4",
101
99
  $gapX: 0.25,
102
100
  $gutterX: 0.5,
103
101
  $justifyContent: "center",
104
- children: /* @__PURE__ */ t(X, { startTime: o, textRenderAs: "ac3", textColor: "BLACK_T_87" })
102
+ children: /* @__PURE__ */ t(G, { startTime: i, textRenderAs: "ac3", textColor: "BLACK_T_87" })
105
103
  }
106
104
  ),
107
- w && !c && /* @__PURE__ */ t(Q, { $gapX: 0.75, $gutterX: 0.75, $width: "100%", children: /* @__PURE__ */ t(G, { $renderAs: "ac3-black", $color: "WHITE", children: w }) })
105
+ E && !c && /* @__PURE__ */ t(z, { $gapX: 0.75, $gutterX: 0.75, $width: "100%", children: /* @__PURE__ */ t(j, { $renderAs: "ac3-black", $color: "WHITE", children: E }) })
108
106
  ] });
109
107
  });
110
108
  export {
111
- me as default
109
+ ce as default
112
110
  };
113
111
  //# sourceMappingURL=teacher-av-panel.js.map
@@ -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 { 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":"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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 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,32 +1,27 @@
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";
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";
5
4
  import n from "../../../ui/layout/flex-view.js";
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 })
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 })
24
19
  ] }),
25
- /* @__PURE__ */ r(i, { height: 6 }),
26
- /* @__PURE__ */ r(d, { $align: "center", $renderAs: "ub3", children: "The Cuemath App is available on iOS & Android" })
20
+ /* @__PURE__ */ t(r, { height: 6 }),
21
+ /* @__PURE__ */ t(a, { $align: "center", $renderAs: "ub3", children: "The Cuemath App is available on iOS & Android" })
27
22
  ] })
28
23
  ] });
29
24
  export {
30
- x as default
25
+ j as default
31
26
  };
32
27
  //# 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 { 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
+ {"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;"}
@@ -0,0 +1,26 @@
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import u from "lottie-web";
3
+ import { useRef as l, useEffect as m } from "react";
4
+ import f from "../../../ui/layout/flex-view.js";
5
+ const x = ({ width: e, height: a, lottiePromise: o }) => {
6
+ const n = l(null);
7
+ return m(() => {
8
+ let t = null;
9
+ return (async () => {
10
+ const r = (await o()).default;
11
+ n.current && (t = u.loadAnimation({
12
+ container: n.current,
13
+ renderer: "canvas",
14
+ loop: !0,
15
+ autoplay: !0,
16
+ animationData: r
17
+ }));
18
+ })(), () => {
19
+ t == null || t.destroy();
20
+ };
21
+ }, [o]), /* @__PURE__ */ i(f, { $width: e, $height: a, ref: n });
22
+ };
23
+ export {
24
+ x as default
25
+ };
26
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/features/trial-session/comps/render-lottie/index.tsx"],"sourcesContent":["import type { AnimationItem } from 'lottie-web';\nimport type { FC } from 'react';\n\nimport Lottie from 'lottie-web';\nimport { useEffect, useRef } from 'react';\n\nimport FlexView from '../../../ui/layout/flex-view';\n\ntype AnimationData = Record<string, unknown>;\n\ninterface IRenderLottie {\n width?: number;\n height?: number;\n lottiePromise: () => Promise<{ default: AnimationData }>;\n}\n\nconst RenderLottie: FC<IRenderLottie> = ({ width, height, lottiePromise }) => {\n const animationContainerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n let animation: AnimationItem | null = null;\n\n const loadAnimation = async () => {\n const animationModule = await lottiePromise();\n const animationData = animationModule.default;\n\n if (animationContainerRef.current) {\n animation = Lottie.loadAnimation({\n container: animationContainerRef.current,\n renderer: 'canvas',\n loop: true,\n autoplay: true,\n animationData: animationData,\n });\n }\n };\n\n loadAnimation();\n\n return () => {\n animation?.destroy();\n };\n }, [lottiePromise]);\n\n return <FlexView $width={width} $height={height} ref={animationContainerRef} />;\n};\n\nexport default RenderLottie;\n"],"names":["RenderLottie","width","height","lottiePromise","animationContainerRef","useRef","useEffect","animation","animationData","Lottie","FlexView"],"mappings":";;;;AAgBA,MAAMA,IAAkC,CAAC,EAAE,OAAAC,GAAO,QAAAC,GAAQ,eAAAC,QAAoB;AACtE,QAAAC,IAAwBC,EAAuB,IAAI;AAEzD,SAAAC,EAAU,MAAM;AACd,QAAIC,IAAkC;AAiBxB,YAfQ,YAAY;AAEhC,YAAMC,KADkB,MAAML,KACQ;AAEtC,MAAIC,EAAsB,YACxBG,IAAYE,EAAO,cAAc;AAAA,QAC/B,WAAWL,EAAsB;AAAA,QACjC,UAAU;AAAA,QACV,MAAM;AAAA,QACN,UAAU;AAAA,QACV,eAAAI;AAAA,MAAA,CACD;AAAA,IACH,MAKK,MAAM;AACX,MAAAD,KAAA,QAAAA,EAAW;AAAA,IAAQ;AAAA,EACrB,GACC,CAACJ,CAAa,CAAC,qBAEVO,GAAS,EAAA,QAAQT,GAAO,SAASC,GAAQ,KAAKE,EAAuB,CAAA;AAC/E;"}
@@ -1,38 +1,37 @@
1
1
  import { jsx as e, jsxs as t } from "react/jsx-runtime";
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";
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";
6
5
  import d from "../../../ui/layout/flex-view.js";
7
6
  import S from "../../../ui/loader/app-loader/app-loader.js";
8
- import R from "../../../ui/lottie-animation/lottie-animation.js";
9
- import g from "../../../ui/separator/separator.js";
7
+ import h from "../../../ui/separator/separator.js";
10
8
  import o from "../../../ui/text/text.js";
11
- import { useGetSessionInsights as b } from "../../api/trial-home.js";
12
- import { useTrialSessionContext as N } from "../../context/use-trial-session-context.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";
13
12
  import w from "../slide-header/index.js";
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(() => {
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(() => {
33
32
  c();
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 }),
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 }),
36
35
  /* @__PURE__ */ e(w, {}),
37
36
  /* @__PURE__ */ t(x, { $alignItems: "center", $width: 650, $alignSelf: "center", children: [
38
37
  /* @__PURE__ */ e(
@@ -46,7 +45,7 @@ const X = {
46
45
  const {
47
46
  level: r,
48
47
  topic_name: i,
49
- level_description: l
48
+ level_description: p
50
49
  } = s;
51
50
  return /* @__PURE__ */ t(
52
51
  B,
@@ -58,11 +57,11 @@ const X = {
58
57
  $flexDirection: "column",
59
58
  $justifyContent: "space-between",
60
59
  children: [
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] }) }),
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] }) }),
63
62
  /* @__PURE__ */ t("div", { children: [
64
63
  /* @__PURE__ */ e(o, { $renderAs: "ac4", $color: "BLACK_T_87", children: r }),
65
- /* @__PURE__ */ e(o, { $renderAs: "ub2", $color: "BLACK_T_60", children: l })
64
+ /* @__PURE__ */ e(o, { $renderAs: "ub2", $color: "BLACK_T_60", children: p })
66
65
  ] })
67
66
  ]
68
67
  },
@@ -72,7 +71,7 @@ const X = {
72
71
  }
73
72
  ),
74
73
  /* @__PURE__ */ e(
75
- O,
74
+ K,
76
75
  {
77
76
  $width: "100%",
78
77
  $borderColor: "BLACK_T_87",
@@ -86,11 +85,11 @@ const X = {
86
85
  const {
87
86
  star: r,
88
87
  depth_description: i,
89
- star_description: l
88
+ star_description: p
90
89
  } = s;
91
90
  return /* @__PURE__ */ t(d, { $width: 88, children: [
92
- /* @__PURE__ */ e("img", { src: j[r], height: 24, width: 88 }),
93
- /* @__PURE__ */ e(g, { height: 4 }),
91
+ /* @__PURE__ */ e("img", { src: k[r], height: 24, width: 88 }),
92
+ /* @__PURE__ */ e(h, { height: 4 }),
94
93
  /* @__PURE__ */ e(
95
94
  d,
96
95
  {
@@ -101,10 +100,10 @@ const X = {
101
100
  $alignItems: "center",
102
101
  $width: "fit-content",
103
102
  $alignSelf: "center",
104
- children: /* @__PURE__ */ e(o, { $renderAs: "ub3", $color: "BLACK_T_87", children: l })
103
+ children: /* @__PURE__ */ e(o, { $renderAs: "ub3", $color: "BLACK_T_87", children: p })
105
104
  }
106
105
  ),
107
- /* @__PURE__ */ e(g, { heightX: 1 }),
106
+ /* @__PURE__ */ e(h, { heightX: 1 }),
108
107
  /* @__PURE__ */ e(o, { $renderAs: "ac4", $color: "BLACK_T_87", $align: "center", children: i })
109
108
  ] }, a);
110
109
  })
@@ -114,6 +113,6 @@ const X = {
114
113
  ] });
115
114
  });
116
115
  export {
117
- Y as default
116
+ J as default
118
117
  };
119
118
  //# 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 { 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
+ {"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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"}