@cuemath/leap 3.1.0-gg2 → 3.1.1-aa0

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 (395) hide show
  1. package/dist/assets/gif/gif.js +22 -22
  2. package/dist/assets/gif/gif.js.map +1 -1
  3. package/dist/assets/illustrations/illustrations.js +128 -127
  4. package/dist/assets/illustrations/illustrations.js.map +1 -1
  5. package/dist/assets/images/images.js +32 -32
  6. package/dist/assets/images/images.js.map +1 -1
  7. package/dist/assets/line-icons/icons/check.js +3 -3
  8. package/dist/assets/line-icons/icons/check.js.map +1 -1
  9. package/dist/assets/line-icons/icons/puzzle-icon.js +51 -0
  10. package/dist/assets/line-icons/icons/puzzle-icon.js.map +1 -0
  11. package/dist/assets/line-icons/icons/share.js +48 -0
  12. package/dist/assets/line-icons/icons/share.js.map +1 -0
  13. package/dist/assets/line-icons/icons/tile.js +54 -0
  14. package/dist/assets/line-icons/icons/tile.js.map +1 -0
  15. package/dist/assets/lottie/lottie.js +86 -86
  16. package/dist/assets/lottie/lottie.js.map +1 -1
  17. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +34 -32
  18. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +1 -1
  19. package/dist/features/chapters-v2/chapter-details/chapter-details.js +47 -45
  20. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
  21. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +11 -11
  22. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +1 -1
  23. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +47 -46
  24. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +1 -1
  25. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +165 -124
  26. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +1 -1
  27. package/dist/features/chapters-v2/utils/node-card-utils.js +41 -41
  28. package/dist/features/chapters-v2/utils/node-card-utils.js.map +1 -1
  29. package/dist/features/cue-canvas/bottombar/homework-controls.js +73 -0
  30. package/dist/features/cue-canvas/bottombar/homework-controls.js.map +1 -0
  31. package/dist/features/cue-canvas/cue-canvas-context.js +8 -5
  32. package/dist/features/cue-canvas/cue-canvas-context.js.map +1 -1
  33. package/dist/features/cue-canvas/cue-canvas-core.js +86 -81
  34. package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
  35. package/dist/features/cue-canvas/cue-canvas-helpers.js +31 -25
  36. package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
  37. package/dist/features/cue-canvas/cue-canvas-provider.js +14 -12
  38. package/dist/features/cue-canvas/cue-canvas-provider.js.map +1 -1
  39. package/dist/features/cue-canvas/cue-canvas.js +81 -67
  40. package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
  41. package/dist/features/cue-canvas/cue-cavas-styled.js +45 -42
  42. package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
  43. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js +61 -54
  44. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js.map +1 -1
  45. package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js +18 -14
  46. package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js.map +1 -1
  47. package/dist/features/cue-canvas/hooks/use-upload-helper.js +23 -0
  48. package/dist/features/cue-canvas/hooks/use-upload-helper.js.map +1 -0
  49. package/dist/features/cue-canvas/sidebar/homework/helper.js +20 -0
  50. package/dist/features/cue-canvas/sidebar/homework/helper.js.map +1 -0
  51. package/dist/features/cue-canvas/sidebar/homework/homework-menu.js +33 -0
  52. package/dist/features/cue-canvas/sidebar/homework/homework-menu.js.map +1 -0
  53. package/dist/features/cue-canvas/sidebar/homework/homework-request.js +68 -0
  54. package/dist/features/cue-canvas/sidebar/homework/homework-request.js.map +1 -0
  55. package/dist/features/cue-canvas/sidebar/homework/homework-styled.js +25 -0
  56. package/dist/features/cue-canvas/sidebar/homework/homework-styled.js.map +1 -0
  57. package/dist/features/cue-canvas/sidebar/homework/homework.js +39 -0
  58. package/dist/features/cue-canvas/sidebar/homework/homework.js.map +1 -0
  59. package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js +13 -0
  60. package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js.map +1 -0
  61. package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js +60 -0
  62. package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js.map +1 -0
  63. package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js +44 -0
  64. package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js.map +1 -0
  65. package/dist/features/cue-canvas/sidebar/puzzles/filters.js +107 -0
  66. package/dist/features/cue-canvas/sidebar/puzzles/filters.js.map +1 -0
  67. package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js +42 -0
  68. package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js.map +1 -0
  69. package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js +84 -0
  70. package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js.map +1 -0
  71. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js +36 -0
  72. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js.map +1 -0
  73. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js +133 -0
  74. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js.map +1 -0
  75. package/dist/features/cue-canvas/sidebar/puzzles/puzzles-styled.js +96 -0
  76. package/dist/features/cue-canvas/sidebar/puzzles/puzzles-styled.js.map +1 -0
  77. package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js +29 -0
  78. package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js.map +1 -0
  79. package/dist/features/cue-canvas/sidebar/puzzles/utils.js +120 -0
  80. package/dist/features/cue-canvas/sidebar/puzzles/utils.js.map +1 -0
  81. package/dist/features/cue-canvas/sidebar/sidebar-styled.js +32 -0
  82. package/dist/features/cue-canvas/sidebar/sidebar-styled.js.map +1 -0
  83. package/dist/features/cue-canvas/sidebar/sidebar.js +29 -0
  84. package/dist/features/cue-canvas/sidebar/sidebar.js.map +1 -0
  85. package/dist/features/cue-canvas/sidebar/tiles/tile.js +16 -0
  86. package/dist/features/cue-canvas/sidebar/tiles/tile.js.map +1 -0
  87. package/dist/features/cue-canvas/toolbar/grid-menu.js +13 -13
  88. package/dist/features/cue-canvas/toolbar/grid-menu.js.map +1 -1
  89. package/dist/features/cue-canvas/toolbar/tool.js +22 -20
  90. package/dist/features/cue-canvas/toolbar/tool.js.map +1 -1
  91. package/dist/features/homework/homework-card-view.js +56 -54
  92. package/dist/features/homework/homework-card-view.js.map +1 -1
  93. package/dist/features/homework/homework-card.js +53 -52
  94. package/dist/features/homework/homework-card.js.map +1 -1
  95. package/dist/features/homework/styles.js +5 -4
  96. package/dist/features/homework/styles.js.map +1 -1
  97. package/dist/features/hooks/use-debounce.js +16 -0
  98. package/dist/features/hooks/use-debounce.js.map +1 -0
  99. package/dist/features/milestone/create/comps/add-custom-chapter/course-catalog.js +38 -36
  100. package/dist/features/milestone/create/comps/add-custom-chapter/course-catalog.js.map +1 -1
  101. package/dist/features/milestone/create/comps/add-custom-chapter/hooks/use-catalog-helpers.js +24 -22
  102. package/dist/features/milestone/create/comps/add-custom-chapter/hooks/use-catalog-helpers.js.map +1 -1
  103. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-container.js +23 -22
  104. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-container.js.map +1 -1
  105. package/dist/features/milestone/create/comps/chapters-selection-step/utils.js +49 -47
  106. package/dist/features/milestone/create/comps/chapters-selection-step/utils.js.map +1 -1
  107. package/dist/features/milestone/create/comps/class-details-step/class-details-step.js +94 -87
  108. package/dist/features/milestone/create/comps/class-details-step/class-details-step.js.map +1 -1
  109. package/dist/features/milestone/create/comps/class-details-step/class-details-utils.js +13 -12
  110. package/dist/features/milestone/create/comps/class-details-step/class-details-utils.js.map +1 -1
  111. package/dist/features/milestone/create/comps/test-type-step/test-type-step.js +23 -21
  112. package/dist/features/milestone/create/comps/test-type-step/test-type-step.js.map +1 -1
  113. package/dist/features/milestone/create/milestone-create-helpers.js +165 -162
  114. package/dist/features/milestone/create/milestone-create-helpers.js.map +1 -1
  115. package/dist/features/trial-session/comps/pricing/india-pricing/index.js +96 -0
  116. package/dist/features/trial-session/comps/pricing/india-pricing/index.js.map +1 -0
  117. package/dist/features/trial-session/comps/pricing/india-pricing/india-pricing-styled.js +59 -0
  118. package/dist/features/trial-session/comps/pricing/india-pricing/india-pricing-styled.js.map +1 -0
  119. package/dist/features/trial-session/comps/pricing/pricing.js +36 -35
  120. package/dist/features/trial-session/comps/pricing/pricing.js.map +1 -1
  121. package/dist/features/ui/stepper/stepper.js +7 -7
  122. package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js +22 -19
  123. package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js.map +1 -1
  124. package/dist/index.d.ts +298 -247
  125. package/dist/index.js +184 -180
  126. package/dist/index.js.map +1 -1
  127. package/dist/static/accuracy-meter.99585cba.json +4218 -0
  128. package/dist/static/accuracy-needle.cd6e63ac.json +618 -0
  129. package/dist/static/achievement_bg.0d0555ac.png +0 -0
  130. package/dist/static/advance-mode-segment-lottie.51ff6707.json +1 -0
  131. package/dist/static/alarm-clock-orange.31fb90d9.svg +1 -0
  132. package/dist/static/alarm-clock-purple.06d4911c.svg +1 -0
  133. package/dist/static/alien-1.fc7ba696.svg +1 -0
  134. package/dist/static/alien-2.15fdda07.svg +1 -0
  135. package/dist/static/alien-3.2664a37f.svg +1 -0
  136. package/dist/static/alien-4.06ac66da.svg +1 -0
  137. package/dist/static/ashta.0d3926b2.png +0 -0
  138. package/dist/static/avatar-selected.860ee923.json +1 -0
  139. package/dist/static/awesome.8e1cf046.png +0 -0
  140. package/dist/static/badge_success.2f6c8e65.png +0 -0
  141. package/dist/static/beginner1x.489908a7.json +3508 -0
  142. package/dist/static/bg_empty_resources.63b187fd.png +0 -0
  143. package/dist/static/blue-clip.87cc4543.svg +1 -0
  144. package/dist/static/bobwave.5603c70b.gif +0 -0
  145. package/dist/static/book-green.20f6eed3.svg +1 -0
  146. package/dist/static/book-open-blue.d4f8d08c.svg +5 -0
  147. package/dist/static/book-orange.04bdc75e.svg +1 -0
  148. package/dist/static/book-yellow.c210ac06.svg +1 -0
  149. package/dist/static/bronze-1.da4e4b5f.json +4176 -0
  150. package/dist/static/bronze-2.97f9c639.json +4433 -0
  151. package/dist/static/bronze-3.6a433ebd.json +4786 -0
  152. package/dist/static/bullet-yellow.2f892d88.svg +1 -0
  153. package/dist/static/calendar-blue.e0d52d09.svg +1 -0
  154. package/dist/static/calendar-gray.1c72682a.svg +1 -0
  155. package/dist/static/calendar-green.a2b6a393.svg +1 -0
  156. package/dist/static/caution.5766a967.svg +1 -0
  157. package/dist/static/chapter-1.8a1683a0.svg +1 -0
  158. package/dist/static/chapter-10.c97de4a5.svg +1 -0
  159. package/dist/static/chapter-2.71ac6dfc.svg +1 -0
  160. package/dist/static/chapter-3.003fc901.svg +1 -0
  161. package/dist/static/chapter-4.8abbacd8.svg +1 -0
  162. package/dist/static/chapter-5.c774b439.svg +1 -0
  163. package/dist/static/chapter-6.cb5cf1cb.svg +1 -0
  164. package/dist/static/chapter-7.57b0beb4.svg +1 -0
  165. package/dist/static/chapter-8.68d36477.svg +1 -0
  166. package/dist/static/chapter-9.0c00e26f.svg +1 -0
  167. package/dist/static/chapter-completed.1241399b.json +497 -0
  168. package/dist/static/chapter-header-bg-2.c8d96894.svg +1 -0
  169. package/dist/static/chapter-header-bg.4ed173c2.svg +1 -0
  170. package/dist/static/chatva.d0c57a95.png +0 -0
  171. package/dist/static/circle-cuemath-logo-white.e9fafb91.svg +1 -0
  172. package/dist/static/circle-cuemath-logo.8bcb1ad4.svg +1 -0
  173. package/dist/static/circle-outercircle-bg.65f21460.svg +1 -0
  174. package/dist/static/circular-loader.a5a1a0a6.json +238 -0
  175. package/dist/static/clock-30min.eae818b8.json +1197 -0
  176. package/dist/static/clock-45min.df8adf51.json +1197 -0
  177. package/dist/static/clock-60min.2b48d875.json +1197 -0
  178. package/dist/static/clock-90min.3e557ed7.json +1407 -0
  179. package/dist/static/clock-orange.c144059b.svg +6 -0
  180. package/dist/static/color-1.45101b9a.json +4545 -0
  181. package/dist/static/color-2.ccdc7d0a.json +4828 -0
  182. package/dist/static/color-3.5e8e1422.json +5273 -0
  183. package/dist/static/community-bulb.3b42af21.svg +1 -0
  184. package/dist/static/competitive-arena.b9c40801.json +1 -0
  185. package/dist/static/congrats.75718de8.png +0 -0
  186. package/dist/static/cool.1893941c.png +0 -0
  187. package/dist/static/cosa.46c0c49b.png +0 -0
  188. package/dist/static/crosshair-circle.522a26ea.svg +1 -0
  189. package/dist/static/crown-overlay.11fb073c.svg +1 -0
  190. package/dist/static/crown.c18fa217.svg +1 -0
  191. package/dist/static/cuecoin-gold.bcb8085e.svg +1 -0
  192. package/dist/static/cuemath-app-qr-code.4beefe48.svg +1 -0
  193. package/dist/static/cuemath-app-qr-code.ba6cc09b.svg +1 -0
  194. package/dist/static/cuemath-app-qr-code.d0912fc7.png +0 -0
  195. package/dist/static/default-chapter.8ede1160.png +0 -0
  196. package/dist/static/desktop-with-purple-fill.dfec66cc.svg +1 -0
  197. package/dist/static/difficult.6846c064.json +2755 -0
  198. package/dist/static/dob.9ce3c15b.json +1 -0
  199. package/dist/static/doda.3103971c.png +0 -0
  200. package/dist/static/duration-30min-gray.f6442df4.svg +1 -0
  201. package/dist/static/duration-45min-gray.ad90fb23.svg +1 -0
  202. package/dist/static/duration-60min-gray.874e52a2.svg +1 -0
  203. package/dist/static/duration-90min-gray.32a04cef.svg +1 -0
  204. package/dist/static/dvi.fc7b32a5.png +0 -0
  205. package/dist/static/earth-green.e1329b7a.svg +1 -0
  206. package/dist/static/easy-rescheduling.3a6d1a00.gif +0 -0
  207. package/dist/static/easy.68242ddd.json +2658 -0
  208. package/dist/static/eka.b10a06fa.png +0 -0
  209. package/dist/static/elite-circle.3df58972.json +6876 -0
  210. package/dist/static/ellipse-clip.dfb25608.svg +1 -0
  211. package/dist/static/empty_mix_tests.1d251f07.png +0 -0
  212. package/dist/static/enrichment-mini.fc3c0f83.gif +0 -0
  213. package/dist/static/enrichment.571feac0.gif +0 -0
  214. package/dist/static/error-lottie.b3507a4b.json +5255 -0
  215. package/dist/static/error.cbe1ddde.json +1 -0
  216. package/dist/static/familiar1x.7c9c7f15.json +3046 -0
  217. package/dist/static/female-avatar.b8cd1012.svg +1 -0
  218. package/dist/static/fifteen-min-clock.0af4e303.json +715 -0
  219. package/dist/static/five-min-clock.6be5cc41.json +721 -0
  220. package/dist/static/game-play.4982b0cb.svg +1 -0
  221. package/dist/static/games.47abcb18.gif +0 -0
  222. package/dist/static/globe-with-blue-fill.beae6ca4.svg +1 -0
  223. package/dist/static/gold-1.ab2489fe.json +4176 -0
  224. package/dist/static/gold-2.34045826.json +4441 -0
  225. package/dist/static/gold-3.d704698b.json +4810 -0
  226. package/dist/static/grade-grid-background.b17b4ccb.svg +1 -0
  227. package/dist/static/grade.b3730524.json +1 -0
  228. package/dist/static/graduate-hat.4b49eb44.svg +1 -0
  229. package/dist/static/graduate-icon-pink.01fbfb1b.svg +1 -0
  230. package/dist/static/graduate-pink-filled-bg.c91e9c53.svg +1 -0
  231. package/dist/static/great.2a5dcc34.png +0 -0
  232. package/dist/static/green-balloon.67ac8587.svg +1 -0
  233. package/dist/static/green-face.1b4dd82f.svg +1 -0
  234. package/dist/static/hexo.eab4b9f5.png +0 -0
  235. package/dist/static/infinite-button-bg.5909225e.json +1 -0
  236. package/dist/static/infinite-button-symbol.aa31350c.json +1 -0
  237. package/dist/static/jigii-wave.150a6d18.gif +0 -0
  238. package/dist/static/key.d6846476.json +1 -0
  239. package/dist/static/kudos.b7e2aeb6.png +0 -0
  240. package/dist/static/learn.71b13323.json +1 -0
  241. package/dist/static/learned-shield-gray.1495b0d5.svg +1 -0
  242. package/dist/static/learned-shield-green.7c26b423.svg +1 -0
  243. package/dist/static/learning-plan.72d64a61.png +0 -0
  244. package/dist/static/learning-session.71cc8f22.gif +0 -0
  245. package/dist/static/learnt.870c5e38.svg +1 -0
  246. package/dist/static/lesson-overview-banner.f5404af6.png +0 -0
  247. package/dist/static/levelup-rings.b1055283.json +549 -0
  248. package/dist/static/like.cb492460.svg +1 -0
  249. package/dist/static/live-session.a0d25c78.svg +1 -0
  250. package/dist/static/loader-1.6524355e.svg +1 -0
  251. package/dist/static/loader.52f8c35c.svg +1 -0
  252. package/dist/static/locked.0c3b7577.svg +1 -0
  253. package/dist/static/mail.c30e8708.json +1 -0
  254. package/dist/static/maintenance.a26aca65.svg +1 -0
  255. package/dist/static/male-avatar.2febc9eb.svg +1 -0
  256. package/dist/static/mastered-badge.81f156fb.svg +1 -0
  257. package/dist/static/mastered-shield-gray.a58cbe19.svg +1 -0
  258. package/dist/static/mastered-shield-green.070fa4eb.svg +1 -0
  259. package/dist/static/max-wave.44e002c9.gif +0 -0
  260. package/dist/static/medium.94c3829b.json +2289 -0
  261. package/dist/static/mental-math.3c95f169.svg +1 -0
  262. package/dist/static/milestone-intro-1.281a354c.svg +1 -0
  263. package/dist/static/milestone-intro-2.19faee69.svg +1 -0
  264. package/dist/static/milestone-intro-3.6f6055d6.svg +1 -0
  265. package/dist/static/mistake.476d1aa7.svg +1 -0
  266. package/dist/static/no-info.f4bfe437.png +0 -0
  267. package/dist/static/node-custom-test-bg.d3b757be.svg +1 -0
  268. package/dist/static/node-learn-bg.b61f815c.svg +1 -0
  269. package/dist/static/node-practice-bg.16cbaf2a.svg +1 -0
  270. package/dist/static/node-project-bg.e6a33e28.svg +1 -0
  271. package/dist/static/node-puzzle-bg.3422135c.svg +1 -0
  272. package/dist/static/node-recap-bg.546154e4.svg +1 -0
  273. package/dist/static/node-test-prep-bg.42c0b9c4.svg +1 -0
  274. package/dist/static/node-video-bg.3df3f73a.svg +1 -0
  275. package/dist/static/nudge-tap.5cb30093.json +1057 -0
  276. package/dist/static/number-1-orange.cbf526ed.svg +1 -0
  277. package/dist/static/number-2-orange.6f29eb72.svg +1 -0
  278. package/dist/static/number-3-orange.58baf717.svg +1 -0
  279. package/dist/static/number-4-orange.5ed1ec5e.svg +1 -0
  280. package/dist/static/octo.3020bd93.png +0 -0
  281. package/dist/static/one-star-filled.b6084257.svg +1 -0
  282. package/dist/static/orange-face.5824c2e9.svg +1 -0
  283. package/dist/static/otp.2d08f874.json +1 -0
  284. package/dist/static/otp.a3029760.json +1 -0
  285. package/dist/static/parent-avatar.772d53e0.json +1 -0
  286. package/dist/static/people-with-orange-fill.3835b8f1.svg +1 -0
  287. package/dist/static/phone-number.0be312ea.json +1 -0
  288. package/dist/static/phone-number.84f55562.json +1 -0
  289. package/dist/static/play-icon.13baaa7d.svg +1 -0
  290. package/dist/static/play.68d16dec.svg +1 -0
  291. package/dist/static/point1.b53831de.json +2942 -0
  292. package/dist/static/point10.7b5e536d.json +3179 -0
  293. package/dist/static/point100.1df16f82.json +3196 -0
  294. package/dist/static/point15.fea00c32.json +3179 -0
  295. package/dist/static/point2.7cec6e24.json +1 -0
  296. package/dist/static/point20.c88d776d.json +3178 -0
  297. package/dist/static/point25.a18c346a.json +3178 -0
  298. package/dist/static/point3.f96fe7aa.json +1 -0
  299. package/dist/static/point30.c5224b0b.json +3202 -0
  300. package/dist/static/point35.fad343dd.json +3058 -0
  301. package/dist/static/point4.fe04fb83.json +1 -0
  302. package/dist/static/point40.10a16f72.json +3082 -0
  303. package/dist/static/point45.2ad7561f.json +3082 -0
  304. package/dist/static/point5.da40ed1f.json +2948 -0
  305. package/dist/static/point50.5718cb3d.json +3046 -0
  306. package/dist/static/point60.17380d9f.json +3076 -0
  307. package/dist/static/points-sum.360e63de.svg +1 -0
  308. package/dist/static/practice.158dd488.json +1 -0
  309. package/dist/static/practiced-shield-green.90278855.svg +1 -0
  310. package/dist/static/practiced-shield-grey.16cf4fe0.svg +1 -0
  311. package/dist/static/proficient-badge.1a6dbb72.svg +1 -0
  312. package/dist/static/proficient1x.fa6e7b80.json +3430 -0
  313. package/dist/static/profile-board.4f4a17e6.svg +1 -0
  314. package/dist/static/project.eb665827.json +1 -0
  315. package/dist/static/puzzle-student.de530364.svg +1 -0
  316. package/dist/static/puzzle.5aad5cf8.svg +1 -0
  317. package/dist/static/puzzle.b298c7e4.json +1 -0
  318. package/dist/static/puzzle_card_easy.7d9439b5.png +0 -0
  319. package/dist/static/puzzle_card_hard.185a19c4.png +0 -0
  320. package/dist/static/puzzle_card_medium.17daef9c.png +0 -0
  321. package/dist/static/puzzles.1e269965.gif +0 -0
  322. package/dist/static/random-mode-segment-lottie.79cf1c07.json +1 -0
  323. package/dist/static/recap.0dd2c1e2.json +1 -0
  324. package/dist/static/refund-policy-with-headphone.589398e0.svg +1 -0
  325. package/dist/static/refund-policy.912dbb4c.svg +1 -0
  326. package/dist/static/report-404.dd67785c.svg +1 -0
  327. package/dist/static/rocket-broken.1f86fa43.svg +1 -0
  328. package/dist/static/rocket-yellow.62d27e15.svg +1 -0
  329. package/dist/static/school-success-mini.f74a852f.gif +0 -0
  330. package/dist/static/school-success.f9669771.gif +0 -0
  331. package/dist/static/score.41971107.svg +1 -0
  332. package/dist/static/sequence-mode-segment-lottie.11ac49e9.json +1 -0
  333. package/dist/static/shared.3af01b49.png +0 -0
  334. package/dist/static/sheet-reference.9da7a09f.png +0 -0
  335. package/dist/static/silver-1.0396328a.json +4168 -0
  336. package/dist/static/silver-2.bf50615f.json +4433 -0
  337. package/dist/static/silver-3.13d66b84.json +4810 -0
  338. package/dist/static/skills.90ce4cbb.gif +0 -0
  339. package/dist/static/sleepy-boi.031a1165.json +1008 -0
  340. package/dist/static/smiley.49bb7d7c.svg +1 -0
  341. package/dist/static/speckie-wave.510639ce.gif +0 -0
  342. package/dist/static/spinner-white.639e0d87.json +122 -0
  343. package/dist/static/spiral_pattern.9fd3e6e9.png +0 -0
  344. package/dist/static/splash-screen.bbf567ce.json +2411 -0
  345. package/dist/static/star-orange-filled.a7ff9c8f.svg +1 -0
  346. package/dist/static/star-orange.a91a341f.svg +1 -0
  347. package/dist/static/star-with-green-fill.86877d41.svg +1 -0
  348. package/dist/static/stay-connected.371d3d9d.gif +0 -0
  349. package/dist/static/streak-green.b59bf4dd.svg +1 -0
  350. package/dist/static/streak-white.2cbdc9b8.svg +1 -0
  351. package/dist/static/student-avatar.524226bd.json +1 -0
  352. package/dist/static/table-mode-reveal.b44a82c3.json +1 -0
  353. package/dist/static/table-mode-star.b8a1d762.json +1 -0
  354. package/dist/static/table-segment-star.78e851d6.json +1 -0
  355. package/dist/static/target-achieved-text.053bd142.json +2830 -0
  356. package/dist/static/target-achieved-text.10db8475.json +1 -0
  357. package/dist/static/teacher-validation.7577ecdc.json +245 -0
  358. package/dist/static/tera-wave.2954a6a4.gif +0 -0
  359. package/dist/static/test-difficulty-easy.56df71dd.svg +1 -0
  360. package/dist/static/test-difficulty-hard.7250f1f4.svg +1 -0
  361. package/dist/static/test-difficulty-medium.2fd9686e.svg +1 -0
  362. package/dist/static/test-prep-mini.718e5734.gif +0 -0
  363. package/dist/static/test-prep.ea433f71.gif +0 -0
  364. package/dist/static/test.803d6036.json +1 -0
  365. package/dist/static/tetra.354ff2b9.png +0 -0
  366. package/dist/static/three-stars-filled.72b51f03.svg +1 -0
  367. package/dist/static/tick-green.a1654049.svg +1 -0
  368. package/dist/static/total-streak.d5ce7669.json +842 -0
  369. package/dist/static/total-time-spent.434005d3.json +200 -0
  370. package/dist/static/total-time.d979cbb9.json +24383 -0
  371. package/dist/static/tournament-ripple.e5c239a5.json +1047 -0
  372. package/dist/static/track-progress.c75b1031.gif +0 -0
  373. package/dist/static/trophy-blue-filled.7e2b40ab.svg +1 -0
  374. package/dist/static/trophy-blue.e684ba4c.svg +1 -0
  375. package/dist/static/trophy-circle.b7b23e36.svg +1 -0
  376. package/dist/static/trophy-green.6c0741c8.svg +10 -0
  377. package/dist/static/two-stars-filled.a51a14b4.svg +1 -0
  378. package/dist/static/up-arrow.a6946bd3.svg +1 -0
  379. package/dist/static/user-crown-grid-background.c2875a73.svg +1 -0
  380. package/dist/static/user-down.a06f2f94.svg +1 -0
  381. package/dist/static/user-pin.5f334465.svg +1 -0
  382. package/dist/static/user-profile-background.199977a9.svg +1 -0
  383. package/dist/static/user-type-selector-grid-bg.3c9c8ad6.svg +1 -0
  384. package/dist/static/user-type-selector-grid-bg.3ce8142d.svg +1 -0
  385. package/dist/static/user-type-selector-grid-bg.aad0b059.svg +1 -0
  386. package/dist/static/user-up.2aecbbae.svg +1 -0
  387. package/dist/static/username.9e034d51.json +1 -0
  388. package/dist/static/video.b41451e2.json +1 -0
  389. package/dist/static/vinnie-wave.10734dd5.gif +0 -0
  390. package/dist/static/way-forward.1428093e.gif +0 -0
  391. package/dist/static/wow.864fbb02.png +0 -0
  392. package/dist/static/yellow-face.b7525a33.svg +1 -0
  393. package/dist/static/your-goals.63ffbee5.gif +0 -0
  394. package/dist/static/zodasa.336c3bb0.png +0 -0
  395. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"block-section-view.js","sources":["../../../../../src/features/chapters-v2/chapter-details/block-sections/block-section-view.tsx"],"sourcesContent":["import type { INodeMenuOption } from '../../comps/node-card/node-menu-options/node-menu-options-types';\nimport type { IBlockSectionProps } from './block-sections-types';\nimport type { FC } from 'react';\n\nimport MoreVerticalIcon from '../../../../assets/line-icons/icons/more-vertical';\nimport SkipIcon from '../../../../assets/line-icons/icons/skip';\nimport ContextMenu from '../../../ui/context-menu/context-menu';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport NodeCard from '../../comps/node-card/node-card';\nimport NodeMenuOptions from '../../comps/node-card/node-menu-options/node-menu-options';\nimport { BLOCK_NAME } from '../../constants/block-constants';\nimport { getSheetNLessonCount } from '../../utils';\nimport * as Styled from './block-sections-styled';\n\nconst BlockSectionView: FC<IBlockSectionProps> = ({\n userType,\n imageHue,\n blockData,\n lessonIdx,\n isLastBlock,\n isGoalBlock,\n onNodeAttempt,\n onNodeAssignAsHomework,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onBlockSkipUnskip,\n onNodeUnassign,\n onNodeUnlock,\n}) => {\n const { block_type: blockType, name, sheets, permissions } = blockData;\n\n const { can_skip: canSkip, can_un_skip: canUnskip } = permissions;\n const blockName = BLOCK_NAME[blockType];\n\n const sheetNLessonCount = getSheetNLessonCount(canUnskip, sheets.length, isGoalBlock, lessonIdx);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-skip',\n label: canUnskip ? `Revert 'Skip'` : 'Skip',\n icon: SkipIcon,\n disabled: false,\n onClick: () => onBlockSkipUnskip?.(blockData, canSkip),\n },\n ];\n\n if (userType === 'STUDENT' && canUnskip) return null;\n\n return (\n <Styled.BlockSectionWrapper\n $background={isGoalBlock ? `WHITE_1` : 'WHITE_3'}\n $gutterX={1}\n $lastBlock={isLastBlock}\n $flexGap={12}\n >\n <FlexView $flexGap={12}>\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $justifyContent=\"space-between\">\n <FlexView $opacity={canUnskip ? 0.5 : 1}>\n <Text\n $renderAs=\"ac4\"\n $color=\"BLACK_T_60\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {blockName === 'Puzzles' ? name : blockName} {sheetNLessonCount}\n </Text>\n\n {!!isGoalBlock && !!lessonIdx && (\n <Text\n $renderAs=\"ab2-bold\"\n $color=\"BLACK_1\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {name}\n </Text>\n )}\n </FlexView>\n\n {userType === 'TEACHER' && (canSkip || canUnskip) && (\n <ContextMenu\n targetElement={\n <Styled.BlockOptionsWrapper\n $width={20}\n $height={20}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n <MoreVerticalIcon width={18} height={18} />\n </Styled.BlockOptionsWrapper>\n }\n menuElement={<NodeMenuOptions options={menuOptions} />}\n menuOffset={5}\n menuZIndex={4}\n />\n )}\n </FlexView>\n\n <Styled.BlockSheetContainer $opacity={canUnskip ? 0.5 : 1}>\n {sheets.map(nodeData => (\n <NodeCard\n key={nodeData.node_id}\n imageHue={imageHue || 'BLUE'}\n userType={userType}\n nodeData={nodeData}\n blockType={blockType}\n isSkipped={canUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n onNodeUnassign={onNodeUnassign}\n onNodeUnlock={onNodeUnlock}\n />\n ))}\n </Styled.BlockSheetContainer>\n </FlexView>\n </Styled.BlockSectionWrapper>\n );\n};\n\nexport default BlockSectionView;\n"],"names":["BlockSectionView","userType","imageHue","blockData","lessonIdx","isLastBlock","isGoalBlock","onNodeAttempt","onNodeAssignAsHomework","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onBlockSkipUnskip","onNodeUnassign","onNodeUnlock","blockType","name","sheets","permissions","canSkip","canUnskip","blockName","BLOCK_NAME","sheetNLessonCount","getSheetNLessonCount","menuOptions","SkipIcon","jsx","Styled.BlockSectionWrapper","jsxs","FlexView","Text","ContextMenu","Styled.BlockOptionsWrapper","MoreVerticalIcon","NodeMenuOptions","Styled.BlockSheetContainer","nodeData","NodeCard"],"mappings":"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"}
