@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,122 +1,132 @@
1
- import { jsx as h, jsxs as U } from "react/jsx-runtime";
2
- import { memo as z, useState as J, useMemo as p, useCallback as K, useEffect as C } from "react";
3
- import Q from "../ui/layout/flex-view.js";
4
- import W from "./context/trial-session-context.js";
5
- import { useButtonStateForLeftPanel as X } from "./hooks/use-left-panel-button-state.js";
6
- import Y from "./left-panel/index.js";
7
- import Z from "./right-panel/index.js";
8
- const ie = z((B) => {
1
+ import { jsx as D, jsxs as z } from "react/jsx-runtime";
2
+ import { memo as J, useState as K, useMemo as m, useCallback as Q, useEffect as I } from "react";
3
+ import { getGradesFromConfig as W } from "../milestone/create/milestone-create-helpers.js";
4
+ import X from "../ui/layout/flex-view.js";
5
+ import Y from "./context/trial-session-context.js";
6
+ import { useButtonStateForLeftPanel as Z } from "./hooks/use-left-panel-button-state.js";
7
+ import ee from "./left-panel/index.js";
8
+ import te from "./right-panel/index.js";
9
+ const de = J((B) => {
9
10
  const {
10
11
  userType: o,
11
- teacherPanel: D,
12
- studentPanel: S,
13
- trialGameUrl: _,
12
+ teacherPanel: S,
13
+ studentPanel: _,
14
+ trialGameUrl: T,
14
15
  formData: i,
15
16
  height: H = "100vh",
16
- trialHomeData: e,
17
- milestoneConfig: I,
18
- onFormDataChange: c,
19
- worksheet: T,
17
+ trialHomeData: t,
18
+ milestoneConfig: l,
19
+ onFormDataChange: u,
20
+ worksheet: x,
20
21
  studentId: r,
21
22
  teacherId: s,
22
23
  classStartedOn: P,
23
24
  worksheetNavigationPanel: v,
24
- questionsRatingPanel: x,
25
- studentAbsentInClass: y,
25
+ questionsRatingPanel: y,
26
+ studentAbsentInClass: E,
26
27
  openEndClassModal: $,
27
28
  onTrialInformationUpdate: w,
28
- onStudentTimezoneUpdate: d,
29
- handleInfoMessage: E,
30
- onRemoveOptionalSlides: k,
31
- classDuration: F,
32
- studentTimezone: m,
29
+ onStudentTimezoneUpdate: f,
30
+ handleInfoMessage: F,
31
+ onRemoveOptionalSlides: G,
32
+ classDuration: k,
33
+ studentTimezone: g,
33
34
  classTimeAlertConfig: M
34
- } = B, t = o === "TEACHER", { pages: u = [], student: L } = e, { name: R, grade: b } = L || {}, [n, O] = J(i), f = t ? n : i, g = f == null ? void 0 : f.id, j = p(
35
- () => u.find((a) => a.id === g) ?? u[0],
36
- [g, u]
37
- ), A = p(() => {
38
- const a = {
39
- circleConfig: e.circle_trial_game_config,
35
+ } = B, a = o === "TEACHER", { pages: p = [], student: L } = t, { name: R, grade: c } = L || {}, [n, q] = K(i), h = a ? n : i, C = h == null ? void 0 : h.id, b = m(
36
+ () => p.find((e) => e.id === C) ?? p[0],
37
+ [C, p]
38
+ ), j = m(() => {
39
+ const e = {
40
+ circleConfig: t.circle_trial_game_config,
40
41
  playerDetails: {
41
42
  matchMakingId: `${s}_${r}_trial_v3`,
42
- userId: t ? s : r,
43
- circle_username: e[t ? "teacher" : "student"].circle_username,
44
- user_avatar: e[t ? "teacher" : "student"].user_avatar,
43
+ userId: a ? s : r,
44
+ circle_username: t[a ? "teacher" : "student"].circle_username,
45
+ user_avatar: t[a ? "teacher" : "student"].user_avatar,
45
46
  playerType: o
46
47
  }
47
48
  };
48
- return o === "STUDENT" && (a.playerDetails.grade = e.student.grade), a;
49
- }, [t, r, s, e, o]), l = K((a) => {
50
- O((V) => V ? { ...V, ...a } : a);
51
- }, []), { buttonState: G, updateButtonState: N } = X(), q = p(
49
+ return o === "STUDENT" && (e.playerDetails.grade = t.student.grade), e;
50
+ }, [a, r, s, t, o]), d = Q((e) => {
51
+ q((V) => V ? { ...V, ...e } : e);
52
+ }, []), { buttonState: A, updateButtonState: N } = Z(), U = m(
52
53
  () => ({
53
- teacherPanel: D,
54
- studentPanel: S,
55
- isTeacher: t,
56
- slideConfig: j,
57
- milestoneConfig: I,
58
- formData: t ? n : i,
59
- updateSlideConfig: l,
60
- worksheet: T,
61
- buttonState: G,
54
+ teacherPanel: S,
55
+ studentPanel: _,
56
+ isTeacher: a,
57
+ slideConfig: b,
58
+ milestoneConfig: l,
59
+ formData: a ? n : i,
60
+ updateSlideConfig: d,
61
+ worksheet: x,
62
+ buttonState: A,
62
63
  updateButtonState: N,
63
64
  studentId: r,
64
65
  teacherId: s,
65
66
  classStartedOn: P,
66
- trialHomeData: e,
67
+ trialHomeData: t,
67
68
  worksheetNavigationPanel: v,
68
- questionsRatingPanel: x,
69
+ questionsRatingPanel: y,
69
70
  onTrialInformationUpdate: w,
70
71
  openEndClassModal: $,
71
- studentAbsentInClass: y,
72
- circleGames: A,
73
- trialGameUrl: _,
74
- handleInfoMessage: E,
75
- onRemoveOptionalSlides: k,
76
- classDuration: F,
72
+ studentAbsentInClass: E,
73
+ circleGames: j,
74
+ trialGameUrl: T,
75
+ handleInfoMessage: F,
76
+ onRemoveOptionalSlides: G,
77
+ classDuration: k,
77
78
  classTimeAlertConfig: M
78
79
  }),
79
80
  [
80
- D,
81
81
  S,
82
- t,
83
- j,
84
- I,
82
+ _,
83
+ a,
84
+ b,
85
+ l,
85
86
  n,
86
87
  i,
87
- l,
88
- T,
89
- G,
88
+ d,
89
+ x,
90
+ A,
90
91
  N,
91
92
  r,
92
93
  s,
93
94
  P,
94
- e,
95
+ t,
95
96
  v,
96
- x,
97
+ y,
97
98
  w,
98
99
  $,
99
- y,
100
- A,
101
- _,
102
100
  E,
103
- k,
101
+ j,
102
+ T,
104
103
  F,
104
+ G,
105
+ k,
105
106
  M
106
107
  ]
107
108
  );
108
- return C(() => {
109
- n && c && c(n);
110
- }, [c, n]), C(() => {
111
- m || d == null || d();
112
- }, [g]), C(() => {
113
- l({ name: R, grade: b, studentTimezone: m });
114
- }, [R, b, l, m]), /* @__PURE__ */ h(W.Provider, { value: q, children: /* @__PURE__ */ U(Q, { $height: H, $flexDirection: "row", $justifyContent: "center", $alignItems: "center", children: [
115
- /* @__PURE__ */ h(Y, {}),
116
- /* @__PURE__ */ h(Z, {})
109
+ I(() => {
110
+ n && u && u(n);
111
+ }, [u, n]), I(() => {
112
+ g || f == null || f();
113
+ }, [C]);
114
+ const O = m(
115
+ () => !!W(l).find((e) => e.id === c),
116
+ [l, c]
117
+ );
118
+ return I(() => {
119
+ d({
120
+ studentTimezone: g,
121
+ name: R,
122
+ grade: O ? c : ""
123
+ });
124
+ }, [R, c, d, g, O]), /* @__PURE__ */ D(Y.Provider, { value: U, children: /* @__PURE__ */ z(X, { $height: H, $flexDirection: "row", $justifyContent: "center", $alignItems: "center", children: [
125
+ /* @__PURE__ */ D(ee, {}),
126
+ /* @__PURE__ */ D(te, {})
117
127
  ] }) });
118
128
  });
119
129
  export {
120
- ie as default
130
+ de as default
121
131
  };
122
132
  //# sourceMappingURL=trial-session-view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trial-session-view.js","sources":["../../../src/features/trial-session/trial-session-view.tsx"],"sourcesContent":["import type { ITrialCircleGameParams } from './comps/trial-circle-game/trial-circle-game-types';\nimport type {\n ITrialSessionContext,\n ITrialSessionViewProps,\n ITrialSessionFormFields,\n} from './trial-session-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport FlexView from '../ui/layout/flex-view';\nimport TrialSessionContext from './context/trial-session-context';\nimport { useButtonStateForLeftPanel } from './hooks/use-left-panel-button-state';\nimport LeftPanel from './left-panel';\nimport RightPanel from './right-panel';\n\nconst TrialSessionView: FC<ITrialSessionViewProps> = memo(props => {\n const {\n userType,\n teacherPanel,\n studentPanel,\n trialGameUrl,\n formData: formDataProps,\n height = '100vh',\n trialHomeData,\n milestoneConfig,\n onFormDataChange,\n worksheet,\n studentId,\n teacherId,\n classStartedOn,\n worksheetNavigationPanel,\n questionsRatingPanel,\n studentAbsentInClass,\n openEndClassModal,\n onTrialInformationUpdate,\n onStudentTimezoneUpdate,\n handleInfoMessage,\n onRemoveOptionalSlides,\n classDuration,\n studentTimezone,\n classTimeAlertConfig,\n } = props;\n const isTeacher = userType === 'TEACHER';\n const { pages: slides = [], student } = trialHomeData;\n const { name: studentName, grade: studentGrade } = student || {};\n const [formData, setFormData] = useState<ITrialSessionFormFields | undefined>(formDataProps);\n const formDataToUse = isTeacher ? formData : formDataProps;\n const currentSlideId = formDataToUse?.id;\n const currentSlideConfig = useMemo(\n () => slides.find(config => config.id === currentSlideId) ?? slides[0]!,\n [currentSlideId, slides],\n );\n\n const circleGames = useMemo(() => {\n const data = {\n circleConfig: trialHomeData.circle_trial_game_config,\n playerDetails: {\n matchMakingId: `${teacherId}_${studentId}_trial_v3`,\n userId: isTeacher ? teacherId : studentId,\n circle_username: trialHomeData[isTeacher ? 'teacher' : 'student'].circle_username,\n user_avatar: trialHomeData[isTeacher ? 'teacher' : 'student'].user_avatar,\n playerType: userType,\n },\n } as ITrialCircleGameParams;\n\n if (userType === 'STUDENT') {\n data.playerDetails.grade = trialHomeData.student.grade;\n }\n\n return data;\n }, [isTeacher, studentId, teacherId, trialHomeData, userType]);\n\n const updateSlideConfig = useCallback((config: Partial<ITrialSessionFormFields>) => {\n setFormData(previousProps => {\n if (!previousProps) return config as ITrialSessionFormFields;\n\n return { ...previousProps, ...config };\n });\n }, []);\n const { buttonState, updateButtonState } = useButtonStateForLeftPanel();\n\n const contextValue = useMemo<ITrialSessionContext>(\n () => ({\n teacherPanel,\n studentPanel,\n isTeacher,\n slideConfig: currentSlideConfig,\n milestoneConfig,\n formData: isTeacher ? formData : formDataProps,\n updateSlideConfig,\n worksheet,\n buttonState,\n updateButtonState,\n studentId,\n teacherId,\n classStartedOn,\n trialHomeData,\n worksheetNavigationPanel,\n questionsRatingPanel,\n onTrialInformationUpdate,\n openEndClassModal,\n studentAbsentInClass,\n circleGames,\n trialGameUrl,\n handleInfoMessage,\n onRemoveOptionalSlides,\n classDuration,\n classTimeAlertConfig,\n }),\n [\n teacherPanel,\n studentPanel,\n isTeacher,\n currentSlideConfig,\n milestoneConfig,\n formData,\n formDataProps,\n updateSlideConfig,\n worksheet,\n buttonState,\n updateButtonState,\n studentId,\n teacherId,\n classStartedOn,\n trialHomeData,\n worksheetNavigationPanel,\n questionsRatingPanel,\n onTrialInformationUpdate,\n openEndClassModal,\n studentAbsentInClass,\n circleGames,\n trialGameUrl,\n handleInfoMessage,\n onRemoveOptionalSlides,\n classDuration,\n classTimeAlertConfig,\n ],\n );\n\n useEffect(() => {\n if (formData && onFormDataChange) {\n onFormDataChange(formData);\n }\n }, [onFormDataChange, formData]);\n\n useEffect(() => {\n if (!studentTimezone) onStudentTimezoneUpdate?.();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentSlideId]);\n\n useEffect(() => {\n updateSlideConfig({ name: studentName, grade: studentGrade, studentTimezone });\n }, [studentName, studentGrade, updateSlideConfig, studentTimezone]);\n\n return (\n <TrialSessionContext.Provider value={contextValue}>\n <FlexView $height={height} $flexDirection=\"row\" $justifyContent=\"center\" $alignItems=\"center\">\n <LeftPanel />\n <RightPanel />\n </FlexView>\n </TrialSessionContext.Provider>\n );\n});\n\nexport default TrialSessionView;\n"],"names":["TrialSessionView","memo","props","userType","teacherPanel","studentPanel","trialGameUrl","formDataProps","height","trialHomeData","milestoneConfig","onFormDataChange","worksheet","studentId","teacherId","classStartedOn","worksheetNavigationPanel","questionsRatingPanel","studentAbsentInClass","openEndClassModal","onTrialInformationUpdate","onStudentTimezoneUpdate","handleInfoMessage","onRemoveOptionalSlides","classDuration","studentTimezone","classTimeAlertConfig","isTeacher","slides","student","studentName","studentGrade","formData","setFormData","useState","formDataToUse","currentSlideId","currentSlideConfig","useMemo","config","circleGames","data","updateSlideConfig","useCallback","previousProps","buttonState","updateButtonState","useButtonStateForLeftPanel","contextValue","useEffect","jsx","TrialSessionContext","jsxs","FlexView","LeftPanel","RightPanel"],"mappings":"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"}
1
+ {"version":3,"file":"trial-session-view.js","sources":["../../../src/features/trial-session/trial-session-view.tsx"],"sourcesContent":["import type { ITrialCircleGameParams } from './comps/trial-circle-game/trial-circle-game-types';\nimport type {\n ITrialSessionContext,\n ITrialSessionViewProps,\n ITrialSessionFormFields,\n} from './trial-session-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { getGradesFromConfig } from '../milestone/create/milestone-create-helpers';\nimport FlexView from '../ui/layout/flex-view';\nimport TrialSessionContext from './context/trial-session-context';\nimport { useButtonStateForLeftPanel } from './hooks/use-left-panel-button-state';\nimport LeftPanel from './left-panel';\nimport RightPanel from './right-panel';\n\nconst TrialSessionView: FC<ITrialSessionViewProps> = memo(props => {\n const {\n userType,\n teacherPanel,\n studentPanel,\n trialGameUrl,\n formData: formDataProps,\n height = '100vh',\n trialHomeData,\n milestoneConfig,\n onFormDataChange,\n worksheet,\n studentId,\n teacherId,\n classStartedOn,\n worksheetNavigationPanel,\n questionsRatingPanel,\n studentAbsentInClass,\n openEndClassModal,\n onTrialInformationUpdate,\n onStudentTimezoneUpdate,\n handleInfoMessage,\n onRemoveOptionalSlides,\n classDuration,\n studentTimezone,\n classTimeAlertConfig,\n } = props;\n const isTeacher = userType === 'TEACHER';\n const { pages: slides = [], student } = trialHomeData;\n const { name: studentName, grade: studentGrade } = student || {};\n const [formData, setFormData] = useState<ITrialSessionFormFields | undefined>(formDataProps);\n const formDataToUse = isTeacher ? formData : formDataProps;\n const currentSlideId = formDataToUse?.id;\n const currentSlideConfig = useMemo(\n () => slides.find(config => config.id === currentSlideId) ?? slides[0]!,\n [currentSlideId, slides],\n );\n\n const circleGames = useMemo(() => {\n const data = {\n circleConfig: trialHomeData.circle_trial_game_config,\n playerDetails: {\n matchMakingId: `${teacherId}_${studentId}_trial_v3`,\n userId: isTeacher ? teacherId : studentId,\n circle_username: trialHomeData[isTeacher ? 'teacher' : 'student'].circle_username,\n user_avatar: trialHomeData[isTeacher ? 'teacher' : 'student'].user_avatar,\n playerType: userType,\n },\n } as ITrialCircleGameParams;\n\n if (userType === 'STUDENT') {\n data.playerDetails.grade = trialHomeData.student.grade;\n }\n\n return data;\n }, [isTeacher, studentId, teacherId, trialHomeData, userType]);\n\n const updateSlideConfig = useCallback((config: Partial<ITrialSessionFormFields>) => {\n setFormData(previousProps => {\n if (!previousProps) return config as ITrialSessionFormFields;\n\n return { ...previousProps, ...config };\n });\n }, []);\n const { buttonState, updateButtonState } = useButtonStateForLeftPanel();\n\n const contextValue = useMemo<ITrialSessionContext>(\n () => ({\n teacherPanel,\n studentPanel,\n isTeacher,\n slideConfig: currentSlideConfig,\n milestoneConfig,\n formData: isTeacher ? formData : formDataProps,\n updateSlideConfig,\n worksheet,\n buttonState,\n updateButtonState,\n studentId,\n teacherId,\n classStartedOn,\n trialHomeData,\n worksheetNavigationPanel,\n questionsRatingPanel,\n onTrialInformationUpdate,\n openEndClassModal,\n studentAbsentInClass,\n circleGames,\n trialGameUrl,\n handleInfoMessage,\n onRemoveOptionalSlides,\n classDuration,\n classTimeAlertConfig,\n }),\n [\n teacherPanel,\n studentPanel,\n isTeacher,\n currentSlideConfig,\n milestoneConfig,\n formData,\n formDataProps,\n updateSlideConfig,\n worksheet,\n buttonState,\n updateButtonState,\n studentId,\n teacherId,\n classStartedOn,\n trialHomeData,\n worksheetNavigationPanel,\n questionsRatingPanel,\n onTrialInformationUpdate,\n openEndClassModal,\n studentAbsentInClass,\n circleGames,\n trialGameUrl,\n handleInfoMessage,\n onRemoveOptionalSlides,\n classDuration,\n classTimeAlertConfig,\n ],\n );\n\n useEffect(() => {\n if (formData && onFormDataChange) {\n onFormDataChange(formData);\n }\n }, [onFormDataChange, formData]);\n\n useEffect(() => {\n if (!studentTimezone) onStudentTimezoneUpdate?.();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentSlideId]);\n\n const findIsGradeExistInOptions = useMemo(\n () => !!getGradesFromConfig(milestoneConfig).find(element => element.id === studentGrade),\n [milestoneConfig, studentGrade],\n );\n\n useEffect(() => {\n updateSlideConfig({\n studentTimezone,\n name: studentName,\n grade: findIsGradeExistInOptions ? studentGrade : '',\n });\n }, [studentName, studentGrade, updateSlideConfig, studentTimezone, findIsGradeExistInOptions]);\n\n return (\n <TrialSessionContext.Provider value={contextValue}>\n <FlexView $height={height} $flexDirection=\"row\" $justifyContent=\"center\" $alignItems=\"center\">\n <LeftPanel />\n <RightPanel />\n </FlexView>\n </TrialSessionContext.Provider>\n );\n});\n\nexport default TrialSessionView;\n"],"names":["TrialSessionView","memo","props","userType","teacherPanel","studentPanel","trialGameUrl","formDataProps","height","trialHomeData","milestoneConfig","onFormDataChange","worksheet","studentId","teacherId","classStartedOn","worksheetNavigationPanel","questionsRatingPanel","studentAbsentInClass","openEndClassModal","onTrialInformationUpdate","onStudentTimezoneUpdate","handleInfoMessage","onRemoveOptionalSlides","classDuration","studentTimezone","classTimeAlertConfig","isTeacher","slides","student","studentName","studentGrade","formData","setFormData","useState","formDataToUse","currentSlideId","currentSlideConfig","useMemo","config","circleGames","data","updateSlideConfig","useCallback","previousProps","buttonState","updateButtonState","useButtonStateForLeftPanel","contextValue","useEffect","findIsGradeExistInOptions","getGradesFromConfig","element","jsx","TrialSessionContext","jsxs","FlexView","LeftPanel","RightPanel"],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import t from "styled-components";
2
+ const i = t.div`
3
+ height: 100%;
4
+ width: 100%;
5
+ display: flex;
6
+ align-items: center;
7
+ justify-content: center;
8
+ background: transparent;
9
+ `, n = t.div`
10
+ height: 50%;
11
+ width: 50%;
12
+ `;
13
+ export {
14
+ i as Loader,
15
+ n as LottieContainer
16
+ };
17
+ //# sourceMappingURL=circular-loader-styled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circular-loader-styled.js","sources":["../../../../../src/features/ui/loader/circular-loader/circular-loader-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nexport const Loader = styled.div`\n height: 100%;\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n background: transparent;\n`;\n\nexport const LottieContainer = styled.div`\n height: 50%;\n width: 50%;\n`;\n"],"names":["Loader","styled","LottieContainer"],"mappings":";AAEO,MAAMA,IAASC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAShBC,IAAkBD,EAAO;AAAA;AAAA;AAAA;"}
@@ -1,19 +1,23 @@
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
- );
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
+ };
16
20
  export {
17
- h as CircularLoader
21
+ d as CircularLoader
18
22
  };
19
23
  //# 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 '../../../../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;"}
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,5 +1,5 @@
1
1
  import e from "styled-components";
2
- import n from "../layout/flex-view.js";
2
+ import o from "../layout/flex-view.js";
3
3
  const r = e.div`
4
4
  position: absolute;
5
5
  top: ${({ $top: t }) => t}px;
@@ -11,14 +11,18 @@ const r = e.div`
11
11
  align-items: end;
12
12
  z-index: ${({ $zIndex: t }) => t};
13
13
  pointer-events: none;
14
- `, p = e(n)`
14
+ `, p = e(o)`
15
+ height: 64px;
16
+ width: 64px;
15
17
  overflow: hidden;
16
-
17
- & svg {
18
+ `, s = e.div`
19
+ cursor: pointer;
20
+ & > svg {
18
21
  transform: scale(3.5) !important;
19
22
  }
20
23
  `;
21
24
  export {
25
+ s as Nudge,
22
26
  p as NudgeLottieContainer,
23
27
  r as NudgeWrapper
24
28
  };
@@ -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 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
+ {"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,17 +1,34 @@
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,
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,
9
9
  zIndex: i = 100
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;
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;
14
31
  export {
15
- g as default
32
+ j as default
16
33
  };
17
34
  //# 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';\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
+ {"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,32 +1,30 @@
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
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")
17
15
  };
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)
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)
21
19
  try {
22
- return await a(l);
20
+ return (await i()).default;
23
21
  } catch {
24
22
  return null;
25
23
  }
26
24
  return null;
27
25
  }
28
26
  export {
29
- t as RANGE_SIZE,
30
- f as getAnimationFile
27
+ o as RANGE_SIZE,
28
+ _ as getAnimationFile
31
29
  };
32
30
  //# sourceMappingURL=perfect-hits-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"perfect-hits-helpers.js","sources":["../../../../src/features/ui/perfect-hits/perfect-hits-helpers.ts"],"sourcesContent":["import { LOTTIE } from '../../../assets/lottie/lottie';\nimport { fetchLottie } from '../lottie-animation/helper';\nimport { RANGE_SIZE, TIERS } from './constants';\n\ntype AnimationData = Record<string, unknown>;\n\nconst animationFilesMap: Record<string, string> = {\n bronze_1: LOTTIE.BRONZE_1,\n bronze_2: LOTTIE.BRONZE_2,\n bronze_3: LOTTIE.BRONZE_3,\n silver_1: LOTTIE.SILVER_1,\n silver_2: LOTTIE.SILVER_2,\n silver_3: LOTTIE.SILVER_3,\n gold_1: LOTTIE.GOLD_1,\n gold_2: LOTTIE.GOLD_2,\n gold_3: LOTTIE.GOLD_3,\n color_1: LOTTIE.COLOR_1,\n color_2: LOTTIE.COLOR_2,\n color_3: LOTTIE.COLOR_3,\n};\n\n/**\n * [0-4] => bronze_1\n * [5-9] => silver_1\n * [10-14] => gold_1\n * [15-19] => color_1\n * [20-24] => bronze_2\n * [25-29] => silver_2\n * [30-34] => gold_2\n * [35-39] => color_2\n * [40-44] => bronze_3\n * [45-49] => silver_3\n * [50-54] => gold_3\n * [55-59] => color_3\n * [>60] => color_3\n */\n\nasync function getAnimationFile(num: number): Promise<AnimationData | null> {\n const setNumber = num >= RANGE_SIZE * 12 ? 3 : Math.floor(num / (TIERS.length * RANGE_SIZE)) + 1;\n\n const tierIndex = Math.floor((num % (TIERS.length * RANGE_SIZE)) / RANGE_SIZE);\n const tier = num >= RANGE_SIZE * 12 ? 'color' : TIERS[tierIndex];\n const fileName = `${tier}_${setNumber}`;\n\n const loadAnimationPath = animationFilesMap[fileName];\n\n if (loadAnimationPath) {\n try {\n const lottieModule = await fetchLottie(loadAnimationPath);\n\n return lottieModule;\n } catch (error) {\n return null;\n }\n }\n\n return null;\n}\n\nexport { getAnimationFile, RANGE_SIZE };\n"],"names":["animationFilesMap","LOTTIE","getAnimationFile","num","setNumber","RANGE_SIZE","TIERS","tierIndex","fileName","loadAnimationPath","fetchLottie"],"mappings":";;;AAMA,MAAMA,IAA4C;AAAA,EAChD,UAAUC,EAAO;AAAA,EACjB,UAAUA,EAAO;AAAA,EACjB,UAAUA,EAAO;AAAA,EACjB,UAAUA,EAAO;AAAA,EACjB,UAAUA,EAAO;AAAA,EACjB,UAAUA,EAAO;AAAA,EACjB,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AAAA,EACf,SAASA,EAAO;AAAA,EAChB,SAASA,EAAO;AAAA,EAChB,SAASA,EAAO;AAClB;AAkBA,eAAeC,EAAiBC,GAA4C;AACpE,QAAAC,IAAYD,KAAOE,IAAa,KAAK,IAAI,KAAK,MAAMF,KAAOG,EAAM,SAASD,EAAW,IAAI,GAEzFE,IAAY,KAAK,MAAOJ,KAAOG,EAAM,SAASD,KAAeA,CAAU,GAEvEG,IAAW,GADJL,KAAOE,IAAa,KAAK,UAAUC,EAAMC,CAAS,CACvC,IAAIH,CAAS,IAE/BK,IAAoBT,EAAkBQ,CAAQ;AAEpD,MAAIC;AACE,QAAA;AAGK,aAFc,MAAMC,EAAYD,CAAiB;AAAA,YAG1C;AACP,aAAA;AAAA,IACT;AAGK,SAAA;AACT;"}
1
+ {"version":3,"file":"perfect-hits-helpers.js","sources":["../../../../src/features/ui/perfect-hits/perfect-hits-helpers.ts"],"sourcesContent":["import { RANGE_SIZE, TIERS } from './constants';\n\ntype AnimationData = Record<string, unknown>;\n\nconst animationFilesMap: Record<string, () => Promise<{ default: AnimationData }>> = {\n bronze_1: () => import('../../../assets/lotties/perfect-hits/bronze-1.json'),\n bronze_2: () => import('../../../assets/lotties/perfect-hits/bronze-2.json'),\n bronze_3: () => import('../../../assets/lotties/perfect-hits/bronze-3.json'),\n silver_1: () => import('../../../assets/lotties/perfect-hits/silver-1.json'),\n silver_2: () => import('../../../assets/lotties/perfect-hits/silver-2.json'),\n silver_3: () => import('../../../assets/lotties/perfect-hits/silver-3.json'),\n gold_1: () => import('../../../assets/lotties/perfect-hits/gold-1.json'),\n gold_2: () => import('../../../assets/lotties/perfect-hits/gold-2.json'),\n gold_3: () => import('../../../assets/lotties/perfect-hits/gold-3.json'),\n color_1: () => import('../../../assets/lotties/perfect-hits/color-1.json'),\n color_2: () => import('../../../assets/lotties/perfect-hits/color-2.json'),\n color_3: () => import('../../../assets/lotties/perfect-hits/color-3.json'),\n};\n\n/**\n * [0-4] => bronze_1\n * [5-9] => silver_1\n * [10-14] => gold_1\n * [15-19] => color_1\n * [20-24] => bronze_2\n * [25-29] => silver_2\n * [30-34] => gold_2\n * [35-39] => color_2\n * [40-44] => bronze_3\n * [45-49] => silver_3\n * [50-54] => gold_3\n * [55-59] => color_3\n * [>60] => color_3\n */\n\nasync function getAnimationFile(num: number): Promise<AnimationData | null> {\n const setNumber = num >= RANGE_SIZE * 12 ? 3 : Math.floor(num / (TIERS.length * RANGE_SIZE)) + 1;\n\n const tierIndex = Math.floor((num % (TIERS.length * RANGE_SIZE)) / RANGE_SIZE);\n const tier = num >= RANGE_SIZE * 12 ? 'color' : TIERS[tierIndex];\n const fileName = `${tier}_${setNumber}`;\n\n const loadAnimationData = animationFilesMap[fileName];\n\n if (loadAnimationData) {\n try {\n const module = await loadAnimationData();\n\n return module.default;\n } catch (error) {\n return null;\n }\n }\n\n return null;\n}\n\nexport { getAnimationFile, RANGE_SIZE };\n"],"names":["animationFilesMap","getAnimationFile","num","setNumber","RANGE_SIZE","TIERS","tierIndex","fileName","loadAnimationData"],"mappings":";AAIA,MAAMA,IAA+E;AAAA,EACnF,UAAU,MAAM,OAAO,uDAAoD;AAAA,EAC3E,UAAU,MAAM,OAAO,uDAAoD;AAAA,EAC3E,UAAU,MAAM,OAAO,uDAAoD;AAAA,EAC3E,UAAU,MAAM,OAAO,uDAAoD;AAAA,EAC3E,UAAU,MAAM,OAAO,uDAAoD;AAAA,EAC3E,UAAU,MAAM,OAAO,uDAAoD;AAAA,EAC3E,QAAQ,MAAM,OAAO,qDAAkD;AAAA,EACvE,QAAQ,MAAM,OAAO,qDAAkD;AAAA,EACvE,QAAQ,MAAM,OAAO,qDAAkD;AAAA,EACvE,SAAS,MAAM,OAAO,sDAAmD;AAAA,EACzE,SAAS,MAAM,OAAO,sDAAmD;AAAA,EACzE,SAAS,MAAM,OAAO,sDAAmD;AAC3E;AAkBA,eAAeC,EAAiBC,GAA4C;AACpE,QAAAC,IAAYD,KAAOE,IAAa,KAAK,IAAI,KAAK,MAAMF,KAAOG,EAAM,SAASD,EAAW,IAAI,GAEzFE,IAAY,KAAK,MAAOJ,KAAOG,EAAM,SAASD,KAAeA,CAAU,GAEvEG,IAAW,GADJL,KAAOE,IAAa,KAAK,UAAUC,EAAMC,CAAS,CACvC,IAAIH,CAAS,IAE/BK,IAAoBR,EAAkBO,CAAQ;AAEpD,MAAIC;AACE,QAAA;AAGF,cAFe,MAAMA,KAEP;AAAA,YACA;AACP,aAAA;AAAA,IACT;AAGK,SAAA;AACT;"}
@@ -1,29 +1,52 @@
1
- import { jsx as r, jsxs as m } from "react/jsx-runtime";
2
- import { memo as n } from "react";
3
- import { LOTTIE as p } from "../../../../assets/lottie/lottie.js";
4
- import a from "../../../ui/buttons/button/button.js";
5
- import h from "../../../ui/layout/flex-view.js";
6
- import c from "../../../ui/lottie-animation/lottie-animation.js";
7
- import o from "../../../ui/separator/separator.js";
8
- import l from "../../../ui/text/text.js";
9
- import { BaseWrapper as s } from "./styles.js";
10
- const d = ({ buttonLabel: e = "Home", error: t, handleClick: i }) => /* @__PURE__ */ r(s, { $background: "BLACK_75", children: /* @__PURE__ */ m(h, { $alignItems: "center", children: [
11
- /* @__PURE__ */ r(o, { heightX: 4 }),
12
- /* @__PURE__ */ r(c, { src: p.ERROR_LOTTIE, height: 320, width: 320 }),
13
- /* @__PURE__ */ r(l, { $renderAs: "h6", $color: "WHITE", $align: "center", children: t || "Oh No! Error detected..." }),
14
- /* @__PURE__ */ r(o, { heightX: 1 }),
15
- /* @__PURE__ */ r(
16
- a,
17
- {
18
- label: e,
19
- onClick: i,
20
- renderAs: "primary",
21
- size: "regular",
22
- widthX: 14
1
+ import { jsx as e, jsxs as g } from "react/jsx-runtime";
2
+ import { memo as A, useState as i, useEffect as a } from "react";
3
+ import E from "../../../ui/buttons/button/button.js";
4
+ import m from "../../../ui/layout/flex-view.js";
5
+ import l from "../../../ui/separator/separator.js";
6
+ import $ from "../../../ui/text/text.js";
7
+ import { BaseWrapper as x } from "./styles.js";
8
+ const o = "error_modal", y = ({ buttonLabel: s = "Home", error: d, handleClick: c }) => {
9
+ const [r, p] = i(null), [t, u] = i(null);
10
+ return a(() => {
11
+ (async () => {
12
+ const [f, h] = await Promise.all([
13
+ import("lottie-web"),
14
+ import("../../../../assets/lotties/error-lottie.json.js")
15
+ ]);
16
+ p(f.default), u(h.default);
17
+ })();
18
+ }, []), a(() => {
19
+ if (r && t) {
20
+ const n = r.loadAnimation({
21
+ name: o,
22
+ container: document.getElementById(o),
23
+ renderer: "svg",
24
+ loop: !0,
25
+ autoplay: !0,
26
+ animationData: t
27
+ });
28
+ return () => {
29
+ n.destroy();
30
+ };
23
31
  }
24
- )
25
- ] }) }), L = n(d);
32
+ }, [r, t]), /* @__PURE__ */ e(x, { $background: "BLACK_75", children: /* @__PURE__ */ g(m, { $alignItems: "center", children: [
33
+ /* @__PURE__ */ e(l, { heightX: 4 }),
34
+ /* @__PURE__ */ e(m, { $width: 320, $height: 320, id: o }),
35
+ /* @__PURE__ */ e($, { $renderAs: "h6", $color: "WHITE", $align: "center", children: d || "Oh No! Error detected..." }),
36
+ /* @__PURE__ */ e(l, { heightX: 1 }),
37
+ /* @__PURE__ */ e(
38
+ E,
39
+ {
40
+ label: s,
41
+ onClick: c,
42
+ renderAs: "primary",
43
+ size: "regular",
44
+ widthX: 14
45
+ }
46
+ )
47
+ ] }) });
48
+ }, R = A(y);
26
49
  export {
27
- L as default
50
+ R as default
28
51
  };
29
52
  //# sourceMappingURL=error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-permissions/error.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport { LOTTIE } from '../../../../assets/lottie/lottie';\nimport Button from '../../../ui/buttons/button/button';\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 { BaseWrapper } from './styles';\n\ninterface ErrorProps {\n buttonLabel?: string;\n error: string;\n handleClick: () => void;\n}\n\nconst Error: React.FC<ErrorProps> = ({ buttonLabel = 'Home', error, handleClick }) => (\n <BaseWrapper $background=\"BLACK_75\">\n <FlexView $alignItems=\"center\">\n <Separator heightX={4} />\n <LottieAnimation src={LOTTIE.ERROR_LOTTIE} height={320} width={320} />\n <Text $renderAs=\"h6\" $color=\"WHITE\" $align=\"center\">\n {error || 'Oh No! Error detected...'}\n </Text>\n <Separator heightX={1} />\n <Button\n label={buttonLabel}\n onClick={handleClick}\n renderAs=\"primary\"\n size=\"regular\"\n widthX={14}\n />\n </FlexView>\n </BaseWrapper>\n);\n\nexport default memo(Error);\n"],"names":["Error","buttonLabel","error","handleClick","jsx","BaseWrapper","jsxs","FlexView","Separator","LottieAnimation","LOTTIE","Text","Button","memo"],"mappings":";;;;;;;;;AAgBA,MAAMA,IAA8B,CAAC,EAAE,aAAAC,IAAc,QAAQ,OAAAC,GAAO,aAAAC,EAAA,MAClE,gBAAAC,EAACC,KAAY,aAAY,YACvB,UAAC,gBAAAC,EAAAC,GAAA,EAAS,aAAY,UACpB,UAAA;AAAA,EAAC,gBAAAH,EAAAI,GAAA,EAAU,SAAS,EAAG,CAAA;AAAA,EACvB,gBAAAJ,EAACK,KAAgB,KAAKC,EAAO,cAAc,QAAQ,KAAK,OAAO,KAAK;AAAA,EACpE,gBAAAN,EAACO,KAAK,WAAU,MAAK,QAAO,SAAQ,QAAO,UACxC,UAAAT,KAAS,2BACZ,CAAA;AAAA,EACA,gBAAAE,EAACI,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,EACvB,gBAAAJ;AAAA,IAACQ;AAAA,IAAA;AAAA,MACC,OAAOX;AAAA,MACP,SAASE;AAAA,MACT,UAAS;AAAA,MACT,MAAK;AAAA,MACL,QAAQ;AAAA,IAAA;AAAA,EACV;AAAA,EACF,CAAA,EACF,CAAA,GAGaD,IAAAW,EAAKb,CAAK;"}
1
+ {"version":3,"file":"error.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-permissions/error.tsx"],"sourcesContent":["import type { LottiePlayer } from 'lottie-web';\n\nimport { memo, useEffect, useState } from 'react';\n\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport { BaseWrapper } from './styles';\n\nconst ERROR_MODAL = 'error_modal';\n\ninterface ErrorProps {\n buttonLabel?: string;\n error: string;\n handleClick: () => void;\n}\n\nconst Error: React.FC<ErrorProps> = ({ buttonLabel = 'Home', error, handleClick }) => {\n const [lottie, setLottie] = useState<LottiePlayer | null>(null);\n const [errorAnm, setErrorAnm] = useState<unknown>(null);\n\n useEffect(() => {\n const loadDependencies = async () => {\n const [lottieModule, errorAnmModule] = await Promise.all([\n import('lottie-web'),\n import('../../../../assets/lotties/error-lottie.json'),\n ]);\n\n setLottie(lottieModule.default);\n setErrorAnm(errorAnmModule.default);\n };\n\n loadDependencies();\n }, []);\n\n useEffect(() => {\n if (lottie && errorAnm) {\n const animation = lottie.loadAnimation({\n name: ERROR_MODAL,\n container: document.getElementById(ERROR_MODAL) as Element,\n renderer: 'svg',\n loop: true,\n autoplay: true,\n animationData: errorAnm,\n });\n\n return () => {\n animation.destroy();\n };\n }\n }, [lottie, errorAnm]);\n\n return (\n <BaseWrapper $background=\"BLACK_75\">\n <FlexView $alignItems=\"center\">\n <Separator heightX={4} />\n <FlexView $width={320} $height={320} id={ERROR_MODAL} />\n <Text $renderAs=\"h6\" $color=\"WHITE\" $align=\"center\">\n {error || 'Oh No! Error detected...'}\n </Text>\n <Separator heightX={1} />\n <Button\n label={buttonLabel}\n onClick={handleClick}\n renderAs=\"primary\"\n size=\"regular\"\n widthX={14}\n />\n </FlexView>\n </BaseWrapper>\n );\n};\n\nexport default memo(Error);\n"],"names":["ERROR_MODAL","Error","buttonLabel","error","handleClick","lottie","setLottie","useState","errorAnm","setErrorAnm","useEffect","lottieModule","errorAnmModule","animation","BaseWrapper","jsxs","FlexView","jsx","Separator","Text","Button","memo"],"mappings":";;;;;;;AAUA,MAAMA,IAAc,eAQdC,IAA8B,CAAC,EAAE,aAAAC,IAAc,QAAQ,OAAAC,GAAO,aAAAC,QAAkB;AACpF,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAA8B,IAAI,GACxD,CAACC,GAAUC,CAAW,IAAIF,EAAkB,IAAI;AAEtD,SAAAG,EAAU,MAAM;AAWG,KAVQ,YAAY;AACnC,YAAM,CAACC,GAAcC,CAAc,IAAI,MAAM,QAAQ,IAAI;AAAA,QACvD,OAAO,YAAY;AAAA,QACnB,OAAO,iDAA8C;AAAA,MAAA,CACtD;AAED,MAAAN,EAAUK,EAAa,OAAO,GAC9BF,EAAYG,EAAe,OAAO;AAAA,IAAA;EAItC,GAAG,CAAE,CAAA,GAELF,EAAU,MAAM;AACd,QAAIL,KAAUG,GAAU;AAChB,YAAAK,IAAYR,EAAO,cAAc;AAAA,QACrC,MAAML;AAAA,QACN,WAAW,SAAS,eAAeA,CAAW;AAAA,QAC9C,UAAU;AAAA,QACV,MAAM;AAAA,QACN,UAAU;AAAA,QACV,eAAeQ;AAAA,MAAA,CAChB;AAED,aAAO,MAAM;AACX,QAAAK,EAAU,QAAQ;AAAA,MAAA;AAAA,IAEtB;AAAA,EAAA,GACC,CAACR,GAAQG,CAAQ,CAAC,qBAGlBM,GAAY,EAAA,aAAY,YACvB,UAAC,gBAAAC,EAAAC,GAAA,EAAS,aAAY,UACpB,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAU,SAAS,EAAG,CAAA;AAAA,sBACtBF,GAAS,EAAA,QAAQ,KAAK,SAAS,KAAK,IAAIhB,GAAa;AAAA,IACtD,gBAAAiB,EAACE,KAAK,WAAU,MAAK,QAAO,SAAQ,QAAO,UACxC,UAAAhB,KAAS,2BACZ,CAAA;AAAA,IACA,gBAAAc,EAACC,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAD;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,OAAOlB;AAAA,QACP,SAASE;AAAA,QACT,UAAS;AAAA,QACT,MAAK;AAAA,QACL,QAAQ;AAAA,MAAA;AAAA,IACV;AAAA,EAAA,EACF,CAAA,EACF,CAAA;AAEJ,GAEeD,IAAAkB,EAAKpB,CAAK;"}