1
+ {"version":3,"file":"block-section-view.js","sources":["../../../../../src/features/chapters-v2/chapter-details/block-sections/block-section-view.tsx"],"sourcesContent":["import type { INodeMenuOption } from '../../comps/node-card/node-menu-options/node-menu-options-types';\nimport type { IBlockSectionProps } from './block-sections-types';\nimport type { FC } from 'react';\n\nimport MoreVerticalIcon from '../../../../assets/line-icons/icons/more-vertical';\nimport SkipIcon from '../../../../assets/line-icons/icons/skip';\nimport ContextMenu from '../../../ui/context-menu/context-menu';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport NodeCard from '../../comps/node-card/node-card';\nimport NodeMenuOptions from '../../comps/node-card/node-menu-options/node-menu-options';\nimport { BLOCK_NAME } from '../../constants/block-constants';\nimport { getSheetNLessonCount } from '../../utils';\nimport * as Styled from './block-sections-styled';\n\nconst BlockSectionView: FC<IBlockSectionProps> = ({\n userType,\n imageHue,\n blockData,\n lessonIdx,\n isLastBlock,\n isGoalBlock,\n onNodeAttempt,\n onNodeAssignAsHomework,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onBlockSkipUnskip,\n onNodeUnassign,\n onNodeUnlock,\n onNodeSkipUnSkip,\n}) => {\n const { block_type: blockType, name, sheets, permissions } = blockData;\n\n const { can_skip: canSkip, can_un_skip: canUnskip } = permissions;\n const blockName = BLOCK_NAME[blockType];\n\n const sheetNLessonCount = getSheetNLessonCount(canUnskip, sheets.length, isGoalBlock, lessonIdx);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-skip',\n label: canUnskip ? `Revert 'Skip'` : 'Skip All',\n icon: SkipIcon,\n disabled: false,\n onClick: () => onBlockSkipUnskip?.(blockData, canSkip),\n },\n ];\n\n if (userType === 'STUDENT' && canUnskip) return null;\n\n return (\n <Styled.BlockSectionWrapper\n $background={isGoalBlock ? `WHITE_1` : 'WHITE_3'}\n $gutterX={1}\n $lastBlock={isLastBlock}\n $flexGap={12}\n >\n <FlexView $flexGap={12}>\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $justifyContent=\"space-between\">\n <FlexView $opacity={canUnskip ? 0.5 : 1}>\n <Text\n $renderAs=\"ac4\"\n $color=\"BLACK_T_60\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {blockName === 'Puzzles' ? name : blockName} {sheetNLessonCount}\n </Text>\n\n {!!isGoalBlock && !!lessonIdx && (\n <Text\n $renderAs=\"ab2-bold\"\n $color=\"BLACK_1\"\n $textDecoration={canUnskip ? 'line-through' : 'none'}\n >\n {name}\n </Text>\n )}\n </FlexView>\n\n {userType === 'TEACHER' && (canSkip || canUnskip) && (\n <ContextMenu\n targetElement={\n <Styled.BlockOptionsWrapper\n $width={20}\n $height={20}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n <MoreVerticalIcon width={18} height={18} />\n </Styled.BlockOptionsWrapper>\n }\n menuElement={<NodeMenuOptions options={menuOptions} />}\n menuOffset={5}\n menuZIndex={4}\n />\n )}\n </FlexView>\n\n <Styled.BlockSheetContainer>\n {sheets.map(nodeData => (\n <NodeCard\n key={nodeData.node_id}\n imageHue={imageHue || 'BLUE'}\n userType={userType}\n nodeData={nodeData}\n blockType={blockType}\n isSkipped={canUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n onNodeUnassign={onNodeUnassign}\n onNodeUnlock={onNodeUnlock}\n onNodeSkipUnSkip={onNodeSkipUnSkip}\n />\n ))}\n </Styled.BlockSheetContainer>\n </FlexView>\n </Styled.BlockSectionWrapper>\n );\n};\n\nexport default BlockSectionView;\n"],"names":["BlockSectionView","userType","imageHue","blockData","lessonIdx","isLastBlock","isGoalBlock","onNodeAttempt","onNodeAssignAsHomework","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onBlockSkipUnskip","onNodeUnassign","onNodeUnlock","onNodeSkipUnSkip","blockType","name","sheets","permissions","canSkip","canUnskip","blockName","BLOCK_NAME","sheetNLessonCount","getSheetNLessonCount","menuOptions","SkipIcon","jsx","Styled.BlockSectionWrapper","jsxs","FlexView","Text","ContextMenu","Styled.BlockOptionsWrapper","MoreVerticalIcon","NodeMenuOptions","Styled.BlockSheetContainer","nodeData","NodeCard"],"mappings":"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"}
@@ -1,18 +1,18 @@
1
- import { jsxs as m, jsx as r, Fragment as b } from "react/jsx-runtime";
2
- import { memo as _, useCallback as v, useEffect as c } from "react";
3
- import { ILLUSTRATIONS as D } from "../../../assets/illustrations/illustrations.js";
4
- import E from "../../../assets/line-icons/icons/back2.js";
5
- import { useJourney as L } from "../../journey/use-journey/use-journey.js";
6
- import P from "../../ui/buttons/button/button.js";
7
- import T from "../../ui/buttons/icon-button/icon-button.js";
8
- import U from "../../ui/layout/flex-view.js";
9
- import j from "../../ui/loader/app-loader/app-loader.js";
10
- import H from "../../ui/text/text.js";
11
- import { useGetChapterDetails as J } from "../api/chapter.js";
12
- import F from "./block-sections/block-sections.js";
13
- import O from "./chapter-banner/chapter-banner.js";
14
- import { ContentWrapper as W, BackButtonContainer as X, BackButtonWrapper as z, LoaderWrapper as G } from "./chapter-details-styled.js";
15
- const V = _((f) => {
1
+ import { jsxs as m, jsx as r, Fragment as _ } from "react/jsx-runtime";
2
+ import { memo as v, useCallback as D, useEffect as p } from "react";
3
+ import { ILLUSTRATIONS as E } from "../../../assets/illustrations/illustrations.js";
4
+ import L from "../../../assets/line-icons/icons/back2.js";
5
+ import { useJourney as P } from "../../journey/use-journey/use-journey.js";
6
+ import T from "../../ui/buttons/button/button.js";
7
+ import U from "../../ui/buttons/icon-button/icon-button.js";
8
+ import j from "../../ui/layout/flex-view.js";
9
+ import H from "../../ui/loader/app-loader/app-loader.js";
10
+ import J from "../../ui/text/text.js";
11
+ import { useGetChapterDetails as F } from "../api/chapter.js";
12
+ import O from "./block-sections/block-sections.js";
13
+ import W from "./chapter-banner/chapter-banner.js";
14
+ import { ContentWrapper as X, BackButtonContainer as z, BackButtonWrapper as G, LoaderWrapper as V } from "./chapter-details-styled.js";
15
+ const q = v((f) => {
16
16
  const {
17
17
  userChapterId: n,
18
18
  studentId: i,
@@ -25,45 +25,46 @@ const V = _((f) => {
25
25
  onNodeReview: A,
26
26
  onNodeView: B,
27
27
  onExit: $,
28
- onNodeUnassign: x,
29
- onNodeUnlock: I,
28
+ onNodeUnassign: N,
29
+ onNodeUnlock: S,
30
+ onNodeSkipUnSkip: x,
30
31
  startChapterPageJourney: s,
31
- chapterPageRef: N,
32
+ chapterPageRef: I,
32
33
  bannerRef: w,
33
34
  coreBlocksRef: R,
34
- canStartJourney: l
35
- } = f, { isJourneyActive: p } = L(), {
35
+ canStartJourney: c
36
+ } = f, { isJourneyActive: l } = P(), {
36
37
  get: d,
37
38
  data: e,
38
39
  isProcessing: t,
39
- isProcessingFailed: S,
40
+ isProcessingFailed: b,
40
41
  isStale: h
41
- } = J(), o = v(() => {
42
+ } = F(), o = D(() => {
42
43
  d(n, void 0, { studentId: i });
43
44
  }, [d, n, i]);
44
- return c(() => {
45
+ return p(() => {
45
46
  o();
46
- }, [o]), c(() => {
47
- e && l && !p && s && s({
47
+ }, [o]), p(() => {
48
+ e && c && !l && s && s({
48
49
  chapterDetails: e,
49
50
  userChapterId: n,
50
51
  studentId: i,
51
52
  userType: a
52
53
  });
53
54
  }, [
54
- l,
55
+ c,
55
56
  e,
56
- p,
57
+ l,
57
58
  s,
58
59
  i,
59
60
  n,
60
61
  a
61
- ]), c(() => {
62
+ ]), p(() => {
62
63
  !t && h && o();
63
- }, [o, t, h]), S ? /* @__PURE__ */ m(U, { $flexGapX: 1.5, $height: "100vh", $justifyContent: "center", $alignItems: "center", children: [
64
- /* @__PURE__ */ r(H, { $renderAs: "h6", children: "Oops! Something went wrong. Please try again later." }),
64
+ }, [o, t, h]), b ? /* @__PURE__ */ m(j, { $flexGapX: 1.5, $height: "100vh", $justifyContent: "center", $alignItems: "center", children: [
65
+ /* @__PURE__ */ r(J, { $renderAs: "h6", children: "Oops! Something went wrong. Please try again later." }),
65
66
  /* @__PURE__ */ r(
66
- P,
67
+ T,
67
68
  {
68
69
  widthX: 14,
69
70
  size: "small",
@@ -73,29 +74,29 @@ const V = _((f) => {
73
74
  onClick: o
74
75
  }
75
76
  )
76
- ] }) : !e && t ? /* @__PURE__ */ r(j, { height: "80vh" }) : /* @__PURE__ */ m(
77
- W,
77
+ ] }) : !e && t ? /* @__PURE__ */ r(H, { height: "80vh" }) : /* @__PURE__ */ m(
78
+ X,
78
79
  {
79
- ref: N,
80
+ ref: I,
80
81
  $widthX: 50,
81
82
  $disablePointerEvents: t,
82
83
  $justifyContent: "center",
83
84
  $alignItems: "center",
84
85
  children: [
85
- a === "TEACHER" && /* @__PURE__ */ r(X, { $height: "100%", children: /* @__PURE__ */ r(z, { children: /* @__PURE__ */ r(
86
- T,
86
+ a === "TEACHER" && /* @__PURE__ */ r(z, { $height: "100%", children: /* @__PURE__ */ r(G, { children: /* @__PURE__ */ r(
87
+ U,
87
88
  {
88
- Icon: E,
89
+ Icon: L,
89
90
  renderAs: "secondary-gray",
90
91
  analyticsLabel: "chapter_page_exit",
91
92
  size: "xsmall",
92
93
  onClick: $
93
94
  }
94
95
  ) }) }),
95
- t && /* @__PURE__ */ r(G, { children: /* @__PURE__ */ r("img", { src: D.LOADER_1, alt: "loader" }) }),
96
- e && /* @__PURE__ */ m(b, { children: [
96
+ t && /* @__PURE__ */ r(V, { children: /* @__PURE__ */ r("img", { src: E.LOADER_1, alt: "loader" }) }),
97
+ e && /* @__PURE__ */ m(_, { children: [
97
98
  /* @__PURE__ */ r(
98
- O,
99
+ W,
99
100
  {
100
101
  title: e.name,
101
102
  imageHue: e.image_hue,
@@ -105,7 +106,7 @@ const V = _((f) => {
105
106
  }
106
107
  ),
107
108
  /* @__PURE__ */ r(
108
- F,
109
+ O,
109
110
  {
110
111
  imageHue: e.image_hue,
111
112
  userType: a,
@@ -118,16 +119,17 @@ const V = _((f) => {
118
119
  onNodeReview: A,
119
120
  onNodeView: B,
120
121
  coreBlocksRef: R,
121
- onNodeUnassign: x,
122
- onNodeUnlock: I
122
+ onNodeUnassign: N,
123
+ onNodeUnlock: S,
124
+ onNodeSkipUnSkip: x
123
125
  }
124
126
  )
125
127
  ] })
126
128
  ]
127
129
  }
128
130
  );
129
- }), me = V;
131
+ }), pe = q;
130
132
  export {
131
- me as default
133
+ pe as default
132
134
  };
133
135
  //# sourceMappingURL=chapter-details.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chapter-details.js","sources":["../../../../src/features/chapters-v2/chapter-details/chapter-details.tsx"],"sourcesContent":["import type { IChapterDetails } from './chapter-details-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport Back2Icon from '../../../assets/line-icons/icons/back2';\nimport { useJourney } from '../../journey/use-journey/use-journey';\nimport Button from '../../ui/buttons/button/button';\nimport IconButton from '../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../ui/layout/flex-view';\nimport AppLoader from '../../ui/loader/app-loader/app-loader';\nimport Text from '../../ui/text/text';\nimport { useGetChapterDetails } from '../api/chapter';\nimport BlockSections from './block-sections/block-sections';\nimport ChapterBanner from './chapter-banner/chapter-banner';\nimport * as Styled from './chapter-details-styled';\n\nconst ChapterDetails: FC<IChapterDetails> = memo(props => {\n const {\n userChapterId,\n studentId,\n userType,\n onBlockSkipUnskip,\n onNodeAttempt,\n onNodeAssignAsHomework,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onExit,\n onNodeUnassign,\n onNodeUnlock,\n startChapterPageJourney,\n chapterPageRef,\n bannerRef,\n coreBlocksRef,\n canStartJourney,\n } = props;\n const { isJourneyActive } = useJourney();\n const {\n get: getChapterDetails,\n data: chapterDetails,\n isProcessing,\n isProcessingFailed,\n isStale,\n } = useGetChapterDetails();\n\n const fetchChapterDetails = useCallback(() => {\n getChapterDetails(userChapterId, undefined, { studentId });\n }, [getChapterDetails, userChapterId, studentId]);\n\n useEffect(() => {\n fetchChapterDetails();\n }, [fetchChapterDetails]);\n\n useEffect(() => {\n if (chapterDetails && canStartJourney && !isJourneyActive && startChapterPageJourney) {\n startChapterPageJourney({\n chapterDetails: chapterDetails,\n userChapterId,\n studentId,\n userType,\n });\n }\n }, [\n canStartJourney,\n chapterDetails,\n isJourneyActive,\n startChapterPageJourney,\n studentId,\n userChapterId,\n userType,\n ]);\n\n useEffect(() => {\n if (!isProcessing && isStale) {\n fetchChapterDetails();\n }\n }, [fetchChapterDetails, isProcessing, isStale]);\n\n if (isProcessingFailed) {\n return (\n <FlexView $flexGapX={1.5} $height=\"100vh\" $justifyContent=\"center\" $alignItems=\"center\">\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={fetchChapterDetails}\n />\n </FlexView>\n );\n }\n\n if (!chapterDetails && isProcessing) {\n return <AppLoader height=\"80vh\" />;\n }\n\n return (\n <Styled.ContentWrapper\n ref={chapterPageRef}\n $widthX={50}\n $disablePointerEvents={isProcessing}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n {userType === 'TEACHER' && (\n <Styled.BackButtonContainer $height=\"100%\">\n <Styled.BackButtonWrapper>\n <IconButton\n Icon={Back2Icon}\n renderAs=\"secondary-gray\"\n analyticsLabel=\"chapter_page_exit\"\n size=\"xsmall\"\n onClick={onExit}\n />\n </Styled.BackButtonWrapper>\n </Styled.BackButtonContainer>\n )}\n\n {isProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loader\" />\n </Styled.LoaderWrapper>\n )}\n\n {chapterDetails && (\n <>\n <ChapterBanner\n title={chapterDetails.name}\n imageHue={chapterDetails.image_hue}\n imageUrl={chapterDetails.image_url}\n progressStats={chapterDetails?.progress_stat}\n bannerRef={bannerRef}\n />\n <BlockSections\n imageHue={chapterDetails.image_hue}\n userType={userType}\n blocks={chapterDetails.blocks}\n onBlockSkipUnskip={onBlockSkipUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n coreBlocksRef={coreBlocksRef}\n onNodeUnassign={onNodeUnassign}\n onNodeUnlock={onNodeUnlock}\n />\n </>\n )}\n </Styled.ContentWrapper>\n );\n});\n\nexport default ChapterDetails;\n"],"names":["ChapterDetails","memo","props","userChapterId","studentId","userType","onBlockSkipUnskip","onNodeAttempt","onNodeAssignAsHomework","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onExit","onNodeUnassign","onNodeUnlock","startChapterPageJourney","chapterPageRef","bannerRef","coreBlocksRef","canStartJourney","isJourneyActive","useJourney","getChapterDetails","chapterDetails","isProcessing","isProcessingFailed","isStale","useGetChapterDetails","fetchChapterDetails","useCallback","useEffect","jsxs","FlexView","jsx","Text","Button","AppLoader","Styled.ContentWrapper","Styled.BackButtonContainer","Styled.BackButtonWrapper","IconButton","Back2Icon","Styled.LoaderWrapper","ILLUSTRATIONS","Fragment","ChapterBanner","BlockSections","ChapterDetails$1"],"mappings":"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"}
1
+ {"version":3,"file":"chapter-details.js","sources":["../../../../src/features/chapters-v2/chapter-details/chapter-details.tsx"],"sourcesContent":["import type { IChapterDetails } from './chapter-details-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport Back2Icon from '../../../assets/line-icons/icons/back2';\nimport { useJourney } from '../../journey/use-journey/use-journey';\nimport Button from '../../ui/buttons/button/button';\nimport IconButton from '../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../ui/layout/flex-view';\nimport AppLoader from '../../ui/loader/app-loader/app-loader';\nimport Text from '../../ui/text/text';\nimport { useGetChapterDetails } from '../api/chapter';\nimport BlockSections from './block-sections/block-sections';\nimport ChapterBanner from './chapter-banner/chapter-banner';\nimport * as Styled from './chapter-details-styled';\n\nconst ChapterDetails: FC<IChapterDetails> = memo(props => {\n const {\n userChapterId,\n studentId,\n userType,\n onBlockSkipUnskip,\n onNodeAttempt,\n onNodeAssignAsHomework,\n onNodeMarkAsDone,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n onExit,\n onNodeUnassign,\n onNodeUnlock,\n onNodeSkipUnSkip,\n startChapterPageJourney,\n chapterPageRef,\n bannerRef,\n coreBlocksRef,\n canStartJourney,\n } = props;\n const { isJourneyActive } = useJourney();\n const {\n get: getChapterDetails,\n data: chapterDetails,\n isProcessing,\n isProcessingFailed,\n isStale,\n } = useGetChapterDetails();\n\n const fetchChapterDetails = useCallback(() => {\n getChapterDetails(userChapterId, undefined, { studentId });\n }, [getChapterDetails, userChapterId, studentId]);\n\n useEffect(() => {\n fetchChapterDetails();\n }, [fetchChapterDetails]);\n\n useEffect(() => {\n if (chapterDetails && canStartJourney && !isJourneyActive && startChapterPageJourney) {\n startChapterPageJourney({\n chapterDetails: chapterDetails,\n userChapterId,\n studentId,\n userType,\n });\n }\n }, [\n canStartJourney,\n chapterDetails,\n isJourneyActive,\n startChapterPageJourney,\n studentId,\n userChapterId,\n userType,\n ]);\n\n useEffect(() => {\n if (!isProcessing && isStale) {\n fetchChapterDetails();\n }\n }, [fetchChapterDetails, isProcessing, isStale]);\n\n if (isProcessingFailed) {\n return (\n <FlexView $flexGapX={1.5} $height=\"100vh\" $justifyContent=\"center\" $alignItems=\"center\">\n <Text $renderAs=\"h6\">Oops! Something went wrong. Please try again later.</Text>\n <Button\n widthX={14}\n size=\"small\"\n shape=\"square\"\n renderAs=\"primary\"\n label=\"Try again\"\n onClick={fetchChapterDetails}\n />\n </FlexView>\n );\n }\n\n if (!chapterDetails && isProcessing) {\n return <AppLoader height=\"80vh\" />;\n }\n\n return (\n <Styled.ContentWrapper\n ref={chapterPageRef}\n $widthX={50}\n $disablePointerEvents={isProcessing}\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n {userType === 'TEACHER' && (\n <Styled.BackButtonContainer $height=\"100%\">\n <Styled.BackButtonWrapper>\n <IconButton\n Icon={Back2Icon}\n renderAs=\"secondary-gray\"\n analyticsLabel=\"chapter_page_exit\"\n size=\"xsmall\"\n onClick={onExit}\n />\n </Styled.BackButtonWrapper>\n </Styled.BackButtonContainer>\n )}\n\n {isProcessing && (\n <Styled.LoaderWrapper>\n <img src={ILLUSTRATIONS.LOADER_1} alt=\"loader\" />\n </Styled.LoaderWrapper>\n )}\n\n {chapterDetails && (\n <>\n <ChapterBanner\n title={chapterDetails.name}\n imageHue={chapterDetails.image_hue}\n imageUrl={chapterDetails.image_url}\n progressStats={chapterDetails?.progress_stat}\n bannerRef={bannerRef}\n />\n <BlockSections\n imageHue={chapterDetails.image_hue}\n userType={userType}\n blocks={chapterDetails.blocks}\n onBlockSkipUnskip={onBlockSkipUnskip}\n onNodeAttempt={onNodeAttempt}\n onNodeAssignAsHomework={onNodeAssignAsHomework}\n onNodeMarkAsDone={onNodeMarkAsDone}\n onNodeReattempt={onNodeReattempt}\n onNodeReview={onNodeReview}\n onNodeView={onNodeView}\n coreBlocksRef={coreBlocksRef}\n onNodeUnassign={onNodeUnassign}\n onNodeUnlock={onNodeUnlock}\n onNodeSkipUnSkip={onNodeSkipUnSkip}\n />\n </>\n )}\n </Styled.ContentWrapper>\n );\n});\n\nexport default ChapterDetails;\n"],"names":["ChapterDetails","memo","props","userChapterId","studentId","userType","onBlockSkipUnskip","onNodeAttempt","onNodeAssignAsHomework","onNodeMarkAsDone","onNodeReattempt","onNodeReview","onNodeView","onExit","onNodeUnassign","onNodeUnlock","onNodeSkipUnSkip","startChapterPageJourney","chapterPageRef","bannerRef","coreBlocksRef","canStartJourney","isJourneyActive","useJourney","getChapterDetails","chapterDetails","isProcessing","isProcessingFailed","isStale","useGetChapterDetails","fetchChapterDetails","useCallback","useEffect","jsxs","FlexView","jsx","Text","Button","AppLoader","Styled.ContentWrapper","Styled.BackButtonContainer","Styled.BackButtonWrapper","IconButton","Back2Icon","Styled.LoaderWrapper","ILLUSTRATIONS","Fragment","ChapterBanner","BlockSections","ChapterDetails$1"],"mappings":"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"}
@@ -1,14 +1,14 @@
1
- import { jsx as m } from "react/jsx-runtime";
2
- import { memo as p } from "react";
3
- import { getNodeStateBasedTagInfo as S } from "../../utils/node-card-utils.js";
4
- import { SheetTagWrapper as T } from "./node-card-styled.js";
5
- const h = p((o) => {
6
- const { state: e, accuracy: t, nodeType: a, dueDateTs: c, isStudent: r } = o, d = ["DYNAMIC", "ASSESSMENT", "CHAPTER_ASSESSMENT"].includes(a) ? t : void 0, {
7
- icon: n,
8
- top: s,
9
- right: i
10
- } = S(e, !!r, d, c);
11
- return /* @__PURE__ */ m(T, { $top: s, $right: i, children: n });
1
+ import { jsx as p } from "react/jsx-runtime";
2
+ import { memo as S } from "react";
3
+ import { getNodeStateBasedTagInfo as T } from "../../utils/node-card-utils.js";
4
+ import { SheetTagWrapper as N } from "./node-card-styled.js";
5
+ const h = S((o) => {
6
+ const { state: e, accuracy: t, nodeType: a, dueDateTs: c, isStudent: s, isMilestone: i } = o, n = ["DYNAMIC", "ASSESSMENT", "CHAPTER_ASSESSMENT"].includes(a) ? t : void 0, {
7
+ icon: r,
8
+ top: d,
9
+ right: m
10
+ } = T(e, !!s, n, c, i);
11
+ return /* @__PURE__ */ p(N, { $top: d, $right: m, children: r });
12
12
  });
13
13
  export {
14
14
  h as default
@@ -1 +1 @@
1
- {"version":3,"file":"node-card-tags.js","sources":["../../../../../src/features/chapters-v2/comps/node-card/node-card-tags.tsx"],"sourcesContent":["import type { INodeCardTagsProps } from './node-card-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport { getNodeStateBasedTagInfo } from '../../utils/node-card-utils';\nimport * as Styled from './node-card-styled';\n\nconst NodeCardTags: FC<INodeCardTagsProps> = memo(props => {\n const { state, accuracy, nodeType, dueDateTs, isStudent } = props;\n const dynamicNodeTypes = ['DYNAMIC', 'ASSESSMENT', 'CHAPTER_ASSESSMENT'];\n const isDynamicNode = dynamicNodeTypes.includes(nodeType);\n const accuracyValue = isDynamicNode ? accuracy : undefined;\n\n const {\n icon: NodeTagIcon,\n top,\n right,\n } = getNodeStateBasedTagInfo(state, !!isStudent, accuracyValue, dueDateTs);\n\n return (\n <Styled.SheetTagWrapper $top={top} $right={right}>\n {NodeTagIcon}\n </Styled.SheetTagWrapper>\n );\n});\n\nexport default NodeCardTags;\n"],"names":["NodeCardTags","memo","props","state","accuracy","nodeType","dueDateTs","isStudent","accuracyValue","NodeTagIcon","top","right","getNodeStateBasedTagInfo","jsx","Styled.SheetTagWrapper"],"mappings":";;;;AAQM,MAAAA,IAAuCC,EAAK,CAASC,MAAA;AACzD,QAAM,EAAE,OAAAC,GAAO,UAAAC,GAAU,UAAAC,GAAU,WAAAC,GAAW,WAAAC,EAAc,IAAAL,GAGtDM,IAFmB,CAAC,WAAW,cAAc,oBAAoB,EAChC,SAASH,CAAQ,IAClBD,IAAW,QAE3C;AAAA,IACJ,MAAMK;AAAA,IACN,KAAAC;AAAA,IACA,OAAAC;AAAA,EAAA,IACEC,EAAyBT,GAAO,CAAC,CAACI,GAAWC,GAAeF,CAAS;AAGvE,SAAA,gBAAAO,EAACC,GAAA,EAAuB,MAAMJ,GAAK,QAAQC,GACxC,UACHF,EAAA,CAAA;AAEJ,CAAC;"}
1
+ {"version":3,"file":"node-card-tags.js","sources":["../../../../../src/features/chapters-v2/comps/node-card/node-card-tags.tsx"],"sourcesContent":["import type { INodeCardTagsProps } from './node-card-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport { getNodeStateBasedTagInfo } from '../../utils/node-card-utils';\nimport * as Styled from './node-card-styled';\n\nconst NodeCardTags: FC<INodeCardTagsProps> = memo(props => {\n const { state, accuracy, nodeType, dueDateTs, isStudent, isMilestone } = props;\n const dynamicNodeTypes = ['DYNAMIC', 'ASSESSMENT', 'CHAPTER_ASSESSMENT'];\n const isDynamicNode = dynamicNodeTypes.includes(nodeType);\n const accuracyValue = isDynamicNode ? accuracy : undefined;\n\n const {\n icon: NodeTagIcon,\n top,\n right,\n } = getNodeStateBasedTagInfo(state, !!isStudent, accuracyValue, dueDateTs, isMilestone);\n\n return (\n <Styled.SheetTagWrapper $top={top} $right={right}>\n {NodeTagIcon}\n </Styled.SheetTagWrapper>\n );\n});\n\nexport default NodeCardTags;\n"],"names":["NodeCardTags","memo","props","state","accuracy","nodeType","dueDateTs","isStudent","isMilestone","accuracyValue","NodeTagIcon","top","right","getNodeStateBasedTagInfo","jsx","Styled.SheetTagWrapper"],"mappings":";;;;AAQM,MAAAA,IAAuCC,EAAK,CAASC,MAAA;AACzD,QAAM,EAAE,OAAAC,GAAO,UAAAC,GAAU,UAAAC,GAAU,WAAAC,GAAW,WAAAC,GAAW,aAAAC,EAAgB,IAAAN,GAGnEO,IAFmB,CAAC,WAAW,cAAc,oBAAoB,EAChC,SAASJ,CAAQ,IAClBD,IAAW,QAE3C;AAAA,IACJ,MAAMM;AAAA,IACN,KAAAC;AAAA,IACA,OAAAC;AAAA,EAAA,IACEC,EAAyBV,GAAO,CAAC,CAACI,GAAWE,GAAeH,GAAWE,CAAW;AAGpF,SAAA,gBAAAM,EAACC,GAAA,EAAuB,MAAMJ,GAAK,QAAQC,GACxC,UACHF,EAAA,CAAA;AAEJ,CAAC;"}
@@ -1,31 +1,31 @@
1
- import { jsx as e, jsxs as d, Fragment as K } from "react/jsx-runtime";
2
- import { memo as X, useRef as j, useCallback as m } from "react";
3
- import G from "../../../../../assets/line-icons/icons/eye2.js";
4
- import z from "../../../../../assets/line-icons/icons/redo.js";
5
- import F from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
6
- import P from "../../../../ui/context-menu/context-menu.js";
1
+ import { jsx as e, jsxs as d, Fragment as X } from "react/jsx-runtime";
2
+ import { memo as j, useRef as G, useCallback as m } from "react";
3
+ import z from "../../../../../assets/line-icons/icons/eye2.js";
4
+ import F from "../../../../../assets/line-icons/icons/redo.js";
5
+ import P from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
6
+ import U from "../../../../ui/context-menu/context-menu.js";
7
7
  import Y from "../../../../ui/lottie-animation/lottie-animation.js";
8
8
  import Z from "../../../../ui/text/text.js";
9
9
  import { BLOCK_TYPE as q } from "../../../constants/block-constants.js";
10
10
  import { NODE_CARD_STATES as J } from "../../../constants/node-constants.js";
11
11
  import { getNodeTypeBasedBgImage as Q } from "../../../utils/index.js";
12
- import { getNodeCardBasedIcon as U } from "../../../utils/node-card-utils.js";
13
- import { NodeCardContainer as V, NodeCardInfoWrapper as ee, IconWrapper as te, StyledImportantIcon as re, NodeCardContentWrapper as ne, NodeCardTitle as oe } from "../node-card-styled.js";
14
- import ae from "../node-card-tags.js";
15
- import ie from "../node-menu-options/node-menu-options.js";
16
- const ce = { renderer: "canvas", autoplay: !1 }, ye = X((O) => {
12
+ import { getNodeCardBasedIcon as V } from "../../../utils/node-card-utils.js";
13
+ import { NodeCardContainer as ee, NodeCardInfoWrapper as te, IconWrapper as re, StyledImportantIcon as ne, NodeCardContentWrapper as oe, NodeCardTitle as ae } from "../node-card-styled.js";
14
+ import ie from "../node-card-tags.js";
15
+ import ce from "../node-menu-options/node-menu-options.js";
16
+ const se = { renderer: "canvas", autoplay: !1 }, ye = j((O) => {
17
17
  const {
18
18
  nodeData: t,
19
19
  imageHue: b,
20
- blockType: y,
20
+ blockType: S,
21
21
  onNodeAttempt: a,
22
22
  onNodeReattempt: i,
23
23
  onNodeReview: c,
24
24
  onNodeView: r,
25
- isStudent: A
25
+ isStudent: y
26
26
  } = O, {
27
- accuracy: L,
28
- attempt_location: S,
27
+ accuracy: A,
28
+ attempt_location: L,
29
29
  node_type: l,
30
30
  card_header: E,
31
31
  title: T,
@@ -39,8 +39,9 @@ const ce = { renderer: "canvas", autoplay: !1 }, ye = X((O) => {
39
39
  can_review: s,
40
40
  can_start: p,
41
41
  can_resume: u,
42
- can_reset: I
43
- } = R, v = y === q.GOAL, o = C === J.LOCKED, w = S === "INCLASS", f = !(p || u) && (I || s), h = j(null), B = Q(l), { lottie: M } = U(l), k = m(
42
+ can_reset: k,
43
+ can_un_skip: v
44
+ } = R, w = S === q.GOAL, o = C === J.LOCKED, B = L === "INCLASS", f = !(p || u) && (k || s), h = G(null), M = Q(l), { lottie: W } = V(l), I = m(
44
45
  (n) => {
45
46
  switch (n) {
46
47
  case "node-card-review":
@@ -54,7 +55,7 @@ const ce = { renderer: "canvas", autoplay: !1 }, ye = X((O) => {
54
55
  }
55
56
  },
56
57
  [s, t, i, c, r, _]
57
- ), W = m(() => {
58
+ ), N = m(() => {
58
59
  f || o || (p || u ? a == null || a(t) : g && (r == null || r(t)));
59
60
  }, [
60
61
  u,
@@ -65,39 +66,39 @@ const ce = { renderer: "canvas", autoplay: !1 }, ye = X((O) => {
65
66
  f,
66
67
  o,
67
68
  g
68
- ]), N = m(() => {
69
+ ]), D = m(() => {
69
70
  var n;
70
71
  o || (n = h.current) == null || n.play();
71
- }, [o]), D = m(() => {
72
+ }, [o]), H = m(() => {
72
73
  var n;
73
74
  (n = h.current) == null || n.stop();
74
- }, []), H = [
75
+ }, []), K = [
75
76
  {
76
77
  id: "node-card-review",
77
78
  label: "Review",
78
- icon: G,
79
+ icon: z,
79
80
  disabled: !s,
80
- onClick: k
81
+ onClick: I
81
82
  },
82
83
  {
83
84
  id: "node-card-reattempt",
84
85
  label: "Reattempt",
85
- icon: z,
86
- disabled: !I,
87
- onClick: k
86
+ icon: F,
87
+ disabled: !k,
88
+ onClick: I
88
89
  }
89
90
  ];
90
- return /* @__PURE__ */ e(
91
- P,
91
+ return v ? null : /* @__PURE__ */ e(
92
+ U,
92
93
  {
93
94
  targetElement: /* @__PURE__ */ e(
94
- V,
95
+ ee,
95
96
  {
96
97
  $background: `${b}_2`,
97
98
  $disabled: o,
98
- onClick: W,
99
+ onClick: N,
99
100
  children: /* @__PURE__ */ d(
100
- F,
101
+ P,
101
102
  {
102
103
  renderAs: "primary",
103
104
  tooltipItem: $,
@@ -108,20 +109,20 @@ const ce = { renderer: "canvas", autoplay: !1 }, ye = X((O) => {
108
109
  widthX: 11.25,
109
110
  children: [
110
111
  /* @__PURE__ */ d(
111
- ee,
112
+ te,
112
113
  {
113
114
  $flexDirection: "row",
114
115
  $alignItems: "center",
115
116
  $heightX: 3.5,
116
- $bgImage: B,
117
+ $bgImage: M,
117
118
  $gutterX: 0.78125,
118
119
  $flexGap: 8.5,
119
120
  $opacity: o ? 0.5 : 1,
120
- onMouseEnter: N,
121
- onMouseLeave: D,
121
+ onMouseEnter: D,
122
+ onMouseLeave: H,
122
123
  children: [
123
124
  /* @__PURE__ */ d(
124
- te,
125
+ re,
125
126
  {
126
127
  $width: 31,
127
128
  $height: 31,
@@ -133,34 +134,34 @@ const ce = { renderer: "canvas", autoplay: !1 }, ye = X((O) => {
133
134
  /* @__PURE__ */ e(
134
135
  Y,
135
136
  {
136
- src: M,
137
+ src: W,
137
138
  ref: h,
138
- settings: ce
139
+ settings: se
139
140
  }
140
141
  ),
141
- !x && /* @__PURE__ */ e(re, {})
142
+ !x && /* @__PURE__ */ e(ne, {})
142
143
  ]
143
144
  }
144
145
  ),
145
146
  /* @__PURE__ */ d(Z, { $renderAs: "ac4-black", $color: "BLACK", children: [
146
147
  E,
147
148
  " ",
148
- w && "• CW"
149
+ B && "• CW"
149
150
  ] })
150
151
  ]
151
152
  }
152
153
  ),
153
154
  /* @__PURE__ */ e(
154
- ae,
155
+ ie,
155
156
  {
156
157
  nodeType: l,
157
158
  state: C,
158
- accuracy: L,
159
- isStudent: A
159
+ accuracy: A,
160
+ isStudent: y
160
161
  }
161
162
  ),
162
- !v && /* @__PURE__ */ e(ne, { $background: "WHITE_1", $heightX: 4, children: /* @__PURE__ */ e(
163
- oe,
163
+ !w && /* @__PURE__ */ e(oe, { $background: "WHITE_1", $heightX: 4, children: /* @__PURE__ */ e(
164
+ ae,
164
165
  {
165
166
  $renderAs: "ab3",
166
167
  $color: "BLACK_1",
@@ -177,7 +178,7 @@ const ce = { renderer: "canvas", autoplay: !1 }, ye = X((O) => {
177
178
  menuWidth: "100%",
178
179
  menuZIndex: 6,
179
180
  menuOffset: 2,
180
- menuElement: f ? /* @__PURE__ */ e(ie, { options: H }) : /* @__PURE__ */ e(K, {})
181
+ menuElement: f ? /* @__PURE__ */ e(ce, { options: K }) : /* @__PURE__ */ e(X, {})
181
182
  }
182
183
  );
183
184
  });
@@ -1 +1 @@
1
- {"version":3,"file":"student-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/student-actions/student-actions.tsx"],"sourcesContent":["import type { ILottieAnimationRef } from '../../../../ui/lottie-animation/types';\nimport type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\n\nimport { memo, useCallback, useRef, type FC } from 'react';\n\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport RedoIcon from '../../../../../assets/line-icons/icons/redo';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\nimport Text from '../../../../ui/text/text';\nimport { BLOCK_TYPE } from '../../../constants/block-constants';\nimport { NODE_CARD_STATES } from '../../../constants/node-constants';\nimport { getNodeTypeBasedBgImage } from '../../../utils';\nimport { getNodeCardBasedIcon } from '../../../utils/node-card-utils';\nimport * as Styled from '../node-card-styled';\nimport NodeCardTags from '../node-card-tags';\nimport NodeMenuOptions from '../node-menu-options/node-menu-options';\n\nconst renderSettings = { renderer: 'canvas', autoplay: false };\n\nconst StudentActions: FC<Omit<INodeCardProps, 'userType'>> = memo(props => {\n const {\n nodeData,\n imageHue,\n blockType,\n onNodeAttempt,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n isStudent,\n } = props;\n const {\n accuracy,\n attempt_location: attemptLocation,\n node_type: nodeType,\n card_header: cardHeader,\n title,\n state,\n is_optional: isOptional,\n sheet_statement: sheetStatement,\n permissions,\n marked_as_completed: teacherMarkedAsCompleted,\n user_attempt_id: userAttemptId,\n } = nodeData;\n const {\n can_review: canReview,\n can_start: canStart,\n can_resume: canResume,\n can_reset: canReset,\n } = permissions;\n\n const isGoalBlock = blockType === BLOCK_TYPE.GOAL;\n const sheetLocked = state === NODE_CARD_STATES.LOCKED;\n const inClassSheet = attemptLocation === 'INCLASS';\n const canStartOrResume = canStart || canResume;\n\n const renderOptions = !canStartOrResume && (canReset || canReview);\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-review':\n if (canReview && userAttemptId) {\n onNodeReview?.(nodeData);\n } else {\n onNodeView?.(nodeData);\n }\n\n return;\n\n case 'node-card-reattempt':\n onNodeReattempt?.(nodeData);\n\n return;\n\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [canReview, nodeData, onNodeReattempt, onNodeReview, onNodeView, userAttemptId],\n );\n\n const handleOnNodeCardClick = useCallback(() => {\n if (renderOptions || sheetLocked) return;\n\n if (canStart || canResume) {\n onNodeAttempt?.(nodeData);\n } else if (teacherMarkedAsCompleted) {\n onNodeView?.(nodeData);\n }\n }, [\n canResume,\n canStart,\n nodeData,\n onNodeAttempt,\n onNodeView,\n renderOptions,\n sheetLocked,\n teacherMarkedAsCompleted,\n ]);\n\n const handleOnMouseEnter = useCallback(() => {\n if (sheetLocked) return;\n animationRef.current?.play();\n }, [sheetLocked]);\n\n const handleOnMouseLeave = useCallback(() => {\n animationRef.current?.stop();\n }, []);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-review',\n label: 'Review',\n icon: Eye2Icon,\n disabled: !canReview,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-reattempt',\n label: 'Reattempt',\n icon: RedoIcon,\n disabled: !canReset,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n return (\n <ContextMenu\n targetElement={\n <Styled.NodeCardContainer\n $background={`${imageHue}_2`}\n $disabled={sheetLocked}\n onClick={handleOnNodeCardClick}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={!sheetStatement}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n $opacity={sheetLocked ? 0.5 : 1}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <LottieAnimation\n src={nodeCardLottie}\n ref={animationRef}\n settings={renderSettings}\n />\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\">\n {cardHeader} {inClassSheet && `• CW`}\n </Text>\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n isStudent={isStudent}\n />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper $background=\"WHITE_1\" $heightX={4}>\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n </Styled.NodeCardContainer>\n }\n startLeft\n menuWidth=\"100%\"\n menuZIndex={6}\n menuOffset={2}\n menuElement={renderOptions ? <NodeMenuOptions options={menuOptions} /> : <></>}\n />\n );\n});\n\nexport default StudentActions;\n"],"names":["renderSettings","StudentActions","memo","props","nodeData","imageHue","blockType","onNodeAttempt","onNodeReattempt","onNodeReview","onNodeView","isStudent","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","teacherMarkedAsCompleted","userAttemptId","canReview","canStart","canResume","canReset","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","inClassSheet","renderOptions","animationRef","useRef","nodeBgImage","getNodeTypeBasedBgImage","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnNodeCardClick","handleOnMouseEnter","_a","handleOnMouseLeave","menuOptions","Eye2Icon","RedoIcon","jsx","ContextMenu","Styled.NodeCardContainer","jsxs","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","LottieAnimation","Styled.StyledImportantIcon","Text","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","NodeMenuOptions","Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"student-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/student-actions/student-actions.tsx"],"sourcesContent":["import type { ILottieAnimationRef } from '../../../../ui/lottie-animation/types';\nimport type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\n\nimport { memo, useCallback, useRef, type FC } from 'react';\n\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport RedoIcon from '../../../../../assets/line-icons/icons/redo';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\nimport Text from '../../../../ui/text/text';\nimport { BLOCK_TYPE } from '../../../constants/block-constants';\nimport { NODE_CARD_STATES } from '../../../constants/node-constants';\nimport { getNodeTypeBasedBgImage } from '../../../utils';\nimport { getNodeCardBasedIcon } from '../../../utils/node-card-utils';\nimport * as Styled from '../node-card-styled';\nimport NodeCardTags from '../node-card-tags';\nimport NodeMenuOptions from '../node-menu-options/node-menu-options';\n\nconst renderSettings = { renderer: 'canvas', autoplay: false };\n\nconst StudentActions: FC<Omit<INodeCardProps, 'userType'>> = memo(props => {\n const {\n nodeData,\n imageHue,\n blockType,\n onNodeAttempt,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n isStudent,\n } = props;\n const {\n accuracy,\n attempt_location: attemptLocation,\n node_type: nodeType,\n card_header: cardHeader,\n title,\n state,\n is_optional: isOptional,\n sheet_statement: sheetStatement,\n permissions,\n marked_as_completed: teacherMarkedAsCompleted,\n user_attempt_id: userAttemptId,\n } = nodeData;\n const {\n can_review: canReview,\n can_start: canStart,\n can_resume: canResume,\n can_reset: canReset,\n can_un_skip: canUnSkip,\n } = permissions;\n\n const isGoalBlock = blockType === BLOCK_TYPE.GOAL;\n const sheetLocked = state === NODE_CARD_STATES.LOCKED;\n const inClassSheet = attemptLocation === 'INCLASS';\n const canStartOrResume = canStart || canResume;\n\n const renderOptions = !canStartOrResume && (canReset || canReview);\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-review':\n if (canReview && userAttemptId) {\n onNodeReview?.(nodeData);\n } else {\n onNodeView?.(nodeData);\n }\n\n return;\n\n case 'node-card-reattempt':\n onNodeReattempt?.(nodeData);\n\n return;\n\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [canReview, nodeData, onNodeReattempt, onNodeReview, onNodeView, userAttemptId],\n );\n\n const handleOnNodeCardClick = useCallback(() => {\n if (renderOptions || sheetLocked) return;\n\n if (canStart || canResume) {\n onNodeAttempt?.(nodeData);\n } else if (teacherMarkedAsCompleted) {\n onNodeView?.(nodeData);\n }\n }, [\n canResume,\n canStart,\n nodeData,\n onNodeAttempt,\n onNodeView,\n renderOptions,\n sheetLocked,\n teacherMarkedAsCompleted,\n ]);\n\n const handleOnMouseEnter = useCallback(() => {\n if (sheetLocked) return;\n animationRef.current?.play();\n }, [sheetLocked]);\n\n const handleOnMouseLeave = useCallback(() => {\n animationRef.current?.stop();\n }, []);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-review',\n label: 'Review',\n icon: Eye2Icon,\n disabled: !canReview,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-reattempt',\n label: 'Reattempt',\n icon: RedoIcon,\n disabled: !canReset,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n //* If a node is skipped we don't show that node to student.\n //* But teacher can still see that node.\n if (canUnSkip) return null;\n\n return (\n <ContextMenu\n targetElement={\n <Styled.NodeCardContainer\n $background={`${imageHue}_2`}\n $disabled={sheetLocked}\n onClick={handleOnNodeCardClick}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={!sheetStatement}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n $opacity={sheetLocked ? 0.5 : 1}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <LottieAnimation\n src={nodeCardLottie}\n ref={animationRef}\n settings={renderSettings}\n />\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\">\n {cardHeader} {inClassSheet && `• CW`}\n </Text>\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags\n nodeType={nodeType}\n state={state}\n accuracy={accuracy}\n isStudent={isStudent}\n />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper $background=\"WHITE_1\" $heightX={4}>\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n </Styled.NodeCardContainer>\n }\n startLeft\n menuWidth=\"100%\"\n menuZIndex={6}\n menuOffset={2}\n menuElement={renderOptions ? <NodeMenuOptions options={menuOptions} /> : <></>}\n />\n );\n});\n\nexport default StudentActions;\n"],"names":["renderSettings","StudentActions","memo","props","nodeData","imageHue","blockType","onNodeAttempt","onNodeReattempt","onNodeReview","onNodeView","isStudent","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","teacherMarkedAsCompleted","userAttemptId","canReview","canStart","canResume","canReset","canUnSkip","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","inClassSheet","renderOptions","animationRef","useRef","nodeBgImage","getNodeTypeBasedBgImage","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnNodeCardClick","handleOnMouseEnter","_a","handleOnMouseLeave","menuOptions","Eye2Icon","RedoIcon","jsx","ContextMenu","Styled.NodeCardContainer","jsxs","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","LottieAnimation","Styled.StyledImportantIcon","Text","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","NodeMenuOptions","Fragment"],"mappings":"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"}